/* ============================================
   tpl_web Theme: Precioza
   STK + emisie Bánovce nad Bebravou (precioza.sk)
   ============================================

   Značka je ORANŽOVÁ #ff6500 z loga a z pôvodného webu (139 výskytov v CSS
   jm-university, 2022-2026). Paleta v OKLCH z jednej farby cez
   `dizajn/nastroje/paleta.py` (4. 11. 2026), kontrasty WCAG:

   1. Sýta #ff6500 NIE je textová farba na svetlom podklade (kontrast ~2,9).
      Textové a oranžové plochy nesie tmavená #c24b00 (≥4,5 na #fef4f0).
      Na oranžovej ploche je text TMRAVÝ #210e07, nikdy biela.
   2. V tmavom režime #ff6500 čitateľná je (na #210e07 ≥4,5) → tu je primárna.
   3. Podklad svetlého režimu nie je čistá biela ale teplá #fef4f0
      (nádych značky), karty biela. Tmavý režim „dielňa“: #210e07.

   PÍSMA: Archivo (prominentný grotesk, systémový odporúčaný pre technický
   odbor) + IBM Plex Mono na údaje (hodiny, IČO, ceny). woff2 subsets
   latin+latin-ext v `media/fonts/`, lokálne kvôli GDPR. Parametre šablóny
   fontHeading/fontBody musia byť „theme“, inak ich inline :root prepíše.

  príznačné prvky: oranžový pás pod hlavičkou (moderná vzpomienka na pôvodný web),
   topbar s otváracími hodinami v Mono, hraničky tabuliek cenníka.
   ============================================ */

@font-face {
	font-family: 'Archivo';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url('../../fonts/archivo-400.woff2') format('woff2');
}
@font-face {
	font-family: 'Archivo';
	font-style: normal;
	font-weight: 600;
	font-display: swap;
	src: url('../../fonts/archivo-600.woff2') format('woff2');
}
@font-face {
	font-family: 'Archivo';
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url('../../fonts/archivo-700.woff2') format('woff2');
}
@font-face {
	font-family: 'Archivo';
	font-style: normal;
	font-weight: 800;
	font-display: swap;
	src: url('../../fonts/archivo-800.woff2') format('woff2');
}
@font-face {
	font-family: 'IBM Plex Mono';
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url('../../fonts/plexmono-500.woff2') format('woff2');
}

:root {
	/* značka a jej plochy */
	--precioza-orange: #ff6500;
	--precioza-orange-deep: #c24b00;   /* textové oranžové na svetlom, WCAG */
	--precioza-on-orange: #210e07;     /* tmavý text na sýtej oranžovej */

	--color-primary: #c24b00;          /* šablóna ho berie aj ako text/obrys → musí mať kontrast */
	--color-primary-hover: #822f00;
	--color-on-primary: #ffffff;
	--color-primary-light: #fff2ed;

	--color-link: #c24b00;
	--color-link-hover: #822f00;

	--color-accent: #210e07;
	--color-accent-hover: #3d1e10;

	--color-body-bg: #fef4f0;          /* teplá biela s nádychom značky */
	--color-surface: #ffffff;
	--color-surface-alt: #fff2ed;      /* m-50 */
	--color-text: #26160f;
	--color-text-muted: #6b5548;
	--color-heading: #1f1008;
	--color-border: #ecd9cf;

	--font-heading: 'Archivo', system-ui, -apple-system, 'Segoe UI', sans-serif;
	--font-body: 'Archivo', system-ui, -apple-system, 'Segoe UI', sans-serif;
	--font-label: 'IBM Plex Mono', ui-monospace, 'SF Mono', monospace;

	/* technický odbor: hrany striedme, nie bublinové */
	--radius-sm: 0.25rem;
	--radius-md: 0.375rem;
	--radius-lg: 0.5rem;
	--card-radius: 0.5rem;
	--card-shadow: 0 1px 2px rgba(33, 14, 7, 0.08);
	--card-shadow-hover: 0 8px 24px rgba(33, 14, 7, 0.14);

	--hero-scrim-rgb: 33 14 7;
}

