/*
 * AI-OVARE: what theme.json can't express. The identity: soft pastel fields instead of rules and borders, pill
 * buttons, rounded cards with a soft shadow, the ring symbol.
 *
 * Layout notes for editors of this file:
 * - WordPress spaces the children of every group with `:root :where(.is-layout-flow) > *` (specificity 0,1,0), so
 *   rules here that change those margins use two classes.
 * - No transform, filter or backdrop-filter on the header or its ancestors: they would trap the phone menu, which
 *   is position: fixed, inside the header.
 * - Breakpoints: 1080 px (the menu opens from the icon below it), 782 px (WordPress stacks columns below it),
 *   600 px (phones).
 */

:root {
	--ao-sljiva: var(--wp--preset--color--sljiva);
	--ao-papir: var(--wp--preset--color--papir);
	--ao-bijela: var(--wp--preset--color--bijela);
	--ao-kamen: var(--wp--preset--color--kamen);
	--ao-magla: var(--wp--preset--color--magla);
	--ao-koralj: var(--wp--preset--color--koralj);
	--ao-lila-sv: var(--wp--preset--color--lila-svijetla);
	--ao-lila: var(--wp--preset--color--lila);
	--ao-lila-ton: var(--wp--preset--color--lila-ton);
	--ao-lila-tamna: var(--wp--preset--color--lila-tamna);
	--ao-rum-sv: var(--wp--preset--color--rumenilo-svijetla);
	--ao-rum: var(--wp--preset--color--rumenilo);
	--ao-rum-ton: var(--wp--preset--color--rumenilo-ton);
	--ao-rum-tamna: var(--wp--preset--color--rumenilo-tamna);
	--ao-menta-sv: var(--wp--preset--color--menta-svijetla);
	--ao-menta: var(--wp--preset--color--menta);
	--ao-menta-ton: var(--wp--preset--color--menta-ton);
	--ao-menta-tamna: var(--wp--preset--color--menta-tamna);
	--ao-nebo-sv: var(--wp--preset--color--nebo-svijetla);
	--ao-nebo: var(--wp--preset--color--nebo);
	--ao-nebo-ton: var(--wp--preset--color--nebo-ton);
	--ao-nebo-tamna: var(--wp--preset--color--nebo-tamna);
	--ao-tint-bg: color-mix(in srgb, var(--ao-magla) 50%, #fff);

	--ao-sjena: 0 20px 40px -28px rgba(58, 35, 72, 0.35);
	--ao-sjena-jaca: 0 28px 50px -30px rgba(58, 35, 72, 0.5);
	--ao-r-kartica: 28px;
	--ao-r-panel: 36px;
	--ao-naslov: var(--wp--preset--font-family--outfit);
	--ao-ease: cubic-bezier(0.2, 0.7, 0.2, 1);

	/* the logo's rings, for decoration (geometry as in inc/blocks.php) */
	--ao-prsteni: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 120'%3E%3Cg fill='none' stroke-width='9' stroke-linecap='round'%3E%3Cpath stroke='%23B59ADB' d='M103.3 35A50 50 0 1 1 51.32 10.76'/%3E%3Cpath stroke='%23F5A48C' d='M93.81 69.06A35 35 0 1 1 80.08 31.33'/%3E%3Cpath stroke='%2386CDB9' d='M70 77.32A20 20 0 1 1 79.7 56.53'/%3E%3C/g%3E%3Ccircle cx='60' cy='60' r='7.5' fill='%23E9806B'/%3E%3C/svg%3E");
	/* arrows: white on the dark circle, ink for the "back" link */
	--ao-strelica: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FCFAF8' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E");
	--ao-strelica-natrag: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233A2348' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 12H5M11 6l-6 6 6 6'/%3E%3C/svg%3E");
}

/* ------------------------------------------------------------------ base */

body {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
}
/* the page's pastel fields, behind the header and the page head */
.wp-site-blocks {
	min-height: 100vh;
	background:
		radial-gradient(56rem 34rem at 88% -4rem, rgba(217, 200, 236, 0.55), transparent 70%),
		radial-gradient(40rem 28rem at -6% 14rem, rgba(249, 210, 196, 0.38), transparent 70%),
		radial-gradient(36rem 24rem at 60% 26rem, rgba(207, 225, 245, 0.32), transparent 70%)
		var(--ao-papir);
	background-repeat: no-repeat;
}
.wp-site-blocks > * + * { margin-block-start: 0; }
.ao-sadrzaj.wp-block-group > * { margin-block: 0; }

:where(h1, h2, h3, h4) { text-wrap: balance; overflow-wrap: break-word; hyphens: manual; }
:where(p, li, dd) { text-wrap: pretty; }
::selection { background: var(--ao-lila); color: var(--ao-sljiva); }
a { text-underline-offset: 0.18em; text-decoration-thickness: 1px; }
a:hover { text-decoration-thickness: 2px; }
:focus-visible { outline: 3px solid var(--ao-lila-ton); outline-offset: 3px; border-radius: 6px; }
img { max-width: 100%; height: auto; }

.screen-reader-text {
	border: 0;
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

/* ------------------------------------------------------------------ header: EU strip, logo and menu */

.ao-eu-traka {
	background: var(--ao-bijela);
	padding-block: 0.55rem;
	box-shadow: 0 10px 30px -26px rgba(58, 35, 72, 0.5);
	position: relative;
	z-index: 2;
}
.ao-eu-traka > .wp-block-group { align-items: center; gap: 1rem; }
.ao-eu-traka__tekst { margin: 0; font-size: 0.8125rem; color: var(--ao-kamen); text-align: right; }

.ao-zaglavlje { padding-block: 1.15rem; position: relative; z-index: 3; }
.ao-zaglavlje > .wp-block-group { align-items: center; gap: 1.5rem; }
.ao-zaglavlje .wp-block-site-logo { flex: none; line-height: 0; }
.ao-zaglavlje .wp-block-site-logo img { width: clamp(150px, 26vw, 210px) !important; height: auto; }

/* desktop links: pills, the current page tinted, Kontakt as the dark button */
.ao-izbornik.wp-block-navigation { gap: 0.15rem; }
.ao-izbornik .wp-block-navigation__container { gap: 0.15rem; }
.ao-izbornik .wp-block-navigation-item__content {
	display: block;
	padding: 0.55em 0.9em !important;
	border-radius: 999px;
	color: var(--ao-sljiva);
	text-decoration: none;
	transition: background-color 0.2s, color 0.2s;
}
.ao-izbornik .wp-block-navigation-item__content:hover,
.ao-izbornik .wp-block-navigation-item__content:focus-visible { background: var(--ao-lila-sv); text-decoration: none; }
.ao-izbornik .current-menu-item > .wp-block-navigation-item__content { background: var(--ao-magla); }
.ao-izbornik .ao-izbornik__kontakt > .wp-block-navigation-item__content {
	margin-left: 0.4rem;
	padding: 0.6em 1.2em !important;
	background: var(--ao-sljiva);
	color: var(--ao-papir);
	box-shadow: var(--wp--preset--shadow--gumb);
}
.ao-izbornik .ao-izbornik__kontakt > .wp-block-navigation-item__content:hover,
.ao-izbornik .ao-izbornik__kontakt > .wp-block-navigation-item__content:focus-visible { background: var(--ao-lila-tamna); color: var(--ao-papir); }

/* the menu icon: a soft white circle */
.ao-izbornik .wp-block-navigation__responsive-container-open,
.ao-izbornik .wp-block-navigation__responsive-container-close {
	width: 2.9rem;
	height: 2.9rem;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: var(--ao-bijela);
	color: var(--ao-sljiva);
	box-shadow: var(--ao-sjena);
	transition: background-color 0.2s;
}
.ao-izbornik .wp-block-navigation__responsive-container-open:hover,
.ao-izbornik .wp-block-navigation__responsive-container-close:hover { background: var(--ao-lila-sv); }
.ao-izbornik .wp-block-navigation__responsive-container-open svg,
.ao-izbornik .wp-block-navigation__responsive-container-close svg { width: 24px; height: 24px; }

/* the phone menu: full screen on paper, the logo on top, large links with the rings' colours, the EU emblem below */
.ao-izbornik .wp-block-navigation__responsive-container.is-menu-open {
	--navigation-layout-justification-setting: flex-start;
	background:
		radial-gradient(30rem 22rem at 100% 0, rgba(217, 200, 236, 0.6), transparent 70%),
		radial-gradient(26rem 20rem at 0 100%, rgba(197, 232, 221, 0.55), transparent 70%)
		var(--ao-papir) !important;
	color: var(--ao-sljiva) !important;
	padding: 1.15rem var(--wp--style--root--padding-right) 2rem var(--wp--style--root--padding-left);
	text-align: left;
}
.ao-izbornik .wp-block-navigation__responsive-container.is-menu-open::before {
	content: "";
	position: absolute;
	top: 1.15rem;
	left: var(--wp--style--root--padding-left);
	width: 170px;
	height: 2.9rem;
	background: url("../img/ai-ovare-logo.svg") left center / contain no-repeat;
}
.ao-izbornik .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close { top: 0; right: 0; }
.ao-izbornik .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	padding-top: 5.5rem;
	align-items: stretch;
	gap: 0;
}
.ao-izbornik .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
	flex-direction: column;
	align-items: stretch;
	gap: 0.15rem;
	width: 100%;
}
/* the navigation is right-justified for the desktop row, which core carries into the open menu: here it reads from the left */
.ao-izbornik .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item {
	align-items: stretch;
	animation: ao-ulaz 0.45s var(--ao-ease) both;
}
.ao-izbornik .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
	display: flex;
	align-items: center;
	gap: 0.7rem;
	padding: 0.5rem 0.9rem 0.5rem 0.4rem !important;
	font-family: var(--ao-naslov);
	font-size: clamp(1.5rem, 1.2rem + 1.4vw, 2rem);
	font-weight: 500;
	letter-spacing: -0.01em;
	line-height: 1.2;
	background: none;
}
.ao-izbornik .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content::before {
	content: "";
	flex: none;
	width: 0.55rem;
	height: 0.55rem;
	border-radius: 50%;
	background: var(--ao-dot, var(--ao-lila-ton));
	transition: transform 0.25s var(--ao-ease);
}
.ao-izbornik .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:hover::before,
.ao-izbornik .wp-block-navigation__responsive-container.is-menu-open .current-menu-item > .wp-block-navigation-item__content::before { transform: scale(1.6); }
.ao-izbornik .wp-block-navigation__responsive-container.is-menu-open .current-menu-item > .wp-block-navigation-item__content { color: var(--ao-lila-tamna); }
.ao-izbornik .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:nth-child(4n+2) { --ao-dot: var(--ao-rum-ton); }
.ao-izbornik .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:nth-child(4n+3) { --ao-dot: var(--ao-menta-ton); }
.ao-izbornik .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:nth-child(4n+4) { --ao-dot: var(--ao-nebo-ton); }
.ao-izbornik .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:nth-child(2) { animation-delay: 0.03s; }
.ao-izbornik .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:nth-child(3) { animation-delay: 0.06s; }
.ao-izbornik .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:nth-child(4) { animation-delay: 0.09s; }
.ao-izbornik .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:nth-child(5) { animation-delay: 0.12s; }
.ao-izbornik .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:nth-child(6) { animation-delay: 0.15s; }
.ao-izbornik .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:nth-child(7) { animation-delay: 0.18s; }
.ao-izbornik .wp-block-navigation__responsive-container.is-menu-open .ao-izbornik__kontakt { margin-top: 1.25rem; }
.ao-izbornik .wp-block-navigation__responsive-container.is-menu-open .ao-izbornik__kontakt > .wp-block-navigation-item__content {
	justify-content: center;
	margin: 0;
	padding: 0.85rem 1.5rem !important;
	font-family: var(--wp--preset--font-family--figtree);
	font-size: 1.0625rem;
	background: var(--ao-sljiva);
	color: var(--ao-papir);
}
.ao-izbornik .wp-block-navigation__responsive-container.is-menu-open .ao-izbornik__kontakt > .wp-block-navigation-item__content::before { content: none; }
.ao-izbornik .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content::after {
	content: "";
	display: block;
	width: min(100%, 15rem);
	aspect-ratio: 630 / 160;
	margin-top: 2.5rem;
	padding: 0.6rem 0.8rem;
	border-radius: 16px;
	background: url("../img/eu-sufinancira.png") center / calc(100% - 1.6rem) auto no-repeat var(--ao-bijela);
	box-shadow: var(--ao-sjena);
	box-sizing: content-box;
}
@keyframes ao-ulaz { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }

