/* Lélek Liquid Glass FAQ
   Minden érték CSS-változó a .llgq-root-on; az Elementor vezérlők ezeket írják felül.
   A kritikus elrendezési szabályok erős szelektorral mennek ki, hogy a téma CSS-e
   (button / h2 / p / ul szabályok) a publikált oldalon se tudja szétcsúsztatni. */

.llgq-root {
	--llgq-sec-bg: linear-gradient(180deg, #fbfaf8, #e9f1f1);
	--llgq-sec-pad: 72px 56px 72px 56px;
	--llgq-sec-margin: 0px 0px 0px 0px;
	--llgq-sec-minh: 0px;
	--llgq-sec-radius: 0px;
	--llgq-wrap: 1240px;
	--llgq-block-max: 880px;
	--llgq-block-align: flex-start;
	--llgq-head-ta: left;
	--llgq-head-align: flex-start;
	--llgq-head-gap: 36px;
	--llgq-head-inner-gap: 12px;
	--llgq-head-max: 100%;
	--llgq-kicker-c: #5c7074;
	--llgq-title-c: #1f2a2c;
	--llgq-intro-c: #4c5f63;
	--llgq-gap: 10px;
	--llgq-g1: rgba(255, 255, 255, 0.68);
	--llgq-g2: rgba(255, 255, 255, 0.42);
	--llgq-blur: 20px;
	--llgq-sat: 150%;
	--llgq-bw: 1px;
	--llgq-bc: rgba(255, 255, 255, 0.85);
	--llgq-bc-hover: rgba(79, 197, 206, 0.55);
	--llgq-bc-open: rgba(79, 197, 206, 0.5);
	--llgq-r: 999px;
	--llgq-r-open: 28px;
	--llgq-shadow: 0 12px 30px rgba(23, 52, 58, 0.08);
	--llgq-q-pad: 11px 11px 11px 30px;
	--llgq-q-gap: 24px;
	--llgq-q-c: #1f2a2c;
	--llgq-q-c-hover: #1f2a2c;
	--llgq-q-c-open: #1f2a2c;
	--llgq-a-pad: 4px 80px 24px 30px;
	--llgq-a-c: #4c5f63;
	--llgq-a-link: #186871;
	--llgq-ic: 36px;
	--llgq-ic-bw: 1px;
	--llgq-ic-bc: rgba(79, 197, 206, 0.45);
	--llgq-ic-bg1: rgba(255, 255, 255, 0.7);
	--llgq-ic-bg2: rgba(148, 214, 220, 0.22);
	--llgq-ic-bg1-open: rgba(255, 255, 255, 0.7);
	--llgq-ic-bg2-open: rgba(148, 214, 220, 0.22);
	--llgq-ar: 8px;
	--llgq-ar-w: 1.5px;
	--llgq-ar-c: #186871;
	--llgq-speed: 0.4s;
	--llgq-glow-c: #4fc5ce;
	--llgq-glow-size: 260px;
	--llgq-glow-blur: 15px;
	--llgq-glow-op: 0.32;
	--llgq-b1c: #d6eaec;
	--llgq-b1p: 92% 8%;
	--llgq-b2c: #f2e8dc;
	--llgq-b2p: 2% 100%;
	--llgq-bs: 600px;
	background: var(--llgq-sec-bg);
}

/* ---------- Szekció ---------- */
html body .llgq-root {
	position: relative !important;
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	min-height: var(--llgq-sec-minh);
	box-sizing: border-box !important;
	padding: var(--llgq-sec-pad) !important;
	margin: var(--llgq-sec-margin) !important;
	border-radius: var(--llgq-sec-radius);
	overflow: hidden;
	float: none !important;
}

html body .llgq-root.is-full {
	width: calc(100vw - var(--llgq-sbw, 0px)) !important;
	max-width: none !important;
	margin-left: calc(50% - 50vw + var(--llgq-sbw, 0px) / 2) !important;
	margin-right: calc(50% - 50vw + var(--llgq-sbw, 0px) / 2) !important;
}

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

html body .llgq-root .llgq-bg {
	position: absolute !important;
	inset: 0;
	pointer-events: none;
	z-index: 0;
	background-image:
		radial-gradient(var(--llgq-bs) calc(var(--llgq-bs) * 0.6) at var(--llgq-b1p), var(--llgq-b1c) 0%, transparent 62%),
		radial-gradient(calc(var(--llgq-bs) * 0.83) calc(var(--llgq-bs) * 0.53) at var(--llgq-b2p), var(--llgq-b2c) 0%, transparent 64%);
}

html body .llgq-root.no-blobs .llgq-bg { display: none !important; }

html body .llgq-root .llgq-inner {
	position: relative !important;
	z-index: 1;
	display: flex !important;
	flex-direction: column !important;
	width: 100% !important;
	max-width: var(--llgq-wrap) !important;
	margin: 0 auto !important;
	padding: 0 !important;
}

html body .llgq-root .llgq-block {
	display: flex !important;
	flex-direction: column !important;
	gap: var(--llgq-head-gap);
	width: 100% !important;
	max-width: var(--llgq-block-max) !important;
	min-width: 0;
	align-self: var(--llgq-block-align) !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* ---------- Fejléc ---------- */
html body .llgq-root .llgq-head {
	display: flex !important;
	flex-direction: column !important;
	align-items: var(--llgq-head-align) !important;
	gap: var(--llgq-head-inner-gap);
	width: 100%;
	max-width: var(--llgq-head-max);
	align-self: var(--llgq-head-align);
	text-align: var(--llgq-head-ta) !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Alap tipográfia: erősebb a témánál (0,2,2), gyengébb az Elementor vezérlőknél (0,3,0). */
html body .llgq-root .llgq-kicker {
	font-family: "Jost", system-ui, sans-serif;
	font-size: 10.5px;
	font-weight: 400;
	font-style: normal;
	letter-spacing: 3.6px;
	text-transform: uppercase;
	line-height: 1.4;
}

html body .llgq-root .llgq-title {
	font-family: "Cormorant Garamond", Georgia, serif;
	font-weight: 400;
	font-style: normal;
	font-size: 46px;
	letter-spacing: 0;
	text-transform: none;
	line-height: 1.12;
}

html body .llgq-root .llgq-intro {
	font-family: "Jost", system-ui, sans-serif;
	font-size: 15.5px;
	font-weight: 400;
	letter-spacing: 0;
	text-transform: none;
	line-height: 1.85;
}

@media (max-width: 1024px) { html body .llgq-root .llgq-title { font-size: 40px; } }
@media (max-width: 767px) {
	html body .llgq-root .llgq-title { font-size: 32px; }
	html body .llgq-root .llgq-q-text { font-size: 19px; }
	html body .llgq-root .llgq-intro,
	html body .llgq-root .llgq-a-inner { font-size: 15px; }
}

html body .llgq-root .llgq-kicker,
html body .llgq-root .llgq-title,
html body .llgq-root .llgq-intro {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	max-width: 100%;
	border: 0 !important;
	background: none !important;
	text-shadow: none !important;
	overflow-wrap: break-word;
	text-wrap: pretty;
}

html body .llgq-root .llgq-kicker { color: var(--llgq-kicker-c) !important; }
html body .llgq-root .llgq-title { color: var(--llgq-title-c) !important; }
html body .llgq-root .llgq-intro { color: var(--llgq-intro-c) !important; }

html body .llgq-root .llgq-title::before,
html body .llgq-root .llgq-title::after { content: none !important; display: none !important; }

/* ---------- Lista ---------- */
html body .llgq-root .llgq-list {
	display: flex !important;
	flex-direction: column !important;
	gap: var(--llgq-gap);
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

html body .llgq-root .llgq-item {
	position: relative !important;
	display: block !important;
	width: 100% !important;
	min-width: 0;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
	overflow: hidden !important;
	isolation: isolate;
	border-radius: var(--llgq-r) !important;
	border: var(--llgq-bw) solid var(--llgq-bc) !important;
	background: linear-gradient(180deg, var(--llgq-g1), var(--llgq-g2)) !important;
	-webkit-backdrop-filter: blur(var(--llgq-blur)) saturate(var(--llgq-sat));
	backdrop-filter: blur(var(--llgq-blur)) saturate(var(--llgq-sat));
	box-shadow: var(--llgq-shadow), inset 0 1px 0 rgba(255, 255, 255, 0.95);
	transition: border-radius var(--llgq-speed) ease, border-color 0.3s ease;
}

html body .llgq-root.no-glass .llgq-item {
	-webkit-backdrop-filter: none;
	backdrop-filter: none;
}

html body .llgq-root .llgq-item::before,
html body .llgq-root .llgq-item::after { content: none !important; display: none !important; }

html body .llgq-root .llgq-item:hover { border-color: var(--llgq-bc-hover) !important; }

html body .llgq-root .llgq-item.is-open {
	border-radius: var(--llgq-r-open) !important;
	border-color: var(--llgq-bc-open) !important;
}

html body .llgq-root .llgq-item.is-open:hover { border-color: var(--llgq-bc-hover) !important; }

/* Kurzorfény */
html body .llgq-root .llgq-glow {
	position: absolute !important;
	top: 0;
	left: 0;
	z-index: 0;
	width: var(--llgq-glow-size);
	height: var(--llgq-glow-size);
	margin: calc(var(--llgq-glow-size) / -2) 0 0 calc(var(--llgq-glow-size) / -2) !important;
	padding: 0 !important;
	border-radius: 50%;
	background: radial-gradient(circle, var(--llgq-glow-c) 0%, transparent 70%);
	filter: blur(var(--llgq-glow-blur));
	opacity: calc(var(--go, 0) * var(--llgq-glow-op));
	transform: translate3d(var(--gx, -9999px), var(--gy, 0px), 0);
	transition: opacity 0.3s ease;
	pointer-events: none;
	will-change: transform, opacity;
}

/* ---------- Kérdés gomb (teljes téma-reset) ---------- */
html body .llgq-root .llgq-q,
html body .llgq-root .llgq-q:hover,
html body .llgq-root .llgq-q:focus,
html body .llgq-root .llgq-q:active {
	position: relative !important;
	z-index: 1;
	-webkit-appearance: none !important;
	appearance: none !important;
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	flex-wrap: nowrap !important;
	gap: var(--llgq-q-gap) !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: var(--llgq-q-pad) !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	text-align: left !important;
	text-decoration: none !important;
	text-transform: none !important;
	letter-spacing: normal !important;
	white-space: normal !important;
	line-height: 1.2 !important;
	color: var(--llgq-q-c) !important;
	cursor: pointer !important;
	outline: none;
	transform: none !important;
}

html body .llgq-root .llgq-q:focus-visible {
	outline: 2px solid var(--llgq-glow-c) !important;
	outline-offset: -3px !important;
}

html body .llgq-root .llgq-q-text {
	font-family: "Cormorant Garamond", Georgia, serif;
	font-weight: 400;
	font-style: normal;
	font-size: 22px;
	letter-spacing: 0;
	text-transform: none;
	line-height: 1.3;
}

html body .llgq-root .llgq-q-text {
	display: block !important;
	flex: 1 1 auto !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	white-space: normal !important;
	overflow-wrap: break-word;
	word-break: normal;
	-webkit-hyphens: manual;
	hyphens: manual;
	text-wrap: pretty;
	color: var(--llgq-q-c) !important;
	transition: color 0.25s ease;
}

html body .llgq-root .llgq-item:hover .llgq-q-text { color: var(--llgq-q-c-hover) !important; }
html body .llgq-root .llgq-item.is-open .llgq-q-text { color: var(--llgq-q-c-open) !important; }

/* ---------- Ikon ---------- */
html body .llgq-root .llgq-icon {
	position: relative !important;
	flex: 0 0 auto !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: var(--llgq-ic) !important;
	height: var(--llgq-ic) !important;
	min-width: var(--llgq-ic) !important;
	margin: 0 !important;
	padding: 0 !important;
	border-radius: 999px !important;
	border: var(--llgq-ic-bw) solid var(--llgq-ic-bc) !important;
	background: linear-gradient(180deg, var(--llgq-ic-bg1), var(--llgq-ic-bg2)) !important;
	transition: background 0.3s ease;
}

html body .llgq-root .llgq-item.is-open .llgq-icon {
	background: linear-gradient(180deg, var(--llgq-ic-bg1-open), var(--llgq-ic-bg2-open)) !important;
}

html body .llgq-root .llgq-chev {
	display: block !important;
	width: var(--llgq-ar) !important;
	height: var(--llgq-ar) !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-right: var(--llgq-ar-w) solid var(--llgq-ar-c) !important;
	border-bottom: var(--llgq-ar-w) solid var(--llgq-ar-c) !important;
	background: none !important;
	transform: translateY(-25%) rotate(45deg);
	transition: transform var(--llgq-speed) cubic-bezier(0.22, 1, 0.36, 1);
}

html body .llgq-root .llgq-item.is-open .llgq-chev { transform: translateY(25%) rotate(-135deg); }

html body .llgq-root .llgq-plus {
	position: relative !important;
	display: block !important;
	width: calc(var(--llgq-ar) * 1.7) !important;
	height: calc(var(--llgq-ar) * 1.7) !important;
	margin: 0 !important;
	padding: 0 !important;
}

html body .llgq-root .llgq-plus::before,
html body .llgq-root .llgq-plus::after {
	content: "" !important;
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	height: var(--llgq-ar-w);
	margin-top: calc(var(--llgq-ar-w) / -2);
	border-radius: 2px;
	background: var(--llgq-ar-c);
	transition: transform var(--llgq-speed) cubic-bezier(0.22, 1, 0.36, 1);
}

html body .llgq-root .llgq-plus::after { transform: rotate(90deg); }
html body .llgq-root .llgq-item.is-open .llgq-plus::after { transform: rotate(0deg); }

html body .llgq-root.icon-none .llgq-icon { display: none !important; }
html body .llgq-root.icon-plus .llgq-chev,
html body .llgq-root.icon-chevron .llgq-plus { display: none !important; }

/* ---------- Válasz ---------- */
/* Zárt állapot: magasság 0. A JS a pontos magasságra animál, majd 'auto'-ra áll.
   JS nélkül (vagy amíg betölt) a nyitott elemek is láthatók maradnak. */
html body .llgq-root .llgq-a {
	position: relative !important;
	z-index: 1;
	display: block !important;
	height: 0;
	max-height: none !important;
	min-height: 0 !important;
	overflow: hidden !important;
	margin: 0 !important;
	padding: 0 !important;
	transition: height var(--llgq-speed) cubic-bezier(0.22, 1, 0.36, 1);
}

html body .llgq-root:not(.llgq-ready) .llgq-item.is-open .llgq-a { height: auto; }

html body .llgq-root .llgq-a-clip {
	display: block !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	opacity: 0;
	transform: translateY(-4px);
	transition: opacity var(--llgq-speed) ease, transform var(--llgq-speed) ease;
}

html body .llgq-root .llgq-item.is-open .llgq-a-clip { opacity: 1; transform: none; }

/* Mobilon a hosszú kérdés több sorba tör — a zárt sáv ilyenkor is szépen kerek marad */
@media (max-width: 767px) {
	html body .llgq-root .llgq-item { border-radius: min(var(--llgq-r), 34px) !important; }
	html body .llgq-root .llgq-item.is-open { border-radius: min(var(--llgq-r-open), 26px) !important; }
	html body .llgq-root .llgq-q { align-items: center !important; }
	html body .llgq-root .llgq-a-inner { overflow-wrap: anywhere; }
}

html body .llgq-root .llgq-a-inner {
	font-family: "Jost", system-ui, sans-serif;
	font-weight: 400;
	font-size: 15.5px;
	letter-spacing: 0;
	text-transform: none;
	line-height: 1.9;
}

html body .llgq-root .llgq-a-inner {
	display: block !important;
	margin: 0 !important;
	padding: var(--llgq-a-pad) !important;
	color: var(--llgq-a-c) !important;
	overflow-wrap: break-word;
	text-wrap: pretty;
}

html body .llgq-root .llgq-a-inner p,
html body .llgq-root .llgq-a-inner li {
	font-family: inherit !important;
	font-size: inherit !important;
	line-height: inherit !important;
	letter-spacing: inherit !important;
	color: inherit !important;
}

html body .llgq-root .llgq-a-inner p { margin: 0 0 0.8em !important; padding: 0 !important; }
html body .llgq-root .llgq-a-inner ul,
html body .llgq-root .llgq-a-inner ol { margin: 0 0 0.8em 1.2em !important; padding: 0 !important; }
html body .llgq-root .llgq-a-inner > :last-child { margin-bottom: 0 !important; }
html body .llgq-root .llgq-a-inner a { color: var(--llgq-a-link) !important; text-decoration: underline; text-underline-offset: 3px; }

@media (prefers-reduced-motion: reduce) {
	html body .llgq-root .llgq-a,
	html body .llgq-root .llgq-a-clip,
	html body .llgq-root .llgq-item,
	html body .llgq-root .llgq-chev,
	html body .llgq-root .llgq-glow { transition: none !important; }
}
