/*
Theme Name: Blocksy Child
Template: blocksy
Description: Legends Gym – fitness centrum Pezinok (legends-gym.sk)
Version: 1.0.2
*/

/* =========================================================================
   LEGENDS GYM – dizajnový systém „Old School Iron“ (prefix lg-)
   - čierna oceľ + žltá z loga, výstražná páska, kotúč činky, zberateľské karty
   - iba vlastné triedy; písmo a veľkosti nadpisov určuje téma (Blocksy)
   - šírka obsahu = kontajner Blocksy; pozadie sekcie na celú šírku bez 100vw
   - tmavá sekcia = .lg-dark, žltá = .lg-yellow (iba prepínajú tokeny)
   ========================================================================= */

/* ---------- 1. TOKENY ---------- */
:root {
	--lg-y: #F3E739;         /* žltá z loga */
	--lg-gold: #E7B913;
	--lg-or: #FF6310;        /* oranžový akcent (iba na tmavom) */
	--lg-ink: #111111;
	--lg-ink-2: #1B1B1B;
	--lg-ink-3: #262626;
	--lg-bone: #F4F1E8;      /* svetlé „kriedové“ pozadie */
	--lg-r: 6px;
	--lg-r-lg: 12px;
	--lg-gap: clamp(16px, 2vw, 24px);
	--lg-pad: clamp(64px, 8vw, 112px);
	--lg-max: 1290px;
	--lg-ease: cubic-bezier(.3, 1.4, .5, 1);
	--lg-tape: repeating-linear-gradient(-45deg, var(--lg-y) 0 12px, var(--lg-ink) 12px 24px);
	/* ikony (jediný výskyt) */
	--lg-i-tel: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><path d='M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.1.9.4 1.8.7 2.7a2 2 0 0 1-.5 2.1L8 9.8a16 16 0 0 0 6 6l1.3-1.3a2 2 0 0 1 2.1-.4c.9.3 1.8.6 2.7.7a2 2 0 0 1 1.7 2z'/></svg>");
	--lg-i-mail: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><rect x='2.5' y='4.5' width='19' height='15' rx='2'/><path d='m3 6 9 7 9-7'/></svg>");
	--lg-i-trener: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'><path d='M6.5 6v12M17.5 6v12M3 9v6M21 9v6M6.5 12h11'/></svg>");
	--lg-i-klima: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M12 2v20M3.3 7l17.4 10M3.3 17 20.7 7M9 4l3 2 3-2M9 20l3-2 3 2'/></svg>");
	--lg-i-sprcha: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M5 21V9a5 5 0 0 1 10 0'/><path d='M11 9h8'/><path d='M13 13v1M16 13v1M19 13v1M14.5 17v1M17.5 17v1'/></svg>");
	--lg-i-rada: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M21 14a2 2 0 0 1-2 2H8l-5 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z'/><path d='M8 9h8M8 12h5'/></svg>");
}

.lg-sec, .lg-dark, .lg-yellow {
	--lg-bg: #fff;
	--lg-fg: #4A4740;
	--lg-h: var(--lg-ink);
	--lg-acc: var(--lg-ink);       /* činka v zoznamoch */
	--lg-card: #fff;
	--lg-line: #E4DFD2;
	--lg-link: #7A5C00;
}
.lg-sec--bone { --lg-bg: var(--lg-bone); }
.lg-dark {
	--lg-bg: var(--lg-ink);
	--lg-fg: #B9B5AA;
	--lg-h: #fff;
	--lg-acc: var(--lg-y);
	--lg-card: var(--lg-ink-2);
	--lg-line: #2E2E2E;
	--lg-link: var(--lg-y);
}
.lg-yellow {
	--lg-bg: var(--lg-y);
	--lg-fg: #2B2A20;
	--lg-h: var(--lg-ink);
	--lg-acc: var(--lg-ink);
	--lg-line: rgba(17, 17, 17, .18);
	--lg-link: var(--lg-ink);
}