/* seven links, the logo and the button don't fit below 1080 px: the menu opens from the icon there */
@media (min-width: 600px) and (max-width: 1079.98px) {
	.ao-izbornik .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex; }
	.ao-izbornik .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: none; }
	.ao-izbornik .wp-block-navigation__responsive-container-close:not(.always-shown) { display: flex; }
}
@media (max-width: 781.98px) {
	.ao-eu-traka__tekst { display: none; }
	.ao-vidljivost--traka .ao-vidljivost__eu { height: 36px; }
	.ao-zaglavlje { padding-block: 0.9rem; }
}

/* ------------------------------------------------------------------ buttons */

.wp-element-button,
.wp-block-button__link { transition: background-color 0.25s, color 0.25s, box-shadow 0.25s, transform 0.25s var(--ao-ease); }
.wp-block-button__link:hover { transform: translateY(-1px); }

/* "Sa strelicom": a white pill with the arrow in a dark circle; on hover the circle turns coral and the arrow moves */
.wp-block-button.is-style-strelica .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	gap: 0.85em;
	padding: 0.4em 0.4em 0.4em 1.45em;
	background: var(--ao-bijela);
	color: var(--ao-sljiva);
	font-weight: 600;
	box-shadow: 0 16px 32px -18px rgba(58, 35, 72, 0.55);
}
.wp-block-button.is-style-strelica .wp-block-button__link::after {
	content: "";
	flex: none;
	width: 2.35em;
	height: 2.35em;
	border-radius: 50%;
	background: var(--ao-strelica) 50% 50% / 1.1em 1.1em no-repeat var(--ao-sljiva);
	transition: background-color 0.25s, background-position 0.3s var(--ao-ease);
}
.wp-block-button.is-style-strelica .wp-block-button__link:is(:hover, :focus-visible) {
	background: var(--ao-bijela);
	color: var(--ao-sljiva);
	box-shadow: 0 22px 38px -18px rgba(58, 35, 72, 0.6);
}
.wp-block-button.is-style-strelica .wp-block-button__link:is(:hover, :focus-visible)::after {
	background-color: var(--ao-koralj);
	background-position: calc(50% + 0.2em) 50%;
}