[data-theme="dark"] {
	--color-primary: #ff6500;
	--color-primary-hover: #ff8533;
	--color-on-primary: #210e07;
	--color-primary-light: #33291f;

	--color-link: #ff8533;
	--color-link-hover: #ffb27d;

	--color-accent: #eff1f4;
	--color-accent-hover: #ffffff;

	--color-body-bg: #17191e;          /* asfalt */
	--color-surface: #1f2228;
	--color-surface-alt: #282c33;
	--color-text: #e3e6ea;
	--color-text-muted: #9ba3af;
	--color-heading: #f5f7f9;
	--color-border: #3a414c;

	--card-shadow: 0 2px 8px rgba(0, 0, 0, 0.35);
	--card-shadow-hover: 0 12px 24px rgba(0, 0, 0, 0.45);
}

/* ============ typografia ============ */

.theme-precioza h1,
.theme-precioza h2,
.theme-precioza h3 {
	font-family: var(--font-heading);
	font-weight: 800;
	letter-spacing: -0.015em;
	line-height: 1.12;
	text-transform: none;
}
.theme-precioza h4,
.theme-precioza h5,
.theme-precioza h6,
.theme-precioza .es-module__title {
	font-weight: 700;
	letter-spacing: -0.005em;
}

/* ============ horná lišta: oranžová páska s údajmi ============ */

.theme-precioza .es-topbar {
	background: var(--precioza-orange);
	color: var(--precioza-on-orange);
	font-family: var(--font-label);
	font-weight: 500;
	font-size: 0.82rem;
	letter-spacing: 0.01em;
}
.theme-precioza .es-topbar a {
	color: #3d1400;
	font-weight: 500;
}
[data-theme="dark"] .theme-precioza .es-topbar,
.theme-precioza [data-theme="dark"] .es-topbar {
	background: var(--precioza-orange);
	color: var(--precioza-on-orange);
}
.theme-precioza .es-topbar a:hover {
	color: #210e07;
	text-decoration: underline;
}
/* topbar: 1 riadok — vľavo linky, vpravo telefón (Róbert 7. 11.: „v 2 riadkoch") */
.theme-precioza .es-topbar .es-container {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	gap: 0.25rem 1.5rem;
}
.theme-precioza .es-topbar .mod-custom { margin: 0; }
.theme-precioza .es-topbar .mod-custom p { margin: 0; }
@media (max-width: 600px) {
	.theme-precioza .es-topbar .es-container { justify-content: center; text-align: center; }
}

/* ============ hlavička: oranžový rule pod ňou (signatúra) ============ */

.theme-precioza .es-header {
	border-bottom: 3px solid var(--precioza-orange);
}
.theme-precioza .es-header__nav a {
	font-family: var(--font-heading);
	font-weight: 600;
	letter-spacing: -0.005em;
}

/* ============ odkazy v texte ============ */

.theme-precioza .es-main a:not([class]) {
	color: var(--color-link);
	text-decoration: underline;
	text-decoration-color: color-mix(in oklab, var(--precioza-orange) 55%, transparent);
	text-decoration-thickness: 0.14em;
	text-underline-offset: 0.16em;
}
.theme-precioza .es-main a:not([class]):hover {
	text-decoration-color: currentColor;
}

/* ============ cenník a tabuľky: Mono čísla, hlavička značky ============ */

.theme-precioza .es-main table {
	border-collapse: collapse;
	width: 100%;
}
.theme-precioza .es-main thead th {
	background: var(--color-accent);
	color: var(--color-surface);
	font-family: var(--font-heading);
	font-weight: 700;
	letter-spacing: 0.01em;
}
[data-theme="dark"] .theme-precioza .es-main thead th {
	background: var(--precioza-orange);
	color: var(--precioza-on-orange);
}
.theme-precioza .es-main tbody th,
.theme-precioza .es-main td {
	font-variant-numeric: tabular-nums;
}
.theme-precioza .es-main td:last-child {
	font-family: var(--font-label);
	font-weight: 500;
	white-space: nowrap;
}
.theme-precioza .es-main tbody tr:nth-child(even) {
	background: var(--color-surface-alt);
}