/* ---------- 2. ZÁKLAD SEKCIE ---------- */
.lg-sec {
	position: relative;
	padding-block: var(--lg-pad);
	color: var(--lg-fg);
	border-image: conic-gradient(var(--lg-bg) 0 0) fill 0 // 0 100vw;
}
/* Gutenberg: zruší medzery a obmedzenie šírky, ktoré editor dáva blokom (funguje aj v Elementore) */
.lg-sec.lg-sec { max-width: none; margin-block: 0; }
.lg-in {
	width: var(--theme-container-width, calc(100% - 2 * clamp(16px, 4vw, 40px)));
	max-width: var(--theme-normal-container-max-width, var(--lg-max));
	margin-inline: auto;
}
.lg-sec :where(h1, h2, h3) { margin: 0; color: var(--lg-h); }
.lg-sec :where(p, ul, figure) { margin: 0; }
.lg-sec :where(ul) { padding: 0; list-style: none; }
.lg-sec :where(img) { display: block; max-width: 100%; height: auto; }
.lg-sec :where(strong) { color: var(--lg-h); }
.lg-sec p a:not([class]) { color: var(--lg-link); text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 3px; }
.lg-flow > * + * { margin-top: 1.1em; }
.lg-strong { color: var(--lg-h); font-weight: 600; }

.lg-head { display: grid; justify-items: center; gap: 18px; max-width: 820px; margin: 0 auto clamp(36px, 5vw, 56px); text-align: center; }
/* nadpis sekcie podčiarknutý výstražnou páskou */
.lg-head > h2::after { content: ""; display: block; width: 120px; height: 8px; margin: 18px auto 0; border-radius: 2px; background: var(--lg-tape); }
.lg-eyebrow { display: inline-flex; align-items: center; gap: 12px; padding: 8px 18px; border: 2px solid var(--lg-ink); border-radius: 999px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; font-size: .85em; color: var(--lg-ink); box-shadow: 4px 4px 0 var(--lg-y); }

/* ---------- 3. TLAČIDLÁ – „old school“ posunutý tieň ---------- */
.lg-actions { display: flex; flex-wrap: wrap; gap: 14px 18px; }
.lg-btn {
	--lg-sh: var(--lg-ink);
	display: inline-flex;
	align-items: center;
	gap: 10px;
	min-height: 52px;
	padding: 0 26px;
	border: 2px solid var(--lg-ink);
	border-radius: var(--lg-r);
	background: var(--lg-y);
	box-shadow: 5px 5px 0 var(--lg-sh);
	color: var(--lg-ink);
	font-weight: 800;
	letter-spacing: .02em;
	text-decoration: none;
	transition: transform .25s var(--lg-ease), box-shadow .25s var(--lg-ease), background .25s;
}
.lg-btn::before { content: ""; flex: none; width: 18px; height: 18px; background: currentColor; -webkit-mask: var(--lg-i-tel) center / contain no-repeat; mask: var(--lg-i-tel) center / contain no-repeat; }
.lg-btn--mail::before { -webkit-mask-image: var(--lg-i-mail); mask-image: var(--lg-i-mail); }
.lg-btn:hover, .lg-btn:focus-visible { transform: translate(-3px, -3px); box-shadow: 8px 8px 0 var(--lg-sh); color: var(--lg-ink); outline: 0; }
.lg-btn:hover::before { animation: lg-ring .6s ease-in-out; }
.lg-btn:active { transform: translate(3px, 3px); box-shadow: 0 0 0 var(--lg-sh); }
.lg-btn--ghost { background: transparent; color: var(--lg-h); }
.lg-dark .lg-btn { --lg-sh: var(--lg-or); border-color: var(--lg-y); }
.lg-dark .lg-btn--ghost { border-color: #fff; }
.lg-yellow .lg-btn { --lg-sh: #fff; background: var(--lg-ink); color: var(--lg-y); }
.lg-yellow .lg-btn:hover { color: var(--lg-y); }
.lg-yellow .lg-btn--ghost { background: transparent; color: var(--lg-ink); }
.lg-yellow .lg-btn--ghost:hover { color: var(--lg-ink); }

/* ---------- 4. ZOZNAMY – odrážka v tvare činky ---------- */
:where(.lg-ticks, .lg-board ul, .lg-tags) li { position: relative; padding-left: 34px; }
:where(.lg-ticks, .lg-board ul, .lg-tags) li::before {
	content: "";
	position: absolute;
	left: 0;
	top: .45em;
	width: 22px;
	height: 12px;
	background:
		linear-gradient(var(--lg-acc) 0 0) center / 100% 2px no-repeat,
		linear-gradient(var(--lg-acc) 0 0) 3px center / 4px 12px no-repeat,
		linear-gradient(var(--lg-acc) 0 0) calc(100% - 3px) center / 4px 12px no-repeat,
		linear-gradient(var(--lg-acc) 0 0) 0 center / 3px 8px no-repeat,
		linear-gradient(var(--lg-acc) 0 0) 100% center / 3px 8px no-repeat;
}
.lg-ticks { display: grid; gap: 10px; }
.lg-ticks li { color: var(--lg-h); }

/* ---------- 5. HERO ---------- */
.lg-hero {
	/* na celú výšku okna; obsah začína pod transparentnou hlavičkou Blocksy */
	display: grid;
	align-items: center;
	box-sizing: border-box;
	min-height: 100vh;
	min-height: 100svh;
	padding-block: calc(var(--header-height, 100px) + clamp(24px, 4vw, 56px)) clamp(56px, 7vw, 96px);
	overflow: clip;
}
/* šípka „scroll“ na spodku hera */
.lg-hero::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: clamp(18px, 3vh, 32px);
	width: 18px;
	height: 18px;
	margin-left: -9px;
	border: solid var(--lg-y);
	border-width: 0 3px 3px 0;
	transform: rotate(45deg);
	animation: lg-hint 1.8s ease-in-out infinite;
	pointer-events: none;
}
.lg-hero__g { display: grid; grid-template-columns: 1.05fr .95fr; align-items: center; gap: clamp(36px, 6vw, 88px); }
.lg-hero .lg-lead { max-width: 60ch; }
.lg-hero .lg-actions { margin-top: 1.6em; }
/* zvýraznenie ako fixka – prebehne raz po načítaní */
.lg-hl {
	color: var(--lg-y);
	background: linear-gradient(var(--lg-or) 0 0) left 92% / 0 .14em no-repeat;
	animation: lg-mark 1.1s .4s cubic-bezier(.6, 0, .2, 1) forwards;
}
/* fotka v rámiku z pásky, posunutá „ťažká“ doska */
.lg-hero__img { position: relative; isolation: isolate; }
.lg-hero__img::before { content: ""; position: absolute; inset: 22px -22px -22px 22px; z-index: -1; border-radius: var(--lg-r-lg); background: var(--lg-tape); }
.lg-hero__img img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border: 3px solid var(--lg-y); border-radius: var(--lg-r-lg); }
/* žiara reflektora v pozadí */
.lg-hero__g::before { content: ""; position: absolute; top: -20%; right: -10%; z-index: 0; width: 70%; aspect-ratio: 1; border-radius: 50%; background: radial-gradient(closest-side, rgba(243, 231, 57, .16), transparent); pointer-events: none; }
.lg-hero__g > * { position: relative; z-index: 1; }

