/* ==========================================================================
   Akademija Finance – sekcije in bloki (dogodki, strani, prva stran)
   Zasnova sledi BMA Material Gate; oblikovni jezik je iz af.css.
   Vsaka sekcija dobi spremenljivke iz vgrajenega <style>; tu so privzetki.
   ========================================================================== */

.afs-hero,
.afs-hero *,
.afs-hero *::before,
.afs-hero *::after,
.afs-nav,
.afs-nav *,
.afs-lightbox,
.afs-lightbox *,
.afs-dialog,
.afs-dialog * { box-sizing: border-box; }
.afs-hero img { max-width: 100%; }

.afs-sec {
	--afs-head: var(--af-ink);
	--afs-text: var(--af-text);
	--afs-accent: var(--af-red);
	--afs-card: var(--af-paper);
	--afs-ctext: var(--af-text);
	--afs-card-accent: var(--af-red);
	--afs-btn-text: #ffffff;
	--afs-gap: 24px;
	--afs-pad-t: 72px;
	--afs-pad-b: 72px;
	--afs-speed: 13s;
	--afs-cols: 3;

	position: relative;
	isolation: isolate;
	padding-block: var(--afs-pad-t) var(--afs-pad-b);
	color: var(--afs-text);
	scroll-margin-top: calc(var(--af-admin) + var(--af-navbar-h) + 62px);
}

/* Temen videz: privzeti poudarek je rdeča za besedilo. Nizka specifičnost
   (:where), da ga teme in barve sekcije (vgrajeni <style>) še vedno premagajo.
   Svetle teme sekcij dobijo temne barve v AFS_Themes::dark(). */
:where(html[data-theme="dark"]) .afs-sec {
	--afs-accent: var(--af-red-t);
	--afs-card-accent: var(--af-red-t);
}

/* Barve tem, ki jih sekcija ne nastavlja posebej. */
.afs-theme--temna,
.afs-theme--temna-sij,
.afs-theme--grafit { --afs-card-accent: #ff4a4a; }
/* Grafitna (kot Multimedija na finance.si): kartice s tanko svetlo obrobo. */
.afs-theme--grafit { --afs-card-border: #474d5c; }
.afs-theme--grafit :is(.afs-card, .afs-person, .afs-news, .afs-quotes__item, .af-card) { box-shadow: inset 0 0 0 1px var(--afs-card-border); }
.afs-theme--rdeca { --afs-btn-text: var(--af-red); }
.afs-theme--modra { --afs-card-accent: var(--af-red); }

.afs-sec--video,
.afs-sec:has(.af-spot__bg) { overflow: hidden; }

.afs-sec__inner {
	display: flex;
	flex-direction: column;
	gap: var(--afs-gap);
	width: 100%;
	max-width: var(--af-wrap);
	margin-inline: auto;
	padding-inline: var(--af-gutter);
}
/* »Ožje«: sekcija ima isti rob kot ostale (naslovi so poravnani), omejena
   je le širina vsebine – za berljivost urnika in daljših besedil. */
.afs-sec--w-narrow .afs-sec__inner > * { width: 100%; max-width: 900px; }
.afs-sec--w-narrow.afs-sec--a-center .afs-sec__inner > * { margin-inline: auto; }
.afs-sec--w-wide .afs-sec__inner { max-width: 1480px; }
.afs-sec--w-full .afs-sec__inner { max-width: none; }
.afs-sec--a-center { text-align: center; }

.afs-sec--flush { padding-inline: 0; }
.afs-sec--flush .afs-sec__inner { padding-inline: 0; }
.afs-sec--flush .afs-row--split { gap: 0; }
.afs-sec--flush .afs-col { padding: clamp(40px, 6vw, 80px) clamp(24px, 5vw, 80px); }
.afs-sec--flush .afs-col:has(> .afs-b--image:only-child) { padding: 0; }

.afs-sec--moving { animation: afs-gradient var(--afs-speed) ease infinite; }
@keyframes afs-gradient {
	0% { background-position: 0% 20%; }
	25% { background-position: 100% 50%; }
	50% { background-position: 50% 70%; }
	100% { background-position: 0% 20%; }
}

/* Naslov sekcije (ime sekcije = točka menija) */
.afs-sec__head { max-width: 780px; margin-bottom: 10px; }
.afs-sec--a-center .afs-sec__head { margin-inline: auto; }
.af-main .afs-sec__title {
	margin: 0;
	font-size: clamp(26px, 3vw, 40px);
	font-weight: 800;
	line-height: 1.1;
	letter-spacing: -0.022em;
	color: var(--afs-head);
	text-wrap: balance;
}
.afs-sec__title::before {
	content: "";
	display: block;
	width: 40px;
	height: 4px;
	margin-bottom: 16px;
	background: var(--afs-accent);
}
.afs-sec--a-center .afs-sec__title::before { margin-inline: auto; }
.afs-sec__intro { margin: 14px 0 0; font-size: 17px; line-height: 1.6; }

/* Video v ozadju sekcije */
.afs-sec__media { position: absolute; inset: 0; z-index: -1; overflow: hidden; pointer-events: none; }
.afs-sec__media .afs-sec__video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
	opacity: 0;
	transition: opacity 0.8s ease;
}
.afs-sec__media .afs-sec__video.is-on { opacity: 1; }
.afs-sec__veil { position: absolute; inset: 0; background: var(--afs-veil, transparent); }

/* ==========================================================================
   Vrstice
   ========================================================================== */
.afs-row { min-width: 0; }
.afs-row--grid {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	gap: var(--afs-gap);
	align-items: stretch;
}
.afs-b--span12 { grid-column: span 12; }
.afs-b--span8 { grid-column: span 8; }
.afs-b--span6 { grid-column: span 6; }
.afs-b--span4 { grid-column: span 4; }
.afs-b--span3 { grid-column: span 3; }

/* Stolpca sta vedno enako visoka; vsebina v stolpcu je poravnana po nastavitvi sekcije. */
.afs-row--split { display: grid; gap: var(--afs-gap-x, clamp(24px, 4vw, 56px)); align-items: stretch; }
.afs-row--v-center > .afs-col { justify-content: center; }
.afs-row--v-start > .afs-col { justify-content: flex-start; }
.afs-row--50-50 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.afs-row--60-40 { grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); }
.afs-row--40-60 { grid-template-columns: minmax(0, 2fr) minmax(0, 3fr); }
.afs-row--67-33 { grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); }
.afs-row--33-67 { grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); }
.afs-row--main-side { grid-template-columns: minmax(0, 1fr) 336px; }
.afs-row--side-main { grid-template-columns: 336px minmax(0, 1fr); }

.afs-col { display: flex; flex-direction: column; gap: var(--afs-gap); min-width: 0; }

/* Kartica, ki je edina v stolpcu, zapolni celo višino – kartici v obeh
   stolpcih (npr. Kontakt | Lokacija) sta tako vedno enako visoki. */
.afs-col > .afs-b:only-child:is(.afs-b--boxed, .afs-b--contacts, .afs-b--location, .afs-b--cta, .afs-b--pricing, .afs-b--testimonials, .afs-b--card):not(.afs-b--facts) { flex: 1 1 auto; display: flex; flex-direction: column; }

/* Podatki o dogodku: kartica ima vedno svojo višino, pod njo odštevanje in
   gumb. Stolpec ostane ob daljšem opisu viden (lepljiv) med branjem. */
.afs-col:has(> .afs-b--facts) {
	position: sticky;
	top: calc(var(--af-admin) + var(--af-navbar-h) + 80px);
	align-self: start;
}
@media (max-width: 960px) {
	.afs-col:has(> .afs-b--facts) { position: static; }
}
.afs-col > .afs-b:only-child > :is(.afs-contacts, .afs-location, .afs-cta, .afs-pricing, .afs-quotes, .afs-tile) { flex: 1 1 auto; }
.afs-contacts { grid-auto-rows: 1fr; }
.afs-b--boxed > .afs-location { height: 100%; }

/* ==========================================================================
   Bloki – skupno
   ========================================================================== */
.afs-b { min-width: 0; }
.afs-b--left { text-align: left; }
.afs-b--center { text-align: center; }
.afs-b--right { text-align: right; }
.afs-b > :first-child { margin-top: 0; }
.afs-b > :last-child { margin-bottom: 0; }

/* Vse, kar stoji na kartici, bere barve kartice. */
.afs-b--boxed,
.afs-price,
.afs-contact,
.afs-faq__item,
.afs-cta,
.afs-location,
.afs-pres__item,
.afs-pres__form {
	--afs-head: var(--afs-ctext);
	--afs-text: var(--afs-ctext);
	--afs-accent: var(--afs-card-accent);
	--afs-btn-bg: var(--afs-card-btn-bg); /* nastavljen le v temnem videzu, sicer velja poudarek */
	--afs-btn-text: #ffffff;
	color: var(--afs-ctext);
}

.afs-b--boxed {
	padding: 28px;
	border-radius: var(--af-radius);
	background: var(--afs-card);
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
}

.afs-eyebrow {
	margin: 0;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--afs-accent);
}
.af-main .afs-h {
	margin: 0;
	font-size: clamp(28px, 3.4vw, 46px);
	font-weight: 800;
	line-height: 1.1;
	letter-spacing: -0.022em;
	color: var(--afs-head);
	text-wrap: balance;
}
.af-main h3.afs-h,
.af-main h4.afs-h,
.afs-b--span6 .afs-h,
.afs-b--span4 .afs-h,
.afs-b--span3 .afs-h,
.afs-col .afs-h { font-size: clamp(24px, 2.4vw, 32px); }
.afs-accent { color: var(--afs-accent); }
.afs-sub { margin: 0; font-size: clamp(18px, 1.7vw, 22px); font-weight: 600; line-height: 1.4; color: var(--afs-head); }

.afs-text { font-size: 17px; line-height: 1.65; }
.afs-text p { margin: 0 0 0.85em; }
.afs-text > :last-child { margin-bottom: 0; }
.afs-text a { color: var(--afs-accent); text-decoration: underline; text-underline-offset: 3px; }
.afs-text ul,
.afs-text ol { margin: 0 0 1em; padding-left: 1.2em; }
.afs-text li { margin-bottom: 0.35em; }
.afs-text h2,
.afs-text h3,
.afs-text h4 { margin: 1.2em 0 0.5em; color: var(--afs-head); line-height: 1.25; }
.afs-text strong { color: var(--afs-head); }

.afs-spacer { width: 100%; }
.afs-note {
	margin: 16px 0;
	padding: 10px 14px;
	border-left: 3px solid var(--af-red);
	background: rgba(224, 0, 0, 0.06);
	font-size: 14px;
	color: #8a1c1c;
}

.afs-divider {
	width: 100%;
	height: 1px;
	margin: 0;
	border: 0;
	background: var(--afs-b-accent, currentColor);
	opacity: var(--afs-b-fade, 0.2);
}
.afs-b--center .afs-divider,
.afs-sec--a-center .afs-b:not(.afs-b--left):not(.afs-b--right) .afs-divider { margin-inline: auto; }
.afs-b--right .afs-divider { margin-inline: auto 0; }