/* ============ oznamový banner (niekdajšie POP UP) ============ */

.theme-precioza .es-notif,
.theme-precioza .es-banner {
	border-left: 4px solid var(--precioza-orange);
	background: var(--color-surface-alt);
}

/* ============ tlačidlá: sýta oranžová len ako plocha s tmavým textom ============ */

.theme-precioza .es-btn-primary,
.theme-precioza .btn-primary,
.theme-precioza a.btn-primary {
	background: var(--precioza-orange);
	border-color: var(--precioza-orange);
	color: var(--precioza-on-orange);
	font-weight: 700;
}
.theme-precioza .es-btn-primary:hover,
.theme-precioza .btn-primary:hover {
	background: #e65c00;
	border-color: #e65c00;
	color: var(--precioza-on-orange);
}

/* ============ modernizácia (6. 11. 2026) ============ */

/* hero úvodník: text + CTA | foto stanice */
.theme-precioza .hero-stk {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
	gap: 2.75rem;
	align-items: center;
	padding: 2.5rem 0 3rem;
}
.theme-precioza .hero-stk__text h1 {
	margin: 0 0 1.25rem;
	font-size: clamp(1.7rem, 1.15rem + 2.1vw, 2.75rem);
	line-height: 1.08;
}
.theme-precioza .hero-stk__text > p { margin: 0 0 1rem; }
.theme-precioza .hero-stk__meta {
	font-family: var(--font-label);
	font-size: 0.95rem;
	color: var(--color-text-muted);
	margin-bottom: 1.5rem;
}
.theme-precioza .hero-stk__media img {
	width: 100%;
	height: auto;
	display: block;
	border-radius: var(--card-radius);
}
.theme-precioza .hero-stk__cta { display: flex; gap: 0.75rem; flex-wrap: wrap; }
.theme-precioza .btn-cta {
	display: inline-flex;
	align-items: center;
	font-family: var(--font-heading);
	font-weight: 700;
	font-size: 0.95rem;
	letter-spacing: 0.01em;
	padding: 0.8rem 1.4rem;
	border-radius: var(--card-radius);
	background: var(--color-primary);
	color: var(--color-on-primary);
	text-decoration: none;
	transition: background-color 0.15s ease, transform 0.15s ease;
}
.theme-precioza .btn-cta:hover {
	background: var(--color-primary-hover);
	color: var(--color-on-primary);
	text-decoration: none;
	transform: translateY(-1px);
}
.theme-precioza .btn-cta--ghost {
	background: transparent;
	color: var(--color-text);
	border: 1px solid var(--color-border);
}
.theme-precioza .btn-cta--ghost:hover {
	background: var(--color-surface-alt);
	border-color: var(--color-primary);
	color: var(--color-text);
}
@media (max-width: 820px) {
	.theme-precioza .hero-stk { grid-template-columns: 1fr; gap: 1.75rem; padding: 1.5rem 0 2rem; }
	.theme-precioza .hero-stk__media { order: -1; }
}

/* tabuľky: zebra + hover */
.theme-precioza .es-main table tbody tr:nth-child(even) { background: rgba(127, 127, 127, 0.08); }
.theme-precioza .es-main table tbody tr:hover { background: rgba(127, 127, 127, 0.16); }

/* footer: kompaktná typografia */
.theme-precioza .es-footer .mod-custom p { font-size: 0.85rem; line-height: 1.5; }
.theme-precioza .es-footer .mod-custom .ft-brand {
	font-family: var(--font-label);
	font-size: 0.95rem;
	letter-spacing: 0.02em;
}
.theme-precioza .es-footer .es-container { display: flex; flex-wrap: wrap; gap: 1rem 3rem; justify-content: space-between; align-items: flex-start; }

/* ============ v2 rozloženie (referencia webportaly.sk, 7. 11. 2026) ============ */