/* ---------- 6. INFO TABULE ---------- */
.lg-boards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--lg-gap); }
.lg-board {
	position: relative;
	display: grid;
	align-content: start;
	gap: 16px;
	padding: 30px 28px 28px;
	border: 2px solid var(--lg-ink);
	border-radius: var(--lg-r-lg);
	background: #fff;
	box-shadow: 6px 6px 0 var(--lg-ink);
	transition: transform .3s var(--lg-ease), box-shadow .3s var(--lg-ease);
}
/* „pripináčik“ – skrutka na tabuli */
.lg-board::before { content: ""; position: absolute; top: 12px; right: 12px; width: 12px; height: 12px; border-radius: 50%; background: radial-gradient(circle at 35% 35%, #fff 0 15%, #9A968C 40%, #4A4740 100%); }
.lg-board:hover { transform: translate(-3px, -3px) rotate(-.6deg); box-shadow: 9px 9px 0 var(--lg-y), 9px 9px 0 2px var(--lg-ink); }
.lg-board__t { padding-bottom: 14px; border-bottom: 2px dashed var(--lg-line); font-weight: 800; color: var(--lg-ink); }
.lg-board ul { display: grid; gap: 10px; }
.lg-board li strong { display: block; }
.lg-duo { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--lg-gap); margin-top: clamp(28px, 4vw, 48px); }
.lg-pic img { width: 100%; height: 100%; aspect-ratio: 16 / 9; object-fit: cover; border-radius: var(--lg-r-lg); }

/* ---------- 7. VIDEO – náhľad bez iframu, prehrá sa v lightboxe ---------- */
.lg-vid { position: relative; display: block; overflow: hidden; isolation: isolate; border-radius: var(--lg-r-lg); background: var(--lg-ink); }
.lg-vid img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; filter: grayscale(.5) brightness(.75); transition: transform .7s cubic-bezier(.2, .7, .2, 1), filter .5s; }
.lg-vid::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 10px; background: var(--lg-tape); }
/* tlačidlo prehrať = kotúč činky */
.lg-vid::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 2;
	width: 84px;
	height: 84px;
	margin: -42px 0 0 -42px;
	border-radius: 50%;
	background:
		conic-gradient(from 240deg at 80% 50%, var(--lg-ink) 0 60deg, transparent 0) 54% 50% / 30px 30px no-repeat,
		radial-gradient(circle, var(--lg-y) 0 56%, var(--lg-ink) 57% 61%, var(--lg-gold) 62% 100%);
	box-shadow: 0 0 0 0 rgba(243, 231, 57, .5), 0 18px 40px -12px rgba(0, 0, 0, .8);
	transition: transform .4s var(--lg-ease);
	animation: lg-pulse 2.4s ease-out infinite;
}
.lg-vid:hover img, .lg-vid:focus-visible img { transform: scale(1.06); filter: none; }
.lg-vid:hover::before, .lg-vid:focus-visible::before { transform: scale(1.12) rotate(90deg); }
.lg-vid:focus-visible { outline: 3px solid var(--lg-y); outline-offset: 3px; }