/* Gumbi */
.afs-btn-wrap { margin: 0; }
.afs-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 13px 22px;
	/* --afs-btn-bg: v temnem videzu ostane gumb blagovno rdeč, čeprav je
	   poudarek (besedilo) svetlejši – nastavi ga AFS_Themes::dark(). */
	border: 1px solid var(--afs-btn-bg, var(--afs-accent));
	border-radius: 2px;
	background: var(--afs-btn-bg, var(--afs-accent));
	color: var(--afs-btn-text) !important;
	font: 700 15px/1.2 var(--af-font);
	text-decoration: none !important;
	cursor: pointer;
	transition: background-color 0.18s, color 0.18s, border-color 0.18s;
}
.afs-btn:hover { background: var(--afs-head); border-color: var(--afs-head); color: var(--afs-card) !important; }
.afs-btn--ghost { background: transparent; color: var(--afs-accent) !important; }
.afs-btn--ghost:hover { background: var(--afs-btn-bg, var(--afs-accent)); border-color: var(--afs-btn-bg, var(--afs-accent)); color: var(--afs-btn-text) !important; }
.afs-btn--dark { background: var(--af-inv); border-color: var(--af-inv); color: #fff !important; }
.afs-btn--dark:hover { background: var(--af-red); border-color: var(--af-red); color: #fff !important; }
.afs-btn--link { padding: 0; border: 0; background: none; color: var(--afs-accent) !important; }
.afs-btn--link:hover { background: none; color: var(--afs-head) !important; }
.afs-btn__arrow { transition: transform 0.2s; }
.afs-btn:hover .afs-btn__arrow { transform: translateX(3px); }

/* Slika */
.afs-figure { margin: 0; overflow: hidden; border-radius: var(--af-radius); }
.afs-figure .afs-img { display: block; width: 100%; height: auto; border-radius: inherit; object-position: var(--afs-b-pos, center); }
.af-main .afs-figure--1-1 .afs-img { aspect-ratio: 1; height: 100%; object-fit: cover; }
.af-main .afs-figure--4-3 .afs-img { aspect-ratio: 4 / 3; height: 100%; object-fit: cover; }
.af-main .afs-figure--3-2 .afs-img { aspect-ratio: 3 / 2; height: 100%; object-fit: cover; }
.af-main .afs-figure--16-9 .afs-img { aspect-ratio: 16 / 9; height: 100%; object-fit: cover; }
.af-main .afs-figure--3-4 .afs-img { aspect-ratio: 3 / 4; height: 100%; object-fit: cover; }
.af-main .afs-figure--4-5 .afs-img { aspect-ratio: 4 / 5; height: 100%; object-fit: cover; }
.afs-row--split .afs-col:has(> .afs-b--image:only-child > .afs-figure--fill) { position: relative; align-self: stretch; min-height: 340px; }
.afs-row--split .afs-col:has(> .afs-b--image:only-child > .afs-figure--fill) > .afs-b--image { position: absolute; inset: 0; }
.afs-figure--fill { height: 100%; }
.af-main .afs-figure--fill .afs-img { height: 100%; object-fit: cover; }
.afs-caption { margin: 8px 0 0; font-size: 13px; opacity: 0.75; }

/* Seznam z ikonami */
.afs-list { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
.afs-sec--a-center .afs-list,
.afs-b--center .afs-list { width: fit-content; max-width: 100%; margin-inline: auto; text-align: left; }
.afs-list__item { display: flex; align-items: flex-start; gap: 12px; }
.afs-icon { flex: none; margin-top: 3px; color: var(--afs-b-accent, var(--afs-accent)); }
.afs-list__title { display: block; font-weight: 650; line-height: 1.45; color: var(--afs-head); }
.afs-list__text { display: block; margin-top: 2px; font-size: 15px; line-height: 1.5; }
.afs-list__item:not(:has(.afs-list__text)) .afs-list__title { font-weight: 400; color: inherit; }

/* Kartica */
.afs-tile { display: flex; flex-direction: column; gap: 14px; height: 100%; transition: transform 0.22s ease; }
.afs-tile__media { overflow: hidden; border-radius: var(--af-radius); }
.af-main .afs-tile__img { display: block; width: 100%; height: auto; object-position: var(--afs-b-pos, center); transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1); }
.af-main .afs-tile__media--1-1 .afs-tile__img { aspect-ratio: 1; height: 100%; object-fit: cover; }
.af-main .afs-tile__media--4-3 .afs-tile__img { aspect-ratio: 4 / 3; height: 100%; object-fit: cover; }
.af-main .afs-tile__media--3-2 .afs-tile__img { aspect-ratio: 3 / 2; height: 100%; object-fit: cover; }
.af-main .afs-tile__media--16-9 .afs-tile__img { aspect-ratio: 16 / 9; height: 100%; object-fit: cover; }
.af-main .afs-tile__media--3-4 .afs-tile__img { aspect-ratio: 3 / 4; height: 100%; object-fit: cover; }
.af-main .afs-tile__media--4-5 .afs-tile__img { aspect-ratio: 4 / 5; height: 100%; object-fit: cover; }
.af-main .afs-tile__title { margin: 0; font-size: 19px; font-weight: 750; line-height: 1.3; color: var(--afs-head); }
.afs-tile__text { font-size: 15px; line-height: 1.55; }
.afs-tile__text p { margin: 0 0 0.6em; }
.afs-tile__more { margin: auto 0 0; }
.afs-tile__more a { color: var(--afs-accent); font-weight: 700; }
.afs-tile__rule { display: block; width: 0; height: 2px; margin-top: 8px; background: var(--afs-accent); transition: width 0.26s ease; }
@media (hover: hover) {
	.afs-tile--h-lift:hover,
	.afs-tile--h-both:hover { transform: translateY(-3px); }
	.afs-tile--h-lift:hover .afs-tile__img,
	.afs-tile--h-both:hover .afs-tile__img { transform: scale(1.04); }
	.afs-tile--h-accent:hover .afs-tile__rule,
	.afs-tile--h-both:hover .afs-tile__rule { width: 36px; }
}

/* Številka */
.afs-stat { text-align: center; }
.afs-stat__num { margin: 0 0 10px; font-size: clamp(40px, 4.6vw, 60px); font-weight: 800; line-height: 1; letter-spacing: -0.03em; color: var(--afs-b-accent, var(--afs-accent)); }
.afs-stat__unit { margin-left: 3px; font-size: 0.45em; }
.afs-stat__text { font-size: 15px; line-height: 1.5; }
.afs-stat__text p { margin: 0; }
.afs-stat__note { margin: 10px 0 0; font-size: 12px; font-style: italic; opacity: 0.7; }

/* Izjava */
.afs-quote { margin: 0; }
.afs-quote blockquote { position: relative; margin: 0; padding-top: 34px; font-size: clamp(19px, 1.9vw, 24px); font-weight: 600; line-height: 1.45; color: var(--afs-head); }
.afs-quote blockquote::before { content: "“"; position: absolute; top: -18px; left: -4px; font-size: 90px; line-height: 1; color: var(--afs-accent); font-family: Georgia, serif; }
.afs-quote blockquote p { margin: 0 0 0.6em; }
.afs-quote__who { display: flex; align-items: center; gap: 14px; margin-top: 18px; font-size: 14px; }
.af-main .afs-quote__img { width: 52px; height: 52px; border-radius: 50%; object-fit: cover; }
.afs-quote__who strong { display: block; color: var(--afs-head); font-size: 15px; }

/* Izjave partnerjev */
.afs-quotes { display: grid; grid-template-columns: repeat(var(--afs-cols), minmax(0, 1fr)); gap: 20px; text-align: left; }
.afs-quotes__item { display: flex; flex-direction: column; justify-content: space-between; gap: 18px; margin: 0; padding: 28px; border-radius: var(--af-radius); background: var(--afs-card); color: var(--afs-ctext); }
.afs-quotes__item blockquote { position: relative; margin: 0; padding-top: 26px; font-size: 16px; line-height: 1.6; }
.afs-quotes__item blockquote::before { content: "“"; position: absolute; top: -14px; left: -2px; font: 700 64px/1 Georgia, serif; color: var(--afs-card-accent); }
.afs-quotes__item blockquote p { margin: 0 0 0.6em; }
.afs-quotes__item details summary { font-size: 14px; font-weight: 700; color: var(--afs-card-accent); cursor: pointer; }
.afs-quotes__item .afs-quote__who { margin: 0; color: var(--afs-ctext); }
.afs-quotes__item .afs-quote__who strong { color: var(--afs-ctext); }
.afs-quotes__item .afs-quote__who > span { flex: 1; min-width: 0; font-size: 13px; }
.af-main .afs-quotes__logo { max-width: 90px; max-height: 40px; width: auto; object-fit: contain; }
@media (max-width: 960px) { .afs-quotes { grid-template-columns: minmax(0, 1fr); } }

/* Vprašanja in odgovori */
.afs-faq { display: grid; gap: 10px; text-align: left; }
.afs-faq__item { padding: 2px 22px; border-radius: var(--af-radius); background: var(--afs-card); }
.afs-faq__q { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 17px 0; cursor: pointer; list-style: none; font-size: 17px; font-weight: 650; color: var(--afs-head); }
.afs-faq__q::-webkit-details-marker { display: none; }
.afs-faq__sign { position: relative; flex: none; width: 16px; height: 16px; }
.afs-faq__sign::before,
.afs-faq__sign::after { content: ""; position: absolute; inset: 50% 0 auto; height: 2px; background: var(--afs-accent); transform: translateY(-50%); transition: transform 0.2s; }
.afs-faq__sign::after { transform: translateY(-50%) rotate(90deg); }
.afs-faq__item[open] .afs-faq__sign::after { transform: translateY(-50%); }
.afs-faq__a { padding-bottom: 18px; font-size: 15px; line-height: 1.6; }
.afs-faq__a p { margin: 0 0 0.6em; }

/* ==========================================================================
   Enoten odziv kartic na prehod miške: rahel dvig, senca in rdeča črta,
   ki zraste na dnu kartice.
   ========================================================================== */
.afs-b--boxed,
.afs-price,
.afs-contact,
.afs-quotes__item,
.afs-pres__item,
.afs-location,
.afs-cta,
.afs-logos__grid li > *,
.afs-faq__item {
	position: relative;
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.afs-b--boxed::after,
.afs-price::after,
.afs-contact::after,
.afs-quotes__item::after,
.afs-pres__item::after,
.afs-location::after,
.afs-logos__grid li > *::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 3px;
	border-radius: 0 0 var(--af-radius) var(--af-radius);
	background: var(--afs-card-accent, var(--af-red));
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 0.3s ease;
	pointer-events: none;
}
.afs-b--boxed > .afs-location::after { display: none; }

@media (hover: hover) {
	.afs-b--boxed:hover,
	.afs-price:hover,
	.afs-contact:hover,
	.afs-quotes__item:hover,
	.afs-pres__item:hover,
	.afs-cta:hover,
	.afs-logos__grid li > *:hover,
	.afs-col > .afs-location:hover,
	.afs-row--grid > .afs-b > .afs-location:hover {
		transform: translateY(-4px);
		box-shadow: 0 20px 40px -22px rgba(0, 0, 0, 0.45);
	}
	.afs-b--boxed:hover::after,
	.afs-price:hover::after,
	.afs-contact:hover::after,
	.afs-quotes__item:hover::after,
	.afs-pres__item:hover::after,
	.afs-location:hover::after,
	.afs-logos__grid li > *:hover::after { transform: scaleX(1); }
	.afs-faq__item:hover { box-shadow: 0 10px 24px -18px rgba(0, 0, 0, 0.4); }

	/* Predavatelji: fotografija se dvigne, ime obarva. */
	.afs-person .afs-person__photo { transition: transform 0.25s ease, box-shadow 0.25s ease; }
	.afs-person:hover .afs-person__photo { transform: translateY(-4px); box-shadow: 0 20px 36px -22px rgba(0, 0, 0, 0.5); }

	/* Videi in galerija */
	.afs-videos__item .afs-video,
	.afs-gallery__item { transition: transform 0.25s ease, box-shadow 0.25s ease; }
	.afs-videos__item:hover .afs-video,
	.afs-gallery__item:hover { box-shadow: 0 16px 32px -20px rgba(0, 0, 0, 0.6); }
}
.afs-b--boxed:focus-within,
.afs-price:focus-within,
.afs-contact:focus-within { box-shadow: 0 0 0 2px var(--afs-card-accent, var(--af-red)); }

@media (prefers-reduced-motion: reduce) {
	.afs-b--boxed,
	.afs-price,
	.afs-contact,
	.afs-quotes__item,
	.afs-pres__item,
	.afs-location,
	.afs-cta,
	.afs-logos__grid li > *,
	.afs-person .afs-person__photo { transition: none; transform: none !important; }
}

/* ==========================================================================
   Galerija, video
   ========================================================================== */
.afs-gallery { display: grid; grid-template-columns: repeat(var(--afs-cols), minmax(0, 1fr)); gap: 8px; }
.afs-gallery__item { position: relative; display: block; overflow: hidden; border-radius: 2px; background: rgba(0, 0, 0, 0.1); cursor: zoom-in; }
.afs-gallery__item[hidden] { display: none; }
.af-main .afs-gallery__item img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.4s ease, opacity 0.2s; }
.afs-gallery--r1-1 .afs-gallery__item { aspect-ratio: 1; }
.afs-gallery--r4-3 .afs-gallery__item { aspect-ratio: 4 / 3; }
.afs-gallery--r3-2 .afs-gallery__item { aspect-ratio: 3 / 2; }
.afs-gallery--r16-9 .afs-gallery__item { aspect-ratio: 16 / 9; }
.afs-gallery--r3-4 .afs-gallery__item { aspect-ratio: 3 / 4; }
.afs-gallery--r4-5 .afs-gallery__item { aspect-ratio: 4 / 5; }
.afs-gallery__item:hover img { transform: scale(1.04); }
.afs-gallery__more { margin: 20px 0 0; text-align: center; }

.afs-lightbox { width: 100vw; max-width: none; height: 100vh; max-height: none; margin: 0; padding: 0; border: 0; background: rgba(8, 8, 8, 0.96); color: #fff; }
.afs-lightbox::backdrop { background: rgba(0, 0, 0, 0.8); }
.afs-lightbox__stage { display: grid; place-items: center; width: 100%; height: 100%; padding: 56px 72px 72px; box-sizing: border-box; }
.afs-lightbox__img { max-width: 100%; max-height: 100%; object-fit: contain; }
.afs-lightbox__cap { position: absolute; left: 0; right: 0; bottom: 18px; text-align: center; font: 500 14px var(--af-font); opacity: 0.8; }
.afs-lightbox button { position: absolute; display: grid; place-items: center; width: 48px; height: 48px; border: 0; border-radius: 50%; background: rgba(255, 255, 255, 0.1); color: #fff; font-size: 26px; cursor: pointer; }
.afs-lightbox button:hover { background: var(--af-red); }
.afs-lightbox__close { top: 14px; right: 14px; }
.afs-lightbox__prev { top: 50%; left: 14px; transform: translateY(-50%); }
.afs-lightbox__next { top: 50%; right: 14px; transform: translateY(-50%); }

.afs-video { position: relative; width: 100%; overflow: hidden; border-radius: var(--af-radius); background: #0d0d0d; }
.afs-video--16-9 { aspect-ratio: 16 / 9; }
.afs-video--4-3 { aspect-ratio: 4 / 3; }
.afs-video--1-1 { aspect-ratio: 1; }
.afs-video--3-2 { aspect-ratio: 3 / 2; }
.afs-video--3-4,
.afs-video--4-5 { aspect-ratio: 4 / 5; }
.afs-video iframe,
.afs-video .afs-video__el { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.af-main .afs-video .afs-video__poster { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.afs-video__play {
	position: absolute;
	inset: 0;
	display: grid;
	place-items: center;
	width: 76px;
	height: 76px;
	margin: auto;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: var(--af-red);
	box-shadow: 0 8px 28px rgba(0, 0, 0, 0.35);
	cursor: pointer;
	transition: transform 0.18s;
}
.afs-video__play:hover,
.afs-video__play:focus-visible { transform: scale(1.07); }
.afs-video__triangle { width: 0; height: 0; margin-left: 5px; border-left: 20px solid #fff; border-top: 12px solid transparent; border-bottom: 12px solid transparent; }
.afs-video__fallback { position: absolute; inset: auto 0 16px; text-align: center; color: #fff; }
.afs-videos { display: grid; grid-template-columns: repeat(var(--afs-cols), minmax(0, 1fr)); gap: 24px; }
.afs-videos__item { margin: 0; }
.afs-videos__item figcaption { margin-top: 10px; font-size: 15px; font-weight: 650; color: var(--afs-head); }


/* ==========================================================================
   Zbirke kartic: mreža na sredini, drsnik
   ========================================================================== */
.afs-flexgrid {
	--afs-fgap: 24px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 32px var(--afs-fgap);
}
.afs-flexgrid__item { display: flex; flex: 0 1 calc((100% - (var(--afs-cols) - 1) * var(--afs-fgap)) / var(--afs-cols)); min-width: 0; }
.afs-flexgrid__item > * { width: 100%; }

.afs-carousel { --afs-cgap: 24px; position: relative; }
.afs-carousel__track {
	display: flex;
	gap: var(--afs-cgap);
	margin: -8px -4px 0;
	padding: 8px 4px 22px;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scroll-behavior: smooth;
	scrollbar-width: none;
	overscroll-behavior-x: contain;
}
.afs-carousel__track::-webkit-scrollbar { display: none; }
.afs-carousel__track:focus-visible { outline: 2px solid var(--afs-accent); outline-offset: 4px; }
.afs-carousel__item { display: flex; flex: 0 0 calc((100% - (var(--afs-cols) - 1) * var(--afs-cgap)) / var(--afs-cols)); min-width: 0; scroll-snap-align: start; }
.afs-carousel__item > * { width: 100%; }
.afs-carousel__foot { display: flex; align-items: center; gap: 10px; margin-top: 6px; }
.afs-carousel__bar { position: relative; flex: 1; height: 3px; margin-right: 10px; overflow: hidden; border-radius: 3px; background: color-mix(in srgb, var(--afs-text) 16%, transparent); }
.afs-carousel__bar span { position: absolute; top: 0; bottom: 0; left: 0; width: 30%; border-radius: 3px; background: var(--afs-accent); transition: left 0.2s ease, width 0.2s ease; }
.afs-carousel__btn {
	display: grid;
	place-items: center;
	flex: none;
	width: 46px;
	height: 46px;
	padding: 0;
	border: 1px solid color-mix(in srgb, var(--afs-text) 25%, transparent);
	border-radius: 50%;
	background: var(--afs-card);
	color: var(--afs-ctext);
	font-size: 26px;
	line-height: 1;
	cursor: pointer;
	transition: background-color 0.18s, color 0.18s, border-color 0.18s;
}
.afs-carousel__btn:hover:not(:disabled) { border-color: var(--af-red); background: var(--af-red); color: #fff; }
.afs-carousel__btn:disabled { opacity: 0.35; cursor: default; }
.afs-carousel.is-static .afs-carousel__foot { display: none; }

/* Novice */
.afs-news {
	position: relative;
	display: flex;
	flex-direction: column;
	width: 100%;
	overflow: hidden;
	border-radius: var(--af-radius);
	background: var(--afs-card);
	color: var(--afs-ctext);
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
	text-align: left;
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.afs-news::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background: var(--afs-card-accent); transform: scaleX(0); transform-origin: left; transition: transform 0.3s ease; pointer-events: none; }
.afs-news__media { display: block; aspect-ratio: 16 / 10; overflow: hidden; background: var(--af-bg-2); }
.af-main .afs-news__media img,
.afs-news__media .af-thumb-placeholder { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s cubic-bezier(0.2, 0.7, 0.2, 1); }
.afs-news__body { display: flex; flex: 1; flex-direction: column; gap: 10px; padding: 20px 22px 22px; }
.afs-news__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 14px; margin: 0; font-size: 12.5px; color: var(--afs-ctext); opacity: 0.8; }
.afs-news__meta .af-kicker { color: var(--afs-ctext); }
.af-main .afs-news__title { margin: 0; font-size: 18px; font-weight: 750; line-height: 1.3; letter-spacing: -0.01em; color: var(--afs-ctext); text-wrap: pretty; }
.afs-news__title a::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.afs-news__excerpt { display: -webkit-box; margin: 0; overflow: hidden; font-size: 14.5px; line-height: 1.55; opacity: 0.85; -webkit-line-clamp: 3; -webkit-box-orient: vertical; }
.afs-news__more { margin-top: auto; padding-top: 6px; font-size: 13.5px; font-weight: 750; color: var(--afs-card-accent); }
.afs-news__more span { display: inline-block; transition: transform 0.2s ease; }
@media (hover: hover) {
	.afs-news:hover { transform: translateY(-4px); box-shadow: 0 20px 40px -22px rgba(0, 0, 0, 0.45); }
	.afs-news:hover::after { transform: scaleX(1); }
	.afs-news:hover .afs-news__media img { transform: scale(1.04); }
	.afs-news:hover .afs-news__more span { transform: translateX(4px); }
}
.afs-news:focus-within { box-shadow: 0 0 0 2px var(--afs-card-accent); }

/* Ena sama novica: velika vodoravna kartica na sredini */
.afs-news-single { display: flex; justify-content: center; }
.afs-news--feature { flex-direction: row; max-width: 1000px; }
.afs-news--feature .afs-news__media { flex: 0 0 52%; min-height: 340px; aspect-ratio: auto; }
.afs-news--feature .afs-news__body { justify-content: center; gap: 14px; padding: clamp(24px, 3vw, 40px); }
.af-main .afs-news--feature .afs-news__title { font-size: clamp(22px, 2.2vw, 30px); font-weight: 800; line-height: 1.18; letter-spacing: -0.02em; }
.afs-news--feature .afs-news__excerpt { font-size: 16px; -webkit-line-clamp: 5; }
.afs-news--feature .afs-news__more { margin-top: 10px; }

@media (prefers-reduced-motion: reduce) {
	.afs-news,
	.afs-news__media img,
	.afs-carousel__track { transition: none; scroll-behavior: auto; }
	.afs-news:hover { transform: none; }
}

/* ==========================================================================
   Bloki dogodka
   ========================================================================== */

/* Podatki o dogodku */
.afs-facts { display: grid; gap: 0; }
.afs-fact {
	display: grid;
	grid-template-columns: 26px minmax(0, 1fr);
	column-gap: 10px;
	padding: 14px 0;
	border-top: 1px solid color-mix(in srgb, currentColor 14%, transparent);
	text-align: left;
}
.afs-fact:first-child { border-top: 0; padding-top: 0; }
.afs-fact .af-icon { grid-row: span 2; width: 20px; height: 20px; margin-top: 2px; color: var(--afs-accent); }
.afs-fact__label { font-size: 11.5px; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; opacity: 0.7; }
.afs-fact__value { font-size: 16px; font-weight: 700; line-height: 1.35; color: var(--afs-head); }
.afs-facts--inline { display: flex; flex-wrap: wrap; gap: 12px 32px; }
.afs-facts--inline .afs-fact { padding: 0; border: 0; }
.afs-addcal { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin: 16px 0 0; font-size: 14px; }
.afs-addcal .af-icon { width: 16px; height: 16px; color: var(--afs-accent); }
.afs-addcal a { color: var(--afs-accent); font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }

/* Odštevanje (svetla različica) */
.afs-countdown__title { margin: 0 0 10px; font-size: 12px; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; color: var(--afs-accent); }
.afs-countdown.af-countdown { margin: 0; }
.afs-countdown.af-countdown > div { background: var(--afs-card); border-color: color-mix(in srgb, var(--afs-ctext) 12%, transparent); }
.afs-countdown.af-countdown strong { color: var(--afs-ctext); }
.afs-countdown.af-countdown span { color: var(--afs-ctext); opacity: 0.65; }

/* Poziv */
.afs-cta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 20px 40px;
	padding: clamp(24px, 4vw, 40px);
	border-left: 6px solid var(--af-red);
	border-radius: var(--af-radius);
	background: var(--afs-card);
	text-align: left;
}
.af-main .afs-cta__title { margin: 0 0 6px; font-size: clamp(22px, 2.4vw, 30px); font-weight: 800; letter-spacing: -0.02em; color: var(--afs-head); }
.afs-cta__text { font-size: 16px; line-height: 1.55; }
.afs-cta__text p { margin: 0; }
.afs-cta__action { margin: 0; }

/* Osebe */
.afs-people { text-align: left; }
.afs-person {
	display: flex;
	flex-direction: column;
	gap: 14px;
	width: 100%;
	padding: 0;
	border: 0;
	background: none;
	color: inherit;
	font: inherit;
	text-align: inherit;
	cursor: pointer;
}
.afs-person__photo { position: relative; display: block; overflow: hidden; aspect-ratio: 1; border-radius: var(--af-radius); background: var(--afs-card); }
.af-main .afs-person__img { width: 100%; height: 100%; object-fit: cover; object-position: center top; transition: transform 0.45s ease; }
.afs-person:hover .afs-person__img { transform: scale(1.04); }
.afs-person__initials { display: grid; place-items: center; width: 100%; height: 100%; font-size: 34px; font-weight: 800; color: var(--afs-accent); }
.afs-person__body { display: flex; flex-direction: column; gap: 4px; }
.afs-person__name { font-size: 17px; font-weight: 750; line-height: 1.3; color: var(--afs-head); }
.afs-person__role { font-size: 14px; line-height: 1.4; opacity: 0.85; }
.afs-person__bio { margin-top: 6px; font-size: 14px; line-height: 1.5; }
.afs-person:hover .afs-person__name { color: var(--afs-accent); }
.afs-people--list .afs-person { flex-direction: row; align-items: flex-start; gap: 18px; }
.afs-people--list .afs-person__photo { flex: none; width: 110px; }
.afs-people--compact { text-align: center; }
.afs-people--compact .afs-person { align-items: center; }
.afs-people--compact .afs-person__photo { width: min(120px, 100%); border-radius: 50%; }
.afs-people--compact .afs-person__name { font-size: 15px; }
.afs-people--compact .afs-person__role { font-size: 13px; }

.afs-dialog { width: min(920px, calc(100vw - 32px)); max-height: calc(100vh - 48px); padding: 0; border: 0; border-radius: 4px; background: var(--af-paper); color: var(--af-text); box-shadow: 0 30px 80px -20px rgba(0, 0, 0, 0.5); }
.afs-dialog::backdrop { background: rgba(10, 10, 10, 0.62); backdrop-filter: blur(2px); }
.afs-dialog__close { position: absolute; top: 10px; right: 12px; z-index: 2; width: 40px; height: 40px; border: 0; border-radius: 50%; background: rgba(255, 255, 255, 0.9); font-size: 26px; line-height: 1; cursor: pointer; }
.afs-dialog__close:hover { background: var(--af-red); color: #fff; }
.afs-dialog__person { display: grid; grid-template-columns: minmax(0, 320px) minmax(0, 1fr); }
.afs-dialog__photo { background: var(--af-bg-2); }
.afs-dialog__img { display: block; width: 100%; height: 100%; max-height: 520px; object-fit: cover; object-position: center top; }
.afs-dialog__body { padding: 36px 40px; overflow-y: auto; max-height: calc(100vh - 48px); font-family: var(--af-font); }
.afs-dialog__name { margin: 0; font-size: 28px; font-weight: 800; letter-spacing: -0.02em; color: var(--af-ink); }
.afs-dialog__role { margin: 6px 0 18px; font-size: 15px; font-weight: 600; color: var(--af-red-t); }
.afs-dialog__bio { font-size: 16px; line-height: 1.65; }
.afs-dialog__bio p { margin: 0 0 0.8em; }
.afs-dialog__social { display: flex; flex-wrap: wrap; gap: 8px 16px; margin: 18px 0 0; }
.afs-dialog__social a { color: var(--af-red-t); font-weight: 700; }

/* Kartica predavatelja (mreža ali drsnik) */
.afs-people--cards .afs-person {
	position: relative;
	gap: 0;
	height: 100%;
	overflow: hidden;
	border-radius: 4px;
	background: var(--afs-card);
	color: var(--afs-ctext);
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.afs-people--cards .afs-person::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 3px;
	background: var(--afs-card-accent);
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 0.3s ease;
}
.afs-people--cards .afs-person__photo { aspect-ratio: 4 / 5; border-radius: 0; background: var(--af-bg-2); }
.afs-people--cards .afs-person__photo::after {
	content: "";
	position: absolute;
	inset: 55% 0 0;
	background: linear-gradient(180deg, transparent, rgba(0, 0, 0, 0.28));
	pointer-events: none;
}
.af-main .afs-people--cards .afs-person__img { object-position: center 18%; transition: transform 0.6s cubic-bezier(0.2, 0.7, 0.2, 1); }
.afs-person__plus {
	/* Diskreten znak »več«: majhen, prosojen, ob preletu rdeč. */
	position: absolute;
	right: 10px;
	bottom: 10px;
	z-index: 1;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.72);
	-webkit-backdrop-filter: blur(6px);
	backdrop-filter: blur(6px);
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.5);
	opacity: 0.85;
	transition: background-color 0.25s ease, transform 0.25s ease, opacity 0.25s ease;
}
.afs-person__plus::before,
.afs-person__plus::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 10px;
	height: 1.5px;
	margin: -0.75px 0 0 -5px;
	border-radius: 1px;
	background: var(--af-inv);
	transition: background-color 0.25s ease;
}
.afs-person__plus::after { transform: rotate(90deg); }
.afs-people--cards .afs-person__body { flex: 1; gap: 4px; padding: 18px 20px 20px; }
.afs-person__company { font-size: 11px; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; color: var(--afs-card-accent); line-height: 1.3; }
.afs-people--cards .afs-person__name { font-size: 19px; font-weight: 800; letter-spacing: -0.015em; color: var(--afs-ctext); }
.afs-people--cards .afs-person__role { font-size: 13.5px; line-height: 1.45; color: var(--afs-ctext); opacity: 0.75; }
.afs-person__talk {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 2px 10px;
	margin-top: auto;
	padding-top: 14px;
	border-top: 1px solid color-mix(in srgb, var(--afs-ctext) 12%, transparent);
	font-size: 13px;
	line-height: 1.4;
}
.afs-people--cards .afs-person__role + .afs-person__talk,
.afs-people--cards .afs-person__name + .afs-person__talk { margin-top: 14px; }
.afs-person__talk time { font-weight: 800; color: var(--afs-card-accent); font-variant-numeric: tabular-nums; }
.afs-person__talk span { display: -webkit-box; overflow: hidden; font-weight: 600; color: var(--afs-ctext); -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.afs-person__talk em { grid-column: 2; font-size: 12px; font-style: normal; opacity: 0.65; }
@media (hover: hover) {
	.afs-people--cards .afs-person:hover { transform: translateY(-5px); box-shadow: 0 24px 44px -24px rgba(0, 0, 0, 0.5); }
	.afs-people--cards .afs-person:hover::after { transform: scaleX(1); }
	.afs-people--cards .afs-person:hover .afs-person__img { transform: scale(1.05); }
	.afs-people--cards .afs-person:hover .afs-person__plus { background: var(--af-red); box-shadow: none; opacity: 1; transform: rotate(90deg); }
	.afs-people--cards .afs-person:hover .afs-person__plus::before,
	.afs-people--cards .afs-person:hover .afs-person__plus::after { background: #fff; }
	.afs-people--cards .afs-person:hover .afs-person__name { color: var(--afs-ctext); }
	.afs-people--cards .afs-person:hover .afs-person__photo { transform: none; box-shadow: none; }
}
.afs-people--cards .afs-person:focus-visible { outline: 2px solid var(--af-red); outline-offset: 3px; }
@media (max-width: 767px) {
	.afs-people--cards .afs-person__body { padding: 12px 12px 14px; }
	.afs-people--cards .afs-person__name { font-size: 15.5px; }
	.afs-person__plus { right: 8px; bottom: 8px; width: 24px; height: 24px; }
	.afs-person__talk { display: none; }
}
@media (prefers-reduced-motion: reduce) {
	.afs-people--cards .afs-person,
	.af-main .afs-people--cards .afs-person__img { transition: none; }
}

/* Stranski panel predavatelja (off-canvas z desne) */
.afs-offcanvas {
	position: fixed;
	inset: 0 0 0 auto;
	width: min(560px, 100vw);
	max-width: 100vw;
	height: 100vh;
	max-height: 100vh;
	margin: 0;
	border-radius: 0;
	overflow: hidden;
	display: flex;
	flex-direction: column;
}
.afs-offcanvas:not([open]) { display: none; }
.afs-offcanvas[open] { animation: afs-offcanvas-in 0.32s cubic-bezier(0.2, 0.7, 0.2, 1); }
@keyframes afs-offcanvas-in { from { transform: translateX(40px); opacity: 0; } }
.afs-offcanvas::backdrop { background: rgba(10, 10, 10, 0.55); backdrop-filter: blur(2px); }
.afs-offcanvas__bar { display: flex; align-items: center; gap: 8px; flex: none; padding: 10px 12px; border-bottom: 1px solid var(--af-hair); background: var(--af-paper); }
.afs-offcanvas__nav { display: grid; place-items: center; width: 38px; height: 38px; padding: 0; border: 1px solid var(--af-hair); border-radius: 50%; background: var(--af-paper); font-size: 22px; line-height: 1; color: var(--af-ink); cursor: pointer; }
.afs-offcanvas__nav:hover { border-color: var(--af-red); color: var(--af-red-t); }
.afs-offcanvas__nav[hidden] { display: none; }
.afs-offcanvas__count { flex: 1; font: 600 13px var(--af-font); color: var(--af-muted); }
.afs-offcanvas .afs-dialog__close { position: static; flex: none; background: var(--af-bg); }
.afs-offcanvas .afs-dialog__content { flex: 1; overflow-y: auto; overscroll-behavior: contain; }
.afs-offcanvas .afs-dialog__person { display: block; }
.afs-offcanvas .afs-dialog__photo { aspect-ratio: 4 / 3; overflow: hidden; }
.afs-offcanvas .afs-dialog__photo .afs-person__initials { font-size: 64px; }
.afs-offcanvas .afs-dialog__img { width: 100%; height: 100%; max-height: none; object-fit: cover; object-position: center 20%; }
.afs-offcanvas .afs-dialog__body { max-height: none; overflow: visible; padding: 28px 32px 40px; }
.afs-dialog__talks { margin: 20px 0 22px; padding: 16px 18px; border-left: 4px solid var(--af-red); background: var(--af-bg); }
.afs-dialog__talks h3 { margin: 0 0 10px; font: 800 12px/1 var(--af-font); letter-spacing: 0.12em; text-transform: uppercase; color: var(--af-red-t); }
.afs-dialog__talks ul { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.afs-dialog__talks li { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 2px 12px; font-size: 14.5px; line-height: 1.4; }
.afs-dialog__talks li span { font-weight: 800; color: var(--af-ink); font-variant-numeric: tabular-nums; }
.afs-dialog__talks li strong { font-weight: 650; color: var(--af-ink); }
.afs-dialog__talks li em { grid-column: 2; font-size: 12.5px; font-style: normal; color: var(--af-muted); }
.afs-person { cursor: pointer; }
.afs-person:focus-visible { outline: 2px solid var(--af-red); outline-offset: 4px; }
@media (max-width: 767px) {
	.afs-offcanvas { width: 100vw; }
	.afs-offcanvas .afs-dialog__body { padding: 22px 20px 32px; }
	.afs-dialog__talks li { grid-template-columns: minmax(0, 1fr); }
	.afs-dialog__talks li em { grid-column: 1; }
}
@media (prefers-reduced-motion: reduce) { .afs-offcanvas[open] { animation: none; } }

/* Kontakti */
.afs-contacts { display: grid; grid-template-columns: repeat(var(--afs-cols), minmax(0, 1fr)); gap: 16px; text-align: left; }
.afs-contact { display: flex; gap: 16px; align-items: flex-start; padding: 20px; border-radius: var(--af-radius); background: var(--afs-card); }
.af-main .afs-contact__img { flex: none; width: 64px; height: 64px; border-radius: 50%; object-fit: cover; font-size: 20px; }
.afs-contact p { margin: 0 0 4px; font-size: 14px; }
.afs-contact .afs-contact__name { font-size: 17px; font-weight: 750; color: var(--afs-head); }
.afs-contact__role { opacity: 0.8; margin-bottom: 8px !important; }
.afs-contact a { display: inline-flex; align-items: center; gap: 6px; color: var(--afs-accent); font-weight: 600; }
.afs-contact .af-icon { width: 15px; height: 15px; }

/* Programski urnik */
.afs-prog { max-width: 980px; text-align: left; }
.afs-prog__tabs { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 20px; }
.afs-prog__tab {
	display: grid;
	gap: 2px;
	padding: 10px 16px;
	border: 1px solid color-mix(in srgb, var(--afs-text) 22%, transparent);
	border-radius: 2px;
	background: transparent;
	color: var(--afs-head);
	font: 600 14px/1.25 var(--af-font);
	text-align: left;
	cursor: pointer;
}
.afs-prog__tab span { font-size: 11px; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; color: var(--afs-accent); }
.afs-prog__tab[aria-selected="true"] { border-color: var(--afs-btn-bg, var(--afs-accent)); background: var(--afs-btn-bg, var(--afs-accent)); color: var(--afs-btn-text); }
.afs-prog__tab[aria-selected="true"] span { color: inherit; opacity: 0.85; }
.afs-prog__date { margin: 0 0 12px; font-size: 13px; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; color: var(--afs-accent); }
.afs-prog__list { margin: 0; padding: 0; list-style: none; }
.afs-prog__row {
	display: grid;
	grid-template-columns: 128px minmax(0, 1fr);
	gap: 20px;
	padding: 22px 0;
	border-top: 1px solid color-mix(in srgb, var(--afs-text) 16%, transparent);
}
.afs-prog__time { font-size: 17px; font-weight: 800; color: var(--afs-accent); font-variant-numeric: tabular-nums; white-space: nowrap; }
.afs-prog__body { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.afs-prog__kind { align-self: flex-start; padding: 3px 8px; border-radius: 2px; background: color-mix(in srgb, var(--afs-accent) 12%, transparent); color: var(--afs-accent); font-size: 11px; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; }
.af-main .afs-prog__title { margin: 0; font-size: 19px; font-weight: 750; line-height: 1.35; color: var(--afs-head); }
.afs-prog__where { display: flex; align-items: center; gap: 6px; margin: 0; font-size: 13.5px; opacity: 0.8; }
.afs-prog__where .af-icon { width: 15px; height: 15px; }
.afs-prog__people { display: flex; flex-wrap: wrap; gap: 8px 10px; margin: 4px 0 0; padding: 0; list-style: none; }
.afs-chip {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 4px 12px 4px 4px;
	border: 1px solid color-mix(in srgb, var(--afs-text) 16%, transparent);
	border-radius: 999px;
	background: var(--afs-card);
	color: var(--afs-ctext);
	font: inherit;
	text-align: left;
	cursor: pointer;
	transition: border-color 0.15s;
}
.afs-chip:hover { border-color: var(--afs-accent); }
.afs-chip__img { display: grid; place-items: center; flex: none; width: 36px; height: 36px; overflow: hidden; border-radius: 50%; background: var(--af-bg-2); font-size: 12px; font-weight: 800; color: var(--af-red-t); }
.af-main .afs-chip__img img { width: 100%; height: 100%; object-fit: cover; }
.afs-chip strong { display: block; font-size: 13.5px; line-height: 1.2; color: var(--afs-ctext); }
.afs-chip em { display: block; font-size: 12px; font-style: normal; line-height: 1.25; opacity: 0.75; }
.afs-prog__text { font-size: 15.5px; line-height: 1.6; }
.afs-prog__text p,
.afs-prog__text ul { margin: 0 0 0.6em; }
.afs-prog__text ul { padding-left: 1.2em; }
.afs-prog__more > summary { display: inline-flex; gap: 6px; font-size: 14px; font-weight: 700; color: var(--afs-accent); cursor: pointer; list-style: none; }
.afs-prog__more > summary::-webkit-details-marker { display: none; }
.afs-prog__more > summary::after { content: "+"; }
.afs-prog__more[open] > summary::after { content: "–"; }
.afs-prog__more[open] > summary { margin-bottom: 8px; }
.afs-prog__sponsor { display: flex; align-items: center; gap: 12px; margin: 4px 0 0; font-size: 12px; text-transform: uppercase; letter-spacing: 0.08em; opacity: 0.8; }
.af-main .afs-prog__sponsor img { max-height: 32px; width: auto; }
.afs-prog__row--break { padding-block: 14px; }
.afs-prog__row--break .afs-prog__time,
.afs-prog__row--break .afs-prog__title { color: inherit; opacity: 0.75; font-weight: 600; }
.afs-prog__row--break .afs-prog__title { font-size: 16px; }

/* Cenik */
.afs-pricing { display: grid; grid-template-columns: repeat(var(--afs-cols), minmax(0, 1fr)); gap: 20px; text-align: left; }
.afs-price { display: flex; flex-direction: column; gap: 12px; padding: 28px; border-top: 4px solid transparent; border-radius: var(--af-radius); background: var(--afs-card); box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06); }
.afs-price--hl { border-top-color: var(--af-red); box-shadow: 0 18px 40px -24px rgba(0, 0, 0, 0.35); }
.af-main .afs-price__title { margin: 0; font-size: 13px; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; color: var(--afs-head); }
.afs-price__amount { display: flex; align-items: baseline; gap: 12px; margin: 0; }
.afs-price__amount strong { font-size: clamp(32px, 3.4vw, 42px); font-weight: 800; letter-spacing: -0.03em; color: var(--afs-head); }
.afs-price__amount s { font-size: 18px; opacity: 0.55; }
.afs-price__text { font-size: 15px; line-height: 1.55; }
.afs-price__text p { margin: 0 0 0.5em; }
.afs-price__action { margin: auto 0 0; padding-top: 8px; }
.afs-price__action .afs-btn { width: 100%; justify-content: center; }
.afs-terms { margin-top: 24px; text-align: left; }
.afs-terms > summary { font-size: 15px; font-weight: 700; color: var(--afs-accent); cursor: pointer; }
.afs-terms[open] > summary { margin-bottom: 14px; }
.afs-terms .afs-text { font-size: 15px; }

/* Logotipi – največ štirje v vrstici, vedno na sredini */
.afs-logos { text-align: center; }
.afs-logos + .afs-logos { margin-top: 40px; }
.af-main .afs-logos__title { margin: 0 0 18px; font-size: 13px; font-weight: 800; letter-spacing: 0.14em; text-transform: uppercase; color: var(--afs-head); opacity: 0.8; text-align: center; }
.afs-logos__grid {
	--afs-logo-gap: 20px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: var(--afs-logo-gap);
	margin: 0;
	padding: 0;
	list-style: none;
}
.afs-logos__grid li > * { overflow: hidden; }
.afs-logos__grid li { flex: 0 1 calc((100% - (var(--afs-cols) - 1) * var(--afs-logo-gap)) / var(--afs-cols)); min-width: 0; }
.afs-logos__grid li > * {
	display: grid;
	place-items: center;
	height: calc(var(--afs-logo-h, 150px) + 28px);
	padding: 14px 18px;
	border: 1px solid rgba(0, 0, 0, 0.07);
	border-radius: var(--af-radius);
	background: #fff;
	transition: box-shadow 0.2s, transform 0.2s;
}
.af-main .afs-logos__img { display: block; width: 100%; max-width: 100%; height: var(--afs-logo-h, 150px); max-height: none; object-fit: contain; }

/* Prezentacije */
.afs-pres { display: grid; gap: 10px; max-width: 900px; margin: 0; padding: 0; list-style: none; text-align: left; }
.afs-pres__item { display: flex; align-items: center; gap: 16px; padding: 16px 18px; border-radius: var(--af-radius); background: var(--afs-card); }
.afs-pres__icon { display: grid; place-items: center; flex: none; width: 44px; height: 52px; border-radius: 2px; background: var(--af-red); color: #fff; font-size: 11px; font-weight: 800; letter-spacing: 0.06em; }
.afs-pres__body { display: flex; flex-direction: column; gap: 2px; flex: 1; min-width: 0; }
.afs-pres__body strong { font-size: 16px; color: var(--afs-head); }
.afs-pres__body span { font-size: 14px; opacity: 0.8; }
.afs-pres__form { display: grid; gap: 12px; max-width: 560px; padding: 24px; border-radius: var(--af-radius); background: var(--afs-card); text-align: left; }
.afs-pres__form label { font-size: 15px; font-weight: 600; }
.afs-pres__form > span { display: flex; gap: 8px; }
.afs-pres__form input { flex: 1; min-width: 0; padding: 12px 14px; border: 1px solid rgba(0, 0, 0, 0.2); border-radius: 2px; font: 16px var(--af-font); }
.afs-pres__error { margin: 0; color: var(--af-red-t); font-weight: 700; }
.afs-pres__intro { margin-bottom: 16px; }

/* Lokacija */
.afs-location { display: grid; gap: 0; overflow: hidden; border-radius: var(--af-radius); background: var(--afs-card); text-align: left; }
.afs-location--img { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.af-main .afs-location__img { width: 100%; height: 100%; object-fit: cover; }
.afs-location__body { padding: 28px; }
.afs-location__pin { width: 28px; height: 28px; color: var(--afs-accent); }
.afs-location__venue { margin: 10px 0 8px; font-size: 20px; font-weight: 800; color: var(--afs-head); }
.afs-b--boxed .afs-location { background: none; }
.afs-b--boxed .afs-location__body { padding: 0; }

/* ==========================================================================
   Bloki portala v sekcijah
   ========================================================================== */
.afs-b--ad .af-ad__inner { max-width: 970px; margin-inline: auto; }
.afs-col .afs-b--ad .af-ad__inner { max-width: none; }
.afs-col--right .af-ad { padding: 12px; background: var(--af-paper); border-radius: var(--af-radius); }
.afs-col--right .af-ad .af-ad__inner > * + * { margin-top: 16px; }
.afs-b--ad .af-ad.is-empty { display: none; }

/* Oštevilčenje */
.afs-pager { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 28px; }
.afs-pager__info { font-size: 14px; font-weight: 600; opacity: 0.75; }

/* ==========================================================================
   Glava dogodka / strani
   ========================================================================== */
.afs-hero {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	background: #111;
	color: #fff;
}
.afs-hero--image,
.afs-hero--video {
	display: flex;
	align-items: flex-end;
	min-height: clamp(520px, 74vh, 780px);
	background: #111 var(--afs-hero-img) center / cover no-repeat;
}
.afs-hero--image::after,
.afs-hero--video::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background:
		linear-gradient(90deg, rgba(12, 12, 12, 0.94) 0%, rgba(12, 12, 12, 0.78) 42%, rgba(12, 12, 12, 0.3) 100%),
		linear-gradient(0deg, rgba(12, 12, 12, 0.7), transparent 45%);
}
.afs-hero > .afs-sec__media { z-index: -2; }
.afs-hero__inner { position: relative; width: 100%; padding-block: 72px 64px; }
.afs-hero__content { max-width: 780px; }
.afs-hero__eyebrow { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; min-height: 22px; margin: 0 0 20px; }
.afs-hero__kicker { margin: 0 0 14px; font-size: 13px; font-weight: 800; letter-spacing: 0.14em; text-transform: uppercase; color: #ff4a4a; }
.afs-hero__eyebrow .afs-hero__kicker { margin: 0; }
.afs-hero--title .afs-hero__kicker,
.afs-hero--split .afs-hero__kicker { color: var(--af-red-t); }
.afs-hero__past { padding: 5px 9px; border: 1px solid rgba(255, 255, 255, 0.5); border-radius: 2px; font-size: 11px; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; }
.af-theme-page .afs-hero__title {
	margin: 0;
	font-family: var(--af-font-head);
	font-size: clamp(34px, 4.6vw, 64px);
	font-weight: 800;
	line-height: 1.04;
	letter-spacing: -0.03em;
	color: #fff !important;
	text-wrap: balance;
}
.afs-hero__accent { color: #ff4a4a; }
.afs-hero--split .afs-hero__accent,
.afs-hero--title .afs-hero__accent { color: var(--af-red-t); }
.afs-hero__sub { max-width: 62ch; margin: 18px 0 0; font-size: clamp(17px, 1.5vw, 20px); line-height: 1.5; color: rgba(255, 255, 255, 0.84); }
.afs-hero__facts { display: flex; flex-wrap: wrap; gap: 10px 28px; margin: 26px 0 0; padding: 0; list-style: none; font-size: 16px; font-weight: 600; }
.afs-hero__facts li { display: inline-flex; align-items: center; gap: 9px; }
.afs-hero__facts .af-icon { width: 19px; height: 19px; color: #ff4a4a; }
.afs-hero__countdown.af-countdown { margin: 28px 0 0; }
.afs-hero__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 30px; }

.afs-hero--split { background: var(--af-bg); color: var(--af-text); }
.afs-hero--split .afs-hero__inner { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr); gap: 56px; align-items: center; padding-block: 56px 64px; }
.af-theme-page .afs-hero--split .afs-hero__title { color: var(--af-ink) !important; }
.afs-hero--split .afs-hero__sub { color: var(--af-soft); }
.afs-hero--split .afs-hero__facts .af-icon { color: var(--af-red-t); }
.afs-hero--split .afs-hero__kicker { margin: 0 0 14px; font-size: 13px; font-weight: 800; letter-spacing: 0.14em; text-transform: uppercase; color: #ff4a4a; }
.afs-hero__eyebrow .afs-hero__kicker { margin: 0; }
.afs-hero--title .afs-hero__kicker,
.afs-hero--split .afs-hero__kicker { color: var(--af-red-t); }
.afs-hero__past { border-color: rgba(0, 0, 0, 0.3); }
.afs-hero--split .af-btn--ghost { border-color: rgba(0, 0, 0, 0.25); color: var(--af-ink) !important; }
.afs-hero--split .af-btn--ghost:hover { background: var(--af-inv); color: #fff !important; }
.afs-hero--split .af-countdown > div { background: var(--af-paper); border-color: rgba(0, 0, 0, 0.08); }
.afs-hero--split .af-countdown strong { color: var(--af-ink); }
.afs-hero--split .af-countdown span { color: var(--af-muted); }
.afs-hero__media { position: relative; overflow: hidden; aspect-ratio: 4 / 3; border-radius: var(--af-radius); box-shadow: 0 30px 60px -30px rgba(0, 0, 0, 0.45); }
.af-theme-page .afs-hero__media img { width: 100%; height: 100%; object-fit: cover; }

.afs-hero--page.afs-hero--title { background: var(--af-bg-2); color: var(--af-ink); }
.afs-hero--page.afs-hero--title .afs-hero__inner { padding-block: 56px 44px; }
.af-theme-page .afs-hero--page.afs-hero--title .afs-hero__title { color: var(--af-ink) !important; font-size: clamp(32px, 4vw, 52px); }
.afs-hero--page.afs-hero--title .afs-hero__sub { color: var(--af-soft); }
.afs-hero--page.afs-hero--image { min-height: 380px; }

/* Meni sekcij */
.afs-nav {
	position: sticky;
	top: calc(var(--af-admin) + var(--af-navbar-h));
	z-index: 80;
	background: var(--af-paper);
	border-bottom: 1px solid var(--af-hair);
	box-shadow: 0 10px 24px -22px rgba(0, 0, 0, 0.6);
	font-family: var(--af-font);
}
.afs-nav__inner { display: flex; align-items: center; gap: 16px; min-height: 56px; }
.afs-nav__list {
	display: flex;
	flex: 1;
	min-width: 0;
	margin: 0 0 0 -14px;
	padding: 0;
	overflow-x: auto;
	list-style: none;
	scrollbar-width: none;
}
.afs-nav__list::-webkit-scrollbar { display: none; }
.afs-nav__list a {
	position: relative;
	display: block;
	padding: 0 14px;
	line-height: 56px;
	font-size: 13px;
	font-weight: 750;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	white-space: nowrap;
	color: var(--af-ink);
	text-decoration: none;
	transition: color 0.15s;
}
.afs-nav__list a::after {
	content: "";
	position: absolute;
	left: 14px;
	right: 14px;
	bottom: 0;
	height: 3px;
	background: var(--af-red);
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 0.25s ease;
}
.afs-nav__list a:hover,
.afs-nav__list a.is-active { color: var(--af-red-t); }
.afs-nav__list a.is-active::after { transform: scaleX(1); }
.afs-nav__cta.af-btn { flex: none; padding: 9px 16px; font-size: 13px; }

/* Izpostavljen dogodek v sekciji: meni koledarja se odpre navzgor. */
.af-spot .af-addcal__menu { top: auto; bottom: calc(100% + 6px); }
/* Glava ima overflow: hidden (slika, video) – meni »Dodaj v koledar« zato odpremo navzgor, sicer ga spodnji rob odreže. */
.afs-hero .af-addcal__menu { top: auto; bottom: calc(100% + 6px); z-index: 5; }

/* ==========================================================================
   Odzivnost
   ========================================================================== */
@media (max-width: 1100px) {
	.afs-row--main-side { grid-template-columns: minmax(0, 1fr) 300px; }
	.afs-row--side-main { grid-template-columns: 300px minmax(0, 1fr); }
}

@media (max-width: 1024px) {
	.afs-sec { --afs-pad-t: 60px; --afs-pad-b: 60px; }
	.afs-b--span3 { grid-column: span 6; }
	.afs-b--span8 { grid-column: span 12; }
	.afs-flexgrid.afs-people--cards { --afs-cols: 3 !important; }
	.afs-flexgrid.afs-newsgrid { --afs-cols: 2 !important; }
	.afs-carousel.afs-people { --afs-cols: 3.3 !important; }
	.afs-carousel.afs-newsgrid { --afs-cols: 2.2 !important; }
	.afs-pricing { grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); }
	.afs-logos__grid { --afs-cols: 3 !important; }
}

@media (max-width: 960px) {
	.afs-row--split,
	.afs-row--main-side,
	.afs-row--side-main { grid-template-columns: minmax(0, 1fr); }
	.afs-hero--split .afs-hero__inner { grid-template-columns: minmax(0, 1fr); gap: 28px; }
	.afs-hero--split .afs-hero__media { order: -1; aspect-ratio: 16 / 9; }
	.afs-dialog__person { grid-template-columns: minmax(0, 1fr); }
	.afs-dialog__img { max-height: 320px; }
	.afs-gallery { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.afs-videos,
	.afs-contacts { grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); }
	.afs-location--img { grid-template-columns: minmax(0, 1fr); }
	.afs-col--right .af-cal { order: -1; }
}

@media (max-width: 767px) {
	.afs-sec { --afs-pad-t: 44px; --afs-pad-b: 44px; }
	.afs-row--grid > .afs-b { grid-column: span 12; }
	.afs-row--grid > .afs-b--stat { grid-column: span 6; }
	.afs-stat__num { font-size: 40px; }
	.afs-hero--image,
	.afs-hero--video { min-height: 0; }
	.afs-hero__inner { padding-block: 120px 40px; }
	.afs-hero--split .afs-hero__inner,
	.afs-hero--page .afs-hero__inner { padding-block: 32px 40px; }
	.afs-hero__actions .af-btn,
	.afs-hero__actions .af-addcal,
	.afs-hero__actions .af-addcal > summary { width: 100%; }
	.afs-nav__cta.af-btn { display: none; }
	.afs-flexgrid.afs-people--cards { --afs-cols: 2 !important; --afs-fgap: 14px; }
	.afs-flexgrid.afs-people--compact { --afs-cols: 3 !important; --afs-fgap: 12px; }
	.afs-flexgrid.afs-people--list,
	.afs-flexgrid.afs-newsgrid { --afs-cols: 1 !important; }
	.afs-carousel.afs-people { --afs-cols: 1.7 !important; --afs-cgap: 14px; }
	.afs-carousel.afs-newsgrid { --afs-cols: 1.15 !important; --afs-cgap: 14px; }
	.afs-news--feature { flex-direction: column; }
	.afs-news--feature .afs-news__media { flex: none; min-height: 0; aspect-ratio: 16 / 10; }
	.afs-people--list .afs-person__photo { width: 84px; }
	.afs-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
	.afs-logos__grid { --afs-cols: 2 !important; --afs-logo-gap: 12px; }
	.afs-logos__grid li > * { height: calc(var(--afs-logo-h, 150px) * 0.65 + 20px); padding: 10px 12px; }
	.af-main .afs-logos__img { height: calc(var(--afs-logo-h, 150px) * 0.65); }
	.afs-prog__row { grid-template-columns: minmax(0, 1fr); gap: 6px; }
	.afs-b--boxed { padding: 22px; }
	.afs-dialog__body { padding: 24px 22px 28px; }
	.afs-lightbox__stage { padding: 56px 12px 64px; }
	.afs-lightbox__prev,
	.afs-lightbox__next { top: auto; bottom: 10px; transform: none; }
	.afs-pres__item { flex-wrap: wrap; }
}

@media (prefers-reduced-motion: reduce) {
	.afs-sec--moving { animation: none; }
	.afs-sec__media .afs-sec__video { display: none; }
	.afs-tile,
	.afs-tile__img,
	.afs-person__img,
	.afs-gallery__item img { transition: none; }
}

/* ==========================================================================
   PODSTRANI – glava, novice, Akademček, ekipa, kontakti, zemljevid,
   prednosti, izjave, tekoči trak partnerjev
   ========================================================================== */

/* ---------- Glava podstrani (naslov) ---------- */
.afs-hero--page.afs-hero--title {
	position: relative;
	overflow: hidden;
	background:
		radial-gradient(1200px 420px at 88% -10%, rgba(224, 0, 0, 0.09), transparent 60%),
		linear-gradient(180deg, var(--af-bg-2) 0%, var(--af-bg) 100%);
}
.afs-hero--page.afs-hero--title::before {
	/* Velik, komaj viden znak A (iz logotipa) v desnem kotu. */
	content: "";
	position: absolute;
	right: max(-40px, calc((100vw - var(--af-wrap)) / 2 - 80px));
	bottom: -70px;
	width: min(460px, 42vw);
	aspect-ratio: 1;
	background: var(--af-red);
	opacity: 0.05;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M38 8h30l24 84H70l-5-18H39l-5 18H12zm5 50h17l-8-30z'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M38 8h30l24 84H70l-5-18H39l-5 18H12zm5 50h17l-8-30z'/%3E%3C/svg%3E") center / contain no-repeat;
	pointer-events: none;
}
.afs-hero--page.afs-hero--title .afs-hero__inner { padding-block: clamp(44px, 6vw, 84px) clamp(40px, 5vw, 64px); }
.afs-hero--page.afs-hero--title .afs-hero__content { max-width: 860px; }
.afs-hero--page .afs-hero__kicker {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 18px;
}
.afs-hero--page .afs-hero__kicker::before { content: ""; width: 34px; height: 3px; background: currentColor; }
.af-theme-page .afs-hero--page.afs-hero--title .afs-hero__title { font-size: clamp(38px, 5.4vw, 72px); line-height: 1.02; }
.afs-hero--page.afs-hero--title .afs-hero__sub { max-width: 60ch; font-size: clamp(17px, 1.5vw, 20px); }
.afs-hero--page.afs-hero--title .af-btn--ghost { border-color: rgba(0, 0, 0, 0.22); color: var(--af-ink) !important; }
.afs-hero--page.afs-hero--title .af-btn--ghost:hover { background: var(--af-inv); color: #fff !important; }
.afs-hero--page.afs-hero--image { min-height: clamp(420px, 60vh, 620px); }
.afs-hero--page.afs-hero--image .afs-hero__kicker { color: #ff4a4a; }

.afs-lead { font-size: clamp(19px, 1.7vw, 23px); line-height: 1.5; color: var(--afs-head); }

/* ---------- Filtri (čipi) in oštevilčenje ---------- */
.afs-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
.afs-chip {
	display: inline-flex;
	align-items: center;
	min-height: 38px;
	padding: 7px 16px;
	border: 1px solid color-mix(in srgb, var(--afs-head) 16%, transparent);
	border-radius: 999px;
	background: color-mix(in srgb, var(--afs-card) 70%, transparent);
	color: var(--afs-head) !important;
	font-size: 14px;
	font-weight: 650;
	white-space: nowrap;
	transition: background-color 0.18s, color 0.18s, border-color 0.18s;
}
.afs-chip:hover { border-color: var(--afs-accent); color: var(--afs-accent) !important; }
.afs-chip.is-active { background: var(--afs-head); border-color: var(--afs-head); color: var(--afs-card) !important; }
.afs-theme--grafit .afs-chip.is-active,
.afs-theme--temna .afs-chip.is-active { background: var(--af-red); border-color: var(--af-red); color: #fff !important; }

.afs-pages-nav {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 6px;
	margin-top: 40px;
}
.afs-pages-nav__num,
.afs-pages-nav__step {
	display: inline-grid;
	place-items: center;
	min-width: 44px;
	height: 44px;
	padding: 0 12px;
	border: 1px solid color-mix(in srgb, var(--afs-head) 14%, transparent);
	border-radius: var(--af-radius);
	background: var(--afs-card);
	color: var(--afs-ctext) !important;
	font-size: 15px;
	font-weight: 700;
	transition: background-color 0.18s, color 0.18s, border-color 0.18s;
}
.afs-pages-nav__step .af-icon { width: 18px; height: 18px; }
a.afs-pages-nav__num:hover,
a.afs-pages-nav__step:hover { border-color: var(--af-red); color: var(--af-red-t) !important; }
.afs-pages-nav__num.is-current { background: var(--af-red); border-color: var(--af-red); color: #fff !important; }
.afs-pages-nav__step.is-off { opacity: 0.35; }
.afs-pages-nav__gap { padding: 0 4px; color: var(--afs-text); }

/* ---------- Novice (uredništvo) ---------- */
.afs-newsroom { display: grid; gap: 28px; }
.afs-newsroom__bar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 14px 24px;
	padding-bottom: 22px;
	border-bottom: 1px solid color-mix(in srgb, var(--afs-head) 12%, transparent);
}
.afs-newsroom__search {
	display: flex;
	align-items: center;
	gap: 8px;
	flex: 0 1 280px;
	min-width: 220px;
	padding: 0 14px;
	border: 1px solid color-mix(in srgb, var(--afs-head) 16%, transparent);
	border-radius: 999px;
	background: var(--afs-card);
	transition: border-color 0.18s, box-shadow 0.18s;
}
.afs-newsroom__search:focus-within { border-color: var(--af-red); box-shadow: 0 0 0 3px rgba(224, 0, 0, 0.12); }
.afs-newsroom__search .af-icon { flex: none; width: 18px; height: 18px; color: var(--af-muted); }
.afs-newsroom__search input[type=search] {
	flex: 1;
	min-width: 0;
	height: 40px;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0;
	background: transparent;
	font: 500 15px var(--af-font);
	color: var(--af-ink);
	outline: none;
}
.afs-newsroom__found { margin: 0; font-size: 15px; color: var(--afs-text); }
.afs-newsroom__found a { color: var(--af-red-t); font-weight: 700; text-decoration: underline; }
.afs-newsroom__lead .afs-news--feature { max-width: none; }
.afs-newsroom__lead .afs-news--feature .afs-news__media { min-height: 380px; }
.afs-newsroom__grid {
	display: grid;
	grid-template-columns: repeat(var(--afs-cols), minmax(0, 1fr));
	gap: 24px;
}
.afs-newsroom__grid > .afs-news { height: 100%; }
.afs-newsroom__grid > .af-ad,
.afs-newsroom__ad { grid-column: 1 / -1; }

/* ---------- Akademček ---------- */
.afs-issues { display: grid; gap: clamp(48px, 6vw, 80px); }
.afs-issue-hero {
	display: grid;
	grid-template-columns: minmax(220px, 380px) minmax(0, 1fr);
	align-items: center;
	gap: clamp(32px, 6vw, 88px);
	padding: clamp(28px, 4vw, 56px);
	border-radius: var(--af-radius);
	background:
		radial-gradient(700px 360px at 12% 30%, rgba(224, 0, 0, 0.12), transparent 70%),
		#1e2129;
	color: #e7e9ef;
	overflow: hidden;
}
.afs-issue-hero__cover {
	position: relative;
	display: block;
	transform: rotate(-3deg);
	transition: transform 0.4s ease;
}
.afs-issue-hero__cover::before {
	/* Druga, zamaknjena »stran« za globino. */
	content: "";
	position: absolute;
	inset: 10px -12px -12px 12px;
	border-radius: 2px;
	background: rgba(255, 255, 255, 0.09);
	transform: rotate(5deg);
}
.afs-issue-hero__cover img,
.afs-issue-hero__cover .afs-issue__blank {
	position: relative;
	display: block;
	width: 100%;
	aspect-ratio: 3 / 4;
	object-fit: cover;
	border-radius: 2px;
	box-shadow: 0 40px 70px -30px rgba(0, 0, 0, 0.9), 0 2px 0 rgba(255, 255, 255, 0.06) inset;
}
.afs-issue-hero:hover .afs-issue-hero__cover { transform: rotate(0deg) translateY(-6px); }
.afs-issue-hero__kicker {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin: 0 0 14px;
	font-size: 12.5px;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #ff4a4a;
}
.af-main .afs-issue-hero__title { margin: 0; font-size: clamp(36px, 5vw, 64px); font-weight: 800; line-height: 1; letter-spacing: -0.03em; color: #fff; }
.afs-issue-hero__date { display: inline-flex; align-items: center; gap: 8px; margin: 16px 0 0; font-size: 15px; font-weight: 600; color: #b9bfcc; }
.afs-issue-hero__date .af-icon { width: 18px; height: 18px; color: #ff4a4a; }
.afs-issue-hero__text { max-width: 52ch; margin-top: 18px; font-size: 17px; line-height: 1.6; color: #c9ced9; }
.afs-issue-hero__text p { margin: 0; }
.afs-issue-hero__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 24px; margin: 28px 0 0; }
.afs-issue-hero__all { font-size: 15px; font-weight: 700; color: #fff !important; border-bottom: 1px solid rgba(255, 255, 255, 0.35); }
.afs-issue-hero__all:hover { border-color: #ff4a4a; color: #ff4a4a !important; }
.afs-issues__shelf { scroll-margin-top: calc(var(--af-admin) + var(--af-navbar-h) + 24px); }
.af-main .afs-issues__head { margin: 0 0 24px; font-size: clamp(22px, 2.2vw, 28px); font-weight: 800; letter-spacing: -0.015em; color: var(--afs-head); }
.afs-issues__grid { display: grid; grid-template-columns: repeat(var(--afs-cols), minmax(0, 1fr)); gap: 32px 24px; }
.afs-issue { display: grid; gap: 6px; color: var(--afs-head) !important; }
.afs-issue__cover {
	position: relative;
	display: block;
	overflow: hidden;
	aspect-ratio: 3 / 4;
	margin-bottom: 8px;
	border-radius: 2px;
	background: var(--af-bg-2);
	box-shadow: 0 18px 34px -20px rgba(0, 0, 0, 0.55);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.afs-issue__cover img { width: 100%; height: 100%; object-fit: cover; }
.afs-issue__blank { display: grid; place-items: center; width: 100%; height: 100%; padding: 16px; background: var(--af-red); color: #fff; font-weight: 800; text-align: center; }
.afs-issue__open {
	position: absolute;
	left: 12px;
	right: 12px;
	bottom: 12px;
	padding: 10px;
	border-radius: 2px;
	background: var(--af-red);
	color: #fff;
	font-size: 13px;
	font-weight: 750;
	text-align: center;
	opacity: 0;
	transform: translateY(8px);
	transition: opacity 0.25s ease, transform 0.25s ease;
}
.afs-issue__title { font-size: 16px; font-weight: 800; }
.afs-issue__year { font-size: 13px; font-weight: 600; color: var(--afs-text); }
@media (hover: hover) {
	.afs-issue:hover .afs-issue__cover { transform: translateY(-6px) rotate(-1deg); box-shadow: 0 30px 50px -24px rgba(0, 0, 0, 0.6); }
	.afs-issue:hover .afs-issue__open { opacity: 1; transform: none; }
	.afs-issue:hover .afs-issue__title { color: var(--af-red-t); }
}

/* ---------- Ekipa ---------- */
.afs-member {
	position: relative;
	display: flex;
	flex-direction: column;
	height: 100%;
	overflow: hidden;
	border-radius: var(--af-radius);
	background: var(--afs-card);
	color: var(--afs-ctext);
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.afs-member::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background: var(--afs-card-accent); transform: scaleX(0); transform-origin: left; transition: transform 0.3s ease; }
.afs-member__photo { position: relative; aspect-ratio: 4 / 5; overflow: hidden; background: var(--af-bg-2); }
.afs-member__photo::after { content: ""; position: absolute; inset: auto 0 0; height: 40%; background: linear-gradient(0deg, rgba(0, 0, 0, 0.18), transparent); }
.af-main .afs-member__img { width: 100%; height: 100%; object-fit: cover; object-position: center 20%; transition: transform 0.6s cubic-bezier(0.2, 0.7, 0.2, 1); }
.afs-member__initials { display: grid; place-items: center; width: 100%; height: 100%; background: var(--af-inv); color: #fff; font-size: 44px; font-weight: 800; }
.afs-member__body { display: flex; flex: 1; flex-direction: column; gap: 4px; padding: 18px 20px 20px; }
.af-main .afs-member__name { margin: 0; font-size: 19px; font-weight: 800; letter-spacing: -0.015em; color: var(--afs-ctext); }
.afs-member__role { margin: 0; font-size: 13.5px; line-height: 1.4; opacity: 0.75; }
.afs-member__links { display: grid; gap: 6px; margin: auto 0 0; padding-top: 14px; border-top: 1px solid color-mix(in srgb, var(--afs-ctext) 12%, transparent); margin-top: 14px; }
.afs-member__links a { display: flex; align-items: center; gap: 8px; min-width: 0; font-size: 13.5px; font-weight: 600; color: var(--afs-ctext) !important; transition: color 0.15s; }
.afs-member__links a span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.afs-member__links .af-icon { flex: none; width: 16px; height: 16px; color: var(--afs-card-accent); }
.afs-member__links a:hover { color: var(--afs-card-accent) !important; }
@media (hover: hover) {
	.afs-member:hover { transform: translateY(-4px); box-shadow: 0 22px 44px -24px rgba(0, 0, 0, 0.45); }
	.afs-member:hover::after { transform: scaleX(1); }
	.afs-member:hover .afs-member__img { transform: scale(1.04); }
}

/* ---------- Kontaktni podatki ---------- */
.afs-contactinfo--tiles .afs-contactinfo__rows { display: grid; grid-template-columns: repeat(var(--afs-cols), minmax(0, 1fr)); gap: 16px; }
.afs-contactinfo--tiles .afs-contactinfo__row {
	position: relative;
	display: flex;
	align-items: center;
	gap: 16px;
	min-height: 104px;
	padding: 22px 24px;
	border-radius: var(--af-radius);
	background: var(--afs-card);
	color: var(--afs-ctext);
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.afs-contactinfo--tiles .afs-contactinfo__row::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background: var(--afs-card-accent); transform: scaleX(0); transform-origin: left; transition: transform 0.3s ease; }
@media (hover: hover) {
	.afs-contactinfo--tiles .afs-contactinfo__row:hover { transform: translateY(-3px); box-shadow: 0 18px 36px -22px rgba(0, 0, 0, 0.4); }
	.afs-contactinfo--tiles .afs-contactinfo__row:hover::after { transform: scaleX(1); }
}
.afs-contactinfo__icon {
	display: grid;
	place-items: center;
	flex: none;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: color-mix(in srgb, var(--af-red) 10%, var(--afs-card));
	color: var(--af-red-t);
}
.afs-contactinfo__icon .af-icon { width: 21px; height: 21px; }
.afs-contactinfo__label { margin: 0 0 3px; font-size: 11.5px; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; opacity: 0.65; }
.afs-contactinfo__value { margin: 0; font-size: 18px; font-weight: 750; line-height: 1.3; letter-spacing: -0.01em; overflow-wrap: anywhere; }
.afs-contactinfo__value a { color: inherit !important; }
.afs-contactinfo__value a:hover { color: var(--af-red-t) !important; }
.afs-contactinfo--list {
	height: 100%;
	padding: clamp(24px, 3vw, 36px);
	border-radius: var(--af-radius);
	background: var(--afs-card);
	color: var(--afs-ctext);
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
}
.af-main .afs-contactinfo__title { margin: 0 0 18px; font-size: 20px; font-weight: 800; line-height: 1.3; color: var(--afs-ctext); }
.afs-contactinfo--list .afs-contactinfo__row { display: flex; align-items: flex-start; gap: 14px; padding: 13px 0; border-top: 1px solid color-mix(in srgb, var(--afs-ctext) 10%, transparent); }
.afs-contactinfo--list .afs-contactinfo__row:not(.has-icon) { padding-left: 50px; }
.afs-contactinfo--list .afs-contactinfo__icon { width: 36px; height: 36px; }
.afs-contactinfo--list .afs-contactinfo__icon .af-icon { width: 17px; height: 17px; }
.afs-contactinfo--list .afs-contactinfo__value { font-size: 16px; font-weight: 650; }
.afs-contactinfo__note { margin-top: 16px; padding: 14px 16px; border-left: 3px solid var(--af-red); background: color-mix(in srgb, var(--af-red) 5%, var(--afs-card)); font-size: 14.5px; line-height: 1.55; }
.afs-contactinfo__note p { margin: 0; }

/* ---------- Zemljevid ---------- */
.afs-map {
	position: relative;
	height: var(--afs-map-h, 380px);
	overflow: hidden;
	border-radius: var(--af-radius);
	background: #e9e3de;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
}
.afs-map__placeholder {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(115deg, transparent 47%, #fff 47%, #fff 50%, transparent 50%) 0 0 / 100% 100%,
		linear-gradient(25deg, transparent 58%, #fbf8f6 58%, #fbf8f6 61%, transparent 61%) 0 0 / 100% 100%,
		linear-gradient(0deg, rgba(0, 0, 0, 0.04) 1px, transparent 1px) 0 0 / 38px 38px,
		linear-gradient(90deg, rgba(0, 0, 0, 0.04) 1px, transparent 1px) 0 0 / 38px 38px,
		radial-gradient(circle at 72% 30%, #d7e6cf 0 70px, transparent 72px),
		radial-gradient(circle at 20% 80%, #cfe0ea 0 90px, transparent 92px),
		#ece6e1;
}
.afs-map__pin { position: absolute; left: 62%; top: 42%; display: grid; place-items: center; width: 48px; height: 48px; margin: -48px 0 0 -24px; border-radius: 50% 50% 50% 0; background: var(--af-red); color: #fff; transform: rotate(-45deg); box-shadow: 0 10px 20px -8px rgba(0, 0, 0, 0.5); }
.afs-map__pin .af-icon { width: 22px; height: 22px; transform: rotate(45deg); }
.afs-map__card {
	position: absolute;
	left: 20px;
	bottom: 20px;
	max-width: min(360px, calc(100% - 40px));
	padding: 20px 22px;
	border-radius: var(--af-radius);
	background: var(--af-paper);
	color: var(--af-ink);
	box-shadow: 0 18px 40px -20px rgba(0, 0, 0, 0.45);
}
.afs-map__addr { display: flex; gap: 10px; margin: 0; font-size: 17px; font-weight: 800; line-height: 1.35; }
.afs-map__addr .af-icon { flex: none; width: 20px; height: 20px; margin-top: 2px; color: var(--af-red-t); }
.afs-map__text { margin-top: 8px; font-size: 14px; color: var(--af-soft); }
.afs-map__text p { margin: 0; }
.afs-map__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 16px; margin: 16px 0 0; }
.afs-map__link { font-size: 14px; font-weight: 700; color: var(--af-red-t) !important; }
.afs-map__note { margin: 10px 0 0; font-size: 12px; color: var(--af-muted); }
.afs-map iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.afs-map.is-loaded .afs-map__placeholder,
.afs-map.is-loaded .afs-map__card { display: none; }

/* ---------- Prednosti ---------- */
.afs-features {
	display: grid;
	grid-template-columns: repeat(var(--afs-cols), minmax(0, 1fr));
	gap: 18px;
	margin: 0;
	padding: 0;
	list-style: none;
	counter-reset: none;
}
.afs-feature {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 28px 26px 30px;
	border-radius: var(--af-radius);
	background: var(--afs-card);
	color: var(--afs-ctext);
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
	overflow: hidden;
}
.afs-feature::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background: var(--afs-card-accent); transform: scaleX(0); transform-origin: left; transition: transform 0.3s ease; }
.afs-feature__num {
	font-size: 44px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: -0.04em;
	color: transparent;
	-webkit-text-stroke: 1.5px var(--afs-card-accent);
	transition: color 0.25s ease;
}
.af-main .afs-feature__title { margin: 6px 0 0; font-size: 18px; font-weight: 800; line-height: 1.25; letter-spacing: -0.01em; color: var(--afs-ctext); }
.afs-feature__text { margin: 0; font-size: 14.5px; line-height: 1.55; opacity: 0.8; }
@media (hover: hover) {
	.afs-feature:hover { transform: translateY(-4px); box-shadow: 0 22px 40px -24px rgba(0, 0, 0, 0.45); }
	.afs-feature:hover::after { transform: scaleX(1); }
	.afs-feature:hover .afs-feature__num { color: var(--afs-card-accent); }
}
.afs-features--list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 40px; }
.afs-features--list .afs-feature { flex-direction: row; flex-wrap: wrap; align-items: baseline; gap: 4px 16px; padding: 18px 0; border-radius: 0; background: none; box-shadow: none; border-bottom: 1px solid color-mix(in srgb, var(--afs-head) 12%, transparent); color: var(--afs-text); }
.afs-features--list .afs-feature__num { font-size: 22px; }
.afs-features--list .afs-feature__text { flex-basis: 100%; padding-left: 44px; }

/* ---------- Izjave: stena ---------- */
.afs-quotes--wall { display: block; columns: var(--afs-cols) 300px; column-gap: 20px; }
.afs-quotes--wall .afs-quotes__item { break-inside: avoid; margin: 0 0 20px; }
.afs-quotes__event {
	margin: 0;
	padding-bottom: 12px;
	border-bottom: 1px solid color-mix(in srgb, var(--afs-ctext) 12%, transparent);
	font-size: 11.5px;
	font-weight: 800;
	letter-spacing: 0.08em;
	line-height: 1.45;
	text-transform: uppercase;
	color: var(--afs-card-accent);
}
.afs-quotes__item .afs-quotes__logo { max-width: 96px; max-height: 40px; width: auto; height: auto; object-fit: contain; }
.afs-theme--grafit .afs-quotes__item .afs-quotes__logo,
.afs-theme--temna .afs-quotes__item .afs-quotes__logo { padding: 4px 6px; border-radius: 2px; background: #fff; }
.afs-b--testimonials .afs-chips { margin-bottom: 28px; }
.afs-quotes-carousel .afs-quotes__item { height: 100%; }

/* ---------- Tekoči trak partnerjev ---------- */
.afs-marquee {
	--afs-logo-h: 72px;
	position: relative;
	display: flex;
	overflow: hidden;
	-webkit-mask: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
	mask: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}
.afs-marquee__track {
	display: flex;
	flex: none;
	align-items: center;
	gap: clamp(36px, 5vw, 72px);
	margin: 0;
	padding: 8px clamp(18px, 2.5vw, 36px);
	list-style: none;
	animation: afs-marquee 60s linear infinite;
}
.afs-marquee:hover .afs-marquee__track { animation-play-state: paused; }
.afs-marquee__track li { flex: none; display: grid; place-items: center; height: var(--afs-logo-h); }
.af-main .afs-marquee__img { width: auto; max-width: 180px; height: auto; max-height: var(--afs-logo-h); object-fit: contain; filter: grayscale(1); opacity: 0.7; mix-blend-mode: multiply; transition: filter 0.3s, opacity 0.3s; }
.afs-marquee__track li:hover .afs-marquee__img { filter: none; opacity: 1; }
@keyframes afs-marquee { to { transform: translateX(-100%); } }
@media (prefers-reduced-motion: reduce) {
	.afs-marquee { overflow-x: auto; }
	.afs-marquee__track { animation: none; }
	.afs-marquee__track[aria-hidden="true"] { display: none; }
}

/* ---------- Številke na podstraneh (grafit) ---------- */
.afs-theme--grafit .afs-stat__num { color: #fff; }
.afs-theme--grafit .afs-stat__unit { color: #ff4a4a; }
.afs-theme--grafit .afs-stat__text { color: #c3c8d2; }
.afs-theme--grafit .afs-row--grid:has(> .afs-b--stat) > .afs-b--stat + .afs-b--stat { border-left: 1px solid #3b4150; }

/* ---------- Odzivnost ---------- */
@media (max-width: 1080px) {
	.afs-features { grid-template-columns: repeat(min(var(--afs-cols), 2), minmax(0, 1fr)); }
	.afs-issues__grid { grid-template-columns: repeat(min(var(--afs-cols), 4), minmax(0, 1fr)); }
}
@media (max-width: 900px) {
	.afs-issue-hero { grid-template-columns: minmax(0, 1fr); justify-items: start; }
	.afs-issue-hero__cover { width: min(260px, 70%); }
	.afs-contactinfo--tiles .afs-contactinfo__rows { grid-template-columns: repeat(min(var(--afs-cols), 2), minmax(0, 1fr)); }
	.afs-newsroom__grid { grid-template-columns: repeat(min(var(--afs-cols), 2), minmax(0, 1fr)); }
	.afs-theme--grafit .afs-row--grid:has(> .afs-b--stat) > .afs-b--stat + .afs-b--stat { border-left: 0; }
}
@media (max-width: 767px) {
	.afs-chips { flex-wrap: nowrap; overflow-x: auto; margin-inline: calc(var(--af-gutter) * -1); padding: 2px var(--af-gutter) 6px; scrollbar-width: none; }
	.afs-chips::-webkit-scrollbar { display: none; }
	.afs-newsroom__search { flex: 1 1 100%; }
	.afs-newsroom__grid,
	.afs-features,
	.afs-features--list,
	.afs-contactinfo--tiles .afs-contactinfo__rows { grid-template-columns: minmax(0, 1fr); }
	.afs-newsroom__lead .afs-news--feature .afs-news__media { min-height: 0; }
	.afs-issues__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 16px; }
	.afs-issue__open { display: none; }
	.afs-map__card { position: relative; left: auto; bottom: auto; max-width: none; margin: 12px; }
	.afs-map { height: auto; min-height: var(--afs-map-h, 380px); display: flex; align-items: flex-end; }
	.afs-contactinfo__value { font-size: 16.5px; }
	.afs-hero--page.afs-hero--title::before { width: 220px; bottom: -40px; right: -40px; }
	.afs-quotes--wall { columns: 1; }
}

/* »Dodatni CSS« (Prilagodi) oblikuje vse <blockquote> za članke – izjave v
   sekcijah imajo svoj videz. :where() pusti prednost pravilom posameznih blokov. */
.afs-sec :where(blockquote),
.afs-hero :where(blockquote) {
	max-width: none;
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	font-family: inherit;
	font-size: inherit;
	color: inherit;
	text-align: inherit;
}
/* Zemljevid sam v stolpcu: enako visok kot sosednji stolpec. */
.afs-col > .afs-b--map:only-child { height: 100%; }
.afs-col > .afs-b--map:only-child .afs-map { height: 100%; min-height: var(--afs-map-h, 380px); }
@media (max-width: 767px) {
	.afs-col > .afs-b--map:only-child .afs-map { height: auto; }
}
/* Stranski stolpec s koledarjem ostane v pogledu (Novice). */
@media (min-width: 961px) {
	.afs-col:has(> .afs-b--calendar):has(~ .afs-col .afs-newsroom),
	.afs-col:has(.afs-newsroom) ~ .afs-col:has(> .afs-b--calendar) { position: sticky; top: calc(var(--af-admin) + var(--af-navbar-h) + 20px); align-self: start; }
}
/* Mreža z drsnimi filtri ne sme razširiti stolpca. */
.afs-newsroom,
.afs-issues { grid-template-columns: minmax(0, 1fr); }
.afs-newsroom > *,
.afs-newsroom__bar > * { min-width: 0; }
.afs-col,
.afs-b { min-width: 0; }

/* ==========================================================================
   Stolpci po napravah (nastavitev bloka »Stolpci na tablici / telefonu«)
   ========================================================================== */
@media (min-width: 768px) and (max-width: 1080px) {
	.afs-b--ct :is(.afs-flexgrid, .afs-carousel, .afs-newsroom__grid, .afs-quotes, .afs-features, .afs-issues__grid, .afs-contactinfo__rows, .afs-pricing, .afs-contacts) { --afs-cols: var(--afs-cols-t) !important; }
	.afs-b--ct .af-grid { --af-cols: var(--afs-cols-t) !important; }
	.afs-b--ct :is(.af-grid, .afs-newsroom__grid, .afs-features, .afs-issues__grid, .afs-contactinfo--tiles .afs-contactinfo__rows, .afs-quotes:not(.afs-quotes--wall), .afs-pricing, .afs-contacts) { grid-template-columns: repeat(var(--afs-cols-t), minmax(0, 1fr)) !important; }
	.afs-b--ct .afs-quotes--wall { columns: var(--afs-cols-t) !important; }
}
@media (max-width: 767px) {
	.afs-b--cm :is(.afs-flexgrid, .afs-carousel, .afs-newsroom__grid, .afs-quotes, .afs-features, .afs-issues__grid, .afs-contactinfo__rows, .afs-pricing, .afs-contacts) { --afs-cols: var(--afs-cols-m) !important; }
	.afs-b--cm .af-grid { --af-cols: var(--afs-cols-m) !important; }
	.afs-b--cm :is(.af-grid, .afs-newsroom__grid, .afs-features, .afs-issues__grid, .afs-contactinfo--tiles .afs-contactinfo__rows, .afs-quotes:not(.afs-quotes--wall), .afs-pricing, .afs-contacts) { grid-template-columns: repeat(var(--afs-cols-m), minmax(0, 1fr)) !important; }
	.afs-b--cm .afs-quotes--wall { columns: var(--afs-cols-m) !important; }
	/* Dve kartici novic v vrstici na telefonu: manjše besedilo, brez povzetka. */
	.afs-b--cm[style*="--afs-cols-m:2"] :is(.afs-news__excerpt, .afs-news__more) { display: none; }
	.afs-b--cm[style*="--afs-cols-m:2"] .afs-news__body { padding: 12px 12px 14px; gap: 6px; }
	.afs-b--cm[style*="--afs-cols-m:2"] .afs-news__title { font-size: 14.5px !important; }
}

/* ==========================================================================
   Izjave (Testimoniali) – kartica in okno s celotno izjavo
   ========================================================================== */
.afs-quotes--wall { display: grid; columns: auto; grid-template-columns: repeat(var(--afs-cols), minmax(0, 1fr)); gap: 22px; }
.afs-quotes--wall .afs-quotes__item { margin: 0; }

.afs-tq {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 16px;
	height: 100%;
	padding: 26px 26px 22px;
	overflow: hidden;
	cursor: pointer;
}
.afs-tq::before {
	/* Velik narekovaj v ozadju kartice */
	content: "“";
	position: absolute;
	right: 18px;
	top: 44px;
	font: 800 150px/1 Georgia, "Times New Roman", serif;
	color: var(--afs-card-accent);
	opacity: 0.09;
	pointer-events: none;
	transition: opacity 0.3s, transform 0.3s;
}
.afs-tq__top { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 80px; }
.afs-tq__logo {
	position: relative;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	max-width: 70%;
	min-height: 56px;
	transition: opacity 0.2s, transform 0.2s;
}
a.afs-tq__logo:hover { opacity: 0.8; transform: translateY(-1px); }
.af-main .afs-tq__logo-img { width: auto; max-width: min(230px, 100%); height: auto; max-height: 76px; object-fit: contain; }
.afs-theme--grafit .afs-tq__logo,
.afs-theme--temna .afs-tq__logo,
.afs-theme--temna-sij .afs-tq__logo { padding: 8px 12px; border-radius: 4px; background: #fff; }
.afs-tq__badges { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 6px; }
.afs-tq__badge {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	padding: 4px 9px;
	border-radius: 999px;
	background: color-mix(in srgb, var(--afs-card-accent) 12%, transparent);
	color: var(--afs-card-accent);
	font-size: 11.5px;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}
.afs-tq__badge .af-icon { width: 12px; height: 12px; }
.afs-tq .afs-quotes__event { padding-bottom: 0; border-bottom: 0; }
.afs-quotes__item blockquote.afs-tq__quote { position: relative; padding: 0; font-size: 16.5px; line-height: 1.62; }
.afs-quotes__item blockquote.afs-tq__quote::before { display: none; }
.afs-tq__quote p {
	display: -webkit-box;
	margin: 0;
	overflow: hidden;
	-webkit-line-clamp: 6;
	-webkit-box-orient: vertical;
}
.afs-tq__who { display: flex; align-items: center; gap: 14px; margin: auto 0 0; padding-top: 18px; border-top: 1px solid color-mix(in srgb, var(--afs-ctext) 12%, transparent); }
.af-main .afs-tq__photo { flex: none; width: 60px; height: 60px; border-radius: 50%; object-fit: cover; box-shadow: 0 0 0 3px var(--afs-card), 0 0 0 4px color-mix(in srgb, var(--afs-card-accent) 45%, transparent); }
.afs-tq__initials { display: grid; place-items: center; background: var(--af-inv); color: #fff; font-weight: 800; }
.afs-tq__id { display: grid; gap: 2px; min-width: 0; font-size: 13px; line-height: 1.4; }
.afs-tq__id strong { font-size: 15.5px; font-weight: 800; color: var(--afs-ctext); }
.afs-tq__id span { opacity: 0.72; }
.afs-tq__open {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	align-self: flex-start;
	padding: 0 !important;
	border: 0 !important;
	background: none !important;
	color: var(--afs-card-accent) !important;
	font: 750 14px/1.3 var(--af-font) !important;
	cursor: pointer;
}
.afs-tq__open .af-icon { width: 16px; height: 16px; transition: transform 0.2s; }
.afs-tq__open::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.afs-tq__open:focus-visible { outline: none; }
.afs-tq:has(.afs-tq__open:focus-visible) { box-shadow: 0 0 0 2px var(--afs-card-accent); }
@media (hover: hover) {
	.afs-tq:hover::before { opacity: 0.16; transform: translateY(-4px); }
	.afs-tq:hover .afs-tq__open .af-icon { transform: translateX(4px); }
}

/* Okno */
.afs-tqdialog {
	width: min(1060px, calc(100% - 32px));
	max-width: none;
	max-height: calc(100vh - 48px);
	max-height: calc(100dvh - 48px);
	padding: 0;
	border: 0;
	border-radius: 6px;
	background: var(--af-paper);
	color: var(--af-text);
	box-shadow: 0 50px 120px -30px rgba(0, 0, 0, 0.6);
	overflow: hidden;
	font-family: var(--af-font);
}
.afs-tqdialog[open] { display: flex; flex-direction: column; animation: afs-tq-in 0.28s cubic-bezier(0.2, 0.8, 0.2, 1); }
.afs-tqdialog::backdrop { background: rgba(12, 13, 17, 0.72); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); }
@keyframes afs-tq-in { from { opacity: 0; transform: translateY(16px) scale(0.98); } }
.afs-tqdialog__bar {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 10px 12px 10px 18px;
	border-bottom: 1px solid rgba(18, 18, 18, 0.08);
}
.afs-tqdialog__count { margin-right: auto; order: -1; font-size: 13px; font-weight: 700; color: var(--af-muted); }
.afs-tqdialog__nav,
.afs-tqdialog__close {
	display: grid;
	place-items: center;
	width: 40px;
	height: 40px;
	padding: 0 !important;
	border: 1px solid rgba(18, 18, 18, 0.12) !important;
	border-radius: 50% !important;
	background: var(--af-paper) !important;
	color: var(--af-ink) !important;
	font: 400 24px/1 var(--af-font) !important;
	cursor: pointer;
	transition: background-color 0.15s, color 0.15s, border-color 0.15s;
}
.afs-tqdialog__close { margin-left: 6px; background: var(--af-inv) !important; border-color: var(--af-inv) !important; color: #fff !important; font-size: 26px !important; }
.afs-tqdialog__nav:hover,
.afs-tqdialog__close:hover { background: var(--af-red) !important; border-color: var(--af-red) !important; color: #fff !important; }
.afs-tqdialog__content { overflow-y: auto; overscroll-behavior: contain; }

.afs-tqd { display: grid; grid-template-columns: 320px minmax(0, 1fr); min-height: 100%; }
.afs-tqd--nophoto { grid-template-columns: 280px minmax(0, 1fr); }
.afs-tqd__person {
	display: flex;
	flex-direction: column;
	gap: 18px;
	padding: 28px;
	background:
		radial-gradient(420px 260px at 0% 0%, rgba(224, 0, 0, 0.12), transparent 70%),
		var(--af-bg);
}
.afs-tqd__photo-wrap { position: relative; }
.afs-tqd__photo-wrap::after { content: ""; position: absolute; inset: 14px -10px -10px 14px; z-index: 0; border-radius: 4px; background: var(--af-red); }
.af-main .afs-tqd__photo,
.afs-tqd__photo { position: relative; z-index: 1; display: block; width: 100%; aspect-ratio: 4 / 5; object-fit: cover; object-position: center 20%; border-radius: 4px; }
.afs-tqd__id { display: grid; gap: 4px; margin-top: 6px; }
.afs-tqd__name { margin: 0; font-size: 21px; font-weight: 800; line-height: 1.2; letter-spacing: -0.015em; color: var(--af-ink); }
.afs-tqd__role { margin: 0; font-size: 14px; line-height: 1.45; color: var(--af-soft); }
.afs-tqd__logo { display: inline-flex; align-items: center; align-self: flex-start; padding: 12px 16px; border-radius: 4px; background: #fff; box-shadow: 0 8px 20px -14px rgba(0, 0, 0, 0.4); transition: transform 0.2s; }
a.afs-tqd__logo:hover { transform: translateY(-2px); }
.afs-tqd__logo img { display: block; width: auto; max-width: 200px; height: auto; max-height: 72px; object-fit: contain; }
.afs-tqd__site { font-size: 14px; font-weight: 750; color: var(--af-red-t) !important; text-decoration: none; }
.afs-tqd__site:hover { text-decoration: underline; }
.afs-tqd__body { display: grid; align-content: start; gap: 24px; padding: clamp(24px, 4vw, 48px); }
.afs-tqd__event { margin: 0; font-size: 12px; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; color: var(--af-red-t); }
.afs-tqd__quote { position: relative; padding-top: 40px; font-size: clamp(17px, 1.5vw, 19px); line-height: 1.7; color: var(--af-ink); }
.afs-tqd__quote::before { content: "“"; position: absolute; left: -4px; top: -12px; font: 800 96px/1 Georgia, "Times New Roman", serif; color: var(--af-red-t); }
.afs-tqd__quote p { margin: 0 0 1em; }
.afs-tqd__quote p:last-child { margin-bottom: 0; }
.afs-tqd__quote em { font-style: normal; }
.afs-tqd__quote img { max-width: 100%; height: auto; border-radius: 4px; }
.afs-tqd__quote iframe { width: 100%; height: auto; aspect-ratio: 16 / 9; border: 0; border-radius: 4px; }
.afs-tqd__video { border-radius: 4px; overflow: hidden; }
.afs-tqd__gallery { display: grid; grid-template-columns: repeat(var(--n), minmax(0, 1fr)); gap: 10px; }
.afs-tqd__gallery a { display: block; aspect-ratio: 4 / 3; overflow: hidden; border-radius: 4px; background: var(--af-bg-2); }
.afs-tqd__gallery img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.4s ease; }
.afs-tqd__gallery a:hover img { transform: scale(1.05); }

@media (max-width: 767px) {
	.afs-quotes--wall { grid-template-columns: minmax(0, 1fr); }
	.afs-tqdialog { width: 100%; max-height: 100dvh; height: 100dvh; border-radius: 0; }
	.afs-tqd,
	.afs-tqd--nophoto { grid-template-columns: minmax(0, 1fr); }
	.afs-tqd__person { display: grid; grid-template-columns: 96px minmax(0, 1fr); align-items: center; gap: 12px 16px; padding: 20px; }
	.afs-tqd__photo-wrap::after { inset: 6px -5px -5px 6px; }
	.afs-tqd__photo { aspect-ratio: 1; }
	.afs-tqd__id { margin: 0; }
	.afs-tqd__logo,
	.afs-tqd__site { grid-column: 1 / -1; }
	.afs-tqd__gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (prefers-reduced-motion: reduce) {
	.afs-tqdialog[open] { animation: none; }
}
/* Oseba ostane v pogledu, ko se bere dolga izjava. */
@media (min-width: 768px) {
	.afs-tqd { background: linear-gradient(90deg, var(--af-bg) 320px, var(--af-paper) 320px); }
	.afs-tqd--nophoto { background: linear-gradient(90deg, var(--af-bg) 280px, var(--af-paper) 280px); }
	.afs-tqd__person { position: sticky; top: 0; align-self: start; background: radial-gradient(420px 260px at 0% 0%, rgba(224, 0, 0, 0.12), transparent 70%); }
}

/* ==========================================================================
   Strani vrst dogodkov – številke, naslednji dogodek, prazno stanje, utrinki
   ========================================================================== */
.afs-typestats {
	display: grid;
	grid-template-columns: repeat(var(--afs-cols), minmax(0, 1fr));
	text-align: center;
}
.afs-typestats .afs-stat { padding: 6px 18px; }
.afs-typestats .afs-stat + .afs-stat { border-left: 1px solid color-mix(in srgb, var(--afs-text) 22%, transparent); }
.afs-typestats .afs-stat__text p { margin: 0; }

/* Naslednji dogodek */
.afs-next {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
	overflow: hidden;
	border-radius: var(--af-radius);
	background: var(--afs-card);
	color: var(--afs-ctext);
	box-shadow: 0 34px 70px -44px rgba(0, 0, 0, 0.55);
}
.afs-next::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; z-index: 2; width: 5px; background: var(--af-red); }
.afs-next__media { position: relative; display: block; min-height: 380px; overflow: hidden; background: var(--af-bg-2); }
.af-main .afs-next__media img,
.afs-next__media .af-thumb-placeholder { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 0.6s cubic-bezier(0.2, 0.7, 0.2, 1); }
.afs-next:hover .afs-next__media img { transform: scale(1.04); }
.afs-next__body { display: flex; flex-direction: column; justify-content: center; gap: 14px; padding: clamp(26px, 3.4vw, 48px); }
.afs-next__eyebrow { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin: 0; }
.afs-next__flag { display: inline-flex; align-items: center; gap: 8px; font-size: 12px; font-weight: 800; letter-spacing: 0.13em; text-transform: uppercase; color: var(--af-red-t); }
.af-main .afs-next__title { margin: 0; font-size: clamp(24px, 2.5vw, 34px); font-weight: 800; line-height: 1.14; letter-spacing: -0.022em; color: var(--afs-ctext); text-wrap: balance; }
.afs-next__title a { color: inherit !important; }
.afs-next__title a:hover { color: var(--af-red-t) !important; }
.afs-next__intro { margin: 0; font-size: 16px; line-height: 1.55; opacity: 0.8; }
.afs-next__facts { display: grid; gap: 8px; margin: 4px 0 0; padding: 0; list-style: none; font-size: 15px; font-weight: 600; }
.afs-next__facts li { display: flex; align-items: flex-start; gap: 10px; }
.afs-next__facts .af-icon { flex: none; width: 18px; height: 18px; margin-top: 1px; color: var(--af-red-t); }
.afs-next__countdown.af-countdown { margin: 6px 0 0; }
.afs-next__countdown.af-countdown > div { background: var(--af-bg); border-color: transparent; }
.afs-next__countdown.af-countdown strong { color: var(--af-ink); }
.afs-next__countdown.af-countdown span { color: var(--af-muted); }
.afs-next__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 20px; margin: 10px 0 0; }
.afs-next__more { margin-top: clamp(40px, 5vw, 64px); }

/* Ni napovedanih dogodkov */
.afs-typeempty {
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr);
	align-items: stretch;
	gap: 20px;
}
.afs-typeempty__main {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 12px;
	padding: clamp(28px, 4vw, 52px);
	overflow: hidden;
	border-radius: var(--af-radius);
	background: var(--afs-card);
	color: var(--afs-ctext);
}
.afs-typeempty__main::after {
	content: "";
	position: absolute;
	right: -60px;
	bottom: -60px;
	width: 220px;
	height: 220px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(224, 0, 0, 0.12), transparent 70%);
}
.afs-typeempty__icon { display: grid; place-items: center; width: 56px; height: 56px; border-radius: 50%; background: color-mix(in srgb, var(--af-red) 10%, var(--afs-card)); color: var(--af-red-t); }
.afs-typeempty__icon .af-icon { width: 24px; height: 24px; }
.af-main .afs-typeempty__title { margin: 6px 0 0; font-size: clamp(22px, 2.3vw, 30px); font-weight: 800; line-height: 1.2; letter-spacing: -0.02em; color: var(--afs-ctext); }
.afs-typeempty__text { max-width: 52ch; margin: 0; font-size: 16px; line-height: 1.6; opacity: 0.8; }
.afs-typeempty__actions { display: flex; flex-wrap: wrap; gap: 10px; margin: 10px 0 0; }
.afs-typeempty__last {
	position: relative;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	border-radius: var(--af-radius);
	background: #141211;
	color: #fff !important;
	isolation: isolate;
}
.afs-typeempty__media { position: absolute; inset: 0; z-index: -1; }
.afs-typeempty__media img,
.afs-typeempty__media .af-thumb-placeholder { width: 100%; height: 100%; object-fit: cover; opacity: 0.55; transition: transform 0.6s ease, opacity 0.3s; }
.afs-typeempty__last:hover .afs-typeempty__media img { transform: scale(1.05); opacity: 0.45; }
.afs-typeempty__lastbody { display: grid; gap: 8px; margin-top: auto; padding: 24px; background: linear-gradient(0deg, rgba(0, 0, 0, 0.8), transparent); min-height: 60%; align-content: end; }
.afs-typeempty__label { font-size: 11.5px; font-weight: 800; letter-spacing: 0.13em; text-transform: uppercase; color: #ff4a4a; }
.afs-typeempty__lastbody strong { font-size: 19px; font-weight: 800; line-height: 1.25; }
.afs-typeempty__lastbody span:last-child { font-size: 14px; opacity: 0.85; }

/* Utrinki */
.afs-moments { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); grid-auto-rows: clamp(160px, 17vw, 240px); gap: 10px; }
.afs-moments--mosaic { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.afs-moments--mosaic .afs-moment:nth-child(1) { grid-column: span 2; grid-row: span 2; }
.afs-moments--mosaic .afs-moment:nth-child(6),
.afs-moments--mosaic .afs-moment:nth-child(7) { grid-column: span 2; }
.afs-moment { position: relative; display: block; overflow: hidden; border-radius: var(--af-radius); background: var(--af-bg-2); isolation: isolate; }
.af-main .afs-moment img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.7s cubic-bezier(0.2, 0.7, 0.2, 1); }
.afs-moment::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(0, 0, 0, 0.72), transparent 55%); opacity: 0.55; transition: opacity 0.3s; }
.afs-moment__cap { position: absolute; left: 16px; right: 16px; bottom: 14px; z-index: 1; display: grid; gap: 3px; color: #fff; transform: translateY(6px); opacity: 0.9; transition: transform 0.3s, opacity 0.3s; }
.afs-moment__date { font-size: 11.5px; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; color: #ff6b6b; }
.afs-moment__title { font-size: 14.5px; font-weight: 700; line-height: 1.3; }
.afs-moment:nth-child(1) .afs-moment__title { font-size: 19px; }
@media (hover: hover) {
	.afs-moment:hover img { transform: scale(1.06); }
	.afs-moment:hover::after { opacity: 1; }
	.afs-moment:hover .afs-moment__cap { transform: none; opacity: 1; }
}

/* Arhiv s filtri po letih */
.afs-b--archive .afs-chips { margin-bottom: 28px; }

@media (max-width: 960px) {
	.afs-next { grid-template-columns: minmax(0, 1fr); }
	.afs-next__media { min-height: 0; aspect-ratio: 16 / 9; }
	.afs-typeempty { grid-template-columns: minmax(0, 1fr); }
	.afs-typeempty__last { min-height: 240px; }
	.afs-typestats { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 28px; }
	.afs-typestats .afs-stat:nth-child(odd) { border-left: 0; }
}
@media (max-width: 767px) {
	.afs-moments,
	.afs-moments--mosaic { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: 150px; }
	.afs-moments--mosaic .afs-moment:nth-child(6) { grid-column: auto; }
	.afs-moments--mosaic .afs-moment:nth-child(7) { grid-column: span 2; }
	.afs-moment__title { font-size: 13px; }
	.afs-moment__cap { left: 10px; right: 10px; bottom: 8px; }
}
/* Fotografija v glavi podstrani: ljudje so večinoma v zgornji tretjini. */
.afs-hero--page.afs-hero--image { background-position: center 28%; }

/* ==========================================================================
   Koledar dogodkov
   ========================================================================== */
.afs-agenda { display: grid; grid-template-columns: minmax(0, 1fr); gap: 26px; }
.afs-agenda__bar { display: grid; gap: 16px; padding-bottom: 22px; border-bottom: 1px solid color-mix(in srgb, var(--afs-head) 12%, transparent); }
.afs-agenda__bar > * { min-width: 0; }
.afs-agenda__switch { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; }
.afs-seg { display: inline-flex; padding: 4px; border-radius: 999px; background: var(--af-inv); }
.afs-seg__opt { display: inline-flex; align-items: center; gap: 7px; padding: 8px 16px; border-radius: 999px; color: rgba(255, 255, 255, 0.75) !important; font-size: 14px; font-weight: 700; transition: background-color 0.15s, color 0.15s; }
.afs-seg__opt .af-icon { width: 16px; height: 16px; }
.afs-seg__opt:hover { color: #fff !important; }
.afs-seg__opt.is-on { background: var(--af-red); color: #fff !important; }
.afs-seg--light { background: color-mix(in srgb, var(--afs-head) 8%, transparent); }
.afs-seg--light .afs-seg__opt { color: var(--afs-head) !important; }
.afs-seg--light .afs-seg__opt.is-on { background: var(--af-paper); color: var(--af-ink) !important; box-shadow: 0 2px 8px -2px rgba(0, 0, 0, 0.2); }

.afs-ag-month { display: grid; gap: 12px; }
.af-main .afs-ag-month__title {
	position: sticky;
	top: calc(var(--af-admin) + var(--af-navbar-h));
	z-index: 3;
	display: flex;
	align-items: baseline;
	gap: 12px;
	margin: 0;
	padding: 12px 0;
	background: color-mix(in srgb, var(--afs-bg, var(--af-page)) 92%, transparent);
	-webkit-backdrop-filter: blur(6px);
	backdrop-filter: blur(6px);
	font-size: 24px;
	font-weight: 800;
	letter-spacing: -0.02em;
	color: var(--afs-head);
}
.afs-ag-month__title::before { content: ""; align-self: center; width: 10px; height: 10px; border-radius: 50%; background: var(--af-red); }
.afs-ag-month__title small { font-size: 13px; font-weight: 700; letter-spacing: 0.02em; color: var(--afs-text); opacity: 0.7; }
.afs-ag-month__list { display: grid; gap: 10px; }

.afs-ag {
	position: relative;
	display: grid;
	grid-template-columns: 76px 150px minmax(0, 1fr) auto;
	align-items: center;
	gap: 20px;
	padding: 14px 18px 14px 14px;
	border-radius: var(--af-radius);
	background: var(--afs-card);
	color: var(--afs-ctext);
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.afs-ag::before { content: ""; position: absolute; left: 0; top: 14px; bottom: 14px; width: 3px; border-radius: 0 3px 3px 0; background: var(--af-red); transform: scaleY(0); transition: transform 0.25s ease; }
@media (hover: hover) {
	.afs-ag:hover { transform: translateY(-2px); box-shadow: 0 16px 34px -22px rgba(0, 0, 0, 0.45); }
	.afs-ag:hover::before { transform: none; }
	.afs-ag:hover .afs-ag__media img { transform: scale(1.05); }
}
.afs-ag.is-past { opacity: 0.92; }
.afs-ag__date { display: grid; justify-items: center; gap: 1px; padding: 8px 4px; border-radius: var(--af-radius); background: var(--af-bg); text-align: center; line-height: 1; }
.afs-ag__wd { font-size: 11px; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; color: var(--af-muted); }
.afs-ag__d { font-size: 30px; font-weight: 800; letter-spacing: -0.03em; color: var(--af-ink); }
.afs-ag__m { font-size: 12px; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; color: var(--af-red-t); }
.afs-ag__to { margin-top: 4px; font-size: 10.5px; font-weight: 700; color: var(--af-muted); }
.afs-ag__media { display: block; aspect-ratio: 16 / 10; overflow: hidden; border-radius: var(--af-radius); background: var(--af-bg-2); }
.af-main .afs-ag__media img,
.afs-ag__media .af-thumb-placeholder { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease; }
.afs-ag__body { display: grid; gap: 6px; min-width: 0; }
.afs-ag__meta { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; }
.af-main .afs-ag__title { margin: 0; font-size: 18px; font-weight: 800; line-height: 1.3; letter-spacing: -0.01em; }
.afs-ag__title a { color: var(--afs-ctext) !important; }
.afs-ag__title a::after { content: ""; position: absolute; inset: 0; z-index: 0; }
.afs-ag__title a:hover { color: var(--af-red-t) !important; }
.afs-ag__facts { display: flex; flex-wrap: wrap; gap: 4px 18px; margin: 0; font-size: 13.5px; opacity: 0.85; }
.afs-ag__facts span { display: inline-flex; align-items: center; gap: 6px; }
.afs-ag__facts .af-icon { width: 15px; height: 15px; color: var(--af-red-t); }
.afs-ag__actions { position: relative; z-index: 1; display: flex; align-items: center; gap: 8px; }
.afs-ag__reg { padding: 10px 18px; }
.afs-ag__cal { position: relative; }
.afs-ag__cal summary {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 9px 12px;
	border: 1px solid color-mix(in srgb, var(--afs-ctext) 18%, transparent);
	border-radius: 2px;
	font-size: 13px;
	font-weight: 700;
	cursor: pointer;
	list-style: none;
	white-space: nowrap;
}
.afs-ag__cal summary::-webkit-details-marker { display: none; }
.afs-ag__cal summary .af-icon { width: 15px; height: 15px; }
.afs-ag__cal summary:hover { border-color: var(--af-red); color: var(--af-red-t); }
.afs-ag__calmenu { position: absolute; right: 0; top: calc(100% + 6px); z-index: 20; display: grid; min-width: 210px; padding: 6px; border-radius: 4px; background: var(--af-paper); box-shadow: 0 18px 40px -16px rgba(0, 0, 0, 0.45); }
.afs-ag__calmenu a { padding: 9px 12px; border-radius: 3px; color: var(--af-ink) !important; font-size: 14px; font-weight: 600; }
.afs-ag__calmenu a:hover { background: var(--af-bg); color: var(--af-red-t) !important; }
.afs-agenda__empty { display: flex; align-items: center; gap: 14px; padding: 26px; border-radius: var(--af-radius); background: var(--afs-card); }
.afs-agenda__empty .af-icon { flex: none; width: 28px; height: 28px; color: var(--af-red-t); }
.afs-agenda__empty p { margin: 0; }
.afs-agenda__empty a { color: var(--af-red-t) !important; text-decoration: underline; }

/* Pogled meseca */
.afs-cal { overflow: hidden; border-radius: var(--af-radius); background: var(--afs-card); box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06); }
.afs-cal__head { display: flex; align-items: center; gap: 10px; padding: 16px 18px; border-bottom: 1px solid rgba(18, 18, 18, 0.08); }
.af-main .afs-cal__title { flex: 1; margin: 0; font-size: 24px; font-weight: 800; letter-spacing: -0.02em; color: var(--af-ink); order: -1; }
.afs-cal__nav { display: grid; place-items: center; width: 40px; height: 40px; border: 1px solid rgba(18, 18, 18, 0.12); border-radius: 50%; color: var(--af-ink) !important; transition: background-color 0.15s, color 0.15s; }
.afs-cal__nav .af-icon { width: 18px; height: 18px; }
.afs-cal__nav:hover { background: var(--af-red); border-color: var(--af-red); color: #fff !important; }
.afs-cal__today { padding: 8px 14px; border-radius: 999px; background: var(--af-bg); color: var(--af-ink) !important; font-size: 13px; font-weight: 750; }
.afs-cal__grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); }
.afs-cal__wd { padding: 10px 8px; border-bottom: 1px solid rgba(18, 18, 18, 0.08); background: var(--af-bg); font-size: 11.5px; font-weight: 800; letter-spacing: 0.1em; text-align: center; text-transform: uppercase; color: var(--af-muted); }
.afs-cal__day { position: relative; display: flex; flex-direction: column; gap: 4px; min-height: 112px; padding: 8px; border-right: 1px solid rgba(18, 18, 18, 0.06); border-bottom: 1px solid rgba(18, 18, 18, 0.06); min-width: 0; }
.afs-cal__day:nth-child(7n) { border-right: 0; }
.afs-cal__day.is-out { background: repeating-linear-gradient(135deg, transparent 0 6px, rgba(18, 18, 18, 0.025) 6px 7px); }
.afs-cal__day.is-weekend:not(.has-ev) { background: rgba(249, 236, 230, 0.35); }
.afs-cal__day.is-past .afs-cal__num { opacity: 0.45; }
.afs-cal__num { font-size: 14px; font-weight: 800; color: var(--af-ink); }
.afs-cal__wdm { display: none; }
.afs-cal__day.is-today .afs-cal__num { display: inline-grid; place-items: center; width: 28px; height: 28px; margin: -3px 0 0 -3px; border-radius: 50%; background: var(--af-red); color: #fff; }
.afs-cal__ev {
	display: block;
	overflow: hidden;
	padding: 5px 7px;
	border-left: 3px solid var(--k, var(--af-red));
	border-radius: 2px;
	background: color-mix(in srgb, var(--k, #e00000) 9%, var(--af-paper));
	color: var(--af-ink) !important;
	font-size: 12px;
	font-weight: 650;
	line-height: 1.3;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	transition: background-color 0.15s, transform 0.15s;
}
.afs-cal__ev:hover { background: color-mix(in srgb, var(--k, #e00000) 20%, var(--af-paper)); transform: translateY(-1px); }
.afs-cal__evtime { display: block; font-size: 10.5px; font-weight: 800; color: var(--af-muted); }
.afs-cal__evtime:empty { display: none; }
.afs-cal__none { margin: 0; padding: 16px 18px; border-top: 1px solid rgba(18, 18, 18, 0.08); font-size: 15px; }
.afs-cal__none a { color: var(--af-red-t) !important; font-weight: 700; }

/* Naročnina na koledar */
.afs-subscribe { display: grid; gap: 12px; padding: 24px; border-radius: var(--af-radius); background: var(--af-inv); color: #fff; }
.afs-subscribe__icon { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 50%; background: var(--af-red); }
.afs-subscribe__icon .af-icon { width: 22px; height: 22px; }
.af-main .afs-subscribe__title { margin: 4px 0 0; font-size: 20px; font-weight: 800; line-height: 1.25; color: #fff; }
.afs-subscribe__text { margin: 0; font-size: 14.5px; line-height: 1.5; color: rgba(255, 255, 255, 0.78); }
.afs-subscribe__actions { display: grid; gap: 8px; margin: 6px 0 0; }
.afs-subscribe .af-btn--dark { background: rgba(255, 255, 255, 0.12); }
.afs-subscribe .af-btn--dark:hover { background: #fff; color: var(--af-dark) !important; }
.afs-subscribe__copy { display: grid; gap: 6px; margin: 4px 0 0; font-size: 12px; color: rgba(255, 255, 255, 0.6); }
.afs-subscribe__copy input { width: 100%; padding: 8px 10px !important; border: 1px solid rgba(255, 255, 255, 0.2) !important; border-radius: 2px; background: rgba(255, 255, 255, 0.06); color: #fff; font: 500 12px var(--af-font); }
.afs-col:has(> .afs-b--subscribe) { position: sticky; top: calc(var(--af-admin) + var(--af-navbar-h) + 20px); align-self: start; }

@media (max-width: 1080px) {
	.afs-ag { grid-template-columns: 70px 120px minmax(0, 1fr); }
	.afs-ag__actions { grid-column: 3; }
}
@media (max-width: 960px) {
	.afs-col:has(> .afs-b--subscribe) { position: static; }
}
@media (max-width: 767px) {
	.afs-ag { grid-template-columns: 62px minmax(0, 1fr); gap: 12px; padding: 12px; }
	.afs-ag__media { display: none; }
	.afs-ag__actions { grid-column: 1 / -1; }
	.afs-ag__reg { flex: 1; justify-content: center; }
	.afs-ag__d { font-size: 26px; }
	.af-main .afs-ag__title { font-size: 16px; }
	.afs-agenda__switch { gap: 8px; }
	/* Mesec na telefonu: samo dnevi z dogodki, kot seznam */
	.afs-cal__grid { grid-template-columns: minmax(0, 1fr); }
	.afs-cal__wd,
	.afs-cal__day.is-out,
	.afs-cal__day:not(.has-ev) { display: none; }
	.afs-cal__day { flex-direction: row; flex-wrap: wrap; align-items: flex-start; min-height: 0; border-right: 0; }
	.afs-cal__num { flex: 0 0 56px; display: grid; }
	.afs-cal__wdm { display: block; font-size: 11px; font-weight: 800; text-transform: uppercase; color: var(--af-muted); }
	.afs-cal__day.is-today .afs-cal__num { width: auto; height: auto; margin: 0; border-radius: 0; background: none; color: var(--af-red-t); }
	.afs-cal__ev { flex: 1 1 calc(100% - 64px); -webkit-line-clamp: 2; font-size: 13.5px; }
	.afs-cal__ev + .afs-cal__ev { margin-left: 60px; }
}

/* ==========================================================================
   En ali dva predavatelja – izpostavljena vodoravna kartica
   ========================================================================== */
.afs-people--spot { display: grid; gap: 24px; }
.afs-people--spot2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.afs-sp {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 0.42fr) minmax(0, 0.58fr);
	overflow: hidden;
	border-radius: var(--af-radius);
	background: var(--afs-card);
	color: var(--afs-ctext);
	box-shadow: 0 30px 60px -44px rgba(0, 0, 0, 0.5);
}
.afs-sp--single { grid-template-columns: minmax(260px, 440px) minmax(0, 1fr); max-width: 1100px; margin-inline: auto; width: 100%; }
.afs-sp__photo {
	position: relative;
	display: block;
	min-height: 100%;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: var(--af-bg-2) !important;
	cursor: pointer;
	overflow: hidden;
}
.af-main .afs-sp__img { width: 100%; height: 100%; aspect-ratio: 4 / 5; object-fit: cover; object-position: center 18%; transition: transform 0.6s cubic-bezier(0.2, 0.7, 0.2, 1); }
.afs-sp__photo::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 5px; background: var(--afs-card-accent); }
.afs-sp__photo:hover .afs-sp__img { transform: scale(1.03); }
.afs-sp__photo .afs-person__initials { display: grid; place-items: center; width: 100%; height: 100%; min-height: 320px; background: var(--af-inv); color: #fff; font-size: 64px; font-weight: 800; }
.afs-sp__body { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; padding: clamp(24px, 3.4vw, 48px); }
.afs-sp--single .afs-sp__body { justify-content: center; }
.afs-sp__company,
.afs-sp__label { margin: 0; font-size: 12px; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; color: var(--afs-card-accent); }
.af-main .afs-sp__name { margin: 0; font-size: clamp(24px, 2.2vw, 30px); font-weight: 800; line-height: 1.1; letter-spacing: -0.025em; color: var(--afs-ctext); }
.af-main .afs-sp--single .afs-sp__name { font-size: clamp(30px, 3.4vw, 46px); }
.afs-sp__role { margin: 0; font-size: 15px; line-height: 1.5; opacity: 0.78; }
.afs-sp--single .afs-sp__role { max-width: 60ch; font-size: 17px; }
.afs-sp__bio { margin: 4px 0 0; max-width: 62ch; font-size: 15.5px; line-height: 1.65; }
.afs-sp__talks { width: 100%; margin-top: 8px; padding-top: 16px; border-top: 1px solid color-mix(in srgb, var(--afs-ctext) 12%, transparent); }
.afs-sp__talks ul { display: grid; gap: 8px; margin: 10px 0 0; padding: 0; list-style: none; }
.afs-sp__talks li { display: grid; grid-template-columns: 104px minmax(0, 1fr); gap: 12px; font-size: 15px; line-height: 1.4; }
.afs-sp__talks time { font-weight: 800; color: var(--afs-card-accent); font-variant-numeric: tabular-nums; }
.afs-sp__talks span { font-weight: 650; }
.afs-sp__talks em { display: block; font-size: 12.5px; font-style: normal; font-weight: 500; opacity: 0.7; }
.afs-sp__more { margin: 8px 0 0; font-size: 13px; opacity: 0.7; }
.afs-sp__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 16px; margin: 10px 0 0; }
.afs-sp__cta .af-icon { width: 16px; height: 16px; transition: transform 0.2s; }
.afs-sp__cta:hover .af-icon { transform: translateX(3px); }
.afs-sp__social { font-size: 14px; font-weight: 700; color: var(--afs-ctext) !important; border-bottom: 1px solid color-mix(in srgb, var(--afs-ctext) 30%, transparent); }
.afs-sp__social:hover { color: var(--afs-card-accent) !important; border-color: currentColor; }
.afs-people--spot2 .afs-sp__talks li { grid-template-columns: 1fr; gap: 2px; }
@media (max-width: 960px) {
	.afs-people--spot2 { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 767px) {
	.afs-sp,
	.afs-sp--single { grid-template-columns: minmax(0, 1fr); }
	.af-main .afs-sp__img { aspect-ratio: 1; max-height: 420px; }
	.afs-sp__talks li { grid-template-columns: 1fr; gap: 2px; }
}
/* Dva predavatelja: portret vstavljen z robom (ne raztegnjen čez višino kartice). */
.afs-people--spot2 .afs-sp { grid-template-columns: minmax(150px, 0.4fr) minmax(0, 0.6fr); }
.afs-people--spot2 .afs-sp__photo { align-self: start; margin: 22px 0 22px 22px; min-height: 0; border-radius: var(--af-radius) !important; }
.afs-people--spot2 .afs-sp__photo::after { height: 4px; }
.afs-people--spot2 .afs-sp__body { padding: 24px 26px 26px; }
@media (max-width: 767px) {
	.afs-people--spot2 .afs-sp__photo { margin: 16px 16px 0; }
}

/* Družbena omrežja predavatelja – okrogle ikone, ob preletu v barvi omrežja */
.afs-socials { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.afs-social {
	display: inline-grid;
	place-items: center;
	width: 40px;
	height: 40px;
	border: 1px solid color-mix(in srgb, var(--afs-ctext, #121212) 18%, transparent);
	border-radius: 50%;
	background: transparent;
	color: var(--afs-ctext, #121212) !important;
	transition: background 0.18s, color 0.18s, border-color 0.18s, transform 0.18s;
}
.afs-social .af-icon { width: 17px; height: 17px; }
.afs-social:hover,
.afs-social:focus-visible { color: #fff !important; border-color: transparent; transform: translateY(-2px); }
.afs-social--linkedin:hover, .afs-social--linkedin:focus-visible { background: #0a66c2; }
.afs-social--x:hover, .afs-social--x:focus-visible { background: #000; }
.afs-social--facebook:hover, .afs-social--facebook:focus-visible { background: #1877f2; }
.afs-social--youtube:hover, .afs-social--youtube:focus-visible { background: #ff0000; }
.afs-social--instagram:hover, .afs-social--instagram:focus-visible { background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fd5949 45%, #d6249f 60%, #285aeb 90%); }
.afs-sp__actions { gap: 12px 18px; }
.afs-sp__socials { padding-left: 18px; border-left: 1px solid color-mix(in srgb, var(--afs-ctext) 14%, transparent); }
.afs-dialog__social { margin: 18px 0 0; }
.afs-dialog__social .afs-social { width: 38px; height: 38px; color: var(--af-ink) !important; border-color: rgba(18, 18, 18, 0.15); }
.afs-dialog__social .afs-social:hover { color: #fff !important; }
@media (max-width: 480px) {
	.afs-sp__socials { padding-left: 0; border-left: 0; }
}
.afs-people--spot2 .afs-sp__socials { flex-basis: 100%; padding-left: 0; border-left: 0; }

/* ==========================================================================
   Kartice – dodatni videzi in animacija
   ========================================================================== */
.afs-tile { position: relative; --afs-tile-r: var(--af-radius); }
.afs-tile.has-link .afs-tile__link::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.afs-tile.has-link { cursor: pointer; }

/* Mehka kartica – samo besedilo, na sredini */
.afs-tile--soft {
	justify-content: flex-start;
	gap: 12px;
	padding: clamp(28px, 3vw, 40px) clamp(22px, 2.4vw, 32px);
	border: 1px solid color-mix(in srgb, var(--afs-ctext) 6%, transparent);
	border-radius: var(--afs-tile-r);
	background: color-mix(in srgb, var(--afs-card) 62%, transparent);
	color: var(--afs-ctext);
	text-align: center;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
}
.af-main .afs-tile--soft .afs-tile__title { font-size: clamp(19px, 1.6vw, 22px); font-weight: 750; letter-spacing: -0.01em; color: var(--afs-ctext); text-wrap: balance; }
.afs-tile--soft .afs-tile__text { font-size: 16px; line-height: 1.55; opacity: 0.82; }
.afs-tile--soft .afs-tile__rule,
.afs-tile--framed .afs-tile__rule { margin-inline: auto; }

/* Bela kartica – slika v okvirju, besedilo na sredini */
.afs-tile--framed {
	gap: 18px;
	padding: 22px 22px 28px;
	border-radius: var(--afs-tile-r);
	background: var(--afs-card);
	color: var(--afs-ctext);
	text-align: center;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05), 0 12px 30px -24px rgba(0, 0, 0, 0.35);
}
.afs-tile--framed .afs-tile__media { border-radius: max(4px, calc(var(--afs-tile-r) - 8px)); }
.af-main .afs-tile--framed .afs-tile__media:not([class*="afs-tile__media--"]) .afs-tile__img { aspect-ratio: 4 / 3; height: 100%; object-fit: cover; }
.afs-tile--framed .afs-tile__body { display: grid; gap: 8px; padding-inline: 8px; }
.af-main .afs-tile--framed .afs-tile__title { font-size: clamp(19px, 1.6vw, 22px); font-weight: 750; color: var(--afs-ctext); }
.afs-tile--framed .afs-tile__text { font-size: 16px; line-height: 1.55; opacity: 0.85; }
.afs-tile--soft .afs-tile__text p:last-child,
.afs-tile--framed .afs-tile__text p:last-child { margin-bottom: 0; }

/* Slika levo / desno – za izmenične vrstice in »kocko« */
.afs-tile--side {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 0;
	overflow: hidden;
	border-radius: var(--afs-tile-r);
	background: var(--afs-card);
	color: var(--afs-ctext);
}
.afs-tile--side.no-img { grid-template-columns: minmax(0, 1fr); }
.afs-tile--side .afs-tile__media { min-height: 300px; border-radius: 0; }
.af-main .afs-tile--side .afs-tile__img { width: 100%; height: 100%; aspect-ratio: auto; object-fit: cover; object-position: var(--afs-b-pos, center); }
.afs-tile--side .afs-tile__body { display: flex; flex-direction: column; justify-content: center; gap: 12px; padding: clamp(26px, 4vw, 56px); }
.af-main .afs-tile--side .afs-tile__title { font-size: clamp(22px, 2.2vw, 30px); font-weight: 800; line-height: 1.15; letter-spacing: -0.02em; color: var(--afs-ctext); }
.afs-tile--side .afs-tile__text { font-size: 16.5px; line-height: 1.6; }
.afs-tile--right .afs-tile__media { order: 2; }
.afs-b--span6 .afs-tile--side .afs-tile__media,
.afs-col .afs-tile--side .afs-tile__media { min-height: 240px; }

/* Animacija: dvig, senca in rdeča črta, ki zraste pod vsebino */
.afs-tile--h-bar { transition: transform 0.3s cubic-bezier(0.2, 0.7, 0.2, 1), box-shadow 0.3s ease; }
.afs-tile--h-bar::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 3px;
	border-radius: 0 0 var(--afs-tile-r) var(--afs-tile-r);
	background: var(--afs-card-accent, var(--af-red));
	transform: scaleX(0);
	transition: transform 0.35s cubic-bezier(0.2, 0.7, 0.2, 1);
	pointer-events: none;
}
.afs-tile--h-bar:not(.afs-tile--soft):not(.afs-tile--framed):not(.afs-tile--side) { padding-bottom: 14px; }
@media (hover: hover) {
	.afs-tile--h-bar:hover { transform: translateY(-5px); box-shadow: 0 26px 50px -30px rgba(0, 0, 0, 0.45); }
	.afs-tile--h-bar:hover::after { transform: scaleX(1); }
	.afs-tile--h-bar:hover .afs-tile__img { transform: scale(1.04); }
	.afs-tile--soft.afs-tile--h-lift:hover,
	.afs-tile--framed.afs-tile--h-lift:hover { box-shadow: 0 20px 40px -28px rgba(0, 0, 0, 0.4); }
}
.afs-tile.has-link:focus-within { box-shadow: 0 0 0 2px var(--afs-card-accent, var(--af-red)); }

/* Galerija v drsniku */
.afs-gallery--carousel { display: block; }
.afs-gallery-carousel .afs-gallery__item { display: block; width: 100%; overflow: hidden; border-radius: var(--af-radius); aspect-ratio: 3 / 2; }
.afs-gallery--r1-1 .afs-gallery-carousel .afs-gallery__item { aspect-ratio: 1; }
.afs-gallery--r4-3 .afs-gallery-carousel .afs-gallery__item { aspect-ratio: 4 / 3; }
.afs-gallery--r16-9 .afs-gallery-carousel .afs-gallery__item { aspect-ratio: 16 / 9; }
.afs-gallery--r3-4 .afs-gallery-carousel .afs-gallery__item { aspect-ratio: 3 / 4; }
.afs-gallery--r4-5 .afs-gallery-carousel .afs-gallery__item { aspect-ratio: 4 / 5; }
.af-main .afs-gallery-carousel .afs-gallery__item img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease; }
.afs-gallery-carousel .afs-gallery__item:hover img { transform: scale(1.04); }

@media (max-width: 767px) {
	.afs-tile--side { grid-template-columns: minmax(0, 1fr); }
	.afs-tile--right .afs-tile__media { order: 0; }
	.afs-tile--side .afs-tile__media { min-height: 0; aspect-ratio: 16 / 10; }
}
/* Slika ob besedilu: višino vrstice določa besedilo (najmanj 340 px), slika zapolni svojo polovico. */
.afs-tile--side .afs-tile__media { position: relative; min-height: 340px; }
.af-main .afs-tile--side .afs-tile__img { position: absolute; inset: 0; }
@media (max-width: 767px) {
	.afs-tile--side .afs-tile__media { min-height: 0; }
}

/* ==========================================================================
   Prijava na e-novice
   Barvni del s prednostmi + obrazec Formidable (osnovni slog obrazca je iz
   af-kotizacija.css, tu so le posebnosti: koraki, izbire kot ploščice).
   ========================================================================== */
.afs-nl {
	display: grid;
	grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
	max-width: 1120px;
	margin-inline: auto;
	overflow: hidden;
	border-radius: 16px;
	background: var(--af-paper);
	box-shadow: 0 40px 80px -48px rgba(60, 20, 10, 0.45), 0 2px 8px -4px rgba(18, 18, 18, 0.08);
}

/* Barvni del */
.afs-nl__aside {
	position: relative;
	isolation: isolate;
	display: flex;
	flex-direction: column;
	gap: 18px;
	padding: 44px 40px;
	overflow: hidden;
	background:
		radial-gradient(90% 60% at 100% 0%, rgba(255, 255, 255, 0.18), transparent 60%),
		linear-gradient(155deg, var(--af-red) 0%, #b30000 62%, #7a0000 100%);
	color: #fff;
}
.afs-nl__aside::before,
.afs-nl__aside::after {
	content: "";
	position: absolute;
	z-index: -1;
	border-radius: 50%;
	border: 36px solid rgba(255, 255, 255, 0.07);
}
.afs-nl__aside::before { width: 300px; height: 300px; right: -120px; bottom: -110px; }
.afs-nl__aside::after { width: 150px; height: 150px; right: 70px; bottom: 120px; border-width: 18px; }
.afs-nl__badge {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	align-self: flex-start;
	padding: 7px 12px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.15);
	font-size: 11.5px;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}
.afs-nl__badge .af-icon { width: 16px; height: 16px; }
.afs-nl .afs-nl__title {
	margin: 0;
	font-size: clamp(26px, 2.6vw, 34px);
	font-weight: 800;
	line-height: 1.08;
	letter-spacing: -0.025em;
	color: #fff;
	text-wrap: balance;
}
.afs-nl__lead { margin: 0; font-size: 15.5px; line-height: 1.55; color: rgba(255, 255, 255, 0.88); }
.afs-nl__perks { display: grid; gap: 16px; margin: 8px 0 0; padding: 0; list-style: none; }
.afs-nl__perks li { display: flex; gap: 14px; align-items: flex-start; }
.afs-nl__perks strong { display: block; font-size: 15px; font-weight: 750; }
.afs-nl__perks li > span:last-child > span { display: block; margin-top: 2px; font-size: 13.5px; line-height: 1.45; color: rgba(255, 255, 255, 0.8); }
.afs-nl__tick {
	display: grid;
	place-items: center;
	flex: none;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: #fff;
	color: var(--af-red);
}
.afs-nl__tick .af-icon { width: 15px; height: 15px; stroke-width: 3; }
.afs-nl__trust {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: auto 0 0;
	padding-top: 22px;
	border-top: 1px solid rgba(255, 255, 255, 0.2);
	font-size: 12.5px;
	color: rgba(255, 255, 255, 0.82);
}
.afs-nl__trust .af-icon { flex: none; width: 16px; height: 16px; }

/* Obrazec */
.afs-nl__form { padding: 44px 44px 40px; }
.afs-nl .afk-form .frm_forms.with_frm_style { --field-height: 50px; --field-font-size: 16px; --border-radius: 10px; }
.afs-nl .afk-form .frm_forms.with_frm_style .frm_fields_container { counter-reset: afsnl; }
.afs-nl .afk-form .frm_forms.with_frm_style .frm_form_field:has(> .frm_primary_label) { counter-increment: afsnl; margin-bottom: 28px; }
.afs-nl .afk-form .frm_forms.with_frm_style .frm_form_field > .frm_primary_label {
	display: flex !important;
	align-items: center;
	gap: 10px;
	margin-bottom: 12px !important;
	font-size: 15px !important;
	font-weight: 750 !important;
	line-height: 1.35 !important;
	color: var(--af-ink) !important;
}
.afs-nl .afk-form .frm_forms.with_frm_style .frm_form_field > .frm_primary_label::before {
	content: counter(afsnl);
	display: grid;
	place-items: center;
	flex: none;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: var(--af-inv);
	color: #fff;
	font-size: 12.5px;
	font-weight: 800;
}
.afs-nl .afk-form .frm_forms.with_frm_style input[type=email] { border-radius: 10px !important; }

/* Skupine izbir */
.afs-nl .afk-form .frm_forms.with_frm_style .frm_opt_container[data-afs-grouped] { display: grid !important; grid-template-columns: minmax(0, 1fr) !important; gap: 22px !important; }
.afs-nl__ghead { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 10px; }
.afs-nl__gname { font-size: 11.5px; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; color: var(--af-muted); }
.afs-nl .afs-nl__all {
	padding: 0;
	border: 0;
	background: none;
	color: var(--af-red-t);
	font: 700 13px/1 var(--af-font);
	text-decoration: underline;
	text-underline-offset: 3px;
	cursor: pointer;
}
.afs-nl .afs-nl__all:hover,
.afs-nl .afs-nl__all:focus { background: none; color: var(--af-red-d); }
.afs-nl__opts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.afs-nl__opts .frm_checkbox { grid-column: auto !important; }

/* Izbira kot ploščica (Formidable »gumbi« ali navadna potrditvena polja) */
.afs-nl .afk-form .frm_forms.with_frm_style .frm_checkbox { margin: 0 !important; width: auto !important; }
.afs-nl .afk-form .frm_forms.with_frm_style .frm_checkbox label {
	display: flex !important;
	align-items: center;
	min-height: 48px !important;
	height: 100% !important;
	padding: 10px 12px 10px 44px !important;
	border: 1.5px solid #eadfd8 !important;
	border-radius: 10px !important;
	background: #fff !important;
	color: var(--af-text) !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	line-height: 1.3 !important;
	box-shadow: none !important;
	transition: border-color 0.15s, background-color 0.15s, transform 0.15s;
}
.afs-nl .afk-form .frm_forms.with_frm_style .frm_checkbox label:hover { border-color: #cdbcb2 !important; transform: translateY(-1px); }
.afs-nl .afk-form .frm_forms.with_frm_style .frm_checkbox label:has(input:checked) {
	border-color: var(--af-red) !important;
	background: #fff5f3 !important;
	color: var(--af-ink) !important;
}
.afs-nl .afk-form .frm_forms.with_frm_style .frm_checkbox label:has(input:focus-visible) { box-shadow: 0 0 0 3px rgba(224, 0, 0, 0.2) !important; }
.afs-nl .afk-form .frm_forms.with_frm_style .frm_checkbox label > input[type=checkbox],
.afs-nl .afk-form .frm_forms.with_frm_style .frm_checkbox label > span:empty {
	left: 14px !important;
	top: 50% !important;
	margin-top: -10px !important;
	width: 20px !important;
	min-width: 20px !important;
	height: 20px !important;
	border-radius: 6px !important;
}
.afs-nl .afk-form .frm_forms.with_frm_style .frm_checkbox label > input[type=checkbox]:has(~ span:empty) { opacity: 0 !important; }
.afs-nl .afk-form .frm_forms.with_frm_style .frm_label_button_container {
	display: block;
	align-self: center;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: none !important;
	color: inherit !important;
	font: inherit !important;
	text-align: left !important;
	box-shadow: none !important;
}

/* Skrito polje reCAPTCHA ne sme delati praznine. */
.afs-nl .afk-form .frm_forms.with_frm_style .frm_none_container { margin: 0 !important; }

/* Pravno besedilo in oddaja */
.afs-nl .afk-form .frm_forms.with_frm_style .frm_html_container {
	padding: 14px 16px;
	border-radius: 10px;
	background: var(--af-bg);
	font-size: 12.5px;
	line-height: 1.55;
}
.afs-nl .afk-form .frm_forms.with_frm_style .frm_submit { display: grid !important; gap: 10px; margin-top: 8px; text-align: left !important; }
.afs-nl__count { margin: 0; font-size: 13px; font-weight: 600; color: var(--af-muted); }
.afs-nl__count.is-set { color: var(--af-ink); }
.afs-nl .afk-form .frm_forms.with_frm_style .frm_submit button {
	width: 100% !important;
	margin: 0 !important;
	min-height: 54px;
	border-radius: 10px !important;
	font-size: 16px !important;
	font-weight: 800 !important;
}

@media (max-width: 900px) {
	.afs-nl { grid-template-columns: minmax(0, 1fr); border-radius: 12px; }
	.afs-nl__aside { padding: 32px 24px; }
	.afs-nl__perks { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 18px; }
	.afs-nl__trust { margin-top: 4px; }
	.afs-nl__form { padding: 28px 24px 28px; }
}
@media (max-width: 560px) {
	.afs-nl__perks { grid-template-columns: minmax(0, 1fr); }
	.afs-nl__opts { grid-template-columns: minmax(0, 1fr); }
	.afs-nl__form { padding: 24px 16px; }
	.afs-nl__aside { padding: 28px 20px; }
}

/* ==========================================================================
   Dokument s kazalom (splošni pogoji, zasebnost …)
   ========================================================================== */
.afs-doc {
	display: grid;
	grid-template-columns: 290px minmax(0, 1fr);
	gap: clamp(32px, 5vw, 72px);
	align-items: start;
}
.afs-doc--plain { grid-template-columns: minmax(0, 1fr); }
.afs-doc__nav {
	position: sticky;
	top: calc(var(--af-admin) + var(--af-navbar-h) + 24px);
	max-height: calc(100vh - var(--af-admin) - var(--af-navbar-h) - 48px);
	overflow-y: auto;
	padding: 22px 18px 18px;
	border-radius: var(--af-radius);
	background: var(--afs-card);
	color: var(--afs-ctext);
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
}
.afs-doc__tt {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 10px;
	padding: 0 6px 12px;
	list-style: none;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--afs-accent);
	cursor: default;
}
.afs-doc__tt::-webkit-details-marker { display: none; }
.afs-doc__count { font-size: 11px; font-weight: 600; letter-spacing: 0.04em; text-transform: none; color: color-mix(in srgb, var(--afs-ctext) 60%, transparent); }
.afs-doc__list { display: grid; gap: 2px; margin: 0; padding: 0; list-style: none; counter-reset: none; }
.afs-doc__list a {
	display: flex;
	gap: 12px;
	padding: 9px 10px;
	border-radius: 8px;
	font-size: 14.5px;
	font-weight: 600;
	line-height: 1.35;
	color: var(--afs-ctext);
	text-decoration: none;
	transition: background-color 0.15s, color 0.15s;
}
.afs-doc__list a:hover { background: color-mix(in srgb, var(--afs-accent) 6%, transparent); }
.afs-doc__list a.is-current { background: color-mix(in srgb, var(--afs-accent) 10%, transparent); color: var(--afs-accent); }
.afs-doc__tnum { flex: none; min-width: 20px; font-size: 12px; font-weight: 800; font-variant-numeric: tabular-nums; line-height: 1.6; color: var(--afs-accent); opacity: 0.75; }
.afs-doc__list a.is-current .afs-doc__tnum { opacity: 1; }

.afs-doc__main { min-width: 0; max-width: 780px; }
.afs-doc__bar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 28px;
	padding-bottom: 18px;
	border-bottom: 1px solid color-mix(in srgb, var(--afs-head) 12%, transparent);
}
.afs-doc__valid { display: flex; align-items: center; gap: 8px; margin: 0; font-size: 14px; font-weight: 600; color: var(--afs-text); }
.afs-doc__valid .af-icon { width: 17px; height: 17px; color: var(--afs-accent); }
.afs-doc__print {
	margin-left: auto;
	padding: 8px 16px;
	border: 1px solid color-mix(in srgb, var(--afs-head) 22%, transparent);
	border-radius: 999px;
	background: transparent;
	font: inherit;
	font-size: 14px;
	font-weight: 600;
	color: var(--afs-head);
	cursor: pointer;
}
.afs-doc__print:hover,
.afs-doc__print:focus-visible { border-color: var(--afs-accent); color: var(--afs-accent); background: transparent; }
.afs-doc__intro { margin-bottom: 12px; font-size: 19px; line-height: 1.6; color: var(--afs-head); }

.afs-doc__ch {
	padding-top: 34px;
	margin-top: 34px;
	border-top: 1px solid color-mix(in srgb, var(--afs-head) 10%, transparent);
	scroll-margin-top: calc(var(--af-admin) + var(--af-navbar-h) + 24px);
}
.afs-doc__ch:first-of-type { margin-top: 0; padding-top: 0; border-top: 0; }
.af-main .afs-doc__h {
	display: flex;
	align-items: baseline;
	gap: 16px;
	margin: 0 0 18px;
	font-size: clamp(22px, 2.4vw, 28px);
	font-weight: 800;
	line-height: 1.2;
	letter-spacing: -0.01em;
	color: var(--afs-head);
}
.afs-doc__num {
	flex: none;
	font-size: 0.82em;
	font-weight: 800;
	font-variant-numeric: tabular-nums;
	color: transparent;
	-webkit-text-stroke: 1.3px var(--afs-accent);
}
.afs-doc__text { font-size: 16.5px; }
.af-main .afs-doc__text h3 { margin: 1.6em 0 0.45em; font-size: 18px; font-weight: 800; }
.afs-doc__text ul { padding-left: 0; list-style: none; }
.afs-doc__text ul li { position: relative; padding-left: 22px; }
.afs-doc__text ul li::before { content: ""; position: absolute; left: 4px; top: 0.68em; width: 7px; height: 7px; border-radius: 50%; background: var(--afs-accent); }
.afs-doc__text .afs-doc__note,
.afs-doc__intro .afs-doc__note {
	margin: 1.1em 0;
	padding: 16px 18px;
	border-left: 3px solid var(--afs-accent);
	border-radius: 0 10px 10px 0;
	background: color-mix(in srgb, var(--afs-accent) 6%, var(--afs-card));
	color: var(--afs-head);
	font-weight: 600;
}
.afs-doc__sign { margin-top: 1.6em; color: var(--afs-head); font-weight: 600; }

@media (max-width: 900px) {
	.afs-doc { grid-template-columns: minmax(0, 1fr); gap: 24px; }
	.afs-doc__nav { position: static; max-height: none; padding: 0; overflow: visible; }
	.afs-doc__tt { padding: 16px 18px; cursor: pointer; }
	.afs-doc__tt::after { content: "+"; margin-left: 8px; font-size: 18px; line-height: 1; color: var(--afs-accent); }
	.afs-doc__toc[open] .afs-doc__tt::after { content: "–"; }
	.afs-doc__count { margin-left: auto; }
	.afs-doc__list { padding: 0 8px 12px; }
}

@media print {
	.af-header, .af-navbar, .af-stripbar, .af-drawer, .af-footer, .afs-hero, .afs-nav, .af-ad, .afs-doc__nav, .afs-doc__print, .afs-sec:not(:has(.afs-doc)) { display: none !important; }
	.afs-sec:has(.afs-doc) { padding: 0; background: none !important; }
	.afs-doc { display: block; }
	.afs-doc__main { max-width: none; }
	.afs-doc__ch { break-inside: auto; }
	.af-main .afs-doc__h { break-after: avoid; }
}

/* Stolpci po napravah – še galerija, videi, logotipi in seznam vsebin. */
@media (min-width: 768px) and (max-width: 1080px) {
	.afs-b--ct :is(.afs-gallery, .afs-videos, .af-list) { grid-template-columns: repeat(var(--afs-cols-t), minmax(0, 1fr)) !important; }
	.afs-b--ct .afs-logos__grid { --afs-cols: var(--afs-cols-t) !important; }
}
@media (max-width: 767px) {
	.afs-b--cm :is(.afs-gallery, .afs-videos, .af-list) { grid-template-columns: repeat(var(--afs-cols-m), minmax(0, 1fr)) !important; }
	.afs-b--cm .afs-logos__grid { --afs-cols: var(--afs-cols-m) !important; }
}

/* Kartica: zaobljenost velja tudi za klasično kartico; »Napolni« raztegne sliko do višine vrstice. */
.afs-tile:not(.afs-tile--soft):not(.afs-tile--framed):not(.afs-tile--side) .afs-tile__media { border-radius: var(--afs-tile-r); }
.afs-tile__media--fill { flex: 1 1 auto; min-height: 220px; position: relative; }
.af-main .afs-tile__media--fill .afs-tile__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }

/* Govorci v urniku: dolg naziv ne raztegne »tablete« čez celo vrstico. */
.afs-prog__people .afs-chip--person { white-space: normal; max-width: min(100%, 460px); padding: 5px 16px 5px 5px; }
.afs-chip--person .afs-chip__txt { min-width: 0; }
.afs-chip--person em { display: -webkit-box; -webkit-line-clamp: 2; line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.afs-prog__people .afs-chip--long { align-items: flex-start; border-radius: 14px; padding-block: 8px; }
.afs-chip--long .afs-chip__img { margin-top: 1px; }
.afs-chip--long em { margin-top: 2px; line-height: 1.35; }

/* Vzorčna vsebina iz predloge – vidno le prijavljenim urednikom. */
.afs-b--mock, .afnb--mock { position: relative; outline: 2px dashed #e89500; outline-offset: 6px; border-radius: 2px; }
.afs-b--mock::before, .afnb--mock::before { content: "✎ VZOREC – zamenjajte"; position: absolute; z-index: 5; top: -11px; right: -4px; padding: 1px 8px; border-radius: 99px; background: #e89500; color: #fff; font: 700 11px/1.4 system-ui, -apple-system, sans-serif; letter-spacing: .03em; pointer-events: none; }

/* ==========================================================================
   Temen videz – izjeme (žetoni so v af.css, barve sekcij v AFS_Themes::dark())
   ========================================================================== */
html[data-theme="dark"] .afs-note { background: rgba(255, 74, 74, 0.1); color: #ffc2bd; }
html[data-theme="dark"] .afs-dialog__close { background: rgba(0, 0, 0, 0.55); color: #fff; }
html[data-theme="dark"] .afs-offcanvas .afs-dialog__close { background: var(--af-bg-2); }
html[data-theme="dark"] .afs-dialog__social .afs-social { border-color: var(--af-hair); }
html[data-theme="dark"] .afs-pres__form input { border-color: var(--af-hair); background: var(--af-bg); color: var(--af-ink); }
html[data-theme="dark"] .afs-newsroom__search:focus-within { box-shadow: 0 0 0 3px rgba(255, 74, 74, 0.2); }
/* Svetla glava (dogodek »besedilo levo«, naslov podstrani) */
html[data-theme="dark"] .afs-hero--split .afs-hero__past { border-color: rgba(255, 255, 255, 0.35); }
html[data-theme="dark"] .afs-hero--split .af-btn--ghost,
html[data-theme="dark"] .afs-hero--page.afs-hero--title .af-btn--ghost { border-color: rgba(255, 255, 255, 0.3); }
html[data-theme="dark"] .afs-hero--split .af-countdown > div { border-color: var(--af-hair); }
html[data-theme="dark"] .afs-hero--page.afs-hero--title { background: radial-gradient(1200px 420px at 88% -10%, rgba(224, 0, 0, 0.16), transparent 60%), linear-gradient(180deg, var(--af-bg-2) 0%, var(--af-bg) 100%); }
/* Logotipi ostanejo na beli ploščici (risani so za belo podlago). */
html[data-theme="dark"] .afs-quotes__item .afs-quotes__logo,
html[data-theme="dark"] .afs-tq__logo { padding: 8px 12px; border-radius: 4px; background: #fff; }
html[data-theme="dark"] .afs-quotes__item .afs-quotes__logo { padding: 4px 6px; border-radius: 2px; }
/* Mnenja (okno) */
html[data-theme="dark"] .afs-tqdialog__bar { border-bottom-color: var(--af-hair); }
html[data-theme="dark"] .afs-tqdialog__nav,
html[data-theme="dark"] .afs-tqdialog__close { border-color: var(--af-hair) !important; }
html[data-theme="dark"] .afs-tqdialog__nav:hover,
html[data-theme="dark"] .afs-tqdialog__close:hover { border-color: var(--af-red) !important; }
/* Zemljevid (nadomestna risba) */
html[data-theme="dark"] .afs-map { background: #262626; }
html[data-theme="dark"] .afs-map__placeholder {
	background:
		linear-gradient(115deg, transparent 47%, #3a3a3a 47%, #3a3a3a 50%, transparent 50%) 0 0 / 100% 100%,
		linear-gradient(25deg, transparent 58%, #333 58%, #333 61%, transparent 61%) 0 0 / 100% 100%,
		linear-gradient(0deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px) 0 0 / 38px 38px,
		linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px) 0 0 / 38px 38px,
		radial-gradient(circle at 72% 30%, #2c3a2a 0 70px, transparent 72px),
		radial-gradient(circle at 20% 80%, #26333b 0 90px, transparent 92px),
		#242424;
}
/* Koledar (mesečni pogled) */
html[data-theme="dark"] .afs-cal__head,
html[data-theme="dark"] .afs-cal__wd { border-bottom-color: var(--af-hair); }
html[data-theme="dark"] .afs-cal__nav { border-color: var(--af-hair); }
html[data-theme="dark"] .afs-cal__nav:hover { border-color: var(--af-red); }
html[data-theme="dark"] .afs-cal__day { border-right-color: rgba(255, 255, 255, 0.08); border-bottom-color: rgba(255, 255, 255, 0.08); }
html[data-theme="dark"] .afs-cal__day.is-out { background: repeating-linear-gradient(135deg, transparent 0 6px, rgba(255, 255, 255, 0.04) 6px 7px); }
html[data-theme="dark"] .afs-cal__day.is-weekend:not(.has-ev) { background: rgba(255, 255, 255, 0.025); }
html[data-theme="dark"] .afs-cal__ev { background: color-mix(in srgb, var(--k, #e00000) 26%, var(--af-paper)); }
html[data-theme="dark"] .afs-cal__ev:hover { background: color-mix(in srgb, var(--k, #e00000) 42%, var(--af-paper)); }
html[data-theme="dark"] .afs-cal__none { border-top-color: var(--af-hair); }
/* Prijava na novice: izbire kot ploščice */
html[data-theme="dark"] .afs-nl .afk-form .frm_forms.with_frm_style .frm_checkbox label { border-color: #3a3a3a !important; background: var(--af-bg) !important; }
html[data-theme="dark"] .afs-nl .afk-form .frm_forms.with_frm_style .frm_checkbox label:hover { border-color: #5a5a5a !important; }
html[data-theme="dark"] .afs-nl .afk-form .frm_forms.with_frm_style .frm_checkbox label:has(input:checked) { border-color: var(--af-red) !important; background: rgba(224, 0, 0, 0.16) !important; }