html, body { overflow-x: hidden; }

/* hero: full-bleed foto + overlay, centrovany obsah */
.theme-precioza .pv-hero {
	position: relative;
	width: 100vw;
	margin-left: calc(50% - 50vw);
	display: flex;
	align-items: center;
	min-height: clamp(460px, 64vh, 660px);
	background-image: linear-gradient(rgba(16, 18, 22, 0.55), rgba(16, 18, 22, 0.8)), var(--pv-hero-bg);
	background-size: cover;
	background-position: center;
	padding: 4rem 1.5rem;
}
.theme-precioza .pv-hero__content { max-width: 1080px; margin: 0 auto; text-align: center; }
.theme-precioza .pv-hero h1 {
	margin: 0 0 1.25rem;
	font-size: clamp(1.6rem, 1rem + 2.2vw, 2.5rem);
	line-height: 1.1;
	color: #fff;
	text-wrap: balance;
	white-space: nowrap;
}
@media (max-width: 900px) {
	.theme-precioza .pv-hero h1 { white-space: normal; font-size: clamp(1.5rem, 3.5vw + 1rem, 2.25rem); }
}
.theme-precioza .pv-hero__desc {
	margin: 0 auto 1.25rem;
	max-width: 660px;
	color: rgba(255, 255, 255, 0.85);
	font-size: 1.05rem;
}
.theme-precioza .pv-hero__meta {
	margin: 0 0 2rem;
	font-family: var(--font-label);
	font-size: 0.95rem;
	color: rgba(255, 255, 255, 0.7);
}
.theme-precioza .pv-hero__buttons { display: flex; gap: 0.75rem; justify-content: center; flex-wrap: wrap; }
.theme-precioza .btn-cta--lg { padding: 0.95rem 1.75rem; font-size: 1rem; }
.theme-precioza .btn-cta--light {
	background: transparent;
	color: #fff;
	border: 1px solid rgba(255, 255, 255, 0.6);
}
.theme-precioza .btn-cta--light:hover {
	background: rgba(255, 255, 255, 0.14);
	border-color: #fff;
	color: #fff;
}
@media (max-width: 640px) {
	.theme-precioza .pv-hero { min-height: 0; padding: 3rem 1.25rem; }
}

/* section sluzby: centrovana hlavicka + karty */
.theme-precioza .pv-services { padding: 3.5rem 0 1rem; }
.theme-precioza .pv-services__head { text-align: center; max-width: 720px; margin: 0 auto 2.75rem; }
.theme-precioza .pv-services__head h2 { margin-bottom: 1rem; }
.theme-precioza .pv-services__head p { color: var(--color-text-muted); }
.theme-precioza .pv-services__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.25rem; }
.theme-precioza .pv-card {
	display: flex;
	flex-direction: column;
	background: var(--color-surface);
	border: 1px solid var(--color-border);
	border-radius: var(--card-radius);
	padding: 1.5rem 1.4rem;
}
.theme-precioza .pv-card h3 { font-size: 1.05rem; margin-bottom: 0.6rem; }
.theme-precioza .pv-card p { font-size: 0.92rem; color: var(--color-text-muted); margin: 0 0 1.1rem; flex: 1; }
.theme-precioza .pv-card a { font-weight: 600; }
@media (max-width: 1080px) { .theme-precioza .pv-services__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 620px) {
	.theme-precioza .pv-services { padding-top: 2.5rem; }
	.theme-precioza .pv-services__grid { grid-template-columns: 1fr; }
}