/* "Svijetli": soft lilac, no shadow, for a second action next to a dark one */
.wp-block-button.is-style-svijetli .wp-block-button__link {
	background: var(--ao-lila-sv);
	color: var(--ao-sljiva);
	box-shadow: none;
}
.wp-block-button.is-style-svijetli .wp-block-button__link:is(:hover, :focus-visible) { background: var(--ao-lila); color: var(--ao-sljiva); }

.wp-block-buttons { gap: 0.75rem 0.9rem; }

/* ------------------------------------------------------------------ text styles */

p.is-style-znacka {
	display: inline-flex;
	align-items: center;
	gap: 0.6em;
	width: fit-content;
	max-width: 100%;
	padding: 0.42em 1em 0.42em 0.75em;
	border-radius: 999px;
	background: var(--ao-bijela);
	box-shadow: var(--ao-sjena);
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1.35;
	color: var(--ao-sljiva);
}
p.is-style-znacka::before {
	content: "";
	flex: none;
	width: 0.7em;
	height: 0.7em;
	border-radius: 50%;
	background: conic-gradient(var(--ao-lila-ton) 0 33%, var(--ao-rum-ton) 0 66%, var(--ao-menta-ton) 0);
}

p.is-style-oznaka {
	display: flex;
	align-items: center;
	gap: 0.55em;
	font-size: 0.9375rem;
	font-weight: 600;
	letter-spacing: 0.01em;
	color: var(--ao-lila-tamna);
}
p.is-style-oznaka::before {
	content: "";
	flex: none;
	width: 0.5rem;
	height: 0.5rem;
	border-radius: 50%;
	background: var(--ao-koralj);
}
p.is-style-oznaka + :is(h1, h2, h3) { margin-block-start: 0.6rem; }

p.is-style-uvod {
	font-size: var(--wp--preset--font-size--medium);
	line-height: 1.6;
	color: var(--ao-kamen);
	max-width: 40rem;
}

p.ao-mala-oznaka {
	font-size: 0.875rem;
	font-weight: 600;
	letter-spacing: 0.01em;
	line-height: 1.35;
}
p.ao-mala-oznaka + :is(h2, h3, h4) { margin-block-start: 0.35rem; }

p.ao-broj {
	display: inline-grid;
	place-items: center;
	width: 3rem;
	height: 3rem;
	border-radius: 50%;
	background: var(--ao-bijela);
	box-shadow: var(--ao-sjena);
	font-family: var(--ao-naslov);
	font-size: 1.05rem;
	font-weight: 500;
	line-height: 1;
}

ul.is-style-tocke { list-style: none; padding-left: 0; }
ul.is-style-tocke > li { position: relative; padding-left: 1.5em; }
ul.is-style-tocke > li + li { margin-top: 0.4em; }
ul.is-style-tocke > li::before {
	content: "";
	position: absolute;
	left: 0.15em;
	top: 0.6em;
	width: 0.55em;
	height: 0.55em;
	border-radius: 50%;
	background: var(--ao-lila-ton);
}
ul.is-style-tocke > li:nth-child(4n+2)::before { background: var(--ao-rum-ton); }
ul.is-style-tocke > li:nth-child(4n+3)::before { background: var(--ao-menta-ton); }
ul.is-style-tocke > li:nth-child(4n+4)::before { background: var(--ao-nebo-ton); }

.wp-block-image.is-style-zaobljena img { border-radius: var(--ao-r-kartica); }

/* long running text: pages without sections, news posts, the first column on O projektu */
:is(.wp-block-post-content, .wp-block-column).ao-tekst > p { line-height: 1.75; }
:is(.wp-block-post-content, .wp-block-column).ao-tekst > :is(h2, h3, h4) { margin-block-start: 2.25rem; }
:is(.wp-block-post-content, .wp-block-column).ao-tekst > h2 { font-size: var(--wp--preset--font-size--large); }
:is(.wp-block-post-content, .wp-block-column).ao-tekst > h3 { font-size: var(--wp--preset--font-size--medium); }
p.ao-prvi-odlomak { font-size: var(--wp--preset--font-size--medium); line-height: 1.6; }

/* ------------------------------------------------------------------ cards and panels */

.wp-block-group.is-style-kartica {
	background: var(--ao-bijela);
	border-radius: var(--ao-r-kartica);
	padding: clamp(1.4rem, 3vw, 2.1rem);
	box-shadow: var(--ao-sjena);
}
.wp-block-group.is-style-ploha {
	border-radius: var(--ao-r-kartica);
	padding: clamp(1.4rem, 3vw, 2.1rem);
}
.wp-block-group.is-style-ploha:not(.has-background) { background: var(--ao-lila-sv); }
.wp-block-group:is(.is-style-kartica, .is-style-ploha) > * + * { margin-block-start: 0.75rem; }
.wp-block-group:is(.is-style-kartica, .is-style-ploha) > .ao-znak + * { margin-block-start: 1.1rem; }
:is(.is-style-kartica, .is-style-ploha) h3 { font-size: clamp(1.25rem, 1.05rem + 0.6vw, 1.5rem); }
:is(.is-style-kartica, .is-style-ploha) p:not([class]) { font-size: 0.98rem; }

/* "Istaknuti panel": the lilac-sky-mint gradient with the rings in its corner */
.wp-block-group.is-style-cilj {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	border-radius: var(--ao-r-panel);
	padding: clamp(2rem, 5vw, 4rem);
	background: linear-gradient(120deg, var(--ao-lila-sv) 0%, var(--ao-nebo-sv) 55%, var(--ao-menta-sv) 100%);
}
.wp-block-group.is-style-cilj::after {
	content: "";
	position: absolute;
	z-index: -1;
	right: clamp(-5rem, -4vw, -2rem);
	top: 50%;
	width: clamp(12rem, 26vw, 20rem);
	aspect-ratio: 1;
	transform: translateY(-50%) rotate(-12deg);
	background: var(--ao-prsteni) center / contain no-repeat;
	opacity: 0.45;
	pointer-events: none;
}
p.ao-cilj-tekst {
	max-width: 50rem;
	font-family: var(--ao-naslov);
	font-size: clamp(1.4rem, 1.05rem + 1.5vw, 2.25rem);
	font-weight: 400;
	line-height: 1.3;
	letter-spacing: -0.01em;
}
.wp-block-group.is-style-cilj > p.ao-cilj-tekst { margin-block-start: 1rem; }

