/* ==========================================================================
   PBG Theme — component styles.
   Tokens come from theme.json (var(--wp--preset--*)). Keep selectors flat.
   ========================================================================== */

:root {
	--pbg-radius-s: 6px;
	--pbg-radius-m: 12px;
	--pbg-radius-l: 20px;
	--pbg-ease: cubic-bezier(.2, .7, .2, 1);
	--pbg-wide: 1240px;
	--pbg-gutter: clamp(1rem, 4vw, 2.5rem);
	--pbg-ink: var(--wp--preset--color--ink);
	--pbg-gold: var(--wp--preset--color--gold);
	--pbg-gold-deep: var(--wp--preset--color--gold-deep);
	--pbg-line: var(--wp--preset--color--line);
	--pbg-muted: var(--wp--preset--color--muted);
	--pbg-ivory: var(--wp--preset--color--ivory);
	--pbg-sand: var(--wp--preset--color--sand);
	--pbg-night: var(--wp--preset--color--night);
}

html { scroll-behavior: smooth; scroll-padding-top: 100px; }
body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; overflow-x: clip; }
img { height: auto; }
::selection { background: #f0dfae; color: var(--pbg-ink); }

:where(a, button, input, select, textarea, summary):focus-visible {
	outline: 2px solid var(--pbg-gold);
	outline-offset: 3px;
	border-radius: 2px;
}

/* Root block-gap would otherwise leave white gaps between header/main/footer. */
.wp-site-blocks > * { margin-block-start: 0 !important; }
.pbg-main { min-height: 50vh; }

/* ---------------------------------------------------------------- Notice bar */
.pbg-notice-bar {
	background: var(--pbg-sand);
	color: var(--pbg-ink);
	text-align: center;
	font-size: .9375rem;
	padding: .6rem var(--pbg-gutter);
	border-bottom: 1px solid var(--pbg-line);
}
.pbg-notice-bar p { margin: 0; }
.pbg-notice-bar.is-vazno { background: var(--pbg-gold-deep); color: #fff; border-color: transparent; }
.pbg-notice-bar.is-vazno a { color: #fff; }

/* ---------------------------------------------------------------- Top bar */
.pbg-topbar { background: var(--pbg-night); color: #d9d4ca; font-size: .875rem; }
.pbg-topbar__inner {
	max-width: var(--pbg-wide);
	margin: 0 auto;
	padding: .45rem var(--pbg-gutter);
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	flex-wrap: wrap;
}
.pbg-topbar__inner { align-items: center; flex-wrap: nowrap; }
.pbg-topbar__group { display: flex; gap: 1.25rem; align-items: center; min-width: 0; }
.pbg-topbar a { color: inherit; text-decoration: none; transition: color .2s; }
.pbg-topbar__phone, .pbg-topbar__email { display: inline-flex; align-items: center; gap: .45rem; min-height: 32px; white-space: nowrap; }
.pbg-topbar__phone::before, .pbg-topbar__email::before, .pbg-topbar__icon::before {
	content: ""; flex: none; width: 15px; height: 15px; background-color: #f2d48a;
	-webkit-mask: var(--pbg-i-phone) center / contain no-repeat; mask: var(--pbg-i-phone) center / contain no-repeat;
}
.pbg-topbar__email::before { -webkit-mask-image: var(--pbg-i-mail); mask-image: var(--pbg-i-mail); }
.pbg-topbar__group:last-child { gap: .25rem; }
.pbg-topbar__icon { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 50%; }
.pbg-topbar__icon::before { width: 17px; height: 17px; background-color: currentColor; }
.pbg-topbar__icon--facebook::before { -webkit-mask-image: var(--pbg-i-facebook); mask-image: var(--pbg-i-facebook); }
.pbg-topbar__icon--instagram::before { -webkit-mask-image: var(--pbg-i-instagram); mask-image: var(--pbg-i-instagram); }
.pbg-topbar__icon--youtube::before { -webkit-mask-image: var(--pbg-i-youtube); mask-image: var(--pbg-i-youtube); }
@media (hover: hover) {
	.pbg-topbar a:hover { color: #fff; }
	.pbg-topbar__icon:hover { background: rgba(255, 255, 255, .1); }
}
.pbg-topbar a:focus-visible { outline: 2px solid #f2d48a; outline-offset: 2px; border-radius: 4px; }
/* Phones: number stays readable, the address shrinks to its icon. */
@media (max-width: 520px) {
	.pbg-topbar__inner { padding-block: .3rem; }
	.pbg-topbar__group:first-child { gap: .9rem; }
	.pbg-topbar__email span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
	.pbg-topbar__email { justify-content: center; width: 32px; }
}

/* ---------------------------------------------------------------- Header */
.pbg-site-header { position: sticky; top: 0; z-index: 50; }
.admin-bar .pbg-site-header { top: var(--wp-admin--admin-bar--height, 32px); }
/* The blur lives on a pseudo-element: backdrop-filter on .pbg-header itself
   would become the containing block of the fixed mobile menu overlay and clip
   it to the header height. */
.pbg-header {
	position: relative;
	isolation: isolate;
	border-bottom: 1px solid transparent;
	transition: border-color .25s var(--pbg-ease), box-shadow .25s var(--pbg-ease);
}
.pbg-header::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background: rgba(255, 255, 255, .94);
	backdrop-filter: saturate(1.4) blur(10px);
	-webkit-backdrop-filter: saturate(1.4) blur(10px);
}
/* Open overlay covers the whole viewport, above the sticky header and admin bar. */
.pbg-header .wp-block-navigation__responsive-container.is-menu-open {
	position: fixed;
	inset: 0 !important;
	margin: 0 !important;
	z-index: 100000;
	height: 100dvh;
	overflow-y: auto;
	background: #fff;
}
/* Overlay layout (all widths): calm accordion – top-level items separated by thin
   rules, sub-items open with the chevron (button added by theme.js). */
.pbg-header .is-menu-open .wp-block-navigation__responsive-container-content,
.pbg-header .is-menu-open .wp-block-navigation__container {
	align-items: stretch !important;
	justify-content: flex-start !important;
	flex-direction: column !important;
	gap: 0 !important;
	width: 100%;
}
.pbg-header .is-menu-open .wp-block-navigation__container { border-top: 1px solid var(--pbg-line); }
.pbg-header .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item {
	display: grid !important; grid-template-columns: 1fr auto; align-items: center;
	width: 100%; border-bottom: 1px solid var(--pbg-line);
}
.pbg-header .is-menu-open .wp-block-navigation-item__content,
.pbg-header .is-menu-open .wp-block-navigation-item__content:hover {
	background: transparent !important; border-radius: 0 !important;
}
.pbg-header .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content {
	font-family: var(--wp--preset--font-family--serif);
	font-size: 1.3rem;
	font-weight: 600;
	padding: .95rem 0 !important;
	color: var(--pbg-ink);
}
.pbg-header .is-menu-open .current-menu-item > .wp-block-navigation-item__content,
.pbg-header .is-menu-open .current-menu-ancestor > .wp-block-navigation-item__content { color: var(--pbg-gold-deep) !important; }
/* Hover colour only with a real pointer – touch screens keep a "sticky" hover after a tap. */
@media (hover: hover) {
	.pbg-header .is-menu-open .wp-block-navigation-item__content:hover { color: var(--pbg-gold-deep) !important; }
}
/* Focus inside the overlay: gold underline instead of a box (core focuses the
   first link when the menu opens, a box there looked like a selection). */
.pbg-header .is-menu-open .wp-block-navigation-item__content:focus,
.pbg-header .is-menu-open .wp-block-navigation-item__content:focus-visible { outline: none; }
.pbg-header .is-menu-open .wp-block-navigation-item__content:focus-visible .wp-block-navigation-item__label {
	text-decoration: underline; text-decoration-color: var(--pbg-gold); text-decoration-thickness: 2px; text-underline-offset: 6px;
}
.pbg-header .is-menu-open .pbg-acc:focus-visible { outline: 2px solid var(--pbg-gold); outline-offset: 0; }
.pbg-header .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item:not(.current-menu-item):not(.current-menu-ancestor) > .wp-block-navigation-item__content:focus:not(:focus-visible) { color: var(--pbg-ink) !important; }
.pbg-header .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item:not(.current-menu-item) > .wp-block-navigation-item__content:focus:not(:focus-visible) { color: var(--pbg-muted) !important; }
.pbg-header .is-menu-open .wp-block-navigation__submenu-container {
	grid-column: 1 / -1;
	position: static !important;
	display: none !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	background: transparent !important;
	min-width: 0 !important;
	width: auto !important;
	padding: 0 0 .9rem .9rem !important;
	margin: 0 !important;
	opacity: 1 !important;
	visibility: visible !important;
	height: auto !important;
}
.pbg-header .is-menu-open .is-pbg-open > .wp-block-navigation__submenu-container { display: flex !important; flex-direction: column; align-items: flex-start !important; animation: pbg-acc-in .25s var(--pbg-ease); }
.pbg-header .is-menu-open .wp-block-navigation__submenu-container > .wp-block-navigation-item { width: 100%; align-items: flex-start !important; justify-content: flex-start !important; text-align: left; }
.pbg-header .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	padding: .45rem 0 !important; font-size: 1.02rem; color: var(--pbg-muted);
}
.pbg-header .is-menu-open .wp-block-navigation-submenu__toggle,
.pbg-header .is-menu-open .wp-block-navigation__submenu-icon { display: none !important; }
/* Accordion chevron */
.pbg-acc { display: none; }
.pbg-header .is-menu-open .pbg-acc {
	display: grid; place-items: center; width: 44px; height: 44px; padding: 0; margin: 0;
	border: 0; border-radius: 50%; background: transparent; color: var(--pbg-ink); cursor: pointer;
}
.pbg-header .is-menu-open .pbg-acc::before {
	content: ""; width: 1.15rem; height: 1.15rem; background-color: currentColor;
	-webkit-mask: var(--pbg-i-chevron) center / contain no-repeat; mask: var(--pbg-i-chevron) center / contain no-repeat;
	transform: rotate(90deg); transition: transform .25s var(--pbg-ease);
}
.pbg-header .is-menu-open .is-pbg-open > .pbg-acc { color: var(--pbg-gold-deep); background: var(--pbg-ivory); }
.pbg-header .is-menu-open .is-pbg-open > .pbg-acc::before { transform: rotate(270deg); }
@keyframes pbg-acc-in { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: none; } }
/* Search and social links at the bottom of the open menu (moved there by theme.js). */
.pbg-menu-extra { display: none; }
.pbg-header .is-menu-open .pbg-menu-extra { display: block; width: 100%; margin-top: 1.75rem; }
.pbg-header .pbg-menu-search { margin: 0; }
.pbg-header .pbg-menu-search .wp-block-search__inside-wrapper {
	position: relative; display: flex; align-items: center; padding: 0 !important;
	border: 1px solid var(--pbg-line) !important; border-radius: 999px; background: var(--pbg-ivory);
	transition: border-color .2s, box-shadow .2s, background-color .2s;
}
.pbg-header .pbg-menu-search .wp-block-search__inside-wrapper:focus-within {
	border-color: var(--pbg-gold) !important; background: #fff; box-shadow: 0 0 0 3px rgba(198, 150, 51, .2);
}
.pbg-header .pbg-menu-search .wp-block-search__input {
	flex: 1; min-width: 0; height: 50px; margin: 0; padding: 0 .5rem 0 1.25rem !important;
	border: 0 !important; border-radius: 999px; background: transparent; font: inherit; font-size: 1rem; color: var(--pbg-ink);
}
.pbg-header .pbg-menu-search .wp-block-search__input:focus { outline: none; }
.pbg-header .pbg-menu-search .wp-block-search__input::placeholder { color: var(--pbg-muted); opacity: 1; }
.pbg-header .pbg-menu-search .wp-block-search__button {
	flex: none; display: grid; place-items: center; width: 42px; height: 42px; margin: 0 4px 0 0; padding: 0;
	border: 0; border-radius: 50%; background: var(--pbg-gold-deep); color: #fff; cursor: pointer;
}
.pbg-header .pbg-menu-search .wp-block-search__button svg { width: 22px; height: 22px; fill: currentColor; }
.pbg-header .pbg-menu-search .wp-block-search__button:focus-visible { outline: 2px solid var(--pbg-gold); outline-offset: 2px; }
.pbg-header .is-menu-open .pbg-menu-social { margin-top: 1.75rem; }
.pbg-menu-social__title {
	margin: 0 0 .75rem; font-size: .78rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--pbg-muted);
}
.pbg-menu-social__title::before { content: ""; display: inline-block; width: 22px; height: 2px; margin-right: .6rem; vertical-align: middle; background: var(--pbg-gold); }
.pbg-header .pbg-menu-social .pbg-social { margin: 0; gap: .5rem; }
.pbg-header .pbg-menu-social .pbg-social a {
	display: inline-flex; align-items: center; gap: .5rem; min-height: 44px; padding: 0 1.05rem 0 .85rem;
	border: 1px solid var(--pbg-line); border-radius: 999px; background: #fff;
	color: var(--pbg-ink); font-size: .95rem; font-weight: 500; text-decoration: none;
	transition: border-color .2s, color .2s, background-color .2s;
}
.pbg-header .pbg-menu-social .pbg-social a::before {
	content: ""; flex: none; width: 18px; height: 18px; background-color: var(--pbg-gold-deep);
	-webkit-mask: var(--pbg-i-users) center / contain no-repeat; mask: var(--pbg-i-users) center / contain no-repeat;
}
.pbg-header .pbg-menu-social a[href*="facebook."]::before { -webkit-mask-image: var(--pbg-i-facebook); mask-image: var(--pbg-i-facebook); }
.pbg-header .pbg-menu-social a[href*="instagram."]::before { -webkit-mask-image: var(--pbg-i-instagram); mask-image: var(--pbg-i-instagram); }
.pbg-header .pbg-menu-social a[href*="youtube."]::before, .pbg-header .pbg-menu-social a[href*="youtu.be"]::before { -webkit-mask-image: var(--pbg-i-youtube); mask-image: var(--pbg-i-youtube); }
.pbg-header .pbg-menu-social .pbg-social a:active { background: var(--pbg-ivory); }
@media (hover: hover) {
	.pbg-header .pbg-menu-social .pbg-social a:hover { border-color: var(--pbg-gold); color: var(--pbg-gold-deep); }
}
.pbg-header .pbg-menu-social .pbg-social a:focus-visible { outline: 2px solid var(--pbg-gold); outline-offset: 2px; }
/* Opening: the panel fades in, then the rows settle in one after another
   (index --pbg-i set by theme.js). */
@media (prefers-reduced-motion: no-preference) {
	.pbg-header .wp-block-navigation__responsive-container.is-menu-open { animation: pbg-menu-fade .22s ease-out both; }
	.pbg-header .is-menu-open .wp-block-navigation__responsive-container-close { animation: pbg-menu-fade .4s var(--pbg-ease) .1s both; }
	.pbg-header .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item,
	.pbg-header .is-menu-open .pbg-menu-extra > * {
		animation: pbg-menu-row .5s var(--pbg-ease) both;
		animation-delay: calc(80ms + var(--pbg-i, 0) * 45ms);
	}
	.pbg-header .is-menu-open .wp-block-navigation__container { animation: pbg-menu-rule .6s var(--pbg-ease) .05s both; }
}
@keyframes pbg-menu-fade { from { opacity: 0; } to { opacity: 1; } }
@keyframes pbg-menu-row { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
@keyframes pbg-menu-rule { from { border-top-color: transparent; } to { border-top-color: var(--pbg-line); } }
.is-scrolled .pbg-header { border-color: var(--pbg-line); box-shadow: 0 6px 24px rgba(22, 21, 20, .06); }
.pbg-header__inner {
	max-width: var(--pbg-wide);
	margin: 0 auto;
	padding: .75rem var(--pbg-gutter);
	gap: 1.5rem;
	min-height: var(--wp--custom--header-height);
}
.pbg-brand { gap: .85rem; min-width: 0; }
.pbg-brand__logo img { width: 58px; height: auto; display: block; }
.pbg-brand__text { gap: 0; min-width: 0; }
.pbg-brand .wp-block-site-title { font-size: clamp(1.02rem, .9rem + .5vw, 1.3rem); line-height: 1.15; margin: 0; }
.pbg-brand__sub {
	margin: .15rem 0 0;
	font-size: .78rem;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: var(--pbg-muted);
	white-space: nowrap;
}
.pbg-header__nav { gap: .5rem; }
.pbg-header .wp-block-navigation { gap: 0; }
.pbg-header .wp-block-navigation .wp-block-navigation-item__content {
	padding: .55rem .7rem;
	border-radius: var(--pbg-radius-s);
	color: var(--pbg-ink);
	transition: background-color .2s, color .2s;
}
.pbg-header .wp-block-navigation .wp-block-navigation-item__content:hover,
.pbg-header .wp-block-navigation .current-menu-item > .wp-block-navigation-item__content,
.pbg-header .wp-block-navigation .current-menu-ancestor > .wp-block-navigation-item__content {
	background: var(--pbg-ivory);
	color: var(--pbg-gold-deep);
}
.pbg-header .wp-block-navigation__submenu-container {
	border: 1px solid var(--pbg-line) !important;
	border-radius: var(--pbg-radius-m);
	box-shadow: 0 18px 40px rgba(22, 21, 20, .12);
	padding: .5rem !important;
	min-width: 260px !important;
	background: #fff !important;
}
.pbg-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content { padding: .5rem .75rem; font-weight: 400; }
.pbg-header .wp-block-navigation-submenu__toggle { padding-left: 0; }
@media (min-width: 1240px) {
	.pbg-header .wp-block-navigation__container { gap: .3rem !important; }
	.pbg-header .wp-block-navigation__container > .wp-block-navigation-item { border-radius: var(--pbg-radius-s); transition: background-color .2s; }
	.pbg-header .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content { background: transparent !important; }
	.pbg-header .wp-block-navigation__container > .has-child > .wp-block-navigation-item__content { padding-right: .3rem; }
	.pbg-header .wp-block-navigation__container > .has-child > .wp-block-navigation-submenu__toggle { width: auto; min-width: 28px; justify-content: center; padding: 0 .55rem 0 .1rem; margin: 0; align-self: stretch; height: auto; display: flex; align-items: center; }
	.pbg-header .wp-block-navigation__container > .has-child > .wp-block-navigation-submenu__toggle svg { flex: none; width: 12px; height: 12px; margin: 0; }
	.pbg-header .wp-block-navigation__container > .wp-block-navigation-item:hover,
	.pbg-header .wp-block-navigation__container > .current-menu-item,
	.pbg-header .wp-block-navigation__container > .current-menu-ancestor { background: var(--pbg-ivory); }
	.pbg-header .wp-block-navigation__container > .wp-block-navigation-item:hover > .wp-block-navigation-item__content,
	.pbg-header .wp-block-navigation__container > .wp-block-navigation-item:hover > .wp-block-navigation-submenu__toggle,
	.pbg-header .wp-block-navigation__container > .current-menu-ancestor > .wp-block-navigation-submenu__toggle { color: var(--pbg-gold-deep); }
}
.pbg-header__search .wp-block-search__button {
	background: transparent;
	color: var(--pbg-ink);
	border: 1px solid var(--pbg-line);
	border-radius: 999px;
	width: 42px;
	height: 42px;
	padding: 0;
	display: grid;
	place-items: center;
}
.pbg-header__search .wp-block-search__button:hover { background: var(--pbg-ivory); color: var(--pbg-gold-deep); }
/* The expanded field floats over the menu (absolute) instead of pushing it,
   so opening search never re-wraps menu items or squeezes the logo. */
.pbg-header__search { position: relative; flex: none; }
.pbg-header__search .wp-block-search__inside-wrapper { width: 42px !important; min-width: 0 !important; padding: 0 !important; border: 0 !important; position: relative; }
.pbg-header__search .wp-block-search__input {
	position: absolute; top: 50%; right: calc(100% + .5rem); z-index: 20;
	width: min(24rem, calc(100vw - 8rem)) !important; height: 42px; margin: 0;
	border-radius: 999px; border: 1px solid var(--pbg-gold) !important; padding: .5rem 1.1rem !important;
	background: #fff; font: inherit; color: var(--pbg-ink);
	box-shadow: 0 12px 32px rgba(22, 21, 20, .14);
	transform: translateY(-50%); opacity: 1; transform-origin: right center;
	transition: opacity .2s var(--pbg-ease), transform .25s var(--pbg-ease);
}
.pbg-header__search.wp-block-search__searchfield-hidden .wp-block-search__input {
	opacity: 0; pointer-events: none; transform: translateY(-50%) scaleX(.85);
}
/* While the field is open the menu fades out behind it (space stays reserved). */
.pbg-header__nav .wp-block-navigation { transition: opacity .2s var(--pbg-ease), visibility .2s; }
.pbg-header__nav:has(.pbg-header__search:not(.wp-block-search__searchfield-hidden)) > .wp-block-navigation { opacity: 0; visibility: hidden; }
.pbg-header__search:not(.wp-block-search__searchfield-hidden) .wp-block-search__button { background: var(--pbg-gold-deep); border-color: var(--pbg-gold-deep); color: #fff; }
@media (min-width: 1240px) {
	.pbg-header__search .wp-block-search__input { width: min(30rem, calc(100vw - 30rem)) !important; }
}
.pbg-header__search .wp-block-search__input:focus { outline: none; box-shadow: 0 0 0 3px rgba(198, 150, 51, .25), 0 12px 32px rgba(22, 21, 20, .14); }

/* Mobile overlay menu */
.wp-block-navigation__responsive-container.is-menu-open { padding: 1.25rem var(--pbg-gutter) 2rem; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { padding-top: 4rem; gap: 0; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item { font-size: 1.15rem; }
.wp-block-navigation__responsive-container-open, .wp-block-navigation__responsive-container-close {
	width: 42px; height: 42px; border-radius: 999px; border: 1px solid var(--pbg-line); display: grid; place-items: center; padding: 0;
}
/* Core collapses the menu only below 600px; seven items + school name need the
   overlay up to 1239px (tablets, laptops with 1100–1230 px wide windows,
   where seven items next to the school name would wrap). */
@media (min-width: 1240px) { .pbg-header .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content, .pbg-brand .wp-block-site-title { white-space: nowrap; } }
@media (min-width: 600px) and (max-width: 1239px) {
	.pbg-header .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex; align-items: center; justify-content: center; }
	.pbg-header .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: none; }
}
@media (max-width: 781px) {
	.pbg-brand__sub { display: none; }
	.pbg-brand__logo img { width: 46px; }
}
@media (max-width: 420px) {
	.pbg-brand .wp-block-site-title { font-size: .95rem; }
}

/* ---------------------------------------------------------------- Page hero */
.pbg-page-hero {
	background:
		radial-gradient(1200px 300px at 85% -20%, rgba(198, 150, 51, .16), transparent 60%),
		linear-gradient(180deg, var(--pbg-ivory), #fff);
	border-bottom: 1px solid var(--pbg-line);
	padding-top: clamp(2rem, 1.5rem + 2vw, 3.5rem) !important;
	padding-bottom: clamp(2rem, 1.5rem + 2vw, 3.25rem) !important;
	margin-bottom: clamp(2rem, 1.5rem + 2vw, 3.5rem);
}
.pbg-main > .pbg-page-hero { margin-top: 0; }
/* Constrained layout centres any child narrower than the content width, so the
   title/lead keep the full width (aligned with the breadcrumbs) and limit the
   line length with padding instead of max-width. */
.pbg-page-hero > :is(.pbg-page-hero__title, .pbg-page-hero__lead) { box-sizing: border-box; }
.pbg-page-hero > .pbg-page-hero__title { margin-top: .35rem; margin-bottom: 0; text-wrap: balance; padding-right: max(0px, calc(min(100%, 1240px) - 22ch)); }
.pbg-page-hero > .pbg-page-hero__lead { color: var(--pbg-muted); font-size: var(--wp--preset--font-size--large); margin-top: .75rem; padding-right: max(0px, calc(min(100%, 1240px) - 60ch)); }
.pbg-page-hero > .pbg-page-hero__date { margin-top: .75rem; color: var(--pbg-muted); font-size: .95rem; }
.pbg-cat-filter { margin-top: 1.25rem; display: flex; gap: .75rem; align-items: center; }
.pbg-cat-filter label { font-weight: 600; font-size: .9rem; }
.pbg-cat-filter select { padding: .5rem 2rem .5rem .9rem; border: 1px solid var(--pbg-line); border-radius: 999px; background-color: #fff; font: inherit; }

/* Breadcrumbs */
.pbg-breadcrumbs ol { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .25rem .5rem; font-size: .875rem; color: var(--pbg-muted); }
.pbg-breadcrumbs li:not(:last-child)::after { content: "/"; margin-left: .5rem; color: var(--pbg-line); }
.pbg-breadcrumbs a { color: var(--pbg-muted); text-decoration: none; }
.pbg-breadcrumbs a:hover { color: var(--pbg-gold-deep); text-decoration: underline; }
.pbg-breadcrumbs [aria-current] span { color: var(--pbg-ink); }

/* ---------------------------------------------------------------- Page body */
.pbg-page-body { padding-bottom: clamp(3rem, 2rem + 4vw, 6rem); }
.pbg-with-aside { gap: clamp(2rem, 1rem + 4vw, 5rem) !important; }
.pbg-with-aside__main { min-width: 0; max-width: 760px; }
.pbg-with-aside__aside:empty, .pbg-with-aside__aside:not(:has(.pbg-section-nav)) { display: none; }
.pbg-page-figure img { border-radius: var(--pbg-radius-m); }

.pbg-section-nav {
	position: sticky;
	top: calc(var(--wp--custom--header-height) + 1.5rem);
	border: 1px solid var(--pbg-line);
	border-radius: var(--pbg-radius-m);
	padding: 1.25rem;
	background: #fff;
	font-size: .95rem;
}
.pbg-section-nav__title { margin: 0 0 .5rem; font-family: var(--wp--preset--font-family--serif); font-weight: 600; font-size: 1.05rem; }
.pbg-section-nav__title a { color: var(--pbg-ink); text-decoration: none; }
.pbg-section-nav ul { list-style: none; margin: 0; padding: 0; }
.pbg-section-nav ul ul { padding-left: .85rem; border-left: 1px solid var(--pbg-line); margin: .15rem 0 .35rem .6rem; }
.pbg-section-nav li a { display: block; padding: .35rem .5rem; border-radius: var(--pbg-radius-s); color: var(--pbg-ink); text-decoration: none; line-height: 1.35; }
.pbg-section-nav li a:hover { background: var(--pbg-ivory); color: var(--pbg-gold-deep); }
.pbg-section-nav li.is-current > a { background: var(--pbg-sand); font-weight: 600; }
@media (max-width: 781px) {
	/* Phones: content first, section navigation after it ("U ovoj rubrici"). */
	.pbg-with-aside { flex-direction: column; }
	.pbg-with-aside__aside { border-top: 1px solid var(--pbg-line); padding-top: 2rem; }
	.pbg-with-aside__aside::before { content: "U ovoj rubrici"; display: block; margin-bottom: .75rem; font-size: .75rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--pbg-gold-deep); }
	/* A section landing page already lists its sub-pages as cards in the content. */
	.pbg-with-aside:has(.pbg-with-aside__main .wp-block-page-list) > .pbg-with-aside__aside { display: none; }
	/* Stacked columns must take their content height (core sets flex-basis:100%,
	   which in a column flexbox let the column shrink and the footer cover it). */
	.pbg-with-aside > .wp-block-column { flex: 0 0 auto !important; width: 100%; }
	.pbg-section-nav { position: static; }
}

/* ---------------------------------------------------------------- Prose */
.pbg-prose { font-size: 1.125rem; }
.pbg-prose > * + * { margin-block-start: 1.1em; }
.pbg-prose h2 { margin-top: 2em; }
.pbg-prose h3 { margin-top: 1.6em; }
/* Imported h4–h6 subheadings: sans, bold, clearly above body text. */
.pbg-prose h4 { font-family: var(--wp--preset--font-family--sans); font-weight: 700; font-size: 1.15rem; line-height: 1.35; margin-top: 1.8em; }
.pbg-prose :is(h5, h6) { font-family: var(--wp--preset--font-family--sans); font-weight: 700; margin-top: 1.6em; }
.pbg-prose :is(h2, h3, h4, h5, h6) + * { margin-block-start: .6em; }
.pbg-prose a { text-decoration-thickness: 1px; text-underline-offset: 3px; }
.pbg-prose ul, .pbg-prose ol { padding-left: 1.3em; }
.pbg-prose li + li { margin-top: .35em; }
.pbg-prose li::marker { color: var(--pbg-gold); }
/* Post lists (query loop) inside page content are grids, not text lists. */
.pbg-prose ul.wp-block-post-template { padding-left: 0; }
.pbg-prose .wp-block-post-template > li + li { margin-top: 0; }
/* "All posts" button under a post list. */
.pbg-prose .pbg-more { margin-top: 1.75rem; }
@media (max-width: 600px) { .pbg-prose .pbg-more .wp-block-button { width: 100%; } .pbg-prose .pbg-more .wp-block-button__link { width: 100%; text-align: center; } }
.pbg-prose img { border-radius: var(--pbg-radius-s); }
.pbg-prose .wp-block-image figcaption { text-align: left; }
.pbg-prose .wp-block-gallery { gap: .5rem !important; }
.pbg-prose .wp-block-gallery img { border-radius: var(--pbg-radius-s); }
.pbg-prose table { border-collapse: collapse; width: 100%; }
.pbg-prose .wp-block-table { overflow-x: auto; }
.pbg-prose th, .pbg-prose td { border: 1px solid var(--pbg-line); padding: .55rem .7rem; text-align: left; vertical-align: top; }
.pbg-prose tbody tr:nth-child(even) td { background: var(--pbg-ivory); }
.pbg-prose tbody tr:first-child td { font-weight: 600; background: var(--pbg-sand); }
@media (max-width: 600px) { .pbg-prose table { font-size: .95rem; } .pbg-prose th, .pbg-prose td { padding: .5rem .55rem; } }

/* Former side-by-side layout tables: two text columns as cards; stacked on phones. */
.pbg-prose .pbg-text-cols { gap: 1rem; margin-block: 1.5rem; }
.pbg-prose .pbg-text-cols > .wp-block-column {
	background: var(--pbg-ivory); border: 1px solid var(--pbg-line); border-radius: var(--pbg-radius-m);
	padding: 1.25rem 1.4rem; font-size: 1.02rem;
}
.pbg-prose .pbg-text-cols > .wp-block-column > :first-child { margin-top: 0; }
.pbg-prose .pbg-text-cols > .wp-block-column > * + * { margin-top: .8em; }
.pbg-prose .pbg-text-cols > .wp-block-column { box-sizing: border-box; min-width: 0; overflow-wrap: anywhere; }
@media (max-width: 781px) { .pbg-prose .pbg-text-cols > .wp-block-column { flex: 0 0 auto !important; width: 100%; } }
.pbg-prose thead th, .pbg-prose tr:first-child th { background: var(--pbg-ivory); }
.pbg-prose hr { border: 0; border-top: 1px solid var(--pbg-line); margin: 2.5rem 0; }
.pbg-prose .wp-block-file {
	display: flex; flex-wrap: wrap; align-items: center; gap: .75rem; padding: .9rem 1rem;
	border: 1px solid var(--pbg-line); border-radius: var(--pbg-radius-m); background: var(--pbg-ivory);
}
.pbg-prose .wp-block-file__button { border-radius: 999px; background: var(--pbg-ink); color: #fff; padding: .45rem 1rem; text-decoration: none; font-size: .9rem; }
.pbg-prose .wp-block-embed { margin-block: 2rem; }
.pbg-prose .wp-block-embed iframe { width: 100%; border-radius: var(--pbg-radius-m); }

.pbg-archive-notice {
	border: 1px solid #e8d7a8;
	background: #fbf5e4;
	border-radius: var(--pbg-radius-m);
	padding: .9rem 1.1rem;
	font-size: .975rem;
	margin-bottom: 1.75rem;
}

/* ---------------------------------------------------------------- Article */
.pbg-article { padding-top: clamp(1.5rem, 1rem + 2vw, 3rem); padding-bottom: clamp(2rem, 1rem + 3vw, 4rem); }
.pbg-article__head { margin-bottom: 2rem; }
.pbg-article__head .pbg-breadcrumbs { margin-bottom: 1.25rem; }
.pbg-article__title { font-size: var(--wp--preset--font-size--xx-large); margin: .5rem 0 .75rem; text-wrap: balance; }
.pbg-article__date { color: var(--pbg-muted); }
.pbg-article__figure { margin-bottom: 2.5rem !important; }
.pbg-article__figure img { border-radius: var(--pbg-radius-m); }
.pbg-article__foot { border-top: 1px solid var(--pbg-line); padding-top: 1.5rem; margin-top: 3rem; gap: 1rem; font-size: .95rem; }
.pbg-article__foot a { text-decoration: none; font-weight: 600; }
.pbg-related { background: var(--pbg-ivory); padding-top: clamp(2.5rem, 2rem + 3vw, 4.5rem) !important; padding-bottom: clamp(2.5rem, 2rem + 3vw, 4.5rem) !important; border-top: 1px solid var(--pbg-line); }
.pbg-section-title { margin-bottom: 1.5rem; }

/* ---------------------------------------------------------------- Cards */
/* Gap comes from core grid layout (blockGap) so 3 columns fit the 1240px container. */
.pbg-card {
	height: 100%;
	background: #fff;
	border: 1px solid var(--pbg-line);
	border-radius: var(--pbg-radius-m);
	overflow: hidden;
	display: flex;
	flex-direction: column;
	transition: transform .35s var(--pbg-ease), box-shadow .35s var(--pbg-ease), border-color .35s;
	position: relative;
}
.pbg-card:hover { transform: translateY(-3px); box-shadow: 0 18px 40px rgba(22, 21, 20, .10); border-color: #d8ccb4; }
.pbg-card .wp-block-post-featured-image { margin: 0; overflow: hidden; background: var(--pbg-sand); }
.pbg-card .wp-block-post-featured-image img { transition: transform .6s var(--pbg-ease); }
.pbg-card:hover .wp-block-post-featured-image img { transform: scale(1.035); }
/* Posts without a photo: the school emblem (single-colour gold) as placeholder.
   Source: assets/images/pbg-znak-mono.webp – regenerate from the official vector
   logo once the school supplies it. */
.pbg-card:not(:has(.wp-block-post-featured-image))::before {
	content: "";
	display: block;
	aspect-ratio: 3 / 2;
	background:
		url("../images/pbg-znak-mono.webp") center / auto 58% no-repeat,
		radial-gradient(circle at 50% 50%, #fffdf8 0%, var(--pbg-ivory) 45%, var(--pbg-sand) 100%);
	border-bottom: 1px solid var(--pbg-line);
	opacity: 1;
	transition: background-size .6s var(--pbg-ease);
}
.pbg-card:not(:has(.wp-block-post-featured-image)):hover::before { background-size: auto 62%, auto; }
.pbg-section--dark .pbg-card:not(:has(.wp-block-post-featured-image))::before {
	background:
		url("../images/pbg-znak-mono.webp") center / auto 58% no-repeat,
		radial-gradient(circle at 50% 50%, #2e2b28 0%, #23211f 70%);
	border-bottom-color: #34312d;
}
.pbg-card__body { padding: 1.15rem 1.25rem 1.35rem; display: flex; flex-direction: column; gap: .45rem; flex: 1; }
.pbg-card__body > * { margin: 0 !important; }
.pbg-card__title { font-size: 1.2rem !important; line-height: 1.3; text-wrap: pretty; }
.pbg-card__title a { color: var(--pbg-ink); }
.pbg-card__title a::after { content: ""; position: absolute; inset: 0; } /* whole card clickable */
.pbg-card__terms, .pbg-card__terms a { position: relative; z-index: 1; }
.pbg-card__date { margin-top: auto !important; padding-top: .35rem; }

/* ---------------------------------------------------------------- Pagination */
.pbg-pagination { margin-top: clamp(2rem, 1.5rem + 2vw, 3.5rem); gap: .35rem; flex-wrap: wrap; padding-bottom: 3rem; }
.pbg-pagination a, .pbg-pagination .page-numbers {
	min-width: 42px; height: 42px; padding: 0 .85rem; display: inline-flex; align-items: center; justify-content: center; gap: .45rem;
	white-space: nowrap; line-height: 1;
	border-radius: 999px; border: 1px solid var(--pbg-line); text-decoration: none; color: var(--pbg-ink); background: #fff;
}
/* "Novije" / "Starije": label and arrow stay on one line inside the pill. */
.pbg-pagination :is(.wp-block-query-pagination-previous, .wp-block-query-pagination-next) { padding: 0 1.1rem; }
.pbg-pagination :is(.wp-block-query-pagination-previous-arrow, .wp-block-query-pagination-next-arrow) { margin: 0 !important; display: inline-block; transition: transform .2s ease; }
.pbg-pagination .page-numbers.current { background: var(--pbg-ink); color: #fff; border-color: var(--pbg-ink); }
@media (hover: hover) {
	.pbg-pagination a:hover { border-color: var(--pbg-gold); color: var(--pbg-gold-deep); }
	.pbg-pagination .wp-block-query-pagination-next:hover .wp-block-query-pagination-next-arrow { transform: translateX(2px); }
	.pbg-pagination .wp-block-query-pagination-previous:hover .wp-block-query-pagination-previous-arrow { transform: translateX(-2px); }
}
.pbg-pagination .dots { border: 0; background: none; min-width: 1.5rem; padding: 0; }
.pbg-pagination .wp-block-query-pagination-numbers { display: flex; flex-wrap: wrap; justify-content: center; gap: .35rem; }
@media (max-width: 600px) {
	/* Phones: page numbers on their own centred row, Novije / Starije side by side below. */
	.pbg-pagination { justify-content: center; row-gap: .75rem; column-gap: .5rem; }
	.pbg-pagination .wp-block-query-pagination-numbers { order: -1; flex: 0 0 100%; gap: .3rem; }
	.pbg-pagination .page-numbers { min-width: 40px; height: 40px; padding: 0 .55rem; }
	.pbg-pagination :is(.wp-block-query-pagination-previous, .wp-block-query-pagination-next) { height: 44px; }
}

/* ---------------------------------------------------------------- Buttons */
.wp-block-button.is-style-pbg-outline .wp-block-button__link, .pbg-button.is-outline {
	background: transparent; color: var(--pbg-ink); box-shadow: inset 0 0 0 1.5px currentColor;
}
.wp-block-button.is-style-pbg-outline .wp-block-button__link:hover, .pbg-button.is-outline:hover { background: var(--pbg-ink); color: #fff; }
.wp-block-button.is-style-pbg-light .wp-block-button__link { background: #fff; color: var(--pbg-ink); }
.wp-block-button.is-style-pbg-light .wp-block-button__link:hover { background: var(--wp--preset--color--gold-light); color: var(--pbg-night); }
.wp-block-button__link { transition: background-color .2s, color .2s, box-shadow .2s; }
.pbg-button {
	display: inline-flex; align-items: center; gap: .5rem; padding: .75rem 1.4rem; border-radius: 999px;
	background: var(--pbg-ink); color: #fff; font-weight: 600; text-decoration: none; border: 0; cursor: pointer; font: inherit; font-weight: 600;
}
.pbg-button:hover { background: var(--pbg-gold-deep); color: #fff; }

/* ---------------------------------------------------------------- Block styles */
.is-style-pbg-eyebrow {
	font-family: var(--wp--preset--font-family--sans) !important;
	font-size: .8125rem !important;
	font-weight: 700 !important;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--pbg-gold-deep) !important;
	display: flex; align-items: center; gap: .75rem;
}
.is-style-pbg-eyebrow::before { content: ""; width: 28px; height: 2px; background: var(--pbg-gold); display: inline-block; }
.has-text-align-center.is-style-pbg-eyebrow { justify-content: center; }
.is-style-pbg-lead { font-size: var(--wp--preset--font-size--large); color: var(--pbg-muted); line-height: 1.55; }
.is-style-pbg-checks { list-style: none; padding-left: 0 !important; }
.is-style-pbg-checks li { padding-left: 1.9rem; position: relative; }
.is-style-pbg-checks li::before {
	content: ""; position: absolute; left: 0; top: .35em; width: 1.1rem; height: 1.1rem; border-radius: 50%;
	background: var(--pbg-sand) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10.5l3 3 7-7' fill='none' stroke='%23755600' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 70% no-repeat;
}
.is-style-pbg-links { list-style: none; padding: 0 !important; display: flex; flex-wrap: wrap; gap: .5rem; }
.is-style-pbg-links a { display: inline-block; padding: .5rem 1rem; border: 1px solid var(--pbg-line); border-radius: 999px; text-decoration: none; color: var(--pbg-ink); }
.is-style-pbg-links a:hover { border-color: var(--pbg-gold); color: var(--pbg-gold-deep); }
.is-style-pbg-rounded img { border-radius: var(--pbg-radius-l); }
.wp-block-group.is-style-pbg-card { background: #fff; border: 1px solid var(--pbg-line); border-radius: var(--pbg-radius-m); padding: 1.5rem; }
.wp-block-group.is-style-pbg-band { background: var(--pbg-ivory); border-block: 1px solid var(--pbg-line); }

/* ==========================================================================
   Front page sections
   ========================================================================== */
.pbg-section { padding-block: clamp(3.5rem, 2.5rem + 4vw, 7rem) !important; }
.pbg-section--ivory { background: var(--pbg-ivory); }
.pbg-section--dark { background: var(--pbg-night); color: #ece7dd; }
.pbg-section--dark :where(h1, h2, h3, h4) { color: #fff; }
.pbg-section--dark a:not(.wp-block-button__link) { color: #f2d48a; }
.pbg-section__head { margin-bottom: clamp(1.75rem, 1.25rem + 2vw, 3rem) !important; gap: 1rem; }
.pbg-section__head h2 { margin: .4rem 0 0; max-width: 24ch; text-wrap: balance; }
.pbg-section__head p { color: var(--pbg-muted); max-width: 60ch; margin: .75rem 0 0; }
.pbg-section--dark .pbg-section__head p { color: #bdb6aa; }
.pbg-section--dark .is-style-pbg-eyebrow { color: #f2d48a !important; }
.pbg-section--dark .is-style-pbg-eyebrow::before { background: #f2d48a; }

/* Hero */
.pbg-hero {
	position: relative;
	min-height: min(86vh, 820px);
	display: flex !important;
	align-items: flex-end;
	color: #fff;
	isolation: isolate;
	overflow: hidden;
	padding-block: clamp(3rem, 2rem + 6vw, 7rem) !important;
}
.pbg-hero .wp-block-cover__image-background { animation: pbg-kenburns 22s var(--pbg-ease) both; }
.pbg-hero.wp-block-cover { padding-top: 0; padding-inline: var(--pbg-gutter) !important; }
.pbg-hero .wp-block-cover__inner-container { max-width: var(--pbg-wide); margin: 0 auto; width: 100%; }
.pbg-hero .wp-block-cover__inner-container > * { margin-left: 0 !important; margin-right: auto !important; }
.pbg-hero__eyebrow { color: #f2d48a !important; }
.pbg-hero__eyebrow::before { background: #f2d48a !important; }
.pbg-hero h1 {
	color: #fff;
	font-size: var(--wp--preset--font-size--display);
	line-height: 1.04;
	margin: .5rem 0 0;
	max-width: 14ch;
	text-wrap: balance;
	letter-spacing: -.02em;
}
.pbg-hero__slogan { font-family: var(--wp--preset--font-family--serif); font-style: italic; font-size: clamp(1.15rem, 1rem + .8vw, 1.6rem); color: #f2e6c4; margin-top: .85rem !important; }
.pbg-hero__lead { max-width: 52ch; font-size: clamp(1.05rem, .95rem + .4vw, 1.25rem); color: #ebe6dc; margin-top: 1rem !important; }
.pbg-hero .wp-block-buttons { margin-top: 1.75rem !important; gap: .75rem; }
.pbg-hero .is-style-pbg-outline .wp-block-button__link,
.pbg-section--dark .is-style-pbg-outline .wp-block-button__link { color: #fff; }
.pbg-hero .is-style-pbg-outline .wp-block-button__link:hover,
.pbg-section--dark .is-style-pbg-outline .wp-block-button__link:hover { background: #fff; color: var(--pbg-night); }
.pbg-section--dark .pbg-card { background: #23211f; border-color: #34312d; }
.pbg-section--dark .pbg-card__title a { color: #fff; }
.pbg-section--dark .pbg-card__date { color: #a9a296; }
.pbg-section--dark .wp-block-post-terms a { color: #f2d48a; }

@keyframes pbg-kenburns { from { transform: scale(1.08); } to { transform: scale(1); } }

/* Facts strip under hero: figures the school itself published (see transform.py). */
.pbg-facts { border-bottom: 1px solid var(--pbg-line); background: #fff; }
.pbg-facts .wp-block-columns { gap: 0 !important; margin: 0; }
.pbg-facts .wp-block-column { position: relative; padding: 1.6rem 1.5rem 1.5rem; border-left: 1px solid var(--pbg-line); }
.pbg-facts .wp-block-column:first-child { border-left: 0; }
.pbg-facts p { margin: 0; }
.pbg-facts .pbg-fact__value {
	font-family: var(--wp--preset--font-family--serif); font-size: clamp(2.1rem, 1.6rem + 1.6vw, 2.9rem);
	font-weight: 600; line-height: 1; letter-spacing: -.01em; color: var(--pbg-gold-deep);
	font-variant-numeric: lining-nums tabular-nums;
}
.pbg-facts .pbg-fact__value::after { content: ""; display: block; width: 28px; height: 2px; margin: .7rem 0 .6rem; background: var(--pbg-gold); }
.pbg-facts .pbg-fact__label { color: var(--pbg-muted); font-size: .95rem; line-height: 1.4; max-width: 26ch; }
.pbg-facts .pbg-fact__label a { color: inherit; text-decoration: none; }
/* The whole card is the link target. */
.pbg-facts .pbg-fact__label a::after { content: ""; position: absolute; inset: 0; }
.pbg-facts .pbg-fact:has(a) { transition: background-color .2s; }
.pbg-facts .pbg-fact:has(a) .pbg-fact__label a { text-decoration: underline; text-decoration-color: var(--pbg-line); text-underline-offset: 3px; }
@media (hover: hover) {
	.pbg-facts .pbg-fact:has(a):hover { background: var(--pbg-ivory); }
	.pbg-facts .pbg-fact:has(a):hover .pbg-fact__label a { color: var(--pbg-gold-deep); text-decoration-color: var(--pbg-gold); }
}
.pbg-facts .pbg-fact__label a:focus-visible { outline: none; }
.pbg-facts .pbg-fact:has(a:focus-visible) { outline: 2px solid var(--pbg-gold); outline-offset: -2px; }
/* Tablets and phones: two by two. */
@media (max-width: 781px) {
	.pbg-facts .wp-block-columns { display: grid !important; grid-template-columns: 1fr 1fr; }
	.pbg-facts .wp-block-column { border-left: 0; border-top: 1px solid var(--pbg-line); padding: 1.25rem 1rem 1.2rem; }
	.pbg-facts .wp-block-column:nth-child(-n+2) { border-top: 0; }
	.pbg-facts .wp-block-column:nth-child(even) { border-left: 1px solid var(--pbg-line); }
	.pbg-facts .pbg-fact__label { font-size: .88rem; }
}

/* Intro / about */
.pbg-about__media img { border-radius: var(--pbg-radius-l); aspect-ratio: 4 / 5; object-fit: cover; width: 100%; }
.pbg-about__media { position: relative; }
.pbg-about__media::after {
	content: ""; position: absolute; inset: auto -14px -14px auto; width: 45%; height: 45%;
	border: 2px solid var(--pbg-gold); border-radius: var(--pbg-radius-l); z-index: -1;
}
.pbg-about { isolation: isolate; }
@media (max-width: 600px) {
	/* Keep the decorative frame inside the 16px page gutter; 4:3 photo keeps the text closer. */
	.pbg-about__media::after { inset: auto -8px -8px auto; }
	.pbg-about__media img { aspect-ratio: 4 / 3; }
	.pbg-hero__eyebrow { letter-spacing: .1em; font-size: .75rem !important; }
}
.pbg-about blockquote, .pbg-quote {
	border-left: 3px solid var(--pbg-gold); margin: 1.75rem 0 0; padding: .25rem 0 .25rem 1.25rem;
	font-family: var(--wp--preset--font-family--serif); font-style: italic; font-size: 1.25rem; color: var(--pbg-ink);
}

/* Quotes about the school (front page) */
.pbg-quotes { padding-top: 0 !important; }
.pbg-quotes__grid { gap: 1.25rem !important; }
.pbg-quote-card.wp-block-quote {
	margin: 0; height: 100%; display: flex; flex-direction: column; gap: 1rem;
	padding: 1.5rem 1.5rem 1.25rem !important; border: 1px solid var(--pbg-line); border-left: 3px solid var(--pbg-gold);
	border-radius: var(--pbg-radius-m); background: #fff; font-style: normal;
}
.pbg-quote-card p {
	margin: 0; font-family: var(--wp--preset--font-family--serif); font-style: italic;
	font-size: 1.125rem; line-height: 1.6; color: var(--pbg-ink);
}
.pbg-quote-card cite {
	margin-top: auto; font-style: normal; font-size: .95rem; font-weight: 600; color: var(--pbg-ink); line-height: 1.4;
}
.pbg-quote-card__role { font-weight: 400; color: var(--pbg-muted); font-size: .875rem; }

/* Program cards */
.pbg-programs { gap: 1.25rem !important; }
.pbg-program {
	position: relative; height: 100%; padding: 1.75rem 1.5rem 1.5rem !important; border-radius: var(--pbg-radius-m);
	background: #fff; border: 1px solid var(--pbg-line); display: flex; flex-direction: column; gap: .6rem;
	transition: transform .35s var(--pbg-ease), box-shadow .35s var(--pbg-ease), border-color .35s;
}
.pbg-program:hover { transform: translateY(-3px); box-shadow: 0 18px 40px rgba(22, 21, 20, .09); border-color: #d8ccb4; }
.pbg-program > * { margin: 0 !important; }
.pbg-program__tag { font-size: .78rem; letter-spacing: .14em; text-transform: uppercase; font-weight: 700; color: var(--pbg-gold-deep); }
.pbg-program h3 { font-size: 1.4rem; }
.pbg-program p:not(.pbg-program__tag):not(.pbg-program__more) { color: var(--pbg-muted); font-size: 1rem; }
.pbg-program__more { margin-top: auto !important; padding-top: .5rem; font-weight: 600; }
.pbg-program__more a { text-decoration: none; }
.pbg-program__more a::after { content: ""; position: absolute; inset: 0; }
.pbg-program--accent { background: var(--pbg-night); border-color: var(--pbg-night); color: #ece7dd; }
.pbg-program--accent h3 { color: #fff; }
.pbg-program--accent p:not(.pbg-program__tag):not(.pbg-program__more) { color: #c9c2b5; }
.pbg-program--accent .pbg-program__tag, .pbg-program--accent a { color: #f2d48a; }

/* Quick links (students / parents) */
.pbg-quick { gap: 1rem !important; }
.pbg-quick__item {
	position: relative; display: flex; flex-direction: column; gap: .35rem; height: 100%;
	padding: 1.25rem 1.25rem 1.25rem 1.25rem !important; border-radius: var(--pbg-radius-m); background: #fff; border: 1px solid var(--pbg-line);
	transition: border-color .25s, background-color .25s;
}
.pbg-quick__item:hover { border-color: var(--pbg-gold); background: #fffdf7; }
.pbg-quick__item > * { margin: 0 !important; }
.pbg-quick__item h3 { font-family: var(--wp--preset--font-family--sans); font-size: 1.08rem; font-weight: 700; }
.pbg-quick__item h3 a { color: var(--pbg-ink); text-decoration: none; }
.pbg-quick__item h3 a::after { content: ""; position: absolute; inset: 0; }
.pbg-quick__item p { color: var(--pbg-muted); font-size: .95rem; }

/* Enrollment band */
.pbg-enroll { border-radius: var(--pbg-radius-l); overflow: hidden; }
.pbg-enroll__panel { padding: clamp(2rem, 1.5rem + 3vw, 4rem) !important; }

/* Staff (Uposlenici): person cards – round portrait, name, role. 1 column on phones. */
.pbg-prose .pbg-staff { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 17rem), 1fr)); gap: .75rem; margin-top: 1.25rem; }
.pbg-prose .pbg-staff > .pbg-staff__card {
	display: grid; grid-template-columns: 64px 1fr; align-items: center; column-gap: 1rem; margin: 0;
	padding: .75rem 1rem .75rem .75rem; background: #fff; border: 1px solid var(--pbg-line); border-radius: var(--pbg-radius-m);
}
.pbg-staff__card > .pbg-staff__photo { margin: 0; grid-column: 1; }
.pbg-staff__card > .pbg-staff__photo img { width: 64px; height: 64px; border-radius: 50%; object-fit: cover; object-position: 50% 20%; background: var(--pbg-sand); display: block; }
.pbg-staff__card:not(:has(.pbg-staff__photo))::before {
	content: ""; width: 64px; height: 64px; border-radius: 50%; grid-column: 1;
	background: var(--pbg-ig-users) center / 28px no-repeat, var(--pbg-sand);
}
.pbg-prose .pbg-staff__card > p { grid-column: 2; margin: 0; font-size: .95rem; line-height: 1.4; color: var(--pbg-muted); }
.pbg-staff__card > p strong { display: block; color: var(--pbg-ink); font-size: 1.02rem; font-weight: 600; margin-bottom: .1rem; }
.pbg-prose h2 + .pbg-staff { margin-top: .9rem; }
.pbg-staff__card > p br { display: none; }
/* Head of school: one larger card with a gold accent. */
.pbg-prose .pbg-staff--lead { grid-template-columns: minmax(0, 26rem); margin-top: 1.75rem; }
.pbg-prose .pbg-staff--lead > .pbg-staff__card { grid-template-columns: 96px 1fr; padding: 1rem 1.25rem 1rem 1rem; background: var(--pbg-ivory); border-color: #e8d7a8; }
.pbg-staff--lead .pbg-staff__photo img { width: 96px; height: 96px; box-shadow: 0 0 0 3px #fff, 0 0 0 4px var(--pbg-gold-light); }
.pbg-staff--lead .pbg-staff__card > p strong { font-family: var(--wp--preset--font-family--serif); font-size: 1.25rem; font-weight: 600; }
.pbg-prose .pbg-staff__lead-text { margin-top: 1.25rem; max-width: 44rem; }
.pbg-prose .pbg-staff__lead-text > :first-child { margin-top: 0; }

/* Album (pbg_galerija): even grid, 3 columns desktop, 2 on phones; lightbox on tap. */
.pbg-album__lead { color: var(--pbg-muted); font-size: 1rem; margin-bottom: 1.5rem; }
.pbg-album__lead a { color: var(--pbg-gold-deep); }
.pbg-album.wp-block-gallery { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .6rem !important; }
.pbg-album.wp-block-gallery > .wp-block-image { width: auto !important; margin: 0 !important; border-radius: var(--pbg-radius-s); overflow: hidden; background: var(--pbg-sand); }
.pbg-album.wp-block-gallery > .wp-block-image img { width: 100%; height: 100% !important; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 0; transition: transform .5s var(--pbg-ease); }
@media (hover: hover) { .pbg-album.wp-block-gallery > .wp-block-image:hover img { transform: scale(1.04); } }
@media (max-width: 600px) { .pbg-album.wp-block-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .4rem !important; } }
/* Galleries inserted with the classic editor ([gallery]) look like the albums. */
.pbg-prose .gallery { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .6rem; margin-block: 1.5rem; }
.pbg-prose .gallery.gallery-columns-1 { grid-template-columns: minmax(0, 1fr); }
.pbg-prose .gallery.gallery-columns-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.pbg-prose .gallery.gallery-columns-4, .pbg-prose .gallery.gallery-columns-5, .pbg-prose .gallery.gallery-columns-6 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.pbg-prose .gallery br { display: none; }
.pbg-prose .gallery-item { margin: 0; width: auto !important; max-width: none !important; border-radius: var(--pbg-radius-s); overflow: hidden; background: var(--pbg-sand); }
.pbg-prose .gallery-icon a { display: block; }
.pbg-prose .gallery-item img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border: 0 !important; transition: transform .5s var(--pbg-ease); }
@media (hover: hover) { .pbg-prose .gallery-item:hover img { transform: scale(1.04); } }
.pbg-prose .gallery-caption { padding: .35rem .5rem; font-size: .85rem; color: var(--pbg-muted); background: var(--pbg-base, #fff); }
@media (max-width: 600px) { .pbg-prose .gallery[class*="gallery-columns-"]:not(.gallery-columns-1) { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .4rem; } }

/* Photo selection (core gallery, editable) */
.pbg-photos.wp-block-gallery { gap: .6rem !important; }
.pbg-photos.wp-block-gallery .wp-block-image { border-radius: var(--pbg-radius-m); overflow: hidden; }
.pbg-photos.wp-block-gallery .wp-block-image img { aspect-ratio: 4 / 3; object-fit: cover; transition: transform .6s var(--pbg-ease); }
.pbg-photos.wp-block-gallery .wp-block-image:hover img { transform: scale(1.04); }
@media (min-width: 782px) {
	.pbg-photos.wp-block-gallery .wp-block-image:first-child { width: calc(50% - .3rem) !important; flex-grow: 0; }
	.pbg-photos.wp-block-gallery .wp-block-image:first-child img { aspect-ratio: 4 / 3; height: 100%; }
}

/* Contact section */
.pbg-contact-card { background: #fff; border: 1px solid var(--pbg-line); border-radius: var(--pbg-radius-l); padding: clamp(1.5rem, 1rem + 2vw, 2.5rem) !important; }
.pbg-ci { margin: 0; display: grid; gap: .85rem; }
.pbg-ci__row { display: grid; grid-template-columns: 9rem 1fr; gap: 1rem; }
.pbg-ci dt { font-weight: 600; color: var(--pbg-muted); font-size: .92rem; }
.pbg-ci dd { margin: 0; }
.pbg-ci a { text-decoration: none; color: inherit; border-bottom: 1px solid var(--pbg-line); }
.pbg-ci a:hover { border-color: var(--pbg-gold); color: var(--pbg-gold-deep); }
.pbg-ci__map { margin-top: 1.25rem; }
.pbg-ci__nums { display: flex; flex-direction: column; align-items: flex-start; gap: .2rem; }
.pbg-ci__fax { color: var(--pbg-muted); }
.pbg-footer .pbg-ci__fax { color: #cfc8bb; }

/* Kontakt page: contact card + side column (violence report, social). */
.pbg-landing > .pbg-contact-layout { gap: clamp(1.5rem, 1rem + 2vw, 2.5rem); margin-top: 0; }
.pbg-contact-layout .pbg-contact-card h2 { font-size: var(--wp--preset--font-size--x-large); margin: 0 0 1.25rem; }
.pbg-contact-layout .pbg-ci { gap: 1.1rem; }
.pbg-contact-layout .pbg-ci__row { padding-bottom: 1.1rem; border-bottom: 1px solid var(--pbg-line); }
.pbg-contact-layout .pbg-ci__row:last-child { border-bottom: 0; padding-bottom: 0; }
.pbg-contact-layout .pbg-report-violence { margin-block: 0 1.25rem; flex-direction: column; gap: .25rem; padding: 1.25rem 1.4rem; }
.pbg-contact-social { border: 1px solid var(--pbg-line); border-radius: var(--pbg-radius-l); padding: 1.25rem 1.4rem; background: var(--pbg-ivory); }
.pbg-contact-social h2 { font-size: 1.15rem; margin: 0; }
.pbg-main .pbg-social a { border-color: var(--pbg-line); background: #fff; color: var(--pbg-ink); text-decoration: none; display: inline-flex; align-items: center; min-height: 40px; padding: 0 1rem; }
@media (hover: hover) { .pbg-main .pbg-social a:hover { border-color: var(--pbg-gold); color: var(--pbg-gold-deep); } }
@media (max-width: 781px) {
	.pbg-contact-layout > .wp-block-column { flex: 0 0 auto !important; width: 100%; }
}
@media (max-width: 520px) { .pbg-ci__row { grid-template-columns: 1fr; gap: .1rem; } }

/* Violence report — always visible, never decorative */
.pbg-report-violence {
	display: flex; flex-wrap: wrap; align-items: baseline; gap: .35rem 1rem; text-decoration: none;
	border: 1px solid rgba(242, 212, 138, .35); border-radius: var(--pbg-radius-m); padding: 1rem 1.25rem; margin-block: 2rem;
	color: #f2d48a !important; background: rgba(242, 212, 138, .06);
}
.pbg-report-violence__title { font-weight: 700; }
.pbg-report-violence__text { color: #cfc8bb; font-size: .95rem; }
.pbg-report-violence:hover { background: rgba(242, 212, 138, .12); }
.pbg-main .pbg-report-violence { color: var(--pbg-gold-deep) !important; border-color: #e8d7a8; background: #fbf5e4; }
.pbg-main .pbg-report-violence__text { color: var(--pbg-muted); }

/* FAQ (core details) */
.wp-block-details { border-bottom: 1px solid var(--pbg-line); padding: .9rem 0; }
.wp-block-details summary { cursor: pointer; font-weight: 600; font-size: 1.08rem; }
.wp-block-details[open] summary { color: var(--pbg-gold-deep); margin-bottom: .5rem; }

/* ---------------------------------------------------------------- Documents */
.pbg-doc-filter { display: flex; flex-wrap: wrap; gap: .6rem; align-items: center; margin-bottom: 1.75rem; padding: 1rem; background: var(--pbg-ivory); border: 1px solid var(--pbg-line); border-radius: var(--pbg-radius-m); }
.pbg-doc-filter label { font-weight: 600; font-size: .9rem; }
.pbg-doc-filter input, .pbg-doc-filter select { font: inherit; padding: .55rem .9rem; border: 1px solid var(--pbg-line); border-radius: 999px; background: #fff; min-width: 12rem; flex: 1 1 12rem; }
.pbg-doc-list { list-style: none; padding: 0; margin: 0; border-top: 1px solid var(--pbg-line); }
.pbg-doc-list__item a {
	display: grid; grid-template-columns: 3.25rem 1fr auto; gap: 1rem; align-items: center; padding: .9rem .5rem;
	border-bottom: 1px solid var(--pbg-line); text-decoration: none; color: var(--pbg-ink); transition: background-color .2s;
}
.pbg-doc-list__item a:hover { background: var(--pbg-ivory); }
.pbg-doc-list__icon {
	font-size: .7rem; font-weight: 700; letter-spacing: .06em; text-align: center; padding: .55rem 0; border-radius: var(--pbg-radius-s);
	background: var(--pbg-sand); color: var(--pbg-gold-deep);
}
.pbg-doc-list__title { font-weight: 500; line-height: 1.35; }
.pbg-doc-list__meta { color: var(--pbg-muted); font-size: .85rem; white-space: nowrap; }
@media (hover: none) { .pbg-doc-list__item a:hover { background: none; } }
@media (max-width: 600px) {
	/* Icon on the left spanning both lines; meta sits directly under the title. */
	.pbg-doc-list__item a { grid-template-columns: 2.75rem 1fr; grid-template-rows: auto auto; column-gap: .9rem; row-gap: .2rem; padding: .9rem .25rem; }
	.pbg-doc-list__icon { grid-row: 1 / span 2; align-self: center; }
	.pbg-doc-list__title { align-self: end; }
	.pbg-doc-list__meta { grid-column: 2; align-self: start; white-space: normal; }
	/* Filter: stacked fields, labels above inputs, full-width button. */
	.pbg-doc-filter { display: grid; grid-template-columns: 1fr; gap: .4rem; padding: 1rem; }
	.pbg-doc-filter label { margin-top: .35rem; }
	.pbg-doc-filter label:first-child { margin-top: 0; }
	.pbg-doc-filter input, .pbg-doc-filter select { min-width: 0; width: 100%; box-sizing: border-box; min-height: 46px; }
	.pbg-doc-filter .pbg-button { margin-top: .5rem; width: 100%; min-height: 46px; }
}
.pbg-doc-file { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem; padding: 1.25rem; border: 1px solid var(--pbg-line); border-radius: var(--pbg-radius-m); background: var(--pbg-ivory); margin-bottom: 2rem; }
.pbg-doc-file__meta { color: var(--pbg-muted); }

/* ---------------------------------------------------------------- Search */
.pbg-search-big { margin-top: 1.25rem; max-width: 640px; }
.pbg-page-hero > .pbg-search-big { max-width: 1240px; box-sizing: border-box; padding-right: max(0px, calc(min(100%, 1240px) - 640px)); }
.pbg-search-big .wp-block-search__inside-wrapper { border: 1px solid var(--pbg-line); border-radius: 999px; background: #fff; padding: .3rem; }
.pbg-search-big .wp-block-search__input { border: 0; padding: .55rem 1rem; font: inherit; background: transparent; }
.pbg-search-big .wp-block-search__button { border-radius: 999px; margin: 0; background: var(--pbg-ink); color: #fff; padding: .55rem 1.25rem; }
.pbg-result-list { list-style: none; padding: 0; max-width: 820px; }
.pbg-result { padding: 1.25rem 0; border-bottom: 1px solid var(--pbg-line); }
.pbg-result > * { margin: 0 !important; }
.pbg-result__title { font-size: 1.3rem !important; }
.pbg-result__title a { text-decoration: none; color: var(--pbg-ink); }
.pbg-result__title a:hover { color: var(--pbg-gold-deep); }
.pbg-result__excerpt { color: var(--pbg-muted); margin-top: .35rem !important; }
.pbg-result__date { margin-top: .35rem !important; }

/* 404 */
.pbg-404 { padding-block: clamp(3rem, 2rem + 6vw, 8rem); }
.pbg-404__code { font-family: var(--wp--preset--font-family--serif); font-size: clamp(4rem, 3rem + 6vw, 8rem); line-height: 1; color: var(--pbg-gold); margin: 0; }

/* ---------------------------------------------------------------- Footer */
.pbg-footer { background: var(--pbg-night); color: #c9c2b5; padding-top: clamp(3rem, 2rem + 4vw, 5.5rem) !important; padding-bottom: 1.5rem !important; font-size: .975rem; }
.pbg-footer a { color: #ece7dd; text-decoration: none; }
.pbg-footer a:hover { color: #f2d48a; text-decoration: underline; }
.pbg-footer__cols { gap: clamp(1.5rem, 1rem + 3vw, 4rem) !important; }
/* Brand: large round seal, school name underneath (centred on phones). */
.pbg-footer__brand { gap: 1rem; align-items: flex-start; }
.pbg-footer__brand > * { margin: 0; }
.pbg-footer__seal img {
	display: block; width: 112px !important; height: 112px !important; border-radius: 50%; background: #fff;
	box-shadow: 0 0 0 4px rgba(242, 212, 138, .22), 0 10px 30px rgba(0, 0, 0, .35);
	transition: box-shadow .3s var(--pbg-ease), transform .3s var(--pbg-ease);
}
.pbg-footer__seal a:hover img { box-shadow: 0 0 0 4px rgba(242, 212, 138, .5), 0 10px 30px rgba(0, 0, 0, .35); transform: scale(1.03); }
.pbg-footer .wp-block-site-title { font-size: 1.35rem; line-height: 1.25; max-width: 16ch; text-wrap: balance; }
.pbg-footer .wp-block-site-title a { color: #fff; }
.pbg-footer__slogan { font-family: var(--wp--preset--font-family--serif); font-style: italic; color: #f2e6c4; font-size: 1.15rem; margin-top: 1rem; }
.pbg-footer__title { font-family: var(--wp--preset--font-family--sans) !important; font-size: .8rem !important; letter-spacing: .14em; text-transform: uppercase; color: #f2d48a !important; margin-bottom: 1rem; }
.pbg-footer__links { list-style: none; padding: 0; margin: 0; display: grid; gap: .5rem; }
.pbg-footer .pbg-ci dt { color: #918a7e; }
.pbg-footer .pbg-ci a { border-color: rgba(255, 255, 255, .15); }
.pbg-footer .pbg-ci__row { grid-template-columns: 1fr; gap: .1rem; }
.pbg-social { list-style: none; padding: 0; margin: 1.25rem 0 0; display: flex; flex-wrap: wrap; gap: .5rem; }
.pbg-social a { display: inline-block; padding: .35rem .85rem; border: 1px solid rgba(255, 255, 255, .18); border-radius: 999px; font-size: .875rem; }
.pbg-social a:hover { border-color: #f2d48a; text-decoration: none; }
.pbg-footer__bottom { border-top: 1px solid rgba(255, 255, 255, .1); padding-top: 1.25rem; margin-top: 1rem; font-size: .875rem; color: #918a7e; }
.pbg-footer__bottom p { margin: 0; }
@media (max-width: 781px) {
	.pbg-footer__cols > .wp-block-column:first-child { text-align: center; padding-bottom: 1.75rem; border-bottom: 1px solid rgba(255, 255, 255, .1); }
	.pbg-footer__brand { align-items: center !important; }
	.pbg-footer__brand .wp-block-site-title { margin-inline: auto; }
	.pbg-footer__seal img { width: 128px !important; height: 128px !important; }
	.pbg-footer .pbg-social { justify-content: center; }
	.pbg-footer__bottom { text-align: center; }
	/* Brand and contact full width; the two link lists side by side. */
	.pbg-footer__cols { display: grid !important; grid-template-columns: 1fr 1fr; column-gap: 1.25rem !important; row-gap: 1.75rem !important; }
	.pbg-footer__cols > .wp-block-column { flex-basis: auto !important; min-width: 0; }
	.pbg-footer__cols > .wp-block-column:nth-child(-n+2) { grid-column: 1 / -1; }
}

/* ---------------------------------------------------------------- Icons
   Single-stroke line icons as CSS masks: they take the colour of `background-color`
   (normally currentColor or gold), need no extra requests and no markup changes.
   Generated by scripts – keep the set small and consistent (24px grid, 1.8 stroke). */
:root {
	--pbg-i-users: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='8' r='3.5'/%3E%3Cpath d='M2.5 20c.8-3.6 3.4-5.5 6.5-5.5s5.7 1.9 6.5 5.5'/%3E%3Ccircle cx='17' cy='9' r='2.5'/%3E%3Cpath d='M16.6 14.6c2.5.3 4.3 2 4.9 4.9'/%3E%3C/svg%3E");
	--pbg-i-calendar: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3.5' y='5' width='17' height='15.5' rx='2'/%3E%3Cpath d='M3.5 10h17M8 3v4M16 3v4M8 14h2M14 14h2M8 17h2'/%3E%3C/svg%3E");
	--pbg-i-spark: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3.5l2.6 5.3 5.9.9-4.3 4.1 1 5.8L12 16.8l-5.2 2.8 1-5.8-4.3-4.1 5.9-.9z'/%3E%3C/svg%3E");
	--pbg-i-award: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='9' r='5.5'/%3E%3Cpath d='M8.6 13.4L7 21l5-2.6 5 2.6-1.6-7.6'/%3E%3C/svg%3E");
	--pbg-i-scale: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 4v16M7.5 20h9M5 7h14M5 7l-2.8 6.2a2.8 2.8 0 0 0 5.6 0zM19 7l-2.8 6.2a2.8 2.8 0 0 0 5.6 0z'/%3E%3C/svg%3E");
	--pbg-i-shirt: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 3.5L3 6.5l2 4 2-1v11h10v-11l2 1 2-4-5-3c-.6 1.6-2.2 2.5-4 2.5S8.6 5.1 8 3.5z'/%3E%3C/svg%3E");
	--pbg-i-file: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8zM14 3v5h5M9 13h6M9 17h6'/%3E%3C/svg%3E");
	--pbg-i-shield: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7.5 3v5.5c0 4.6-3.2 8.3-7.5 9.5-4.3-1.2-7.5-4.9-7.5-9.5V6z'/%3E%3Cpath d='M9 12l2 2 4-4'/%3E%3C/svg%3E");
	--pbg-i-pin: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-6.5-5.6-6.5-11a6.5 6.5 0 0 1 13 0c0 5.4-6.5 11-6.5 11z'/%3E%3Ccircle cx='12' cy='10' r='2.3'/%3E%3C/svg%3E");
	--pbg-i-phone: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 4h3.5l1.8 4.5-2.3 1.4a11 11 0 0 0 6.1 6.1l1.4-2.3 4.5 1.8V19a1.5 1.5 0 0 1-1.6 1.5C10.6 20 4 13.4 3.5 5.6A1.5 1.5 0 0 1 5 4z'/%3E%3C/svg%3E");
	--pbg-i-mail: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5.5' width='18' height='13' rx='2'/%3E%3Cpath d='M3.5 7l8.5 6 8.5-6'/%3E%3C/svg%3E");
	--pbg-i-clock: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='8.5'/%3E%3Cpath d='M12 7.5V12l3 2'/%3E%3C/svg%3E");
	--pbg-i-facebook: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M14.5 8.5V7c0-.8.4-1.2 1.2-1.2H17.5V2.2C17 2.1 15.9 2 14.7 2 12 2 10.3 3.6 10.3 6.6v1.9H7.5v3.8h2.8V22h4.2v-9.7h3l.5-3.8z'/%3E%3C/svg%3E");
	--pbg-i-instagram: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='3' y='3' width='18' height='18' rx='5'/%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Ccircle cx='17.3' cy='6.7' r='.6' fill='black'/%3E%3C/svg%3E");
	--pbg-i-youtube: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill-rule='evenodd' d='M21.6 7.2a2.5 2.5 0 0 0-1.8-1.8C18.2 5 12 5 12 5s-6.2 0-7.8.4a2.5 2.5 0 0 0-1.8 1.8C2 8.8 2 12 2 12s0 3.2.4 4.8a2.5 2.5 0 0 0 1.8 1.8c1.6.4 7.8.4 7.8.4s6.2 0 7.8-.4a2.5 2.5 0 0 0 1.8-1.8c.4-1.6.4-4.8.4-4.8s0-3.2-.4-4.8zM10 15.2V8.8l5.4 3.2z'/%3E%3C/svg%3E");
	--pbg-i-arrow: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E");
	--pbg-i-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 6l6 6-6 6'/%3E%3C/svg%3E");
	--pbg-i-up: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 19V5M6 11l6-6 6 6'/%3E%3C/svg%3E");
	--pbg-i-landmark: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 21h18M5.5 21V10.5M18.5 21V10.5M9.5 21v-5.5h5V21M2.5 10.5L12 4l9.5 6.5z'/%3E%3C/svg%3E");
	--pbg-i-book: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 6.5C10 5 7 4.5 3.5 5v13c3.5-.5 6.5 0 8.5 1.5 2-1.5 5-2 8.5-1.5V5C17 4.5 14 5 12 6.5zM12 6.5v13'/%3E%3C/svg%3E");
	--pbg-i-globe: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='8.5'/%3E%3Cpath d='M3.5 12h17M12 3.5c2.4 2.5 3.5 5.3 3.5 8.5s-1.1 6-3.5 8.5c-2.4-2.5-3.5-5.3-3.5-8.5s1.1-6 3.5-8.5z'/%3E%3C/svg%3E");
	--pbg-ig-users: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23755600' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='8' r='3.5'/%3E%3Cpath d='M2.5 20c.8-3.6 3.4-5.5 6.5-5.5s5.7 1.9 6.5 5.5'/%3E%3Ccircle cx='17' cy='9' r='2.5'/%3E%3Cpath d='M16.6 14.6c2.5.3 4.3 2 4.9 4.9'/%3E%3C/svg%3E");
	--pbg-ig-calendar: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23755600' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3.5' y='5' width='17' height='15.5' rx='2'/%3E%3Cpath d='M3.5 10h17M8 3v4M16 3v4M8 14h2M14 14h2M8 17h2'/%3E%3C/svg%3E");
	--pbg-ig-spark: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23755600' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3.5l2.6 5.3 5.9.9-4.3 4.1 1 5.8L12 16.8l-5.2 2.8 1-5.8-4.3-4.1 5.9-.9z'/%3E%3C/svg%3E");
	--pbg-ig-award: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23755600' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='9' r='5.5'/%3E%3Cpath d='M8.6 13.4L7 21l5-2.6 5 2.6-1.6-7.6'/%3E%3C/svg%3E");
	--pbg-ig-scale: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23755600' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 4v16M7.5 20h9M5 7h14M5 7l-2.8 6.2a2.8 2.8 0 0 0 5.6 0zM19 7l-2.8 6.2a2.8 2.8 0 0 0 5.6 0z'/%3E%3C/svg%3E");
	--pbg-ig-shirt: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23755600' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 3.5L3 6.5l2 4 2-1v11h10v-11l2 1 2-4-5-3c-.6 1.6-2.2 2.5-4 2.5S8.6 5.1 8 3.5z'/%3E%3C/svg%3E");
	--pbg-ig-file: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23755600' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8zM14 3v5h5M9 13h6M9 17h6'/%3E%3C/svg%3E");
	--pbg-ig-shield: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23755600' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7.5 3v5.5c0 4.6-3.2 8.3-7.5 9.5-4.3-1.2-7.5-4.9-7.5-9.5V6z'/%3E%3Cpath d='M9 12l2 2 4-4'/%3E%3C/svg%3E");
	--pbg-ig-landmark: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23755600' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 21h18M5.5 21V10.5M18.5 21V10.5M9.5 21v-5.5h5V21M2.5 10.5L12 4l9.5 6.5z'/%3E%3C/svg%3E");
	--pbg-ig-book: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23755600' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 6.5C10 5 7 4.5 3.5 5v13c3.5-.5 6.5 0 8.5 1.5 2-1.5 5-2 8.5-1.5V5C17 4.5 14 5 12 6.5zM12 6.5v13'/%3E%3C/svg%3E");
	--pbg-ig-globe: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23755600' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='8.5'/%3E%3Cpath d='M3.5 12h17M12 3.5c2.4 2.5 3.5 5.3 3.5 8.5s-1.1 6-3.5 8.5c-2.4-2.5-3.5-5.3-3.5-8.5s1.1-6 3.5-8.5z'/%3E%3C/svg%3E");
	--pbg-iw-users: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='8' r='3.5'/%3E%3Cpath d='M2.5 20c.8-3.6 3.4-5.5 6.5-5.5s5.7 1.9 6.5 5.5'/%3E%3Ccircle cx='17' cy='9' r='2.5'/%3E%3Cpath d='M16.6 14.6c2.5.3 4.3 2 4.9 4.9'/%3E%3C/svg%3E");
	--pbg-iw-calendar: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3.5' y='5' width='17' height='15.5' rx='2'/%3E%3Cpath d='M3.5 10h17M8 3v4M16 3v4M8 14h2M14 14h2M8 17h2'/%3E%3C/svg%3E");
	--pbg-iw-spark: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3.5l2.6 5.3 5.9.9-4.3 4.1 1 5.8L12 16.8l-5.2 2.8 1-5.8-4.3-4.1 5.9-.9z'/%3E%3C/svg%3E");
	--pbg-iw-award: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='9' r='5.5'/%3E%3Cpath d='M8.6 13.4L7 21l5-2.6 5 2.6-1.6-7.6'/%3E%3C/svg%3E");
	--pbg-iw-scale: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 4v16M7.5 20h9M5 7h14M5 7l-2.8 6.2a2.8 2.8 0 0 0 5.6 0zM19 7l-2.8 6.2a2.8 2.8 0 0 0 5.6 0z'/%3E%3C/svg%3E");
	--pbg-iw-shirt: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 3.5L3 6.5l2 4 2-1v11h10v-11l2 1 2-4-5-3c-.6 1.6-2.2 2.5-4 2.5S8.6 5.1 8 3.5z'/%3E%3C/svg%3E");
	--pbg-iw-file: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8zM14 3v5h5M9 13h6M9 17h6'/%3E%3C/svg%3E");
	--pbg-iw-shield: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7.5 3v5.5c0 4.6-3.2 8.3-7.5 9.5-4.3-1.2-7.5-4.9-7.5-9.5V6z'/%3E%3Cpath d='M9 12l2 2 4-4'/%3E%3C/svg%3E");
	--pbg-iw-landmark: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 21h18M5.5 21V10.5M18.5 21V10.5M9.5 21v-5.5h5V21M2.5 10.5L12 4l9.5 6.5z'/%3E%3C/svg%3E");
	--pbg-iw-book: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 6.5C10 5 7 4.5 3.5 5v13c3.5-.5 6.5 0 8.5 1.5 2-1.5 5-2 8.5-1.5V5C17 4.5 14 5 12 6.5zM12 6.5v13'/%3E%3C/svg%3E");
	--pbg-iw-globe: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='8.5'/%3E%3Cpath d='M3.5 12h17M12 3.5c2.4 2.5 3.5 5.3 3.5 8.5s-1.1 6-3.5 8.5c-2.4-2.5-3.5-5.3-3.5-8.5s1.1-6 3.5-8.5z'/%3E%3C/svg%3E");
}
.pbg-ico, .pbg-ci dt::before, .is-style-pbg-links a::after, .pbg-footer__links a::before, .pbg-totop::before {
	-webkit-mask: var(--pbg-icon) center / contain no-repeat;
	mask: var(--pbg-icon) center / contain no-repeat;
}

/* Lists in content: gold diamond (echoes the arabesque of the emblem). */
.pbg-prose :is(ul.wp-block-list, ul:not([class])):not([class*="is-style-"]) { list-style: none; padding-left: 1.6em; }
.pbg-prose :is(ul.wp-block-list, ul:not([class])):not([class*="is-style-"]) > li { position: relative; }
.pbg-prose :is(ul.wp-block-list, ul:not([class])):not([class*="is-style-"]) > li::before {
	content: ""; position: absolute; left: -1.2em; top: .6em; width: .42em; height: .42em;
	background: var(--pbg-gold); transform: rotate(45deg); border-radius: 1px;
}
.pbg-prose li :is(ul.wp-block-list, ul:not([class])) > li::before { background: transparent; box-shadow: inset 0 0 0 1.5px var(--pbg-gold); }
.pbg-prose ol li::marker { color: var(--pbg-gold-deep); font-family: var(--wp--preset--font-family--serif); font-weight: 700; }

/* Check list: the existing tick, slightly richer. */
.is-style-pbg-checks li + li { margin-top: .55rem; }
.is-style-pbg-checks li::before { box-shadow: 0 0 0 4px rgba(198, 150, 51, .12); }

/* Pill links get a small arrow that moves on hover. */
.is-style-pbg-links a { display: inline-flex; align-items: center; gap: .45rem; transition: border-color .2s, color .2s, background-color .2s; }
.is-style-pbg-links a::after {
	--pbg-icon: var(--pbg-i-arrow); content: ""; width: .95em; height: .95em; background-color: var(--pbg-gold);
	transition: transform .25s var(--pbg-ease);
}
.is-style-pbg-links a:hover { background: #fffdf7; }
.is-style-pbg-links a:hover::after { transform: translateX(3px); }

/* Child-page list (core Page List with "Lista linkova" style): one card per child
   page, its own sub-pages listed inside with even spacing – no pills, no markers. */
ul.wp-block-page-list.is-style-pbg-links {
	display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 17rem), 1fr)); gap: 1rem; align-items: start;
	margin: 0; padding: 0 !important;
}
ul.wp-block-page-list.is-style-pbg-links li { margin: 0; padding: 0; list-style: none; }
ul.wp-block-page-list.is-style-pbg-links > li {
	background: #fff; border: 1px solid var(--pbg-line); border-radius: var(--pbg-radius-m); padding: 1.1rem 1.25rem;
	transition: border-color .25s, box-shadow .25s var(--pbg-ease);
}
ul.wp-block-page-list.is-style-pbg-links > li:hover { border-color: #d8ccb4; box-shadow: 0 12px 30px rgba(22, 21, 20, .07); }
ul.wp-block-page-list.is-style-pbg-links a {
	display: flex; align-items: center; gap: .45rem; padding: 0; border: 0; border-radius: 0; background: none; text-decoration: none;
}
ul.wp-block-page-list.is-style-pbg-links > li > a { justify-content: space-between; font-weight: 700; font-size: 1.08rem; color: var(--pbg-ink); }
ul.wp-block-page-list.is-style-pbg-links > li > a:hover { color: var(--pbg-gold-deep); background: none; }
ul.wp-block-page-list.is-style-pbg-links ul {
	display: grid; gap: .55rem; list-style: none;
	margin: .85rem 0 0; padding: .85rem 0 0 !important; border-top: 1px solid var(--pbg-line);
	position: static; background: none; border-radius: 0; box-shadow: none; min-width: 0;
}
ul.wp-block-page-list.is-style-pbg-links ul ul { margin: .55rem 0 0 .2rem; padding: 0 0 0 .9rem !important; border-top: 0; border-left: 2px solid var(--pbg-sand); gap: .45rem; }
ul.wp-block-page-list.is-style-pbg-links ul a { color: var(--pbg-muted); font-size: .98rem; line-height: 1.4; }
ul.wp-block-page-list.is-style-pbg-links ul > li > a::after { display: none; }
ul.wp-block-page-list.is-style-pbg-links ul a { align-items: flex-start; }
ul.wp-block-page-list.is-style-pbg-links ul > li > a::before {
	content: ""; width: .38em; height: .38em; flex: none; margin-top: .55em; background: var(--pbg-gold); transform: rotate(45deg); border-radius: 1px;
}
ul.wp-block-page-list.is-style-pbg-links ul ul > li > a::before { background: transparent; box-shadow: inset 0 0 0 1.5px var(--pbg-gold); }
ul.wp-block-page-list.is-style-pbg-links ul a:hover { color: var(--pbg-gold-deep); }

/* Quick links: icon in a soft circle, turns gold on hover; arrow slides in. */
.pbg-quick__item { padding-top: 1.35rem !important; overflow: hidden; }
.pbg-quick__item::before {
	content: ""; width: 2.75rem; height: 2.75rem; border-radius: 50%; flex: none; margin-bottom: .55rem;
	background: var(--pbg-q-icon, none) center / 1.45rem no-repeat, var(--pbg-sand);
	transition: background-color .3s var(--pbg-ease), transform .3s var(--pbg-ease);
}
@media (hover: hover) {
	.pbg-quick__item:hover::before { background: var(--pbg-q-icon-h, none) center / 1.45rem no-repeat, var(--pbg-gold-deep); transform: scale(1.06); }
}
.pbg-quick__item h3 { display: flex; align-items: baseline; justify-content: space-between; gap: .5rem; }
.pbg-quick__item h3 a { flex: 1; }
.pbg-quick__item h3::after {
	content: ""; width: 1rem; height: 1rem; flex: none; align-self: center; background-color: var(--pbg-gold);
	-webkit-mask: var(--pbg-i-arrow) center / contain no-repeat; mask: var(--pbg-i-arrow) center / contain no-repeat;
	opacity: 0; transform: translateX(-6px); transition: opacity .25s, transform .25s var(--pbg-ease);
}
@media (hover: hover) { .pbg-quick__item:hover h3::after { opacity: 1; transform: none; } }
.pbg-icon--users { --pbg-q-icon: var(--pbg-ig-users); --pbg-q-icon-h: var(--pbg-iw-users); }
.pbg-icon--calendar { --pbg-q-icon: var(--pbg-ig-calendar); --pbg-q-icon-h: var(--pbg-iw-calendar); }
.pbg-icon--spark { --pbg-q-icon: var(--pbg-ig-spark); --pbg-q-icon-h: var(--pbg-iw-spark); }
.pbg-icon--award { --pbg-q-icon: var(--pbg-ig-award); --pbg-q-icon-h: var(--pbg-iw-award); }
.pbg-icon--scale { --pbg-q-icon: var(--pbg-ig-scale); --pbg-q-icon-h: var(--pbg-iw-scale); }
.pbg-icon--shirt { --pbg-q-icon: var(--pbg-ig-shirt); --pbg-q-icon-h: var(--pbg-iw-shirt); }
.pbg-icon--file { --pbg-q-icon: var(--pbg-ig-file); --pbg-q-icon-h: var(--pbg-iw-file); }
.pbg-icon--shield { --pbg-q-icon: var(--pbg-ig-shield); --pbg-q-icon-h: var(--pbg-iw-shield); }
.pbg-icon--landmark { --pbg-q-icon: var(--pbg-ig-landmark); --pbg-q-icon-h: var(--pbg-iw-landmark); }
.pbg-icon--book { --pbg-q-icon: var(--pbg-ig-book); --pbg-q-icon-h: var(--pbg-iw-book); }
.pbg-icon--globe { --pbg-q-icon: var(--pbg-ig-globe); --pbg-q-icon-h: var(--pbg-iw-globe); }

/* Quick links without a known icon keep the old, text-only look. */
.pbg-quick__item:not([class*="pbg-icon--"])::before { display: none; }
/* Phones: one card per row – icon, title and text centred. */
@media (max-width: 600px) {
	.pbg-quick__item { align-items: center; text-align: center; }
	.pbg-quick__item h3 { justify-content: center; }
	.pbg-quick__item h3 a { flex: 0 1 auto; }
	.pbg-quick__item h3::after { display: none; }
}

/* Contact rows: icon before the label. */
.pbg-ci dt { display: flex; align-items: center; gap: .5rem; align-self: start; min-height: 1.6em; }
.pbg-ci dt::before { content: ""; width: 1.05rem; height: 1.05rem; flex: none; background-color: var(--pbg-gold); display: none; }
.pbg-ci__row--address dt::before { --pbg-icon: var(--pbg-i-pin); display: block; }
.pbg-ci__row--phone dt::before { --pbg-icon: var(--pbg-i-phone); display: block; }
.pbg-ci__row--email dt::before { --pbg-icon: var(--pbg-i-mail); display: block; }
.pbg-ci__row--hours dt::before { --pbg-icon: var(--pbg-i-clock); display: block; }
.pbg-footer .pbg-ci dt::before { background-color: #c69633; }

/* Footer links: small chevron that nudges on hover. */
.pbg-footer__links a { display: inline-flex; align-items: flex-start; gap: .4rem; }
.pbg-footer__links a::before {
	--pbg-icon: var(--pbg-i-chevron); content: ""; width: .8rem; height: .8rem; flex: none; margin-top: .38em; background-color: #c69633;
	transition: transform .2s var(--pbg-ease);
}
.pbg-footer__links a:hover::before { transform: translateX(2px); }

/* ---------------------------------------------------------------- Subtle motion */
/* Card titles: thin gold underline grows on hover. */
.pbg-card__title a {
	text-decoration: none;
	background: linear-gradient(var(--pbg-gold), var(--pbg-gold)) 0 100% / 0 1px no-repeat;
	transition: background-size .4s var(--pbg-ease), color .2s;
}
.pbg-card:hover .pbg-card__title a { background-size: 100% 1px; }

/* Program cards: gold line along the top edge on hover. */
.pbg-program::before {
	content: ""; position: absolute; top: -1px; left: 1.5rem; right: 1.5rem; height: 2px; background: var(--pbg-gold);
	transform: scaleX(0); transform-origin: left; transition: transform .45s var(--pbg-ease);
}
.pbg-program:hover::before { transform: scaleX(1); }
.pbg-program--accent::before { background: #f2d48a; }

/* Photos: soft warm veil on hover. */
.pbg-photos.wp-block-gallery .wp-block-image { position: relative; }
.pbg-photos.wp-block-gallery .wp-block-image::after {
	content: ""; position: absolute; inset: 0; pointer-events: none; border-radius: inherit;
	box-shadow: inset 0 0 0 0 rgba(198, 150, 51, 0); transition: box-shadow .35s var(--pbg-ease);
}
.pbg-photos.wp-block-gallery .wp-block-image:hover::after { box-shadow: inset 0 0 0 3px rgba(198, 150, 51, .85); }


/* Back to top (button created by theme.js). */
.pbg-totop {
	position: fixed; right: max(1rem, env(safe-area-inset-right)); bottom: max(1rem, env(safe-area-inset-bottom)); z-index: 50;
	width: 2.9rem; height: 2.9rem; border-radius: 50%; border: 1px solid var(--pbg-line); background: rgba(255, 255, 255, .94);
	box-shadow: 0 8px 24px rgba(22, 21, 20, .12); cursor: pointer; display: grid; place-items: center;
	opacity: 0; visibility: hidden; transform: translateY(8px);
	transition: opacity .3s, transform .3s var(--pbg-ease), visibility .3s, background-color .2s;
}
.pbg-totop::before { --pbg-icon: var(--pbg-i-up); content: ""; width: 1.2rem; height: 1.2rem; background-color: var(--pbg-gold-deep); }
.pbg-totop.is-shown { opacity: 1; visibility: visible; transform: none; }
.pbg-totop:hover { background: var(--pbg-ink); }
.pbg-totop:hover::before { background-color: #fff; }

/* Reading progress on single news (CSS scroll-driven animation; no JS, ignored where unsupported). */
@supports (animation-timeline: scroll()) {
	@media (prefers-reduced-motion: no-preference) {
		body.single-post::before {
			content: ""; position: fixed; inset: 0 0 auto 0; height: 3px; z-index: 100001; pointer-events: none;
			background: linear-gradient(90deg, var(--pbg-gold-deep), var(--wp--preset--color--gold-light));
			transform-origin: left; transform: scaleX(0);
			animation: pbg-progress linear both; animation-timeline: scroll(root);
		}
	}
}
@keyframes pbg-progress { to { transform: scaleX(1); } }

@media (prefers-reduced-motion: no-preference) {
	/* Hero text enters in a short, calm sequence. */
	.pbg-hero .wp-block-cover__inner-container > * { animation: pbg-rise .9s var(--pbg-ease) both; }
	.pbg-hero .wp-block-cover__inner-container > :nth-child(2) { animation-delay: .08s; }
	.pbg-hero .wp-block-cover__inner-container > :nth-child(3) { animation-delay: .16s; }
	.pbg-hero .wp-block-cover__inner-container > :nth-child(4) { animation-delay: .24s; }
	.pbg-hero .wp-block-cover__inner-container > :nth-child(n+5) { animation-delay: .32s; }

	/* Items of a revealed section appear one after another (index set by theme.js). */
	.js .pbg-reveal .pbg-stagger > * { opacity: 0; transform: translateY(14px); }
	.js .pbg-reveal.is-visible .pbg-stagger > * {
		opacity: 1; transform: none;
		transition: opacity .6s var(--pbg-ease) calc(var(--pbg-i, 0) * 70ms), transform .6s var(--pbg-ease) calc(var(--pbg-i, 0) * 70ms);
	}
	/* Eyebrow rule draws in. */
	.js .pbg-reveal .is-style-pbg-eyebrow::before { width: 0; transition: width .8s var(--pbg-ease) .15s; }
	.js .pbg-reveal.is-visible .is-style-pbg-eyebrow::before { width: 28px; }
	/* Gold frame behind the about photo settles into place. */
	.js .pbg-reveal .pbg-about__media::after { opacity: 0; transform: translate(-14px, -14px); transition: opacity .9s var(--pbg-ease) .25s, transform .9s var(--pbg-ease) .25s; }
	.js .pbg-reveal.is-visible .pbg-about__media::after { opacity: 1; transform: none; }
}
@keyframes pbg-rise { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: none; } }

/* ---------------------------------------------------------------- Reveal motion */
@media (prefers-reduced-motion: no-preference) {
	.js .pbg-reveal { opacity: 0; transform: translateY(18px); transition: opacity .7s var(--pbg-ease), transform .7s var(--pbg-ease); }
	.js .pbg-reveal.is-visible { opacity: 1; transform: none; }
}
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
	.pbg-card:hover, .pbg-program:hover, .pbg-quick__item:hover::before { transform: none; }
}

/* ---------------------------------------------------------------- Print */
@media print {
	.pbg-site-header, .pbg-footer, .pbg-topbar, .pbg-notice-bar, .pbg-related, .pbg-article__foot, .pbg-with-aside__aside { display: none !important; }
	.pbg-page-hero { background: none; border: 0; }
	a[href^="http"]::after { content: " (" attr(href) ")"; font-size: .8em; }
}

/* Editor-only niceties */
.editor-styles-wrapper .pbg-hero { min-height: 520px; }
.pbg-admin-hint { padding: .75rem 1rem; border: 1px dashed #c69633; border-radius: 8px; color: #755600; }

/* ==========================================================================
   School proposals (meetings 11. and 19. 2. 2026)
   ========================================================================== */

/* Hero variant "slogan": the motto in three languages on a dark field with
   an arabesque lattice built from the eight-pointed star of the school seal. */
.pbg-hero-slogan {
	--pbg-star: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='96' height='96' viewBox='0 0 96 96'%3E%3Cg fill='none' stroke='%23D7B46A' stroke-width='1.1'%3E%3Cpath d='M48 26 70 48 48 70 26 48Z'/%3E%3Cpath d='M32.4 32.4h31.2v31.2H32.4Z'/%3E%3Cpath d='M48 0v26M48 70v26M0 48h26M70 48h26M0 0l32.4 32.4M96 0 63.6 32.4M0 96l32.4-32.4M96 96 63.6 63.6'/%3E%3Ccircle cx='48' cy='48' r='7'/%3E%3C/g%3E%3C/svg%3E");
	position: relative;
	isolation: isolate;
	overflow: hidden;
	background: var(--pbg-ink);
	color: #f4efe6;
	text-align: center;
	padding-block: clamp(3.25rem, 2rem + 6vw, 7rem) !important;
	padding-inline: var(--pbg-gutter) !important;
}
.pbg-hero-slogan > * { position: relative; z-index: 1; }
.pbg-hero-slogan > .pbg-arabesque {
	position: absolute; inset: 0; z-index: 0; margin: 0 !important; max-width: none !important;
	background-image: var(--pbg-star);
	background-size: 96px 96px;
	background-position: center;
	opacity: .32;
	-webkit-mask-image: radial-gradient(ellipse 62% 70% at 50% 50%, transparent 35%, #000 100%);
	mask-image: radial-gradient(ellipse 62% 70% at 50% 50%, transparent 35%, #000 100%);
}
.pbg-hero-slogan p { margin-inline: auto !important; }
.pbg-hero-slogan__ar {
	font-family: var(--wp--preset--font-family--arabic);
	font-size: clamp(2.4rem, 1.6rem + 4vw, 4.5rem);
	line-height: 1.6;
	color: var(--wp--preset--color--gold-soft);
	margin: 0 !important;
}
.pbg-hero-slogan__bs {
	font-family: var(--wp--preset--font-family--serif);
	font-size: clamp(2rem, 1.3rem + 3.4vw, 3.75rem);
	font-weight: 500;
	line-height: 1.1;
	letter-spacing: -.01em;
	color: #fff;
	margin-top: .35rem !important;
	text-wrap: balance;
}
.pbg-hero-slogan__en {
	font-family: var(--wp--preset--font-family--serif);
	font-style: italic;
	font-size: clamp(1.1rem, .95rem + .8vw, 1.5rem);
	color: #e6dccb;
	margin-top: .6rem !important;
}
.pbg-hero-slogan__rule.wp-block-separator {
	width: 72px; border: 0; height: 2px; opacity: 1;
	background: var(--wp--preset--color--gold-soft);
	margin: clamp(1.5rem, 1rem + 2vw, 2.25rem) auto !important;
}
.pbg-hero-slogan__title.wp-block-heading {
	color: #fff;
	font-size: clamp(1.35rem, 1.1rem + 1.2vw, 2rem);
	font-weight: 600;
	margin: 0 auto !important;
}
.pbg-hero-slogan__eyebrow {
	font-size: .8125rem; font-weight: 600; letter-spacing: .14em; text-transform: uppercase;
	color: var(--wp--preset--color--gold-soft); margin-top: .5rem !important;
}
.pbg-hero-slogan__lead { max-width: 56ch; color: #ddd6c9; margin-top: 1rem !important; }
.pbg-hero-slogan .wp-block-buttons { justify-content: center; gap: .75rem; margin-top: 1.75rem !important; }
.pbg-hero-slogan .is-style-pbg-outline .wp-block-button__link { color: #fff; }
.pbg-hero-slogan .is-style-pbg-outline .wp-block-button__link:hover { background: #fff; color: var(--pbg-night); }
@media (max-width: 600px) {
	.pbg-hero-slogan > .pbg-arabesque { background-size: 72px 72px; opacity: .26; -webkit-mask-image: radial-gradient(ellipse 80% 60% at 50% 45%, transparent 40%, #000 100%); mask-image: radial-gradient(ellipse 80% 60% at 50% 45%, transparent 40%, #000 100%); }
	.pbg-hero-slogan .wp-block-buttons { flex-direction: column; align-items: stretch; }
	.pbg-hero-slogan .wp-block-button { width: 100%; }
}
@media (prefers-reduced-motion: no-preference) {
	.pbg-hero-slogan > :not(.pbg-arabesque) { animation: pbg-rise .9s var(--pbg-ease) both; }
	.pbg-hero-slogan > :nth-child(3) { animation-delay: .08s; }
	.pbg-hero-slogan > :nth-child(4) { animation-delay: .16s; }
	.pbg-hero-slogan > :nth-child(n+5) { animation-delay: .24s; }
}

/* Audience tags (Za koga) */
.pbg-tag {
	display: inline-block; padding: .15rem .6rem; border-radius: 999px;
	font-size: .75rem; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; line-height: 1.6;
	background: var(--pbg-sand); color: var(--pbg-ink); text-decoration: none;
}
a.pbg-tag:hover { background: var(--pbg-ink); color: #fff; }
.pbg-tag--roditelji { background: #f3e6c8; }
.pbg-tag--ucenici { background: #e4ece3; }
.pbg-tag--profesori { background: #e6e4ef; }

/* Event cards */
.pbg-events { display: grid; gap: .75rem; margin: 0; }
.pbg-event {
	display: grid; grid-template-columns: 4.25rem 1fr; gap: 1rem; align-items: start;
	padding: 1rem 1.1rem; background: #fff; border: 1px solid var(--pbg-line); border-radius: var(--pbg-radius-m);
	position: relative; transition: border-color .2s, box-shadow .2s;
}
.pbg-event:hover { border-color: var(--wp--preset--color--gold-soft); box-shadow: var(--wp--preset--shadow--soft); }
.pbg-event__date {
	display: grid; place-items: center; margin: 0; padding: .55rem 0 .5rem; border-radius: var(--pbg-radius-s);
	background: var(--pbg-ink); color: #fff; line-height: 1; text-align: center;
	border-bottom: 3px solid var(--wp--preset--color--gold-soft);
}
.pbg-event__day { font-family: var(--wp--preset--font-family--serif); font-size: 1.6rem; font-weight: 600; }
.pbg-event__month { font-size: .75rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; margin-top: .3rem; }
.pbg-event__body > * { margin: 0; }
.pbg-event__tags { display: flex; flex-wrap: wrap; gap: .35rem; margin-bottom: .4rem !important; }
.pbg-event__title { font-size: 1.1875rem; line-height: 1.3; }
.pbg-event__title a { color: var(--pbg-ink); text-decoration: none; }
.pbg-event__title a::after { content: ""; position: absolute; inset: 0; border-radius: inherit; }
.pbg-event__title a:focus-visible { outline: none; }
.pbg-event:focus-within { outline: 2px solid var(--pbg-gold); outline-offset: 3px; }
.pbg-event__meta { color: var(--pbg-muted); font-size: .9375rem; margin-top: .3rem !important; }
@media (min-width: 900px) {
	.pbg-events-section .pbg-events { grid-template-columns: repeat(2, 1fr); }
}
.pbg-events__empty { color: var(--pbg-muted); padding: 1.25rem; border: 1px dashed var(--pbg-line); border-radius: var(--pbg-radius-m); }
.pbg-events-section .wp-block-buttons { margin-top: 1.5rem; }

/* Events archive: audience filter */
.pbg-filter ul { display: flex; flex-wrap: wrap; gap: .5rem; list-style: none; margin: 0 0 1.5rem; padding: 0; }
.pbg-filter a {
	display: inline-flex; align-items: center; min-height: 40px; padding: 0 1rem; border-radius: 999px;
	border: 1px solid var(--pbg-line); color: var(--pbg-ink); text-decoration: none; font-weight: 500; background: #fff;
}
.pbg-filter a:hover { border-color: var(--pbg-ink); }
.pbg-filter a[aria-current="page"] { background: var(--pbg-ink); border-color: var(--pbg-ink); color: #fff; }
.pbg-events-archive > p:last-child { margin-top: 1.5rem; }

/* Single event */
.pbg-event-single { display: grid; gap: 0; margin: 0 0 1.75rem; border: 1px solid var(--pbg-line); border-radius: var(--pbg-radius-m); background: var(--pbg-ivory); }
.pbg-event-single > div { display: grid; grid-template-columns: 7rem 1fr; gap: 1rem; padding: .8rem 1.1rem; border-top: 1px solid var(--pbg-line); }
.pbg-event-single > div:first-child { border-top: 0; }
.pbg-event-single dt { font-weight: 600; color: var(--pbg-muted); }
.pbg-event-single dd { margin: 0; }
.pbg-event-single__past { padding: .6rem 1rem; background: var(--pbg-sand); border-radius: var(--pbg-radius-s); }

/* ---------------------------------------------------------------------------
   Desktop top bar (quick links + social icons) and menu split (12. 11. 2026):
   Vijesti, Kontakt, Alumni and Prijava nasilja sit in the dark top bar on
   desktop, so the main menu keeps one row next to the logo. Phones keep the
   full overlay menu, with an icon per item.
   ------------------------------------------------------------------------- */
.pbg-topbar__link { display: inline-flex; align-items: center; gap: .45rem; min-height: 32px; white-space: nowrap; }
.pbg-topbar__link::before {
	content: ""; flex: none; width: 15px; height: 15px; background-color: #f2d48a;
	-webkit-mask: var(--pbg-n-news) center / contain no-repeat; mask: var(--pbg-n-news) center / contain no-repeat;
	transition: transform .25s var(--pbg-ease);
}
.pbg-topbar__link--contact::before { -webkit-mask-image: var(--pbg-n-contact); mask-image: var(--pbg-n-contact); }
.pbg-topbar__link--alumni::before { -webkit-mask-image: var(--pbg-n-alumni); mask-image: var(--pbg-n-alumni); }
.pbg-topbar__link--safety::before { -webkit-mask-image: var(--pbg-n-safety); mask-image: var(--pbg-n-safety); }
@media (hover: hover) { .pbg-topbar__link:hover::before { transform: translateY(-1px) scale(1.12); } }
.pbg-topbar__link--safety { color: #f2d48a !important; font-weight: 600; }
@media (max-width: 1239px) { .pbg-topbar { display: none; } }
@media (min-width: 1240px) {
	.pbg-header .pbg-mobile-only { display: none !important; }
	.pbg-header .wp-block-navigation__container { gap: .1rem !important; }
	.pbg-header .wp-block-navigation .wp-block-navigation-item__content { padding-inline: .6rem; }
}

/* Phone / tablet overlay menu: icon (gold, in a soft circle) before every main item. */
.pbg-header .is-menu-open li.pbg-ni > .wp-block-navigation-item__content {
	display: flex !important; align-items: center; gap: .9rem;
}
.pbg-header .is-menu-open li.pbg-ni > .wp-block-navigation-item__content::before {
	content: ""; flex: none; width: 2.5rem; height: 2.5rem; border-radius: 50%;
	background: var(--pbg-ivory) var(--pbg-nc-news) center / 1.3rem no-repeat;
	box-shadow: inset 0 0 0 1px var(--pbg-line);
	transition: background-color .25s, box-shadow .25s, transform .25s var(--pbg-ease);
}
.pbg-header .is-menu-open li.pbg-ni--school > .wp-block-navigation-item__content::before { background-image: var(--pbg-nc-school); }
.pbg-header .is-menu-open li.pbg-ni--learn > .wp-block-navigation-item__content::before { background-image: var(--pbg-nc-learn); }
.pbg-header .is-menu-open li.pbg-ni--enrol > .wp-block-navigation-item__content::before { background-image: var(--pbg-nc-enrol); }
.pbg-header .is-menu-open li.pbg-ni--students > .wp-block-navigation-item__content::before { background-image: var(--pbg-nc-students); }
.pbg-header .is-menu-open li.pbg-ni--rules > .wp-block-navigation-item__content::before { background-image: var(--pbg-nc-rules); }
.pbg-header .is-menu-open li.pbg-ni--tenders > .wp-block-navigation-item__content::before { background-image: var(--pbg-nc-tenders); }
.pbg-header .is-menu-open li.pbg-ni--safety > .wp-block-navigation-item__content::before { background-image: var(--pbg-nc-safety); }
.pbg-header .is-menu-open li.pbg-ni--alumni > .wp-block-navigation-item__content::before { background-image: var(--pbg-nc-alumni); }
/* Open or current section: warmer circle with a gold ring. */
.pbg-header .is-menu-open li.pbg-ni.is-pbg-open > .wp-block-navigation-item__content::before,
.pbg-header .is-menu-open li.pbg-ni.current-menu-item > .wp-block-navigation-item__content::before,
.pbg-header .is-menu-open li.pbg-ni.current-menu-ancestor > .wp-block-navigation-item__content::before {
	background-color: #f3e6c8; box-shadow: inset 0 0 0 1.5px var(--wp--preset--color--gold-soft);
}
@media (prefers-reduced-motion: no-preference) {
	.pbg-header .is-menu-open li.pbg-ni > .wp-block-navigation-item__content::before {
		animation: pbg-icon-pop .6s cubic-bezier(.34, 1.56, .64, 1) both;
		animation-delay: calc(160ms + var(--pbg-i, 0) * 45ms);
	}
	.pbg-header .is-menu-open li.pbg-ni.is-pbg-open > .wp-block-navigation-item__content::before { animation: pbg-icon-nudge .45s var(--pbg-ease) both; }
	.pbg-header .is-menu-open li.pbg-ni > .wp-block-navigation-item__content:active::before { transform: scale(.9); }
}
@keyframes pbg-icon-pop { from { opacity: 0; transform: scale(.3) rotate(-30deg); } to { opacity: 1; transform: none; } }
@keyframes pbg-icon-nudge { 0% { transform: none; } 40% { transform: rotate(-12deg) scale(1.1); } to { transform: none; } }

/* Menu icons (Lucide v0.460.0, ISC licence), used as CSS masks: mobile menu and desktop top bar. */
:root {
	--pbg-n-news: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 22h16a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H8a2 2 0 0 0-2 2v16a2 2 0 0 1-2 2Zm0 0a2 2 0 0 1-2-2v-9c0-1.1.9-2 2-2h2'/%3E%3Cpath d='M18 14h-8'/%3E%3Cpath d='M15 18h-5'/%3E%3Cpath d='M10 6h8v4h-8V6Z'/%3E%3C/svg%3E");
	--pbg-nc-news: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23755600' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 22h16a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H8a2 2 0 0 0-2 2v16a2 2 0 0 1-2 2Zm0 0a2 2 0 0 1-2-2v-9c0-1.1.9-2 2-2h2'/%3E%3Cpath d='M18 14h-8'/%3E%3Cpath d='M15 18h-5'/%3E%3Cpath d='M10 6h8v4h-8V6Z'/%3E%3C/svg%3E");
	--pbg-n-school: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='3' x2='21' y1='22' y2='22'/%3E%3Cline x1='6' x2='6' y1='18' y2='11'/%3E%3Cline x1='10' x2='10' y1='18' y2='11'/%3E%3Cline x1='14' x2='14' y1='18' y2='11'/%3E%3Cline x1='18' x2='18' y1='18' y2='11'/%3E%3Cpolygon points='12 2 20 7 4 7'/%3E%3C/svg%3E");
	--pbg-nc-school: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23755600' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='3' x2='21' y1='22' y2='22'/%3E%3Cline x1='6' x2='6' y1='18' y2='11'/%3E%3Cline x1='10' x2='10' y1='18' y2='11'/%3E%3Cline x1='14' x2='14' y1='18' y2='11'/%3E%3Cline x1='18' x2='18' y1='18' y2='11'/%3E%3Cpolygon points='12 2 20 7 4 7'/%3E%3C/svg%3E");
	--pbg-n-learn: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 7v14'/%3E%3Cpath d='M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z'/%3E%3C/svg%3E");
	--pbg-nc-learn: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23755600' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 7v14'/%3E%3Cpath d='M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z'/%3E%3C/svg%3E");
	--pbg-n-enrol: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20h9'/%3E%3Cpath d='M16.376 3.622a1 1 0 0 1 3.002 3.002L7.368 18.635a2 2 0 0 1-.855.506l-2.872.838a.5.5 0 0 1-.62-.62l.838-2.872a2 2 0 0 1 .506-.854z'/%3E%3Cpath d='m15 5 3 3'/%3E%3C/svg%3E");
	--pbg-nc-enrol: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23755600' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20h9'/%3E%3Cpath d='M16.376 3.622a1 1 0 0 1 3.002 3.002L7.368 18.635a2 2 0 0 1-.855.506l-2.872.838a.5.5 0 0 1-.62-.62l.838-2.872a2 2 0 0 1 .506-.854z'/%3E%3Cpath d='m15 5 3 3'/%3E%3C/svg%3E");
	--pbg-n-students: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='9' cy='7' r='4'/%3E%3Cpath d='M22 21v-2a4 4 0 0 0-3-3.87'/%3E%3Cpath d='M16 3.13a4 4 0 0 1 0 7.75'/%3E%3C/svg%3E");
	--pbg-nc-students: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23755600' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='9' cy='7' r='4'/%3E%3Cpath d='M22 21v-2a4 4 0 0 0-3-3.87'/%3E%3Cpath d='M16 3.13a4 4 0 0 1 0 7.75'/%3E%3C/svg%3E");
	--pbg-n-rules: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m16 16 3-8 3 8c-.87.65-1.92 1-3 1s-2.13-.35-3-1Z'/%3E%3Cpath d='m2 16 3-8 3 8c-.87.65-1.92 1-3 1s-2.13-.35-3-1Z'/%3E%3Cpath d='M7 21h10'/%3E%3Cpath d='M12 3v18'/%3E%3Cpath d='M3 7h2c2 0 5-1 7-2 2 1 5 2 7 2h2'/%3E%3C/svg%3E");
	--pbg-nc-rules: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23755600' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m16 16 3-8 3 8c-.87.65-1.92 1-3 1s-2.13-.35-3-1Z'/%3E%3Cpath d='m2 16 3-8 3 8c-.87.65-1.92 1-3 1s-2.13-.35-3-1Z'/%3E%3Cpath d='M7 21h10'/%3E%3Cpath d='M12 3v18'/%3E%3Cpath d='M3 7h2c2 0 5-1 7-2 2 1 5 2 7 2h2'/%3E%3C/svg%3E");
	--pbg-n-tenders: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z'/%3E%3Cpath d='M14 2v4a2 2 0 0 0 2 2h4'/%3E%3Cpath d='M10 9H8'/%3E%3Cpath d='M16 13H8'/%3E%3Cpath d='M16 17H8'/%3E%3C/svg%3E");
	--pbg-nc-tenders: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23755600' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z'/%3E%3Cpath d='M14 2v4a2 2 0 0 0 2 2h4'/%3E%3Cpath d='M10 9H8'/%3E%3Cpath d='M16 13H8'/%3E%3Cpath d='M16 17H8'/%3E%3C/svg%3E");
	--pbg-n-safety: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z'/%3E%3Cpath d='M12 8v4'/%3E%3Cpath d='M12 16h.01'/%3E%3C/svg%3E");
	--pbg-nc-safety: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23755600' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z'/%3E%3Cpath d='M12 8v4'/%3E%3Cpath d='M12 16h.01'/%3E%3C/svg%3E");
	--pbg-n-alumni: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21.42 10.922a1 1 0 0 0-.019-1.838L12.83 5.18a2 2 0 0 0-1.66 0L2.6 9.08a1 1 0 0 0 0 1.832l8.57 3.908a2 2 0 0 0 1.66 0z'/%3E%3Cpath d='M22 10v6'/%3E%3Cpath d='M6 12.5V16a6 3 0 0 0 12 0v-3.5'/%3E%3C/svg%3E");
	--pbg-nc-alumni: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23755600' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21.42 10.922a1 1 0 0 0-.019-1.838L12.83 5.18a2 2 0 0 0-1.66 0L2.6 9.08a1 1 0 0 0 0 1.832l8.57 3.908a2 2 0 0 0 1.66 0z'/%3E%3Cpath d='M22 10v6'/%3E%3Cpath d='M6 12.5V16a6 3 0 0 0 12 0v-3.5'/%3E%3C/svg%3E");
	--pbg-n-contact: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21.2 8.4c.5.38.8.97.8 1.6v10a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V10a2 2 0 0 1 .8-1.6l8-6a2 2 0 0 1 2.4 0l8 6Z'/%3E%3Cpath d='m22 10-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 10'/%3E%3C/svg%3E");
	--pbg-nc-contact: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23755600' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21.2 8.4c.5.38.8.97.8 1.6v10a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V10a2 2 0 0 1 .8-1.6l8-6a2 2 0 0 1 2.4 0l8 6Z'/%3E%3Cpath d='m22 10-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 10'/%3E%3C/svg%3E");
}

/* ---------------------------------------------------------------------------
   Phone / tablet menu as a side drawer: the page stays visible, dimmed and
   blurred behind; the panel slides in from the right and the rows follow one
   after another. Motion runs for everyone (it shows where the menu comes
   from); with "reduce motion" it is shorter and without travel.
   ------------------------------------------------------------------------- */
.pbg-header .wp-block-navigation__responsive-container.is-menu-open {
	background: rgba(22, 21, 20, .42) !important;
	-webkit-backdrop-filter: blur(5px);
	backdrop-filter: blur(5px);
	padding: 0 !important;
	overflow: hidden;
	animation: pbg-backdrop-in .3s ease-out both !important;
}
.pbg-header .is-menu-open .wp-block-navigation__responsive-close {
	position: relative;
	margin: 0 0 0 auto !important;
	max-width: none !important;
	width: min(86vw, 380px);
	height: 100%;
	overflow-y: auto;
	overscroll-behavior: contain;
	padding: 1rem 1.25rem 2.5rem;
	background: linear-gradient(165deg, #fff 0%, #fff 55%, var(--pbg-ivory) 100%);
	box-shadow: -18px 0 48px rgba(22, 21, 20, .22);
	animation: pbg-drawer-in .45s cubic-bezier(.22, 1, .36, 1) both;
}
.pbg-header .is-menu-open .wp-block-navigation__responsive-dialog { margin: 0 !important; }
.pbg-header .is-menu-open .wp-block-navigation__responsive-container-content { padding-top: 3.75rem !important; }
.pbg-header .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content { font-size: 1.2rem; }
.pbg-header .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item,
.pbg-header .is-menu-open .pbg-menu-extra > * {
	animation: pbg-row-in .5s cubic-bezier(.22, 1, .36, 1) both !important;
	animation-delay: calc(160ms + var(--pbg-i, 0) * 55ms) !important;
}
.pbg-header .is-menu-open li.pbg-ni > .wp-block-navigation-item__content::before {
	animation: pbg-icon-pop .6s cubic-bezier(.34, 1.56, .64, 1) both;
	animation-delay: calc(240ms + var(--pbg-i, 0) * 55ms);
}
.pbg-header .is-menu-open .wp-block-navigation__responsive-container-close { animation: pbg-close-in .4s .2s cubic-bezier(.22, 1, .36, 1) both !important; }
@keyframes pbg-backdrop-in { from { background-color: rgba(22, 21, 20, 0); -webkit-backdrop-filter: blur(0); backdrop-filter: blur(0); } }
@keyframes pbg-drawer-in { from { transform: translateX(100%); } to { transform: none; } }
@keyframes pbg-row-in { from { opacity: 0; transform: translateX(32px); } to { opacity: 1; transform: none; } }
@keyframes pbg-close-in { from { opacity: 0; transform: rotate(-90deg) scale(.6); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) {
	.pbg-header .is-menu-open .wp-block-navigation__responsive-close { animation: pbg-fade-in .2s ease-out both; }
	.pbg-header .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item,
	.pbg-header .is-menu-open .pbg-menu-extra > *,
	.pbg-header .is-menu-open li.pbg-ni > .wp-block-navigation-item__content::before,
	.pbg-header .is-menu-open .wp-block-navigation__responsive-container-close { animation: pbg-fade-in .25s ease-out both !important; }
}
@keyframes pbg-fade-in { from { opacity: 0; } to { opacity: 1; } }
.pbg-header .wp-block-navigation__responsive-container-close, .pbg-header .wp-block-navigation__responsive-container-open, .pbg-header .pbg-acc { -webkit-tap-highlight-color: transparent; }

/* ---------------------------------------------------------------------------
   Nastavni proces: two programmes, colour-coded and clearly separated.
   Curriculum A (gimnazija) = gold, Curriculum B (Cambridge) = bordo (school
   palette). Phones: stacked cards, quick jump buttons at the top.
   ------------------------------------------------------------------------- */
.pbg-curr, .pbg-cie { --pbg-a: #755600; --pbg-a-tint: #fbf5e6; --pbg-a-band: #f3e6c8; --pbg-b: #8a1d23; --pbg-b-tint: #fbf1f1; --pbg-b-band: #f4dede; }
.pbg-curr__jump { display: grid !important; grid-template-columns: 1fr 1fr; gap: .6rem; margin-block: 1.25rem 1.5rem !important; }
.pbg-curr__jump > p { margin: 0 !important; }
.pbg-jump {
	display: flex; flex-direction: column; justify-content: center; min-height: 64px; padding: .7rem 1rem;
	border-radius: var(--pbg-radius-m); text-decoration: none !important; font-weight: 700; font-size: 1rem; line-height: 1.25;
	color: #fff !important; transition: transform .2s var(--pbg-ease), box-shadow .2s;
}
.pbg-jump span { font-weight: 500; font-size: .8125rem; opacity: .85; text-transform: uppercase; letter-spacing: .06em; }
.pbg-jump--a { background: #755600; }
.pbg-jump--b { background: #8a1d23; }
.pbg-jump:hover { transform: translateY(-2px); box-shadow: var(--wp--preset--shadow--soft); }

.pbg-curr { display: grid !important; gap: 1.25rem; margin-block: 0 2rem !important; }
@media (min-width: 900px) { .pbg-curr { grid-template-columns: 1fr 1fr; align-items: start; } }
.pbg-curr > * { margin: 0 !important; }
.pbg-curr__card {
	--c: var(--pbg-a); --tint: var(--pbg-a-tint); --band: var(--pbg-a-band);
	scroll-margin-top: 110px; border-radius: var(--pbg-radius-l); overflow: hidden;
	background: var(--tint); border: 1px solid color-mix(in srgb, var(--c) 22%, transparent);
	box-shadow: 0 1px 2px rgba(22, 21, 20, .05);
}
.pbg-curr--b { --c: var(--pbg-b); --tint: var(--pbg-b-tint); --band: var(--pbg-b-band); }
.pbg-curr__head { position: relative; padding: 1.4rem 1.4rem 1.2rem; background: var(--band); border-bottom: 4px solid var(--c); }
.pbg-curr__head > * { margin: 0 !important; }
.pbg-curr__tag {
	display: inline-block; padding: .2rem .65rem; border-radius: 999px; background: var(--c); color: #fff;
	font-size: .75rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase;
}
.pbg-curr__title.wp-block-heading { font-size: clamp(1.7rem, 1.4rem + 1.2vw, 2.25rem); color: var(--c); margin-top: .6rem !important; }
.pbg-curr__sub { font-weight: 600; color: var(--pbg-ink); margin-top: .2rem !important; }
.pbg-curr__body { padding: 1.25rem 1.4rem 1.4rem; }
.pbg-curr__body > * { margin-block: 0 .9rem !important; }
.pbg-curr__body .is-style-pbg-checks li { margin-bottom: .55rem; }
.pbg-curr__body .is-style-pbg-checks li::before { background-color: #fff; box-shadow: inset 0 0 0 1.5px var(--c); }
.pbg-curr__levels { display: grid !important; grid-template-columns: 1fr 1fr; gap: .6rem; }
.pbg-curr__level {
	margin: 0 !important; padding: .8rem .9rem; border-radius: var(--pbg-radius-m); background: #fff;
	border-left: 4px solid var(--c); font-size: .9375rem; line-height: 1.35;
}
.pbg-curr__level strong { display: block; font-family: var(--wp--preset--font-family--serif); font-size: 1.2rem; color: var(--c); margin-bottom: .15rem; }
.pbg-curr__note { padding: .75rem .9rem; border-radius: var(--pbg-radius-m); background: #fff; font-size: .9375rem; }
.pbg-curr__more { margin: 1.1rem 0 0 !important; }
.pbg-curr__more a {
	display: inline-flex; align-items: center; gap: .5rem; min-height: 44px; padding: 0 1.1rem; border-radius: 999px;
	background: var(--c); color: #fff !important; font-weight: 600; text-decoration: none;
}
.pbg-curr__more a::after { content: "→"; transition: transform .2s var(--pbg-ease); }
.pbg-curr__more a:hover::after { transform: translateX(3px); }

.pbg-cie { margin-block: 0 2.25rem !important; padding: 1.5rem 1.4rem; border-radius: var(--pbg-radius-l); background: var(--pbg-b); color: #f8eeee; }
.pbg-cie > * { margin: 0 !important; }
.pbg-cie__tag { font-size: .75rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: #f2d48a; }
.pbg-cie__title.wp-block-heading { color: #fff; font-size: clamp(1.4rem, 1.2rem + .9vw, 1.85rem); margin-top: .35rem !important; }
.pbg-cie__grid { display: grid !important; gap: .75rem; margin-top: 1.1rem !important; }
@media (min-width: 900px) { .pbg-cie__grid { grid-template-columns: repeat(3, 1fr); } }
.pbg-cie__item { padding: 1rem 1.05rem; border-radius: var(--pbg-radius-m); background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .14); }
.pbg-cie__item > * { margin: 0 !important; }
.pbg-cie__item p { font-size: .9375rem; line-height: 1.5; }
.pbg-cie__figure { font-family: var(--wp--preset--font-family--serif); font-size: 1.25rem !important; font-weight: 600; color: #f2d48a; margin-bottom: .35rem !important; }
.pbg-curr__more-title.wp-block-heading { font-size: var(--wp--preset--font-size--large); }
@media (max-width: 420px) {
	.pbg-curr__head, .pbg-curr__body { padding-inline: 1.1rem; }
	.pbg-curr__levels { grid-template-columns: 1fr; }
}
.pbg-cie__grid > *, .pbg-curr__levels > *, .pbg-curr__jump > *, .pbg-curr > * { margin-block: 0 !important; }
.pbg-curr__more-title.wp-block-heading { margin-bottom: 1rem !important; }

/* ---------------------------------------------------------------------------
   Front page "Naši programi": colour-coded like the Nastavni proces page.
   gold = gimnazija, mix = gimnazija + Cambridge, bordo = Cambridge,
   bordo-fill / dark = highlighted card.
   ------------------------------------------------------------------------- */
.pbg-program--gold, .pbg-program--mix, .pbg-program--bordo, .pbg-program--bordo-fill, .pbg-program--dark {
	--c: #755600; --tint: #fbf5e6; --band: #755600;
	overflow: hidden; padding-top: 2.1rem !important; background: var(--tint); border-color: color-mix(in srgb, var(--c) 20%, transparent);
}
.pbg-program--mix { --c: #8a1d23; --tint: #fcf4f0; --band: linear-gradient(90deg, #755600 0 50%, #8a1d23 50% 100%); }
.pbg-program--bordo { --c: #8a1d23; --tint: #fbf1f1; --band: #8a1d23; }
.pbg-program--bordo-fill { --c: #f2d48a; --tint: #8a1d23; --band: #f2d48a; border-color: #8a1d23; color: #f8eeee; }
.pbg-program--dark { --c: #f2d48a; --tint: var(--pbg-night); --band: #f2d48a; }
/* Colour band along the top (always visible; grows a little on hover). */
.pbg-program--gold::before, .pbg-program--mix::before, .pbg-program--bordo::before, .pbg-program--bordo-fill::before, .pbg-program--dark::before {
	left: 0; right: 0; top: 0; height: 6px; background: var(--band); transform: none; transition: height .3s var(--pbg-ease);
}
.pbg-program--gold:hover::before, .pbg-program--mix:hover::before, .pbg-program--bordo:hover::before, .pbg-program--bordo-fill:hover::before, .pbg-program--dark:hover::before { height: 9px; }
.pbg-program--gold .pbg-program__tag, .pbg-program--mix .pbg-program__tag, .pbg-program--bordo .pbg-program__tag {
	align-self: flex-start; padding: .22rem .65rem; border-radius: 999px; background: var(--c); color: #fff;
	font-size: .7rem; letter-spacing: .09em;
}
.pbg-program--mix .pbg-program__tag { background: linear-gradient(90deg, #755600, #8a1d23); }
.pbg-program--gold h3, .pbg-program--mix h3, .pbg-program--bordo h3 { color: var(--c); }
.pbg-program--gold .pbg-program__more a, .pbg-program--mix .pbg-program__more a, .pbg-program--bordo .pbg-program__more a { color: var(--c); }
.pbg-program--bordo-fill h3 { color: #fff; }
.pbg-program--bordo-fill p:not(.pbg-program__tag):not(.pbg-program__more) { color: #f1dcdc; }
.pbg-program--bordo-fill .pbg-program__tag, .pbg-program--bordo-fill a { color: #f2d48a; }
.pbg-program__more a { display: inline-flex; align-items: center; gap: .35rem; }
.pbg-program__more a span, .pbg-program__more a { transition: gap .25s var(--pbg-ease); }
.pbg-program:hover .pbg-program__more a { gap: .6rem; }
@media (min-width: 782px) and (max-width: 1099px) {
	.pbg-programs { display: grid !important; grid-template-columns: 1fr 1fr; }
	.pbg-programs > .wp-block-column { margin: 0 !important; }
}

/* Nastavni programi (brochure as text): three programmes A / B / C. */
.pbg-curr--mix { --c: #8a1d23; --tint: #fcf4f0; --band: #f6e6dc; }
.pbg-curr--mix .pbg-curr__head { border-bottom: 0; box-shadow: inset 0 -4px 0 0 transparent; background-image: linear-gradient(90deg, #755600 0 50%, #8a1d23 50% 100%); background-size: 100% 4px; background-repeat: no-repeat; background-position: bottom; background-color: var(--band); }
.pbg-curr--mix .pbg-curr__tag { background: linear-gradient(90deg, #755600, #8a1d23); }
.pbg-curr--c { --c: var(--pbg-b); --tint: var(--pbg-b-tint); --band: var(--pbg-b-band); }
.pbg-curr--stack { grid-template-columns: 1fr !important; }
.pbg-curr__body.has-media { display: grid !important; gap: 1rem; }
.pbg-curr__body.has-media > * { margin: 0 !important; }
.pbg-curr__media { margin: 0 !important; }
.pbg-curr__media img { width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; border-radius: var(--pbg-radius-m); display: block; }
.pbg-curr__text > * { margin-block: 0 .9rem !important; }
.pbg-curr__text > :last-child { margin-bottom: 0 !important; }
@media (min-width: 782px) {
	.pbg-curr__body.has-media { grid-template-columns: minmax(0, 1fr) 15rem; align-items: start; }
	.pbg-curr__body.has-media > .pbg-curr__media { order: 2; position: sticky; top: 120px; }
}
.pbg-curr__more--foot { margin: 0 !important; padding: 0 1.4rem 1.4rem; }
.pbg-curr__jump--3 { grid-template-columns: repeat(3, 1fr); }
.pbg-jump--mix { background: linear-gradient(120deg, #755600, #8a1d23); }
@media (max-width: 480px) {
	.pbg-curr__jump--3 .pbg-jump { padding: .6rem .7rem; font-size: .9375rem; }
	.pbg-curr__jump--3 .pbg-jump span { font-size: .7rem; }
}
.pbg-cie__list { list-style: none; padding: 0 !important; margin-top: 1.1rem !important; display: grid; gap: .6rem; }
@media (min-width: 782px) { .pbg-cie__list { grid-template-columns: 1fr 1fr; } }
.pbg-cie__list li {
	position: relative; margin: 0; padding: .8rem .9rem .8rem 2.4rem; border-radius: var(--pbg-radius-m);
	background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .14); font-size: .9375rem; line-height: 1.5;
}
.pbg-cie__list li::before {
	content: ""; position: absolute; left: .85rem; top: 1.05rem; width: .9rem; height: .9rem; border-radius: 2px;
	background: #f2d48a; transform: rotate(45deg) scale(.7);
}
.pbg-cie__list strong { color: #fff; }
.pbg-curr__source { font-size: .875rem; color: var(--pbg-muted); margin-top: 1.5rem !important; }
.pbg-cie ul.pbg-cie__list > li::before { left: .9rem !important; top: 1.15rem !important; width: .55rem !important; height: .55rem !important; border-radius: 1px !important; background: #f2d48a !important; transform: rotate(45deg) !important; margin: 0 !important; }

/* Page galleries (mostly pictures of tables, e.g. Curriculum A/B/C): one per row on phones
   so they stay readable; news albums (.pbg-album) keep two per row. */
@media (max-width: 600px) {
	body.page .wp-block-gallery.has-nested-images:not(.pbg-album):not(.pbg-photos) figure.wp-block-image:not(#individual-image) { width: 100% !important; flex-basis: 100% !important; }
}