/* CTA pruh: full-bleed farba znamky */
.theme-precioza .pv-cta {
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-top: 3rem;
	background: var(--color-primary);
	color: var(--color-on-primary);
	text-align: center;
	padding: 3.5rem 1.5rem;
}
.theme-precioza .pv-cta h2 { font-size: clamp(1.5rem, 1rem + 2vw, 2.25rem); margin: 0 0 0.75rem; }
.theme-precioza .pv-cta > p { margin: 0 auto 1.9rem; max-width: 560px; opacity: 0.85; }
.theme-precioza .pv-cta__buttons { display: flex; gap: 0.75rem; justify-content: center; flex-wrap: wrap; }
.theme-precioza .pv-cta .btn-cta--dark { background: #fff; color: #14161a; }
.theme-precioza .pv-cta .btn-cta--dark:hover { background: #14161a; color: #fff; }
.theme-precioza .pv-cta .btn-cta--ghost-dark {
	background: transparent;
	color: var(--color-on-primary);
	border: 1px solid rgba(33, 14, 7, 0.45);
}
.theme-precioza .pv-cta .btn-cta--ghost-dark:hover {
	background: rgba(33, 14, 7, 0.12);
	border-color: var(--color-on-primary);
	color: var(--color-on-primary);
}

/* footer: 3 stlpce */
.theme-precioza .ft-grid { display: grid; grid-template-columns: 1.25fr 1fr 1fr; gap: 2.5rem; }
.theme-precioza .ft-col p { margin-bottom: 0.35rem; }
.theme-precioza .ft-col .ft-nav a { display: block; padding: 0.1rem 0; }
@media (max-width: 760px) {
	.theme-precioza .ft-grid { grid-template-columns: 1fr; gap: 1.5rem; }
}

/* galeria: sekcie + grid 2:1 + lightbox */
.theme-precioza .gal-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.25rem; margin: 1.5rem 0 2.75rem; }
.theme-precioza .gal-item { margin: 0; }
.theme-precioza .gal-item img {
	width: 100%;
	aspect-ratio: 2 / 1;
	object-fit: cover;
	display: block;
	border-radius: var(--card-radius);
	cursor: zoom-in;
	transition: transform 0.25s ease;
}
.theme-precioza .gal-item:hover img { transform: scale(1.015); }
@media (max-width: 640px) { .theme-precioza .gal-grid { grid-template-columns: 1fr; } }

/* lightbox */
.pv-lb {
	position: fixed;
	inset: 0;
	z-index: 2000;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(8, 9, 11, 0.93);
	cursor: zoom-out;
}
.pv-lb img { max-width: 94vw; max-height: 88vh; border-radius: 4px; box-shadow: 0 24px 80px rgba(0, 0, 0, 0.6); }
.pv-lb__close {
	position: absolute;
	top: 1rem;
	right: 1.25rem;
	width: 44px;
	height: 44px;
	display: grid;
	place-items: center;
	font-size: 1.5rem;
	line-height: 1;
	color: #fff;
	background: rgba(255, 255, 255, 0.12);
	border: 0;
	border-radius: 50%;
	cursor: pointer;
}
.pv-lb__close:hover { background: rgba(255, 255, 255, 0.25); }
.theme-precioza:has(.pv-hero) .es-main { padding-top: 0; }

/* ============ f7 UX (Róbert 7. 11. 2026): centrovaná pätka, swipe, lightbox posuv ============ */

/* pätka: centrovaná, 1 stĺpec, dole */
.theme-precioza .es-footer .mod-custom { text-align: center; }
/* content-bottom (bottom1-4) — sekcia nad patkou, vzor webportaly.sk es-bottom */
.theme-precioza .es-bottom {
	padding: 2.5rem 0 2rem;
	background: var(--color-gray-50, #f8f9fa);
}
[data-theme="dark"] .theme-precioza .es-bottom {
	background: #16181d;
}
.theme-precioza .es-bottom__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
	text-align: center;
}
@media (min-width: 768px) {
	.theme-precioza .es-bottom__grid {
		grid-template-columns: 1fr 1fr;
		text-align: left;
	}
}
.theme-precioza .es-bottom .ft-bottom-info {
	margin: 0 0 0.5rem;
	color: var(--color-text-muted);
	font-size: 0.9rem;
}
.theme-precioza .es-bottom .ft-nav {
	justify-content: flex-start;
	margin: 0;
}
.theme-precioza .es-bottom .ft-nav a {
	color: var(--color-text, #1a1a2e);
	font-weight: 500;
}
[data-theme="dark"] .theme-precioza .es-bottom .ft-nav a {
	color: var(--color-text, #e2e8f0);
}
.theme-precioza .es-bottom .ft-bottom-info {
	color: var(--color-text, #1a1a2e);
}
[data-theme="dark"] .theme-precioza .es-bottom .ft-bottom-info {
	color: var(--color-text, #e2e8f0);
}
.theme-precioza .es-bottom .ft-bottom-info a {
	color: var(--color-primary, #ff6500);
}
@media (max-width: 767px) {
	.theme-precioza .es-bottom .ft-nav {
		justify-content: center;
	}
}
/* pätka: full-bleed ako hero a CTA (Róbert 8. 11.: „nie je na celú šírku") */
.theme-precioza .es-footer {
	width: 100vw;
	margin-left: calc(50% - 50vw);
}
/* pätka v2 (vzor webportaly.sk 7. 11.): nav hore, copyright+cookies dole */
.theme-precioza .ft-center { max-width: 720px; margin: 0 auto; display: flex; flex-direction: column; gap: 0.5rem; }
.theme-precioza .ft-center p { margin: 0; }
.theme-precioza .ft-nav { display: flex; flex-wrap: wrap; justify-content: center; gap: 0.35rem 1.4rem; margin: 0 0 0.75rem; }
.theme-precioza .ft-nav a { display: inline-block; padding: 0.1rem 0; }
.theme-precioza .ft-bottom { border-top: 1px solid rgba(255,255,255,0.1); padding-top: 0.75rem; margin-top: 0.25rem; display: flex; flex-direction: column; gap: 0.4rem; align-items: center; }
.theme-precioza .ft-copy { opacity: 0.85; font-size: 0.85rem; }
.theme-precioza .ft-links { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 0.4rem 0.8rem; font-size: 0.85rem; }
.theme-precioza .ft-fb { display: inline-flex; align-items: center; gap: 0.4rem; }
.theme-precioza .ft-fb svg { flex: none; }
.theme-precioza .ft-dot { opacity: 0.5; }
.theme-precioza .ft-made { opacity: 0.85; }
/* share ikonka v päťke (modul 143) — center + malý */
.theme-precioza .es-footer .wp-share { justify-content: center; margin-top: 0.75rem; }
.theme-precioza .es-footer .wp-share a { display: inline-grid; place-items: center; width: 30px; height: 30px; border-radius: 6px; background: rgba(255,255,255,0.08); }
.theme-precioza .es-footer .wp-share a:hover { background: rgba(255,255,255,0.18); }

/* swipe / scroll-snap karty na uvodnej (vzor webportaly.sk) */
.theme-precioza .pv-swipe { padding: 3rem 0 1rem; }
.theme-precioza .pv-swipe__head { text-align: center; max-width: 720px; margin: 0 auto 1.75rem; }
.theme-precioza .pv-swipe__head h2 { margin-bottom: 0.6rem; }
.theme-precioza .pv-swipe__head p { color: var(--color-text-muted); }
.theme-precioza .pv-swipe__wrap { position: relative; }
.theme-precioza .pv-swipe__track {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: min(360px, 78vw);
	justify-content: start;
	gap: 1.5rem;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scroll-behavior: smooth;
	padding: 0.25rem 1.5rem 1.25rem;
	margin: 0 calc(50% - 50vw);
	width: 100vw;
	-webkit-overflow-scrolling: touch;
	overscroll-behavior-x: contain;
}
/* desktop ≥1024: 4 karty rovnomerne po celej sirke (Róbert 7. 11.: „zarovnать") */
@media (min-width: 1024px) {
	.theme-precioza .pv-swipe__track {
		grid-auto-flow: row;
		grid-template-columns: repeat(4, 1fr);
		overflow-x: visible;
		scroll-snap-type: none;
		margin: 0;
		width: auto;
		padding: 0.25rem 0 1.25rem;
	}
	.theme-precioza .pv-swipe__nav { display: none; }
	.theme-precioza .pv-swipe__card { scroll-snap-align: none; }
}
.theme-precioza .pv-swipe__track::-webkit-scrollbar { height: 8px; }
.theme-precioza .pv-swipe__track::-webkit-scrollbar-thumb { background: var(--color-primary); border-radius: 8px; }
.theme-precioza .pv-swipe__card {
	scroll-snap-align: center;
	background: var(--color-card, #fff);
	border: 1px solid var(--color-border, rgba(0,0,0,0.08));
	border-radius: var(--card-radius, 12px);
	overflow: hidden;
	display: flex;
	flex-direction: column;
	box-shadow: 0 6px 22px rgba(0,0,0,0.06);
}
[data-theme="dark"] .theme-precioza .pv-swipe__card { background: var(--color-card, #1b1e24); border-color: rgba(255,255,255,0.08); }
.theme-precioza .pv-swipe__card figure { margin: 0; aspect-ratio: 16 / 10; overflow: hidden; }
.theme-precioza .pv-swipe__card img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.4s ease; }
.theme-precioza .pv-swipe__card:hover img { transform: scale(1.04); }
.theme-precioza .pv-swipe__card .pv-swipe__body { padding: 1rem 1.1rem 1.15rem; display: flex; flex-direction: column; gap: 0.45rem; }
.theme-precioza .pv-swipe__card h3 { margin: 0; font-size: 1.05rem; line-height: 1.3; }
.theme-precioza .pv-swipe__card p { margin: 0; color: var(--color-text-muted); font-size: 0.92rem; }
.theme-precioza .pv-swipe__card a.pv-swipe__more { align-self: flex-start; font-weight: 600; color: var(--color-primary); }
.theme-precioza .pv-swipe__nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 42px;
	height: 42px;
	display: grid;
	place-items: center;
	border: 0;
	border-radius: 50%;
	background: var(--color-primary);
	color: #fff;
	cursor: pointer;
	opacity: 0.92;
	z-index: 2;
	transition: opacity 0.2s ease, transform 0.2s ease;
}
.theme-precioza .pv-swipe__nav:hover { opacity: 1; }
.theme-precioza .pv-swipe__nav--prev { left: max(1rem, calc(50vw - 50% - 3.5rem)); }
.theme-precioza .pv-swipe__nav--next { right: max(1rem, calc(50vw - 50% - 3.5rem)); }
.theme-precioza .pv-swipe__nav[disabled] { opacity: 0.25; cursor: default; }
@media (max-width: 720px) {
	.theme-precioza .pv-swipe__nav { display: none; }
	.theme-precioza .pv-swipe__track { grid-auto-columns: 84vw; }
}
/* desktop: nav tlacidla skryt (4 karty su vidno naraz, scroll nie je treba) */
@media (min-width: 1024px) {
	.theme-precioza .pv-swipe__nav { display: none !important; }
}

/* lightbox: posuvanie (prev/next) + swipe na mobile */
.theme-precioza .pv-lb { cursor: default; touch-action: pan-y; }
.theme-precioza .pv-lb img { cursor: default; max-width: 90vw; }
.theme-precioza .pv-lb__nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 52px;
	height: 52px;
	display: grid;
	place-items: center;
	border: 0;
	border-radius: 50%;
	background: rgba(255,255,255,0.12);
	color: #fff;
	font-size: 1.6rem;
	line-height: 1;
	cursor: pointer;
	z-index: 3;
	transition: background 0.2s ease;
}
.theme-precioza .pv-lb__nav:hover { background: rgba(255,255,255,0.26); }
.theme-precioza .pv-lb__nav--prev { left: 1.1rem; }
.theme-precioza .pv-lb__nav--next { right: 1.1rem; }
.theme-precioza .pv-lb__count {
	position: absolute;
	bottom: 1.1rem;
	left: 50%;
	transform: translateX(-50%);
	color: rgba(255,255,255,0.8);
	font-family: var(--font-label);
	font-size: 0.85rem;
	letter-spacing: 0.04em;
}
.theme-precioza .pv-lb__img-wrap { display: flex; align-items: center; justify-content: center; }
