/* ------------------------------------------------------------------------------

  NVESZ Program 2026 — landing oldal
  Nemzeti Versenysport Szövetség

  1.  Global

      1.1 General
      1.2 Typography
      1.3 Buttons
      1.4 Forms
      1.5 Animation

  2.  Preloader
  3.  Header
  4.  Home Personal

	  4.1 Slide Intro
	  4.2 Slide Services
	  4.3 Slide Projects
	  4.4 Slide Awards
	  4.5 Slide Experience
	  4.6 Slide Clients
	  4.7 Slide Testimonials
	  4.8 Slide Contact

  5.  Footer



/*-------------------------------------------------------------------------------
  1. Global
-------------------------------------------------------------------------------*/


/* 1.1 General */

/* Gilroy (helyi licenc — fonts/Gilroy/) */
@font-face {
	font-family: 'Gilroy';
	src: url('../fonts/Gilroy/Gilroy-Regular.woff') format('woff');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'Gilroy';
	src: url('../fonts/Gilroy/Gilroy-SemiBold.woff') format('woff');
	font-weight: 600;
	font-style: normal;
	font-display: swap;
}

/* Monument Extended — kiegészítve a magyar Ő ő Ű ű glifekkel (kettősvessző) */
@font-face {
	font-family: 'MonumentExtended';
	src: url('../fonts/monumentextended-regular-webfont.woff2?v=2') format('woff2'),
		 url('../fonts/monumentextended-regular-webfont.woff?v=2') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

html {
	font-size: 12px;
}

body {
	font-family: 'Gilroy', 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
	color: #16223f;
}

/* Magyar trikolor csík a bal szélen (fix, minden szekción) */
body::before {
	content: "";
	position: fixed;
	top: 0;
	left: 0;
	bottom: 0;
	width: 11.5px;
	z-index: 100000;
	pointer-events: none;
	background: linear-gradient(180deg,
		#c8102e 0, #c8102e 33.333%,
		#ffffff 33.333%, #ffffff 66.666%,
		#2e7d32 66.666%, #2e7d32 100%);
}

@media (min-width: 1600px) {
	body::before { width: 16px; }
}

a,
a:hover {
	color: #5ca595;
}

a.text-primary:focus,
a.text-primary:hover {
	color: #5ca595 !important;
}

::selection {
	background-color: #c8102e;
	color: #ffffff;
	text-shadow: none;
}

::-moz-selection {
	background-color: #c8102e;
	color: #ffffff;
	text-shadow: none;
}

/* copyright: „Minden jog fenntartva" kisbetűvel, a többi nagybetű marad */
.copyright .lc,
.menu-copyright .lc {
	text-transform: lowercase;
}

::-webkit-scrollbar {
	width: 5px;
	height: 5px;
}

::-webkit-scrollbar-thumb {
	cursor: pointer;
	background: #b99e64;
}

@media (min-width: 1200px) {
	.container,
	.container-sm,
	.container-md,
	.container-lg,
	.container-xl {
		max-width: 1200px;
	}
}

@media (min-width: 1600px) {
	.container-fluid {
		padding-left: 4.25rem;
		padding-right: 4.25rem;
	}
}

/* laptop méret (desktop menü látszik, de nincs 1600+ nagyképernyős térköz):
   több jobb oldali levegő, a jobb szélső pp-nav pöttyök beljebb */
@media (min-width: 1200px) and (max-width: 1599.98px) {
	.container-fluid,
	.container-lg,
	.container-md,
	.container-sm,
	.container-xl {
		width: 100%;
		padding-right: 30px;
	}

	html #pp-nav.right {
		right: 5px;
		margin-right: 15px;
	}

	.copyright.copyright-fixed {
		right: 30px;
	}
}

.full-height {
	min-height: 100vh;
}



/* 1.2 Typography */

.font-custom {
	font-family: 'MonumentExtended', 'Gilroy', 'Segoe UI', system-ui, sans-serif;
}

.slide-title,
.slide-title-sub,
.slide-title-lg,
.slide-slogan,
.slide-num,
.client-item-title,
.modal-title {
	font-weight: 600;
}

.text-primary {
	color: #b99e64 !important;
}

.text-success,
a.text-success:hover {
	color: #5ca595 !important;
}

.text-underline {
	text-decoration: underline;
}

.text-md {
	font-size: 1.125rem;
}

.text-white a {
	color: #ffffff;
}



/* 1.3 Buttons */

button:focus,
input:focus {
	outline: none;
}

.btn {
	padding: 1rem 2.5rem;
	border-radius: 500px;
	font-weight: bold;
	font-size: 1.125rem;
	text-transform: uppercase;
}

.btn-success,
.btn-success:hover,
.btn-success.focus,
.btn-success:focus,
.btn-success:not(:disabled):not(.disabled).active,
.btn-success:not(:disabled):not(.disabled):active,
.show > .btn-success.dropdown-toggle {
	background-color: #2e7d32;
	border-color: #2e7d32;
}

.btn-success {
	transition: box-shadow .3s ease-in-out;
	transition-delay: 0;
}

.btn-success:hover,
.btn-success.focus,
.btn-success:focus {
	box-shadow: rgba(46,125,50,.25) 0 0 0 6px;
}

.btn-sm {
	padding-top: .5rem;
	padding-bottom: .375rem;
	font-size: 1rem;
}

.btn-circle.btn-sm {
	padding-left: .4375rem;
	padding-right: .4375rem;
	min-width: calc(.875rem + 1.5em + 2px);
}



/* 1.4 Forms */

.control-btn {
	margin-top: 2rem;
}

select.form-control {
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3e%3cpath fill='%23000000' d='M32,48.1c-1.3,0-2.4-0.5-3.5-1.3L0.8,20.7c-1.1-1.1-1.1-2.7,0-3.7c1.1-1.1,2.7-1.1,3.7,0L32,42.8l27.5-26.1 c1.1-1.1,2.7-1.1,3.7,0c1.1,1.1,1.1,2.7,0,3.7L35.5,46.5C34.4,47.9,33.3,48.1,32,48.1z'/%3e%3c/svg%3e");
	background-repeat: no-repeat;
	background-size: 1rem 1rem;
	background-position: 100% 50%;
	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
}

.form-group-material {
	margin-bottom: .625rem;
	padding-top: 1rem;
	position: relative;
}

.form-group-material .label {
	position: absolute;
	left: 0;
	font-size: 1.125rem;
	color: #999999;
	pointer-events: none;
	transform-origin: left top;
	transition: all .3s ease-in-out;
}

.form-group-material .label,
.form-group-material.a-form-group.active .label {
	transform: scale(.77777778);
	top: 0;
}

.form-group-material.a-form-group .label {
	transform: scale(1);
	top: 1.5625rem;
}

.form-group-material .form-control {
	border-radius: 0;
	border: none;
	border-bottom: #999999 1px solid;
	background-color: transparent;
	padding: .5rem 0;
	font-size: 1.125rem;
	color: #16223f;
}

.form-group-material .form-control:not(textarea) {
	height: calc(1.5em + 1rem + 1px);
}

.form-group-material .form-control:focus {
	outline: none;
	box-shadow: none;
	border-bottom-color: #000000;
}

label.error {
	margin-top: .5rem;
	margin-bottom: 0;
	color: #b99e64;
}

.form-control.error,
.form-control.error:focus {
	border-color: #b99e64;
	color: #b99e64;
}

.control-file {
	margin-top: 1.625rem;
	margin-bottom: 2.5rem;
	position: relative;
}

.control-file i {
	position: absolute;
	left: -.25rem;
	top: .5625rem;
	font-size: 1.625rem;
}

.control-file .file-path-wrapper {
	overflow: hidden;
}

.control-file input.file-path {
	padding: 0 0 0 2.125rem;
	border: none;
	border-radius: 0;
	background: transparent;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	font-size: 1.125rem;
}

.control-file input.file-path::-moz-placeholder {
	color: #b99e64;
	text-decoration: underline;
	opacity: 1;
	transition: color .3s ease;
}

.control-file:hover input.file-path::-moz-placeholder {
	color: #5ca595;
}

.control-file input.file-path:-ms-input-placeholder {
	color: #b99e64;
	text-decoration: underline;
	transition: color .3s ease;
}

.control-file:hover input.file-path:-ms-input-placeholder {
	color: #5ca595;
}

.control-file input.file-path::-webkit-input-placeholder {
	color: #b99e64;
	text-decoration: underline;
	transition: color .3s ease;
}

.control-file:hover input.file-path::-webkit-input-placeholder {
	color: #5ca595;
}

.control-file input[type=file] {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	z-index: 10;
	width: 100%;
	margin: 0;
	padding: 0;
	font-size: 1.125rem;
	cursor: pointer;
	opacity: 0;
	filter: alpha(opacity=0)
}

.control-file input[type=file]::-webkit-file-upload-button {
	display: none;
}



/* 1.5 Animation */

@-webkit-keyframes fadeZooming {
	from {
		opacity: 0;
		-webkit-transform: scale3d(.6, .6, .6);
		transform: scale3d(.6, .6, .6);
		margin-left: -12rem;
	}

	100% {
		opacity: 1;
		margin-left: 0;
	}
}

@keyframes fadeZooming {
	from {
		opacity: 0;
		-webkit-transform: scale3d(.6, .6, .6);
		transform: scale3d(.6, .6, .6);
		margin-left: -12rem;
	}

	100% {
		opacity: 1;
		margin-left: 0;
	}
}

.fadeZooming {
	-webkit-animation-name: fadeZooming;
	animation-name: fadeZooming;
}

@-webkit-keyframes fadeInDown {
	from {
		opacity: 0;
		-webkit-transform: translate3d(0, -6.5rem, 0);
		transform: translate3d(0, -6.5rem, 0);
	}

	to {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

@keyframes fadeInDown {
	from {
		opacity: 0;
		-webkit-transform: translate3d(0, -6.5rem, 0);
		transform: translate3d(0, -6.5rem, 0);
	}

	to {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.fadeInDown {
	-webkit-animation-name: fadeInDown;
	animation-name: fadeInDown;
}

@-webkit-keyframes fadeInUp {
	from {
		opacity: 0;
		-webkit-transform: translate3d(0, 10rem, 0);
		transform: translate3d(0, 10rem, 0);
	}

	to {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

@keyframes fadeInUp {
	from {
		opacity: 0;
		-webkit-transform: translate3d(0, 10rem, 0);
		transform: translate3d(0, 10rem, 0);
	}

	to {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.fadeInUp {
	-webkit-animation-name: fadeInUp;
	animation-name: fadeInUp;
}

@-webkit-keyframes fadeInLeft {
	from {
		opacity: 0;
		-webkit-transform: translate3d(-10rem, 0, 0);
		transform: translate3d(-10rem, 0, 0);
	}

	to {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

@keyframes fadeInLeft {
	from {
		opacity: 0;
		-webkit-transform: translate3d(-10rem, 0, 0);
		transform: translate3d(-10rem, 0, 0);
	}

	to {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}

@-webkit-keyframes fadeInRight {
	from {
		opacity: 0;
		-webkit-transform: translate3d(10rem, 0, 0);
		transform: translate3d(10rem, 0, 0);
	}

	to {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

@keyframes fadeInRight {
	from {
		opacity: 0;
		-webkit-transform: translate3d(10rem, 0, 0);
		transform: translate3d(10rem, 0, 0);
	}

	to {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.fadeInRight {
	-webkit-animation-name: fadeInRight;
	animation-name: fadeInRight;
}



/*-------------------------------------------------------------------------------
  2. Preloader
/* ------------------------------------------------------------------------------- */

.preloader {
	position: fixed;
	overflow: hidden;
	z-index: 999999;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: #f5f4f0;
	text-align: center;
}

.three-bounce {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.three-bounce > div {
	display: inline-block;
	width: 18px;
	height: 18px;
	border-radius: 100%;
	background-color: #c06451;
	-webkit-animation: bouncedelay 1.4s infinite ease-in-out both;
	animation: bouncedelay 1.4s infinite ease-in-out both;
}

.three-bounce .one {
	-webkit-animation-delay: -0.32s;
	animation-delay: -0.32s;
	background-color: #c8102e;
}

.three-bounce .two {
	-webkit-animation-delay: -0.16s;
	animation-delay: -0.16s;
	background-color: #ffffff;
	box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .14);
}

.three-bounce .three {
	background-color: #2e7d32;
}

@-webkit-keyframes bouncedelay {
	0%, 80%, 100% { -webkit-transform: scale(0); }
	40% { -webkit-transform: scale(1) }
}

@keyframes bouncedelay {
	0%, 80%, 100% { -webkit-transform: scale(0); transform: scale(0); }
	40% { transform: scale(1); -webkit-transform: scale(1); }
}


/*-------------------------------------------------------------------------------
  Fektetett nézet tiltása mobilon (átfordulás-figyelmeztető)
-------------------------------------------------------------------------------*/

.rotate-lock {
	display: none;
}

@media (max-width: 900px) and (orientation: landscape) {
	.rotate-lock {
		display: flex;
		position: fixed;
		inset: 0;
		z-index: 2000000;
		align-items: center;
		justify-content: center;
		padding: 1.5rem 2rem;
		background: #f5f4f0;
		text-align: center;
	}

	.rotate-lock-icon {
		color: #c8102e;
		margin-bottom: 1.1rem;
	}

	.rotate-lock-inner p {
		max-width: 24rem;
		margin: 0 auto;
		font-size: 1.05rem;
		line-height: 1.5;
		color: #16223f;
	}

	/* a fő tartalom görgetése/lapozása se legyen elérhető ilyenkor */
	.wrapper {
		overflow: hidden;
		height: 100vh;
	}
}




/*-------------------------------------------------------------------------------
  3. Header
-------------------------------------------------------------------------------*/

.header {
	padding-top: 1.5rem;
	padding-bottom: 1.5rem;
	margin-top: 0;
}

.header .container-fluid {
	position: relative;
	z-index: 1;
	color: #16223f;
	transition: color .3s ease-in-out;
}

@media (min-width: 768px) {
	.header {
		padding-top: 2.75rem;
		padding-bottom: 2.75rem;
	}
}

/* asztali/laptop: a görgethető szekció görgetésekor a fejléc összehúzódik –
   a logó és a menü feljebb csúszik, a sáv magassága kisebb lesz */
.header {
	transition: padding .28s ease;
}

.header .brand {
	transition: transform .28s ease;
	transform-origin: left center;
}

@media (min-width: 768px) {
	.header-shrink {
		padding-top: 1rem;
		padding-bottom: 1rem;
	}

	.header-shrink .brand {
		transform: scale(.8);
	}
}

/* összehúzott állapotban is fehér háttér + árnyék, hogy a menü olvasható legyen */
.header-shrink .header-bg {
	height: 100%;
	box-shadow: 0 0 30px rgba(0, 0, 0, 0.1);
}

.header-fixed {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 900;
}

.header-bg {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	height: 0;
	overflow: hidden;
	z-index: 0;
	box-shadow: 0 0 0px rgba(0,0,0,0.1);
	transition: box-shadow .3s ease-in-out;
}

.header-bg::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	height: 12rem;
	background-color: #ffffffc9;
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
}

.header-shadow .header-bg {
	height: 100%;
	box-shadow: 0 0 30px rgba(0,0,0,0.1);
}

.brand {
	float: left;
	margin-left: 14px;
	margin-right: 1rem;
	white-space: nowrap;
	font-size: 1.5rem;
	text-transform: uppercase;
}

@media (min-width: 768px) {
	.brand {
		margin-left: 22px;
	}
}

.brand a {
	color: inherit;
	text-decoration: none;
}

/* logó: „sport" az öröklött szín (világos szekción #16223f, sötét szekción fehér),
   „reform" mindig arany */
.brand-sport {
	color: inherit;
}

.brand-reform {
	color: #b99e64;
}

/* Asztali / laptop vízszintes fejléc-menü (≥1200 px); a hamburger végig megmarad */
.main-nav-desktop {
	float: right;
	margin-top: .35rem;
	margin-right: 1.75rem;
}

.main-nav-desktop ul {
	display: flex;
	align-items: center;
	gap: 1.4rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.main-nav-desktop a {
	display: block;
	padding: .3rem 0;
	font-family: 'Gilroy', 'Segoe UI', system-ui, sans-serif;
	font-weight: 600;
	font-size: .78rem;
	letter-spacing: .06em;
	text-transform: uppercase;
	white-space: nowrap;
	color: #16223f;
	text-decoration: none;
	border-bottom: 2px solid transparent;
	transition: color .2s ease, border-color .2s ease;
}

.main-nav-desktop a:hover {
	color: #2e7d32;
	border-bottom-color: #2e7d32;
}

.main-nav-desktop li.active a {
	color: #c8102e;
	border-bottom-color: #c8102e;
}

@media (min-width: 1600px) {
	.main-nav-desktop ul {
		gap: 1.9rem;
	}
	.main-nav-desktop a {
		font-size: .82rem;
	}
}

.header-content {
	margin-left: 17.25%;
	margin-right: 17.25%;
	padding-top: 3px;
}

.header-tagline {
	padding-top: 2px;
	font-size: .875rem;
	line-height: 1.28571429;
	color: #999999;
	font-weight: bold;
	text-transform: uppercase;
	transition: color .3s ease-in-out;
}

.header-contacts {
	font-weight: bold;
	text-transform: uppercase;
	font-size: .875rem;
}

.header-contact-item,
.header-contact-divider {
	display: inline-block;
	vertical-align: middle;
}

.header-contact-divider {
	margin-left: 1.875rem;
	margin-right: 1.875rem;
	opacity: .2;
}

.phone-link,
.phone-link:hover,
.mail-link,
.mail-link:hover {
	color: inherit;
	text-decoration: none;
}

.phone-link {
	cursor: default;
}

.nav-toggle-btn {
	background: none;
	border: none;
	padding: .625rem 0;
	margin: 0;
	border-radius: 0;
	outline: none;
	float: right;
	position: relative;
	z-index: 995;
	font-weight: bold;
	text-transform: uppercase;
	color: inherit;
}

.nav-toggle-btn:hover {
	color: #b11d11;
}

.nav-toggle-btn:focus {
	outline: none;
}

.nav-toggle {
	display: block;
	width: 32px;
}

.nav-toggle .stick {
	display: block;
	width: 100%;
	border-radius: 3px;
	height: 3px;
	background: #000000;
	transition: all .3s;
	position: relative;
}

.nav-toggle .stick + .stick {
	margin-top: 9px;
}

.body-menu-opened .nav-toggle .stick-1 {
	animation: ease .5s top forwards;
}

.nav-toggle .stick-1 {
	animation: ease .5s top-2 forwards;
}

.body-menu-opened .nav-toggle .stick-2 {
	animation: ease .5s bottom forwards;
}

.nav-toggle .stick-2 {
	animation: ease .5s bottom-2 forwards;
}

@keyframes top {
	0% {
		top: 0;
		transform: rotate(0);
	}
	50% {
		top: 6px;
		transform: rotate(0);
	}
	100% {
		top: 6px;
		transform: rotate(45deg);
	}
}

@keyframes top-2 {
	0% {
		top: 6px;
		transform: rotate(45deg);
	}
	50% {
		top: 6px;
		transform: rotate(0deg);
	}
	100% {
		top: 0;
		transform: rotate(0deg);
	}
}

@keyframes bottom {
	0% {
		bottom: 0;
		transform: rotate(0);
	}
	50% {
		bottom: 6px;
		transform: rotate(0);
	}
	100% {
		bottom: 6px;
		transform: rotate(135deg);
	}
}

@keyframes bottom-2 {
	0% {
		bottom: 6px;
		transform: rotate(135deg);
	}
	50% {
		bottom: 6px;
		transform: rotate(0);
	}
	100% {
		bottom: 0;
		transform: rotate(0);
	}
}



.menu {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: 990;
	background: #ffffff;
	max-width: 100%;
	width: 100%;
	padding: 4.25rem 4.375rem 4.1875rem;
	display: flex;
	flex-direction: column;
	transition: transform .4s ease-in-out;
	-webkit-transform: translateX(100%);
		transform: translateX(100%);
}

.body-menu-opened .menu {
	-webkit-transform: translateX(0%);
		transform: translateX(0%);
}

/* bal nyíl a menüben – bezárja a menüt; a „Főoldal" fölött, vele egy vonalban */
.menu-close {
	position: absolute;
	top: 1.9rem;
	left: 4.375rem;
	z-index: 996;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	width: 2.75rem;
	height: 2.25rem;
	padding: 0;
	margin: 0;
	border: 0;
	background: none;
	color: #16223f;
	font-size: 1.6rem;
	line-height: 1;
	cursor: pointer;
	transition: color .2s ease, transform .2s ease;
}

.menu-close:hover {
	color: #b11d11;
	transform: translateX(-3px);
}

/* eltartás a nyíl és a menüpontok között */
.menu .menu-main {
	margin-top: 2.25rem;
}

.hide-menu {
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	bottom: 100%;
	background: rgba(0,0,0,.65);
	z-index: 980;
}

.body-menu-opened .hide-menu {
	bottom: 0;
}

@media (min-width: 576px) {
	.menu {
		width: 27.5rem;
	}

	.modal-dialog {
    	max-width: 450px;
	}
}

.menu .menu-lang,
.menu .menu-main,
.menu .social,
.menu .menu-footer {
	opacity: 0;
	transform: translateY(3rem);
	transition: all .5s ease-in-out;
}

.menu .menu-lang {
	transition-delay: .2s;
}

.menu .menu-main {
	transition-delay: .4s;
}

.menu .social {
	transition-delay: .6s;
}

.menu .menu-footer {
	transition-delay: .8s;
}

.body-menu-opened .menu .menu-lang,
.body-menu-opened .menu .menu-main,
.body-menu-opened .menu .social,
.body-menu-opened .menu .menu-footer {
	opacity: 1;
	transform: translateY(0);
}

.menu .menu-lang {
	padding-bottom: 5.875rem;
	padding-bottom: 8.70370370vmin;
}

.menu-lang {
	font-size: .875rem;
	text-transform: uppercase;
	font-weight: 600;
}

.menu-lang-item {
	display: inline-block;
	margin-right: 1.5rem;
	color: #a3a4a8;
	text-decoration: none;
}

.menu-lang-item.active,
.menu-lang-item:hover {
	color: #1f2044;
	text-decoration: none;
}

.menu-main {
	height: 100%;
	overflow-x: hidden;
	overflow-y: auto;
	font-size: 1.375rem;
	font-weight: bold;
}

.menu-main > ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.menu-main > ul > li {
	margin-bottom: 1.1875rem;
	padding-left: 2px;
}

.menu-main a,
.menu-main a:hover {
	color: #1f2044;
	text-decoration: none;
}

.menu-main .active > a,
.menu-main a:hover {
	color: #b99e64;
}

.menu-main a:after {
	content: none;
	display: none;
}

.menu-footer {
	padding-top: 3rem;
}

.menu-copyright {
	margin-top: 2rem;
	text-transform: uppercase;
	font-size: .875rem;
	font-weight: bold;
	color: #999999;
}



/*-------------------------------------------------------------------------------
  4. Home Personal
-------------------------------------------------------------------------------*/

.content a {
	transition: color .3s ease;
}

@media (max-width: 575px) {
	.homepage-personal .container {
		padding-left: 43px;
		padding-right: 43px;
	}

	.homepage-personal .slide-personal-projects .container {
		padding-right: 53px;
	}
}

#pp-nav.right {
	right: 5px;
}

#pp-nav li {
	width: auto;
	height: auto;
	margin: .5rem;
}

#pp-nav li a {
	display: block;
	padding: .375rem;
}

#pp-nav span {
	display: block;
	position: static;
	width: .625rem;
	height: .625rem;
	border: none;
	background-color: #e3e3e3;
	transition: background-color .3s ease-in-out;
}

#pp-nav a:hover span {
	background-color: #2e7d32;
}

#pp-nav li .active span {
	background-color: #c8102e;
}

@media (min-width: 1600px) {
	#pp-nav.right {
		right: 3.5rem;
	}
}

.pp-scrollable {
	background-color: #ffffff;
	overflow-x: hidden;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	/* a pagePiling a teljes .a-pagepiling wrapperre touch-action:none-t tesz
	   (hogy maga kezelje a lapozó swipe-ot) – ez Android Chrome-on néhány
	   verzión/eszközön megzavarhatja a hosszú (pp-scrollable) szekciókon
	   belüli natív érintés-görgetést, „beragadást” okozva. Explicit
	   touch-action:pan-y visszaadja a függőleges görgetést a szekción belül,
	   a lapozó swipe-logikát (JS) nem érinti. */
	touch-action: pan-y;
}

.slide-dark {
	background-color: #f5f4f0;
}

.slide-num {
	margin-bottom: 1rem;
	position: relative;
	z-index: 200;
	font-family: 'MonumentExtended', 'Gilroy', 'Segoe UI', system-ui, sans-serif;
	font-size: 1.125rem;
	color: #999999;
	transition: color .3s ease-in-out;
}

@media (min-width: 1400px) {
	.slide-num {
		position: fixed;
		left: 15px;
		top: 29.62962963vmin;
		z-index: 100;
		margin-bottom: 0;
	}
}

@media (min-width: 1600px) {
	.slide-num {
		left: 4.25rem;
	}
}

.slide-container {
	width: 100%;
	min-height: 100%;
	display: flex;
	align-items: center;
	padding-top: 7.75rem;
	padding-bottom: 3.25rem;
	position: relative;
}

.slide-container > .container {
	position: relative;
	z-index: 200;
}

.slide-title {
	margin-bottom: 2rem;
	font-size: 6vmin;
	font-family: 'Gilroy', 'Segoe UI', system-ui, sans-serif;
	line-height: 1;
	color: #b99e64;
	text-transform: uppercase;
}

@media (min-width: 768px) {
	.slide-title {
		font-size: 7.40740741vmin;
	}
}

/* Hero főcím — „NVESZ Program 2026" (régi betű, nem csupa nagybetű, eredeti méret) */
.slide-personal-intro .slide-title {
	font-family: 'MonumentExtended', 'Gilroy', 'Segoe UI', system-ui, sans-serif;
	font-weight: 400;
	line-height: 1.1;
	text-transform: none;
	color: #c8102e;
}

.slide-title-lg {
	margin-left: -.25rem;
	font-size: 6.875rem;
}

.slide-title-sub {
	margin-bottom: 2.75rem;
	font-size: 1.375rem;
	font-family: 'Gilroy', 'Segoe UI', system-ui, sans-serif;
	line-height: 1.45454545;
	color: #16223f;
	text-transform: uppercase;
	letter-spacing: .025em;
}

.text-white .slide-title-sub {
	color: #ffffff;
}

.slide-title-sub-sm {
	font-size: 1.125rem;
	line-height: 1.55555556;
}

.slide-title-sub-md {
	font-size: 1.25rem;
}

.slide-title-info {
	font-size: 1.875rem;
	font-weight: bold;
	line-height: 1.35;
	letter-spacing: -.035em;
}

.slide-descr {
	color: #999999;
	font-size: 1.125rem;
	line-height: 1.66666667;
}

.text-white .slide-descr {
	color: #ffffff;
}

.slide-descr-intro {
	margin-right: 18%;
}

.slide-descr-intro .intro-name {
	display: inline-block;
	font-weight: 700;
	font-size: 1.35em;
	line-height: 1.2;
	color: #c8102e;
}

.slide-personal-intro .slide-title {
	margin-bottom: 1.25rem;
}

.slide-personal-intro .slide-title-sub {
	margin-bottom: .9rem;
}

.slide-slogan {
	margin-bottom: 1.5rem;
	font-family: 'Gilroy', 'Segoe UI', system-ui, sans-serif;
	font-size: 1.5rem;
	line-height: 1.25;
	text-transform: uppercase;
	letter-spacing: .02em;
	color: #16223f;
}

.slide-slogan span {
	display: block;
}

.text-white .slide-slogan {
	color: #ffffff;
}

@media (min-width: 768px) {
	.slide-slogan {
		font-size: 1.75rem;
	}
}

.slide-personal-intro .slide-btn {
	margin-top: 2.5rem;
}

.slide-btn {
	margin-top: 6.85185185vmin;
}

.section:not(.active) .animate-element {
	animation-name: none;
}

.section.active .animate-element {
	animation-duration: .7s;
	animation-fill-mode: both;
}

.section.active .delay1 {
	animation-delay: .1s;
}

.section.active .delay2 {
	animation-delay: .2s;
}

.section.active .delay3 {
	animation-delay: .3s;
}

.section.active .delay4 {
	animation-delay: .4s;
}

.section.active .delay5 {
	animation-delay: .5s;
}

.section.active .delay6 {
	animation-delay: .6s;
}

.section.active .delay7 {
	animation-delay: .7s;
}

.section.active .delay8 {
	animation-delay: .8s;
}

.section.active .delay9 {
	animation-delay: .9s;
}

.section.active .delay10 {
	animation-delay: 1s;
}

[class^="circle-"],
[class*=" circle-"] {
	border-radius: 70.625rem;
	transition: all .7s ease-in-out;
}

.circle-golden {
	background-color: #b99e64;
}

.circle-brown {
	background-color: #b99e64;
}

.circle-light {
	background-color: #f5f4f0;
}

.circle-green {
	background-color: #5ca595;
}

.transformLeft {
	transform: translate(-100%,0);
	opacity: 0;
}

.transformRight {
	transform: translate(100%,0);
	opacity: 0;
}

.active .transformLeft,
.active .transformRight {
	transform: translate(0%,0);
	opacity: 1;
}



/* 4.1 Slide Intro */

.slide-personal-intro {
	background-color: #f5f4f0;
}

/* Főoldal háttér – ugyanaz a belépő mint a Jelölésnél:
   120%-ról bezoomol + blurból élesbe. A háttérréteg a .slide-bg pszeudóján van
   (nem a szekción), így a scale-túlnyúlás nem növeli a szekció görgethető
   területét (nem villan be a menü-háttér rövid tartalomnál sem). */
.slide-personal-intro .slide-bg::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	background-image: url("../img/bg-personal-intro.png");
	background-size: cover;
	background-position: 50% 50%;
	background-repeat: no-repeat;
	transform: translate3d(var(--pbx, 0px), var(--pby, 0px), 0) scale(1.3);
	filter: blur(22px);
	transition: filter 1.2s ease, transform .7s ease-out;
	will-change: transform, filter;
}

.slide-personal-intro.active .slide-bg::before {
	filter: blur(0);
	transform: translate3d(var(--pbx, 0px), var(--pby, 0px), 0) scale(1.12);
}

/* a fotó nem blurosodik és nem fade-el (különben átlátszana rajta a kör),
   csak alulról becsúszik egy kicsit; NEM követi az egeret (nincs parallax) */
.slide-personal-intro .slide-intro-man {
	background-position: 50% 50%;
	transform: translate3d(0, 52px, 0) scale(1.06);
	transition: transform .9s ease-out .15s;
	will-change: transform;
}

.slide-personal-intro.active .slide-intro-man {
	transform: translate3d(0, 0, 0) scale(1.06);
}

@media (prefers-reduced-motion: reduce) {
	.slide-personal-intro .slide-bg::before,
	.slide-personal-intro .slide-intro-man {
		filter: none;
		transform: none;
		transition: none;
	}
}

.slide-bg {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	z-index: 10;
	overflow: hidden;
	background-size: cover;
	background-position: 50% 50%;
	background-repeat: no-repeat;
}


.slide-photo {
	position: absolute !important;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: 50% 50%;
}

.slide-intro-man {
	background-image: url("../img/bg-personal-intro-man.png");
	background-position: 50% 50%;
}

.slide-intro-man2 {
	width: 36.82291667%;
	height: 91.01851852%;
	background-image: url("../img/bg-personal-intro-man2.png");
	background-size: contain;
	background-position: 0 100%;
	bottom: 0;
	right: 13.02083333%;
}

.slide-intro-circle1 {
	width: 10.0625rem;
	height: 10.0625rem;
	left: -4.5rem !important;
	top: 45.46296296% !important;
	bottom: auto;
	right: auto;
}

.slide-intro-circle2 {
	width: 70.625rem;
	height: 70.625rem;
	left: 58.85416667% !important;
	top: 46.66666667% !important;
	bottom: auto;
	right: auto;
	background-color: #042a43;
}

/* Mobil + tablet: a portré teljes felületű háttér; a szöveg a konténer teljes
   szélességében, olvasható sötét „üveg" panelen, alulra igazítva. */
@media (max-width: 991.98px) {
	.slide-personal-intro .slide-intro-man {
		background-size: cover;
		background-position: calc(71% - 13px) 12%;
		transform: translate3d(0, calc(-6% + 5px), 0) scale(1.14);
	}

	.slide-personal-intro.active .slide-intro-man {
		transform: translate3d(0, calc(-11% + 5px), 0) scale(1.14);
	}

	.slide-personal-intro .slide-container {
		align-items: stretch;
		padding-top: 5rem;
		padding-bottom: 1.75rem;
	}

	/* a cím fent, a többi szöveg lent (mint a mockupon) */
	.slide-personal-intro .slide-container > .container {
		display: flex;
		flex-direction: column;
	}

	.slide-personal-intro .slide-container .container .row {
		flex: 1 1 auto;
	}

	/* a szövegoszlop a konténer teljes szélességét kitölti + fent/lent osztás */
	.slide-personal-intro .slide-container .container .row > [class*="col-"] {
		flex: 0 0 100%;
		max-width: 100%;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
	}

	.slide-personal-intro .slide-title-sub,
	.slide-personal-intro .slide-slogan,
	.slide-personal-intro .slide-descr-intro {
		color: #ffffff;
		text-shadow: 0 1px 12px rgba(0,0,0,.45);
	}

	.slide-personal-intro .slide-descr-intro .intro-name {
		color: #c8102e;
		text-shadow: 0 1px 12px rgba(0,0,0,.5);
	}

	/* a főcím felül */
	.slide-personal-intro .slide-title {
		margin-bottom: 2rem;
		font-size: 9.2vmin;
		color: #ffffff;
		text-shadow: 0 2px 5px rgba(0, 0, 0, .57);
	}

	/* a "sportreform" logó beljebb a bal széltől */
	.brand {
		padding-left: 15px;
	}

	.slide-personal-intro .slide-title-sub {
		margin-bottom: .75rem;
	}

	.slide-personal-intro .slide-slogan {
		margin-bottom: 1rem;
	}

	.slide-personal-intro .slide-descr-intro {
		margin-right: 0;
	}

	.slide-personal-intro .slide-btn {
		margin-top: 1.25rem;
	}

	.slide-personal-intro .slide-btn .btn {
		display: block;
		width: 100%;
		text-align: center;
	}

	/* a kék kör (asztalin a jobb oldali) a férfi mögé, középre igazítva,
	   az alsó rész alá – így a fehér szöveg olvashatóan rajta ül */
	.slide-personal-intro .slide-intro-circle2 {
		width: 54rem;
		height: 54rem;
		left: 50% !important;
		top: calc(45% + 10px) !important;
		margin-left: calc(-27rem + 20px);
	}

	.slide-personal-intro .slide-intro-circle2.transformRight,
	.slide-personal-intro.active .slide-intro-circle2.transformRight {
		transform: none;
		opacity: 1;
	}
}



/* 4.1b Slide Jelölés (nyílt levél) */

.slide-personal-jeloles {
	background-color: #16223f;
}

/* háttérkép a .slide-bg pszeudóján (a .slide-bg box marad inset:0, a saját
   overflow:hidden levágja a nagyított réteget → nincs plusz görgethető terület) */
.slide-personal-jeloles .slide-bg::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image: url("../img/bg-nomination.png");
	background-size: cover;
	background-position: 50% 50%;
	background-repeat: no-repeat;
	transform: translate3d(var(--pbx, 0px), var(--pby, 0px), 0) scale(1.3);
	filter: blur(22px);
	transition: filter 1.2s ease, transform .7s ease-out;
	will-change: filter, transform;
}

.slide-personal-jeloles.active .slide-bg::before {
	filter: blur(0);
	transform: translate3d(var(--pbx, 0px), var(--pby, 0px), 0) scale(1.12);
}

/* „Miért kell változás" — ugyanaz a háttér-mechanika, csak más kép */
.slide-personal-change .slide-bg::before {
	background-image: url("../img/bg-change.png");
}

/* Zárás — saját háttérkép */
.slide-personal-closing .slide-bg::before {
	background-image: url("../img/bg-final.png");
}

@media (prefers-reduced-motion: reduce) {
	.slide-personal-jeloles .slide-bg::before {
		filter: none;
		transform: none;
		transition: none;
	}
}

.slide-personal-jeloles .slide-title {
	margin-bottom: 2.5rem;
	font-family: 'MonumentExtended', 'Gilroy', 'Segoe UI', system-ui, sans-serif;
	font-weight: 400;
	font-size: 6.7vmin;
	text-transform: none;
	color: #ffffff;
}

.slide-personal-jeloles .slide-title .hl {
	color: #c8102e;
}

.jeloles-body p {
	font-size: 1.125rem;
	line-height: 1.75;
	color: #d7deec;
	margin-bottom: 1.25rem;
}

.jeloles-body p:last-child {
	margin-bottom: 0;
}

.jeloles-body p.jeloles-cta {
	font-size: 1.5rem;
}

.jeloles-body p strong {
	font-weight: 600;
	color: #ffffff;
}

.jeloles-body p strong.hl {
	color: #7ddf86;
}

.jeloles-quote {
	margin: 1.9rem 0;
	padding: .1rem 0 .1rem 1.5rem;
	border-left: 3px solid #c8102e;
	font-family: 'Gilroy', 'Segoe UI', system-ui, sans-serif;
	font-weight: 700;
	font-size: 2rem;
	line-height: 1.4;
	color: #ffffff;
	text-transform: uppercase;
	letter-spacing: .01em;
}

.jeloles-quote .hl {
	color: #7ddf86;
}

/* „Miért kell a változás" — a keretes mondat bal vonala is zöld */
.slide-personal-change .jeloles-quote {
	border-left-color: #7ddf86;
}

/* Zárómondat: a címmel megegyező betű, fehér, a kiemelt rész piros */
.jeloles-signoff {
	margin-top: 3rem;
}

.jeloles-body .jeloles-signoff-line {
	margin: 0;
	font-family: 'MonumentExtended', 'Gilroy', 'Segoe UI', system-ui, sans-serif;
	font-weight: 600;
	font-size: 2.2vw;   /* laptop */
	line-height: 1.15;
	letter-spacing: .01em;
	color: #ffffff;
}

/* nagy asztali kijelző — kisebb vw, hogy a px ne nőjön tovább */
@media (min-width: 1600px) {
	.jeloles-body .jeloles-signoff-line {
		font-size: 1.65vw;
	}
}

/* Zárás — kisebb, sűrűbb aláírás-sorok */
.slide-personal-closing .jeloles-body .jeloles-signoff-line {
	font-size: 1vw;
	line-height: 1.45;
}

.jeloles-body .jeloles-signoff-line .hl {
	color: #c8102e;
}

/* Magyar zászló (piros–fehér–zöld, vízszintes) a zárómondat betűin;
   a fehér középső sáv lassan jobbra csúszik, majd vissza balra */
.jeloles-body .jeloles-signoff-line.shine-on {
	background-image: linear-gradient(90deg,
		#c8102e 0%,
		#c8102e 32%,
		#ffffff 48.5%,
		#ffffff 51.5%,
		#2e7d32 68%,
		#2e7d32 100%);
	background-repeat: no-repeat;
	background-size: 150% 100%;
	background-position: 50% 0;
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
	animation: jelolesShine 9s ease-in-out infinite;
}

.jeloles-body .jeloles-signoff-line.shine-on .hl {
	color: transparent;
	-webkit-text-fill-color: transparent;
}

@keyframes jelolesShine {
	0%   { background-position: 88% 0; }   /* fehér balra (lágy piros szél marad) */
	50%  { background-position: 12% 0; }   /* fehér jobbra (lágy zöld szél marad) */
	100% { background-position: 88% 0; }
}

@media (prefers-reduced-motion: reduce) {
	.jeloles-body .jeloles-signoff-line.shine-on {
		animation: none;
		background-position: 50% 0;
	}
}

.jeloles-sign {
	display: flex;
	align-items: baseline;
	flex-wrap: wrap;
	gap: .35rem 1rem;
	margin-top: 1.4rem;
	padding-left: 1rem;
}

.jeloles-sign-rule {
	width: 3.5rem;
	height: 2px;
	align-self: center;
	background: #c8102e;
	flex: none;
}

.jeloles-sign-name {
	font-family: 'Gilroy', 'Segoe UI', system-ui, sans-serif;
	font-weight: 600;
	font-size: 1.3rem;
	letter-spacing: .04em;
	color: #c8102e;
}

.jeloles-sign-role {
	font-family: 'Gilroy', 'Segoe UI', system-ui, sans-serif;
	font-weight: 400;
	font-size: .95rem;
	letter-spacing: .02em;
	color: rgba(255, 255, 255, .5);
}

/* Jelölés — háttérkép: bg-nomination.png (mint a főoldalon a section-bg) */

@media (max-width: 767.98px) {
	.slide-personal-jeloles .slide-title {
		margin-bottom: 1.5rem;
	}
	.jeloles-body p {
		font-size: 1.2rem;
	}
	.jeloles-quote {
		font-size: 1.3rem;
	}
	.jeloles-body .jeloles-signoff-line {
		font-size: 2.0rem;
	}
	.slide-personal-closing .jeloles-body .jeloles-signoff-line {
		font-size: 1rem;
	}
	.jeloles-sign-role {
		font-size: .85rem;
	}
}


/* 4.2 Slide Services */

.slide-services-circle1 {
	width: 8.3125rem;
	height: 8.3125rem;
	right: -3.9375rem !important;
	top: 18.51851852% !important;
	bottom: auto;
	left: auto !important;
}

.slide-services-circle2 {
	width: 55rem;
	height: 55rem;
	left: -8.4375% !important;
	top: 71.444% !important;
	bottom: auto;
	right: auto;
}

.slide-title-personal-services {
	margin-bottom: 5.55555556vmin;
	line-height: .93636364;
}

.slide-personal-services .slide-title-info {
	margin-top: 0;
	margin-bottom: 8.33333333vmin;
}

.service-list {
	margin-bottom: -1.75rem;
}

.service-item {
	margin-bottom: 3.75rem;
}

.service-item-title {
	margin-bottom: .5625rem;
}

.service-item-more {
	margin-top: 1.6875rem;
}

.slide-descr-personal-services {
	margin-right: 10%;
	margin-top: 2.375rem;
	margin-bottom: 2rem;
}

@media (min-width: 768px) {
	.slide-descr-personal-services {
		margin-top: 22.375rem;
		margin-bottom: 0;
	}
}

@media (min-width: 992px) {
	.slide-descr-personal-services {
		margin-right: 35%;
		margin-top: 14.375rem;
	}
}

/* Rólam szekció — a cím NAGYBETŰS (méret változatlan); a bevezető sor
   külön sorban, kisbetűs, ugyanakkora betű, aranyszínnel */
.slide-personal-about .slide-title-info {
	text-transform: uppercase;
	font-size: 2.5rem;
}

/* Bal oszlop — portré + arany „23 ÉV" jelvény */
.about-row {
	align-items: stretch;
}

.about-photo {
	position: relative;
	width: 100%;
	max-width: 28rem;
	margin: 0 auto;
}

.about-photo-frame {
	position: relative;
}

/* a PNG maga tartalmazza az alsó elhalványulást — nincs plusz gradiens/maszk */
.about-photo-img {
	display: block;
	width: 100%;
	height: auto;
}

.about-photo-name {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 4rem;
	z-index: 1;
	text-align: center;
	font-size: .92rem;
	line-height: 1.55;
	color: #16223f;
}

.about-photo-nm {
	font-weight: 700;
	font-size: 1.3rem;
	color: #16223f;
}

.about-photo-role {
	font-weight: 400;
	color: #16223f;
}

/* a fehér doboz a fotó alsó (elhalványuló) részére csúszik rá */
.about-badge {
	position: relative;
	z-index: 2;
	margin: -3.5rem 0 0 0;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1rem;
	padding: 1.5rem 1.9rem;
	background: #ffffff;
	border-radius: 20px;
	box-shadow: 0 24px 55px rgba(0, 0, 0, .1);
}

.about-badge-num {
	font-family: 'MonumentExtended', 'Gilroy', 'Segoe UI', system-ui, sans-serif;
	font-weight: 400;
	font-size: 5.4rem;
	line-height: .74;
	color: #b99e64;
}

.about-badge-meta {
	display: flex;
	flex-direction: column;
	gap: .1rem;
}

.about-badge-yr {
	font-weight: 700;
	font-size: 1rem;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: #b99e64;
}

.about-badge-txt {
	font-weight: 700;
	font-size: .82rem;
	line-height: 1.2;
	letter-spacing: .03em;
	text-transform: uppercase;
	color: #2e2a20;
}

.slide-personal-about .about-lead {
	display: block;
	margin-top: .7rem;
	font-size: 1.8rem;
	text-transform: none;
	color: #b99e64;
}

.slide-personal-about .slide-title-info {
	margin-bottom: 1.5rem;
}

.about-quote {
	margin: 0 0 3rem;
	padding-left: 1.35rem;
	border-left: 3px solid #b99e64;
	font-size: 1rem;
	font-style: italic;
	line-height: 1.65;
	color: #555555;
}

@media (max-width: 767.98px) {
	.about-quote {
		font-size: 1.2rem;
		margin-bottom: 2.5rem;
	}
}

/* Rólam — kinyitható dobozok (FAQ-stílus), egymás alatt */
.about-faq {
	border-top: 1px solid rgba(0, 0, 0, .12);
}

.about-faq .faq-item {
	border-bottom: 1px solid rgba(0, 0, 0, .12);
}

.about-faq .faq-q {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1.25rem;
	width: 100%;
	padding: 1.15rem 0;
	background: none;
	border: 0;
	text-align: left;
	cursor: pointer;
}

.about-faq .faq-q .service-item-title {
	margin: 0;
}

.about-faq .faq-icon {
	position: relative;
	flex: none;
	width: 18px;
	height: 18px;
}

.about-faq .faq-icon::before,
.about-faq .faq-icon::after {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	width: 14px;
	height: 2px;
	/* zárt elem: „+" zöld */
	background: #2e7d32;
	transform: translate(-50%, -50%);
	transition: transform .3s ease, opacity .3s ease;
}

.about-faq .faq-icon::after {
	transform: translate(-50%, -50%) rotate(90deg);
}

/* nyitott elem: „−" piros */
.about-faq .faq-item.is-open .faq-icon::before {
	background: #c8102e;
}

.about-faq .faq-item.is-open .faq-icon::after {
	opacity: 0;
	transform: translate(-50%, -50%) rotate(0);
}

.about-faq .faq-a {
	height: 0;
	overflow: hidden;
	transition: height .35s ease;
}

.about-faq .faq-a .service-item-descr {
	padding-bottom: 1.35rem;
	color: #848484;
}

.about-faq .service-item-descr strong {
	font-weight: 400;
	color: #16223f;
}

@media (max-width: 767.98px) {
	.slide-personal-about .about-lead {
		margin-bottom: 2.5rem;
		font-size: 2rem;
	}
	.slide-personal-about .slide-title-info {
		margin-top: 3rem;
		font-size: 1.9rem;
	}
	.about-faq .service-item-descr {
		font-size: 1.2rem;
	}
	.about-badge {
		margin: -3.5rem -9px 0 0;
	}

	/* mobilon minden FAQ-doboz alapból nyitva, nem csukható */
	.about-faq .faq-a {
		height: auto !important;
	}
	.about-faq .faq-icon {
		display: none;
	}
	.about-faq .faq-q {
		cursor: default;
	}
}



/* 4.3 Slide Projects */

.carousel-project-personal {
	min-height: 100%;
	display: flex !important;
}

.carousel-project-personal .owl-stage-outer {
	display: flex;
	overflow: visible;
}

.carousel-project-personal.owl-carousel .owl-stage {
	display: flex;
	flex-wrap: nowrap;
}

.carousel-project-personal.owl-carousel .owl-item {
	height: 100%;
	float: none;
	min-height: 100%;
}

.carousel-project-personal .carousel-project-item {
	height: 100%;
}

.owl-theme .owl-nav {
	margin-top: 0;
}

.owl-carousel .owl-nav button.owl-next,
.owl-carousel .owl-nav button.owl-prev,
.carousel-nav button {
	border: none;
	background-color: transparent;
	padding: 0;
	margin: 0;
	font-size: 2.375rem;
	transition: all .3s ease-in-out;
	color: #999999;
}

.owl-theme .owl-nav [class*=owl-].disabled:hover,
.carousel-nav button.disabled:hover {
	color: #999999;
}

.owl-theme .owl-nav [class*=owl-]:not(.disabled):hover,
.carousel-nav button:not(.disabled):hover {
	color: #555555;
}

.owl-carousel .owl-nav button.owl-next:hover,
.owl-carousel .owl-nav button.owl-prev:hover {
	background-color: transparent;
}

.carousel-project-personal.owl-carousel .owl-nav button {
	position: absolute;
	top: 50%;
	z-index: 100;
	transform: translate(0,-50%);
	width: 4.375rem;
	color: rgba(255,255,255,.6);
}

.carousel-project-personal.owl-carousel .owl-nav button.owl-prev {
	left: -.5rem;
}

.carousel-project-personal.owl-carousel .owl-nav button.owl-next {
	right: 1rem;
}

.carousel-project-personal.owl-carousel .owl-nav button:not(.disabled):hover {
	color: rgba(255,255,255,.9);
}

@media (min-width: 1500px) {
	.carousel-project-personal.owl-carousel .owl-nav button,
	.carousel-project-personal.owl-carousel .owl-nav button.owl-prev {
		left: 50%;
		right: auto;
		transform: translate(-50%,-50%);
	}

	.carousel-project-personal.owl-carousel .owl-nav button.owl-prev {
		margin-left: -46rem;
	}

	.carousel-project-personal.owl-carousel .owl-nav button.owl-next {
		margin-left: 46rem;
	}
}

.carousel-project-item {
	background-position: 50% 50%;
	background-size: cover;
	background-repeat: no-repeat;
}

.carousel-project-personal .slide-title {
	margin-bottom: 1rem;
}

.project-date {
	margin-top: .375rem;
	font-size: .875rem;
	font-weight: bold;
	text-transform: uppercase;
}

.slide-descr-projects {
	min-height: 8.33333333em;
	margin-bottom: 1.875rem;
}

.slide-btn-projects {
	margin-top: 0;
}

.slide-btn-projects .btn {
	margin-right: 2.25rem;
}

.slide-projects-more {
	display: inline-block;
	font-size: 1.125rem;
	font-weight: bold;
	text-transform: uppercase;
	text-decoration: underline;
}

.slide-projects-more:hover {
	text-decoration: none;
}


/* 4.3b Az elnöki cél – részletes oldalak (jobbról becsúszó overlay) */

/* az overlay a rács fölé csúszik be jobbról; záráskor jobbra vissza */
.goaldetail-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1000;                /* a header + szekció-pöttyök fölé: teljes „oldal" */
	background-color: #16223f;
	overflow-x: hidden;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	transform: translateX(100%);
	transition: transform .5s cubic-bezier(.45, 0, .15, 1), visibility 0s linear .5s;
	visibility: hidden;
}

.goaldetail-overlay.is-open {
	transform: translateX(0);
	visibility: visible;
	transition: transform .5s cubic-bezier(.45, 0, .15, 1), visibility 0s;
}

/* nyitott overlay alatt ne látszódjanak a pagePiling szekció-pöttyök */
.goaldetail-open #pp-nav {
	opacity: 0;
	pointer-events: none;
}

/* X bezáró gomb – ugyanolyan kör-gomb, mint a rácson a zöld, csak KÉK;
   fix az overlay tetején, középen; ugyanaz a glow + zoom roll over */
.goaldetail-close {
	position: fixed;
	top: 4rem;
	left: 50%;
	transform: translateX(-50%) scale(1.15);
	z-index: 20;
	margin: 0;
	background-color: #b99e64;
	border-color: #b99e64;
	color: #ffffff;
	transition: box-shadow .25s ease, transform .2s ease;
	/* alaphelyzet: halvány arany gyűrű lüktet – jelzi a bezárás gombot */
	animation: goalClosePulse 2.3s ease-out infinite;
}

@keyframes goalClosePulse {
	0%   { box-shadow: rgba(185, 158, 100, .46) 0 0 0 0; }
	45%  { box-shadow: rgba(185, 158, 100, .24) 0 0 0 6px; }
	75%  { box-shadow: rgba(185, 158, 100, 0)   0 0 0 10px; }
	100% { box-shadow: rgba(185, 158, 100, 0)   0 0 0 10px; }
}

@media (prefers-reduced-motion: reduce) {
	.goaldetail-close { animation: none; }
}

.goaldetail-close:hover,
.goaldetail-close:focus {
	/* a lüktetés hoveren is megy tovább (nincs ugrás), csak a gomb nagyobb lesz */
	background-color: #b99e64;
	border-color: #b99e64;
	color: #ffffff;
	transform: translateX(-50%) scale(1.24);
}

/* billentyűzetes fókusznál viszont legyen stabil, jól látható gyűrű */
.goaldetail-close:focus-visible {
	animation: none;
	box-shadow: rgba(185, 158, 100, .38) 0 0 0 6px;
}

/* a 8 téma egymásra rétegezve; váltáskor a cél a mostani réteg FÖLÉ csúszik
   (cover): a mostani a helyén marad, amíg a becsúszó teljesen le nem fedi */
.gd-topics {
	position: absolute;
	inset: 0;
	overflow: hidden;
}

.gd-topic {
	position: absolute;
	inset: 0;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	will-change: transform;
	background-color: #16223f;
}

.gd-topic[hidden] {
	display: none;
}

/* oldalankénti mély, tompított háttérszínek – minden színen olvasható marad
   a fehér szöveg és az arany kiemelés (a kék az 1. marad) */
.gd-topics > .gd-topic:nth-child(1) { background-color: #16223f; } /* mély kék */
.gd-topics > .gd-topic:nth-child(2) { background-color: #123a3a; } /* mély petróleum */
.gd-topics > .gd-topic:nth-child(3) { background-color: #3a2029; } /* mély bordó */
.gd-topics > .gd-topic:nth-child(4) { background-color: #1c3327; } /* mély erdőzöld */
.gd-topics > .gd-topic:nth-child(5) { background-color: #2b2247; } /* mély szilva */
.gd-topics > .gd-topic:nth-child(6) { background-color: #242b34; } /* mély acélszürke */
.gd-topics > .gd-topic:nth-child(7) { background-color: #33281f; } /* mély eszpresszó */
.gd-topics > .gd-topic:nth-child(8) { background-color: #221f47; } /* mély indigó */

/* oldalváltó – minimál: csak számok, közöttük vékony függőleges vonal.
   Nincs gomb-stílus, nincs árnyék. Alap: halvány fehér; aktív: arany.
   Helye: az overlay alján, középen (asztali/laptop). */
.goaldetail-pager {
	position: fixed;
	top: auto;
	bottom: 2rem;                 /* JS finomítja: az alsó üres sáv közepére */
	left: 50%;
	transform: translateX(-50%);
	z-index: 20;
	display: flex;
	align-items: center;
	gap: .75rem;
	max-width: calc(100vw - 2rem);
	transition: bottom .2s ease, background-color .2s ease;
}

/* magas tartalomnál a pager ragadós alsó sávvá válik (mint a menü),
   hogy a tartalom ne csússzon rá */
.goaldetail-pager.goaldetail-pager--stuck {
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	max-width: none;
	transform: none;
	justify-content: center;
	padding: 1.6rem 1rem;
	background: rgba(0, 0, 0, .32);
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
}

/* a részletes oldalon nincs fix fejléc az overlay alatt → kevesebb felső térköz */
.gd-topic .slide-container {
	padding-top: 3.25rem;
	padding-bottom: 3.25rem;
}

/* a ragadós sáv alá csússzon a tartalom, ne alá bújjon az utolsó sor */
.gd-topic--barred .slide-container {
	padding-bottom: 5.5rem;
}

.goaldetail-pager-nums {
	display: flex;
	align-items: center;
}

.goaldetail-pager-num {
	position: relative;
	padding: .2rem .8rem;
	border: 0;
	background: none;
	color: rgba(255, 255, 255, .62);
	font-family: 'MonumentExtended', 'Gilroy', 'Segoe UI', system-ui, sans-serif;
	font-size: 1.5rem;
	font-weight: 400;
	letter-spacing: -.02em;
	line-height: 1;
	cursor: pointer;
	transition: color .25s ease;
}

/* elválasztó vonal a számok között */
.goaldetail-pager-num + .goaldetail-pager-num::before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 1px;
	height: 1.05em;
	background: rgba(255, 255, 255, .22);
}

.goaldetail-pager-num:hover {
	color: rgba(255, 255, 255, .95);
}

.goaldetail-pager-num.is-active {
	color: #b99e64;
}

.goaldetail-pager-arrow {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: .2rem .35rem;
	border: 0;
	background: none;
	color: rgba(255, 255, 255, .62);
	font-size: 1.45rem;
	line-height: 1;
	cursor: pointer;
	transition: color .25s ease;
}

.goaldetail-pager-arrow:hover {
	color: rgba(255, 255, 255, .95);
}

@media (max-width: 575.98px) {
	.goaldetail-pager {
		gap: .4rem;
	}
	.goaldetail-pager-num {
		padding: .2rem .5rem;
		font-size: 1.7rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.goaldetail-overlay {
		transition: visibility 0s;
	}
}

/* nincs háttérkép: minden részletes oldal a sötétkék alapon (a végén kaphat
   oldalanként eltérő színt / grafikai háttérelemet) */
.slide-personal-projects .carousel-project-item {
	background-color: #16223f;
}

.goaldetail {
	max-width: none;
}

/* cím + rövid leírás teljes szélességben, alatta 2 hasáb:
   balra a felsorolás + idézet, jobbra a keretes vállalás(ok) */
.goaldetail-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 3rem;
	align-items: stretch;
	margin-top: .5rem;
}

.goaldetail-main,
.goaldetail-side {
	min-width: 0;
}

/* asztalin a jobb oldali doboz / mini-slider akkora, mint a bal oldali oszlop
   (a szöveg benne függőlegesen középen); mobilon 1 hasáb → magától a tartalomhoz */
.goaldetail-side {
	display: flex;
}

.goaldetail-side > .goaldetail-box,
.goaldetail-side > .gd-boxslider {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.goaldetail-side > .gd-boxslider .gd-boxslider-viewport {
	width: 100%;
}

.goaldetail .goaldetail-back {
	display: inline-flex;
	align-items: center;
	gap: .35rem;
	margin-bottom: 1.75rem;
	font-size: .95rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .06em;
	text-decoration: none;
	color: #ffffff;
	transition: color .2s ease, transform .2s ease;
}

.goaldetail .goaldetail-back:hover,
.goaldetail .goaldetail-back:focus {
	text-decoration: none;
	color: #b99e64;
	transform: translateX(-2px);
}

.goaldetail-back i {
	font-size: 1.05rem;
}

.goaldetail-title {
	margin: 0 0 1rem;
	font-size: 2.5rem;
	line-height: 1.08;
	color: #b99e64;
}

.goaldetail-lead {
	margin: 0 0 3rem;
	font-size: 1.25rem;
	line-height: 1.5;
	color: rgba(255,255,255,.9);
}

.goaldetail-lead-gold {
	font-style: italic;
	color: #b99e64;
}

.goaldetail-list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.goaldetail-list li {
	position: relative;
	padding-left: 1.6rem;
	margin-bottom: .85rem;
	font-size: 1.125rem;
	line-height: 1.5;
	color: rgba(255,255,255,.9);
}

.goaldetail-list li::before {
	content: "";
	position: absolute;
	left: 0;
	top: .58em;
	width: .5rem;
	height: .5rem;
	border-radius: 50%;
	background: #b99e64;
}

.goaldetail-quote {
	margin: 1.9rem 0 0;
	font-size: 1.2rem;
	font-style: italic;
	line-height: 1.45;
	color: #b99e64;
}

.goaldetail-box {
	padding: 1.4rem 1.5rem;
	border-left: 3px solid #b99e64;
	border-radius: .5rem;
	background: rgba(255,255,255,.06);
}

.goaldetail-box p {
	margin: 0;
	font-size: 1rem;
	line-height: 1.55;
	color: rgba(255,255,255,.86);
}

/* fontos részek kiemelése a 8 részletes dián – világosabb arany + félkövér,
   hogy a mély háttéren „kiugorjon", de olvasható maradjon */
.goaldetail-lead strong,
.goaldetail-list strong,
.goaldetail-box p strong,
.goaldetail-block p strong {
	color: #e2d1ab;
	font-weight: 700;
}

.goaldetail-boxes .goaldetail-box + .goaldetail-box {
	margin-top: .75rem;
}

/* dia 12: alcímes blokkok, teljes szélességben egymás alatt */
.goaldetail-blocks {
	display: flex;
	flex-direction: column;
	gap: 1.75rem;
}

.goaldetail-block {
	padding-left: 1.25rem;
	border-left: 3px solid rgba(185,158,100,.55);
}

.goaldetail-block-title {
	margin: 0 0 .35rem;
	font-size: 1.05rem;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: .03em;
	text-transform: uppercase;
	color: #ffffff;
}

.goaldetail-block-sub {
	margin: 0 0 .5rem;
	font-size: 1rem;
	font-style: italic;
	line-height: 1.45;
	color: #b99e64;
}

.goaldetail-block > p:not(.goaldetail-block-sub) {
	margin: 0;
	font-size: 1.05rem;
	line-height: 1.55;
	color: rgba(255,255,255,.88);
}

/* keretes dobozok mini-slidere (dia 8 és dia 9) – lentről felfelé csúszik,
   5 mp-enként automatikusan lép, egérre megáll */
.gd-boxslider {
	display: flex;
	flex-direction: column;
}

.gd-boxslider .gd-boxslider-viewport {
	overflow: hidden;
}

.gd-boxslider .gd-boxslider-track {
	display: flex;
	flex-direction: column;
	will-change: transform;
}

.gd-boxslider .gd-boxslider-track > .goaldetail-box {
	flex: 0 0 auto;
	width: 100%;
	margin-top: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.gd-boxslider .gd-boxslider-nav {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1.1rem;
	margin-top: .9rem;
}

/* csak a nyíl, kör keret nélkül */
.gd-boxslider .gd-boxslider-nav button {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: .2rem;
	border: 0;
	background: none;
	color: rgba(255,255,255,.75);
	font-size: 1.25rem;
	line-height: 1;
	cursor: pointer;
	transition: color .2s ease, transform .2s ease;
}

.gd-boxslider .gd-boxslider-nav button:hover {
	color: #b99e64;
	transform: scale(1.12);
}

.gd-boxslider .gd-boxslider-count {
	min-width: 3.2em;
	text-align: center;
	font-size: .9rem;
	letter-spacing: .04em;
	color: rgba(255,255,255,.7);
}

@media (max-width: 991.98px) {
	.goaldetail-grid {
		grid-template-columns: minmax(0, 1fr);
		gap: 1.75rem;
	}

	.goaldetail-title {
		font-size: 2.2rem;
	}

	.goaldetail-lead {
		font-size: 1.2rem;
	}
}

/* nyitott overlay: a bal széli nemzeti-színű csík ne látsszon rajta */
.goaldetail-open body::before {
	opacity: 0;
}

@media (max-width: 767.98px) {
	/* kényelmesebb oldalmargók a részletes oldalakon */
	.gd-topic .slide-container > .container {
		padding-left: 1.35rem;
		padding-right: 1.35rem;
	}

	.gd-topic .slide-container {
		padding-top: 4.5rem;
		padding-bottom: 4rem;
	}

	.gd-topic--barred .slide-container {
		padding-bottom: 6rem;
	}

	.goaldetail-title {
		font-size: 1.85rem;
	}

	.goaldetail-lead {
		font-size: 1.1rem;
		margin-bottom: 2rem;
	}

	.goaldetail .goaldetail-back {
		margin-bottom: 1.25rem;
		font-size: .82rem;
	}

	/* mobilon úgyis görgetünk → az idézet-slider helyett a 4 doboz egymás alatt */
	.gd-boxslider .gd-boxslider-viewport {
		overflow: visible;
		height: auto !important;
	}

	.gd-boxslider .gd-boxslider-track {
		flex-direction: column;
		transform: none !important;
	}

	.gd-boxslider .gd-boxslider-track > .goaldetail-box {
		height: auto !important;
	}

	.gd-boxslider .gd-boxslider-track > .goaldetail-box + .goaldetail-box {
		margin-top: .85rem;
	}

	.gd-boxslider .gd-boxslider-track > [aria-hidden="true"] {
		display: none;
	}

	.gd-boxslider .gd-boxslider-nav {
		display: none;
	}
}


/* 4.4 Slide Awards */

.slide-personal-awards .slide-bg {
	background-image: url("../img/bg-personal-awards.png");
}

.slide-awards-circle1 {
	width: 8.125rem;
	height: 8.125rem;
	left: -4.0625rem !important;
	top: 50.92592593% !important;
	bottom: auto !important;
	right: auto !important;
}

.slide-awards-circle2 {
	width: 45.3125rem;
	height: 45.3125rem;
	right: -15.625% !important;
	top: 82.59259259% !important;
	bottom: auto !important;
	left: auto !important;
}

.award-item {
	background: #f5f4f0;
	border-radius: 1rem 1rem 3rem 1rem;
	padding: 2.1875rem 2.5rem;
}

.award-list .award-item {
	margin-top: 4rem;
}

.award-item-date {
	margin-bottom: .625rem;
	font-size: .875rem;
	color: #999999;
	text-transform: uppercase;
	font-weight: bold;
}

.award-item-logo {
	margin-bottom: .75rem;
	height: 9rem;
	display: flex;
	overflow: hidden;
	align-items: center;
}

.award-item-logo img {
	max-width: 100%;
	max-height: 100%;
}

.award-item-title {
	margin-bottom: 1rem;
}

.award-item-descr {
	margin-bottom: 2rem;
}

.award-item-more {
	font-size: 1.125rem;
}

@media (min-width: 992px) {
	.award-list .award-item {
		height: calc(100% - 4rem);
	}
}


/* 4.4b Slide Vállalások (10 kártya, page 2 / Awards elrendezés kompaktabban) */

.slide-personal-commit {
	background-color: #f5f4f0;
}

.slide-personal-commit .slide-title {
	font-family: 'MonumentExtended', 'Gilroy', 'Segoe UI', system-ui, sans-serif;
	font-weight: 400;
	font-size: 6.7vmin;
	line-height: 1.1;
	text-transform: none;
	color: #16223f;
	margin-bottom: 1.25rem;
}

.slide-personal-commit .slide-title .hl {
	color: #b99e64;
}

.slide-personal-commit .commit-lead {
	margin: 0 0 .5rem;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: -.049em;
	color: #b99e64;
}

.slide-personal-commit .award-list .award-item {
	margin-top: 1.5rem;
	height: auto;
}

/* 2 doboz egymás mellett (col-lg-4 → 50%) */
@media (min-width: 768px) {
	.slide-personal-commit .award-list > [class*="col-"] {
		flex: 0 0 50%;
		max-width: 50%;
	}
	.slide-personal-commit .award-list .award-item {
		height: calc(100% - 1.5rem);
	}
}

.slide-personal-commit .award-item {
	position: relative;
	overflow: hidden;
	padding: 1.5rem 1.6rem 1.7rem;
	border-radius: .9rem .9rem 1.75rem .9rem;
	display: grid;
	grid-template-columns: auto 1fr;
	grid-template-areas:
		"logo title"
		"descr descr"
		"list list";
	column-gap: 1rem;
	align-items: center;
}

/* nagy, halvány sorszám-vízjel a kártya jobb alsó sarkában */
.slide-personal-commit .award-bignum {
	position: absolute;
	right: -.06em;
	bottom: -.3em;
	z-index: 0;
	font-family: 'MonumentExtended', 'Gilroy', 'Segoe UI', system-ui, sans-serif;
	font-weight: 400;
	font-size: 7.5rem;
	line-height: 1;
	letter-spacing: -.02em;
	color: rgba(185, 158, 100, .14);
	pointer-events: none;
	user-select: none;
}

.slide-personal-commit .award-item-logo,
.slide-personal-commit .award-item-title,
.slide-personal-commit .award-item-descr,
.slide-personal-commit .award-item-list {
	position: relative;
	z-index: 1;
}

.slide-personal-commit .award-item-logo {
	grid-area: logo;
	height: auto;
	margin-bottom: 0;
	justify-content: flex-start;
}

.slide-personal-commit .award-item-logo img {
	width: 4.25rem;
	height: 4.25rem;
}

.slide-personal-commit .award-item-title {
	grid-area: title;
	margin-bottom: 0;
	font-size: 1.5rem;
	line-height: 1.3;
	color: #16223f;
	/* mindenhol 2 soros magasság → egységes kártyafejléc */
	min-height: 2.6em;
	display: flex;
	align-items: center;
}

.slide-personal-commit .award-item-descr {
	grid-area: descr;
	margin-top: 1rem;
}

.slide-personal-commit .award-item-list {
	grid-area: list;
}

.slide-personal-commit .award-item-descr {
	margin-bottom: 0;
	font-size: 1.125rem;
	line-height: 1.55;
	color: #848484;
}

.slide-personal-commit .award-item-list {
	list-style: none;
	margin: .85rem 0 0;
	padding: 0;
}

.slide-personal-commit .award-item-list li {
	position: relative;
	padding-left: 1.1rem;
	margin-bottom: .4rem;
	font-size: .9rem;
	line-height: 1.4;
	color: #16223f;
}

.slide-personal-commit .award-item-list li::before {
	content: "";
	position: absolute;
	left: 0;
	top: .55em;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #b99e64;
}

/* Vállalások — díszkörök pozíciója */
.slide-personal-commit .slide-awards-circle1 {
	display: none;
}

.slide-personal-commit .slide-awards-circle2 {
	width: 45.3125rem;
	height: 45.3125rem;
	right: -11.625% !important;
	top: 88.593% !important;
	bottom: auto !important;
	left: auto !important;
}

/* Vállalások — slider (3 csoport: 4 + 4 + 2 kártya) */
.slide-personal-commit .commit-slider {
	position: relative;
}

.slide-personal-commit .commit-viewport {
	overflow: hidden;
}

.slide-personal-commit .commit-track {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	height: 0;
	transition: transform .6s cubic-bezier(.4, 0, .2, 1);
	will-change: transform;
}

.slide-personal-commit .commit-slide {
	flex: 0 0 auto;
	width: 100%;
}

/* nyilak a két szélen */
.slide-personal-commit .commit-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 3;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 3rem;
	height: 3rem;
	padding: 0;
	border: 0;
	background: transparent;
	font-size: 2.375rem;
	line-height: 1;
	color: #b99e64;
	cursor: pointer;
	transition: color .3s ease-in-out, transform .2s ease;
}

.slide-personal-commit .commit-arrow:hover {
	color: #2e7d32;
}

.slide-personal-commit .commit-prev {
	left: -3.25rem;
}

.slide-personal-commit .commit-next {
	right: -3.25rem;
}

@media (max-width: 1200px) {
	.slide-personal-commit .commit-prev { left: -1.75rem; }
	.slide-personal-commit .commit-next { right: -1.75rem; }
}

/* mobil: nincs slider – minden kártya egymás alatt */
@media (max-width: 767.98px) {
	.slide-personal-commit .slide-title {
		font-size: 7.7vmin;
	}

	.slide-personal-commit .commit-lead {
		margin-bottom: 2.5rem;
		font-size: 2rem;
	}

	.slide-personal-commit .award-item-descr,
	.slide-personal-commit .award-item-list li {
		font-size: 1.2rem;
	}

	.slide-personal-commit .commit-arrow,
	.slide-personal-commit .commit-dots {
		display: none !important;
	}

	.slide-personal-commit .commit-viewport {
		overflow: visible;
	}

	.slide-personal-commit .commit-track {
		display: block;
		height: auto !important;
		transform: none !important;
		transition: none;
	}

	.slide-personal-commit .commit-slide + .commit-slide {
		margin-top: 0;
	}
}

.slide-personal-commit .commit-dots {
	display: flex;
	justify-content: center;
	gap: .55rem;
	margin-top: 1.75rem;
}

.slide-personal-commit .commit-dot {
	width: 10px;
	height: 10px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: rgba(22, 34, 63, .22);
	cursor: pointer;
	transition: background .25s ease, transform .25s ease;
}

.slide-personal-commit .commit-dot:hover {
	background: rgba(22, 34, 63, .4);
}

.slide-personal-commit .commit-dot.is-active {
	background: #b99e64;
	transform: scale(1.25);
}



/* ---------------------------------------------------------------------------
   Letöltések szekció – bal oldalt szöveg + 2 letöltő kártya, jobb oldalt
   nagy letöltés-ikon. Háttér = Elnökségi vállalások szekcióé.
--------------------------------------------------------------------------- */
/* (a .download-row-ról szándékosan levéve a width:100% – az elrontotta a
   Bootstrap negatív margóit, mobilon emiatt nem ért ki a tartalom a jobb szélig) */

.slide-personal-download .download-pre {
	display: inline-block;
	margin-bottom: .9rem;
	font-family: 'Gilroy', 'Segoe UI', system-ui, sans-serif;
	font-size: .82rem;
	font-weight: 700;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: #16223f;
}

.slide-personal-download .download-title {
	margin: 0 0 1rem;
	line-height: 1.02;
}

.slide-personal-download .download-sub {
	margin: 0 0 2rem;
	font-family: 'Gilroy', 'Segoe UI', system-ui, sans-serif;
	font-size: 1.5rem;
	font-weight: 600;
	color: #16223f;
}

.slide-personal-download .download-lead {
	max-width: 30rem;
	margin-bottom: 2.5rem;
}

.slide-personal-download .download-cards {
	display: flex;
	flex-wrap: wrap;
	gap: 1.25rem;
}

.slide-personal-download .dl-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	gap: .7rem;
	width: 11rem;
	padding: 1.4rem 1rem 1.2rem;
	background: #f5f4f0;
	border: 1px solid #e5e1d8;
	border-radius: 1rem 1rem 2rem 1rem;
	text-decoration: none;
	color: #16223f;
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.slide-personal-download .dl-card:hover,
.slide-personal-download .dl-card:focus-visible {
	transform: translateY(-4px);
	border-color: #b99e64;
	box-shadow: 0 14px 30px rgba(22, 34, 63, .12);
}

.slide-personal-download .dl-card-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 4rem;
	height: 4rem;
	border-radius: .9rem;
	background: #ffffff;
	color: #b99e64;
	font-size: 1.9rem;
	line-height: 1;
}

.slide-personal-download .dl-card-icon img,
.slide-personal-download .dl-card-icon svg {
	width: 2.6rem;
	height: 2.6rem;
}

/* PDF-ikon: 2 kép egymáson (arany + piros); roll overnél a piros látszik
   (a PDF „saját" színe). Nincs mask → minden böngészőben működik. */
.slide-personal-download .dl-card-icon {
	position: relative;
}

.slide-personal-download .dl-ico {
	display: block;
	transition: opacity .2s ease;
}

.slide-personal-download .dl-ico-red {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	opacity: 0;
}

.slide-personal-download .dl-card:hover .dl-ico-gold,
.slide-personal-download .dl-card:focus-visible .dl-ico-gold {
	opacity: 0;
}

.slide-personal-download .dl-card:hover .dl-ico-red,
.slide-personal-download .dl-card:focus-visible .dl-ico-red {
	opacity: 1;
}

.slide-personal-download .dl-card-text {
	display: contents;
}

.slide-personal-download .dl-card-cap {
	font-family: 'Gilroy', 'Segoe UI', system-ui, sans-serif;
	font-size: .82rem;
	font-weight: 700;
	letter-spacing: .04em;
	text-transform: uppercase;
	text-align: center;
	color: #16223f;
}

.slide-personal-download .dl-card-meta {
	margin-top: -.2rem;
	font-family: 'Gilroy', 'Segoe UI', system-ui, sans-serif;
	font-size: .72rem;
	font-weight: 600;
	letter-spacing: .03em;
	color: #8a8578;
}

.slide-personal-download .download-graphic {
	display: flex;
	align-items: flex-end;      /* a grafika a konténer aljához igazodik */
	justify-content: center;
	color: #16223f;
}

/* a jobb oldali ikon: szélesség szerint méretezve, magasság a viewBox-arányból
   (a viewBox 0 0 500 455 → nincs üres sáv a tálca alatt, az SVG alja = a tálca alja) */
.slide-personal-download .download-graphic svg,
.slide-personal-download .download-graphic img {
	width: 100%;
	max-width: 32rem;
	height: auto;
}

/* csak a NYÍL animálódik le-fel, mintha töltene; a tálca áll */
.slide-personal-download .dl-graphic-svg {
	overflow: visible;
}

.slide-personal-download .dl-arrow {
	transform-box: view-box;
	transform-origin: 50% 50%;
	animation: dlArrowDownload 1.9s infinite;
}

@keyframes dlArrowDownload {
	/* gyorsulva lefelé, a nyíl hegye becsúszik a tálca „U" belsejébe (az aljához) */
	0%   { transform: translateY(-10%); animation-timing-function: cubic-bezier(.55, 0, .85, .3); }
	/* eléri az alját, egyetlen fordulóponttal visszaindul és felfelé LASSUL */
	45%  { transform: translateY(7%);   animation-timing-function: cubic-bezier(.15, .6, .3, 1); }
	/* fent rövid tartás, majd újra le */
	95%  { transform: translateY(-10%); animation-timing-function: linear; }
	100% { transform: translateY(-10%); }
}

@media (prefers-reduced-motion: reduce) {
	.slide-personal-download .dl-arrow {
		animation: none;
		transform: none;
	}
}

@media (max-width: 991.98px) {
	/* mobil/tablet: az animált letöltő nyíl nem kell */
	.slide-personal-download .download-graphic {
		display: none;
	}
	.slide-personal-download .download-title {
		margin-bottom: 2rem;
		font-size: 9vmin;
	}
	.slide-personal-download .download-sub {
		font-size: 2rem;
	}
	.slide-personal-download .download-lead {
		color: #999999;
		font-size: 1.2rem;
		line-height: 1.66666667;
	}
}

@media (max-width: 575.98px) {
	.slide-personal-download .dl-card {
		width: 100%;
		flex-direction: row;
		align-items: center;
		justify-content: flex-start;
		gap: 1rem;
		text-align: left;
	}
	.slide-personal-download .dl-card-icon {
		flex: 0 0 auto;
	}
	.slide-personal-download .dl-card-text {
		display: flex;
		flex-direction: column;
		gap: .3rem;
	}
	.slide-personal-download .dl-card-cap,
	.slide-personal-download .dl-card-meta {
		text-align: left;
		font-size: 1.2rem;
	}
}

/* keskeny laptop / nagy tablet (992–1199.98px): a szövegoszlop (col-lg-6) itt
   még nem elég széles a 3 fix (11rem) kártyához – egyenlő arányban zsugorodó
   kártyák, hogy 1 sorban maradjanak (ne csússzon le a 3.) */
@media (min-width: 992px) and (max-width: 1199.98px) {
	.slide-personal-download .download-cards {
		flex-wrap: nowrap;
		gap: .75rem;
	}
	.slide-personal-download .dl-card {
		width: auto;
		flex: 1 1 0;
		min-width: 0;
		padding: 1.1rem .6rem 1rem;
	}
	.slide-personal-download .dl-card-icon {
		width: 3.2rem;
		height: 3.2rem;
	}
	.slide-personal-download .dl-card-icon img,
	.slide-personal-download .dl-card-icon svg {
		width: 2rem;
		height: 2rem;
	}
	.slide-personal-download .dl-card-cap {
		font-size: .74rem;
	}
	.slide-personal-download .dl-card-meta {
		font-size: .66rem;
	}
}



.experience-item:not(:first-child) {
	border-top: #e1ddd6 1px solid;
}

.experience-item {
	padding-top: 1.625rem;
}

.experience-item-company,
.experience-item-title,
.experience-item-descr {
	margin-bottom: 1.625rem;
}

.experience-item-title {
	margin-right: 1rem;
}

.experience-item-date {
	margin-top: .3125rem;
	font-size: 1.125rem;
	text-transform: uppercase;
	font-weight: bold;
}

.experience-item-descr {
	margin-top: 2px;
	min-height: 5em;
}

.company-blue {
	color: #1774eb;
}

.company-pink {
	color: #f73163;
}

.company-green {
	color: #1dd05d;
}

.carousel-experience {
	position: relative;
}

.carousel-nav {
	margin-right: -.625rem;
}

.carousel-nav .owl-next {
	margin-left: .5rem;
}

.slide-personal-experience .slide-btn {
	margin-top: 3.88888889vmin;
}

@media (min-width: 768px) {
	.carousel-nav .owl-next {
		margin-left: 2rem;
	}
}

/* Az elnöki cél — cím és alcímek (mint a Vállalások szekció) */
.slide-personal-goal .slide-title {
	font-family: 'MonumentExtended', 'Gilroy', 'Segoe UI', system-ui, sans-serif;
	font-weight: 400;
	font-size: 6.7vmin;
	line-height: 1.1;
	text-transform: none;
	color: #16223f;
}

.slide-personal-goal .slide-title .hl {
	color: #b99e64;
}

/* Az elnöki cél — nagy arany Monument sorszám */
.slide-personal-goal .experience-item-date {
	margin-top: 0;
	font-family: 'MonumentExtended', 'Gilroy', 'Segoe UI', system-ui, sans-serif;
	font-weight: 400;
	font-size: 3rem;
	line-height: 1;
	letter-spacing: -.02em;
	text-transform: none;
	color: #b99e64;
}

@media (max-width: 767.98px) {
	.slide-personal-goal .experience-item-date {
		font-size: 2.4rem;
	}
}

.slide-personal-goal .goal-lead-hl {
	margin: 0 0 .5rem;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: -.049em;
	text-transform: uppercase;
	color: #b99e64;
}

.slide-personal-goal .goal-lead {
	margin: 0 0 .5rem;
	max-width: none;
	font-size: 1.125rem;
	line-height: 1.6;
	color: #16223f;
}

@media (max-width: 767.98px) {
	.slide-personal-goal .slide-title {
		font-size: 7.7vmin;
	}
	.slide-personal-goal .goal-lead-hl {
		font-size: 2rem;
	}
	.slide-personal-goal .goal-lead {
		margin-bottom: 2.5rem;
		font-size: 1.2rem;
	}
}

/* Az elnöki cél — mind a 8 pillér 2 oszlopban (4-4), lapozás nélkül */
.slide-personal-goal .goal-grid {
	display: flex;
	gap: 2.5rem;
}

.slide-personal-goal .goal-col {
	flex: 1 1 0;
	min-width: 0;
}

@media (max-width: 991.98px) {
	.slide-personal-goal .goal-grid {
		flex-direction: column;
		gap: 0;
	}
}

/* ===== TABLET SÁV (768–991 px) — minden szekció ===== */
@media (min-width: 768px) and (max-width: 991.98px) {
	/* Főoldal (hero) — a mobil elrendezés fut (lásd fentebb); tableten a
	   szöveg középre igazítva, a kék kör kisebb */
	.slide-personal-intro .slide-container .container .row > [class*="col-"] {
		max-width: 40rem;
		margin: 0 auto;
	}
	.slide-personal-intro .slide-intro-circle2 {
		width: 46rem;
		height: 46rem;
		margin-left: -23rem;
	}

	/* Rólam — a stackelt fotó és szöveg közé térköz + cím eltartás */
	.slide-personal-services .slide-title-info {
		margin-top: 3rem;
	}
	.slide-personal-about .about-photo {
		margin-bottom: 2.5rem;
	}
	.slide-personal-about .slide-title-info {
		font-size: 2.1rem;
	}
	.slide-personal-about .about-lead {
		font-size: 1.5rem;
	}

	/* Az elnöki cél — 1 oszlop, a cím tördelődhet, kompaktabb sorok */
	.slide-personal-goal .experience-item {
		padding: 1.15rem 1rem;
	}
	.slide-personal-goal .experience-item-title {
		white-space: normal;
	}
	.slide-personal-goal .experience-list {
		padding-left: 0;
		padding-right: 0;
	}

	/* Elnökségi vállalások — a nyilak beljebb, hogy ne lógjanak ki */
	.slide-personal-commit .commit-prev { left: -1rem; }
	.slide-personal-commit .commit-next { right: -1rem; }

	/* Jelölés / Zárás — a signoff-sorok ne legyenek pici vw-értékek */
	.slide-personal-jeloles .jeloles-body .jeloles-signoff-line {
		font-size: 1.35rem;
	}
	.slide-personal-closing .jeloles-body .jeloles-signoff-line {
		font-size: 1rem;
	}
}

.slide-personal-goal .experience-item {
	position: relative;
	display: flex;
	align-items: flex-start;
	gap: 1.4rem;
	padding: 1.5rem 1.25rem;
	border-radius: 1rem;
	cursor: pointer;
	transition: background-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.slide-personal-goal .experience-item:not(:first-child) {
	border-top: 1px solid #e1ddd6;
}

.slide-personal-goal .experience-item-date {
	flex: 0 0 auto;
	align-self: center;
	width: 4.25rem;
	margin: 0 15px 0 0;
}

.slide-personal-goal .goal-body {
	flex: 1 1 auto;
	min-width: 0;
}

.slide-personal-goal .experience-item-title {
	margin: 0 0 .2rem;
	font-size: 1rem;
	line-height: 1.2;
	color: #16223f;
}

.slide-personal-goal .experience-item-descr {
	margin: 0;
	min-height: 0;
	font-size: .95rem;
	line-height: 1.4;
	color: #16223f;
}

.slide-personal-goal .experience-item-more {
	flex: 0 0 auto;
	align-self: center;
	margin: 0;
}

.slide-personal-goal .experience-item-more .btn {
	margin: 0;
	transition: box-shadow .25s ease, transform .2s ease;
	/* alaphelyzet: halvány zöld gyűrű lüktet a gomb körül – jelzi, hogy
	   kattintható (mobilon/tableten nincs hover, ott ez az egyetlen jelzés) */
	animation: goalBtnPulse 2.3s ease-out infinite;
}

@keyframes goalBtnPulse {
	0%   { box-shadow: rgba(46, 125, 50, .46) 0 0 0 0; }
	45%  { box-shadow: rgba(46, 125, 50, .24) 0 0 0 6px; }
	75%  { box-shadow: rgba(46, 125, 50, 0)   0 0 0 10px; }
	100% { box-shadow: rgba(46, 125, 50, 0)   0 0 0 10px; }
}

/* a 4 gomb hullámban lüktet, ne egyszerre (kevésbé „riasztó") */
.slide-personal-goal .goal-col .experience-item:nth-child(2) .experience-item-more .btn { animation-delay: .6s; }
.slide-personal-goal .goal-col .experience-item:nth-child(3) .experience-item-more .btn { animation-delay: 1.2s; }
.slide-personal-goal .goal-col .experience-item:nth-child(4) .experience-item-more .btn { animation-delay: 1.8s; }

@media (prefers-reduced-motion: reduce) {
	.slide-personal-goal .experience-item-more .btn { animation: none; }
}

/* roll over — fehér lekerekített doboz + 110% zoom, vonal nélkül */
@media (hover: hover) {
	.slide-personal-goal .experience-item:hover {
		z-index: 2;
		background-color: #ffffff;
		box-shadow: 0 14px 36px rgba(0, 0, 0, .12);
		transform: scale(1.05);
	}
	.slide-personal-goal .experience-item:hover,
	.slide-personal-goal .experience-item:hover + .experience-item {
		border-top-color: transparent;
	}
	.slide-personal-goal .experience-item:hover .experience-item-more .btn {
		animation: none;
		box-shadow: rgba(46, 125, 50, .25) 0 0 0 6px;
		transform: scale(1.08);
	}
}

@media (max-width: 767.98px) {
	/* Az elnöki cél — mobil: 1 oszlop, szám + gomb a cím sorához igazítva */
	.slide-personal-goal .goal-grid {
		flex-direction: column;
		gap: 0;
	}
	.slide-personal-goal .experience-list {
		padding-left: 0;
		padding-right: 0;
	}
	.slide-personal-goal .experience-item {
		align-items: flex-start;
		gap: .9rem;
		padding: 1.25rem .25rem;
	}
	.slide-personal-goal .experience-item-date {
		align-self: flex-start;
		width: auto;
		margin: 0;
		font-size: 2rem;
		line-height: 1;
	}
	.slide-personal-goal .experience-item-title {
		white-space: normal;
		margin-bottom: .35rem;
		font-size: 1.4rem;
		line-height: 1.25;
	}
	.slide-personal-goal .experience-item-descr {
		font-size: 1.2rem;
		line-height: 1.45;
	}
	.slide-personal-goal .experience-item-more {
		align-self: center;
		margin-top: 0;
	}
}



/* 4.6 Slide Clients */

.slide-personal-clients .slide-bg {
	background-image: url("../img/bg-personal-clients.png");
}

.slide-personal-clients .slide-title-info {
	margin-bottom: 12.40740741vmin;
}

.title-mini {
	font-size: .875rem;
	text-transform: uppercase;
	color: #999999;
	font-weight: bold;
}

.slide-personal-clients .title-mini {
	margin-bottom: 3.375rem;
}

.icon-partners {
	display: inline-block;
	vertical-align: top;
	width: 3.75rem;
	height: 3.75rem;
	background-image: url("../img/icon-partners.png");
	background-position: 50% 50%;
	background-size: 100%;
	background-repeat: no-repeat;
}

.icon-project {
	display: inline-block;
	vertical-align: top;
	width: 3.75rem;
	height: 3.75rem;
	background-image: url("../img/icon-project.png");
	background-position: 50% 50%;
	background-size: 100%;
	background-repeat: no-repeat;
}

.icon-worldwide {
	display: inline-block;
	vertical-align: top;
	width: 3.75rem;
	height: 3.75rem;
	background-image: url("../img/icon-worldwide.png");
	background-position: 50% 50%;
	background-size: 100%;
	background-repeat: no-repeat;
}

.client-icon {
	width: 3.75rem;
	margin-right: 2.5rem;
}

.client-item {
	margin-bottom: 2.75rem;
}

.client-item-title {
	margin-bottom: .625rem;
	font-size: 2.125rem;
	font-family: 'Gilroy', 'Segoe UI', system-ui, sans-serif;
	line-height: .94117647;
}

.clients-photo {
	height: 0;
	padding-bottom: 103.50877193%;
	margin-top: 2rem;
	margin-bottom: 2rem;
	position: relative;
}

.clients-photo-item {
	width: 4.375rem;
}

.clients-photo .clients-photo-item {
	position: absolute;
	width: 14.56140351%;
}

.clients-photo-item > .inside {
	display: block;
	height: 0;
	padding-bottom: 100%;
	background-color: #f5f4f0;
	border-radius: 50rem;
	overflow: hidden;
	position: relative;
}

.clients-photo-item img {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	display: block;
	max-width: 100%;
	max-height: 100%;
}

.clients-photo .clients-photo-item1 {
	width: 19.29824561%;
	top: 43.05084746%;
	left: 6.31578947%;
}

.clients-photo .clients-photo-item2 {
	top: 0%;
	left: 57.54385965%;
}

.clients-photo .clients-photo-item3 {
	top: 48.81355932%;
	right: 0;
}

.clients-photo-item3 img {
	width: 60.24096386%;
	margin-top: 2px;
}

.clients-photo .clients-photo-item4 {
	top: 11.52542373%;
	left: 11.57894737%;
}

.clients-photo-item4 img {
	width: 34.93975904%;
}

.clients-photo .clients-photo-item5 {
	width: 31.92982456%;
	bottom: 0;
	right: 3.50877193%;
}

.clients-photo .clients-photo-item6 {
	width: 17.54385965%;
	bottom: 6.10169492%;
	left: 31.57894737%;
}

.clients-photo-item6 img {
	width: 31%;
}

.clients-photo .clients-photo-item7 {
	width: 49.12280702%;
	top: 23.05084746%;
	left: 31.92982456%;
}

.clients-photo .clients-photo-item8 {
	width: 12.28070175%;
	top: 73.55932203%;
	left: 6.31578947%;
}



/* 4.7 Slide Testimonials */

.slide-testimonials-circle1 {
	width: 10.5625rem;
	height: 10.5625rem;
	left: -14.89361702%;
	top: -11.70212766%;
}

.slide-testimonials-circle2 {
	width: 17.5rem;
	height: 17.5rem;
	left: 64.893617023%;
	top: 65.95744681%;
}

.slide-testimonials-circle3 {
	width: 6.875rem;
	height: 6.875rem;
	left: 27.55208333%;
	top: 100%;
	margin-top: -3.75rem;
}

.slide-personal-testimonials .slide-bg {
	background-image: url("../img/bg-personal-testimonials.png");
}

.testimonials-item-avatar-container {
	margin-bottom: 3.25rem;
}

.testimonial-item-avatar,
.testimonial-item-company {
	display: inline-block;
	vertical-align: top;
	margin-right: -1.25rem;
	width: 4.375rem;
}

.avatar > .inside {
	display: block;
	height: 0;
	padding-bottom: 100%;
	border-radius: 500px;
	overflow: hidden;
	background-position: 50% 30%;
	background-repeat: no-repeat;
	background-size: cover;
}

.testimonials-item-text {
	margin-bottom: 3.125rem;
}

.testimonials-item-rating {
	margin-bottom: .875rem;
	color: #ffc705;
}

.testimonials-item-author {
	font-size: 1.125rem;
	font-weight: bold;
	text-transform: uppercase;
}

.carousel-testimonial.owl-theme .owl-nav {
	margin-top: 3.625rem;
	margin-left: -.5rem;
	text-align: left;
}

.carousel-testimonial.owl-carousel .owl-nav button.owl-prev {
	margin-right: 1.875rem;
}

.slide-personal-testimonials .video-link {
	margin-top: .5rem;
}

.video-link {
	position: relative;
}

.video-link > .inside {
	display: block;
	position: relative;
	z-index: 100;
	height: 0;
	padding-bottom: 100%;
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-size: cover;
	border-radius: 2rem 2rem 5rem 2rem;
}

.center-icon {
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 100;
	transform: translate(-50%,-50%);
	color: #ffffff;
	font-size: 2.75rem;
}

.center-icon i {
	display: block;
	transform: scale(1);
	transition: all .3s ease-in-out;
}

a:hover .center-icon i {
	transform: scale(1.2);
}

.video-link-descr {
	margin-left: 2.5rem;
	margin-top: 1.375rem;
	position: relative;
	font-style: italic;
}



/* 4.8 Slide Contacts */

.slide-contacts-circle1 {
	width: 60.5625rem;
	height: 60.5625rem;
	top: 46.94444444%;
	left: -3.4375%;
}

.slide-contacts-circle2 {
	width: 8.125rem;
	height: 8.125rem;
	top: 15.55555556%;
	right: -2.96875%;
	left: auto;
}

.contact-personal-card {
	height: 100%;
	display: flex;
	flex-direction: column;
}

.contact-personal-card-title {
	height: 100%;
}

.contact-personal-card .title-mini {
	margin-bottom: 2.875rem;
}

.contact-personal-card .slide-title-sub {
	margin-bottom: 1.6875rem;
}

.slide-personal-contacts .slide-title-info {
	margin-bottom: 2.625rem;
}

.contact-personal-form {
	margin-bottom: .25rem;
}



/*-------------------------------------------------------------------------------
  5. Footer
-------------------------------------------------------------------------------*/

.social {
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 1.3125rem;
}

.social li {
	display: inline-block;
	vertical-align: middle;
	margin-right: 1rem;
}

.social a {
	color: #999999;
	transition: color .3s ease;
}

.social a:hover {
	color: #16223f;
}

.social-fixed {
	position: fixed;
	z-index: 300;
	left: 15px;
	bottom: 0rem;
}

.social-fixed li {
	display: block;
	margin-right: 0;
	margin-bottom: 1.375rem;
}

.slogan-fixed {
	position: fixed;
	z-index: 300;
	left: 37px;
	bottom: 1.5rem;
	color: #999999;
	font-weight: bold;
	font-size: .875rem;
	white-space: nowrap;
	text-transform: uppercase;
	transition: color .3s ease-in-out, opacity .25s ease;
}

/* ha a tartalom belelógna a fix alsó feliratok sávjába, azok elhalványulnak
   (a JS ütközés-ellenőrzéssel dönt) */
.footchrome-hidden .slogan-fixed,
.footchrome-hidden .copyright-fixed {
	opacity: 0;
	pointer-events: none;
}

.slogan-fixed .sep {
	margin: 0 .75rem;
	opacity: .55;
}

.copyright {
	text-align: right;
	color: #999999;
	font-weight: bold;
	font-size: .875rem;
	text-transform: uppercase;
	transition: all .3s ease-in-out;
}

.copyright-fixed {
	position: fixed;
	right: 15px;
	bottom: 1.5rem;
	z-index: 300;
	transition: opacity .25s ease;
}

@media (min-width: 1600px) {
	.social-fixed {
		left: 4.25rem;
		bottom: 2rem;
	}

	.copyright-fixed {
		right: 4.25rem;
		bottom: 3.5rem;
	}

	.slogan-fixed {
		left: 90px;
		bottom: 3.5rem;
	}
}


.body-bg-dark .header:not(.header-shrink) .container-fluid {
	color: #ffffff;
}

.body-bg-dark .header:not(.header-shrink) .header-tagline,
.body-bg-dark .copyright,
.body-bg-dark .slogan-fixed,
.body-bg-dark .slide-num,
.body-bg-dark .footer .social a,
.body-copyright-light .copyright,
.body-copyright-light .slogan-fixed {
	color: rgba(255,255,255,.6);
}

.body-bg-dark .social a:hover {
	color: #ffffff;
}

.body-bg-dark .header:not(.header-shrink) .nav-toggle .stick,
.body-bg-dark #pp-nav li a:not(.active) span {
	background: #ffffff;
}

/* sötét szekció alatt a vízszintes fejléc-menü világos legyen */
.body-bg-dark .header:not(.header-shrink) .main-nav-desktop a {
	color: rgba(255,255,255,.82);
	border-bottom-color: transparent;
}
.body-bg-dark .header:not(.header-shrink) .main-nav-desktop a:hover {
	color: #7ddf86;
	border-bottom-color: #7ddf86;
}
.body-bg-dark .header:not(.header-shrink) .main-nav-desktop li.active a {
	color: #ff758c;
	border-bottom-color: #ff758c;
}

.body-menu-opened .body-bg-dark .nav-toggle .stick {
	background: #000000;
}



/*-------------------------------------------------------------------------------
  6. Modal
-------------------------------------------------------------------------------*/

.modal-content {
	border: none;
	border-radius: 1rem 1rem 3rem 1rem;
}

.modal-header {
	padding-top: 2rem;
	padding-bottom: .5rem;
	border-bottom: none;
}

.modal-header,
.modal-body,
.modal-footer {
	padding-left: 2rem;
	padding-right: 2rem;
}

.modal-body {
	padding-bottom: 2rem;
}

.modal-title {
	font-family: 'Gilroy', 'Segoe UI', system-ui, sans-serif;
	font-size: 2rem;
	color: #b99e64;
	text-transform: uppercase;
}

.modal-header .close {
	padding: .5rem;
	position: relative;
	top: -.5rem;
	right: -.5rem;
	font-size: 1.5rem;
	line-height: .75;
}

.message {
	display: none;
}



@media (min-width: 768px) {
	html {
		font-size: 13px;
	}
}

@media (min-width: 992px) {
	html {
		font-size: 14px;
	}
}

@media (min-width: 1280px) {
	html {
		font-size: 15px;
	}
}

@media (min-width: 1600px) {
	html {
		font-size: 16px;
	}
}



/* ===============================================================
   ELNÖKSÉGI JELÖLTEK SZEKCIÓ — ÖNÁLLÓ, ELKÜLÖNÍTETT CSS BLOKK
   ===============================================================
   Ez a teljes blokk KIZÁRÓLAG az „Elnökségi jelöltek” szekciót és
   a hozzá tartozó részletes-oldal overlay-t (canddetail-overlay)
   érinti. Az „Az elnöki cél” szekció (.slide-personal-goal,
   .goaldetail-*, .gd-*, .experience-item*) mintájára készült
   MÁSOLAT, saját (cand-/canddetail-/slide-personal-candidates)
   osztálynevekkel — semmilyen szabálya nem hat ki más szekcióra,
   és más szekció szabálya sem hat ki erre. Bármilyen módosítás
   ezen a szekción csak ide, ebbe a blokkba kerüljön.
   =============================================================== */

/* 4.3b Az elnöki cél – részletes oldalak (jobbról becsúszó overlay) */

/* az overlay a rács fölé csúszik be jobbról; záráskor jobbra vissza */
.canddetail-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1000;                /* a header + szekció-pöttyök fölé: teljes „oldal" */
	background-color: #16223f;
	overflow-x: hidden;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	transform: translateX(100%);
	transition: transform .5s cubic-bezier(.45, 0, .15, 1), visibility 0s linear .5s;
	visibility: hidden;
}

.canddetail-overlay.is-open {
	transform: translateX(0);
	visibility: visible;
	transition: transform .5s cubic-bezier(.45, 0, .15, 1), visibility 0s;
}

/* nyitott overlay alatt ne látszódjanak a pagePiling szekció-pöttyök */
.canddetail-open #pp-nav {
	opacity: 0;
	pointer-events: none;
}

/* X bezáró gomb – ugyanolyan kör-gomb, mint a rácson a zöld, csak KÉK;
   fix az overlay tetején, középen; ugyanaz a glow + zoom roll over */
.canddetail-close {
	position: fixed;
	top: 4rem;
	left: 50%;
	transform: translateX(-50%) scale(1.15);
	z-index: 20;
	margin: 0;
	background-color: #b99e64;
	border-color: #b99e64;
	color: #ffffff;
	transition: box-shadow .25s ease, transform .2s ease;
	/* alaphelyzet: halvány arany gyűrű lüktet – jelzi a bezárás gombot */
	animation: candClosePulse 2.3s ease-out infinite;
}

@keyframes candClosePulse {
	0%   { box-shadow: rgba(185, 158, 100, .46) 0 0 0 0; }
	45%  { box-shadow: rgba(185, 158, 100, .24) 0 0 0 6px; }
	75%  { box-shadow: rgba(185, 158, 100, 0)   0 0 0 10px; }
	100% { box-shadow: rgba(185, 158, 100, 0)   0 0 0 10px; }
}

@media (prefers-reduced-motion: reduce) {
	.canddetail-close { animation: none; }
}

.canddetail-close:hover,
.canddetail-close:focus {
	/* a lüktetés hoveren is megy tovább (nincs ugrás), csak a gomb nagyobb lesz */
	background-color: #b99e64;
	border-color: #b99e64;
	color: #ffffff;
	transform: translateX(-50%) scale(1.24);
}

/* billentyűzetes fókusznál viszont legyen stabil, jól látható gyűrű */
.canddetail-close:focus-visible {
	animation: none;
	box-shadow: rgba(185, 158, 100, .38) 0 0 0 6px;
}

/* a 8 téma egymásra rétegezve; váltáskor a cél a mostani réteg FÖLÉ csúszik
   (cover): a mostani a helyén marad, amíg a becsúszó teljesen le nem fedi */
.cand-topics {
	position: absolute;
	inset: 0;
	overflow: hidden;
}

.cand-topic {
	position: absolute;
	inset: 0;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	will-change: transform;
	background-color: #16223f;
}

.cand-topic[hidden] {
	display: none;
}

/* oldalankénti mély, tompított háttérszínek – minden színen olvasható marad
   a fehér szöveg és az arany kiemelés (a kék az 1. marad) */
.cand-topics > .cand-topic:nth-child(1) { background-color: #16223f; } /* mély kék */
.cand-topics > .cand-topic:nth-child(2) { background-color: #123a3a; } /* mély petróleum */
.cand-topics > .cand-topic:nth-child(3) { background-color: #3a2029; } /* mély bordó */
.cand-topics > .cand-topic:nth-child(4) { background-color: #1c3327; } /* mély erdőzöld */
.cand-topics > .cand-topic:nth-child(5) { background-color: #2b2247; } /* mély szilva */
.cand-topics > .cand-topic:nth-child(6) { background-color: #242b34; } /* mély acélszürke */
.cand-topics > .cand-topic:nth-child(7) { background-color: #33281f; } /* mély eszpresszó */
.cand-topics > .cand-topic:nth-child(8) { background-color: #221f47; } /* mély indigó */

/* oldalváltó – minimál: csak számok, közöttük vékony függőleges vonal.
   Nincs gomb-stílus, nincs árnyék. Alap: halvány fehér; aktív: arany.
   Helye: az overlay alján, középen (asztali/laptop). */
.canddetail-pager {
	position: fixed;
	top: auto;
	bottom: 2rem;                 /* JS finomítja: az alsó üres sáv közepére */
	left: 50%;
	transform: translateX(-50%);
	z-index: 20;
	display: flex;
	align-items: center;
	gap: .75rem;
	max-width: calc(100vw - 2rem);
	transition: bottom .2s ease, background-color .2s ease;
}

/* magas tartalomnál a pager ragadós alsó sávvá válik (mint a menü),
   hogy a tartalom ne csússzon rá */
.canddetail-pager.canddetail-pager--stuck {
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	max-width: none;
	transform: none;
	justify-content: center;
	padding: 1.6rem 1rem;
	background: rgba(0, 0, 0, .32);
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
}

/* a részletes oldalon nincs fix fejléc az overlay alatt → kevesebb felső térköz */
.cand-topic .slide-container {
	padding-top: 3.25rem;
	padding-bottom: 3.25rem;
}

/* a ragadós sáv alá csússzon a tartalom, ne alá bújjon az utolsó sor */
.cand-topic--barred .slide-container {
	padding-bottom: 5.5rem;
}

.canddetail-pager-nums {
	display: flex;
	align-items: center;
	gap: .55rem;
}

/* a lapozó „számai” helyett a jelöltek kis kör arcképei (vagy placeholder
   kör, amíg nincs fotó) – a rács kártyáin lévő kis kör-fotóval azonos minta */
.canddetail-pager-num {
	position: relative;
	padding: 0;
	border: 0;
	background: none;
	line-height: 0;
	cursor: pointer;
}

.canddetail-pager-thumb {
	display: block;
	width: 2.1rem;
	height: 2.1rem;
	border-radius: 50%;
	overflow: hidden;
	background: rgba(255, 255, 255, .16);
	border: 2px solid transparent;
	opacity: .6;
	transition: opacity .25s ease, border-color .25s ease, transform .2s ease;
}

.canddetail-pager-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.canddetail-pager-num:hover .canddetail-pager-thumb {
	opacity: .9;
	transform: scale(1.08);
}

.canddetail-pager-num.is-active .canddetail-pager-thumb {
	opacity: 1;
	border-color: #b99e64;
	box-shadow: 0 0 0 2px rgba(185, 158, 100, .25);
}

.canddetail-pager-arrow {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: .2rem .35rem;
	border: 0;
	background: none;
	color: rgba(255, 255, 255, .62);
	font-size: 1.45rem;
	line-height: 1;
	cursor: pointer;
	transition: color .25s ease;
}

.canddetail-pager-arrow:hover {
	color: rgba(255, 255, 255, .95);
}

@media (max-width: 575.98px) {
	.canddetail-pager {
		gap: .4rem;
	}
	.canddetail-pager-nums {
		gap: .35rem;
	}
	.canddetail-pager-thumb {
		width: 1.87rem;
		height: 1.87rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.canddetail-overlay {
		transition: visibility 0s;
	}
}

.canddetail {
	max-width: none;
}

.canddetail .canddetail-back {
	display: inline-flex;
	align-items: center;
	gap: .35rem;
	margin-bottom: 1.75rem;
	font-size: .95rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .06em;
	text-decoration: none;
	color: #ffffff;
	transition: color .2s ease, transform .2s ease;
}

.canddetail .canddetail-back:hover,
.canddetail .canddetail-back:focus {
	text-decoration: none;
	color: #b99e64;
	transform: translateX(-2px);
}

.canddetail-back i {
	font-size: 1.05rem;
}

/* fejléc: kör-fotó a cím+alcím mellett, a teljes szélességű szöveg fölött */
.canddetail-head {
	position: relative;
	display: flex;
	align-items: center;
	gap: 1.75rem;
}

.canddetail-head-text {
	min-width: 0;
}

.canddetail-photo-sm {
	flex: 0 0 auto;
	width: 11rem;
	height: 11rem;
	border-radius: 50%;
	overflow: hidden;
	background: rgba(255, 255, 255, .14);
	transition: width .3s ease, height .3s ease, box-shadow .3s ease;
}

/* roll over: finom 10%-os nagyítás (nem hagyja el a helyét) */
@media (hover: hover) {
	.canddetail-photo-sm:hover {
		transform: scale(1.1);
		box-shadow: 0 0 0 4px rgba(185, 158, 100, .5);
	}
}

/* kattintásra: a fájl eredeti (500×500px) méretéig nagyítás – kilép a
   flex-sorból (position: absolute), hogy a cím/alcím ne tolódjon el,
   és arany gyűrűvel/árnyékkal emelkedik ki. Kattintásra kapcsol
   (.is-zoomed), újbóli kattintásra vagy máshova kattintva visszazár. */
.canddetail-photo-sm.is-zoomed {
	position: absolute;
	top: 0;
	left: 0;
	box-sizing: border-box;
	width: 500px;
	height: 500px;
	z-index: 5;
	transform: none;
	cursor: zoom-out;
	/* rés az arany gyűrű és a kép között – valódi „liquid glass” 3 rétege:
	   frost (halvány háttér + erős blur/telítés), rim (vékony szegély +
	   több irányú belső fényvonal) és sheen (::before, átlós fényes csík,
	   screen blend módban). A sheen/rim csak a résben látszik, mert a kép
	   (a tartalom) a padding-en belül eltakarja a kör közepét. */
	padding: 16px;
	background: rgba(255, 255, 255, .025);
	-webkit-backdrop-filter: blur(2px) saturate(180%) brightness(1.1);
	backdrop-filter: blur(2px) saturate(180%) brightness(1.1);
	border: 1px solid rgba(255, 255, 255, .18);
	box-shadow:
		inset 0 1px 1px rgba(255, 255, 255, .55),
		inset 0 -1px 1px rgba(255, 255, 255, .3),
		inset 1px 0 1px rgba(255, 255, 255, .2),
		inset -1px 0 1px rgba(255, 255, 255, .2),
		0 0 0 5px rgba(185, 158, 100, .8),
		0 24px 60px rgba(0, 0, 0, .5);
}

.canddetail-photo-sm {
	cursor: zoom-in;
}

.canddetail-photo-sm img {
	width: 100%;
	height: 100%;
	border-radius: 50%;
	object-fit: cover;
	display: block;
}

.canddetail-head .canddetail-lead {
	margin: .4rem 0 0;
	color: rgba(255, 255, 255, .55);
}

.canddetail-main-full {
	margin-top: .5rem;
	max-width: none;
}

.canddetail-main-full p {
	margin: 0 0 1.15rem;
	font-size: 1.05rem;
	line-height: 1.6;
	color: rgba(255, 255, 255, .88);
}

.canddetail-main-full p:last-child {
	margin-bottom: 0;
}

.canddetail-title {
	margin: 0;
	font-family: 'MonumentExtended', 'Gilroy', 'Segoe UI', system-ui, sans-serif;
	font-weight: 400;
	font-size: 2.5rem;
	line-height: 1.08;
	color: #b99e64;
}

/* a név alatt, saját sorban: félkövér, erős (fehér) tisztség – Jelölt */
.canddetail-title-role {
	margin: .35rem 0 0;
	font-size: 1.25rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .02em;
	color: rgba(255, 255, 255, .92);
}

.canddetail-lead {
	margin: 0 0 3rem;
	font-size: 1.1rem;
	line-height: 1.5;
	color: rgba(255,255,255,.9);
}

.canddetail-lead-gold {
	font-style: italic;
	color: #b99e64;
}

.canddetail-list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.canddetail-list li {
	position: relative;
	padding-left: 1.6rem;
	margin-bottom: .85rem;
	font-size: 1.125rem;
	line-height: 1.5;
	color: rgba(255,255,255,.9);
}

.canddetail-list li::before {
	content: "";
	position: absolute;
	left: 0;
	top: .58em;
	width: .5rem;
	height: .5rem;
	border-radius: 50%;
	background: #b99e64;
}

.canddetail-quote {
	margin: 1.9rem 0 0;
	font-size: 1.2rem;
	font-style: italic;
	line-height: 1.45;
	color: #b99e64;
}

.canddetail-box {
	padding: 1.4rem 1.5rem;
	border-left: 3px solid #b99e64;
	border-radius: .5rem;
	background: rgba(255,255,255,.06);
}

.canddetail-box p {
	margin: 0;
	font-size: 1rem;
	line-height: 1.55;
	color: rgba(255,255,255,.86);
}

/* fontos részek kiemelése a 8 részletes dián – világosabb arany + félkövér,
   hogy a mély háttéren „kiugorjon", de olvasható maradjon */
.canddetail-lead strong,
.canddetail-list strong,
.canddetail-box p strong,
.canddetail-block p strong,
.canddetail-main-full p strong {
	color: #e2d1ab;
	font-weight: 700;
}

/* szövetség-/szervezetnevek: félkövér, de a szöveg saját (fehér) színén,
   nem arany – megkülönböztetve a tartalmi kiemelésektől */
.canddetail-main-full p strong.canddetail-org-name {
	color: inherit;
	font-weight: 700;
}

.canddetail-boxes .canddetail-box + .canddetail-box {
	margin-top: .75rem;
}

/* dia 12: alcímes blokkok, teljes szélességben egymás alatt */
.canddetail-blocks {
	display: flex;
	flex-direction: column;
	gap: 1.75rem;
}

.canddetail-block {
	padding-left: 1.25rem;
	border-left: 3px solid rgba(185,158,100,.55);
}

.canddetail-block-title {
	margin: 0 0 .35rem;
	font-size: 1.05rem;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: .03em;
	text-transform: uppercase;
	color: #ffffff;
}

.canddetail-block-sub {
	margin: 0 0 .5rem;
	font-size: 1rem;
	font-style: italic;
	line-height: 1.45;
	color: #b99e64;
}

.canddetail-block > p:not(.canddetail-block-sub) {
	margin: 0;
	font-size: 1.05rem;
	line-height: 1.55;
	color: rgba(255,255,255,.88);
}

/* keretes dobozok mini-slidere (dia 8 és dia 9) – lentről felfelé csúszik,
   5 mp-enként automatikusan lép, egérre megáll */
.cand-boxslider {
	display: flex;
	flex-direction: column;
}

.cand-boxslider .cand-boxslider-viewport {
	overflow: hidden;
}

.cand-boxslider .cand-boxslider-track {
	display: flex;
	flex-direction: column;
	will-change: transform;
}

.cand-boxslider .cand-boxslider-track > .canddetail-box {
	flex: 0 0 auto;
	width: 100%;
	margin-top: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.cand-boxslider .cand-boxslider-nav {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1.1rem;
	margin-top: .9rem;
}

/* csak a nyíl, kör keret nélkül */
.cand-boxslider .cand-boxslider-nav button {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: .2rem;
	border: 0;
	background: none;
	color: rgba(255,255,255,.75);
	font-size: 1.25rem;
	line-height: 1;
	cursor: pointer;
	transition: color .2s ease, transform .2s ease;
}

.cand-boxslider .cand-boxslider-nav button:hover {
	color: #b99e64;
	transform: scale(1.12);
}

.cand-boxslider .cand-boxslider-count {
	min-width: 3.2em;
	text-align: center;
	font-size: .9rem;
	letter-spacing: .04em;
	color: rgba(255,255,255,.7);
}

@media (max-width: 991.98px) {
	.canddetail-title {
		font-size: 2.2rem;
	}

	.canddetail-lead {
		font-size: 1.2rem;
	}
}

/* nyitott overlay: a bal széli nemzeti-színű csík ne látsszon rajta */
.canddetail-open body::before {
	opacity: 0;
}

@media (max-width: 767.98px) {
	/* kényelmesebb oldalmargók a részletes oldalakon */
	.cand-topic .slide-container > .container {
		padding-left: 1.35rem;
		padding-right: 1.35rem;
	}

	.cand-topic .slide-container {
		padding-top: 4.5rem;
		padding-bottom: 4rem;
	}

	.cand-topic--barred .slide-container {
		padding-bottom: 6rem;
	}

	/* mobilon a kép felül, nagyban, alatta középre igazítva a név/tisztség/szövetség */
	.canddetail-head {
		flex-direction: column;
		align-items: center;
		text-align: center;
		gap: .9rem;
		/* a kép és az X gomb közötti rés egyezzen az X és a lap teteje
		   közötti réssel (a vissza-gomb rejtése után ez maradt aszimmetrikus) */
		margin-top: 1.4rem;
	}

	.canddetail-photo-sm {
		width: 20rem;
		height: 20rem;
		/* mobilon a kép már eleve nagyban jelenik meg – nincs roll over/zoom */
		cursor: default;
	}

	.canddetail-head-text {
		display: flex;
		flex-direction: column;
		align-items: center;
	}

	.canddetail-title {
		font-size: 1.85rem;
	}

	.canddetail-title-role {
		font-size: 1.05rem;
		margin-top: .25rem;
	}

	.canddetail-lead {
		font-size: 1.2rem;
	}

	.canddetail-head .canddetail-lead {
		margin-top: .25rem;
	}

	.canddetail-main-full {
		margin-top: 2rem;
	}

	.canddetail-main-full p {
		font-size: 1.2rem;
	}

	/* mobilon felesleges a szöveges vissza-gomb, elég a felső X bezáró gomb */
	.canddetail .canddetail-back {
		display: none;
	}

	/* mobilon úgyis görgetünk → az idézet-slider helyett a 4 doboz egymás alatt */
	.cand-boxslider .cand-boxslider-viewport {
		overflow: visible;
		height: auto !important;
	}

	.cand-boxslider .cand-boxslider-track {
		flex-direction: column;
		transform: none !important;
	}

	.cand-boxslider .cand-boxslider-track > .canddetail-box {
		height: auto !important;
	}

	.cand-boxslider .cand-boxslider-track > .canddetail-box + .canddetail-box {
		margin-top: .85rem;
	}

	.cand-boxslider .cand-boxslider-track > [aria-hidden="true"] {
		display: none;
	}

	.cand-boxslider .cand-boxslider-nav {
		display: none;
	}
}



/* Az elnöki cél — cím és alcímek (mint a Vállalások szekció) */
.slide-personal-candidates .slide-title {
	font-family: 'MonumentExtended', 'Gilroy', 'Segoe UI', system-ui, sans-serif;
	font-weight: 400;
	font-size: 6.7vmin;
	line-height: 1.1;
	text-transform: none;
	color: #16223f;
}

.slide-personal-candidates .slide-title .hl {
	color: #b99e64;
}

/* Az elnöki cél — nagy arany Monument sorszám */
.slide-personal-candidates .cand-card-num {
	margin-top: 0;
	font-family: 'MonumentExtended', 'Gilroy', 'Segoe UI', system-ui, sans-serif;
	font-weight: 400;
	font-size: 3rem;
	line-height: 1;
	letter-spacing: -.02em;
	text-transform: none;
	color: #b99e64;
}

@media (max-width: 767.98px) {
	.slide-personal-candidates .cand-card-num {
		font-size: 2.4rem;
	}
}

.slide-personal-candidates .cand-lead-hl {
	margin: 0 0 .5rem;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: -.049em;
	text-transform: uppercase;
	color: #b99e64;
}

.slide-personal-candidates .cand-lead {
	margin: 0 0 .5rem;
	max-width: none;
	font-size: 1.125rem;
	line-height: 1.6;
	color: #16223f;
}

@media (max-width: 767.98px) {
	.slide-personal-candidates .slide-title {
		font-size: 7.7vmin;
	}
	.slide-personal-candidates .cand-lead-hl {
		font-size: 2rem;
	}
	.slide-personal-candidates .cand-lead {
		margin-bottom: 2.5rem;
		font-size: 1.2rem;
	}
}

/* Az elnöki cél — mind a 8 pillér 2 oszlopban (4-4), lapozás nélkül */
.slide-personal-candidates .cand-grid {
	display: flex;
	gap: 2.5rem;
}

.slide-personal-candidates .cand-col {
	flex: 1 1 0;
	min-width: 0;
}

@media (max-width: 991.98px) {
	.slide-personal-candidates .cand-grid {
		flex-direction: column;
		gap: 0;
	}
}

/* ===== TABLET SÁV (768–991 px) — minden szekció ===== */
@media (min-width: 768px) and (max-width: 991.98px) {
	/* Főoldal (hero) — a mobil elrendezés fut (lásd fentebb); tableten a
	   szöveg középre igazítva, a kék kör kisebb */
	.slide-personal-intro .slide-container .container .row > [class*="col-"] {
		max-width: 40rem;
		margin: 0 auto;
	}
	.slide-personal-intro .slide-intro-circle2 {
		width: 46rem;
		height: 46rem;
		margin-left: -23rem;
	}

	/* Rólam — a stackelt fotó és szöveg közé térköz + cím eltartás */
	.slide-personal-services .slide-title-info {
		margin-top: 3rem;
	}
	.slide-personal-about .about-photo {
		margin-bottom: 2.5rem;
	}
	.slide-personal-about .slide-title-info {
		font-size: 2.1rem;
	}
	.slide-personal-about .about-lead {
		font-size: 1.5rem;
	}

	/* Az elnöki cél — 1 oszlop, a cím tördelődhet, kompaktabb sorok */
	.slide-personal-candidates .cand-card {
		padding: 1.15rem 1rem;
	}
	.slide-personal-candidates .cand-card-title {
		white-space: normal;
	}
	.slide-personal-candidates .cand-list {
		padding-left: 0;
		padding-right: 0;
	}

	/* Elnökségi vállalások — a nyilak beljebb, hogy ne lógjanak ki */
	.slide-personal-commit .commit-prev { left: -1rem; }
	.slide-personal-commit .commit-next { right: -1rem; }

	/* Jelölés / Zárás — a signoff-sorok ne legyenek pici vw-értékek */
	.slide-personal-jeloles .jeloles-body .jeloles-signoff-line {
		font-size: 1.35rem;
	}
	.slide-personal-closing .jeloles-body .jeloles-signoff-line {
		font-size: 1rem;
	}
}

.slide-personal-candidates .cand-card {
	position: relative;
	display: flex;
	align-items: flex-start;
	gap: 1.4rem;
	padding: 1.5rem 1.25rem;
	border-radius: 1rem;
	cursor: pointer;
	transition: background-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.slide-personal-candidates .cand-card:not(:first-child) {
	border-top: 1px solid #e1ddd6;
}

.slide-personal-candidates .cand-card-num {
	flex: 0 0 auto;
	align-self: center;
	width: 4.25rem;
	margin: 0 15px 0 0;
}

.slide-personal-candidates .cand-body {
	flex: 1 1 auto;
	min-width: 0;
}

.slide-personal-candidates .cand-card-title {
	margin: 0 0 .2rem;
	font-size: 1rem;
	line-height: 1.2;
	color: #16223f;
}

.slide-personal-candidates .cand-card-descr {
	margin: 0;
	min-height: 0;
	font-size: .95rem;
	font-weight: 600;
	line-height: 1.4;
	color: #b99e64;
}

/* 3. sor a kártyán: a jelölt által vezetett szakszövetség */
.slide-personal-candidates .cand-card-org {
	margin: .15rem 0 0;
	font-size: .82rem;
	line-height: 1.35;
	color: #6b6558;
}

.slide-personal-candidates .cand-card-more {
	flex: 0 0 auto;
	align-self: center;
	margin: 0;
}

.slide-personal-candidates .cand-card-more .btn {
	margin: 0;
	transition: box-shadow .25s ease, transform .2s ease;
	/* alaphelyzet: halvány zöld gyűrű lüktet a gomb körül – jelzi, hogy
	   kattintható (mobilon/tableten nincs hover, ott ez az egyetlen jelzés) */
	animation: candBtnPulse 2.3s ease-out infinite;
}

@keyframes candBtnPulse {
	0%   { box-shadow: rgba(46, 125, 50, .46) 0 0 0 0; }
	45%  { box-shadow: rgba(46, 125, 50, .24) 0 0 0 6px; }
	75%  { box-shadow: rgba(46, 125, 50, 0)   0 0 0 10px; }
	100% { box-shadow: rgba(46, 125, 50, 0)   0 0 0 10px; }
}

/* a 4 gomb hullámban lüktet, ne egyszerre (kevésbé „riasztó") */
.slide-personal-candidates .cand-col .cand-card:nth-child(2) .cand-card-more .btn { animation-delay: .6s; }
.slide-personal-candidates .cand-col .cand-card:nth-child(3) .cand-card-more .btn { animation-delay: 1.2s; }
.slide-personal-candidates .cand-col .cand-card:nth-child(4) .cand-card-more .btn { animation-delay: 1.8s; }

@media (prefers-reduced-motion: reduce) {
	.slide-personal-candidates .cand-card-more .btn { animation: none; }
}

/* roll over — fehér lekerekített doboz + 110% zoom, vonal nélkül */
@media (hover: hover) {
	.slide-personal-candidates .cand-card:hover {
		z-index: 2;
		background-color: #ffffff;
		box-shadow: 0 14px 36px rgba(0, 0, 0, .12);
		transform: scale(1.05);
	}
	.slide-personal-candidates .cand-card:hover,
	.slide-personal-candidates .cand-card:hover + .cand-card {
		border-top-color: transparent;
	}
	.slide-personal-candidates .cand-card:hover .cand-card-more .btn {
		animation: none;
		box-shadow: rgba(46, 125, 50, .25) 0 0 0 6px;
		transform: scale(1.08);
	}
}

@media (max-width: 767.98px) {
	/* Az elnöki cél — mobil: 1 oszlop, szám + gomb a cím sorához igazítva */
	.slide-personal-candidates .cand-grid {
		flex-direction: column;
		gap: 0;
	}
	.slide-personal-candidates .cand-list {
		padding-left: 0;
		padding-right: 0;
	}
	.slide-personal-candidates .cand-card {
		align-items: flex-start;
		gap: .9rem;
		padding: 1.25rem .25rem;
	}
	.slide-personal-candidates .cand-card-num {
		align-self: flex-start;
		width: auto;
		margin: 0;
		font-size: 2rem;
		line-height: 1;
	}
	.slide-personal-candidates .cand-card-title {
		white-space: normal;
		margin-bottom: .35rem;
		font-size: 1.4rem;
		line-height: 1.25;
	}
	.slide-personal-candidates .cand-card-descr {
		font-size: 1.2rem;
		line-height: 1.45;
	}
	.slide-personal-candidates .cand-card-org {
		font-size: 1.2rem;
		margin-top: .25rem;
	}
	.slide-personal-candidates .cand-card-more {
		align-self: center;
		margin-top: 0;
	}
}

/* kiegészítés: kör alakú fotó-hely a rács-kártyákon (a számkör helyett) –
   placeholder amíg nincs valódi arckép; img betöltéskor automatikusan
   kitölti a kört (object-fit: cover) */
.slide-personal-candidates .cand-card-photo {
	flex: 0 0 auto;
	align-self: center;
	width: 4.25rem;
	height: 4.25rem;
	border-radius: 50%;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #e5e1d8;
	color: #8a8578;
	font-size: .62rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .04em;
	text-align: center;
	transition: transform .25s ease;
	transform-origin: center;
}

.slide-personal-candidates .cand-card-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

@media (hover: hover) {
	.slide-personal-candidates .cand-card:hover .cand-card-photo {
		transform: scale(1.22);
	}
}

@media (max-width: 767.98px) {
	.slide-personal-candidates .cand-card-photo {
		width: 5.65rem;
		height: 5.65rem;
	}
}


/* ===============================================================
   /ELNÖKSÉGI JELÖLTEK SZEKCIÓ
   =============================================================== */
