/*
Theme Name: Blocksy Child
Template: blocksy
Description: Slow – Natur, s.r.o. (slownatur.sk)
Author: Creative Themes
Text Domain: blocksy
Version: 1.25.7
*/

.ct-woo-unauthorized .col2-set > :first-child {
	background: #ebebeb;
	padding: 20px;
	box-shadow: 1px 1px 20px -5px grey;
}

select, textarea, input[type="url"], input[type="tel"], input[type="text"], input[type="time"], input[type="date"], input[type="datetime"], input[type="datetime-local"], input[type="email"], input[type="number"], input[type="search"], input[type="password"], fieldset .wc-stripe-elements-field {
	background-color: white;
}

.ct-woo-unauthorized .col2-set > :last-child {
	box-shadow: 1px 1px 20px -5px grey;
	margin-left: 20px;
	padding: 40px;
}

/* =========================================================
   1) TOKENY
   ========================================================= */
:root {
	/* farby značky (logo Slow – Natur) */
	--spk-primary:    #5C993B;  /* zelená z loga – ikony, značky */
	--spk-primary-d:  #2F6B1E;  /* odkazy a text na bielom (6,6 : 1) */
	--spk-primary-dd: #1F4D23;  /* najtmavšia zelená – tmavé plochy */
	--spk-ink:        #1B2A17;  /* nadpisy a text */
	--spk-ink-2:      #2A5E2E;  /* plochy v tmavých boxoch */
	--spk-accent:     #F79715;  /* oranžová z loga – štítky na tmavom */
	--spk-cta:        #2F6B1E;  /* tlačidlá – biely text 6,6 : 1 */
	--spk-cta-h:      #1F4D23;  /* hover tlačidla */
	--spk-ice:        #F5F8F0;  /* svetlé pozadie sekcií */
	--spk-tint:       #EEF4E6;  /* svetlé plochy a ikony */
	--spk-line:       #E2E9DA;  /* linky a rámiky */
	--spk-white:      #FFFFFF;
	/* tvar a rytmus */
	--spk-r-btn: 10px;  /* tlačidlá na celom webe ako tlačidlo formulára v pätičke (karty produktov majú vlastné) */
	--spk-r-sm: 6px; --spk-r: 10px; --spk-r-md: 10px; --spk-r-lg: 10px; --spk-r-xl: 10px;  /* boxy a karty na celom webe 10px (produkty majú vlastné) */
	--spk-shadow: 0 6px 24px rgba(31, 77, 35, .07);
	--spk-gap: clamp(16px, 2vw, 24px);
	--spk-pad: clamp(64px, 8vw, 112px);
	/* šírka obsahu = Blocksy (Customizer → General → Layout: Maximum Site Width, Content Edge Spacing) */
	--spk-max:   var(--theme-normal-container-max-width, 1290px);
	--spk-width: var(--theme-container-width, calc(100% - 2 * clamp(16px, 4vw, 40px)));
	--spk-ease: cubic-bezier(.3, 1.4, .5, 1);
	/* hero */
	--spk-tint-2:  #D7E8C8;  /* posunutý podklad za fotkou */
	--spk-lime:    #D8FFBF;  /* akcia: štítok a tlačidlo na tmavom */
	--spk-sun:     #FFF1D6;  /* teplé slnečné svetlo v pozadí hero */
	--spk-moss:    #CFE6BC;  /* machová zelená v pozadí hero */
	--spk-leaf-d:  #3E7F2A;  /* tmavší odtieň lístka */
	--spk-shadow-lg: 0 24px 50px -20px rgba(31, 77, 35, .5);
	--spk-glass:     rgba(255, 255, 255, .85);  /* sklenený podklad čísla na fotke */
	--spk-accent-d:  #9A4E00;                  /* tmavá oranžová – text na svetlom (5,6 : 1) */
	--spk-shine:   rgba(255, 255, 255, .38);  /* odlesk na fotke */
	/* grafika uložená raz (data URI), použitá cez mask */
	--spk-leaf:   url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 3c4 3 6 6 6 9a6 6 0 0 1-12 0c0-3 2-6 6-9z%22/%3E%3Cpath d=%22M12 21v-7%22/%3E%3C/svg%3E");
	--spk-swoosh: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 200 24%22 preserveAspectRatio=%22none%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%227%22 stroke-linecap=%22round%22%3E%3Cpath d=%22M4 17C46 7 112 5 196 12%22/%3E%3C/svg%3E");
	--spk-sprig:  url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 120 120%22%3E%3Cpath d=%22M18 112C40 84 62 56 100 14%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%224%22 stroke-linecap=%22round%22/%3E%3Cpath d=%22M58 64C38 44 42 22 68 8c9 20 6 42-10 56z%22/%3E%3Cpath d=%22M42 84C18 78 6 58 10 38c20 4 34 24 32 46z%22/%3E%3Cpath d=%22M78 40c12-16 30-20 40-12-9 17-26 22-40 12z%22/%3E%3Cpath d=%22M30 98C14 100 4 92 2 80c13-2 24 6 28 18z%22/%3E%3C/svg%3E");
	--spk-quote:  url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M10 5C6 6.4 3.5 9.6 3.5 14v5H10v-7H7c.2-2.4 1.5-4 3.8-4.9zm10.5 0c-4 1.4-6.5 4.6-6.5 9v5h6.5v-7h-3c.2-2.4 1.5-4 3.8-4.9z%22/%3E%3C/svg%3E");
	--spk-bag:    url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M6 7h12l-1 13H7z%22/%3E%3Cpath d=%22M9 7a3 3 0 0 1 6 0%22/%3E%3C/svg%3E");
	--spk-chev:   url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M9 5l7 7-7 7%22/%3E%3C/svg%3E");
	--spk-grid:   url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect x=%224%22 y=%224%22 width=%226.5%22 height=%226.5%22 rx=%221.5%22/%3E%3Crect x=%2213.5%22 y=%224%22 width=%226.5%22 height=%226.5%22 rx=%221.5%22/%3E%3Crect x=%224%22 y=%2213.5%22 width=%226.5%22 height=%226.5%22 rx=%221.5%22/%3E%3Crect x=%2213.5%22 y=%2213.5%22 width=%226.5%22 height=%226.5%22 rx=%221.5%22/%3E%3C/svg%3E");
	--spk-sort:   url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M7 4v16M3.5 7.5L7 4l3.5 3.5M17 20V4M13.5 16.5L17 20l3.5-3.5%22/%3E%3C/svg%3E");
	--spk-check:  url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M5 12.5l4.5 4.5L19 7%22/%3E%3C/svg%3E");
}

/* =========================================================
   2) ZÁKLAD SEKCIE
   ========================================================= */
.spk-sec,
.spk-dark {
	--spk-bg: var(--spk-white);
	--spk-fg: var(--spk-ink);
	--spk-h: var(--spk-ink);
	--spk-muted: #4A5A44;
	--spk-link: var(--spk-primary-d);
	--spk-eyebrow: var(--spk-primary-d);
	--spk-sline: var(--spk-line);
	--spk-card: var(--spk-white);
}
.spk-sec--light { --spk-bg: var(--spk-ice); --spk-card: var(--spk-white); }
.spk-sec--tint  { --spk-bg: var(--spk-tint); }
.spk-dark {
	--spk-bg: var(--spk-primary-dd);
	--spk-fg: #D6E6CD;
	--spk-h: var(--spk-white);
	--spk-muted: #C4D8B9;
	--spk-link: var(--spk-white);
	--spk-eyebrow: var(--spk-accent);
	--spk-sline: rgba(255, 255, 255, .14);
	--spk-card: var(--spk-ink-2);
	background: var(--spk-bg);
	color: var(--spk-fg);
}

.spk-sec {
	position: relative;
	padding-block: var(--spk-pad);
	color: var(--spk-fg);
	border-image: conic-gradient(var(--spk-bg) 0 0) fill 0 // 0 100vw;
}
.spk-in {
	width: var(--spk-width);
	max-width: var(--spk-max);
	margin-inline: auto;
}

.spk-sec :where(h1, h2, h3, h4) { margin: 0; color: var(--spk-h); }
.spk-sec :where(p, ul, ol, dl, dd, figure, blockquote, fieldset) { margin: 0; }
.spk-sec :where(ul, ol) { padding: 0; list-style: none; }
.spk-sec :where(img) { display: block; max-width: 100%; height: auto; }
.spk-sec :where(figcaption) { margin: 0; font-size: inherit; text-align: inherit; color: inherit; }
.spk-sec :where(a) { color: var(--spk-link); }
.spk-sec :where(*) { box-sizing: border-box; }

.spk-sec .spk-in :is(p, dd, blockquote) a:not([class]) { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.spk-sec .spk-in :is(p, dd, blockquote) a:not([class]):hover { text-decoration-thickness: 2px; }

.spk-head { display: grid; gap: .6em; margin-bottom: clamp(28px, 4vw, 44px); text-align: center; justify-items: center; }
.spk-eyebrow { font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--spk-eyebrow); }
.spk-lead { color: var(--spk-muted); }
.spk-accent { color: var(--spk-primary-d); }
.spk-dark .spk-accent { color: var(--spk-accent); }
.spk-flow { display: grid; gap: 1em; }
.spk-flow p { color: var(--spk-muted); }

.spk-box {
	padding: clamp(24px, 4vw, 48px);
	border-radius: var(--spk-r-xl);
	background: var(--spk-card);
}
.spk-box.spk-dark { background: var(--spk-bg); }

/* =========================================================
   3) IKONY
   ========================================================= */