/* ---------- 8. PRÍBEH ---------- */
.lg-split { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: clamp(36px, 6vw, 80px); }

/* ---------- 9. ČLENSTVO – žltá sekcia s kotúčom ---------- */
.lg-yellow::before, .lg-yellow::after { content: ""; position: absolute; left: 0; right: 0; height: 14px; border-image: var(--lg-tape) fill 0 // 0 100vw; }
.lg-yellow::before { top: 0; }
.lg-yellow::after { bottom: 0; }
.lg-deal { display: grid; grid-template-columns: .9fr 1.1fr; align-items: center; gap: clamp(36px, 6vw, 88px); }
/* kotúč činky 50 € – rebrovaný okraj sa pomaly otáča */
.lg-plate {
	position: relative;
	display: grid;
	place-content: center;
	justify-self: center;
	gap: 4px;
	width: min(400px, 100%);
	aspect-ratio: 1;
	border-radius: 50%;
	overflow: hidden; /* otáčaný okraj nesmie zväčšiť stránku */
	background: radial-gradient(circle, #2A2A2A 0 30%, var(--lg-ink) 30.5% 33%, #1F1F1F 33.5% 80%, #0A0A0A 80.5% 100%);
	box-shadow: inset 0 0 0 10px #000, 0 40px 70px -30px rgba(0, 0, 0, .7);
	text-align: center;
	color: var(--lg-y);
}
.lg-plate::before { content: ""; position: absolute; inset: 0; border-radius: 50%; background: repeating-conic-gradient(#000 0 4deg, #333 4deg 8deg); -webkit-mask: radial-gradient(closest-side, transparent 87%, #000 88%); mask: radial-gradient(closest-side, transparent 87%, #000 88%); animation: lg-spin 40s linear infinite; }
.lg-plate span { position: relative; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; font-size: .85em; color: #E9E5D8; }
.lg-plate strong { position: relative; font-size: 4.6em; font-weight: 900; line-height: 1; color: var(--lg-y); text-shadow: 0 4px 0 #000; }
.lg-deal .lg-ticks { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 24px; }
.lg-prices { display: flex; flex-wrap: wrap; gap: 12px; }
.lg-prices li { padding: 10px 18px; border-radius: var(--lg-r); background: var(--lg-ink); color: #fff; font-weight: 700; }
.lg-deal .lg-actions { margin-top: 1.6em; }

/* ---------- 10. PREČO ---------- */
.lg-callout li { padding: 18px 22px; border-left: 6px solid var(--lg-y); border-radius: 0 var(--lg-r) var(--lg-r) 0; background: var(--lg-ink-2); color: #fff; font-weight: 600; text-align: left; }
.lg-tags { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; margin-bottom: clamp(28px, 4vw, 48px); }
.lg-tags li { padding: 14px 16px 14px 48px; border: 1px solid var(--lg-line); border-radius: var(--lg-r); background: var(--lg-ink-2); color: #fff; font-weight: 600; transition: border-color .3s, transform .3s var(--lg-ease); }
.lg-tags li::before { left: 16px; top: calc(50% - 6px); }
.lg-tags li:hover { border-color: var(--lg-y); transform: translateY(-3px); }
.lg-feats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--lg-gap); }
.lg-feat { position: relative; display: grid; align-content: start; gap: 14px; padding: 30px 26px; overflow: hidden; border: 1px solid var(--lg-line); border-radius: var(--lg-r-lg); background: var(--lg-ink-2); transition: transform .35s var(--lg-ease), border-color .35s; }
.lg-feat::after { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 6px; background: var(--lg-tape); transform: scaleX(0); transform-origin: left; transition: transform .45s var(--lg-ease); }
.lg-feat:hover { transform: translateY(-6px); border-color: #3A3A3A; }
.lg-feat:hover::after { transform: none; }
.lg-ic { display: grid; place-items: center; width: 58px; height: 58px; border-radius: var(--lg-r); background: var(--lg-y); box-shadow: 4px 4px 0 var(--lg-or); }
.lg-ic::before { content: ""; width: 28px; height: 28px; background: var(--lg-ink); -webkit-mask: var(--lg-i) center / contain no-repeat; mask: var(--lg-i) center / contain no-repeat; }
.lg-ic--trener { --lg-i: var(--lg-i-trener); }
.lg-ic--klima { --lg-i: var(--lg-i-klima); }
.lg-ic--sprcha { --lg-i: var(--lg-i-sprcha); }
.lg-ic--rada { --lg-i: var(--lg-i-rada); }
.lg-feat:hover .lg-ic::before { animation: lg-lift .6s var(--lg-ease); }

/* ---------- 11. TRÉNERI – zberateľské karty, fotka striedavo vľavo / vpravo ---------- */
.lg-team { display: grid; gap: clamp(24px, 3vw, 40px); counter-reset: lg-t; }
.lg-card { position: relative; display: grid; grid-template-columns: minmax(240px, 400px) minmax(0, 1fr); overflow: hidden; border: 2px solid var(--lg-ink); border-radius: var(--lg-r-lg); background: #fff; box-shadow: 6px 6px 0 var(--lg-ink); counter-increment: lg-t; transition: transform .35s var(--lg-ease), box-shadow .35s var(--lg-ease); }
.lg-card:nth-child(even) { grid-template-columns: minmax(0, 1fr) minmax(240px, 400px); }
.lg-card:nth-child(even) .lg-card__img { order: 2; }
.lg-card:hover { transform: translate(-3px, -3px); box-shadow: 10px 10px 0 var(--lg-y), 10px 10px 0 2px var(--lg-ink); }
.lg-card__img { position: relative; min-height: 440px; overflow: hidden; background: var(--lg-ink); }
.lg-card__img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 15%; filter: grayscale(1) contrast(1.08); transition: filter .6s, transform .8s cubic-bezier(.2, .7, .2, 1); }
.lg-card:hover .lg-card__img img { filter: none; transform: scale(1.04); }
/* číslo karty + páska po okraji fotky */
.lg-card__img::before { content: counter(lg-t, decimal-leading-zero); position: absolute; top: 18px; left: 18px; z-index: 1; padding: 6px 12px; border-radius: var(--lg-r); background: var(--lg-y); color: var(--lg-ink); font-weight: 900; letter-spacing: .06em; box-shadow: 3px 3px 0 var(--lg-ink); }
.lg-card__img::after { content: ""; position: absolute; top: 0; bottom: 0; right: 0; z-index: 1; width: 12px; background: var(--lg-tape); }
.lg-card:nth-child(even) .lg-card__img::after { right: auto; left: 0; }
.lg-card__b { display: flex; flex-direction: column; gap: 16px; padding: clamp(26px, 3.4vw, 44px); }
.lg-card__b .lg-btn { align-self: flex-start; margin-top: auto; }
.lg-card__b .lg-ticks { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 24px; }
.lg-offer { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
.lg-offer li { padding: 10px 12px; border-radius: var(--lg-r); background: var(--lg-bone); color: var(--lg-ink); font-weight: 600; }
.lg-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; border: 2px solid var(--lg-ink); border-radius: var(--lg-r); overflow: hidden; }
.lg-facts li { padding: 10px 14px; }
.lg-facts li:nth-child(n + 3) { border-top: 1px dashed var(--lg-line); }
.lg-facts li:nth-child(even) { border-left: 1px dashed var(--lg-line); }
.lg-facts strong { margin-right: 4px; }

/* ---------- 12. GALÉRIA – mozaika, čiernobiela → farba, lightbox Elementoru ---------- */
.lg-gal { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-auto-rows: clamp(140px, 14vw, 210px); grid-auto-flow: dense; gap: 12px; }
.lg-gal figure { position: relative; overflow: hidden; border-radius: var(--lg-r); background: var(--lg-ink-2); }
.lg-gal figure:nth-child(8n + 1) { grid-column: span 2; grid-row: span 2; }
.lg-gal figure:nth-child(8n + 6) { grid-column: span 2; }
.lg-gal a { display: block; height: 100%; cursor: zoom-in; }
.lg-gal img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(1) brightness(.8); transition: filter .5s, transform .8s cubic-bezier(.2, .7, .2, 1); }
.lg-gal a::after { content: ""; position: absolute; inset: 12px; border: 2px solid var(--lg-y); border-radius: 4px; opacity: 0; transform: scale(1.06); transition: opacity .35s, transform .45s var(--lg-ease); pointer-events: none; }
.lg-gal a:hover img, .lg-gal a:focus-visible img { filter: none; transform: scale(1.06); }
.lg-gal a:hover::after, .lg-gal a:focus-visible::after { opacity: 1; transform: none; }
.lg-gal a:focus-visible { outline: 0; }

/* lightbox Elementoru vo farbách webu */
html body .elementor-lightbox.elementor-lightbox { background-color: rgba(17, 17, 17, .96); --lightbox-ui-color: rgba(255, 255, 255, .8); --lightbox-ui-color-hover: var(--lg-y); --lightbox-text-color: #fff; }
html body .elementor-lightbox .elementor-lightbox-image { border-radius: var(--lg-r-lg); }

/* ---------- 13. ANIMÁCIE ---------- */
@keyframes lg-mark { to { background-size: 100% .14em; } }
@keyframes lg-spin { to { transform: rotate(360deg); } }
@keyframes lg-pulse { 0% { box-shadow: 0 0 0 0 rgba(243, 231, 57, .5), 0 18px 40px -12px rgba(0, 0, 0, .8); } 100% { box-shadow: 0 0 0 26px rgba(243, 231, 57, 0), 0 18px 40px -12px rgba(0, 0, 0, .8); } }
@keyframes lg-ring { 0%, 100% { transform: rotate(0); } 25% { transform: rotate(-14deg); } 75% { transform: rotate(14deg); } }
@keyframes lg-lift { 50% { transform: translateY(-5px) scale(1.08); } }
@keyframes lg-hint { 0%, 100% { transform: translateY(0) rotate(45deg); opacity: .4; } 50% { transform: translateY(8px) rotate(45deg); opacity: 1; } }

/* dotyk – farebné fotky, bez hoveru */
@media (hover: none) {
	.lg-card__img img, .lg-gal img { filter: none; }
}

/* ---------- 14. RESPONZÍVNE ---------- */
@media (max-width: 1024px), (max-height: 640px) {
	.lg-hero::after { display: none; }
}
@media (max-width: 1024px) {
	.lg-hero__g, .lg-split, .lg-deal { grid-template-columns: 1fr; }
	.lg-hero__img { max-width: 640px; margin-right: 22px; }
	.lg-boards { grid-template-columns: 1fr; }
	.lg-tags { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.lg-feats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.lg-card, .lg-card:nth-child(even) { grid-template-columns: minmax(200px, 300px) minmax(0, 1fr); }
	.lg-card:nth-child(even) .lg-card__img { order: 0; }
	.lg-card:nth-child(even) .lg-card__img::after { left: auto; right: 0; }
	.lg-offer { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.lg-plate { width: min(320px, 100%); }
}
@media (max-width: 767px) {
	.lg-duo, .lg-feats, .lg-deal .lg-ticks, .lg-card__b .lg-ticks, .lg-facts { grid-template-columns: 1fr; }
	.lg-card, .lg-card:nth-child(even) { grid-template-columns: 1fr; }
	.lg-card__img { min-height: 0; aspect-ratio: 4 / 5; }
	.lg-card__img::after, .lg-card:nth-child(even) .lg-card__img::after { top: auto; left: 0; right: 0; width: auto; height: 12px; }
	.lg-facts li:nth-child(even) { border-left: 0; }
	.lg-facts li + li { border-top: 1px dashed var(--lg-line); }
	.lg-gal { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: 150px; gap: 8px; }
	.lg-gal figure:nth-child(8n + 6) { grid-column: auto; }
	.lg-tags li { padding: 12px 12px 12px 44px; }
	.lg-tags li::before { left: 12px; }
	.lg-plate strong { font-size: 3.8em; }
	.lg-actions .lg-btn { flex: 1 1 100%; justify-content: center; }
}
@media (prefers-reduced-motion: reduce) {
	.lg-sec *, .lg-sec *::before, .lg-sec *::after { animation: none !important; transition: none !important; }
	.lg-hl { background-size: 100% .14em; }
}