/* "Tamni panel": ink, light text, the rings faint in its corner */
.wp-block-group.is-style-tamni {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	border-radius: var(--ao-r-panel);
	padding: clamp(2rem, 5vw, 3.5rem);
	background: var(--ao-sljiva);
	color: var(--ao-papir);
	gap: 1.5rem 2rem;
}
.wp-block-group.is-style-tamni::after {
	content: "";
	position: absolute;
	z-index: -1;
	right: -4rem;
	bottom: -6rem;
	width: 20rem;
	aspect-ratio: 1;
	background: var(--ao-prsteni) center / contain no-repeat;
	opacity: 0.2;
	pointer-events: none;
}
/* a button at the end of the row keeps clear of the rings */
@media (min-width: 782px) {
	.wp-block-group.is-style-tamni:has(> .wp-block-buttons:last-child) { padding-inline-end: calc(clamp(2rem, 5vw, 3.5rem) + 11rem); }
}
@media (max-width: 781.98px) {
	.wp-block-group.is-style-tamni::after { top: -5rem; right: -5rem; bottom: auto; width: 13rem; }
}
.is-style-tamni :is(h2, h3) { color: var(--ao-papir); }
.is-style-tamni h2 { font-size: clamp(1.75rem, 1.2rem + 2vw, 2.6rem); }
.is-style-tamni p { color: rgba(252, 250, 248, 0.8); max-width: 36rem; }
.is-style-tamni a:not(.wp-block-button__link) { color: var(--ao-papir); }

/* ------------------------------------------------------------------ sections and page heads */

.ao-sadrzaj .ao-sekcija { padding-block: var(--wp--preset--spacing--70); }
.ao-sadrzaj .ao-sekcija > * + * { margin-block-start: var(--wp--preset--spacing--50); }
.ao-sadrzaj .ao-sekcija--prva { padding-block-start: var(--wp--preset--spacing--50); }
/* sections that follow each other, or the hero, share one gap: the bottom padding of the one before */
.ao-sadrzaj :is(.ao-sekcija, .ao-uvod) + .ao-sekcija { padding-block-start: 0; }

.ao-sekcija__glava { gap: 1.25rem 2rem; }
.ao-sekcija__glava h2 { max-width: 28ch; margin-block-end: 0; }

/* the head of a page: badge, title, introduction, left in the wide column */
.ao-sadrzaj .ao-glava { padding-block: var(--wp--preset--spacing--60) var(--wp--preset--spacing--40); }
.ao-glava__sadrzaj > h1,
.ao-glava > h1 { max-width: 20ch; font-size: clamp(2.25rem, 1.4rem + 3.4vw, 3.75rem); }
.ao-glava .wp-block-query-title { max-width: 24ch; font-size: clamp(2.25rem, 1.4rem + 3.4vw, 3.75rem); }
.ao-glava__sadrzaj > .is-style-uvod { max-width: 44rem; }
.ao-glava__sadrzaj > .ao-trazilica { max-width: 34rem; margin-block-start: 1.75rem; }

/* pastel fields behind a section, left or right */
.ao-polje-lijevo { background: radial-gradient(42rem 30rem at -8% 40%, rgba(253, 238, 232, 0.95), transparent 70%); }
.ao-polje-desno { background: radial-gradient(42rem 30rem at 108% 30%, rgba(236, 243, 251, 0.95), transparent 70%); }

/* columns with more air between them */
.wp-block-columns.ao-stupci-razmak { gap: clamp(2rem, 5vw, 5rem); }

/* ------------------------------------------------------------------ home page opening */

.ao-sadrzaj .ao-uvod { padding-block: var(--wp--preset--spacing--50) var(--wp--preset--spacing--70); }
.wp-block-columns.ao-uvod__stupci { gap: clamp(2rem, 5vw, 4.5rem); }
.ao-uvod h1 { max-width: 15ch; margin-block-start: 1.4rem; }
.ao-uvod h1 em {
	font-style: normal;
	background: linear-gradient(90deg, var(--ao-lila-tamna), var(--ao-rum-tamna));
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
}
.ao-uvod .is-style-uvod { max-width: 34rem; }
.ao-uvod .wp-block-column > .wp-block-buttons { margin-block-start: 2rem; }
.ao-sadrzaj .ao-uvod > .ao-mreza { margin-block-start: var(--wp--preset--spacing--60); }

/* ------------------------------------------------------------------ the ring symbol */

.ao-znak { position: relative; flex: none; width: 56px; }
.ao-znak--srednji { width: 88px; }
.ao-znak__svg { display: block; width: 100%; height: auto; overflow: visible; }
.ao-znak--uvodni {
	width: 100%;
	max-width: 32rem;
	aspect-ratio: 1;
	margin-inline: auto;
	isolation: isolate;
}
.ao-znak--uvodni .ao-znak__svg { position: absolute; inset: 14%; width: 72%; }
.ao-znak__halo {
	position: absolute;
	inset: 6%;
	z-index: -1;
	border-radius: 50%;
	background:
		radial-gradient(circle at 30% 30%, rgba(217, 200, 236, 0.95), transparent 58%),
		radial-gradient(circle at 74% 38%, rgba(249, 210, 196, 0.9), transparent 55%),
		radial-gradient(circle at 46% 78%, rgba(197, 232, 221, 0.95), transparent 58%),
		radial-gradient(circle at 50% 50%, rgba(255, 255, 255, 0.9), transparent 70%);
	filter: blur(28px);
}
.ao-znak__tocka {
	position: absolute;
	border-radius: 50%;
	animation: ao-lebdi 7s ease-in-out infinite alternate;
}
.ao-znak__puls {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 9%;
	aspect-ratio: 1;
	margin: -4.5% 0 0 -4.5%;
	border-radius: 50%;
	background: var(--ao-koralj);
	opacity: 0;
	animation: ao-puls 3.6s 2.2s ease-out infinite;
}
.ao-znak.is-animated .ao-znak__prsten {
	stroke-dasharray: 1;
	stroke-dashoffset: 1;
	transform-box: view-box;
	transform-origin: 60px 60px;
	animation: ao-crtaj 1.5s var(--ao-ease) forwards, ao-njihaj 14s 1.6s ease-in-out infinite alternate;
}
.ao-znak.is-animated .ao-znak__prsten--1 { animation-delay: 0.25s, 1.85s; animation-direction: normal, alternate-reverse; }
.ao-znak.is-animated .ao-znak__prsten--2 { animation-delay: 0.5s, 2.1s; }
.ao-znak.is-animated .ao-znak__jezgra {
	transform-box: fill-box;
	transform-origin: center;
	animation: ao-pojava 0.7s 1.35s cubic-bezier(0.3, 1.6, 0.5, 1) both;
}
@keyframes ao-crtaj { to { stroke-dashoffset: 0; } }
@keyframes ao-njihaj { from { transform: rotate(-6deg); } to { transform: rotate(8deg); } }
@keyframes ao-pojava { from { transform: scale(0); } to { transform: scale(1); } }
@keyframes ao-puls { 0% { opacity: 0.35; transform: scale(1); } 70%, 100% { opacity: 0; transform: scale(5); } }
@keyframes ao-lebdi { from { transform: translate(0, 0); } to { transform: translate(6px, -12px); } }

/* ------------------------------------------------------------------ Projekt ukratko */