.spk-ic {
	display: inline-block;
	flex: none;
	width: 26px;
	height: 26px;
	background: currentColor;
	-webkit-mask: var(--i) center / contain no-repeat;
	mask: var(--i) center / contain no-repeat;
}
.spk-ibox {
	display: inline-flex;
	flex: none;
	align-items: center;
	justify-content: center;
	width: 3.25em;
	height: 3.25em;
	border-radius: 50%;
	background: var(--spk-tint);
	color: var(--spk-primary-d);
}
.spk-dark .spk-ibox { background: var(--spk-ink-2); color: var(--spk-accent); }
.spk-ic--leaf { --i: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 3c4 3 6 6 6 9a6 6 0 0 1-12 0c0-3 2-6 6-9z%22/%3E%3Cpath d=%22M12 21v-7%22/%3E%3C/svg%3E"); }
.spk-ic--users { --i: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%229%22 cy=%228%22 r=%223.5%22/%3E%3Cpath d=%22M2.5 20c1-3.5 3.8-5.5 6.5-5.5s5.5 2 6.5 5.5%22/%3E%3Cpath d=%22M16 4.5a3.5 3.5 0 0 1 0 7%22/%3E%3Cpath d=%22M18 14.8c2 .7 3.2 2.5 3.5 5.2%22/%3E%3C/svg%3E"); }
.spk-ic--shield { --i: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 3l7 3v6c0 4.5-3 7.5-7 9-4-1.5-7-4.5-7-9V6z%22/%3E%3Cpath d=%22M8.5 12l2.5 2.5 4.5-5%22/%3E%3C/svg%3E"); }
.spk-ic--truck { --i: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M3 7h11v9H3z%22/%3E%3Cpath d=%22M14 10h4l3 3v3h-7%22/%3E%3Ccircle cx=%227%22 cy=%2218%22 r=%221.6%22/%3E%3Ccircle cx=%2217%22 cy=%2218%22 r=%221.6%22/%3E%3C/svg%3E"); }
.spk-ic--star { --i: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 3l2.6 5.6 6.1.6-4.6 4.1 1.3 6-5.4-3.2-5.4 3.2 1.3-6L3.3 9.2l6.1-.6z%22/%3E%3C/svg%3E"); }
.spk-ic--phone { --i: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M5 4h3l2 5-2.5 1.5a11 11 0 0 0 6 6L15 14l5 2v3a2 2 0 0 1-2 2A16 16 0 0 1 3 6a2 2 0 0 1 2-2z%22/%3E%3C/svg%3E"); }
.spk-ic--mail { --i: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect x=%223%22 y=%225%22 width=%2218%22 height=%2214%22 rx=%222%22/%3E%3Cpath d=%22M3.5 6.5l8.5 6.5 8.5-6.5%22/%3E%3C/svg%3E"); }
.spk-ic--pin { --i: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 21s-7-6.2-7-11.5a7 7 0 0 1 14 0C19 14.8 12 21 12 21z%22/%3E%3Ccircle cx=%2212%22 cy=%229.5%22 r=%222.5%22/%3E%3C/svg%3E"); }
.spk-ic--doc { --i: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8z%22/%3E%3Cpath d=%22M14 3v5h5%22/%3E%3Cpath d=%22M9 13h6M9 17h6%22/%3E%3C/svg%3E"); }
.spk-ic--store { --i: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M4 9l1.5-5h13L20 9%22/%3E%3Cpath d=%22M4 9a2.7 2.7 0 0 0 5.3 0 2.7 2.7 0 0 0 5.4 0 2.7 2.7 0 0 0 5.3 0%22/%3E%3Cpath d=%22M5 11v9h14v-9%22/%3E%3Cpath d=%22M10 20v-5h4v5%22/%3E%3C/svg%3E"); }
.spk-ic--user { --i: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2212%22 cy=%228%22 r=%224%22/%3E%3Cpath d=%22M4 21c1.2-4 4.3-6 8-6s6.8 2 8 6%22/%3E%3C/svg%3E"); }
.spk-ic--bag { --i: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M6 7h12l-1 13H7z%22/%3E%3Cpath d=%22M9 7a3 3 0 0 1 6 0%22/%3E%3C/svg%3E"); }
.spk-ic--box { --i: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M3 7.5L12 3l9 4.5v9L12 21l-9-4.5z%22/%3E%3Cpath d=%22M3 7.5l9 4.5 9-4.5M12 12v9%22/%3E%3C/svg%3E"); }
.spk-ic--building { --i: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M4 21V5a1 1 0 0 1 1-1h9a1 1 0 0 1 1 1v16%22/%3E%3Cpath d=%22M15 10h4a1 1 0 0 1 1 1v10%22/%3E%3Cpath d=%22M3 21h18M8 8h3M8 12h3M8 16h3%22/%3E%3C/svg%3E"); }
.spk-ic--bank { --i: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M3 10l9-6 9 6%22/%3E%3Cpath d=%22M5 10v8M9.5 10v8M14.5 10v8M19 10v8%22/%3E%3Cpath d=%22M3 21h18%22/%3E%3C/svg%3E"); }
.spk-ic--chev { --i: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M9 5l7 7-7 7%22/%3E%3C/svg%3E"); }
.spk-ic--arrow { --i: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M5 12h14%22/%3E%3Cpath d=%22M13 6l6 6-6 6%22/%3E%3C/svg%3E"); }

/* =========================================================
   4) TLAČIDLÁ
   ========================================================= */
.spk-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.spk-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .6em;
	box-sizing: border-box;
	min-height: 3.1em;
	padding: .6em 1.7em;
	border-radius: var(--spk-r-btn);
	background-color: var(--spk-primary-dd);
	color: var(--spk-white);
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none;
}
.spk-sec .spk-btn { color: var(--spk-white); }
.spk-btn .spk-ic { width: 1.1em; height: 1.1em; transition: transform .2s var(--spk-ease); }
.spk-sec .spk-btn--light { background: var(--spk-white); color: var(--spk-primary-dd); }
.spk-btn--light:hover,
.spk-btn--light:focus-visible { background: var(--spk-tint); color: var(--spk-primary-dd); }

/* 4b) TLAČIDLÁ NA CELOM WEBE – rovnaké ako „Odoslať“ v pätičke
       produkt (Pridať do košíka), košík, pokladňa, môj účet, mini košík, recenzie, úvodná stránka (.spk-btn)
       farby a zaoblenie cez premenné Blocksy (prežije aktualizácie); karty produktov, cookie lišta,
       vyhľadávanie a formulár v pätičke majú vlastný vzhľad a sem nepatria
       v pokoji „Logo“ (zelená prechodom), hover „Limetka“ – farba sa preleje cez oranžovú z loga,
       prebehne odlesk a tlačidlo sa jemne zdvihne; klik: jemne sa stlačí */
:root:root {
	--theme-button-background-initial-color: var(--spk-primary-dd);
	--theme-button-background-hover-color: var(--spk-lime);
	--theme-button-text-initial-color: var(--spk-white);
	--theme-button-text-hover-color: var(--spk-primary-dd);
	--theme-button-border-radius: var(--spk-r-btn);
	--spk-sheen: linear-gradient(110deg, transparent 30%, rgba(255, 255, 255, .5) 48%, rgba(255, 255, 255, .15) 54%, transparent 70%);
	/* jeden široký prechod (300 %): v pokoji je vidno prvú tretinu = „Logo“ (tmavozelená → zelená z loga),
	   pri hover sa posunie cez oranžovú z loga do poslednej tretiny = „Limetka“ (svetlá, tmavozelený text) */
	--spk-btn-grad: linear-gradient(100deg, #1F4D23 0%, #3E7F2A 22%, #5E9430 33.3%, #8FB23E 42%, #F79715 50%, #FFC46B 56%, #E9FBD9 62%, #D8FFBF 66.7%, #EDFCD3 85%, #FFF6CF 100%);  /* koniec = rovnaký hover ako záložky produktu */
	--spk-btn-size: 250% 100%, 300% 100%;
}
.single-product form.cart { --theme-button-min-height: 52px; }  /* počet kusov má rovnakú výšku ako tlačidlo */
/* plávajúci panel s košíkom (Blocksy .ct-floating-bar): nižšie tlačidlo, rovnako vysoké ako počet kusov, menší tieň */
.single-product .ct-floating-bar { --spk-btn-h: 44px; --theme-button-min-height: 44px; }
.single-product .ct-floating-bar form.cart { --theme-button-min-height: 44px; }
html .ct-floating-bar :is(.button, .single_add_to_cart_button) { height: 44px; padding-block: 0; padding-inline: 1.3em; box-shadow: 0 6px 14px -10px rgba(31, 77, 35, .7); }
html :is(.spk-btn, .button, .ct-button, .wp-element-button, .wc-block-components-button, .checkout-button, [type="submit"]):not(:where(li.product *, .ct-woo-card-extra *, .ct-search-form *, .cookie-notification *, .spk-ftcta *, .spk-btn--light, .wc-block-components-button.is-link, .spk-foot__cta, .ag-bf-apply)) {
	box-sizing: border-box;
	min-height: var(--spk-btn-h, 52px);
	border-radius: var(--spk-r-btn);
	border-color: transparent;
	background-color: var(--spk-primary-dd);  /* záloha */
	background-image: var(--spk-sheen), var(--spk-btn-grad);
	background-repeat: no-repeat;
	background-size: var(--spk-btn-size);
	background-position: 160% 0, 0 0;
	color: var(--spk-white);
	font-weight: 700;
	text-shadow: 0 1px 2px rgba(0, 0, 0, .25);
	box-shadow: 0 10px 22px -12px rgba(31, 77, 35, .8);
	transition: background-position .7s cubic-bezier(.4, 0, .2, 1), color .3s ease, transform .25s var(--spk-ease), box-shadow .3s ease;
}
html :is(.spk-btn, .button, .ct-button, .wp-element-button, .wc-block-components-button, .checkout-button, [type="submit"]):not(:where(li.product *, .ct-woo-card-extra *, .ct-search-form *, .cookie-notification *, .spk-ftcta *, .spk-btn--light, .wc-block-components-button.is-link, .spk-foot__cta, .ag-bf-apply)):is(:hover, :focus-visible):not(:disabled, .disabled) {
	background-color: var(--spk-lime);
	background-position: -60% 0, 100% 0;
	color: var(--spk-primary-dd);
	text-shadow: none;
	box-shadow: inset 0 0 0 2px var(--spk-primary), 0 14px 26px -14px rgba(31, 77, 35, .55);  /* zelený rám pri hover (vnútorný – tlačidlo neposkočí) */
	transform: translateY(-2px);
}
html :is(.spk-btn, .button, .ct-button, .wp-element-button, .wc-block-components-button, .checkout-button, [type="submit"]):not(:where(li.product *, .ct-woo-card-extra *, .ct-search-form *, .cookie-notification *, .spk-ftcta *, .spk-btn--light, .wc-block-components-button.is-link, .spk-foot__cta, .ag-bf-apply)):active:not(:disabled, .disabled) {
	box-shadow: inset 0 0 0 2px var(--spk-primary-d), 0 6px 14px -10px rgba(31, 77, 35, .6);
	transform: translateY(0) scale(.98);
}
html :is(.spk-btn, .button, .ct-button, .wp-element-button, .wc-block-components-button, .checkout-button, [type="submit"]):not(:where(li.product *, .ct-woo-card-extra *, .ct-search-form *, .cookie-notification *, .spk-ftcta *, .spk-btn--light, .wc-block-components-button.is-link, .spk-foot__cta, .ag-bf-apply)):focus-visible { outline: 2px solid var(--spk-accent); outline-offset: 2px; }
/* neaktívne (napr. variant ešte nie je vybraný) – bez efektov */
html :is(.button, .ct-button, .wp-element-button, .wc-block-components-button, [type="submit"]):is(:disabled, .disabled) { opacity: .55; cursor: not-allowed; box-shadow: none; transform: none; }
.spk-btn:hover .spk-ic { transform: translateX(3px); }
.spk-sec a:focus-visible { outline: 2px solid var(--spk-accent); outline-offset: 3px; }

/* =========================================================
   5) HERO + PÁS DÔVERY
   ========================================================= */
/* výška: presne obrazovka pod hlavičkou Blocksy (aj s admin lištou), obsah zvislo v strede;
   keď sa obsah nezmestí (mobil, veľký zoom), hero sa jednoducho predĺži – nič sa neoreže */
.spk-sec.spk-hero {
	--spk-hero-h: calc(100svh - var(--header-height, 0px) - var(--wp-admin--admin-bar--height, 0px));
	box-sizing: border-box;
	display: grid;
	align-content: center;
	min-height: calc(100vh - var(--header-height, 0px) - var(--wp-admin--admin-bar--height, 0px));
	min-height: var(--spk-hero-h);
	padding-block: clamp(28px, 6svh, 80px);
	overflow: clip;
}
/* pozadie: machová zelená + teplé slnko, ktoré sa veľmi pomaly prelieva */
.spk-hero::before {
	content: "";
	position: absolute;
	inset: -25%;
	background:
		radial-gradient(38% 42% at 18% 22%, var(--spk-moss), transparent 70%),
		radial-gradient(34% 40% at 86% 78%, var(--spk-sun), transparent 72%),
		radial-gradient(30% 34% at 72% 18%, var(--spk-lime), transparent 70%);
	animation: spk-pozadie 28s ease-in-out infinite alternate;
	pointer-events: none;
}
.spk-hero .spk-in { position: relative; z-index: 1; }
.spk-hero__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: clamp(32px, 5vw, 64px);
	align-items: center;
}
.spk-hero__text { display: grid; gap: clamp(.9em, 2.6svh, 1.4em); justify-items: start; }

/* nadpis: vyvážené riadky, rok s ručne „nakresleným“ podčiarknutím, podnadpis s lístkom */
.spk-hero h1 { text-wrap: balance; }
.spk-year { position: relative; display: inline-block; white-space: nowrap; color: var(--spk-primary-d); }
.spk-year::after {
	content: "";
	position: absolute;
	left: -.04em;
	right: -.04em;
	bottom: -.14em;
	height: .3em;
	background: var(--spk-accent);
	-webkit-mask: var(--spk-swoosh) center / 100% 100% no-repeat;
	mask: var(--spk-swoosh) center / 100% 100% no-repeat;
	transform-origin: left center;
	animation: spk-kresli 1.1s .5s cubic-bezier(.6, 0, .2, 1) both;
}
.spk-hero h1 .spk-accent {
	display: flex;
	align-items: center;
	gap: .4em;
	margin-top: .4em;
	font-weight: 500;
	line-height: 1.05;
	text-wrap: balance;
}
.spk-hero h1 .spk-accent::before {
	content: "";
	flex: none;
	width: .8em;
	height: .8em;
	background: var(--spk-primary);
	-webkit-mask: var(--spk-leaf) center / contain no-repeat;
	mask: var(--spk-leaf) center / contain no-repeat;
	transform-origin: 50% 100%;
	animation: spk-list 6s ease-in-out infinite;
}

/* stĺpec s fotkou a akciou */
.spk-hero__media { position: relative; padding-bottom: 2em; }
/* vetvička s lístkami nad fotkou */
.spk-hero__media::before {
	content: "";
	position: absolute;
	top: -2.2em;
	right: -1.4em;
	z-index: 3;
	width: 6.5em;
	height: 6.5em;
	background: linear-gradient(160deg, var(--spk-primary), var(--spk-leaf-d));
	-webkit-mask: var(--spk-sprig) center / contain no-repeat;
	mask: var(--spk-sprig) center / contain no-repeat;
	transform-origin: 20% 90%;
	animation: spk-vetvicka 7s ease-in-out infinite;
	pointer-events: none;
}

/* akcia „Vône do auta -10 %“ – naklonená karta vysunutá mimo fotky, so samolepkou -10 % v rohu */
.spk-deal {
	position: absolute;
	left: -3.2em;
	bottom: -.5em;
	z-index: 2;
	display: grid;
	row-gap: .15em;
	box-sizing: border-box;
	width: min(100%, 17em);
	padding: 1em 1.2em 1.05em;
	border-radius: var(--spk-r-lg);
	box-shadow: var(--spk-shadow-lg);
	transform: rotate(-2.5deg);
	transition: transform .35s var(--spk-ease);
}
.spk-deal:hover,
.spk-deal:focus-within { transform: rotate(0deg) translateY(-3px); }
/* samolepka -10 % (ako „od roku“ na Agrokompe) */
.spk-deal__badge {
	position: absolute;
	top: -1.35em;
	right: -1em;
	display: grid;
	place-items: center;
	width: 3.3em;
	height: 3.3em;
	border: .17em solid var(--spk-white);
	border-radius: 50%;
	background: var(--spk-accent);
	color: var(--spk-ink);
	box-shadow: 0 10px 22px rgba(0, 0, 0, .25);
	font-size: 1.35em;
	font-weight: 700;
	line-height: 1;
	letter-spacing: -.02em;
	white-space: nowrap;
	animation: spk-pulz 2.4s ease-in-out infinite;
}
.spk-deal__badge::after {
	content: "";
	position: absolute;
	inset: -.4em;
	border: 2px solid var(--spk-accent);
	border-radius: 50%;
	opacity: 0;
	animation: spk-kruh 2.4s ease-in-out infinite;
}
.spk-sec .spk-deal .spk-deal__title { padding-right: 2.6em; font-weight: 700; color: var(--spk-h); line-height: 1.25; }
.spk-deal__desc { color: var(--spk-muted); line-height: 1.35; }
.spk-sec .spk-deal__btn {
	justify-self: start;
	display: inline-flex;
	align-items: center;
	gap: .45em;
	margin-top: .4em;
	padding: .3em .85em;
	border-radius: var(--spk-r-btn);
	background: var(--spk-lime);
	color: var(--spk-ink);
	font-weight: 700;
	line-height: 1.2;
	white-space: nowrap;
	text-decoration: none;
	transition: background-color .2s ease, transform .2s var(--spk-ease);
}
.spk-sec .spk-deal__btn:hover,
.spk-sec .spk-deal__btn:focus-visible { background: var(--spk-accent); color: var(--spk-ink); transform: translateX(3px); }
.spk-deal__btn .spk-ic { width: 1em; height: 1em; }

/* fotka: posunutý zelený podklad, pomalé priblíženie a odlesk svetla */
.spk-fig img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--spk-r-xl); background: var(--spk-tint); }
.spk-hero .spk-fig {
	position: relative;
	overflow: hidden;
	border-radius: var(--spk-r-xl);
	box-shadow: 18px 18px 0 var(--spk-tint-2), var(--spk-shadow);
	transform: translateZ(0);
}
.spk-hero .spk-fig img { max-height: 54svh; border-radius: 0; animation: spk-zoom 24s ease-in-out infinite alternate; }
.spk-hero .spk-fig::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(105deg, transparent 35%, var(--spk-shine) 50%, transparent 65%);
	transform: translateX(-100%);
	animation: spk-odlesk 1.8s .9s ease-in-out both;
	pointer-events: none;
}

/* pás dôvery: biela lišta s obiehajúcim okrajom vo farbách loga, číslo nad popisom */
@property --spk-uhol { syntax: "<angle>"; inherits: false; initial-value: 0deg; }
.spk-trust {
	position: relative;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: clamp(24px, 4.5svh, 56px);
	padding: clamp(.8em, 2svh, 1.2em) 0;
	border: 2px solid transparent;
	border-radius: var(--spk-r-lg);
	background:
		linear-gradient(var(--spk-white), var(--spk-white)) padding-box,
		conic-gradient(from var(--spk-uhol), var(--spk-primary), var(--spk-lime), var(--spk-accent), var(--spk-primary-d), var(--spk-primary)) border-box;
	box-shadow: var(--spk-shadow);
	animation: spk-obieh 6s linear infinite;
}
/* jemná žiara okolo, obieha spolu s okrajom */
.spk-trust::before {
	content: "";
	position: absolute;
	inset: -3px;
	z-index: -1;
	border-radius: inherit;
	background: conic-gradient(from var(--spk-uhol), var(--spk-primary), var(--spk-lime), var(--spk-accent), var(--spk-primary-d), var(--spk-primary));
	filter: blur(14px);
	opacity: .35;
	animation: spk-obieh 6s linear infinite;
	pointer-events: none;
}
.spk-trust li {
	display: flex;
	align-items: center;
	gap: .9em;
	padding: .2em clamp(1em, 2vw, 1.75em);
	color: var(--spk-muted);
	line-height: 1.35;
}
.spk-trust li + li {
	border-left: 1px solid transparent;
	border-image: linear-gradient(transparent, var(--spk-line) 20%, var(--spk-line) 80%, transparent) 1;
}
.spk-trust li > span:last-child { display: flex; flex-direction: column-reverse; gap: .1em; }
.spk-trust strong { display: block; color: var(--spk-primary-d); font-size: 1.5em; font-weight: 700; line-height: 1.1; letter-spacing: .01em; font-variant-numeric: tabular-nums; }
.spk-trust .spk-ibox {
	width: 2.9em;
	height: 2.9em;
	background: linear-gradient(145deg, var(--spk-primary), var(--spk-leaf-d));
	color: var(--spk-white);
	box-shadow: 0 0 0 5px var(--spk-tint);
	transition: transform .35s var(--spk-ease), box-shadow .35s ease;
}
.spk-trust .spk-ibox .spk-ic { width: 1.3em; height: 1.3em; }
.spk-trust li:hover .spk-ibox { transform: rotate(-10deg) scale(1.08); box-shadow: 0 0 0 7px var(--spk-tint); }

/* =========================================================
   6) AKCIA (tmavý box s obrázkom)
   ========================================================= */
.spk-promo {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	overflow: hidden;
	padding: 0;
}
.spk-promo__text { display: grid; gap: 1em; align-content: center; justify-items: start; padding: clamp(28px, 4vw, 56px); }
.spk-promo__media { position: relative; min-height: 18em; }
.spk-promo__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.spk-badge {
	position: absolute;
	top: 1.5em;
	right: 1.5em;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 6.5em;
	height: 6.5em;
	border: 3px solid var(--spk-white);
	border-radius: 50%;
	background: var(--spk-accent);
	color: var(--spk-ink);
	font-weight: 900;
	transform: rotate(-8deg);
}

/* =========================================================
   7) PILIERE – botanické oblúky: fotka v oblúku, číslo, ikona na rozhraní, karty vo vlne
   ========================================================= */
.spk-feat {
	--spk-feat-bg: var(--spk-ice);  /* na bielej sekcii svetlá karta, na svetlej sekcii biela */
	counter-reset: spk-pilier;
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: var(--spk-gap);
	align-items: start;
}
.spk-feat li {
	position: relative;
	display: grid;
	gap: .9em;
	align-content: start;
	justify-items: center;
	padding: .55em .55em 1.6em;
	border: 2px solid var(--spk-accent);  /* oranžová z loga */
	border-radius: 50% 50% var(--spk-r-lg) var(--spk-r-lg) / 8em 8em var(--spk-r-lg) var(--spk-r-lg);
	background: var(--spk-feat-bg);
	box-shadow: var(--spk-shadow);
	text-align: center;
	counter-increment: spk-pilier;
	transition: transform .4s var(--spk-ease), box-shadow .4s ease;
}
.spk-feat li:nth-child(even) { margin-top: 3em; }
.spk-sec--light .spk-feat { --spk-feat-bg: var(--spk-white); }
.spk-feat li:hover { transform: translateY(-6px); box-shadow: var(--spk-shadow-lg); }
/* poradové číslo na vrchole oblúka */
.spk-feat li::before {
	content: counter(spk-pilier, decimal-leading-zero);
	position: absolute;
	top: 1.1em;
	left: 50%;
	z-index: 2;
	padding: .15em .7em;
	border-radius: 999px;
	background: var(--spk-glass);
	color: var(--spk-accent-d);
	font-weight: 700;
	letter-spacing: .08em;
	transform: translateX(-50%);
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
}
.spk-feat__img { width: 100%; overflow: hidden; border-radius: 50% 50% var(--spk-r) var(--spk-r) / 7.45em 7.45em var(--spk-r) var(--spk-r); }
.spk-feat__img img { width: 100%; aspect-ratio: 1 / 1; object-fit: cover; transition: transform .9s ease; }
.spk-feat li:hover .spk-feat__img img { transform: scale(1.07); }
.spk-feat .spk-ibox {
	position: relative;
	z-index: 1;
	margin-top: -2.4em;
	background: linear-gradient(145deg, var(--spk-primary), var(--spk-leaf-d));
	color: var(--spk-white);
	box-shadow: 0 0 0 6px var(--spk-feat-bg);
	transition: transform .4s var(--spk-ease);
}
.spk-feat li:hover .spk-ibox { transform: rotate(-10deg) scale(1.08); }
.spk-feat h2 { padding-inline: .5em; }
.spk-feat h2 .spk-accent { display: block; font-weight: 500; color: var(--spk-primary-d); }
.spk-feat p { padding-inline: .9em; color: var(--spk-muted); }

/* =========================================================
   8) RECENZIE – súhrn Heureka + posuvné karty (prst, myš, šípky; ukazovateľ priebehu čisto v CSS)
   ========================================================= */
.spk-sec:has(.spk-revs) { timeline-scope: --spk-revs; }
.spk-stats {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	align-items: center;
	margin-bottom: clamp(20px, 3vw, 32px);
	border: 1px solid var(--spk-sline);
	border-radius: var(--spk-r-xl);
	background: var(--spk-card);
	box-shadow: var(--spk-shadow);
}
.spk-stats > svg { width: 8.5em; height: auto; margin-inline: 1.6em; }
.spk-stats dl { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); align-self: stretch; border-left: 1px solid var(--spk-sline); }
.spk-stats div { display: flex; flex-direction: column-reverse; justify-content: center; padding: .9em 1em; text-align: center; }
.spk-stats div + div { border-left: 1px solid var(--spk-sline); }
.spk-stats dd { font-size: 1.5em; font-weight: 800; line-height: 1.25; color: var(--spk-primary-d); font-variant-numeric: tabular-nums; }
.spk-stats dd .spk-stars { font-size: .6em; vertical-align: .2em; }
.spk-stats dt { color: var(--spk-muted); }
.spk-stars { color: var(--spk-accent); letter-spacing: .12em; }

.spk-revs {
	--n: 3;
	display: flex;
	gap: var(--spk-gap);
	margin-inline: -12px;
	padding: 12px 12px 24px;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scroll-padding-inline: 12px;
	overscroll-behavior-x: contain;
	scrollbar-width: none;
	scroll-timeline: --spk-revs x;
}
.spk-revs::-webkit-scrollbar { display: none; }
.spk-revs:focus-visible { outline: 2px solid var(--spk-primary); outline-offset: -2px; border-radius: var(--spk-r-lg); }
.spk-rev {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: .9em;
	flex: 0 0 calc((100% - (var(--n) - 1) * var(--spk-gap)) / var(--n));
	padding: 1.6em;
	border: 1px solid var(--spk-sline);
	border-radius: var(--spk-r-lg);
	background: var(--spk-card);
	box-shadow: var(--spk-shadow);
	scroll-snap-align: start;
	transition: transform .4s var(--spk-ease), border-color .3s ease;
}
.spk-rev:hover { transform: translateY(-4px); border-color: var(--spk-accent); }
/* veľké úvodzovky v rohu karty */
.spk-rev::before {
	content: "";
	position: absolute;
	top: 1.2em;
	right: 1.4em;
	width: 2.2em;
	height: 2.2em;
	background: var(--spk-tint-2);
	-webkit-mask: var(--spk-quote) center / contain no-repeat;
	mask: var(--spk-quote) center / contain no-repeat;
}
.spk-rev blockquote { margin: 0; padding: 0; border: 0; color: var(--spk-fg); font-style: normal; }
.spk-rev figcaption { display: flex; align-items: center; gap: .75em; margin-top: auto; padding-top: .9em; border-top: 1px solid var(--spk-sline); font-weight: 700; color: var(--spk-h); }
.spk-rev figcaption small { display: block; font-weight: 400; color: var(--spk-muted); }
.spk-avatar {
	display: inline-flex;
	flex: none;
	align-items: center;
	justify-content: center;
	width: 2.5em;
	height: 2.5em;
	border-radius: 50%;
	background: linear-gradient(145deg, var(--spk-primary), var(--spk-leaf-d));
	color: var(--spk-white);
	font-weight: 800;
}

/* ovládanie: zobrazí ho až skript (bez JS ostáva posun prstom) */
.spk-revs__nav { display: flex; align-items: center; justify-content: center; gap: 1em; margin-top: 4px; }
.spk-revs__nav[hidden] { display: none; }
.spk-sec .spk-revs__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 3em;
	height: 3em;
	min-height: 0;
	padding: 0;
	border: 1px solid var(--spk-sline);
	border-radius: 50%;
	background: var(--spk-card);
	color: var(--spk-primary-d);
	box-shadow: var(--spk-shadow);
	cursor: pointer;
	transition: background .3s ease, color .3s ease, transform .4s var(--spk-ease);
}
.spk-sec .spk-revs__btn:hover,
.spk-sec .spk-revs__btn:focus-visible { border-color: transparent; background: var(--spk-primary-d); color: var(--spk-white); transform: scale(1.08); }
.spk-revs__btn .spk-ic { width: 22px; height: 22px; }
.spk-revs__btn:first-child .spk-ic { transform: scaleX(-1); }
.spk-revs__bar { width: min(10em, 30vw); height: 4px; overflow: hidden; border-radius: 4px; background: var(--spk-line); }
.spk-revs__bar::after {
	content: "";
	display: block;
	height: 100%;
	background: linear-gradient(90deg, var(--spk-primary), var(--spk-accent));
	transform-origin: left;
	animation: spk-pruh linear both;
	animation-timeline: --spk-revs;
}
@supports not (animation-timeline: scroll()) { .spk-revs__bar { display: none; } }

/* =========================================================
   9) KATEGÓRIE – dve hlavné (esenciálne a vonné) veľké po stranách, ostatné v symetrickej mriežke
      desktop 5 stĺpcov: [veľká][2 malé][veľká] + 2 riadky po 5 · tablet 4 · mobil 2
   ========================================================= */
.spk-cats {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	grid-auto-rows: 1fr;
	gap: var(--spk-gap);
}
.spk-cats__top { grid-area: 1 / 1 / 3 / 3; }
.spk-cats__top + .spk-cats__top { grid-area: 1 / 4 / 3 / 6; }
.spk-sec .spk-cat {
	position: relative;
	display: grid;
	align-content: center;
	justify-items: center;
	gap: .7em;
	height: 100%;
	padding: 1.2em .8em;
	overflow: hidden;
	border: 1px solid var(--spk-sline);
	border-radius: var(--spk-r-lg);
	background: var(--spk-ice);
	color: var(--spk-h);
	font-weight: 700;
	line-height: 1.25;
	text-align: center;
	text-decoration: none;
	text-wrap: balance;
	transition: transform .4s var(--spk-ease), border-color .3s ease, box-shadow .3s ease;
}
.spk-cat img { width: 4.5em; height: auto; transition: transform .4s var(--spk-ease); }
.spk-sec .spk-cat:hover,
.spk-sec .spk-cat:focus-visible { border-color: var(--spk-accent); box-shadow: var(--spk-shadow-lg); transform: translateY(-4px); }
.spk-cat:hover img { transform: scale(1.08) rotate(-3deg); }
/* veľké: svetlo za ikonou, vetvička v rohu (zrkadlovo), oranžový rám, šípka */
.spk-sec .spk-cats__top .spk-cat {
	gap: 1em;
	border: 2px solid var(--spk-accent);
	background: radial-gradient(circle at 50% 38%, var(--spk-white) 0 28%, transparent 62%), linear-gradient(160deg, var(--spk-tint), var(--spk-moss));
	font-size: 1.35em;
}
.spk-cats__top .spk-cat::before {
	content: "";
	position: absolute;
	top: .6em;
	right: .6em;
	width: 3.2em;
	height: 3.2em;
	background: var(--spk-tint-2);
	-webkit-mask: var(--spk-sprig) center / contain no-repeat;
	mask: var(--spk-sprig) center / contain no-repeat;
}
.spk-cats__top:first-child .spk-cat::before { right: auto; left: .6em; transform: scaleX(-1); }
.spk-cats__top img { width: min(8em, 70%); }
.spk-cats__top .spk-ibox { width: 1.9em; height: 1.9em; background: var(--spk-cta); color: var(--spk-white); transition: transform .4s var(--spk-ease); }
.spk-cats__top .spk-ic { width: 55%; height: 55%; }
.spk-cats__top .spk-cat:hover .spk-ibox { transform: translateX(4px); }

/* =========================================================
   10) TEXT + FOTKA
   ========================================================= */
.spk-media {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	overflow: hidden;
	padding: 0;
	border: 1px solid var(--spk-sline);
	box-shadow: var(--spk-shadow);
}
.spk-media .spk-flow { padding: clamp(24px, 4vw, 56px); }
.spk-media .spk-fig { position: relative; min-height: 20em; }
.spk-media .spk-fig img { position: absolute; inset: 0; width: 100%; height: 100%; aspect-ratio: auto; border-radius: 0; }

/* =========================================================
   10b) PRÍBEH – text vľavo, fotka v oblúku s odsadeným rámom, vetvičkou a pečaťou „od roku“
   ========================================================= */
/* pozadie sekcie: slnko vpravo hore, mach vľavo dole, pomaly sa prelieva + veľký lístok a malý lístok */
.spk-sec--story { --spk-bg: var(--spk-ice); overflow: clip; }
.spk-sec--story::before {
	content: "";
	position: absolute;
	inset: -25%;
	background:
		radial-gradient(36% 40% at 84% 22%, var(--spk-sun), transparent 72%),
		radial-gradient(40% 44% at 14% 82%, var(--spk-moss), transparent 70%),
		radial-gradient(26% 30% at 48% 46%, rgba(216, 255, 191, .6), transparent 70%);
	animation: spk-pozadie 30s ease-in-out infinite alternate-reverse;
	pointer-events: none;
}
.spk-sec--story::after,
.spk-story::before {
	content: "";
	position: absolute;
	background: var(--spk-primary);
	-webkit-mask: var(--spk-leaf) center / contain no-repeat;
	mask: var(--spk-leaf) center / contain no-repeat;
	transform-origin: 50% 100%;
	animation: spk-list 14s ease-in-out infinite;
	pointer-events: none;
}
.spk-sec--story::after { left: -4em; bottom: -5em; width: 24em; height: 24em; opacity: .08; }
.spk-story::before { z-index: -1; top: -2.5em; left: 44%; width: 7em; height: 7em; opacity: .1; animation-delay: -5s; }
.spk-sec--story .spk-in { position: relative; z-index: 1; }
.spk-story {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr);
	gap: clamp(36px, 6vw, 96px);
	align-items: center;
}
.spk-story h2 .spk-accent { display: block; }
.spk-story .spk-lead { padding: .15em 0 .15em 1em; border-left: 3px solid var(--spk-accent); color: var(--spk-fg); }
/* zvýrazňovač pod tučným textom */
.spk-story strong {
	padding-inline: .1em;
	background: linear-gradient(transparent 58%, var(--spk-lime) 0);
	color: var(--spk-h);
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
}
.spk-story__fig {
	--spk-arch: 50% 50% var(--spk-r-xl) var(--spk-r-xl) / 33.33% 33.33% var(--spk-r-xl) var(--spk-r-xl);
	position: relative;
	width: min(100%, 30em);
	margin: 0 1.25em 1.25em 0;
	justify-self: center;
}
.spk-story__fig img { position: relative; z-index: 1; width: 100%; aspect-ratio: 2 / 3; object-fit: cover; border-radius: var(--spk-arch); box-shadow: var(--spk-shadow-lg); }
/* odsadený oranžový rám v tvare fotky */
.spk-story__fig::before {
	content: "";
	position: absolute;
	inset: 1.25em -1.25em -1.25em 1.25em;
	border: 2px solid var(--spk-accent);
	border-radius: var(--spk-arch);
}
/* vetvička nad oblúkom */
.spk-story__fig::after {
	content: "";
	position: absolute;
	z-index: 2;
	top: -1.4em;
	left: -1.6em;
	width: 5.5em;
	height: 5.5em;
	background: linear-gradient(145deg, var(--spk-primary), var(--spk-leaf-d));
	-webkit-mask: var(--spk-sprig) center / contain no-repeat;
	mask: var(--spk-sprig) center / contain no-repeat;
	transform: scaleX(-1);
	transform-origin: 50% 100%;
}
/* pečať „od roku 1997“ s otáčajúcim sa prerušovaným lemom */
.spk-since {
	position: absolute;
	z-index: 3;
	top: 14%;
	right: -1.25em;
	display: grid;
	place-content: center;
	width: 6.4em;
	height: 6.4em;
	border: .25em solid var(--spk-white);
	border-radius: 50%;
	background: var(--spk-accent);
	box-shadow: 0 12px 26px rgba(0, 0, 0, .22);
	color: var(--spk-ink);
	font-weight: 700;
	line-height: 1.05;
	letter-spacing: .08em;
	text-align: center;
	text-transform: uppercase;
	transform: rotate(8deg);
}
.spk-since b { display: block; font-size: 1.9em; font-weight: 800; letter-spacing: -.01em; }
.spk-since::after {
	content: "";
	position: absolute;
	inset: .3em;
	border: 1.5px dashed rgba(27, 42, 23, .4);
	border-radius: 50%;
	animation: spk-tocit 20s linear infinite;
}

/* =========================================================
   11) WOOCOMMERCE – kontajner s widgetom Products / formulárom
       (Elementor kontajner: CSS triedy „spk-sec spk-sec--light spk-wc“)
   ========================================================= */
.spk-wc { padding-inline: calc((100% - min(var(--spk-width), var(--spk-max))) / 2); }
.spk-wc .products .product {
	padding: .75em;
	border: 1px solid var(--spk-sline);
	border-radius: var(--spk-r-md);
	background: var(--spk-card);
}
.spk-wc .products .product img { border-radius: var(--spk-r); background: var(--spk-tint); }
.spk-wc .products .product .button { border-radius: var(--spk-r-btn); background: var(--spk-cta); color: var(--spk-white); }
.spk-wc .products .product .button:hover { background: var(--spk-cta-h); }

/* =========================================================
   11b) PRODUKTY – natívny shortcode [products] v jednom widgete Shortcode
        karty produktov zdieľa úvodná stránka, archív obchodu (obchod, kategórie, štítky) aj súvisiace / odporúčané produkty na produkte – sekcia 11d
        desktop mriežka 5 stĺpcov · tablet a mobil posúvaný pás s ukazovateľom priebehu
        cieli iba na štandardné triedy WooCommerce (li.product, .price, .button) – prežije aktualizácie
   ========================================================= */
.spk-shop { timeline-scope: --spk-shop; }
.spk-shop h2 .spk-accent { display: block; }
.spk-shop ul.products {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: var(--spk-gap);
	margin: 0;
	padding: 0;
	list-style: none;
}
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) ul.products::before,
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) ul.products::after { display: none; }  /* clearfix WooCommerce by v mriežke zabral bunku */
/* karta: fotka stojí v pastelovom oblúku (každá karta iný tón prírody, biele pozadie fotky sa vďaka multiply stratí),
   pri hover sa fľaštička zdvihne; hlavná akcia je oranžová z loga – odlíši sa od zelene a hneď ju vidno */
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) ul.products li.product {
	--spk-aura: #EFE8FA;  /* levanduľa */
	box-sizing: border-box;
	min-width: 0;
	position: relative;
	display: flex;
	flex-direction: column;
	gap: .5em;
	float: none;
	width: auto;
	margin: 0;
	padding: .6em .6em .9em;
	border: 1px solid var(--spk-line);
	border-radius: 24px;  /* produkty majú vlastné zaoblenie */
	background: var(--spk-card);
	box-shadow: 0 1px 2px rgba(27, 42, 23, .04), 0 8px 24px -12px rgba(31, 77, 35, .18);
	text-align: center;
	transition: transform .4s var(--spk-ease), box-shadow .3s ease;
}
/* farba podľa toho, čo je na etikete – snippet spk-aura-vone.php (trieda spk-aura--{farba}); bez snippetu sa odtiene len striedajú */
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) ul.products li.product:not([class*="spk-aura--"]):nth-child(5n+2) { --spk-aura: #FFF1D6; }
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) ul.products li.product:not([class*="spk-aura--"]):nth-child(5n+3) { --spk-aura: #E2F3E6; }
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) ul.products li.product:not([class*="spk-aura--"]):nth-child(5n+4) { --spk-aura: #FCE6DC; }
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) ul.products li.product:not([class*="spk-aura--"]):nth-child(5n+5) { --spk-aura: #E4EEF3; }
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) ul.products li.product.spk-aura--zlta     { --spk-aura: #FFF2BF; }  /* citrón, bergamot, ananás, med */
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) ul.products li.product.spk-aura--oranzova { --spk-aura: #FFE1C4; }  /* pomaranč, mandarínka, broskyňa, mango */
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) ul.products li.product.spk-aura--cervena  { --spk-aura: #FCDCE0; }  /* jahoda, malina, višňa, granátové jablko */
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) ul.products li.product.spk-aura--ruzova   { --spk-aura: #FBE2EC; }  /* ruža, lotos, magnólia, geránium */
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) ul.products li.product.spk-aura--fialova  { --spk-aura: #EAE3FA; }  /* levanduľa, fialka, orgován, hrozno, čučoriedka */
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) ul.products li.product.spk-aura--zelena   { --spk-aura: #DFF1E1; }  /* mäta, bazalka, limetka, jablko, uhorka */
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) ul.products li.product.spk-aura--modra    { --spk-aura: #DCEDF5; }  /* eukalyptus, gáfor, oceán, ľadový vánok */
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) ul.products li.product.spk-aura--biela    { --spk-aura: #F7F1E3; }  /* vanilka, kokos, jazmín, ľalia, bavlna */
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) ul.products li.product.spk-aura--hneda    { --spk-aura: #F2E1D0; }  /* čokoláda, káva, škorica, klinček, aníz */
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) ul.products li.product.spk-aura--drevo    { --spk-aura: #EFE4D3; }  /* céder, santal, vetiver, myrha, ambra */
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) ul.products li.product.spk-aura--lesna    { --spk-aura: #E1EBDD; }  /* smrek, jedľa, borovica, borievka */
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) ul.products li.product.spk-aura--ziadna   { --spk-aura: #F6F6F2; }  /* fantazijný názov alebo iný produkt – bez farby */
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) ul.products li.product:hover { border-color: var(--spk-tint-2); box-shadow: 0 2px 4px rgba(27, 42, 23, .04), 0 22px 40px -18px rgba(31, 77, 35, .35); transform: translateY(-6px); }
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) ul.products li.product:focus-within { outline: 2px solid var(--spk-accent); outline-offset: 2px; }
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product figure { margin: 0; }
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product .ct-media-container,
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product figure > a:first-child {
	display: block;
	overflow: hidden;
	border-radius: 50% 50% 14px 14px / 34% 34% 14px 14px;
	background: radial-gradient(70% 55% at 50% 62%, var(--spk-white), transparent 75%), var(--spk-aura);
	transition: background-color .4s ease;
}
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product img { width: 100%; mix-blend-mode: multiply; transition: transform .6s var(--spk-ease); }
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product:hover img { transform: scale(1.06); }
/* rýchly náhľad Blocksy – sklenené koliesko */
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product .ct-woo-card-extra { z-index: 3; }
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product .ct-woo-card-extra > * { border-radius: 50%; background: var(--spk-glass); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
/* kategória pod cenou – v sekcii jednej kategórie by sa 10× opakovala */
:is(.spk-shop, .tax-product_cat, .related, .upsells) li.product :is(.entry-meta, .meta-categories) { display: none; }
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) .woocommerce-loop-product__title {
	display: -webkit-box;
	margin: .3em 0 0;
	padding-inline: .3em;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	font-weight: 700;
	line-height: 1.3;
	text-wrap: balance;
}
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) .woocommerce-loop-product__title a,
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product > a { color: var(--spk-h); text-decoration: none; }
/* celá karta klikateľná cez odkaz v názve, tlačidlo košíka a rýchly náhľad ostávajú nad ním */
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) .woocommerce-loop-product__title a::after { content: ""; position: absolute; inset: 0; z-index: 1; border-radius: inherit; }
/* katalógové číslo ako nenápadný štítok */
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product .sku,
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product [class*="sku"] { align-self: center; padding: .05em .6em; border-radius: 999px; background: var(--spk-ice); color: var(--spk-muted); letter-spacing: .06em; }
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product .star-rating { align-self: center; margin: 0; color: var(--spk-accent); }
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product .price { display: block; margin-top: auto; padding-top: .3em; color: var(--spk-h); font-size: 1.3em; font-weight: 800; line-height: 1.2; font-variant-numeric: tabular-nums; }
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product .price small { display: block; margin-top: .15em; font-size: .62em; font-weight: 400; color: var(--spk-muted); }
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product .price del { color: var(--spk-muted); font-weight: 400; }
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product .price ins { text-decoration: none; color: var(--spk-accent-d); }
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product .ct-woo-card-actions { display: flex; width: 100%; margin: .2em 0 0; }
/* úzka karta (4 stĺpce pri sidebare, 2 na mobile): tlačidlo bez ikony, text na jeden riadok */
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) ul.products li.product { container-type: inline-size; }
@container (max-width: 210px) {
	:is(.spk-sec.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product .button { padding-inline: .5em; white-space: nowrap; }
	:is(.spk-sec.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product .button::before { display: none; }
}
:is(.spk-sec.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product .button {
	box-sizing: border-box;
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: .5em;
	width: 100%;
	min-height: 2.75em;
	margin: 0;
	padding: .45em 1em;
	border: 0;
	border-radius: 999px;
	background: var(--spk-accent);
	color: var(--spk-ink);
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none;
	transition: background-color .2s ease, color .2s ease;
}
:is(.spk-sec.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product .button::before {
	content: "";
	width: 1.1em;
	height: 1.1em;
	background: currentColor;
	-webkit-mask: var(--spk-bag) center / contain no-repeat;
	mask: var(--spk-bag) center / contain no-repeat;
}
:is(.spk-sec.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product .button:hover,
:is(.spk-sec.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product .button:focus-visible { background: var(--spk-cta); color: var(--spk-white); }
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product .button.loading { opacity: .6; }
:is(.spk-sec.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product .button.added::before { -webkit-mask-image: var(--spk-check); mask-image: var(--spk-check); }
/* „Zobraziť košík“ po pridaní (AJAX) – rovnaké ako tlačidlá na webe (sekcia 4b), na celú šírku karty */
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product .added_to_cart {
	position: relative;
	z-index: 2;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 44px;
	margin: 6px 0 0;
	padding: .45em 1em;
	border: 0;
	border-radius: var(--spk-r-btn);
	background: var(--spk-sheen) 160% 0 / 250% 100% no-repeat, var(--spk-btn-grad) 0 0 / 300% 100% no-repeat, var(--spk-primary-dd);
	color: var(--spk-white);
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none;
	text-shadow: 0 1px 2px rgba(0, 0, 0, .25);
	box-shadow: 0 10px 22px -12px rgba(31, 77, 35, .8);
	transition: background-position .7s cubic-bezier(.4, 0, .2, 1), color .3s ease, transform .25s var(--spk-ease), box-shadow .3s ease;
}
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product .added_to_cart:is(:hover, :focus-visible) {
	background-position: -60% 0, 100% 0, 0 0;
	color: var(--spk-primary-dd);
	text-shadow: none;
	box-shadow: inset 0 0 0 2px var(--spk-primary), 0 14px 26px -14px rgba(31, 77, 35, .55);
	transform: translateY(-2px);
}
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product .added_to_cart:active { transform: scale(.98); }
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product .onsale {
	min-height: 0;
	margin: 0;
	padding: .2em .7em;
	border-radius: 999px;
	background: var(--spk-accent);
	color: var(--spk-ink);
	font-weight: 700;
	line-height: 1.3;
}
.spk-shop .spk-revs__bar { display: none; margin: 4px auto 0; }
.spk-shop .spk-revs__bar::after { animation-timeline: --spk-shop; }
.spk-shop .spk-actions { justify-content: center; margin-top: clamp(24px, 4vw, 40px); }

/* =========================================================
   11d) ARCHÍV PRODUKTOV + SIDEBAR (obchod, kategória, štítok) – karty sú zo sekcie 11b
        sidebar cez premenné Blocksy (prežije aktualizácie), triedy iba štandardné WooCommerce / Blocksy
   ========================================================= */
:is(.post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) {  /* aj súvisiace a odporúčané produkty na produkte */
	--spk-card: var(--spk-white);
	--spk-h: var(--spk-ink);
	--spk-muted: #4A5A44;
	--spk-sline: var(--spk-line);
	--spk-link: var(--spk-primary-d);
}
/* lišta nad produktmi: teplý pás ako sidebar, počet výsledkov s ikonou mriežky, zoradenie ako biela „kapsula“ */
:is(.post-type-archive-product, .tax-product_cat, .tax-product_tag) .woo-listing-top {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: .6em 1.5em;
	padding: .55em .55em .55em .7em;
	border: 1px solid #EAE4C4;
	border-radius: var(--spk-r-lg);
	background: linear-gradient(100deg, #F6F3DF, #FBFAF1 55%, #F2F7EC);
	box-shadow: 0 8px 22px -18px rgba(31, 77, 35, .45);
}
html :is(.post-type-archive-product, .tax-product_cat, .tax-product_tag) .woocommerce-result-count {
	display: inline-flex;
	align-items: center;
	gap: .7em;
	margin: 0;
	color: var(--spk-ink);
	font-size: 16px;  /* Blocksy tu má vlastnú malú premennú písma – preto pevná veľkosť */
	font-weight: 400;
	letter-spacing: 0;
	text-transform: none;
}
:is(.post-type-archive-product, .tax-product_cat, .tax-product_tag) .woocommerce-result-count::before {
	content: "";
	flex: none;
	width: 36px;  /* ikona v px – nemení sa s veľkosťou písma */
	height: 36px;
	border-radius: 50%;
	background: radial-gradient(circle at 30% 25%, rgba(255, 255, 255, .22), transparent 60%), var(--spk-cta);
	box-shadow: 0 6px 14px -8px rgba(31, 77, 35, .7);
}
:is(.post-type-archive-product, .tax-product_cat, .tax-product_tag) .woocommerce-result-count { position: relative; }
:is(.post-type-archive-product, .tax-product_cat, .tax-product_tag) .woocommerce-result-count::after {
	content: "";
	position: absolute;
	left: 10px;
	top: 50%;
	width: 16px;
	height: 16px;
	background: var(--spk-lime);
	-webkit-mask: var(--spk-leaf) center / contain no-repeat;
	mask: var(--spk-leaf) center / contain no-repeat;
	transform: translateY(-50%);
}
:is(.post-type-archive-product, .tax-product_cat, .tax-product_tag) .woocommerce-ordering {
	--theme-form-field-height: 46px;
	--theme-form-field-border-radius: var(--spk-r);
	--theme-form-field-border-initial-color: var(--spk-primary);
	--theme-form-field-border-focus-color: var(--spk-primary-dd);
	--theme-form-field-border-width: 2px;
	--theme-form-field-background-initial-color: var(--spk-lime);
	--theme-form-field-background-focus-color: var(--spk-lime);
	--theme-form-text-initial-color: var(--spk-primary-dd);
	--theme-form-text-focus-color: var(--spk-primary-dd);
	margin: 0;
}
:is(.post-type-archive-product, .tax-product_cat, .tax-product_tag) .woocommerce-ordering { position: relative; }
/* zoradenie iba ako ikona: natívny select ostáva (klávesnica, mobil, čítačky – aria-label „Zoradenie obchodu“), text je skrytý */
:is(.post-type-archive-product, .tax-product_cat, .tax-product_tag) .woocommerce-ordering select {
	box-sizing: border-box;
	width: 46px;
	padding: 0;
	color: transparent;
	text-indent: -999px;
	--theme-form-field-border-initial-color: var(--spk-primary);
	--theme-form-field-border-focus-color: var(--spk-primary-dd);
	border: 2px solid var(--spk-primary) !important;
	border-color: var(--spk-primary) !important;
	background: linear-gradient(110deg, var(--spk-lime) 0%, #EDFCD3 45%, #FFF6CF 75%, #FFEFC2 100%) 0 0 / 160% 100% !important;  /* ako „Filtrovať“; Blocksy šípka by sa prekrývala s ikonou */
	box-shadow: 0 8px 18px -12px rgba(31, 77, 35, .45);
	cursor: pointer;
	-webkit-appearance: none;
	appearance: none;
	transition: background-position .5s ease, box-shadow .3s ease, transform .25s var(--spk-ease);
}
:is(.post-type-archive-product, .tax-product_cat, .tax-product_tag) .woocommerce-ordering option { color: var(--spk-ink); }
:is(.post-type-archive-product, .tax-product_cat, .tax-product_tag) .woocommerce-ordering :is(svg, .ct-icon, [class*="arrow"]) { display: none !important; }
:is(.post-type-archive-product, .tax-product_cat, .tax-product_tag) .woocommerce-ordering::before {
	content: "";
	position: absolute;
	z-index: 1;  /* ikona nad pozadím selectu – pri hover sa select zdvihne (transform) a inak by ju prekryl */
	inset: 0;
	margin: auto;
	width: 20px;
	height: 20px;
	background: var(--spk-primary-dd);
	-webkit-mask: var(--spk-sort) center / contain no-repeat;
	mask: var(--spk-sort) center / contain no-repeat;
	pointer-events: none;
	transition: background-color .2s ease, transform .3s var(--spk-ease);
}
:is(.post-type-archive-product, .tax-product_cat, .tax-product_tag) .woocommerce-ordering:hover select,
:is(.post-type-archive-product, .tax-product_cat, .tax-product_tag) .woocommerce-ordering select:focus-visible { background-position: 100% 0 !important; box-shadow: 0 12px 22px -12px rgba(31, 77, 35, .55); transform: translateY(-2px); }
:is(.post-type-archive-product, .tax-product_cat, .tax-product_tag) .woocommerce-ordering:hover::before { transform: translateY(-2px) scaleY(-1); }

/* stránkovanie */
:is(.post-type-archive-product, .tax-product_cat, .tax-product_tag) .ct-pagination { flex-wrap: wrap; gap: 6px; }
:is(.post-type-archive-product, .tax-product_cat, .tax-product_tag) .ct-pagination .page-numbers {
	display: inline-grid;
	place-items: center;
	min-width: 2.6em;
	height: 2.6em;
	padding-inline: .6em;
	border: 1px solid var(--spk-line);
	border-radius: var(--spk-r);
	background: var(--spk-white);
	color: var(--spk-ink);
	text-decoration: none;
	transition: border-color .2s ease, background-color .2s ease, color .2s ease;
}
:is(.post-type-archive-product, .tax-product_cat, .tax-product_tag) .ct-pagination .page-numbers.dots { border-color: transparent; background: none; }
:is(.post-type-archive-product, .tax-product_cat, .tax-product_tag) .ct-pagination a.page-numbers:hover { border-color: var(--spk-accent); color: var(--spk-ink); }
:is(.post-type-archive-product, .tax-product_cat, .tax-product_tag) .ct-pagination .page-numbers.current { border-color: var(--spk-cta); background: var(--spk-cta); color: var(--spk-white); font-weight: 700; }
:is(.post-type-archive-product, .tax-product_cat, .tax-product_tag) .ct-pagination .next { display: inline-flex; gap: .4em; padding-inline: 1em; font-weight: 700; }
/* odznaky Blocksy na fotke: Novinka a Akcia */
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag) li.product .ct-woo-badges > span {
	min-height: 0;
	padding: .2em .75em;
	border-radius: 999px;
	background: var(--spk-lime);
	color: var(--spk-ink);
	font-weight: 700;
	line-height: 1.3;
	box-shadow: 0 4px 10px -4px rgba(31, 77, 35, .4);
}
:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag) li.product .ct-woo-badges > .onsale { background: var(--spk-accent); }
/* kategória pod cenou v obchode ako malý štítok (v kategórii skrytá – sekcia 11b) */
.post-type-archive-product li.product .entry-meta { justify-content: center; margin: 0; padding: 0; list-style: none; }
.post-type-archive-product li.product .meta-categories a { position: relative; z-index: 2; color: var(--spk-muted); letter-spacing: .06em; text-decoration: none; text-transform: uppercase; }
.post-type-archive-product li.product .meta-categories a:hover { color: var(--spk-accent-d); }

/* sidebar: biela karta – hore tenký pás vo farbách loga, v rohu jemná limetková žiara (premenné Blocksy pre typ „boxed“) */
aside#sidebar[data-type="type-2"] {
	--sidebar-background-color:
		linear-gradient(90deg, var(--spk-primary), var(--spk-lime) 50%, var(--spk-accent)) top / 100% 4px no-repeat,
		radial-gradient(120% 45% at 100% 0%, rgba(216, 255, 191, .45), transparent 70%),
		radial-gradient(90% 35% at 0% 100%, rgba(255, 241, 214, .55), transparent 70%),
		var(--spk-white);
	--theme-border: 1px solid var(--spk-line);
	--theme-border-radius: var(--spk-r-lg);
	--theme-box-shadow: 0 1px 2px rgba(27, 42, 23, .04), 0 14px 32px -18px rgba(31, 77, 35, .3);
	--sidebar-inner-spacing: 24px;
}
#sidebar .widget-title { color: var(--spk-ink); }
#sidebar .widget-title::after { content: ""; display: block; width: 100%; height: 3px; margin-top: .5em; border-radius: 3px; background: linear-gradient(90deg, var(--spk-primary), var(--spk-lime) 50%, var(--spk-accent)); }  /* linka pod nadpisom: prechod na celú šírku */
/* kategórie: celý riadok klikateľný, počet vpravo, aktívna kategória so zelenou plochou a oranžovou linkou */
:is(#sidebar, #woo-filters-panel) .product-categories,
:is(#sidebar, #woo-filters-panel) .product-categories .children { display: grid; gap: 2px; margin: 0; padding: 0; list-style: none; }
:is(#sidebar, #woo-filters-panel) .product-categories .children { margin: 2px 0 4px .9em; padding-left: .5em; border-left: 1px solid var(--spk-line); }
:is(#sidebar, #woo-filters-panel) .product-categories li { position: relative; margin: 0; padding: 0; }
/* odkaz: ikona kategórie vľavo; pri hover sa zľava „rozleje“ svetlo, ikona sa nakloní a zafarbí do oranžova, text sa posunie */
:is(#sidebar, #woo-filters-panel) .product-categories li > a {
	position: relative;
	display: block;
	padding: .45em 3.6em .45em 2.3em;
	border-radius: var(--spk-r);
	background: linear-gradient(90deg, var(--spk-white) 55%, rgba(255, 255, 255, 0)) no-repeat 0 0 / 0% 100%;
	color: var(--spk-ink);
	line-height: 1.35;
	text-decoration: none;
	transition: background-size .45s var(--spk-ease), padding-left .35s var(--spk-ease), color .2s ease, box-shadow .3s ease;
}
:is(#sidebar, #woo-filters-panel) .product-categories li > a::before {
	content: "";
	position: absolute;
	left: .7em;
	top: calc(.45em + .1em);
	width: 1.15em;
	height: 1.15em;
	background: var(--spk-primary);
	-webkit-mask: var(--spk-cat-ic, var(--spk-leaf)) center / contain no-repeat;
	mask: var(--spk-cat-ic, var(--spk-leaf)) center / contain no-repeat;
	transition: transform .45s var(--spk-ease), background-color .2s ease;
}
:is(#sidebar, #woo-filters-panel) .product-categories li > .count {
	position: absolute;
	top: .45em;
	right: .75em;
	color: var(--spk-muted);
	font-variant-numeric: tabular-nums;
	pointer-events: none;
	transition: color .2s ease, transform .3s var(--spk-ease);
}
:is(#sidebar, #woo-filters-panel) .product-categories li > a:hover,
:is(#sidebar, #woo-filters-panel) .product-categories li > a:focus-visible { padding-left: 2.55em; background-size: 100% 100%; color: var(--spk-primary-d); }
:is(#sidebar, #woo-filters-panel) .product-categories li > a:hover::before,
:is(#sidebar, #woo-filters-panel) .product-categories li > a:focus-visible::before { background: var(--spk-accent); transform: translateX(3px) rotate(-12deg) scale(1.18); }
:is(#sidebar, #woo-filters-panel) .product-categories li:has(> a:hover) > .count { color: var(--spk-accent-d); transform: translateX(-2px); }
/* aktívna kategória: tmavozelená „kapsula“ s limetkovým lístkom a počtom – jasne odlíšená od hover */
:is(#sidebar, #woo-filters-panel) .product-categories .current-cat > a {
	padding-left: 2.55em;
	background: linear-gradient(135deg, var(--spk-primary-dd), var(--spk-primary-d));
	box-shadow: 0 10px 20px -12px rgba(31, 77, 35, .7), inset 0 1px 0 rgba(255, 255, 255, .12);
	color: var(--spk-white);
	font-weight: 700;
}
:is(#sidebar, #woo-filters-panel) .product-categories .current-cat > a::before { background: var(--spk-lime); transform: translateX(3px); }
:is(#sidebar, #woo-filters-panel) .product-categories .current-cat > .count { color: var(--spk-lime); font-weight: 700; }
/* aktívna + hover: text ostáva biely, kapsula sa rozžiari a lístok sa pohne (hover pravidlá vyššie ju nesmú prebiť) */
:is(#sidebar, #woo-filters-panel) .product-categories .current-cat > a:hover,
:is(#sidebar, #woo-filters-panel) .product-categories .current-cat > a:focus-visible {
	padding-left: 2.55em;
	background: linear-gradient(135deg, var(--spk-primary-d), var(--spk-primary));
	box-shadow: 0 14px 26px -12px rgba(31, 77, 35, .8), inset 0 1px 0 rgba(255, 255, 255, .18);
	color: var(--spk-white);
}
:is(#sidebar, #woo-filters-panel) .product-categories .current-cat > a:hover::before,
:is(#sidebar, #woo-filters-panel) .product-categories .current-cat > a:focus-visible::before { background: var(--spk-lime); transform: translateX(3px) rotate(-14deg) scale(1.18); }
:is(#sidebar, #woo-filters-panel) .product-categories .current-cat:has(> a:hover) > .count,
:is(#sidebar, #woo-filters-panel) .product-categories .current-cat:has(> a:focus-visible) > .count { color: var(--spk-lime); transform: none; }
:is(#sidebar, #woo-filters-panel) .product-categories .current-cat-parent > a { font-weight: 700; }
:is(#sidebar, #woo-filters-panel) .product-categories .current-cat-parent > a::before { background: var(--spk-primary-d); }
html :is(#sidebar, #woo-filters-panel) .product-categories,
html :is(#sidebar, #woo-filters-panel) .product-categories :is(li, li > a) { font-size: 18px; }  /* väčšie písmo kategórií (Blocksy dáva menšie priamo na odkaz) */
html :is(#sidebar, #woo-filters-panel) .product-categories .count { font-size: 15px; }
/* ikony kategórií (podľa ID kategórie – nemení sa ani pri premenovaní) */
:is(#sidebar, #woo-filters-panel) .product-categories .cat-item-23 { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 3c3.5 4.2 6 7.6 6 10.5a6 6 0 0 1-12 0C6 10.6 8.5 7.2 12 3z%22/%3E%3Cpath d=%22M9.5 14.5A2.5 2.5 0 0 0 12 17%22/%3E%3C/svg%3E"); }
:is(#sidebar, #woo-filters-panel) .product-categories .cat-item-20 { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M5.5 10h8v10a1.5 1.5 0 0 1-1.5 1.5H7A1.5 1.5 0 0 1 5.5 20z%22/%3E%3Cpath d=%22M7.5 10V7h4v3%22/%3E%3Cpath d=%22M7 4h5%22/%3E%3Cpath d=%22M16.5 9c1.4-1.4-.8-2.4.6-3.8M19.5 12.5c1.4-1.4-.8-2.4.6-3.8M16.5 16c1.4-1.4-.8-2.4.6-3.8%22/%3E%3C/svg%3E"); }
:is(#sidebar, #woo-filters-panel) .product-categories .cat-item-21 { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M8.5 5c2.3 2.8 4 5 4 7a4 4 0 0 1-8 0c0-2 1.7-4.2 4-7z%22/%3E%3Cpath d=%22M15.5 9.5c2 2.4 3.5 4.3 3.5 6a3.5 3.5 0 0 1-6.2 2.2%22/%3E%3C/svg%3E"); }
:is(#sidebar, #woo-filters-panel) .product-categories .cat-item-27 { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 2.5l4.5 5.5h-2.7l4 5h-2.6l4.3 5.5H4.5L8.8 13H6.2l4-5H7.5z%22/%3E%3Cpath d=%22M12 18.5V22%22/%3E%3C/svg%3E"); }
:is(#sidebar, #woo-filters-panel) .product-categories .cat-item-123 { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect x=%223.5%22 y=%229%22 width=%2217%22 height=%2211.5%22 rx=%221.5%22/%3E%3Cpath d=%22M2.5 9h19M12 9v11.5%22/%3E%3Cpath d=%22M12 9C10 5 6.5 4.8 6.5 7s3 2 5.5 2zm0 0c2-4 5.5-4.2 5.5-2s-3 2-5.5 2z%22/%3E%3C/svg%3E"); }
:is(#sidebar, #woo-filters-panel) .product-categories .cat-item-40 { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M8 3L3 6.5 5.2 10 7 9v12h10V9l1.8 1L21 6.5 16 3a4 4 0 0 1-8 0z%22/%3E%3C/svg%3E"); }
:is(#sidebar, #woo-filters-panel) .product-categories .cat-item-22 { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M3 12h18v2.5a5 5 0 0 1-5 5H8a5 5 0 0 1-5-5z%22/%3E%3Cpath d=%22M6 12V5.5a2 2 0 0 1 3.6-1.2%22/%3E%3Cpath d=%22M7 19.5L6 21.5M17 19.5l1 2%22/%3E%3C/svg%3E"); }
:is(#sidebar, #woo-filters-panel) .product-categories .cat-item-46 { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M6 21h12l-1.5-8h-9z%22/%3E%3Cpath d=%22M8.5 13a3.5 3.5 0 0 1 7 0%22/%3E%3Cpath d=%22M10 8.5c-1-1.3 1-2.2 0-3.5M14 8.5c-1-1.3 1-2.2 0-3.5%22/%3E%3C/svg%3E"); }
:is(#sidebar, #woo-filters-panel) .product-categories .cat-item-24 { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M5 9h14l-1.5 4a5.5 5.5 0 0 1-11 0z%22/%3E%3Cpath d=%22M7 21h10M9 21v-3.5M15 21v-3.5%22/%3E%3Cpath d=%22M12 2.5c1.3 1.5 1.8 2.6 1.8 3.4a1.8 1.8 0 0 1-3.6 0c0-.8.5-1.9 1.8-3.4z%22/%3E%3C/svg%3E"); }
:is(#sidebar, #woo-filters-panel) .product-categories .cat-item-33 { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M8 12h8v8a1.5 1.5 0 0 1-1.5 1.5h-5A1.5 1.5 0 0 1 8 20z%22/%3E%3Cpath d=%22M10 12v-2h4v2%22/%3E%3Cpath d=%22M11 10L8 2.5M12 10V2M13 10l3-7.5%22/%3E%3C/svg%3E"); }
:is(#sidebar, #woo-filters-panel) .product-categories .cat-item-32 { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M4 20L15 9%22/%3E%3Cpath d=%22M3 21h18%22/%3E%3Cpath d=%22M17 7c1.5-1.5-.5-2.5 1-4M20 8.5c1.2-1.2-.4-2 .8-3.2%22/%3E%3C/svg%3E"); }
:is(#sidebar, #woo-filters-panel) .product-categories .cat-item-26 { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect x=%228%22 y=%2210%22 width=%228%22 height=%2211%22 rx=%221.5%22/%3E%3Cpath d=%22M12 10V8%22/%3E%3Cpath d=%22M12 2.5c1.4 1.6 2 2.8 2 3.6a2 2 0 0 1-4 0c0-.8.6-2 2-3.6z%22/%3E%3C/svg%3E"); }
:is(#sidebar, #woo-filters-panel) .product-categories .cat-item-29 { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M4.5 13.5l1.7-5A2 2 0 0 1 8.1 7h7.8a2 2 0 0 1 1.9 1.5l1.7 5%22/%3E%3Cpath d=%22M3 16a2.5 2.5 0 0 1 2.5-2.5h13A2.5 2.5 0 0 1 21 16v2.5H3z%22/%3E%3Cpath d=%22M5.5 18.5v2M18.5 18.5v2M7 16h.01M17 16h.01%22/%3E%3C/svg%3E"); }
:is(#sidebar, #woo-filters-panel) .product-categories .cat-item-31 { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M6 4h12v3H6z%22/%3E%3Cpath d=%22M7 7h10v2.5c1.5.8 2 2 2 3.5v5.5a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V13c0-1.5.5-2.7 2-3.5z%22/%3E%3Cpath d=%22M9 15h.01M12 13.5h.01M15 16h.01M11 17.5h.01%22/%3E%3C/svg%3E"); }
:is(#sidebar, #woo-filters-panel) .product-categories .cat-item-28 { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M3 12V4a1 1 0 0 1 1-1h8l9 9-9 9z%22/%3E%3Ccircle cx=%227.5%22 cy=%227.5%22 r=%221.5%22/%3E%3C/svg%3E"); }
#woo-filters-panel .ct-filter-control:is([data-filter-value="23"], [data-filter-value="esencialne-oleje"]) { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 3c3.5 4.2 6 7.6 6 10.5a6 6 0 0 1-12 0C6 10.6 8.5 7.2 12 3z%22/%3E%3Cpath d=%22M9.5 14.5A2.5 2.5 0 0 0 12 17%22/%3E%3C/svg%3E"); }
#woo-filters-panel .ct-filter-control:is([data-filter-value="20"], [data-filter-value="vonne-oleje"]) { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M5.5 10h8v10a1.5 1.5 0 0 1-1.5 1.5H7A1.5 1.5 0 0 1 5.5 20z%22/%3E%3Cpath d=%22M7.5 10V7h4v3%22/%3E%3Cpath d=%22M7 4h5%22/%3E%3Cpath d=%22M16.5 9c1.4-1.4-.8-2.4.6-3.8M19.5 12.5c1.4-1.4-.8-2.4.6-3.8M16.5 16c1.4-1.4-.8-2.4.6-3.8%22/%3E%3C/svg%3E"); }
#woo-filters-panel .ct-filter-control:is([data-filter-value="21"], [data-filter-value="zmesi-eterickych-a-vonnych-olejov"]) { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M8.5 5c2.3 2.8 4 5 4 7a4 4 0 0 1-8 0c0-2 1.7-4.2 4-7z%22/%3E%3Cpath d=%22M15.5 9.5c2 2.4 3.5 4.3 3.5 6a3.5 3.5 0 0 1-6.2 2.2%22/%3E%3C/svg%3E"); }
#woo-filters-panel .ct-filter-control:is([data-filter-value="27"], [data-filter-value="vianocne-oleje"]) { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 2.5l4.5 5.5h-2.7l4 5h-2.6l4.3 5.5H4.5L8.8 13H6.2l4-5H7.5z%22/%3E%3Cpath d=%22M12 18.5V22%22/%3E%3C/svg%3E"); }
#woo-filters-panel .ct-filter-control:is([data-filter-value="123"], [data-filter-value="darcekove-sady-olejov"]) { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect x=%223.5%22 y=%229%22 width=%2217%22 height=%2211.5%22 rx=%221.5%22/%3E%3Cpath d=%22M2.5 9h19M12 9v11.5%22/%3E%3Cpath d=%22M12 9C10 5 6.5 4.8 6.5 7s3 2 5.5 2zm0 0c2-4 5.5-4.2 5.5-2s-3 2-5.5 2z%22/%3E%3C/svg%3E"); }
#woo-filters-panel .ct-filter-control:is([data-filter-value="40"], [data-filter-value="oleje-do-prania"]) { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M8 3L3 6.5 5.2 10 7 9v12h10V9l1.8 1L21 6.5 16 3a4 4 0 0 1-8 0z%22/%3E%3C/svg%3E"); }
#woo-filters-panel .ct-filter-control:is([data-filter-value="22"], [data-filter-value="oleje-do-kupela-a-saun"]) { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M3 12h18v2.5a5 5 0 0 1-5 5H8a5 5 0 0 1-5-5z%22/%3E%3Cpath d=%22M6 12V5.5a2 2 0 0 1 3.6-1.2%22/%3E%3Cpath d=%22M7 19.5L6 21.5M17 19.5l1 2%22/%3E%3C/svg%3E"); }
#woo-filters-panel .ct-filter-control:is([data-filter-value="46"], [data-filter-value="elektricke-difuzery-za-super-cenu"]) { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M6 21h12l-1.5-8h-9z%22/%3E%3Cpath d=%22M8.5 13a3.5 3.5 0 0 1 7 0%22/%3E%3Cpath d=%22M10 8.5c-1-1.3 1-2.2 0-3.5M14 8.5c-1-1.3 1-2.2 0-3.5%22/%3E%3C/svg%3E"); }
#woo-filters-panel .ct-filter-control:is([data-filter-value="24"], [data-filter-value="keramicke-aromalampy"]) { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M5 9h14l-1.5 4a5.5 5.5 0 0 1-11 0z%22/%3E%3Cpath d=%22M7 21h10M9 21v-3.5M15 21v-3.5%22/%3E%3Cpath d=%22M12 2.5c1.3 1.5 1.8 2.6 1.8 3.4a1.8 1.8 0 0 1-3.6 0c0-.8.5-1.9 1.8-3.4z%22/%3E%3C/svg%3E"); }
#woo-filters-panel .ct-filter-control:is([data-filter-value="33"], [data-filter-value="vonne-difuzery"]) { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M8 12h8v8a1.5 1.5 0 0 1-1.5 1.5h-5A1.5 1.5 0 0 1 8 20z%22/%3E%3Cpath d=%22M10 12v-2h4v2%22/%3E%3Cpath d=%22M11 10L8 2.5M12 10V2M13 10l3-7.5%22/%3E%3C/svg%3E"); }
#woo-filters-panel .ct-filter-control:is([data-filter-value="32"], [data-filter-value="vonne-tycinky"]) { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M4 20L15 9%22/%3E%3Cpath d=%22M3 21h18%22/%3E%3Cpath d=%22M17 7c1.5-1.5-.5-2.5 1-4M20 8.5c1.2-1.2-.4-2 .8-3.2%22/%3E%3C/svg%3E"); }
#woo-filters-panel .ct-filter-control:is([data-filter-value="26"], [data-filter-value="sviecky-a-knoty"]) { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect x=%228%22 y=%2210%22 width=%228%22 height=%2211%22 rx=%221.5%22/%3E%3Cpath d=%22M12 10V8%22/%3E%3Cpath d=%22M12 2.5c1.4 1.6 2 2.8 2 3.6a2 2 0 0 1-4 0c0-.8.6-2 2-3.6z%22/%3E%3C/svg%3E"); }
#woo-filters-panel .ct-filter-control:is([data-filter-value="29"], [data-filter-value="vone-do-auta"]) { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M4.5 13.5l1.7-5A2 2 0 0 1 8.1 7h7.8a2 2 0 0 1 1.9 1.5l1.7 5%22/%3E%3Cpath d=%22M3 16a2.5 2.5 0 0 1 2.5-2.5h13A2.5 2.5 0 0 1 21 16v2.5H3z%22/%3E%3Cpath d=%22M5.5 18.5v2M18.5 18.5v2M7 16h.01M17 16h.01%22/%3E%3C/svg%3E"); }
#woo-filters-panel .ct-filter-control:is([data-filter-value="31"], [data-filter-value="kupelove-soli"]) { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M6 4h12v3H6z%22/%3E%3Cpath d=%22M7 7h10v2.5c1.5.8 2 2 2 3.5v5.5a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V13c0-1.5.5-2.7 2-3.5z%22/%3E%3Cpath d=%22M9 15h.01M12 13.5h.01M15 16h.01M11 17.5h.01%22/%3E%3C/svg%3E"); }
#woo-filters-panel .ct-filter-control:is([data-filter-value="28"], [data-filter-value="podpora-predaja"]) { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M3 12V4a1 1 0 0 1 1-1h8l9 9-9 9z%22/%3E%3Ccircle cx=%227.5%22 cy=%227.5%22 r=%221.5%22/%3E%3C/svg%3E"); }

/* =========================================================
   11f) POPIS KATEGÓRIE HORE (pôvodný popis Blocksy v hlavičke archívu – .page-description)
        teplá karta ako sidebar, odrážky s lístkom; dlhý popis sa zbalí na pár riadkov + „Čítať viac“ (snippet spk-popis-zbalenie.php)
   ========================================================= */
:is(.tax-product_cat, .tax-product_tag) .page-description {
	position: relative;
	display: block;
	box-sizing: border-box;
	width: 100%;
	max-width: none;
	margin-inline: 0;
	margin-top: 1.2em;
	text-align: start;
	padding: clamp(20px, 2.6vw, 32px);
	overflow: hidden;
	border: 1px solid #EAE4C4;
	border-radius: var(--spk-r-lg);
	background: linear-gradient(160deg, #F6F3DF, #FBFAF1 60%);
	color: #3F4D3A;
}
:is(.tax-product_cat, .tax-product_tag) .page-description::after {
	content: "";
	position: absolute;
	right: -2em;
	bottom: -2.5em;
	width: 12em;
	height: 12em;
	background: var(--spk-primary);
	opacity: .07;
	-webkit-mask: var(--spk-leaf) center / contain no-repeat;
	mask: var(--spk-leaf) center / contain no-repeat;
	transform: rotate(-16deg);
	pointer-events: none;
}
:is(.tax-product_cat, .tax-product_tag) .page-description > * { position: relative; z-index: 1; max-width: 75ch; margin: 0; }
:is(.tax-product_cat, .tax-product_tag) .page-description > * + * { margin-top: 1em; }  /* medzery medzi odsekmi nezávisle od štýlov Blocksy */
:is(.tax-product_cat, .tax-product_tag) .page-description :is(h2, h3) { color: var(--spk-ink); }
:is(.tax-product_cat, .tax-product_tag) .page-description :is(h2, h3)::after { content: ""; display: block; width: 2.5em; height: 3px; margin-top: .45em; border-radius: 3px; background: linear-gradient(90deg, var(--spk-primary), var(--spk-accent)); }
:is(.tax-product_cat, .tax-product_tag) .page-description a { color: var(--spk-primary-d); text-decoration: underline; text-underline-offset: 3px; }
:is(.tax-product_cat, .tax-product_tag) .page-description ul { display: grid; gap: .5em; padding: 0; list-style: none; }
:is(.tax-product_cat, .tax-product_tag) .page-description li { position: relative; padding-left: 1.7em; }
:is(.tax-product_cat, .tax-product_tag) .page-description li::before {
	content: "";
	position: absolute;
	left: 0;
	top: .2em;
	width: 1.15em;
	height: 1.15em;
	background: var(--spk-primary);
	-webkit-mask: var(--spk-leaf) center / contain no-repeat;
	mask: var(--spk-leaf) center / contain no-repeat;
}
/* zbalenie: text ostáva v HTML (SEO), viditeľných je pár riadkov s jemným zánikom */
.spk-popis__telo { max-height: 7.4em; overflow: hidden; -webkit-mask-image: linear-gradient(#000 45%, transparent); mask-image: linear-gradient(#000 45%, transparent); transition: max-height .55s var(--spk-ease); }
.spk-popis__telo > * { margin: 0; }
.spk-popis__telo > * + * { margin-top: 1em; }
.is-open > .spk-popis__telo,
.is-kratky > .spk-popis__telo { -webkit-mask-image: none; mask-image: none; }
.is-kratky > .spk-popis__telo { max-height: none; }
.spk-sec .spk-popis__viac,
.page-description .spk-popis__viac {
	display: inline-flex;
	align-items: center;
	gap: .5em;
	min-height: 0;
	margin-top: .6em;
	padding: .45em 1em;
	border: 1px solid #EAE4C4;
	border-radius: 999px;
	background: var(--spk-white);
	color: var(--spk-primary-d);
	font-weight: 700;
	line-height: 1.2;
	font: inherit;  /* písmo z témy */
	font-weight: 700;
	cursor: pointer;
	transition: border-color .2s ease, color .2s ease, background-color .2s ease;
}
.page-description .spk-popis__viac::after {
	content: "";
	width: .9em;
	height: .9em;
	background: currentColor;
	-webkit-mask: var(--spk-chev) center / contain no-repeat;
	mask: var(--spk-chev) center / contain no-repeat;
	transform: rotate(90deg);
	transition: transform .35s var(--spk-ease);
}
.page-description .spk-popis__viac[aria-expanded="true"]::after { transform: rotate(-90deg); }
.page-description .spk-popis__viac:hover,
.page-description .spk-popis__viac:focus-visible { border-color: var(--spk-accent); background: var(--spk-white); color: var(--spk-accent-d); }
@media (prefers-reduced-motion: reduce) { .spk-popis__telo, .page-description .spk-popis__viac::after { transition: none; } }

/* =========================================================
   11e) VYHĽADÁVANIE BLOCKSY (sidebar, hlavička, mobilné menu) – okrem celoobrazovkového #search-modal
        biele pole 52px, jemný tieň, zelené tlačidlo s lupou vnútri poľa; farby cez premenné Blocksy
   ========================================================= */
.ct-search-form:not(#search-modal .ct-search-form) {
	--theme-form-field-height: 52px;
	--theme-form-field-border-radius: var(--spk-r);
	--theme-form-field-border-initial-color: var(--spk-line);
	--theme-form-field-border-focus-color: var(--spk-primary);
	--theme-form-field-background-initial-color: var(--spk-white);
	--theme-form-field-background-focus-color: var(--spk-white);
	--theme-form-text-initial-color: var(--spk-ink);
	--theme-form-text-focus-color: var(--spk-ink);
}
.ct-search-form:not(#search-modal .ct-search-form) .ct-search-form-inner {
	align-items: center;
	border-radius: var(--spk-r);
	box-shadow: 0 1px 2px rgba(27, 42, 23, .04), 0 8px 20px -14px rgba(31, 77, 35, .4);
	transition: border-color .2s ease, box-shadow .2s ease;
}
.ct-search-form:not(#search-modal .ct-search-form) .ct-search-form-inner:focus-within { box-shadow: 0 0 0 3px rgba(92, 153, 59, .22); }
.ct-search-form:not(#search-modal .ct-search-form) input[type="search"] { padding-inline: 16px 8px; }
.ct-search-form:not(#search-modal .ct-search-form) input[type="search"]::placeholder { color: #4A5A44; opacity: 1; }
.ct-search-form:not(#search-modal .ct-search-form) .wp-element-button {
	--theme-icon-color: currentColor;
	--theme-icon-size: 17px;
	box-sizing: border-box;
	align-self: center;
	width: 42px;
	height: 42px;
	min-height: 0;
	margin: 0 5px 0 0;
	padding: 0;
	border: 0;
	border-radius: calc(var(--spk-r) - 4px);
	background-color: var(--spk-cta);
	color: var(--spk-white);
	box-shadow: none;
	transition: background-color .2s ease, color .2s ease;
}
.ct-search-form:not(#search-modal .ct-search-form) .wp-element-button svg { fill: currentColor; }
.ct-search-form:not(#search-modal .ct-search-form) .wp-element-button:hover,
.ct-search-form:not(#search-modal .ct-search-form) .wp-element-button:focus-visible { background-color: var(--spk-accent); color: var(--spk-ink); }

/* =========================================================
   11c) PÄTIČKA – pás s formulárom (Elementor Form, CSS trieda sekcie „spk-ftcta“) + pätička v jednom HTML widgete
        !important iba pri vlastnostiach, ktoré Elementor vypisuje s vysokou špecificitou z nastavení widgetu
   ========================================================= */
.spk-ftcta {
	position: relative;
	overflow: clip;
	background: linear-gradient(100deg, var(--spk-lime) 0%, var(--spk-moss) 48%, var(--spk-sun) 100%) !important;
}
.spk-ftcta > * { position: relative; z-index: 1; }
/* rozloženie pre Flexbox (Elementor 4): 2 stĺpce 40 % / 60 % (nadpis | formulár), obsah zarovnaný so šírkou Blocksy;
   !important pri display a stĺpcoch – Flexbox má vlastné lokálne štýly rozloženia */
.spk-ftcta.spk-ftcta {
	display: grid !important;
	grid-template-columns: minmax(0, 2fr) minmax(0, 3fr) !important;
	align-items: center;
	gap: 16px 40px;
	padding: clamp(20px, 3vw, 32px) calc((100% - min(var(--spk-width), var(--spk-max))) / 2);
}
.spk-ftcta.spk-ftcta > * { width: auto; max-width: none; margin: 0; }
.spk-ftcta .elementor-heading-title { color: var(--spk-ink) !important; }
.spk-ftcta .elementor-field-group { margin-bottom: 0; }
.spk-ftcta .elementor-field-textual {
	box-sizing: border-box;
	height: 52px !important;
	min-height: 0;
	padding: 0 1.1em !important;
	border: 1px solid rgba(31, 77, 35, .18) !important;
	border-radius: 10px !important;
	background: var(--spk-white) !important;
	color: var(--spk-ink) !important;
	box-shadow: 0 6px 16px -10px rgba(31, 77, 35, .45);
	transition: border-color .2s ease, box-shadow .2s ease;
}
.spk-ftcta .elementor-field-textual::placeholder { color: #3F4D3A !important; opacity: 1; }  /* tmavší popis v poli (kontrast 9 : 1) */
.spk-ftcta .elementor-field-textual:focus { border-color: var(--spk-primary) !important; box-shadow: 0 0 0 3px rgba(92, 153, 59, .28); outline: 0; }
.spk-ftcta .elementor-button {
	box-sizing: border-box;
	width: 100%;
	height: 52px;
	min-height: 0;
	padding: 0 1.4em !important;
	border-radius: var(--spk-r-btn) !important;
	background: var(--spk-sheen) 160% 0 / 250% 100% no-repeat, var(--spk-btn-grad) 0 0 / 300% 100% no-repeat, var(--spk-primary-dd) !important;  /* rovnaké ako tlačidlá na celom webe (sekcia 4b) */
	text-shadow: 0 1px 2px rgba(0, 0, 0, .25);
	color: var(--spk-white) !important;
	font-weight: 700;
	box-shadow: 0 10px 22px -12px rgba(31, 77, 35, .8);
	transition: background-position .7s cubic-bezier(.4, 0, .2, 1), color .3s ease, transform .25s var(--spk-ease), box-shadow .3s ease;
}
.spk-ftcta .elementor-field-group { align-self: center; }
.spk-ftcta .elementor-button:hover,
.spk-ftcta .elementor-button:focus-visible { background-position: -60% 0, 100% 0 !important; color: var(--spk-primary-dd) !important; text-shadow: none; box-shadow: inset 0 0 0 2px var(--spk-primary), 0 14px 26px -14px rgba(31, 77, 35, .55);  /* zelený rám pri hover (vnútorný – tlačidlo neposkočí) */ transform: translateY(-2px); }
.spk-ftcta .elementor-button svg { fill: currentColor; }

/* pätička: lesná tmavá (logo na nej svieti), svetlá v rohoch, linka vo farbách loga, veľký lístok */
.spk-sec.spk-foot {
	--spk-bg: #10241A;
	--spk-fg: #CFE0C6;
	--spk-muted: #A9C1A0;
	--spk-glassy: rgba(255, 255, 255, .05);
	padding-block: clamp(48px, 6vw, 80px) 0;
	overflow: clip;
}
.spk-foot::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		linear-gradient(90deg, var(--spk-primary), var(--spk-accent)) top / 100% 3px no-repeat,
		radial-gradient(40% 60% at 8% 0%, rgba(92, 153, 59, .28), transparent 70%),
		radial-gradient(35% 55% at 100% 100%, rgba(247, 151, 21, .14), transparent 70%);
	pointer-events: none;
}
.spk-foot::after {
	content: "";
	position: absolute;
	right: -3em;
	bottom: -4em;
	width: 22em;
	height: 22em;
	background: var(--spk-white);
	opacity: .04;
	-webkit-mask: var(--spk-leaf) center / contain no-repeat;
	mask: var(--spk-leaf) center / contain no-repeat;
	transform: rotate(-18deg);
	pointer-events: none;
}
.spk-foot .spk-in { position: relative; z-index: 1; }
.spk-foot__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr) minmax(0, 1.1fr);
	gap: clamp(32px, 5vw, 72px);
	padding-bottom: clamp(36px, 5vw, 56px);
}
.spk-foot__grid > * { display: grid; align-content: start; gap: 1em; }
.spk-foot__logo img { width: min(15em, 100%); }
.spk-foot__brand p { line-height: 1.6; }
.spk-foot__brand p strong { color: var(--spk-white); font-weight: 700; }
.spk-foot__h { color: var(--spk-accent); font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.spk-foot__h::after { content: ""; display: block; width: 2.5em; height: 2px; margin-top: .55em; border-radius: 2px; background: linear-gradient(90deg, var(--spk-accent), transparent); }
/* kontakt: veľké dlaždice – celé sú odkaz (pohodlné ťuknutie na mobile) */
.spk-foot__contact { display: grid; grid-auto-rows: 1fr; gap: .75em; }  /* všetky dlaždice rovnako vysoké */
.spk-sec .spk-foot__contact a {
	display: flex;
	align-items: center;
	gap: .9em;
	height: 100%;
	padding: .75em 1em;
	border: 1px solid var(--spk-sline);
	border-radius: var(--spk-r-lg);
	background: var(--spk-glassy);
	color: var(--spk-muted);
	line-height: 1.3;
	text-decoration: none;
	transition: border-color .25s ease, background-color .25s ease, transform .3s var(--spk-ease);
}
.spk-sec .spk-foot__contact a:hover,
.spk-sec .spk-foot__contact a:focus-visible { border-color: var(--spk-accent); background: rgba(255, 255, 255, .09); transform: translateX(4px); }
.spk-foot__contact strong { display: block; color: var(--spk-white); font-weight: 700; overflow-wrap: anywhere; }
.spk-foot__contact .spk-ibox { width: 2.75em; height: 2.75em; background: linear-gradient(145deg, var(--spk-primary), var(--spk-leaf-d)); color: var(--spk-white); }
.spk-foot__contact .spk-ic { width: 1.2em; height: 1.2em; }
/* právne odkazy so šípkou */
.spk-foot__links { display: grid; gap: .45em; }
.spk-sec .spk-foot__links a { display: inline-flex; gap: .55em; color: var(--spk-fg); line-height: 1.4; text-decoration: none; transition: color .2s ease, transform .25s var(--spk-ease); }
.spk-foot__links a::before {
	content: "";
	flex: none;
	width: .9em;
	height: .9em;
	margin-top: .28em;
	background: var(--spk-primary);
	-webkit-mask: var(--spk-chev) center / contain no-repeat;
	mask: var(--spk-chev) center / contain no-repeat;
	transition: background-color .2s ease;
}
.spk-sec .spk-foot__links a:hover,
.spk-sec .spk-foot__links a:focus-visible { color: var(--spk-white); transform: translateX(3px); }
.spk-foot__links a:hover::before { background: var(--spk-accent); }
.spk-sec .spk-btn.spk-foot__cta { justify-self: start; margin-top: .4em; background: var(--spk-accent); color: var(--spk-ink); }
.spk-sec .spk-btn.spk-foot__cta:hover,
.spk-sec .spk-btn.spk-foot__cta:focus-visible { background: var(--spk-white); color: var(--spk-ink); }
/* rýchle odkazy (obchod, košík, účet, kontrola objednávky) a karta pre firmy */
.spk-foot__quick { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .6em; margin-top: .3em; }  /* 3 rovnaké dlaždice, ikona nad textom */
.spk-sec .spk-foot__quick a {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: .4em;
	height: 100%;
	padding: .8em .5em;
	text-align: center;
	border: 1px solid var(--spk-sline);
	border-radius: var(--spk-r-lg);
	background: var(--spk-glassy);
	color: var(--spk-fg);
	font-weight: 700;
	line-height: 1.25;
	text-decoration: none;
	transition: border-color .25s ease, background-color .25s ease, color .25s ease;
}
.spk-foot__quick .spk-ic { width: 1.5em; height: 1.5em; color: var(--spk-primary); transition: color .25s ease; }
.spk-sec .spk-foot__quick a:hover,
.spk-sec .spk-foot__quick a:focus-visible { border-color: var(--spk-accent); background: rgba(255, 255, 255, .09); color: var(--spk-white); }
.spk-foot__quick a:hover .spk-ic { color: var(--spk-accent); }
.spk-sec .spk-foot__contact a.spk-foot__b2b {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: .9em;
	height: 100%;
	padding: .75em 1em;
	border: 1px solid rgba(247, 151, 21, .45);
	border-radius: var(--spk-r-lg);
	background: linear-gradient(135deg, rgba(247, 151, 21, .2), rgba(92, 153, 59, .16));
	color: var(--spk-muted);
	line-height: 1.3;
	text-decoration: none;
	transition: border-color .25s ease, transform .3s var(--spk-ease);
}
.spk-foot__b2b strong { display: block; color: var(--spk-white); font-weight: 700; }
.spk-foot__b2b .spk-ibox { width: 2.75em; height: 2.75em; background: var(--spk-accent); color: var(--spk-ink); }
.spk-foot__b2b .spk-ibox .spk-ic { width: 1.25em; height: 1.25em; }
.spk-foot__b2b > .spk-ic { width: 1.2em; height: 1.2em; color: var(--spk-accent); transition: transform .3s var(--spk-ease); }
.spk-sec .spk-foot__contact a.spk-foot__b2b:hover,
.spk-sec .spk-foot__contact a.spk-foot__b2b:focus-visible { border-color: var(--spk-accent); background: linear-gradient(135deg, rgba(247, 151, 21, .28), rgba(92, 153, 59, .2)); }
.spk-foot__b2b:hover > .spk-ic { transform: translateX(4px); }
/* NAP: názov a sídlo · identifikačné údaje · prevádzka (rovnaké údaje ako v Google profile a schéme) */
.spk-foot__nap {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	padding-block: 1.6em;
	border-top: 1px solid var(--spk-sline);
	font-style: normal;
}
.spk-foot__nap > div { display: flex; gap: .9em; padding-inline: clamp(16px, 2.5vw, 36px); line-height: 1.55; }
.spk-foot__nap > div:first-child { padding-left: 0; }
.spk-foot__nap > div + div { border-left: 1px solid var(--spk-sline); }
.spk-foot__nap .spk-ic { width: 1.4em; height: 1.4em; margin-top: .1em; color: var(--spk-accent); }
.spk-foot__nap strong { display: block; color: var(--spk-white); font-weight: 700; }
.spk-foot__nap dl { display: grid; grid-template-columns: auto 1fr; gap: .1em 1em; }
.spk-foot__nap dt { color: var(--spk-muted); }
.spk-foot__nap dd { margin: 0; color: var(--spk-white); font-variant-numeric: tabular-nums; }
.spk-foot__nap small { display: block; margin-top: .35em; color: var(--spk-muted); }
/* spodná lišta */
.spk-foot__bar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: .5em 2em;
	padding-block: 1.25em;
	border-top: 1px solid var(--spk-sline);
	color: var(--spk-muted);
}
.spk-foot .spk-foot__bar p a:not([class]) { color: var(--spk-muted); text-decoration: none; transition: color .2s ease; }
.spk-foot .spk-foot__bar p a:not([class]):hover { color: var(--spk-lime); }

/* podpis autora webu: popis ako text, odkaz iba na značku (žiadne kľúčové slová v anchore) */
.spk-foot__credit { display: inline-flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: .3em .6em; }
.spk-foot .spk-foot__bar p.spk-foot__credit a {
	display: inline-flex;
	align-items: center;
	gap: .55em;
	padding: .25em .85em .25em .25em;
	border: 1px solid var(--spk-sline);
	border-radius: 999px;
	background: var(--spk-glassy);
	color: var(--spk-white);
	font-weight: 700;
	text-decoration: none;
	transition: border-color .25s ease, background-color .25s ease;
}
/* monogram – po dodaní loga ho nahradí SVG značka */
.spk-foot__credit a::before {
	content: "JS";
	display: grid;
	place-items: center;
	width: 2em;
	height: 2em;
	border-radius: 50%;
	background: linear-gradient(145deg, var(--spk-primary), var(--spk-accent));
	color: var(--spk-ink);
	font-size: .75em;
	font-weight: 800;
	letter-spacing: .02em;
}
.spk-foot .spk-foot__bar p.spk-foot__credit a:hover,
.spk-foot .spk-foot__bar p.spk-foot__credit a:focus-visible { border-color: var(--spk-accent); background: rgba(255, 255, 255, .09); color: var(--spk-white); }

/* =========================================================
   11g) COOKIE LIŠTA BLOCKSY (.cookie-notification, typ „type-2“) – iba štandardné triedy Blocksy
        plávajúca tmavá karta z farieb pätičky; ikona sušienky s odhryznutým rohom, tenká linka zelená → oranžová;
        obe tlačidlá rovnako veľké a viditeľné (odmietnutie nesmie byť skryté – GDPR / usmernenie EDPB)
   ========================================================= */
.cookie-notification.cookie-notification[data-type] {
	--spk-cookie: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231F4D23' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke-width='1.8' d='M21 12.4A9 9 0 1 1 11.6 3a3 3 0 0 0 3.4 3.6 3 3 0 0 0 3.6 3.4 3 3 0 0 0 2.4 2.4z'/%3E%3Cpath stroke-width='2.8' d='M8.5 8.8h.01M15.6 15.2h.01M9.8 15.6h.01M12.2 11.8h.01M7.4 12.8h.01'/%3E%3C/svg%3E");
	position: fixed;  /* nezávisle od poradia načítania CSS Blocksy */
	z-index: 999999;
	padding: 0;
	left: 16px;
	right: 16px;
	bottom: max(16px, env(safe-area-inset-bottom));
	max-width: min(1120px, 100% - 32px);
	margin-inline: auto;
	overflow: hidden;
	border: 1px solid rgba(215, 232, 200, .14);
	border-radius: var(--spk-r);
	background:
		radial-gradient(90% 160% at 0% 0%, rgba(92, 153, 59, .35), transparent 60%),
		radial-gradient(60% 120% at 100% 100%, rgba(247, 151, 21, .12), transparent 60%),
		#10241A;
	color: rgba(255, 255, 255, .84);
	box-shadow: 0 24px 50px -18px rgba(16, 36, 26, .6), 0 2px 6px rgba(16, 36, 26, .2);
}
/* tenká linka hore: od zelenej z loga po oranžovú */
.cookie-notification.cookie-notification[data-type]::before {
	content: "";
	position: absolute;
	inset: 0 0 auto;
	height: 3px;
	background: linear-gradient(90deg, var(--spk-primary), var(--spk-lime) 50%, var(--spk-accent));
}
.cookie-notification .ct-container {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: clamp(14px, 2vw, 28px);
	width: auto;
	max-width: none;
	margin: 0;
	padding: clamp(16px, 2vw, 22px) clamp(16px, 2.4vw, 28px);
}
/* ikona sušienky v limetkovom kruhu – pri zobrazení lišty sa raz „zakolíše“ */
.cookie-notification .ct-container::before {
	content: "";
	width: 2.75em;
	height: 2.75em;
	border-radius: 50%;
	background: var(--spk-lime) var(--spk-cookie) center / 55% no-repeat;
	box-shadow: 0 0 0 5px rgba(216, 255, 191, .12);
	animation: spk-susienka 1.2s .4s var(--spk-ease) both;
}
@keyframes spk-susienka {
	0%   { transform: rotate(0); }
	30%  { transform: rotate(-14deg); }
	60%  { transform: rotate(8deg); }
	100% { transform: rotate(0); }
}
.cookie-notification .ct-cookies-content,
.cookie-notification .ct-cookies-content p { margin: 0; color: inherit; line-height: 1.5; }
.cookie-notification .ct-button-group { display: flex; gap: 10px; margin: 0; }
.cookie-notification .ct-button-group .ct-button {
	box-sizing: border-box;
	min-width: 9.5em;
	min-height: 46px;
	margin: 0;
	padding: .55em 1.3em;
	border: 2px solid transparent;
	border-radius: var(--spk-r-btn);
	font-weight: 700;
	line-height: 1.2;
	cursor: pointer;
	transition: background-color .25s ease, color .25s ease, border-color .25s ease, transform .3s var(--spk-ease), box-shadow .25s ease;
}
/* prijať: oranžová z loga */
.cookie-notification .ct-button-group .ct-cookies-accept-button { background: var(--spk-accent); color: var(--spk-ink); }
.cookie-notification .ct-button-group .ct-cookies-accept-button:hover,
.cookie-notification .ct-button-group .ct-cookies-accept-button:focus-visible { background: #FFAE3D; color: var(--spk-ink); box-shadow: 0 10px 22px -10px rgba(247, 151, 21, .8); transform: translateY(-2px); }
/* odmietnuť: rovnako veľké, svetlý obrys – pri hover sa vyplní limetkovou */
.cookie-notification .ct-button-group .ct-cookies-decline-button { border-color: rgba(216, 255, 191, .55); background: transparent; color: var(--spk-white); }
.cookie-notification .ct-button-group .ct-cookies-decline-button:hover,
.cookie-notification .ct-button-group .ct-cookies-decline-button:focus-visible { border-color: var(--spk-lime); background: var(--spk-lime); color: var(--spk-primary-dd); transform: translateY(-2px); }
.cookie-notification .ct-button-group .ct-button:active { transform: scale(.97); box-shadow: none; }
.cookie-notification .ct-button-group .ct-button:focus-visible { outline: 2px solid var(--spk-white); outline-offset: 2px; }
@media (max-width: 1024px) {
	.cookie-notification .ct-container { grid-template-columns: auto minmax(0, 1fr); }
	.cookie-notification .ct-button-group { grid-column: 1 / -1; }
	.cookie-notification .ct-button-group .ct-button { flex: 1 1 0; min-width: 0; }
}
@media (max-width: 767px) {
	.cookie-notification.cookie-notification[data-type] { left: 10px; right: 10px; bottom: max(10px, env(safe-area-inset-bottom)); max-width: none; }
	/* ikona obteká text – text má celú šírku karty */
	.cookie-notification .ct-container { display: block; padding: 16px; }
	.cookie-notification .ct-container::before { float: left; width: 2.2em; height: 2.2em; margin: .1em .7em .3em 0; }
	.cookie-notification .ct-cookies-content p { line-height: 1.45; }
	.cookie-notification .ct-button-group { clear: both; padding-top: 14px; }
}
@media (hover: none) {
	.cookie-notification .ct-button-group .ct-button:hover { transform: none; box-shadow: none; }
}
@media (prefers-reduced-motion: reduce) {
	.cookie-notification .ct-container::before { animation: none; }
}

/* =========================================================
   11h) PRODUKT – ZÁLOŽKY (Popis, Ďalšie informácie, Zloženie, Recenzie) + TABUĽKA ATRIBÚTOV – na všetkých produktoch
        záložky ako teplá kapsula (rovnaký tón ako sidebar), každá s ikonou; aktívna = tmavozelená ako aktívna kategória
        tabuľka zarovnaná doľava, hodnoty atribútov ako klikateľné štítky (vedú na archív /vona/…/)
        štandardné triedy WooCommerce / Blocksy; písmo a veľkosť záložiek ostávajú z Customizera (Blocksy → Produkt → Záložky)
   ========================================================= */
.woocommerce div.product div.woocommerce-tabs[data-type] {
	--spk-tab-popis: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 3h7l5 5v13H7z'/%3E%3Cpath d='M14 3v5h5M10 13h6M10 17h6'/%3E%3C/svg%3E");
	--spk-tab-info:  url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 11v6M12 7.5h.01'/%3E%3C/svg%3E");
	--spk-tab-zloz:  url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 3h6M10 3v6l-5 9a2 2 0 0 0 1.8 3h10.4a2 2 0 0 0 1.8-3l-5-9V3'/%3E%3Cpath d='M7.5 15h9'/%3E%3C/svg%3E");
	--spk-tab-rec:   url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3.5l2.6 5.3 5.9.9-4.3 4.1 1 5.8-5.2-2.7-5.2 2.7 1-5.8-4.3-4.1 5.9-.9z'/%3E%3C/svg%3E");
}
.woocommerce div.product div.woocommerce-tabs[data-type] ul.tabs {
	flex-direction: row;
	flex-wrap: wrap;
	gap: 6px;
	width: fit-content;
	max-width: 100%;
	margin: 0;
	padding: 6px;
	border: 1px solid #EAE4C4;
	border-radius: var(--spk-r);
	background: linear-gradient(180deg, #F6F3DF, #FBFAF1);
	box-shadow: var(--spk-shadow);
}
.woocommerce div.product div.woocommerce-tabs[data-type] ul.tabs::before,
.woocommerce div.product div.woocommerce-tabs[data-type] ul.tabs::after,
.woocommerce div.product div.woocommerce-tabs[data-type] ul.tabs li::before { display: none; }  /* čiara a podčiarknutie Blocksy */
.woocommerce div.product div.woocommerce-tabs[data-type] ul.tabs li { margin: 0; border: 0; border-radius: var(--spk-r-sm); background: none; }
.woocommerce div.product div.woocommerce-tabs[data-type] ul.tabs li a {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: .6em;
	padding: 1em 1.2em;
	border-radius: inherit;
	background: transparent;
	color: var(--spk-ink);
	text-decoration: none;
	transition: background-color .25s ease, color .25s ease, box-shadow .25s ease;
}
/* ikona záložky – farba cez pozadie, tvar cez masku */
.woocommerce div.product div.woocommerce-tabs[data-type] ul.tabs li a::before {
	content: "";
	flex: none;
	width: 16px;
	height: 16px;
	background: var(--spk-primary);
	-webkit-mask: var(--spk-tab-info) center / contain no-repeat;
	mask: var(--spk-tab-info) center / contain no-repeat;
	transition: transform .4s var(--spk-ease), background-color .25s ease;
}
.woocommerce div.product div.woocommerce-tabs[data-type] ul.tabs li.description_tab a::before { -webkit-mask-image: var(--spk-tab-popis); mask-image: var(--spk-tab-popis); }
.woocommerce div.product div.woocommerce-tabs[data-type] ul.tabs li[class*="zlozenie"] a::before { -webkit-mask-image: var(--spk-tab-zloz); mask-image: var(--spk-tab-zloz); }
.woocommerce div.product div.woocommerce-tabs[data-type] ul.tabs li.reviews_tab a::before { -webkit-mask-image: var(--spk-tab-rec); mask-image: var(--spk-tab-rec); }
/* hover: ako tlačidlá – limetka jemne namiešaná so slabučko žltou, zelený rám, ikona sa pootočí */
.woocommerce div.product div.woocommerce-tabs[data-type] ul.tabs li:not(.active) a:hover { background: linear-gradient(110deg, var(--spk-lime) 0%, #EDFCD3 55%, #FFF6CF 100%); color: var(--spk-primary-dd); box-shadow: inset 0 0 0 2px var(--spk-primary), 0 6px 14px -8px rgba(31, 77, 35, .35); }
.woocommerce div.product div.woocommerce-tabs[data-type] ul.tabs li:not(.active) a:hover::before { background: var(--spk-primary-d); transform: rotate(-12deg) scale(1.12); }
/* aktívna: tmavozelená kapsula, biely text, limetková ikona – platí aj pri hover */
.woocommerce div.product div.woocommerce-tabs[data-type] ul.tabs li.active a,
.woocommerce div.product div.woocommerce-tabs[data-type] ul.tabs li.active a:hover {
	background: linear-gradient(135deg, var(--spk-primary-dd), var(--spk-leaf-d));
	color: var(--spk-white);
	box-shadow: 0 8px 18px -10px rgba(31, 77, 35, .7);
}
.woocommerce div.product div.woocommerce-tabs[data-type] ul.tabs li.active a::before,
.woocommerce div.product div.woocommerce-tabs[data-type] ul.tabs li.active a:hover::before { background: var(--spk-lime); transform: none; }
.woocommerce div.product div.woocommerce-tabs[data-type] ul.tabs li a:focus-visible { outline: 2px solid var(--spk-accent); outline-offset: 2px; }
.woocommerce div.product div.woocommerce-tabs div.woocommerce-Tabs-panel.panel { padding-top: clamp(24px, 3vw, 36px); }

/* tabuľka „Ďalšie informácie“ – doľava, zaoblená karta, štítky */
.woocommerce div.product .woocommerce-tabs table.shop_attributes {
	width: min(100%, 640px);
	max-width: none;
	margin: 0;
	margin-inline: 0 !important;  /* panel má is-layout-constrained od WordPressu (margin auto !important) – inak sa tabuľka centruje */
	/* štýlový rám: prechod zelená z loga → limetková → oranžová (ako linka cookie lišty) */
	border: 2px solid transparent;
	border-collapse: separate;
	border-spacing: 0;
	border-radius: var(--spk-r);
	overflow: hidden;
	background:
		linear-gradient(var(--spk-white), var(--spk-white)) padding-box,
		linear-gradient(120deg, var(--spk-primary), var(--spk-lime) 45%, var(--spk-accent)) border-box;
	box-shadow: 0 14px 30px -18px rgba(31, 77, 35, .45);
}
.woocommerce div.product .woocommerce-tabs table.shop_attributes tr > th,
.woocommerce div.product .woocommerce-tabs table.shop_attributes tr > td {
	padding: .85em 1.2em;
	border: 0;
	border-bottom: 1px solid #D5E0CA;  /* vnútorné linky – výraznejšie ako rámiky kariet, nech sa riadky dobre čítajú */
	background: none;
	text-align: left;
	vertical-align: middle;
	transition: background-color .25s ease, box-shadow .25s ease;
}
.woocommerce div.product .woocommerce-tabs table.shop_attributes tr:last-child > * { border-bottom: 0; }
.woocommerce div.product .woocommerce-tabs table.shop_attributes tr > th { width: 36%; border-right: 1px solid #E3D9AE; background: linear-gradient(90deg, #F6F3DF, #FBFAF1); color: var(--spk-ink); font-weight: 700; box-shadow: inset 3px 0 0 transparent; }
/* riadok pod myšou: oranžová značka vľavo, jemné podfarbenie */
.woocommerce div.product .woocommerce-tabs table.shop_attributes tr:hover > th { box-shadow: inset 3px 0 0 var(--spk-accent); }
.woocommerce div.product .woocommerce-tabs table.shop_attributes tr:hover > td { background: var(--spk-ice); }
.woocommerce div.product .woocommerce-tabs table.shop_attributes td p { margin: 0; }
/* hodnoty s odkazom ako štítky (čiarky medzi nimi sa skryjú, medzery robí gap) */
.woocommerce div.product .woocommerce-tabs table.shop_attributes td p:has(> a) { display: flex; flex-wrap: wrap; gap: 6px; color: transparent; }
.woocommerce div.product .woocommerce-tabs table.shop_attributes td a {
	display: inline-flex;
	align-items: center;
	gap: .4em;
	padding: .2em .8em;
	border-radius: 999px;
	background: var(--spk-tint);
	color: var(--spk-primary-d);
	font-weight: 600;
	line-height: 1.35;
	text-decoration: none;
	transition: background-color .25s ease, color .25s ease;
}
.woocommerce div.product .woocommerce-tabs table.shop_attributes td a::before { content: ""; width: .45em; height: .45em; border-radius: 50%; background: var(--spk-primary); transition: background-color .25s ease; }
.woocommerce div.product .woocommerce-tabs table.shop_attributes td a:hover,
.woocommerce div.product .woocommerce-tabs table.shop_attributes td a:focus-visible { background: var(--spk-primary-dd); color: var(--spk-white); }
.woocommerce div.product .woocommerce-tabs table.shop_attributes td a:hover::before,
.woocommerce div.product .woocommerce-tabs table.shop_attributes td a:focus-visible::before { background: var(--spk-lime); }

@media (max-width: 689.98px) {
	/* mobil: záložky 2 × 2 na celú šírku */
	.woocommerce div.product div.woocommerce-tabs[data-type] ul.tabs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); width: 100%; }
	.woocommerce div.product div.woocommerce-tabs[data-type] ul.tabs li { display: flex; }
	.woocommerce div.product div.woocommerce-tabs[data-type] ul.tabs li a { padding: .9em .6em; }
	.woocommerce div.product .woocommerce-tabs table.shop_attributes { width: 100%; }
	.woocommerce div.product .woocommerce-tabs table.shop_attributes tr > th,
	.woocommerce div.product .woocommerce-tabs table.shop_attributes tr > td { padding: .75em .9em; }
}
@media (hover: none) {
	.woocommerce div.product div.woocommerce-tabs[data-type] ul.tabs li:not(.active) a:hover { background: transparent; box-shadow: none; color: var(--spk-ink); }
	.woocommerce div.product div.woocommerce-tabs[data-type] ul.tabs li:not(.active) a:hover::before { background: var(--spk-primary); transform: none; }
}

/* =========================================================
   11i) PANEL FILTROV BLOCKSY (#woo-filters-panel) – na desktope bez „Kategórie produktov“
        na desktope sú kategórie v sidebare, vo filtri by boli dvakrát; na tablete a mobile ostávajú
        cieli na filter kategórií podľa parametra (filter_…cat…), nie podľa ID widgetu – prežije presunutie widgetov
   ========================================================= */
@media (min-width: 1000px) {
	#woo-filters-panel .ct-widget:has(.ct-filter-widget[data-filter-param*="cat"]) { display: none; }  /* desktop: kategórie sú v sidebare – vo filtri vždy skryté */
}

/* =========================================================
   11j) TLAČIDLO „FILTROVAŤ“ + PANEL FILTROV BLOCKSY (#woo-filters-panel) – rovnako na všetkých zariadeniach
        farby panelu v Customizeri sú pre každé zariadenie zvlášť (desktop ostal sivý z palety) – tu sú jednotné
        sekcie filtra ako karty s ikonou (kategórie, objem, vôňa, nálada); hover a aktívne ako záložky a tlačidlá
   ========================================================= */
/* tlačidlo „Filtrovať“: limetka → jemná žltá, zelený rám, tmavozelená dlaždica s limetkovou ikonou
   Blocksy ([class*="ct-toggle"]) nastavuje rám a pozadie s !important – preto aj tu !important
   hover: dlaždica sa pootočí, tlačidlo sa zdvihne, prechod sa posunie */
html .ct-toggle-filter-panel[data-toggle-panel] {
	--toggle-button-radius: var(--spk-r-btn);
	--theme-icon-color: var(--spk-lime);
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	gap: .7em;
	min-height: 46px;
	padding: 5px 18px 5px 5px;
	border: 2px solid var(--spk-primary) !important;
	border-radius: var(--spk-r-btn) !important;
	background: linear-gradient(110deg, var(--spk-lime) 0%, #EDFCD3 45%, #FFF6CF 75%, #FFEFC2 100%) 0 0 / 160% 100% !important;
	color: var(--spk-primary-dd);
	font-weight: 700;
	box-shadow: 0 8px 18px -12px rgba(31, 77, 35, .45);
	transition: background-position .5s ease, box-shadow .3s ease, transform .25s var(--spk-ease);
}
html .ct-toggle-filter-panel[data-toggle-panel] .ct-icon-container {
	display: grid;
	place-items: center;
	width: 34px;
	height: 34px;
	border-radius: var(--spk-r-sm);
	background: var(--spk-primary-dd);
	transition: transform .4s var(--spk-ease);
}
html .ct-toggle-filter-panel[data-toggle-panel]:is(:hover, :focus-visible) {
	--theme-icon-color: var(--spk-lime);
	background-position: 100% 0 !important;
	color: var(--spk-primary-dd);
	box-shadow: 0 12px 22px -12px rgba(31, 77, 35, .55);
	transform: translateY(-2px);
}
html .ct-toggle-filter-panel[data-toggle-panel]:is(:hover, :focus-visible) .ct-icon-container { transform: rotate(-8deg); }
html .ct-toggle-filter-panel[data-toggle-panel]:active { transform: scale(.97); }
html .ct-toggle-filter-panel[data-toggle-panel]:focus-visible { outline: 2px solid var(--spk-accent); outline-offset: 2px; }

/* panel: rozmazané pozadie stránky, teplý prechod ako sidebar */
html #woo-filters-panel[data-behaviour*="side"] { background-color: rgba(16, 36, 26, .45); -webkit-backdrop-filter: blur(3px); backdrop-filter: blur(3px); }
html #woo-filters-panel[data-behaviour*="side"] .ct-panel-inner {
	background: linear-gradient(180deg, #F6F3DF 0, #FBFAF1 180px, var(--spk-white) 460px);
	box-shadow: -24px 0 60px -20px rgba(16, 36, 26, .45);
}
html #woo-filters-panel {
	--spk-fp-kat:  url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='4' width='6.5' height='6.5' rx='1.5'/%3E%3Crect x='13.5' y='4' width='6.5' height='6.5' rx='1.5'/%3E%3Crect x='4' y='13.5' width='6.5' height='6.5' rx='1.5'/%3E%3Crect x='13.5' y='13.5' width='6.5' height='6.5' rx='1.5'/%3E%3C/svg%3E");
	--spk-fp-obj:  url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3c3.5 4.6 6 8.1 6 11a6 6 0 0 1-12 0c0-2.9 2.5-6.4 6-11z'/%3E%3C/svg%3E");
	--spk-fp-vona: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='2.6'/%3E%3Cpath d='M12 9.4c-1.6-2.3-1.6-4.5 0-6.4 1.6 1.9 1.6 4.1 0 6.4zM12 14.6c1.6 2.3 1.6 4.5 0 6.4-1.6-1.9-1.6-4.1 0-6.4zM9.4 12c-2.3 1.6-4.5 1.6-6.4 0 1.9-1.6 4.1-1.6 6.4 0zM14.6 12c2.3-1.6 4.5-1.6 6.4 0-1.9 1.6-4.1 1.6-6.4 0z'/%3E%3C/svg%3E");
	--spk-fp-nal:  url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Cpath d='M12 2.5v2.5M12 19v2.5M4.6 4.6l1.8 1.8M17.6 17.6l1.8 1.8M2.5 12H5M19 12h2.5M4.6 19.4l1.8-1.8M17.6 6.4l1.8-1.8'/%3E%3C/svg%3E");
	--spk-fp-head: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6h10M18 6h2M4 12h4M12 12h8M4 18h12M20 18h0'/%3E%3Ccircle cx='16' cy='6' r='2'/%3E%3Ccircle cx='10' cy='12' r='2'/%3E%3Ccircle cx='18' cy='18' r='2'/%3E%3C/svg%3E");
	--theme-form-selection-field-initial-color: #BFD0AE;
	--theme-form-selection-field-active-color: var(--spk-primary-dd);
	--theme-link-hover-color: var(--spk-primary-dd);
}
/* hlavička: ikona filtra v tmavozelenom kruhu */
html #woo-filters-panel .ct-panel-heading { display: inline-flex; align-items: center; gap: .6em; color: var(--spk-ink); font-weight: 800; }
html #woo-filters-panel .ct-panel-heading::before {
	content: "";
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: var(--spk-primary-dd);
	-webkit-mask: var(--spk-fp-head) center / 18px no-repeat, linear-gradient(#000, #000);
	-webkit-mask-composite: xor;
	mask: var(--spk-fp-head) center / 18px no-repeat exclude, linear-gradient(#000, #000);
}
/* zatvorenie: limetkový štvorec, pri hover tmavozelený s limetkovým krížikom a otočením (Blocksy) */
html #woo-filters-panel .ct-toggle-close[data-type] { --toggle-button-background: var(--spk-lime); --toggle-button-radius: var(--spk-r-btn); --theme-icon-color: var(--spk-primary-dd); --theme-icon-size: 14px; }
html #woo-filters-panel .ct-toggle-close[data-type]:hover,
html #woo-filters-panel .ct-toggle-close[data-type]:focus-visible { --toggle-button-background: var(--spk-primary-dd); --theme-icon-color: var(--spk-lime); }

/* sekcie filtra: jednoduché, oddelené tenkou linkou */
html #woo-filters-panel .ct-panel-content-inner { display: flex; flex-direction: column; gap: 0; }
html #woo-filters-panel .ct-sidebar > .ct-widget { margin: 0; padding: 0; border-bottom: 1px solid rgba(92, 153, 59, .35); }  /* deliace čiary zelené – dobre viditeľné aj pri zbalených sekciách */
html #woo-filters-panel .ct-sidebar > .ct-widget:last-child { border-bottom: 0; }
html #woo-filters-panel .widget-title.ct-expandable-trigger {
	--theme-icon-color: var(--spk-white);
	display: flex;
	align-items: center;
	gap: .6em;
	margin: 0;
	padding-block: .8em;
	color: var(--spk-ink);
	font-size: 21px;  /* nadpis sekcie filtra */
	cursor: pointer;
	transition: color .25s ease;
}
/* ikona sekcie podľa toho, čo filtruje */
html #woo-filters-panel .widget-title.ct-expandable-trigger::before {
	content: "";
	flex: none;
	width: 18px;
	height: 18px;
	background: var(--spk-primary);
	-webkit-mask: var(--spk-fp-vona) center / contain no-repeat;
	mask: var(--spk-fp-vona) center / contain no-repeat;
	transition: transform .4s var(--spk-ease), background-color .25s ease;
}
html #woo-filters-panel .ct-widget:has([data-filter-param*="cat"]) .widget-title::before { -webkit-mask-image: var(--spk-fp-kat); mask-image: var(--spk-fp-kat); }
html #woo-filters-panel .ct-widget:has([data-filter-param="filter_objem"]) .widget-title::before { -webkit-mask-image: var(--spk-fp-obj); mask-image: var(--spk-fp-obj); }
html #woo-filters-panel .ct-widget:has([data-filter-param="filter_nalada"]) .widget-title::before { -webkit-mask-image: var(--spk-fp-nal); mask-image: var(--spk-fp-nal); }
/* šípka v kruhu (otočenie robí Blocksy) */
html #woo-filters-panel .widget-title.ct-expandable-trigger .ct-icon {
	box-sizing: content-box;
	margin-inline-start: auto;
	padding: 7px;
	border-radius: 50%;
	background: var(--spk-primary-dd);
	fill: var(--spk-white);
	transition: background-color .25s ease, transform .3s ease;
}
html #woo-filters-panel .widget-title.ct-expandable-trigger:hover { color: var(--spk-primary-d); }
html #woo-filters-panel .widget-title.ct-expandable-trigger:hover::before { background: var(--spk-accent); transform: rotate(-12deg) scale(1.1); }
html #woo-filters-panel .widget-title.ct-expandable-trigger:hover .ct-icon { background: var(--spk-primary); }  /* šípka: tmavozelený kruh, biela ikona; pri hover zelená z loga */
html #woo-filters-panel .widget-title.ct-expandable-trigger[aria-expanded="true"] { color: var(--spk-primary-dd); }
html #woo-filters-panel [aria-expanded="true"] + .ct-filter-widget-wrapper { padding-bottom: 12px; }

/* položky: riadok s jemným podfarbením, počet ako štítok */
html #woo-filters-panel .ct-filter-widget .ct-filter-item-inner a {
	margin-inline: -8px;
	padding: .25em 8px;
	border-radius: var(--spk-r-sm);
	transition: background .25s ease, color .25s ease;
}
html #woo-filters-panel .ct-filter-widget .ct-filter-item-inner a:hover { background: linear-gradient(110deg, var(--spk-lime) 0%, #EDFCD3 55%, #FFF6CF 100%); color: var(--spk-primary-dd); }
html #woo-filters-panel .ct-filter-widget .ct-filter-item-inner a:is(.active, [aria-checked="true"]) { background: var(--spk-tint); color: var(--spk-primary-dd); }
html #woo-filters-panel .ct-filter-widget .ct-filter-item-inner a:is(.active, [aria-checked="true"]) .ct-filter-label { font-weight: 700; }
html #woo-filters-panel .ct-filter-widget .ct-filter-item-inner a > .ct-filter-count {
	border: 1px solid var(--spk-line);
	border-radius: 999px;
	background: var(--spk-white);
	color: var(--spk-muted, #4A5A44);
	font-variant-numeric: tabular-nums;
	transition: background-color .25s ease, color .25s ease, border-color .25s ease;
}
html #woo-filters-panel .ct-filter-widget .ct-filter-item-inner a:is(:hover, .active, [aria-checked="true"]) > .ct-filter-count { border-color: var(--spk-primary-dd); background: var(--spk-primary-dd); color: var(--spk-white); }

/* väčšie písmo položiek (Blocksy má 15 px) */
html #woo-filters-panel .ct-filter-widget,
html #woo-filters-panel .ct-filter-widget .ct-filter-label { font-size: 18px; }  /* položky filtra 18 px (aj kategórie) */
html #woo-filters-panel .ct-filter-widget .ct-filter-item-inner a > .ct-filter-count { font-size: 13px; }

/* štítky objemu (Blocksy swatch „button“) – vo filtri aj pri výbere variantu na produkte; farby cez premenné Blocksy
   normál: biely štítok so zeleným obrysom · hover: limetka a zelený rám · vybraný: tmavozelený, biely text */
[data-swatches-type="button"] {
	--swatch-button-text-color: var(--spk-primary-dd);
	--swatch-button-border-color: #BFD0AE;
	--swatch-button-background-color: var(--spk-white);
}
[data-swatches-type="button"] .ct-swatch { border-width: 1.5px; font-size: 15px; transition: background-color .25s ease, border-color .25s ease, color .25s ease; }
html [data-swatches-type="button"] :where(:not(.ct-out-of-stock)):hover .ct-swatch { --swatch-button-border-color: var(--spk-primary); --swatch-button-background-color: var(--spk-lime); --swatch-button-text-color: var(--spk-primary-dd); }
html [data-swatches-type="button"] :is([aria-pressed="true"], a.active, a[aria-checked="true"]) .ct-swatch,
html [data-swatches-type="button"] :is([aria-pressed="true"], a.active, a[aria-checked="true"]):hover .ct-swatch { --swatch-button-border-color: var(--spk-primary-dd); --swatch-button-background-color: var(--spk-primary-dd); --swatch-button-text-color: var(--spk-white); }
html #woo-filters-panel [data-swatches-type="button"] { --swatch-size: 34px; }
html #woo-filters-panel [data-swatches-type="button"] .ct-filter-item-inner a:hover { background: none; }  /* pri štítkoch stačí zmena štítka */

/* widget WooCommerce „Kategórie produktov“ v paneli – zobrazí sa vždy (aj v kategórii), štýl a ikony ako v sidebare
   filter kategórií Blocksy sa v kategórii schová (zobrazuje iba podkategórie) – keď je v paneli aj tento widget, filter Blocksy sa skryje, aby neboli dvakrát */
html #woo-filters-panel:has(.product-categories) .ct-widget:has(.ct-filter-widget[data-filter-param*="cat"]) { display: none; }
html #woo-filters-panel .ct-widget:has(.product-categories) .widget-title {
	display: flex;
	align-items: center;
	gap: .6em;
	margin: 0;
	padding-block: .8em;
	color: var(--spk-ink);
	font-size: 21px;
}
html #woo-filters-panel .ct-widget:has(.product-categories) .widget-title::before {
	content: "";
	flex: none;
	width: 18px;
	height: 18px;
	background: var(--spk-primary);
	-webkit-mask: var(--spk-fp-kat) center / contain no-repeat;
	mask: var(--spk-fp-kat) center / contain no-repeat;
}
html #woo-filters-panel .ct-widget:has(.product-categories) .widget-title::after { display: none; }
html #woo-filters-panel .product-categories { padding-bottom: 12px; }
@media (min-width: 1000px) {
	#woo-filters-panel .ct-widget:has(.product-categories) { display: none; }  /* desktop: kategórie sú v sidebare – vo filtri vždy skryté */
}

/* kategórie vo filtri (mobil, tablet): rovnaké ikony ako v sidebare – ikona pred názvom, pri hover sa pootočí a zoranžovie */
html #woo-filters-panel .ct-widget:has([data-filter-param*="cat"]) .ct-filter-label { display: inline-flex; align-items: center; gap: .55em; }
html #woo-filters-panel .ct-widget:has([data-filter-param*="cat"]) .ct-filter-label::before {
	content: "";
	flex: none;
	width: 18px;
	height: 18px;
	background: var(--spk-primary);
	-webkit-mask: var(--spk-cat-ic, var(--spk-fp-kat)) center / contain no-repeat;
	mask: var(--spk-cat-ic, var(--spk-fp-kat)) center / contain no-repeat;
	transition: transform .4s var(--spk-ease), background-color .25s ease;
}
html #woo-filters-panel .ct-widget:has([data-filter-param*="cat"]) .ct-filter-control:hover .ct-filter-label::before { background: var(--spk-accent); transform: rotate(-12deg) scale(1.12); }
html #woo-filters-panel .ct-widget:has([data-filter-param*="cat"]) .ct-filter-control:is(.active, [aria-checked="true"]) .ct-filter-label::before { background: var(--spk-primary-dd); transform: none; }

@media (hover: none) {
	html .ct-toggle-filter-panel[data-toggle-panel]:hover,
	html .ct-toggle-filter-panel[data-toggle-panel]:hover .ct-icon-container { transform: none; }
	html #woo-filters-panel .ct-filter-widget .ct-filter-item-inner a:hover:not(.active, [aria-checked="true"]) { background: none; color: inherit; }
}

/* =========================================================
   11k) FILTROVANIE AJAX (snippet „Agrokomp – filtre“) – celý vzhľad je tu, snippet má iba JavaScript
        tlačidlo „Zobraziť X výsledkov“: lišta prilepená k spodku panela, bez zaoblenia,
        v pokoji zelená z loga, pri hover limetka s jemne žltou (rovnako ako tlačidlá na webe – sekcia 4b)
   ========================================================= */
#woo-filters-panel { --ag-bf-btn-height: 58px; --ag-bf-btn-padding: 0 24px; --ag-bf-btn-gap-top: 16px; }
.ag-bf-dim { opacity: .45; pointer-events: none; transition: opacity .15s; }  /* stlmí sa iba oblasť s výsledkami */
.ag-bf-apply-wrap[hidden] { display: none !important; }
.ag-bf-apply-wrap { position: sticky; bottom: 0; z-index: 5; margin: var(--ag-bf-btn-gap-top) 0 0; padding: 0; }
html #woo-filters-panel .ag-bf-apply {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	box-sizing: border-box;
	width: 100%;
	min-height: var(--ag-bf-btn-height);
	margin: 0;
	padding: var(--ag-bf-btn-padding);
	padding-bottom: env(safe-area-inset-bottom, 0);  /* iPhone: nad čiarou gesta */
	border: 0;
	border-radius: 0;
	background:
		var(--spk-sheen) 160% 0 / 250% 100% no-repeat,
		var(--spk-btn-grad) 0 0 / 300% 100% no-repeat,
		var(--spk-primary-dd);
	color: var(--spk-white);
	font-weight: 700;
	line-height: 1.2;
	text-shadow: 0 1px 2px rgba(0, 0, 0, .25);
	box-shadow: 0 -10px 24px -14px rgba(16, 36, 26, .45);  /* jemný tieň nad lištou – oddelí ju od filtrov */
	cursor: pointer;
	transition: background-position .7s cubic-bezier(.4, 0, .2, 1), color .3s ease, box-shadow .3s ease;
}
html #woo-filters-panel .ag-bf-apply:is(:hover, :focus-visible) {
	background-position: -60% 0, 100% 0, 0 0;
	color: var(--spk-primary-dd);
	text-shadow: none;
	box-shadow: inset 0 2px 0 var(--spk-primary), 0 -10px 24px -14px rgba(16, 36, 26, .45);  /* zelená linka hore namiesto rámu */
}
html #woo-filters-panel .ag-bf-apply:focus-visible { outline: 2px solid var(--spk-accent); outline-offset: -4px; }
html #woo-filters-panel .ag-bf-apply:active { filter: brightness(.97); }
.ag-bf-spin { display: none; width: 18px; height: 18px; box-sizing: border-box; flex: none; border: 2px solid currentColor; border-top-color: transparent; border-radius: 50%; animation: ag-bf-rot .7s linear infinite; }
.ag-bf-apply.is-busy { cursor: progress; }
.ag-bf-apply.is-busy .ag-bf-spin { display: block; }
@keyframes ag-bf-rot { to { transform: rotate(360deg); } }
@media (hover: none) {
	html #woo-filters-panel .ag-bf-apply:hover:not(:focus-visible) { background-position: 160% 0, 0 0, 0 0; color: var(--spk-white); text-shadow: 0 1px 2px rgba(0, 0, 0, .25); box-shadow: 0 -10px 24px -14px rgba(16, 36, 26, .45); }
}
@media (prefers-reduced-motion: reduce) {
	html #woo-filters-panel .ag-bf-apply,
	.ag-bf-spin { transition: none; animation: none; }
}

/* =========================================================
   11l) HLAVIČKA OBCHODU A KATEGÓRIÍ NA MOBILE – čo najmenšia, H1 ostáva viditeľné (SEO, mobile-first indexovanie)
        omrvinky malé nad nadpisom, H1 menšie a vľavo, minimum medzier; desktop bez zmeny
   ========================================================= */
@media (max-width: 689.98px) {
	html :is(.post-type-archive-product, .tax-product_cat, .tax-product_tag) { --theme-content-vertical-spacing: 18px; }  /* medzera pod hlavičkou webu */
	html :is(.post-type-archive-product, .tax-product_cat, .tax-product_tag) .hero-section[data-type="type-1"] { --alignment: left; --margin-bottom: 14px; }
	html :is(.post-type-archive-product, .tax-product_cat, .tax-product_tag) .hero-section .entry-header {
		--item-spacing: 0;
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		gap: 4px;
	}
	html :is(.post-type-archive-product, .tax-product_cat, .tax-product_tag) .hero-section .ct-breadcrumbs { order: -1; font-size: 11px; letter-spacing: .03em; }
	html :is(.post-type-archive-product, .tax-product_cat, .tax-product_tag) .hero-section .ct-breadcrumbs [class*="ct-separator"] { margin-inline: 5px; }
	html :is(.post-type-archive-product, .tax-product_cat, .tax-product_tag) .hero-section .page-title { font-size: 22px; line-height: 1.2; text-align: left; }
	html :is(.post-type-archive-product, .tax-product_cat, .tax-product_tag) .hero-section .page-description { margin-top: 10px; }
}

/* =========================================================
   11m) MEGAMENU E-SHOP „VONNÁ PALETA“ – iba CSS, menu vo WordPresse ostáva (Blocksy mega menu, desktop)
        hore 2 veľké dlaždice (esenciálne a vonné oleje – na ne sa špecializujete), pod nimi kategórie ako dlaždice s ikonami
        ikony podľa odkazu kategórie (rovnaké ako v sidebare); pri otvorení dlaždice postupne naskočia,
        pri hover sa dlaždica zdvihne, ikona sa pootočí a vysunie sa šípka
   ========================================================= */
[data-device="desktop"] nav[data-id="menu"] > ul > li[class*="ct-mega-menu"] {
	--spk-mm-arrow: url("data:image/svg+xml,%3Csvg 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'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E");
}
:is([data-device="desktop"] [data-id="menu"], #offcanvas) .sub-menu a[href*="/kategoria-produktu/esencialne-oleje/"] { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 3c3.5 4.2 6 7.6 6 10.5a6 6 0 0 1-12 0C6 10.6 8.5 7.2 12 3z%22/%3E%3Cpath d=%22M9.5 14.5A2.5 2.5 0 0 0 12 17%22/%3E%3C/svg%3E"); }
:is([data-device="desktop"] [data-id="menu"], #offcanvas) .sub-menu a[href*="/kategoria-produktu/vonne-oleje/"] { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M5.5 10h8v10a1.5 1.5 0 0 1-1.5 1.5H7A1.5 1.5 0 0 1 5.5 20z%22/%3E%3Cpath d=%22M7.5 10V7h4v3%22/%3E%3Cpath d=%22M7 4h5%22/%3E%3Cpath d=%22M16.5 9c1.4-1.4-.8-2.4.6-3.8M19.5 12.5c1.4-1.4-.8-2.4.6-3.8M16.5 16c1.4-1.4-.8-2.4.6-3.8%22/%3E%3C/svg%3E"); }
:is([data-device="desktop"] [data-id="menu"], #offcanvas) .sub-menu a[href*="/kategoria-produktu/zmesi-eterickych-a-vonnych-olejov/"] { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M8.5 5c2.3 2.8 4 5 4 7a4 4 0 0 1-8 0c0-2 1.7-4.2 4-7z%22/%3E%3Cpath d=%22M15.5 9.5c2 2.4 3.5 4.3 3.5 6a3.5 3.5 0 0 1-6.2 2.2%22/%3E%3C/svg%3E"); }
:is([data-device="desktop"] [data-id="menu"], #offcanvas) .sub-menu a[href*="/kategoria-produktu/vianocne-oleje/"] { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 2.5l4.5 5.5h-2.7l4 5h-2.6l4.3 5.5H4.5L8.8 13H6.2l4-5H7.5z%22/%3E%3Cpath d=%22M12 18.5V22%22/%3E%3C/svg%3E"); }
:is([data-device="desktop"] [data-id="menu"], #offcanvas) .sub-menu a[href*="/kategoria-produktu/darcekove-sady-olejov/"] { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect x=%223.5%22 y=%229%22 width=%2217%22 height=%2211.5%22 rx=%221.5%22/%3E%3Cpath d=%22M2.5 9h19M12 9v11.5%22/%3E%3Cpath d=%22M12 9C10 5 6.5 4.8 6.5 7s3 2 5.5 2zm0 0c2-4 5.5-4.2 5.5-2s-3 2-5.5 2z%22/%3E%3C/svg%3E"); }
:is([data-device="desktop"] [data-id="menu"], #offcanvas) .sub-menu a[href*="/kategoria-produktu/oleje-do-prania/"] { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M8 3L3 6.5 5.2 10 7 9v12h10V9l1.8 1L21 6.5 16 3a4 4 0 0 1-8 0z%22/%3E%3C/svg%3E"); }
:is([data-device="desktop"] [data-id="menu"], #offcanvas) .sub-menu a[href*="/kategoria-produktu/oleje-do-kupela-a-saun/"] { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M3 12h18v2.5a5 5 0 0 1-5 5H8a5 5 0 0 1-5-5z%22/%3E%3Cpath d=%22M6 12V5.5a2 2 0 0 1 3.6-1.2%22/%3E%3Cpath d=%22M7 19.5L6 21.5M17 19.5l1 2%22/%3E%3C/svg%3E"); }
:is([data-device="desktop"] [data-id="menu"], #offcanvas) .sub-menu a[href*="/kategoria-produktu/elektricke-difuzery-za-super-cenu/"] { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M6 21h12l-1.5-8h-9z%22/%3E%3Cpath d=%22M8.5 13a3.5 3.5 0 0 1 7 0%22/%3E%3Cpath d=%22M10 8.5c-1-1.3 1-2.2 0-3.5M14 8.5c-1-1.3 1-2.2 0-3.5%22/%3E%3C/svg%3E"); }
:is([data-device="desktop"] [data-id="menu"], #offcanvas) .sub-menu a[href*="/kategoria-produktu/keramicke-aromalampy/"] { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M5 9h14l-1.5 4a5.5 5.5 0 0 1-11 0z%22/%3E%3Cpath d=%22M7 21h10M9 21v-3.5M15 21v-3.5%22/%3E%3Cpath d=%22M12 2.5c1.3 1.5 1.8 2.6 1.8 3.4a1.8 1.8 0 0 1-3.6 0c0-.8.5-1.9 1.8-3.4z%22/%3E%3C/svg%3E"); }
:is([data-device="desktop"] [data-id="menu"], #offcanvas) .sub-menu a[href*="/kategoria-produktu/vonne-difuzery/"] { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M8 12h8v8a1.5 1.5 0 0 1-1.5 1.5h-5A1.5 1.5 0 0 1 8 20z%22/%3E%3Cpath d=%22M10 12v-2h4v2%22/%3E%3Cpath d=%22M11 10L8 2.5M12 10V2M13 10l3-7.5%22/%3E%3C/svg%3E"); }
:is([data-device="desktop"] [data-id="menu"], #offcanvas) .sub-menu a[href*="/kategoria-produktu/vonne-tycinky/"] { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M4 20L15 9%22/%3E%3Cpath d=%22M3 21h18%22/%3E%3Cpath d=%22M17 7c1.5-1.5-.5-2.5 1-4M20 8.5c1.2-1.2-.4-2 .8-3.2%22/%3E%3C/svg%3E"); }
:is([data-device="desktop"] [data-id="menu"], #offcanvas) .sub-menu a[href*="/kategoria-produktu/sviecky-a-knoty/"] { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect x=%228%22 y=%2210%22 width=%228%22 height=%2211%22 rx=%221.5%22/%3E%3Cpath d=%22M12 10V8%22/%3E%3Cpath d=%22M12 2.5c1.4 1.6 2 2.8 2 3.6a2 2 0 0 1-4 0c0-.8.6-2 2-3.6z%22/%3E%3C/svg%3E"); }
:is([data-device="desktop"] [data-id="menu"], #offcanvas) .sub-menu a[href*="/kategoria-produktu/vone-do-auta/"] { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M4.5 13.5l1.7-5A2 2 0 0 1 8.1 7h7.8a2 2 0 0 1 1.9 1.5l1.7 5%22/%3E%3Cpath d=%22M3 16a2.5 2.5 0 0 1 2.5-2.5h13A2.5 2.5 0 0 1 21 16v2.5H3z%22/%3E%3Cpath d=%22M5.5 18.5v2M18.5 18.5v2M7 16h.01M17 16h.01%22/%3E%3C/svg%3E"); }
:is([data-device="desktop"] [data-id="menu"], #offcanvas) .sub-menu a[href*="/kategoria-produktu/kupelove-soli/"] { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M6 4h12v3H6z%22/%3E%3Cpath d=%22M7 7h10v2.5c1.5.8 2 2 2 3.5v5.5a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V13c0-1.5.5-2.7 2-3.5z%22/%3E%3Cpath d=%22M9 15h.01M12 13.5h.01M15 16h.01M11 17.5h.01%22/%3E%3C/svg%3E"); }
:is([data-device="desktop"] [data-id="menu"], #offcanvas) .sub-menu a[href*="/kategoria-produktu/podpora-predaja/"] { --spk-cat-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M3 12V4a1 1 0 0 1 1-1h8l9 9-9 9z%22/%3E%3Ccircle cx=%227.5%22 cy=%227.5%22 r=%221.5%22/%3E%3C/svg%3E"); }
[data-device="desktop"] nav[data-id="menu"] > ul > li[class*="ct-mega-menu"] > .sub-menu {
	--dropdown-background-color: var(--spk-white);
	--dropdown-background-hover-color: transparent;
	--dropdown-columns-divider: 0;
	--columns-padding: 0;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 10px;
	padding: 22px;
	overflow: hidden;
	border-radius: 0 0 var(--spk-r) var(--spk-r);
	background:
		linear-gradient(90deg, var(--spk-primary), var(--spk-lime) 50%, var(--spk-accent)) top / 100% 3px no-repeat,
		radial-gradient(60% 80% at 100% 100%, rgba(216, 255, 191, .55), transparent 70%),
		radial-gradient(50% 70% at 0% 100%, rgba(255, 241, 214, .6), transparent 70%),
		var(--spk-white);
	box-shadow: 0 30px 60px -24px rgba(16, 36, 26, .45), 0 2px 6px rgba(16, 36, 26, .08);
}
[data-device="desktop"] nav[data-id="menu"] > ul > li[class*="ct-mega-menu"] > .sub-menu > li { min-width: 0; margin: 0; padding: 0; border: 0 !important; }
[data-device="desktop"] nav[data-id="menu"] > ul > li[class*="ct-mega-menu"] > .sub-menu > li > .ct-menu-link {
	--theme-link-initial-color: var(--spk-ink);
	--theme-link-hover-color: var(--spk-primary-dd);
	--theme-link-active-color: var(--spk-primary-dd);
	position: relative;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	gap: 12px;
	height: 100%;
	min-height: 62px;
	padding: 12px 40px 12px 12px;
	--spk-mm-dot: var(--spk-lime);    /* krúžok pod ikonou */
	--spk-mm-ic: var(--spk-primary-dd); /* farba ikony */
	--spk-mm-bg: linear-gradient(var(--spk-white), var(--spk-white));
	border: 1px solid var(--spk-line);
	border-radius: var(--spk-r);
	background: radial-gradient(circle 19px at 31px 50%, var(--spk-mm-dot) 97%, transparent 100%) no-repeat, var(--spk-mm-bg);
	color: var(--spk-ink);
	font-weight: 600;
	line-height: 1.25;
	text-decoration: none;
	transition: background .3s ease, border-color .3s ease, box-shadow .3s ease, transform .3s var(--spk-ease), color .25s ease;
}
/* ikona kategórie v limetkovom kruhu */
[data-device="desktop"] nav[data-id="menu"] > ul > li[class*="ct-mega-menu"] > .sub-menu > li > .ct-menu-link::before {
	content: "";
	flex: none;
	width: 38px;
	height: 38px;
	background: var(--spk-mm-ic);
	-webkit-mask: var(--spk-cat-ic, var(--spk-leaf)) center / 20px no-repeat;
	mask: var(--spk-cat-ic, var(--spk-leaf)) center / 20px no-repeat;
	transition: background-color .3s ease, transform .45s var(--spk-ease);
}
/* šípka vpravo – vysunie sa pri hover */
[data-device="desktop"] nav[data-id="menu"] > ul > li[class*="ct-mega-menu"] > .sub-menu > li > .ct-menu-link::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 14px;
	width: 16px;
	height: 16px;
	background: var(--spk-primary-dd);
	-webkit-mask: var(--spk-mm-arrow) center / contain no-repeat;
	mask: var(--spk-mm-arrow) center / contain no-repeat;
	opacity: 0;
	transform: translate(-8px, -50%);
	transition: opacity .25s ease, transform .3s var(--spk-ease);
}
[data-device="desktop"] nav[data-id="menu"] > ul > li[class*="ct-mega-menu"] > .sub-menu > li > .ct-menu-link:is(:hover, :focus-visible) {
	--spk-mm-dot: var(--spk-primary-dd);
	--spk-mm-ic: var(--spk-lime);
	--spk-mm-bg: linear-gradient(110deg, var(--spk-lime) 0%, #EDFCD3 55%, #FFF6CF 100%);
	border-color: transparent;
	color: var(--spk-primary-dd);
	box-shadow: inset 0 0 0 2px var(--spk-primary), 0 12px 24px -16px rgba(31, 77, 35, .55);
	transform: translateY(-2px);
}
[data-device="desktop"] nav[data-id="menu"] > ul > li[class*="ct-mega-menu"] > .sub-menu > li > .ct-menu-link:is(:hover, :focus-visible)::before { transform: rotate(-12deg) scale(1.08); }
[data-device="desktop"] nav[data-id="menu"] > ul > li[class*="ct-mega-menu"] > .sub-menu > li > .ct-menu-link:is(:hover, :focus-visible)::after { opacity: 1; transform: translate(0, -50%); }
[data-device="desktop"] nav[data-id="menu"] > ul > li[class*="ct-mega-menu"] > .sub-menu > li > .ct-menu-link:focus-visible { outline: 2px solid var(--spk-accent); outline-offset: 2px; }
/* aktuálna kategória: zelený obrys */
[data-device="desktop"] nav[data-id="menu"] > ul > li[class*="ct-mega-menu"] > .sub-menu > li[class*="current-menu-"] > .ct-menu-link { border-color: var(--spk-primary); }

/* 2 hlavné kategórie: veľké tmavozelené dlaždice hore, ikona aj ako vodoznak */
[data-device="desktop"] nav[data-id="menu"] > ul > li[class*="ct-mega-menu"] > .sub-menu > li:nth-child(-n+2) { grid-column: span 2; }
[data-device="desktop"] nav[data-id="menu"] > ul > li[class*="ct-mega-menu"] > .sub-menu > li:nth-child(-n+2) > .ct-menu-link {
	--theme-link-initial-color: var(--spk-white);
	--theme-link-hover-color: var(--spk-white);
	min-height: 96px;
	padding: 18px 56px 18px 18px;
	overflow: hidden;
	--spk-mm-bg: radial-gradient(120% 140% at 100% 0%, rgba(216, 255, 191, .22), transparent 55%), linear-gradient(135deg, var(--spk-primary-dd), var(--spk-leaf-d));
	border: 0;
	background: radial-gradient(circle 26px at 44px 50%, var(--spk-mm-dot) 97%, transparent 100%) no-repeat, var(--spk-mm-bg);
	color: var(--spk-white);
	font-size: 20px;
	font-weight: 700;
	box-shadow: 0 14px 28px -18px rgba(31, 77, 35, .8);
}
[data-device="desktop"] nav[data-id="menu"] > ul > li[class*="ct-mega-menu"] > .sub-menu > li:nth-child(-n+2) > .ct-menu-link::before { width: 52px; height: 52px; -webkit-mask-size: 26px; mask-size: 26px; }
[data-device="desktop"] nav[data-id="menu"] > ul > li[class*="ct-mega-menu"] > .sub-menu > li:nth-child(-n+2) > .ct-menu-link::after {
	right: -14px;
	width: 110px;
	height: 110px;
	background: var(--spk-lime);
	-webkit-mask-image: var(--spk-cat-ic, var(--spk-leaf));
	mask-image: var(--spk-cat-ic, var(--spk-leaf));
	opacity: .14;
	transform: translateY(-50%) rotate(-14deg);
	transition: transform .6s var(--spk-ease), opacity .3s ease;
}
[data-device="desktop"] nav[data-id="menu"] > ul > li[class*="ct-mega-menu"] > .sub-menu > li:nth-child(-n+2) > .ct-menu-link:is(:hover, :focus-visible) {
	--spk-mm-dot: var(--spk-white);
	--spk-mm-ic: var(--spk-primary-dd);
	--spk-mm-bg: radial-gradient(120% 140% at 100% 0%, rgba(216, 255, 191, .35), transparent 55%), linear-gradient(135deg, var(--spk-primary-dd), var(--spk-primary));
	color: var(--spk-white);
	box-shadow: inset 0 0 0 2px var(--spk-lime), 0 18px 32px -18px rgba(31, 77, 35, .85);
}
[data-device="desktop"] nav[data-id="menu"] > ul > li[class*="ct-mega-menu"] > .sub-menu > li:nth-child(-n+2) > .ct-menu-link:is(:hover, :focus-visible)::after { opacity: .22; transform: translateY(-50%) rotate(0) scale(1.08); }

/* postupné naskočenie dlaždíc pri otvorení */
@keyframes spk-mm-in { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
[data-device="desktop"] nav[data-id="menu"] > ul > li[class*="ct-mega-menu"]:is(:hover, :focus-within) > .sub-menu > li { animation: spk-mm-in .4s var(--spk-ease) both; }
[data-device="desktop"] nav[data-id="menu"] > ul > li[class*="ct-mega-menu"]:is(:hover, :focus-within) > .sub-menu > li:nth-child(2) { animation-delay: .03s; }
[data-device="desktop"] nav[data-id="menu"] > ul > li[class*="ct-mega-menu"]:is(:hover, :focus-within) > .sub-menu > li:nth-child(3) { animation-delay: .06s; }
[data-device="desktop"] nav[data-id="menu"] > ul > li[class*="ct-mega-menu"]:is(:hover, :focus-within) > .sub-menu > li:nth-child(4) { animation-delay: .08s; }
[data-device="desktop"] nav[data-id="menu"] > ul > li[class*="ct-mega-menu"]:is(:hover, :focus-within) > .sub-menu > li:nth-child(5) { animation-delay: .1s; }
[data-device="desktop"] nav[data-id="menu"] > ul > li[class*="ct-mega-menu"]:is(:hover, :focus-within) > .sub-menu > li:nth-child(6) { animation-delay: .12s; }
[data-device="desktop"] nav[data-id="menu"] > ul > li[class*="ct-mega-menu"]:is(:hover, :focus-within) > .sub-menu > li:nth-child(n+7) { animation-delay: .14s; }
@media (prefers-reduced-motion: reduce) {
	[data-device="desktop"] nav[data-id="menu"] > ul > li[class*="ct-mega-menu"]:is(:hover, :focus-within) > .sub-menu > li { animation: none; }
	[data-device="desktop"] nav[data-id="menu"] > ul > li[class*="ct-mega-menu"] > .sub-menu > li > .ct-menu-link,
	[data-device="desktop"] nav[data-id="menu"] > ul > li[class*="ct-mega-menu"] > .sub-menu > li > .ct-menu-link::before,
	[data-device="desktop"] nav[data-id="menu"] > ul > li[class*="ct-mega-menu"] > .sub-menu > li > .ct-menu-link::after { transition: none; }
}
/* menšie notebooky: 3 stĺpce */
@media (max-width: 1280px) {
	[data-device="desktop"] nav[data-id="menu"] > ul > li[class*="ct-mega-menu"] > .sub-menu { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	[data-device="desktop"] nav[data-id="menu"] > ul > li[class*="ct-mega-menu"] > .sub-menu > li:nth-child(1) { grid-column: span 2; }
	[data-device="desktop"] nav[data-id="menu"] > ul > li[class*="ct-mega-menu"] > .sub-menu > li:nth-child(2) { grid-column: span 1; }
}

/* =========================================================
   11n) HLAVIČKA (desktop) – podľa návrhu „Slownatur 2027“, iba CSS (obsah hlavičky ostáva z Blocksy)
        horný pás tmavozelený · stredný riadok jemný biely prechod · Účet a košík ako dlaždice s ikonou
        menu: pri hover jemná kapsula, aktuálna stránka limetková kapsula
   ========================================================= */
/* horný pás */
html body .ct-header [data-device="desktop"] [data-row="top"] {
	background: radial-gradient(60% 260% at 100% 50%, rgba(92, 153, 59, .35), transparent 70%), #10241A;
	border: 0;
}
html body .ct-header [data-device="desktop"] [data-row="top"] .ct-header-text,
html body .ct-header [data-device="desktop"] [data-row="top"] .ct-header-text p { color: var(--spk-lime); letter-spacing: .02em; }
html body .ct-header [data-device="desktop"] [data-row="top"] .ct-header-text p::before {
	content: "";
	display: inline-block;
	width: 14px;
	height: 14px;
	margin-right: .5em;
	vertical-align: -2px;
	background: var(--spk-lime);
	-webkit-mask: var(--spk-leaf) center / contain no-repeat;
	mask: var(--spk-leaf) center / contain no-repeat;
}
html body .ct-header [data-device="desktop"] [data-row="top"] .ct-contact-info { --theme-icon-color: var(--spk-accent); --theme-link-initial-color: var(--spk-white); --theme-link-hover-color: var(--spk-lime); }
html body .ct-header [data-device="desktop"] [data-row="top"] .ct-contact-info a { color: var(--spk-white); font-weight: 700; text-decoration: none; transition: color .25s ease; }
html body .ct-header [data-device="desktop"] [data-row="top"] .ct-contact-info a:hover { color: var(--spk-lime); }

/* stredný riadok: veľmi jemný biely prechod */
html body .ct-header [data-device="desktop"] [data-row="middle"] { background: linear-gradient(100deg, #FFFFFF, #F6F9F1 55%, #FBF8EC); }

/* Účet: ikona + text (ako v návrhu), pri hover ikona v limetkovom kruhu */
html body .ct-header [data-device="desktop"] .ct-header-account .ct-account-item {
	--theme-link-initial-color: var(--spk-ink);
	--theme-link-hover-color: var(--spk-primary-dd);
	--theme-icon-color: var(--spk-primary-d);
	--theme-icon-hover-color: var(--spk-primary-dd);
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 6px 12px 6px 6px;
	border-radius: var(--spk-r-btn);
	color: var(--spk-ink);
	text-decoration: none;
	transition: background .3s ease, box-shadow .3s ease;
}
html body .ct-header [data-device="desktop"] .ct-header-account .ct-account-item > svg {
	order: -1;
	box-sizing: content-box;
	width: 24px;
	height: 24px;
	padding: 9px;
	border-radius: 50%;
	fill: var(--spk-primary-d);
	transition: background-color .3s ease, transform .4s var(--spk-ease);
}
html body .ct-header [data-device="desktop"] .ct-header-account .ct-label { color: inherit; font-size: 16px; font-weight: 700; }  /* WCAG: kontrast 15 : 1, cieľ kliknutia ≥ 42 px */
html body .ct-header [data-device="desktop"] .ct-header-account .ct-account-item:is(:hover, :focus-visible) { background: linear-gradient(110deg, var(--spk-lime) 0%, #EDFCD3 55%, #FFF6CF 100%); color: var(--spk-primary-dd); box-shadow: inset 0 0 0 2px var(--spk-primary); }
html body .ct-header [data-device="desktop"] .ct-header-account .ct-account-item:is(:hover, :focus-visible) > svg { background: var(--spk-white); transform: rotate(-8deg); }

/* košík: biela kapsula – krúžok do dopravy zdarma okolo ikony, suma a „do dopravy zdarma chýba X €“
   percento a text posiela snippet „Slownatur – hlavička obchodu“ (premenná --spk-doprava, prvok .spk-doprava) */
html body .ct-header [data-device="desktop"] .ct-header-cart .ct-cart-item {
	--theme-link-initial-color: var(--spk-ink);
	--theme-link-hover-color: var(--spk-ink);
	--theme-icon-color: var(--spk-primary-dd);
	--theme-icon-hover-color: var(--spk-primary-dd);
	--spk-ring: var(--spk-accent);
	box-sizing: border-box;
	display: grid;
	grid-template-columns: auto auto;
	grid-template-areas: "ikona suma" "ikona doprava";
	column-gap: 12px;
	align-items: center;
	min-height: 64px;
	padding: 6px 22px 6px 6px;
	border: 1px solid #EAE4C4;
	border-radius: 999px;
	background: var(--spk-white);
	color: var(--spk-ink);
	text-decoration: none;
	box-shadow: 0 10px 24px -16px rgba(31, 77, 35, .5);
	transition: background .3s ease, box-shadow .3s ease, border-color .3s ease, transform .25s var(--spk-ease);
}
html body .ct-header [data-device="desktop"] .ct-header-cart .ct-cart-item[data-doprava="hotovo"] { --spk-ring: var(--spk-primary); }
html body .ct-header [data-device="desktop"] .ct-header-cart .ct-cart-item .ct-icon-container {
	grid-area: ikona;
	position: relative;
	display: grid;
	place-items: center;
	width: 52px;
	height: 52px;
	border-radius: 50%;
	background:
		radial-gradient(closest-side, var(--spk-white) 80%, transparent 82% 100%),
		conic-gradient(var(--spk-ring) calc(var(--spk-doprava, 0) * 1%), #EFE9D2 0);
	transition: transform .4s var(--spk-ease);
}
html body .ct-header [data-device="desktop"] .ct-header-cart .ct-cart-item .ct-icon-container svg { width: 22px; height: 22px; fill: var(--spk-primary-dd); }
html body .ct-header [data-device="desktop"] .ct-header-cart .ct-dynamic-count-cart {
	position: absolute;
	top: -4px;
	right: -4px;
	min-width: 22px;
	height: 22px;
	padding: 0 5px;
	box-sizing: border-box;
	border: 2px solid var(--spk-white);
	border-radius: 999px;
	background: var(--spk-primary-dd);
	color: var(--spk-white);
	font-size: 12px;
	font-weight: 800;
	line-height: 18px;
	text-align: center;
}
html body .ct-header [data-device="desktop"] .ct-header-cart .ct-dynamic-count-cart[data-count="0"] { display: none; }
html body .ct-header [data-device="desktop"] .ct-header-cart .ct-label { grid-area: suma; align-self: end; color: var(--spk-ink); font-size: 17px; font-weight: 800; line-height: 1.15; }
html body .ct-header [data-device="desktop"] .ct-header-cart .spk-doprava { grid-area: doprava; align-self: start; color: #4A5A44; font-size: 14px; line-height: 1.3; white-space: nowrap; }  /* WCAG: 14 px, kontrast 7,4 : 1 (oranžová suma 6 : 1) */
html body .ct-header [data-device="desktop"] .ct-header-cart .spk-doprava strong { color: var(--spk-accent-d); font-weight: 800; }
html body .ct-header [data-device="desktop"] .ct-header-cart .ct-cart-item[data-doprava="hotovo"] .spk-doprava strong { color: var(--spk-primary-d); }
html body .ct-header [data-device="desktop"] .ct-header-cart .ct-cart-item:is(:hover, :focus-visible) {
	border-color: transparent;
	background: linear-gradient(110deg, var(--spk-lime) 0%, #EDFCD3 55%, #FFF6CF 100%);
	box-shadow: inset 0 0 0 2px var(--spk-primary), 0 12px 24px -14px rgba(31, 77, 35, .55);
	transform: translateY(-2px);
}
html body .ct-header [data-device="desktop"] .ct-header-cart .ct-cart-item:is(:hover, :focus-visible) .ct-icon-container { transform: rotate(-8deg); }
html body .ct-header [data-device="desktop"] :is(.ct-header-account .ct-account-item, .ct-header-cart .ct-cart-item):focus-visible { outline: 2px solid var(--spk-accent); outline-offset: 2px; }

/* menu: hover aj aktuálna stránka rovnako ako tlačidlá – limetka → jemná žltá, zelený rám, tmavozelený text a ikona */
html body .ct-header [data-device="desktop"] nav[data-id="menu"] > ul > li > .ct-menu-link { position: relative; z-index: 0; transition: color .25s ease; }
/* ikony menu v pokoji svetlo limetkové (#DAFFC2 – farba 11 v Blocksy) */
html body .ct-header [data-device="desktop"] nav[data-id="menu"] > ul > li > .ct-menu-link { --theme-icon-color: #DAFFC2; }
html body .ct-header [data-device="desktop"] nav[data-id="menu"] > ul > li > .ct-menu-link svg { fill: #DAFFC2; transition: fill .25s ease; }  /* rovnaká špecificita ako hover nižšie – hover vyhrá */
html body .ct-header [data-device="desktop"] nav[data-id="menu"] > ul > li > .ct-menu-link::after {
	content: "";
	position: absolute;
	z-index: -1;
	inset: 50% -12px auto;  /* kapsula s miestom okolo ikony aj textu */
	height: 42px;
	border-radius: var(--spk-r-btn);
	background: linear-gradient(110deg, var(--spk-lime) 0%, #EDFCD3 55%, #FFF6CF 100%);
	box-shadow: inset 0 0 0 2px var(--spk-primary), 0 8px 18px -10px rgba(216, 255, 191, .55);
	opacity: 0;
	transform: translateY(-50%) scale(.92);
	transition: opacity .25s ease, transform .35s var(--spk-ease);
}
html body .ct-header [data-device="desktop"] nav[data-id="menu"] > ul > li:is(:hover, :focus-within, [class*="current-menu-"]) > .ct-menu-link {
	--theme-link-hover-color: var(--spk-primary-dd);
	--theme-link-active-color: var(--spk-primary-dd);
	--theme-icon-color: var(--spk-primary-dd);
	--theme-icon-hover-color: var(--spk-primary-dd);
	--theme-icon-active-color: var(--spk-primary-dd);
	color: var(--spk-primary-dd);
}
html body .ct-header [data-device="desktop"] nav[data-id="menu"] > ul > li:is(:hover, :focus-within, [class*="current-menu-"]) > .ct-menu-link svg { fill: var(--spk-primary-dd); }
html body .ct-header [data-device="desktop"] nav[data-id="menu"] > ul > li:is(:hover, :focus-within, [class*="current-menu-"]) > .ct-menu-link::after { opacity: 1; transform: translateY(-50%) scale(1); }
html body .ct-header [data-device="desktop"] nav[data-id="menu"] > ul > li > .ct-menu-link .ct-icon-container { transition: transform .4s var(--spk-ease); }
html body .ct-header [data-device="desktop"] nav[data-id="menu"] > ul > li:is(:hover, :focus-within) > .ct-menu-link .ct-icon-container { transform: rotate(-10deg) scale(1.08); }

@media (prefers-reduced-motion: reduce) {
	html body .ct-header [data-device="desktop"] :is(.ct-header-account .ct-account-item, .ct-header-cart .ct-cart-item),
	html body .ct-header [data-device="desktop"] nav[data-id="menu"] > ul > li > .ct-menu-link::after { transition: none; }
}

/* =========================================================
   11o) MOBILNÉ MENU (Blocksy #offcanvas) – rovnaký štýl ako panel filtrov a hlavička na desktope
        teplý panel · košík s krúžkom do dopravy zdarma · položky s ikonou v limetkovom kruhu, aktuálna a hover ako tlačidlá
        E-shop rozbalí kategórie s ikonami · kontakty ako dlaždice · spodné odkazy 2 × 2
   ========================================================= */
html [data-header] #offcanvas[data-behaviour] { background-color: rgba(16, 36, 26, .45); -webkit-backdrop-filter: blur(3px); backdrop-filter: blur(3px); }
html [data-header] #offcanvas .ct-panel-inner { background: linear-gradient(180deg, #F6F3DF 0, #FBFAF1 200px, var(--spk-white) 480px); }
html [data-header] #offcanvas .ct-toggle-close[data-type] { --toggle-button-background: var(--spk-primary-dd); --toggle-button-radius: var(--spk-r-btn); --theme-icon-color: var(--spk-lime); --theme-icon-hover-color: var(--spk-primary-dd); }
html [data-header] #offcanvas .ct-toggle-close[data-type]:is(:hover, :focus-visible) { --toggle-button-background: var(--spk-lime); --theme-icon-color: var(--spk-primary-dd); }
html [data-header] #offcanvas .ct-panel-content-inner { --mobile-menu-divider: 1px solid rgba(92, 153, 59, .22); }

/* košík: kapsula na celú šírku (krúžok a text dopĺňa snippet „Slownatur – hlavička obchodu“) */
html [data-header] #offcanvas .ct-header-cart { width: 100%; }
html [data-header] #offcanvas .ct-header-cart .ct-cart-item {
	--theme-link-initial-color: var(--spk-ink);
	--theme-link-hover-color: var(--spk-ink);
	--theme-icon-color: var(--spk-primary-dd);
	--theme-icon-hover-color: var(--spk-primary-dd);
	--spk-ring: var(--spk-accent);
	box-sizing: border-box;
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	grid-template-areas: "ikona suma" "ikona doprava";
	column-gap: 12px;
	align-items: center;
	width: 100%;
	min-height: 64px;
	padding: 6px 16px 6px 6px;
	border: 1px solid #EAE4C4;
	border-radius: 999px;
	background: var(--spk-white);
	color: var(--spk-ink);
	text-decoration: none;
	box-shadow: 0 10px 24px -16px rgba(31, 77, 35, .5);
}
html [data-header] #offcanvas .ct-header-cart .ct-cart-item[data-doprava="hotovo"] { --spk-ring: var(--spk-primary); }
html [data-header] #offcanvas .ct-header-cart .ct-icon-container {
	grid-area: ikona;
	position: relative;
	display: grid;
	place-items: center;
	width: 52px;
	height: 52px;
	border-radius: 50%;
	background: radial-gradient(closest-side, var(--spk-white) 80%, transparent 82% 100%), conic-gradient(var(--spk-ring) calc(var(--spk-doprava, 0) * 1%), #EFE9D2 0);
}
html [data-header] #offcanvas .ct-header-cart .ct-icon-container svg { width: 22px; height: 22px; fill: var(--spk-primary-dd); }
html [data-header] #offcanvas .ct-header-cart .ct-dynamic-count-cart { position: absolute; top: -4px; right: -4px; min-width: 22px; height: 22px; padding: 0 5px; box-sizing: border-box; border: 2px solid var(--spk-white); border-radius: 999px; background: var(--spk-primary-dd); color: var(--spk-white); font-size: 12px; font-weight: 800; line-height: 18px; text-align: center; }
html [data-header] #offcanvas .ct-header-cart .ct-dynamic-count-cart[data-count="0"] { display: none; }
html [data-header] #offcanvas .ct-header-cart .ct-label { grid-area: suma; align-self: end; color: var(--spk-ink); font-size: 17px; font-weight: 800; line-height: 1.15; }
html [data-header] #offcanvas .ct-header-cart .spk-doprava { grid-area: doprava; align-self: start; color: #4A5A44; font-size: 14px; line-height: 1.3; }
html [data-header] #offcanvas .ct-header-cart .spk-doprava strong { color: var(--spk-accent-d); font-weight: 800; }
html [data-header] #offcanvas .ct-header-cart .ct-cart-item[data-doprava="hotovo"] .spk-doprava strong { color: var(--spk-primary-d); }

/* účet: riadok s ikonou v limetkovom kruhu */
html [data-header] #offcanvas .ct-header-account .ct-account-item { --theme-link-initial-color: var(--spk-ink); display: inline-flex; align-items: center; gap: 10px; color: var(--spk-ink); text-decoration: none; }
html [data-header] #offcanvas .ct-header-account .ct-account-item > svg { order: -1; box-sizing: content-box; width: 20px; height: 20px; padding: 10px; border-radius: 50%; background: var(--spk-accent); fill: var(--spk-ink); transition: background-color .3s ease, transform .4s var(--spk-ease); }
html [data-header] #offcanvas .ct-header-account .ct-account-item:is(:hover, :focus-visible) > svg { background: var(--spk-primary-dd); fill: var(--spk-lime); transform: rotate(-8deg); }
html [data-header] #offcanvas .ct-header-account .ct-label { color: inherit; font-size: 16px; font-weight: 700; }

/* hlavné menu: ikona v limetkovom kruhu, aktuálna a hover ako tlačidlá */
html [data-header] #offcanvas nav[data-id="mobile-menu"] > ul > li > .ct-menu-link,
html [data-header] #offcanvas nav[data-id="mobile-menu"] > ul > li > .ct-sub-menu-parent > .ct-menu-link {
	--theme-link-initial-color: var(--spk-ink);
	--theme-link-hover-color: var(--spk-primary-dd);
	--theme-link-active-color: var(--spk-primary-dd);
	--theme-icon-color: var(--spk-primary-dd);
	display: flex;
	align-items: center;
	gap: 12px;
	padding-block: 8px;
	color: var(--spk-ink);
}
html [data-header] #offcanvas nav[data-id="mobile-menu"] > ul > li .ct-icon-container.ct-left {
	display: grid;
	place-items: center;
	flex: none;
	width: 38px;
	height: 38px;
	margin: 0;
	border-radius: 50%;
	background: var(--spk-lime);
	transition: background-color .3s ease, transform .4s var(--spk-ease);
}
html [data-header] #offcanvas nav[data-id="mobile-menu"] > ul > li .ct-icon-container.ct-left svg { width: 18px; height: 18px; fill: var(--spk-primary-dd); }
html [data-header] #offcanvas nav[data-id="mobile-menu"] > ul > li:is([class*="current-menu-"], :hover) > :is(.ct-menu-link, .ct-sub-menu-parent) { background: linear-gradient(110deg, var(--spk-lime) 0%, #EDFCD3 55%, #FFF6CF 100%); }
html [data-header] #offcanvas nav[data-id="mobile-menu"] > ul > li > :is(.ct-menu-link, .ct-sub-menu-parent) { margin-inline: 0; padding-inline: 10px; border-radius: 0; }  /* výber od čiary po čiaru – symetricky */
html [data-header] #offcanvas nav[data-id="mobile-menu"] > ul > li:is([class*="current-menu-"], :hover) > :is(.ct-menu-link, .ct-sub-menu-parent) .ct-icon-container.ct-left { background: var(--spk-primary-dd); transform: rotate(-8deg); }
html [data-header] #offcanvas nav[data-id="mobile-menu"] > ul > li:is([class*="current-menu-"], :hover) > :is(.ct-menu-link, .ct-sub-menu-parent) .ct-icon-container.ct-left svg { fill: var(--spk-lime); }
/* rozbalenie E-shopu: tlačidlo v kruhu */
html [data-header] #offcanvas .ct-toggle-dropdown-mobile {
	--theme-icon-color: var(--spk-primary-dd);
	display: grid;
	place-items: center;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: var(--spk-white);
	box-shadow: inset 0 0 0 1px rgba(92, 153, 59, .35);
	transition: background-color .3s ease;
}
html [data-header] #offcanvas .ct-toggle-dropdown-mobile[aria-expanded="true"] { --theme-icon-color: var(--spk-lime); background: var(--spk-primary-dd); box-shadow: none; }
/* kategórie v E-shope: ikona podľa kategórie */
html [data-header] #offcanvas nav[data-id="mobile-menu"] .sub-menu { padding-block: 4px 10px; }
html [data-header] #offcanvas nav[data-id="mobile-menu"] .sub-menu li { border: 0; }
html [data-header] #offcanvas nav[data-id="mobile-menu"] .sub-menu .ct-menu-link {
	--theme-link-initial-color: var(--spk-ink);
	--theme-link-hover-color: var(--spk-primary-dd);
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 2px 0;
	padding: 8px 10px;
	border-radius: 0;
	color: var(--spk-ink);
	font-size: 16px;
	transition: background .25s ease;
}
html [data-header] #offcanvas nav[data-id="mobile-menu"] .sub-menu .ct-menu-link::before {
	content: "";
	flex: none;
	width: 18px;
	height: 18px;
	background: var(--spk-primary);
	-webkit-mask: var(--spk-cat-ic, var(--spk-leaf)) center / contain no-repeat;
	mask: var(--spk-cat-ic, var(--spk-leaf)) center / contain no-repeat;
}
html [data-header] #offcanvas nav[data-id="mobile-menu"] .sub-menu li:is([class*="current-menu-"], :hover) > .ct-menu-link { background: linear-gradient(110deg, var(--spk-lime) 0%, #EDFCD3 55%, #FFF6CF 100%); color: var(--spk-primary-dd); }

/* kontakty: väčšie dlaždice na celú šírku – telefóny oranžové, e-mail zelený a oddelený čiarou */
html [data-header] #offcanvas .ct-contact-info { width: 100%; margin-top: 12px; --theme-icon-size: 20px; }
html [data-header] #offcanvas .ct-contact-info ul { display: grid; gap: 10px; width: 100%; }
html [data-header] #offcanvas .ct-contact-info li { position: relative; box-sizing: border-box; display: flex; align-items: center; gap: 14px; width: 100%; min-height: 66px; margin: 0; padding: 8px 14px 8px 8px; border: 1px solid #F1D6B0; border-radius: var(--spk-r); background: linear-gradient(110deg, #FFF4E4, var(--spk-white) 75%); transition: border-color .25s ease, box-shadow .25s ease, transform .25s var(--spk-ease); }
html [data-header] #offcanvas .ct-contact-info .ct-icon-container { display: grid; place-items: center; width: 48px; height: 48px; min-width: 48px; padding: 0; border-radius: 50%; background: var(--spk-accent); transition: background-color .3s ease, transform .4s var(--spk-ease); }
html [data-header] #offcanvas .ct-contact-info .ct-icon-container svg { fill: var(--spk-ink); transition: fill .3s ease; }
html [data-header] #offcanvas .ct-contact-info .contact-text, html [data-header] #offcanvas .ct-contact-info .contact-text a { color: var(--spk-ink); font-size: 18px; font-weight: 800; line-height: 1.25; text-decoration: none; }
html [data-header] #offcanvas .ct-contact-info .contact-title { color: #4A5A44; font-size: 14px; font-weight: 400; }
html [data-header] #offcanvas .ct-contact-info li:is(:hover, :focus-within) { border-color: var(--spk-accent); box-shadow: 0 10px 22px -16px rgba(154, 78, 0, .6); transform: translateY(-1px); }
html [data-header] #offcanvas .ct-contact-info li:is(:hover, :focus-within) .ct-icon-container { background: var(--spk-primary-dd); transform: rotate(-8deg); }
html [data-header] #offcanvas .ct-contact-info li:is(:hover, :focus-within) .ct-icon-container svg { fill: var(--spk-lime); }
/* e-mail: oddelený od telefónov prerušovanou čiarou, zelený */
html [data-header] #offcanvas .ct-contact-info li:has(a[href^="mailto:"]) { margin-top: 12px; border-color: #CFE3BE; background: linear-gradient(110deg, #EEF8E4, var(--spk-white) 75%); }
html [data-header] #offcanvas .ct-contact-info li:has(a[href^="mailto:"])::before { content: ""; position: absolute; top: -12px; left: 0; right: 0; border-top: 1px dashed rgba(92, 153, 59, .55); transform: translateY(-50%); pointer-events: none; }
html [data-header] #offcanvas .ct-contact-info li:has(a[href^="mailto:"]) .ct-icon-container { background: var(--spk-primary-dd); }
html [data-header] #offcanvas .ct-contact-info li:has(a[href^="mailto:"]) .ct-icon-container svg { fill: var(--spk-lime); }
html [data-header] #offcanvas .ct-contact-info li:has(a[href^="mailto:"]) .contact-text a { font-size: 17px; }
html [data-header] #offcanvas .ct-contact-info li:has(a[href^="mailto:"]):is(:hover, :focus-within) { border-color: var(--spk-primary); box-shadow: 0 10px 22px -16px rgba(31, 77, 35, .6); }
html [data-header] #offcanvas .ct-contact-info li:has(a[href^="mailto:"]):is(:hover, :focus-within) .ct-icon-container { background: var(--spk-accent); }
html [data-header] #offcanvas .ct-contact-info li:has(a[href^="mailto:"]):is(:hover, :focus-within) .ct-icon-container svg { fill: var(--spk-ink); }

/* spodné odkazy (E-shop, Môj účet, Pokladňa, Košík): dlaždice 2 × 2 */
html [data-header] #offcanvas nav[data-id="mobile-menu-secondary"] > ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
html [data-header] #offcanvas nav[data-id="mobile-menu-secondary"] > ul > li { border: 0; }
html [data-header] #offcanvas nav[data-id="mobile-menu-secondary"] > ul > li > .ct-menu-link {
	--theme-link-initial-color: var(--spk-ink);
	--theme-link-hover-color: var(--spk-primary-dd);
	--theme-icon-color: var(--spk-primary);
	box-sizing: border-box;
	display: flex;
	align-items: center;
	gap: 8px;
	height: 100%;
	padding: 10px 12px;
	border: 1px solid var(--spk-line);
	border-radius: var(--spk-r);
	background: var(--spk-white);
	color: var(--spk-ink);
	font-size: 15px;
	line-height: 1.25;
	transition: background .25s ease, box-shadow .25s ease;
}
html [data-header] #offcanvas nav[data-id="mobile-menu-secondary"] > ul > li > .ct-menu-link:hover { border-color: transparent; background: linear-gradient(110deg, var(--spk-lime) 0%, #EDFCD3 55%, #FFF6CF 100%); box-shadow: inset 0 0 0 2px var(--spk-primary); }
html [data-header] #offcanvas nav[data-id="mobile-menu-secondary"] > ul > li:first-child { grid-column: 1 / -1; }  /* dlhý odkaz na obchod cez celú šírku */

/* =========================================================
   11p) STRÁNKA KONTAKT – 4 Flexboxy v Elementore, všetko v šírke obsahu Blocksy:
        „Hero“ (HTML widget .spk-khero) · Kontakty (HTML widget .spk-kkont)
        „Formular“ (trieda spk-kpas): Div block s Nadpisom + Formulárom (klasický widget) | Div block s HTML widgetom .spk-kudaje – oba rovnako vysoké
        „Mapa“ (HTML widget .spk-kprev): prevádzka – mapa cez celú šírku obsahu, adresa ako karta na mape
   ========================================================= */

/* --- HERO --- */
.spk-sec.spk-khero {
	padding-block: clamp(36px, 6vw, 80px);
	border-image: linear-gradient(100deg, var(--spk-ice) 0%, #F7F6E6 55%, var(--spk-sun) 100%) fill 0 // 0 100vw;
	overflow: clip;
}
.spk-khero__in { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); align-items: center; gap: clamp(24px, 4vw, 56px); }
.spk-khero__text { display: grid; gap: 16px; justify-items: start; }
.spk-khero h1 { position: relative; padding-bottom: .18em; }
.spk-khero h1::after { content: ""; position: absolute; left: 0; bottom: 0; width: 2.4em; height: .2em; background: var(--spk-accent); -webkit-mask: var(--spk-swoosh) center / 100% 100% no-repeat; mask: var(--spk-swoosh) center / 100% 100% no-repeat; transform-origin: left; animation: spk-kresli .9s .2s cubic-bezier(.4, 0, .2, 1) both; }
.spk-khero .spk-lead { max-width: 36em; font-size: 18px; }
.spk-khero__akcie { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 6px; }
.spk-khero__akcie .spk-btn { gap: 10px; }
.spk-khero__akcie .spk-ic { width: 20px; height: 20px; }
/* e-mail: svetlé tlačidlo s rovnakým hover ako všetky tlačidlá */
.spk-sec a.spk-khero__mail {
	display: inline-flex; align-items: center; gap: 10px;
	min-height: 52px; padding: 0 22px;
	border-radius: var(--spk-r-btn);
	background: var(--spk-white);
	color: var(--spk-primary-dd);
	font-weight: 700; text-decoration: none;
	box-shadow: inset 0 0 0 2px rgba(92, 153, 59, .45), 0 10px 22px -16px rgba(31, 77, 35, .55);
	transition: background .4s ease, box-shadow .3s ease, transform .25s var(--spk-ease);
}
.spk-sec a.spk-khero__mail:is(:hover, :focus-visible) { background: linear-gradient(110deg, var(--spk-lime) 0%, #EDFCD3 55%, #FFF6CF 100%); box-shadow: inset 0 0 0 2px var(--spk-primary), 0 14px 26px -14px rgba(31, 77, 35, .55); transform: translateY(-2px); }
.spk-khero__adresa { display: flex; align-items: center; gap: 8px; color: var(--spk-muted); }
.spk-khero__adresa .spk-ic { width: 20px; height: 20px; color: var(--spk-accent-d); }

/* orbita – ozdoba (telefón, e-mail, prevádzka krúžia okolo lístka) */
.spk-khero__orbit { position: relative; justify-self: center; width: min(100%, 360px); aspect-ratio: 1; }
.spk-khero__kruh { position: absolute; inset: 0; border: 1px dashed rgba(92, 153, 59, .45); border-radius: 50%; }
.spk-khero__kruh:nth-child(2) { inset: 17%; border-style: solid; border-color: rgba(247, 151, 21, .35); }
.spk-khero__kruh:nth-child(3) { inset: 34%; border: 0; background: radial-gradient(closest-side, rgba(216, 255, 191, .9), rgba(216, 255, 191, 0)); }
.spk-khero__stred { position: absolute; inset: 37%; display: grid; place-items: center; border-radius: 50%; background: radial-gradient(circle at 30% 25%, var(--spk-ink-2), var(--spk-primary-dd) 70%); color: var(--spk-lime); box-shadow: var(--spk-shadow-lg); }
.spk-khero__stred::after { content: ""; position: absolute; inset: -10px; border: 2px solid var(--spk-primary); border-radius: 50%; animation: spk-kruh 4s ease-out infinite; }
.spk-khero__stred .spk-ic { width: 40%; height: 40%; animation: spk-list 6s ease-in-out infinite; }
.spk-khero__obeh { position: absolute; inset: 0; animation: spk-tocit 48s linear infinite; }
.spk-khero__bod { position: absolute; display: grid; place-items: center; width: 64px; height: 64px; margin: -32px; border-radius: 50%; box-shadow: 0 14px 26px -14px rgba(31, 77, 35, .6); animation: spk-tocit 48s linear infinite reverse; }
.spk-khero__bod .spk-ic { width: 26px; height: 26px; }
.spk-khero__bod--tel  { top: 0; left: 50%; background: var(--spk-accent); color: var(--spk-ink); }
.spk-khero__bod--mail { top: 75%; left: 93.3%; background: var(--spk-primary-dd); color: var(--spk-lime); }
.spk-khero__bod--pin  { top: 75%; left: 6.7%; background: var(--spk-white); color: var(--spk-accent-d); box-shadow: inset 0 0 0 2px var(--spk-lime), 0 14px 26px -14px rgba(31, 77, 35, .6); }

/* --- KONTAKTY (HTML widget) – šírka obsahu podľa Blocksy --- */
.spk-kkont { box-sizing: border-box; display: grid; gap: 18px; width: min(var(--spk-width), var(--spk-max)); margin-inline: auto; padding-block: clamp(32px, 5vw, 56px); container-type: inline-size; }
.spk-kkont :where(h2, ul, address) { margin: 0; }
.spk-kkont__h { color: var(--spk-ink); }
.spk-kkont address { font-style: normal; }
.spk-kkont ul { display: grid; gap: 10px; padding: 0; list-style: none; }
.spk-kkont li { margin: 0; }
.spk-kkarta {
	--spk-k-ic: var(--spk-accent); --spk-k-fg: var(--spk-ink); --spk-k-bg: #FFF4E4; --spk-k-ram: #F1D6B0;
	position: relative; box-sizing: border-box;
	display: flex; align-items: center; gap: 14px;
	min-height: 74px; padding: 10px 18px 10px 10px;
	border: 1px solid var(--spk-k-ram); border-radius: var(--spk-r);
	background: linear-gradient(110deg, var(--spk-k-bg), var(--spk-white) 70%);
	color: var(--spk-ink); text-decoration: none;
	transition: background .4s ease, border-color .3s ease, box-shadow .3s ease, transform .25s var(--spk-ease);
}
.spk-kkarta--mail { --spk-k-ic: var(--spk-primary-dd); --spk-k-fg: var(--spk-lime); --spk-k-bg: #EEF8E4; --spk-k-ram: #CFE3BE; margin-top: 12px; }
/* e-mail oddelený od telefónov prerušovanou čiarou – rovnako ako v mobilnom menu */
.spk-kkarta--mail::before { content: ""; position: absolute; top: -12px; left: 0; right: 0; border-top: 1px dashed rgba(92, 153, 59, .55); transform: translateY(-50%); pointer-events: none; }
.spk-kkarta__ic { display: grid; place-items: center; flex: none; width: 54px; height: 54px; border-radius: 50%; background: var(--spk-k-ic); color: var(--spk-k-fg); transition: background-color .3s ease, color .3s ease, transform .4s var(--spk-ease); }
.spk-kkarta__ic .spk-ic { width: 24px; height: 24px; }
.spk-kkarta__txt { display: grid; gap: 2px; min-width: 0; }
.spk-kkarta__popis { color: #4A5A44; font-size: 14px; }
.spk-kkarta__hodnota { color: var(--spk-ink); font-size: 20px; font-weight: 800; line-height: 1.2; overflow-wrap: anywhere; }
.spk-kkarta__sip { position: absolute; right: 14px; top: calc(50% - 10px); width: 20px; height: 20px; color: var(--spk-primary-dd); opacity: 0; transform: translateX(-8px); transition: opacity .25s ease, transform .3s var(--spk-ease); }
.spk-kkarta:is(:hover, :focus-visible) { border-color: transparent; background: linear-gradient(110deg, var(--spk-lime) 0%, #EDFCD3 55%, #FFF6CF 100%); box-shadow: inset 0 0 0 2px var(--spk-primary), 0 14px 26px -16px rgba(31, 77, 35, .6); transform: translateY(-2px); }
.spk-kkarta:is(:hover, :focus-visible) .spk-kkarta__ic { background: var(--spk-primary-dd); color: var(--spk-lime); transform: rotate(-8deg); }
.spk-kkarta--mail:is(:hover, :focus-visible) .spk-kkarta__ic { background: var(--spk-accent); color: var(--spk-ink); }
.spk-kkarta:is(:hover, :focus-visible) .spk-kkarta__sip { opacity: 1; transform: none; }
.spk-kkarta:focus-visible { outline: 2px solid var(--spk-accent); outline-offset: 2px; }
.spk-kkarta:active { transform: scale(.98); }
/* keď je miesto (cez celú šírku obsahu): karty vedľa seba – e-mail oddelený zvislou prerušovanou čiarou */
@container (min-width: 1080px) {
	.spk-kkont ul { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.spk-kkarta { height: 100%; }
	.spk-kkarta--mail { margin: 0 0 0 14px; }
	.spk-kkarta--mail::before { top: 0; bottom: 0; left: -12px; right: auto; border-top: 0; border-left: 1px dashed rgba(92, 153, 59, .55); transform: translateX(-50%); }
	.spk-kkarta__hodnota { font-size: 18px; }
}
@container (min-width: 600px) and (max-width: 1079.98px) {
	.spk-kkont ul { grid-template-columns: repeat(3, minmax(0, 1fr)); }  /* 3 telefóny vedľa seba, e-mail pod nimi cez celú šírku */
	.spk-kkont li:has(.spk-kkarta--mail) { grid-column: 1 / -1; }
	.spk-kkarta__hodnota { font-size: 18px; }
}

/* --- FLEXBOX „Formular“: formulár vľavo, prevádzka s mapou vpravo – rovnako vysoké (šírka podľa Blocksy) --- */
:is(.spk-kpas, #spk-kpas).e-con, :is(.spk-kpas, #spk-kpas) {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
	align-items: stretch !important;
	gap: 24px clamp(24px, 4vw, 48px) !important;
	padding: clamp(40px, 6vw, 80px) calc((100% - min(var(--spk-width), var(--spk-max))) / 2) !important;
	position: relative;
	isolation: isolate;
	overflow: clip;
	/* tmavý lesný gradient – svetlo zľava hore, teplý odlesk vpravo dole */
	background:
		radial-gradient(55% 75% at 0% 0%, rgba(92, 153, 59, .42), transparent 70%),
		radial-gradient(45% 65% at 100% 100%, rgba(247, 151, 21, .2), transparent 70%),
		linear-gradient(135deg, #10241A 0%, var(--spk-primary-dd) 55%, #163A1D 100%) !important;
}
/* vetvička ako vodoznak v rohu */
:is(.spk-kpas, #spk-kpas)::after { content: ""; position: absolute; z-index: -1; right: -40px; bottom: -40px; width: clamp(200px, 26vw, 380px); aspect-ratio: 1; background: var(--spk-lime); opacity: .07; -webkit-mask: var(--spk-sprig) center / contain no-repeat; mask: var(--spk-sprig) center / contain no-repeat; pointer-events: none; }
:is(.spk-kpas, #spk-kpas) > * { width: auto !important; max-width: none !important; min-width: 0; margin: 0 !important; }

/* karta s formulárom (Div block s Nadpisom a Formulárom) – v Elementore pri formulári nič nenastavuj, vzhľad je odtiaľto */
html :is(.spk-kpas, #spk-kpas) > :has(.elementor-widget-form) {
	box-sizing: border-box;
	display: flex !important; flex-direction: column; gap: 20px !important;
	padding: clamp(20px, 3vw, 36px) !important;
	border: 2px solid transparent; border-radius: var(--spk-r);
	background: radial-gradient(120% 80% at 100% 0%, rgba(255, 241, 214, .8), transparent 60%) padding-box, linear-gradient(var(--spk-white), var(--spk-white)) padding-box, linear-gradient(120deg, var(--spk-primary), var(--spk-lime) 50%, var(--spk-accent)) border-box;
	box-shadow: 0 30px 60px -30px rgba(0, 0, 0, .55);
}
html :is(.spk-kpas, #spk-kpas) > :has(.elementor-widget-form) > * { width: 100%; margin: 0; }
/* pravý Div block s údajmi: karty spolu na celú výšku formulára */
html :is(.spk-kpas, #spk-kpas) > :has(.spk-kudaje) { display: flex !important; flex-direction: column; padding: 0 !important; }
html :is(.spk-kpas, #spk-kpas) > :has(.spk-kudaje) > * { flex: 1 1 auto; display: flex; flex-direction: column; width: 100%; }
html :is(.spk-kpas, #spk-kpas) .elementor-heading-title { color: var(--spk-ink); }
html :is(.spk-kpas, #spk-kpas) .elementor-widget-form .elementor-field-group .elementor-field-textual {
	box-sizing: border-box;
	min-height: 54px !important;
	padding: .8em 1em !important;
	border: 1px solid rgba(92, 153, 59, .6) !important;
	border-radius: var(--spk-r-btn) !important;
	background: var(--spk-white) !important;
	color: var(--spk-ink) !important;
	font-size: 16px !important;  /* 16px – iPhone pri menšom písme v poli priblíži stránku */
	transition: border-color .25s ease, background-color .25s ease, box-shadow .25s ease;
}
html :is(.spk-kpas, #spk-kpas) .elementor-widget-form .elementor-field-group textarea.elementor-field-textual { min-height: 180px !important; resize: vertical; }
html :is(.spk-kpas, #spk-kpas) .elementor-widget-form .elementor-field-textual::placeholder { color: #66755E; opacity: 1; }
html :is(.spk-kpas, #spk-kpas) .elementor-widget-form .elementor-field-group .elementor-field-textual:hover { border-color: var(--spk-primary) !important; }
html :is(.spk-kpas, #spk-kpas) .elementor-widget-form .elementor-field-group .elementor-field-textual:focus { outline: none; border-color: var(--spk-primary) !important; background: var(--spk-white) !important; box-shadow: 0 0 0 4px var(--spk-lime); }
html :is(.spk-kpas, #spk-kpas) .elementor-widget-form .elementor-field-group .elementor-field-textual:user-invalid { border-color: var(--spk-accent-d) !important; box-shadow: 0 0 0 4px #FFE6C7; }
/* súhlas */
html :is(.spk-kpas, #spk-kpas) .elementor-field-type-acceptance .elementor-field-option { display: flex; align-items: center; gap: 10px; }
html :is(.spk-kpas, #spk-kpas) .elementor-field-type-acceptance input[type="checkbox"] { flex: none; width: 22px; height: 22px; margin: 0; accent-color: var(--spk-primary-dd); cursor: pointer; }
html :is(.spk-kpas, #spk-kpas) .elementor-field-type-acceptance label { margin: 0; color: var(--spk-ink); cursor: pointer; }
html :is(.spk-kpas, #spk-kpas) .elementor-widget-form [type="submit"] { min-height: 56px; }
/* hover: tmavozelený text a ikona (Elementor má v nastaveniach widgetu biely text pri hover) */
html :is(.spk-kpas, #spk-kpas) .elementor-widget-form .elementor-button:is(:hover, :focus-visible) { color: var(--spk-primary-dd) !important; }
html :is(.spk-kpas, #spk-kpas) .elementor-widget-form .elementor-button svg { fill: currentColor; transition: fill .3s ease; }
/* správa po odoslaní */
html :is(.spk-kpas, #spk-kpas) .elementor-message { margin-top: 14px; padding: 12px 16px; border-radius: var(--spk-r-btn); font-weight: 700; }
html :is(.spk-kpas, #spk-kpas) .elementor-message-success { background: var(--spk-lime); color: var(--spk-primary-dd); box-shadow: inset 0 0 0 2px var(--spk-primary); }
html :is(.spk-kpas, #spk-kpas) .elementor-message-danger { background: #FFF0DE; color: var(--spk-accent-d); box-shadow: inset 0 0 0 2px var(--spk-accent); }

/* --- ÚDAJE FIRMY (HTML widget v pravom Div blocku) – 2 karty pod sebou, spolu rovnako vysoké ako formulár --- */
.spk-kudaje { flex: 1 1 auto; display: flex; flex-direction: column; gap: 16px; }
.spk-kudaje > .spk-kbox { flex: 1 1 auto; border-color: transparent; box-shadow: 0 30px 60px -30px rgba(0, 0, 0, .55); }
:is(.spk-kudaje, .spk-kprev, .spk-kbox) :where(h2, h3, p, dl, dd, address) { margin: 0; }
.spk-kbox :is(h2, h3) { color: var(--spk-ink); }
.spk-kbox { position: relative; box-sizing: border-box; display: grid; align-content: start; gap: 14px; padding: clamp(20px, 3vw, 32px); border: 1px solid var(--spk-line); border-radius: var(--spk-r); background: var(--spk-white); box-shadow: var(--spk-shadow); overflow: clip; }
.spk-kbox::before { content: ""; position: absolute; inset: 0 0 auto; height: 4px; background: linear-gradient(90deg, var(--spk-primary), var(--spk-lime), var(--spk-accent)); }
.spk-kbox__hlava { display: flex; align-items: center; gap: 12px; }
.spk-kbox__ic { display: grid; place-items: center; flex: none; width: 46px; height: 46px; border-radius: 50%; background: var(--spk-lime); color: var(--spk-primary-dd); }
.spk-kbox__ic .spk-ic { width: 22px; height: 22px; }
.spk-kbox address { font-style: normal; line-height: 1.5; }
.spk-kbox address strong { color: var(--spk-ink); }
/* údaje ako dlaždice: názov malým nad hodnotou, jemné deliace linky (medzera 1px na podklade) – kliknutím sa označí celá hodnota */
.spk-kdl { display: flex; flex-wrap: wrap; gap: 1px; margin: 0; border: 1px solid #DDE8D2; border-radius: var(--spk-r-sm); background: #DDE8D2; overflow: clip; }
.spk-kdl > div { flex: 1 1 140px; display: grid; align-content: start; gap: 2px; padding: 12px 14px; background: linear-gradient(160deg, #F7FBF2, var(--spk-white) 70%); transition: background .3s ease; }
.spk-kdl > div:has(.spk-kiban) { flex-basis: 100%; }  /* IBAN cez celú šírku; ostatné dlaždice vždy vyplnia celý riadok */
.spk-kdl dt { color: #4A5A44; font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; line-height: 1.3; transition: color .25s ease; }
.spk-kdl dd { margin: 0; color: var(--spk-ink); font-size: 18px; font-weight: 800; line-height: 1.3; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; -webkit-user-select: all; user-select: all; }
.spk-kdl > div:hover { background: linear-gradient(110deg, var(--spk-lime) 0%, #EDFCD3 55%, #FFF6CF 100%); }
.spk-kdl > div:hover dt { color: var(--spk-primary-d); }
.spk-kiban { letter-spacing: .04em; white-space: nowrap; cursor: copy; }
/* prevádzka: mapa v karte (načíta sa až pri doskrolovaní) */
/* --- PREVÁDZKA (HTML widget vo Flexboxe „Mapa“): mapa cez celú šírku obsahu Blocksy, adresa ako karta na mape --- */
.spk-kprev { box-sizing: border-box; width: min(var(--spk-width), var(--spk-max)); margin-inline: auto; padding-block: clamp(40px, 6vw, 72px); }
.spk-kmapa { position: relative; min-height: 440px; border-radius: var(--spk-r); overflow: clip; background: var(--spk-tint); box-shadow: var(--spk-shadow); }
.spk-kmapa iframe { position: absolute; inset: 0; display: block; width: 100%; height: 100%; border: 0; }
/* vpravo hore – vľavo hore má Google vlastnú kartu miesta */
.spk-kmapa .spk-kbox { position: absolute; top: 16px; right: 16px; z-index: 1; gap: 8px; width: min(270px, calc(100% - 32px)); padding: 16px 18px; box-shadow: 0 20px 40px -20px rgba(31, 77, 35, .6); }
.spk-kmapa .spk-kbox__hlava { gap: 10px; }
.spk-kmapa .spk-kbox__ic { width: 36px; height: 36px; background: var(--spk-accent); color: var(--spk-ink); }
.spk-kmapa .spk-kbox__ic .spk-ic { width: 18px; height: 18px; }
.spk-kmapa .spk-kbox h3 { font-size: 20px; line-height: 1.2; }
.spk-kmapa .spk-kbox address { font-size: 16px; line-height: 1.45; }
.spk-kudaje__zapis { display: flex; align-items: flex-start; gap: 10px; margin-top: 16px; color: var(--spk-muted); font-size: 15px; }
.spk-kudaje__zapis .spk-ic { width: 20px; height: 20px; margin-top: 2px; color: var(--spk-primary); }


@media (max-width: 999.98px) {
	.spk-khero__in { grid-template-columns: minmax(0, 1fr) minmax(0, 260px); }
	:is(.spk-kpas, #spk-kpas).e-con, :is(.spk-kpas, #spk-kpas) { grid-template-columns: minmax(0, 1fr) !important; }
}
@media (max-width: 767.98px) {
	.spk-khero__in { grid-template-columns: minmax(0, 1fr); }
	.spk-khero__orbit { display: none; }  /* na mobile čo najmenej – hneď kontakty */
	.spk-khero .spk-lead { font-size: 16px; }
	.spk-sec.spk-khero { padding-block: 50px; }
	.spk-khero__text { justify-items: center; text-align: center; }
	.spk-khero h1::after { left: 50%; margin-left: -1.2em; transform-origin: center; }
	.spk-khero__akcie { width: 100%; }
	.spk-khero__akcie > * { flex: 1 1 100%; justify-content: center; }
	.spk-khero__adresa { display: block; text-wrap: balance; }
	.spk-khero__adresa .spk-ic { margin-right: 6px; vertical-align: -4px; }  /* ikona v riadku s textom – pekne aj pri zalomení */
	.spk-kkarta__hodnota { font-size: 18px; }
	.spk-kmapa { display: grid; min-height: 0; }
	.spk-kmapa .spk-kbox { position: static; width: auto; border-width: 0 0 1px; border-radius: 0; box-shadow: none; }
	.spk-kmapa iframe { position: static; height: 300px; }
}
@media (prefers-reduced-motion: reduce) {
	.spk-khero__obeh, .spk-khero__bod, .spk-khero__stred::after, .spk-khero__stred .spk-ic { animation: none; }
	.spk-kkarta, .spk-kkarta__ic, .spk-kkarta__sip, .spk-sec a.spk-khero__mail { transition: none; }
}

/* =========================================================
   11q) PRÍSTUPNOSŤ – kontrast skrytého textu v hodnotení (Lighthouse / WCAG 2.2)
        hviezdičky kreslí ::before vlastnou farbou; text „Hodnotenie 5.00 z 5“ je skrytý,
        ale čítačky a Lighthouse ho vidia – oranžová na bielej má iba 2,2 : 1, tmavá 15 : 1
   ========================================================= */
.star-rating span { color: var(--spk-ink); }

/* =========================================================
   12) ANIMÁCIE
   ========================================================= */
@keyframes spk-kresli { from { transform: scaleX(0); } to { transform: scaleX(1); } }
@keyframes spk-list { 0%, 100% { transform: rotate(-8deg); } 50% { transform: rotate(8deg); } }
@keyframes spk-zoom { from { transform: scale(1); } to { transform: scale(1.08); } }
@keyframes spk-obieh { to { --spk-uhol: 360deg; } }
@keyframes spk-pozadie {
	from { transform: translate3d(0, 0, 0) rotate(0deg) scale(1); }
	to   { transform: translate3d(-4%, 3%, 0) rotate(6deg) scale(1.08); }
}
@keyframes spk-vetvicka {
	0%, 100% { transform: rotate(-4deg); }
	50%      { transform: rotate(5deg); }
}
@keyframes spk-pulz {
	0%, 60%, 100% { transform: rotate(8deg) scale(1); }
	18% { transform: rotate(8deg) translateX(4px) scale(1.1); }
	32% { transform: rotate(8deg) scale(.96); }
	46% { transform: rotate(8deg) translateX(2px) scale(1.04); }
}
@keyframes spk-kruh {
	0%, 100% { opacity: 0; transform: scale(.92); }
	18%      { opacity: .7; transform: scale(1); }
	46%      { opacity: 0; transform: scale(1.18); }
}
@keyframes spk-pruh { from { transform: scaleX(.2); } to { transform: scaleX(1); } }
@keyframes spk-tocit { to { transform: rotate(360deg); } }
@keyframes spk-odlesk { from { transform: translateX(-100%); } to { transform: translateX(100%); } }

@media (prefers-reduced-motion: reduce) {
	.spk-sec *,
	.spk-sec *::before,
	.spk-sec *::after {
		transition-duration: 1ms !important;
		animation-duration: 1ms !important;
		animation-iteration-count: 1 !important;
	}
	.spk-btn:hover,
	.spk-btn:focus-visible,
	.spk-btn:hover .spk-ic { transform: none !important; }
}

/* =========================================================
   13) RESPONZIVITA
   ========================================================= */
/* nízke obrazovky počítača (notebooky): obsah hero sa jemne zmenší, aby sa zmestil na jednu obrazovku.
   Pri zoome v prehliadači sa obsah stále zväčšuje (nikdy nie je menší ako pri 100 %), len o niečo pomalšie. */
@media (min-width: 1025px) and (max-height: 900px) { .spk-hero .spk-in { zoom: .94; } }
@media (min-width: 1025px) and (max-height: 800px) { .spk-hero .spk-in { zoom: .88; } }
@media (min-width: 1025px) and (max-height: 700px) { .spk-hero .spk-in { zoom: .84; } }
@media (min-width: 1025px) and (max-height: 640px) { .spk-hero .spk-in { zoom: .8; } }

@media (max-width: 1024px) {
	.spk-hero__media { padding-bottom: 0; }
	.spk-deal { position: relative; left: auto; bottom: auto; width: auto; max-width: 26em; margin: -2.2em auto 0; transform: none; }
	.spk-deal:hover,
	.spk-deal:focus-within { transform: none; }
	.spk-hero .spk-fig img { max-height: none; }
	.spk-hero__media::before { top: -1.8em; right: -.6em; width: 5em; height: 5em; }
	.spk-feat { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.spk-revs { --n: 2; }
	.spk-cats { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.spk-foot__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.spk-foot__nap { grid-template-columns: minmax(0, 1fr); gap: 1.2em; }
	.spk-foot__nap > div { padding-inline: 0; }
	.spk-foot__nap > div + div { padding-top: 1.2em; border-left: 0; border-top: 1px solid var(--spk-sline); }
	.spk-ftcta.spk-ftcta { grid-template-columns: minmax(0, 1fr) !important; }
	.spk-foot__brand { grid-column: 1 / -1; }
	.spk-shop ul.products {
		grid-template-columns: none;
		grid-auto-flow: column;
		grid-auto-columns: calc((100% - 2 * var(--spk-gap)) / 3.2);
		margin-inline: -12px;
		padding: 12px 12px 20px;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		scroll-padding-inline: 12px;
		overscroll-behavior-x: contain;
		scrollbar-width: none;
		scroll-timeline: --spk-shop x;
	}
	.spk-shop ul.products::-webkit-scrollbar { display: none; }
	.spk-shop ul.products li.product { scroll-snap-align: start; }
	@supports (animation-timeline: scroll()) { .spk-shop .spk-revs__bar { display: block; } }
	.spk-cats__top + .spk-cats__top { grid-area: 1 / 3 / 3 / 5; }
	.spk-sec :where(h1, h2, h3) { line-height: 1.2; }
}

@media (max-width: 767px) {
	.spk-sec { padding-block: 70px; }
	.spk-hero__grid,
	.spk-story,
	.spk-trust,
	.spk-promo,
	.spk-feat,
	.spk-media { grid-template-columns: minmax(0, 1fr); }
	.spk-stats { grid-template-columns: minmax(0, 1fr); }
	.spk-stats > svg { margin: 1.1em auto; }
	.spk-stats dl { grid-template-columns: repeat(2, minmax(0, 1fr)); border-left: 0; border-top: 1px solid var(--spk-sline); }
	.spk-revs { --n: 1; gap: 24px; }  /* presne jedna recenzia na celú šírku – medzera ≥ 12 px skryje okraj ďalšej; posun ukazujú šípky a pruh */
	.spk-stats div:nth-child(3) { border-left: 0; }
	.spk-stats div:nth-child(n+3) { border-top: 1px solid var(--spk-sline); }
	.spk-cats { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: auto; }
	.spk-shop ul.products { grid-auto-columns: calc((100% - var(--spk-gap)) / 2); }  /* rovnako ako archív: 2 celé karty, ďalšie posunom */
	.spk-foot__grid { grid-template-columns: minmax(0, 1fr); }
	.spk-foot__bar { flex-direction: column; text-align: center; }
	.spk-sec .spk-btn.spk-foot__cta { justify-self: stretch; }
	:is(.spk-sec.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product .button { padding-inline: .6em; white-space: nowrap; }
	:is(.spk-sec.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product .button::before { display: none; }  /* úzka karta: text bez ikony, na jeden riadok */
	.spk-cats__top,
	.spk-cats__top + .spk-cats__top { grid-area: auto; }
	.spk-cat img { width: 3.5em; }
	.spk-sec .spk-cats__top .spk-cat { font-size: 1.15em; }
	.spk-cats__top .spk-cat::before { width: 2.2em; height: 2.2em; }
	.spk-promo__media,
	.spk-media .spk-fig { min-height: 0; aspect-ratio: 4 / 3; }
	.spk-badge { top: 1em; right: 1em; width: 5.2em; height: 5.2em; }
	.spk-hero .spk-fig { box-shadow: 10px 10px 0 var(--spk-tint-2), var(--spk-shadow); }
	.spk-deal { margin-inline: .5em; }
	.spk-deal__badge { top: -1.1em; right: -.4em; }
	.spk-sec .spk-deal .spk-deal__title { padding-right: 3.6em; }
	.spk-trust li + li { border-left: 0; border-top: 1px solid transparent; border-image: linear-gradient(90deg, transparent, var(--spk-line) 15%, var(--spk-line) 85%, transparent) 1; }
	.spk-trust { padding-block: .3em; }
	.spk-trust li { padding-block: .8em; }
	.spk-sec.spk-hero { padding-block: 70px 56px; }
	.spk-hero__text { justify-items: center; text-align: center; }
	.spk-hero h1 .spk-accent { flex-direction: column; gap: .15em; }
	.spk-hero__media::before { width: 4.2em; height: 4.2em; right: -.3em; }
	.spk-hero__text,
	.spk-promo__text { justify-items: stretch; }
	.spk-sec .spk-btn { width: 100%; }
	.spk-feat li:nth-child(even) { margin-top: 0; }
	.spk-feat__img img { aspect-ratio: 4 / 3; }
	.spk-story__fig { width: min(100% - 1.25em, 22em); }
	.spk-since { right: -.6em; font-size: .9em; }
}

/* MOBIL – produktové karty 2 v rade (archív aj úvodná stránka)
   rám vo farbe vône: hore sýty tón z etikety, v strede sa rozplynie, dole sa vráti – karta pôsobí ako zarámovaná vlastnou vôňou;
   pri ťuknutí sa rám rozsvieti oranžovou z loga a karta sa jemne stlačí */
@media (max-width: 767px) {
	:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) ul.products[data-products] { --grid-columns-gap: 12px; --grid-rows-gap: 14px; }  /* Blocksy má 30 px – karty by boli zbytočne úzke */
	:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) ul.products li.product {
		--spk-frame: color-mix(in oklab, var(--spk-aura), #2B2116 30%);
		gap: .3em;
		padding: .4em .4em .6em;
		border: 2px solid var(--spk-tint-2);  /* staré prehliadače bez color-mix: obyčajný jemný rám */
		border-radius: 18px;
		transition: transform .2s ease, box-shadow .2s ease;
	}
	:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) ul.products li.product > * { --product-element-spacing: 0px; }  /* Blocksy dáva 10–25 px pod každý prvok – rytmus drží gap karty */
	:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) ul.products li.product.spk-aura--ziadna { --spk-frame: #BCD0AA; }  /* bez vône: jemná zelená z prírody */
	@supports (color: color-mix(in oklab, red, blue)) {
		:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) ul.products li.product {
			border-color: transparent;
			background:
				linear-gradient(var(--spk-card), var(--spk-card)) padding-box,
				linear-gradient(165deg, var(--spk-frame), color-mix(in oklab, var(--spk-frame) 30%, var(--spk-line)) 38%, var(--spk-line) 62%, var(--spk-frame)) border-box;
			box-shadow: 0 10px 20px -16px var(--spk-frame);
		}
		:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) ul.products li.product:hover { border-color: transparent; }
	}
	:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) ul.products li.product:active,
	:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) ul.products li.product:hover:active,
	:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) ul.products li.product.spk-aura--ziadna:active { --spk-frame: var(--spk-accent); box-shadow: 0 8px 18px -12px var(--spk-accent); transform: scale(.98); }
	:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) ul.products li.product:focus-within { outline-offset: 1px; }
	:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product .ct-media-container,
	:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product figure > a:first-child { border-radius: 50% 50% 10px 10px / 30% 30% 10px 10px; }
	:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product .ct-woo-card-extra { top: .35em; right: .35em; }
	:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product .ct-woo-card-extra > * { width: 30px; height: 30px; }
	:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product .ct-woo-card-extra svg { width: 14px; height: 14px; }
	:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) .woocommerce-loop-product__title { margin-top: .15em; padding-inline: .15em; font-size: .92em; line-height: 1.25; }
	:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product .sku,
	:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product [class*="sku"] { font-size: .72em; }
	:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product .price { padding-top: .15em; font-size: 1em; white-space: nowrap; }
	:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product .price small { white-space: normal; }
	:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product .ct-woo-card-actions { margin-top: .1em; }
	:is(.spk-sec.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product .button { min-height: 2.35em; padding: .3em .5em; font-size: .85em; }
	:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product .onsale { padding: .15em .55em; font-size: .75em; }
}

@media (hover: none) {
	.spk-btn:hover,
	.spk-btn:hover .spk-ic,
	.spk-sec .spk-deal__btn:hover,
	.spk-deal:hover,
	.spk-feat li:hover,
	.spk-feat li:hover .spk-ibox,
	.spk-feat li:hover .spk-feat__img img,
	.spk-rev:hover,
	:is(#sidebar, #woo-filters-panel) .product-categories li > a:hover,
	:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) ul.products li.product:hover,
	:is(.spk-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag, .related, .upsells) li.product:hover img,
	.spk-sec .spk-foot__contact a:hover,
	.spk-sec .spk-foot__links a:hover,
	.spk-sec .spk-cat:hover,
	.spk-cat:hover img,
	.spk-trust li:hover .spk-ibox { transform: none; }
}