.ao-ukratko {
	background: var(--ao-bijela);
	border-radius: 30px;
	padding: clamp(1.35rem, 3vw, 2rem);
	box-shadow: var(--ao-sjena-jaca);
	font-size: 0.97rem;
}
.ao-ukratko p { margin: 0; }
.ao-ukratko__glava { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 0.5rem 1rem; }
.ao-ukratko__naslov { margin: 0; font-size: 1.375rem; }
.ao-ukratko__sifra {
	padding: 0.35em 0.85em;
	border-radius: 999px;
	background: var(--ao-magla);
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.02em;
	font-variant-numeric: tabular-nums;
}

.ao-ukratko__popis { display: grid; gap: 0.95rem; margin: 1.4rem 0 0; }
.ao-ukratko__red,
.ao-kontakt__red {
	display: grid;
	grid-template-columns: 2.5rem 1fr;
	column-gap: 0.9rem;
	align-items: start;
}
.ao-ukratko__red::before,
.ao-kontakt__red::before { grid-row: 1 / span 2; }
.ao-ukratko__red dt { font-size: 0.8125rem; font-weight: 500; color: var(--ao-kamen); line-height: 1.35; padding-top: 0.1rem; }
.ao-ukratko__red dd { margin: 0; font-weight: 500; line-height: 1.4; }
.ao-ukratko__red ul { list-style: none; margin: 0; padding: 0; }
.ao-ukratko__red li + li { margin-top: 0.2rem; }

/* the period: a meter on the lilac ramp, the years at its ends, the month in words */
.ao-ukratko__vrijeme {
	margin-top: 1.4rem;
	padding: 1rem 1.2rem 0.9rem;
	border-radius: 20px;
	background: var(--ao-lila-sv);
}
.ao-ukratko__godine {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 0.75rem;
	font-size: 0.8125rem;
	color: var(--ao-kamen);
	font-variant-numeric: tabular-nums;
}
.ao-ukratko .ao-ukratko__status { color: var(--ao-sljiva); font-weight: 600; text-align: center; }

.ao-mjerac {
	height: 0.625rem;
	margin: 0 0 0.6rem;
	border-radius: 999px;
	background: var(--ao-lila);
	overflow: hidden;
}
.ao-mjerac > span {
	display: block;
	height: 100%;
	min-width: 0.625rem;
	border-radius: inherit;
	background: var(--ao-lila-tamna);
	transform-origin: left center;
	animation: ao-mjerac 1.2s 0.3s var(--ao-ease) both;
}
.ao-mjerac--menta { background: var(--ao-menta); }
.ao-mjerac--menta > span { background: var(--ao-menta-tamna); }
@keyframes ao-mjerac { from { transform: scaleX(0); } }

/* the money: the grant as the headline with its share of the total, the two totals as tiles */
.ao-ukratko__novac { display: grid; grid-template-columns: 1fr 1fr; gap: 0.7rem; margin-top: 0.7rem; }
.ao-ukratko__iznos { padding: 0.95rem 1.1rem; border-radius: 18px; background: var(--ao-tint-bg); }
.ao-ukratko__iznos--glavni { grid-column: 1 / -1; padding: 1.15rem 1.25rem 1rem; border-radius: 20px; background: var(--ao-menta-sv); }
.ao-ukratko__oznaka { font-size: 0.8125rem; font-weight: 600; line-height: 1.35; color: var(--ao-kamen); }
.ao-ukratko__iznos--glavni .ao-ukratko__oznaka { color: var(--ao-menta-tamna); }
.ao-ukratko__broj {
	margin-top: 0.3rem !important;
	font-family: var(--ao-naslov);
	font-size: 1.2rem;
	font-weight: 500;
	line-height: 1.15;
	letter-spacing: -0.01em;
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}
.ao-ukratko__iznos--glavni .ao-ukratko__broj { font-size: clamp(1.75rem, 1.35rem + 1.4vw, 2.4rem); margin-bottom: 0.8rem !important; }
.ao-ukratko__broj small { margin-left: 0.3em; font-size: 0.6em; font-weight: 500; letter-spacing: 0.04em; color: var(--ao-kamen); }
.ao-ukratko__udio { font-size: 0.8125rem; color: var(--ao-sljiva); }
.ao-ukratko__financiranje { margin-top: 1.1rem !important; font-size: 0.8125rem; line-height: 1.5; color: var(--ao-kamen); }

/* line icons in a soft circle, for the facts and the contact details */
.ao-ikona::before {
	content: "";
	width: 2.5rem;
	height: 2.5rem;
	border-radius: 50%;
	background: var(--ao-ikona-slika) center / 1.2rem no-repeat var(--ao-lila-sv);
}
.ao-ikona--nositelj { --ao-ikona-slika: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236D4A93' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 20V9l8-5 8 5v11'/%3E%3Cpath d='M9.5 20v-5h5v5M3 20h18'/%3E%3C/svg%3E"); }
.ao-ikona--partneri { --ao-ikona-slika: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236D4A93' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='8' r='3'/%3E%3Cpath d='M3.5 19a5.5 5.5 0 0 1 11 0'/%3E%3Ccircle cx='17' cy='9' r='2.4'/%3E%3Cpath d='M15.6 14.1A4.6 4.6 0 0 1 21 18.6'/%3E%3C/svg%3E"); }
.ao-ikona--razdoblje { --ao-ikona-slika: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236D4A93' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3.5' y='5' width='17' height='15' rx='3.5'/%3E%3Cpath d='M3.5 10h17M8 3v4M16 3v4'/%3E%3C/svg%3E"); }
.ao-ikona--email { --ao-ikona-slika: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236D4A93' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='3.5'/%3E%3Cpath d='m4 7.5 8 5.5 8-5.5'/%3E%3C/svg%3E"); }
.ao-ikona--telefon { --ao-ikona-slika: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236D4A93' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6.6 3.5h2.6l1.4 4.1-2 1.4a12 12 0 0 0 6.4 6.4l1.4-2 4.1 1.4v2.6a2 2 0 0 1-2.2 2A16.5 16.5 0 0 1 4.6 5.7a2 2 0 0 1 2-2.2z'/%3E%3C/svg%3E"); }
.ao-ikona--adresa { --ao-ikona-slika: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236D4A93' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-6.2-7-11.5a7 7 0 0 1 14 0C19 14.8 12 21 12 21z'/%3E%3Ccircle cx='12' cy='9.5' r='2.5'/%3E%3C/svg%3E"); }
.ao-ikona--osoba { --ao-ikona-slika: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236D4A93' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='3.5'/%3E%3Cpath d='M5 20a7 7 0 0 1 14 0'/%3E%3C/svg%3E"); }

/* ------------------------------------------------------------------ grids */

.wp-block-group:is(.ao-mreza, .ao-partneri, .ao-aktivnosti, .ao-koraci) { display: grid; gap: clamp(1rem, 2vw, 1.5rem); }
.wp-block-group:is(.ao-mreza, .ao-partneri, .ao-aktivnosti, .ao-koraci) > * { margin-block: 0; }
.ao-mreza--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ao-mreza--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.ao-mreza--osobe { grid-template-columns: repeat(auto-fill, minmax(min(100%, 16.5rem), 1fr)); }
.ao-partneri { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ao-aktivnosti { grid-template-columns: repeat(2, minmax(0, 1fr)); }

/* the four steps on O projektu: numbered circles joined by a soft track */
.ao-koraci { counter-reset: ao-korak; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.wp-block-group.ao-korak {
	--ao-korak-ton: var(--ao-lila-ton);
	--ao-korak-boja: var(--ao-lila-tamna);
	--ao-korak-iduci: var(--ao-rum-ton);
	position: relative;
	counter-increment: ao-korak;
	padding-top: 4.25rem;
}
.ao-korak:nth-child(2) { --ao-korak-ton: var(--ao-rum-ton); --ao-korak-boja: var(--ao-rum-tamna); --ao-korak-iduci: var(--ao-menta-ton); }
.ao-korak:nth-child(3) { --ao-korak-ton: var(--ao-menta-ton); --ao-korak-boja: var(--ao-menta-tamna); --ao-korak-iduci: var(--ao-nebo-ton); }
.ao-korak:nth-child(4) { --ao-korak-ton: var(--ao-nebo-ton); --ao-korak-boja: var(--ao-nebo-tamna); }
.ao-korak::before {
	content: counter(ao-korak);
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	display: grid;
	place-items: center;
	width: 3rem;
	height: 3rem;
	border-radius: 50%;
	background: var(--ao-bijela);
	box-shadow: var(--ao-sjena), inset 0 0 0 4px var(--ao-korak-ton);
	font-family: var(--ao-naslov);
	font-size: 1.1rem;
	font-weight: 500;
	color: var(--ao-korak-boja);
}
.ao-korak:not(:last-child)::after {
	content: "";
	position: absolute;
	top: calc(1.5rem - 3px);
	left: 3.6rem;
	right: calc(-1 * clamp(1rem, 2vw, 1.5rem) + 0.6rem);
	height: 6px;
	border-radius: 999px;
	background: linear-gradient(90deg, var(--ao-korak-ton), var(--ao-korak-iduci));
	opacity: 0.55;
}
.wp-block-group.ao-korak > h3 { font-size: 1.25rem; }
.wp-block-group.ao-korak > * + * { margin-block-start: 0.6rem; }
.ao-korak p { font-size: 0.98rem; color: var(--ao-kamen); }

/* ------------------------------------------------------------------ bands, partners, activities, team */

.wp-block-group.ao-traka { gap: 1.25rem 2rem; padding: clamp(1.25rem, 3vw, 1.9rem) clamp(1.4rem, 3vw, 2.25rem); }
.ao-traka__tekst { flex: 1 1 24rem; max-width: 50rem; margin: 0; }
p.ao-traka__tekst { font-size: var(--wp--preset--font-size--medium); line-height: 1.5; }
.wp-block-group.ao-traka__tekst > * + * { margin-block-start: 0.35rem; }
.ao-traka__tekst h3 { font-size: 1.375rem; }

.wp-block-group.ao-partner { display: flex; flex-direction: column; }
.wp-block-group.ao-partner__glava > * + * { margin-block-start: 0.6rem; }
.wp-block-group.ao-partner__glava > .ao-znak + * { margin-block-start: 1.25rem; }
.ao-partner__glava h2 { font-size: clamp(1.375rem, 1.1rem + 0.9vw, 1.75rem); margin-block-start: 0.35rem !important; }
.wp-block-group.ao-partner__tekst { margin-block-start: 1.25rem; }
.wp-block-group.ao-partner__tekst > * + * { margin-block-start: 0.9rem; }
.ao-partner__tekst p { font-size: 0.98rem; line-height: 1.7; }

.wp-block-group.ao-aktivnost__glava { display: flex; align-items: center; gap: 1rem; }
.wp-block-group.ao-aktivnost__glava > * { margin: 0; }
.ao-aktivnost__glava h3 { font-size: clamp(1.25rem, 1.05rem + 0.6vw, 1.5rem); }
.wp-block-group.ao-aktivnost__tekst { margin-block-start: 1.25rem; }
.wp-block-group.ao-aktivnost__tekst > * + * { margin-block-start: 0.85rem; }
.ao-aktivnost__tekst p { font-size: 0.98rem; line-height: 1.7; }

.ao-tim--lila { --ao-tint: var(--ao-lila); --ao-tint-ton: var(--ao-lila-ton); --ao-tint-tamna: var(--ao-lila-tamna); }
.ao-tim--rumenilo { --ao-tint: var(--ao-rum); --ao-tint-ton: var(--ao-rum-ton); --ao-tint-tamna: var(--ao-rum-tamna); }
.ao-tim--menta { --ao-tint: var(--ao-menta); --ao-tint-ton: var(--ao-menta-ton); --ao-tint-tamna: var(--ao-menta-tamna); }
.ao-sadrzaj .ao-tim { padding-block: var(--wp--preset--spacing--50); }
.ao-sadrzaj .ao-tim > .ao-mreza { margin-block-start: 1.5rem; }
.ao-tim__ustanova { display: flex; align-items: center; gap: 0.65rem; font-size: var(--wp--preset--font-size--large); }
.ao-tim__ustanova::before { content: ""; flex: none; width: 0.7rem; height: 0.7rem; border-radius: 50%; background: var(--ao-tint-ton); }
.wp-block-group.ao-osoba {
	display: grid;
	grid-template-columns: 3.25rem 1fr;
	grid-template-rows: auto auto;
	column-gap: 1rem;
	align-content: center;
	padding: 1.1rem 1.25rem;
	border-radius: 22px;
	background: var(--ao-bijela);
	box-shadow: var(--ao-sjena);
}
.wp-block-group.ao-osoba > * { margin: 0; }
p.ao-osoba__inicijali {
	grid-row: 1 / span 2;
	align-self: center;
	display: grid;
	place-items: center;
	width: 3.25rem;
	height: 3.25rem;
	border-radius: 50%;
	background: var(--ao-tint);
	color: var(--ao-tint-tamna);
	font-family: var(--ao-naslov);
	font-size: 1.05rem;
	font-weight: 500;
	letter-spacing: 0.03em;
}
h3.ao-osoba__ime { align-self: end; font-size: 1.125rem; line-height: 1.25; }
p.ao-osoba__uloga { align-self: start; margin-top: 0.2rem !important; font-size: 0.875rem; line-height: 1.4; color: var(--ao-kamen); }

/* ------------------------------------------------------------------ contact and the empty results */

.ao-kontakt .is-style-kartica h2 { font-size: var(--wp--preset--font-size--large); }
.wp-block-group.is-style-kartica > .ao-kontakt__red { margin-block-start: 1.1rem; }
.ao-kontakt__red > span { font-size: 0.8125rem; font-weight: 500; color: var(--ao-kamen); line-height: 1.35; padding-top: 0.05rem; }
.ao-kontakt__red { font-size: 1.0625rem; font-weight: 500; line-height: 1.4; }
.wp-block-group.is-style-kartica > .ao-kontakt__gumbi { margin-block-start: 1.75rem; }
.ao-kontakt__projekt h3 { font-size: 1.375rem; }

/* a document on Rezultati (pattern "Dokument ili rezultat"): file icon, text, download button */
.wp-block-group.ao-dokument { gap: 1rem 2rem; flex-wrap: wrap; }
.wp-block-group.ao-dokument + .wp-block-group.ao-dokument { margin-block-start: 1rem; }
.ao-dokument::before {
	content: "";
	flex: none;
	width: 3.25rem;
	height: 3.25rem;
	border-radius: 50%;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23287267' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3H7.5A2.5 2.5 0 0 0 5 5.5v13A2.5 2.5 0 0 0 7.5 21h9a2.5 2.5 0 0 0 2.5-2.5V8z'/%3E%3Cpath d='M14 3v5h5M9 13h6M9 17h4'/%3E%3C/svg%3E") center / 1.35rem no-repeat var(--ao-menta-sv);
}
.wp-block-group.ao-dokument__tekst { flex: 1 1 20rem; }
.wp-block-group.ao-dokument__tekst > * + * { margin-block-start: 0.35rem; }

.wp-block-group.ao-prazno { text-align: center; padding-block: var(--wp--preset--spacing--60); }
.ao-prazno .ao-znak { margin-inline: auto; }
.ao-prazno p { max-width: 36rem; margin-inline: auto; }
.ao-prazno .wp-block-buttons { justify-content: center; }
.wp-block-group.ao-prazno > .wp-block-buttons { margin-block-start: 1.5rem; }

/* ------------------------------------------------------------------ news */

.ao-novosti__popis {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(1rem, 2vw, 1.5rem);
	list-style: none;
	margin: 0;
	padding: 0;
}
.ao-novosti__popis > li { margin: 0; }
.wp-block-group.ao-novost {
	position: relative;
	display: flex;
	flex-direction: column;
	height: 100%;
	overflow: hidden;
	border-radius: var(--ao-r-kartica);
	background: var(--ao-bijela);
	box-shadow: var(--ao-sjena);
	transition: box-shadow 0.3s, transform 0.3s var(--ao-ease);
}
.wp-block-group.ao-novost > * { margin: 0; }
.ao-novost:hover { transform: translateY(-3px); box-shadow: var(--ao-sjena-jaca); }
/* without a featured image, a pastel field with the rings */
.ao-novost:not(:has(.wp-block-post-featured-image))::before {
	content: "";
	display: block;
	aspect-ratio: 16 / 10;
	background:
		var(--ao-prsteni) center / 30% no-repeat,
		radial-gradient(circle at 25% 30%, rgba(217, 200, 236, 0.9), transparent 60%),
		radial-gradient(circle at 80% 70%, rgba(197, 232, 221, 0.9), transparent 60%),
		var(--ao-rum-sv);
}
.ao-novost__slika img { display: block; width: 100%; height: 100%; object-fit: cover; }
.wp-block-group.ao-novost__tekst { padding: 1.2rem 1.4rem 1.5rem; }
.wp-block-group.ao-novost__tekst > * + * { margin-block-start: 0.45rem; }
.ao-novost__naslov { font-size: 1.3rem; line-height: 1.25; }
.ao-novost__naslov a { color: var(--ao-sljiva); text-decoration: none; }
.ao-novost__naslov a::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.ao-novost:hover .ao-novost__naslov a { color: var(--ao-lila-tamna); }
.ao-novost .wp-block-post-excerpt { font-size: 0.95rem; }
.ao-novost .wp-block-post-excerpt__excerpt { margin: 0; }
/* a single post: one wide card, the image beside the text */
@media (min-width: 782px) {
	.ao-novosti__popis:has(> li:only-child) { grid-template-columns: 1fr; }
	.ao-novosti__popis > li:only-child .ao-novost { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr); }
	.ao-novosti__popis > li:only-child .ao-novost::before { aspect-ratio: auto; min-height: 15rem; }
	.ao-novosti__popis > li:only-child .ao-novost__tekst { align-self: center; padding: clamp(1.5rem, 3vw, 2.5rem); }
	.ao-novosti__popis > li:only-child .ao-novost__naslov { font-size: var(--wp--preset--font-size--large); }
}

.wp-block-query-pagination { margin-top: var(--wp--preset--spacing--50); gap: 0.35rem; }
.wp-block-query-pagination a,
.wp-block-query-pagination .page-numbers { display: inline-block; padding: 0.5em 0.95em; border-radius: 999px; text-decoration: none; }
.wp-block-query-pagination a:hover { background: var(--ao-lila-sv); }
.wp-block-query-pagination .page-numbers.current { background: var(--ao-sljiva); color: var(--ao-papir); }
.ao-sadrzaj > .ao-novosti { padding-block-end: var(--wp--preset--spacing--70); }

/* one news post */
.ao-sadrzaj .ao-clanak { padding-block-end: var(--wp--preset--spacing--70); }
.ao-sadrzaj .ao-clanak > * + * { margin-block-start: var(--wp--preset--spacing--40); }
.ao-sadrzaj .ao-glava--clanak { padding-block: var(--wp--preset--spacing--60) 0; }
.ao-glava--clanak h1 { font-size: clamp(2rem, 1.3rem + 2.6vw, 3.25rem); max-width: none; }
.wp-block-group.ao-glava--clanak > .ao-datum { margin-block-start: 1.5rem; }
.wp-block-group.ao-glava--clanak > h1 { margin-block-start: 0.4rem; }
p.ao-natrag a {
	display: inline-flex;
	align-items: center;
	gap: 0.5em;
	padding: 0.4em 1em 0.4em 0.8em;
	border-radius: 999px;
	background: var(--ao-bijela);
	box-shadow: var(--ao-sjena);
	font-size: 0.9rem;
	font-weight: 600;
	text-decoration: none;
}
p.ao-natrag a::before { content: ""; width: 1em; height: 1em; background: var(--ao-strelica-natrag) center / contain no-repeat; transition: transform 0.25s var(--ao-ease); }
p.ao-natrag a:hover::before { transform: translateX(-3px); }
.ao-clanak__slika { overflow: hidden; border-radius: var(--ao-r-panel); }
.ao-clanak__slika img { display: block; }
.wp-block-group.ao-napomena-eu { margin-block-start: var(--wp--preset--spacing--60) !important; padding: 1.1rem 1.4rem; border-radius: 20px; font-size: 0.9rem; }

/* search and the 404 page */
.ao-trazilica .wp-block-search__inside-wrapper {
	padding: 0.35rem;
	border: 0;
	border-radius: 999px;
	background: var(--ao-bijela);
	box-shadow: var(--ao-sjena);
}
.ao-trazilica .wp-block-search__input { border: 0; background: transparent; padding: 0.6rem 1.1rem; font: inherit; color: var(--ao-sljiva); }
.ao-trazilica .wp-block-search__input:focus { outline: none; }
.ao-trazilica .wp-block-search__inside-wrapper:focus-within { box-shadow: var(--ao-sjena), 0 0 0 3px var(--ao-lila-ton); }
.ao-trazilica .wp-block-search__button { margin-left: 0.35rem; padding: 0.7em 1.4em; box-shadow: none; }

.ao-glava--404 { text-align: center; }
.ao-sadrzaj .ao-glava--404 { padding-block: var(--wp--preset--spacing--70); }
.ao-glava--404 .ao-znak { margin-inline: auto; }
.ao-glava--404 .is-style-uvod { margin-inline: auto; }
.ao-glava--404 .ao-trazilica { max-width: 32rem; margin-block-start: 2rem !important; }
.ao-glava--404 .wp-block-buttons { justify-content: center; }

/* ------------------------------------------------------------------ contact call and footer */

.ao-poziv { padding-block: 0 var(--wp--preset--spacing--60); }

.ao-podnozje { --ao-pad: clamp(1.5rem, 4vw, 3rem); padding-block: 0 var(--wp--preset--spacing--50); }
.ao-podnozje a { text-decoration: none; }
.ao-podnozje a:hover { text-decoration: underline; color: var(--ao-lila-tamna); }
.ao-podnozje__kartica {
	padding: var(--ao-pad);
	border-radius: var(--ao-r-panel);
	background: var(--ao-bijela);
	box-shadow: var(--ao-sjena);
}
.wp-block-group.ao-podnozje__kartica > * { margin-block: 0; }
.wp-block-columns.ao-podnozje__stupci { gap: clamp(1.75rem, 4vw, 3.5rem); }
.ao-podnozje .wp-block-site-logo img { width: 200px !important; }
.ao-podnozje__opis { max-width: 22rem; margin-block-start: 1rem !important; font-size: 0.9375rem; color: var(--ao-kamen); }
h2.ao-podnozje__naslov { font-size: 1.0625rem; font-weight: 600; letter-spacing: 0; }
.ao-podnozje__veze { list-style: none; padding: 0 !important; margin-block-start: 0.85rem !important; display: grid; gap: 0.3rem; font-size: 0.95rem; }
p.ao-podnozje__kontakt { font-size: 0.95rem; line-height: 1.75; margin-block-start: 0.85rem; }
.wp-block-group.ao-podnozje__vidljivost {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1.25rem 2.5rem;
	margin-block-start: var(--wp--preset--spacing--50);
}
.wp-block-group.ao-podnozje__vidljivost > * { margin: 0; }
.ao-podnozje__financiranje { flex: 1 1 22rem; font-size: 0.8125rem; line-height: 1.55; color: var(--ao-kamen); }
.ao-podnozje__financiranje a { text-decoration: underline; }
.ao-podnozje__dno {
	margin: var(--wp--preset--spacing--50) calc(-1 * var(--ao-pad)) calc(-1 * var(--ao-pad)) !important;
	padding: 1rem var(--ao-pad);
	border-radius: 0 0 var(--ao-r-panel) var(--ao-r-panel);
	background: var(--ao-tint-bg);
	gap: 0.25rem 1.5rem;
	font-size: 0.8125rem;
	color: var(--ao-kamen);
}
.ao-podnozje__dno p { margin: 0; }

/* the EU emblem: never altered, only sized; the partners' marks stay smaller than it */
.ao-vidljivost__eu { display: block; width: auto; max-width: none; }
.ao-vidljivost--traka .ao-vidljivost__eu { height: 40px; }
.ao-vidljivost--podnozje { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 2.25rem; }
.ao-vidljivost--podnozje .ao-vidljivost__eu { height: 56px; }
.ao-vidljivost__partneri { display: flex; flex-wrap: wrap; align-items: center; gap: 0.75rem 1.75rem; list-style: none; margin: 0; padding: 0; }
.ao-vidljivost__genom { display: block; height: 28px; width: auto; }
.ao-vidljivost__tekst { font-size: 0.75rem; line-height: 1.3; color: var(--ao-kamen); }
.ao-vidljivost__tekst strong { display: block; font-size: 0.8125rem; font-weight: 600; color: var(--ao-sljiva); }

/* ------------------------------------------------------------------ smaller screens */

@media (max-width: 1079.98px) {
	.ao-mreza--4,
	.ao-aktivnosti { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.ao-partneri { grid-template-columns: 1fr; }
	.ao-partneri .ao-partner { display: grid; grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr); gap: 0 2rem; }
	.ao-partneri .ao-partner > .ao-partner__tekst { margin-block-start: 0; }
	/* the steps stack: circles on the left, the track running down */
	.ao-koraci { grid-template-columns: 1fr; gap: 1.75rem; }
	.wp-block-group.ao-korak { padding-top: 0; padding-left: 4.25rem; min-height: 3rem; }
	.ao-korak:not(:last-child)::after {
		top: 3.6rem;
		bottom: calc(-1.75rem + 0.6rem);
		left: calc(1.5rem - 3px);
		right: auto;
		width: 6px;
		height: auto;
		background: linear-gradient(180deg, var(--ao-korak-ton), var(--ao-korak-iduci));
	}
	.ao-novosti__popis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 899.98px) {
	.ao-mreza--3 { grid-template-columns: 1fr; }
	.ao-mreza--3 > .is-style-kartica { display: grid; grid-template-columns: auto minmax(0, 1fr); column-gap: 1.25rem; }
	.ao-mreza--3 > .is-style-kartica > .ao-znak { grid-row: 1 / span 3; }
	.wp-block-group.ao-mreza--3 > .is-style-kartica > * { margin-block-start: 0; }
	.wp-block-group.ao-mreza--3 > .is-style-kartica > * + :not(.ao-znak + *) { margin-block-start: 0.4rem; }
	.ao-aktivnosti { grid-template-columns: 1fr; }
}

@media (max-width: 781.98px) {
	.ao-uvod h1 { max-width: none; }
	.ao-znak--uvodni { max-width: 19rem; }
	.ao-uvod__stupci > .wp-block-column:last-child { order: -1; }
	.ao-uvod__stupci .ao-znak--uvodni { max-width: 15rem; margin-block-end: -1rem; }
	.ao-partneri .ao-partner { display: flex; }
	.ao-partneri .ao-partner > .ao-partner__tekst { margin-block-start: 1.25rem; }
	.ao-podnozje__stupci > .wp-block-column { flex-basis: 100% !important; }
	.ao-podnozje__dno { flex-direction: column; align-items: flex-start !important; }
	.ao-ukratko__novac { grid-template-columns: 1fr; }
}

@media (max-width: 599.98px) {
	.ao-mreza--4,
	.ao-novosti__popis { grid-template-columns: 1fr; }
	.ao-sekcija__glava { flex-direction: column; align-items: flex-start !important; }
	.ao-sekcija__glava > .wp-block-buttons { margin-top: -0.25rem; }
	.ao-vidljivost--podnozje .ao-vidljivost__eu { height: 48px; }
	.ao-ukratko__godine { flex-wrap: wrap; }
	.ao-ukratko__godine .ao-ukratko__status { order: -1; flex-basis: 100%; text-align: left; }
	.wp-block-group.is-style-cilj::after { opacity: 0.25; }
	.ao-traka > .wp-block-buttons { width: 100%; }
	.wp-block-group.is-style-tamni > .wp-block-buttons { width: 100%; }
}

/* ------------------------------------------------------------------ motion */

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { animation-duration: 0.001ms !important; animation-iteration-count: 1 !important; animation-delay: 0s !important; transition-duration: 0.001ms !important; }
	.ao-znak.is-animated .ao-znak__prsten { stroke-dashoffset: 0; }
	.ao-znak__puls { display: none; }
}

/* ------------------------------------------------------------------ editor */

/* the editor has no .wp-site-blocks: give its canvas the paper colour and keep the symbol's animation still */
.editor-styles-wrapper .ao-znak.is-animated .ao-znak__prsten { animation: none; stroke-dashoffset: 0; }
.editor-styles-wrapper .ao-znak__puls { display: none; }
