/*
Theme Name: CSC Sjever
Theme URI: https://csc.unin.hr/
Author: Sveučilišni centar kibernetičke sigurnosti – Sveučilište Sjever
Author URI: https://csc.unin.hr/
Description: Moderna blok-tema za Sveučilišni centar kibernetičke sigurnosti Sveučilišta Sjever. Akademski pregledan dizajn u bojama Sveučilišta s tamnim „cyber” naglascima, ugrađenim fontovima IBM Plex Sans i Mono te gotovim uzorcima za naslovnicu i sve stranice Centra.
Requires at least: 6.6
Tested up to: 7.1
Requires PHP: 7.4
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: csc-sjever
Tags: education, blog, full-site-editing, block-patterns, wide-blocks, custom-colors, editor-style
*/

/* ==========================================================================
   Osnova
   ========================================================================== */

:root {
	--csc-ink: var(--wp--preset--color--ink);
	--csc-red: var(--wp--preset--color--red);
	--csc-red-dark: var(--wp--preset--color--red-dark);
	--csc-line: var(--wp--preset--color--line);
	--csc-muted: var(--wp--preset--color--muted);
	--csc-red-on-ink: #ff6b72;
	--csc-radius: 12px;
	--csc-shadow: 0 1px 2px rgba(11, 18, 32, 0.04), 0 14px 32px -16px rgba(11, 18, 32, 0.22);
	--csc-mono: var(--wp--preset--font-family--mono);
}

body {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
}

::selection {
	background: var(--csc-red);
	color: #fff;
}

a {
	text-underline-offset: 0.2em;
	text-decoration-thickness: 1px;
}

:where(a, button, input, .wp-element-button):focus-visible {
	outline: 2px solid var(--csc-red);
	outline-offset: 3px;
	border-radius: 3px;
}

/* Sekcije se slažu jedna uz drugu, bez bijelih razmaka između. */
.wp-site-blocks > * {
	margin-block-start: 0;
}

.csc-main > .alignfull,
.csc-main .wp-block-post-content > .alignfull,
.csc-article > .alignfull {
	margin-block-start: 0 !important;
	margin-block-end: 0 !important;
}

.wp-block-post-content.alignfull:has(> .alignfull:first-child) {
	padding-block-start: 0;
}

.csc-page-content {
	padding-block: clamp(2.5rem, 6vw, 4.5rem);
}

.csc-page-content:has(> .alignfull:first-child) {
	padding-block-start: 0;
}

.csc-page-content:has(> .alignfull:last-child) {
	padding-block-end: 0;
}

/* ==========================================================================
   Zaglavlje
   ========================================================================== */

.wp-site-blocks > header.wp-block-template-part {
	position: sticky;
	top: var(--wp-admin--admin-bar--height, 0px);
	z-index: 100;
}

.csc-header {
	background: rgba(255, 255, 255, 0.94);
	-webkit-backdrop-filter: saturate(180%) blur(12px);
	backdrop-filter: saturate(180%) blur(12px);
	border-bottom: 1px solid var(--csc-line);
	padding-block: 0.8rem;
}

.csc-header__inner {
	gap: 2rem;
	align-items: center;
}

.csc-logo,
.csc-header .wp-block-site-logo {
	margin: 0;
	flex-shrink: 0;
}

.csc-logo img {
	display: block;
	width: auto;
	height: 48px;
}

.csc-nav .wp-block-navigation__container {
	gap: 0.35rem 1.5rem;
}

.csc-nav .wp-block-navigation-item__content {
	color: var(--wp--preset--color--text);
	text-decoration: none;
	padding-block: 0.45rem;
}

.csc-nav .wp-block-navigation-item__content:hover,
.csc-nav .current-menu-item > .wp-block-navigation-item__content {
	color: var(--csc-red);
}

.csc-nav .current-menu-item > .wp-block-navigation-item__content {
	text-decoration: underline;
	text-decoration-thickness: 2px;
	text-underline-offset: 0.5em;
}

.csc-nav .csc-nav-cta > .wp-block-navigation-item__content {
	background: var(--csc-ink);
	color: #fff;
	padding: 0.55rem 1.05rem;
	border-radius: 6px;
	text-decoration: none;
}

.csc-nav .csc-nav-cta > .wp-block-navigation-item__content:hover,
.csc-nav .csc-nav-cta.current-menu-item > .wp-block-navigation-item__content {
	background: var(--csc-red);
	color: #fff;
}

.csc-nav .wp-block-navigation__submenu-container {
	border: 1px solid var(--csc-line) !important;
	border-radius: 10px;
	box-shadow: var(--csc-shadow);
	padding: 0.4rem !important;
	min-width: 230px !important;
}

.csc-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	padding: 0.55rem 0.8rem !important;
	border-radius: 6px;
}

.csc-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover {
	background: var(--wp--preset--color--mist);
}

.csc-nav .wp-block-navigation__responsive-container.is-menu-open {
	padding: 1.5rem clamp(1.25rem, 5vw, 2.5rem);
}

.csc-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
	gap: 0.75rem;
	font-size: 1.125rem;
}

/* ==========================================================================
   Zajednički elementi
   ========================================================================== */

.csc-eyebrow {
	font-family: var(--csc-mono);
	font-size: 0.8125rem;
	font-weight: 500;
	letter-spacing: 0.08em;
	line-height: 1.4;
	text-transform: uppercase;
	color: var(--csc-red);
	margin: 0;
}

.csc-eyebrow::before {
	content: "// ";
	opacity: 0.55;
}

.csc-section {
	padding-block: clamp(3.5rem, 8vw, 6.5rem);
}

.csc-section--mist {
	background: var(--wp--preset--color--mist);
}

.csc-section--tight {
	padding-block: clamp(2.5rem, 5vw, 4rem);
}

.csc-section-head {
	max-width: 46rem;
	margin-block-end: clamp(2rem, 4vw, 3rem) !important;
}

.csc-section-head > * {
	margin-block: 0;
}

.csc-section-title {
	font-size: var(--wp--preset--font-size--xx-large);
	letter-spacing: -0.025em;
	margin-block-start: 0.7rem !important;
}

.csc-section-lead {
	color: var(--csc-muted);
	font-size: var(--wp--preset--font-size--large);
	line-height: 1.55;
	margin-block-start: 1rem !important;
}

.csc-head-row {
	gap: 1.5rem;
	align-items: flex-end;
	margin-block-end: clamp(2rem, 4vw, 3rem) !important;
}

.csc-head-row .csc-section-head {
	margin-block-end: 0 !important;
}

.csc-more-link {
	font-weight: 600;
	font-size: var(--wp--preset--font-size--small);
	margin: 0;
	white-space: nowrap;
}

.csc-more-link a {
	text-decoration: none;
}

.csc-more-link a::after {
	content: " →";
	transition: margin-left 0.2s;
}

.csc-more-link a:hover::after {
	margin-left: 0.2em;
}

.csc-note {
	font-size: var(--wp--preset--font-size--small);
	color: var(--csc-muted);
}

/* ==========================================================================
   Naslovna: uvod (hero)
   ========================================================================== */

.csc-hero {
	position: relative;
	overflow: hidden;
	color: var(--wp--preset--color--on-ink);
	padding-block: clamp(4rem, 9vw, 7.5rem);
	background:
		radial-gradient(52rem 26rem at 92% -12%, rgba(200, 22, 29, 0.42), transparent 62%),
		radial-gradient(36rem 26rem at -8% 118%, rgba(70, 110, 190, 0.2), transparent 60%),
		linear-gradient(rgba(255, 255, 255, 0.045) 1px, transparent 1px) 0 0 / 44px 44px,
		linear-gradient(90deg, rgba(255, 255, 255, 0.045) 1px, transparent 1px) 0 0 / 44px 44px,
		var(--csc-ink);
}

.csc-hero::after {
	content: "";
	position: absolute;
	inset: auto 0 0 0;
	height: 1px;
	background: linear-gradient(90deg, transparent, rgba(255, 107, 114, 0.75), transparent);
}

.csc-hero__cols {
	gap: clamp(2rem, 5vw, 4.5rem) !important;
	align-items: center !important;
}

.csc-hero .csc-eyebrow {
	color: var(--csc-red-on-ink);
}

.csc-hero__title {
	color: #fff;
	font-size: var(--wp--preset--font-size--display);
	font-weight: 600;
	line-height: 1.04;
	letter-spacing: -0.03em;
	max-width: 13ch;
	margin-block-start: 0.9rem !important;
}

.csc-hero__lead {
	font-size: var(--wp--preset--font-size--large);
	line-height: 1.55;
	color: var(--wp--preset--color--on-ink);
	max-width: 36rem;
	margin-block-start: 1.4rem !important;
}

.csc-hero .wp-block-buttons {
	margin-block-start: 2.2rem !important;
	gap: 0.75rem;
}

.csc-hero .is-style-outline > .wp-block-button__link,
.csc-cert .is-style-outline > .wp-block-button__link {
	color: #fff;
	background: transparent;
	border: 1px solid rgba(255, 255, 255, 0.35);
}

.csc-hero .is-style-outline > .wp-block-button__link:hover,
.csc-cert .is-style-outline > .wp-block-button__link:hover {
	border-color: #fff;
	background: rgba(255, 255, 255, 0.07);
}

/* Panel s činjenicama u stilu terminala */
.csc-terminal {
	background: rgba(255, 255, 255, 0.035);
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: var(--csc-radius);
	box-shadow: 0 40px 80px -40px rgba(0, 0, 0, 0.75), inset 0 1px 0 rgba(255, 255, 255, 0.06);
	-webkit-backdrop-filter: blur(6px);
	backdrop-filter: blur(6px);
	overflow: hidden;
}

.csc-terminal > * {
	margin: 0 !important;
}

.csc-terminal__bar {
	position: relative;
	font-family: var(--csc-mono);
	font-size: 0.78rem;
	letter-spacing: 0.02em;
	color: #8d9ab0;
	padding: 0.75rem 1.1rem 0.75rem 4rem;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.csc-terminal__bar::before {
	content: "";
	position: absolute;
	left: 1.1rem;
	top: 50%;
	width: 9px;
	height: 9px;
	border-radius: 50%;
	transform: translateY(-50%);
	background: var(--csc-red-on-ink);
	box-shadow: 15px 0 0 rgba(255, 255, 255, 0.22), 30px 0 0 rgba(255, 255, 255, 0.22);
}

.csc-facts {
	margin: 0;
	padding: 0.4rem 1.25rem 0.9rem;
}

.csc-facts table {
	width: 100%;
	border-collapse: collapse;
	font-family: var(--csc-mono);
	font-size: 0.875rem;
	line-height: 1.5;
}

.csc-facts td {
	border: 0;
	border-bottom: 1px dashed rgba(255, 255, 255, 0.1);
	padding: 0.8rem 0;
	vertical-align: top;
	color: #e8edf5;
}

.csc-facts tr:last-child td {
	border-bottom: 0;
}

.csc-facts td:first-child {
	width: 34%;
	padding-right: 1rem;
	color: #8d9ab0;
	white-space: nowrap;
}

.csc-facts td:first-child::before {
	content: "› ";
	color: var(--csc-red-on-ink);
}

.csc-facts a {
	color: #fff;
}

/* ==========================================================================
   Naslovna: brojke
   ========================================================================== */

.csc-stats {
	background: var(--wp--preset--color--ink-2);
	color: var(--wp--preset--color--on-ink);
	padding-block: clamp(2.25rem, 4vw, 3rem);
}

.csc-stats__grid {
	gap: 0 !important;
}

.csc-stat {
	padding: 0.25rem 2rem;
	border-left: 1px solid rgba(255, 255, 255, 0.12);
}

.csc-stat:first-child {
	border-left: 0;
	padding-left: 0;
}

.csc-stat > * {
	margin: 0 !important;
}

.csc-stat__num {
	font-size: clamp(2.25rem, 4vw, 3rem);
	font-weight: 600;
	line-height: 1;
	letter-spacing: -0.03em;
	color: #fff;
}

.csc-stat__num::after {
	content: "";
	display: block;
	width: 28px;
	height: 3px;
	margin-top: 0.9rem;
	background: var(--csc-red);
}

.csc-stat__label {
	font-size: var(--wp--preset--font-size--small);
	line-height: 1.5;
	color: #aeb9ca;
	margin-top: 0.85rem !important;
}

/* ==========================================================================
   Kartice
   ========================================================================== */

.csc-card {
	position: relative;
	background: #fff;
	border: 1px solid var(--csc-line);
	border-radius: var(--csc-radius);
	padding: 1.75rem 1.6rem 1.85rem;
	transition: border-color 0.2s, box-shadow 0.2s, transform 0.2s;
}

.csc-card:hover {
	border-color: rgba(200, 22, 29, 0.4);
	box-shadow: var(--csc-shadow);
	transform: translateY(-3px);
}

.csc-card > * {
	margin-block: 0;
}

.csc-card > * + * {
	margin-block-start: 0.7rem !important;
}

.csc-card__num {
	font-family: var(--csc-mono);
	font-size: 0.8125rem;
	letter-spacing: 0.08em;
	color: var(--csc-red);
}

.csc-card h3 {
	font-size: 1.25rem;
	margin-block-start: 1rem !important;
}

.csc-card p:not(.csc-card__num):not(.csc-eyebrow):not(.csc-person__avatar):not(.csc-person__role) {
	color: var(--csc-muted);
	font-size: var(--wp--preset--font-size--small);
	line-height: 1.6;
}

/* Istaknuti cilj: CERT */
.csc-cert {
	margin-block-start: 1.25rem !important;
	padding: clamp(1.75rem, 4vw, 2.75rem);
	border-radius: var(--csc-radius);
	color: var(--wp--preset--color--on-ink);
	background:
		radial-gradient(30rem 16rem at 100% 0%, rgba(200, 22, 29, 0.38), transparent 65%),
		linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px) 0 0 / 36px 36px,
		linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px) 0 0 / 36px 36px,
		var(--csc-ink);
}

.csc-cert > * {
	margin-block: 0;
	max-width: 48rem;
}

.csc-cert > * + * {
	margin-block-start: 0.85rem !important;
}

.csc-cert .csc-eyebrow {
	color: var(--csc-red-on-ink);
}

.csc-cert h3 {
	color: #fff;
	font-size: var(--wp--preset--font-size--x-large);
}

.csc-cert a {
	color: #fff;
}

/* ==========================================================================
   Kartice objava (petlja upita)
   ========================================================================== */

.csc-post-grid > li {
	margin: 0;
}

.csc-post-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	background: #fff;
	border: 1px solid var(--csc-line);
	border-radius: var(--csc-radius);
	overflow: hidden;
	transition: box-shadow 0.25s, transform 0.25s, border-color 0.25s;
}

.csc-post-card:hover {
	box-shadow: var(--csc-shadow);
	transform: translateY(-3px);
	border-color: #d3d8e0;
}

.csc-post-card:not(:has(.csc-post-card__media)) {
	border-top: 3px solid var(--csc-red);
}

.csc-post-card__media {
	margin: 0 !important;
	overflow: hidden;
	background: var(--wp--preset--color--mist);
}

.csc-post-card__media img {
	display: block;
	transition: transform 0.5s ease;
}

.csc-post-card:hover .csc-post-card__media img {
	transform: scale(1.035);
}

.csc-post-card__body {
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
	flex: 1;
	padding: 1.25rem 1.4rem 1.5rem;
	margin: 0 !important;
}

.csc-post-card__body > * {
	margin: 0 !important;
}

.csc-post-card__title {
	font-size: 1.1875rem;
	line-height: 1.35;
	letter-spacing: -0.01em;
}

.csc-post-card__title a {
	color: var(--wp--preset--color--text);
	text-decoration: none;
}

.csc-post-card__title a:hover {
	color: var(--csc-red);
}

.csc-post-card__excerpt {
	font-size: var(--wp--preset--font-size--small);
	line-height: 1.6;
	color: var(--csc-muted);
}

.csc-post-card__excerpt p {
	margin: 0;
}

.csc-meta {
	gap: 0.5rem 0.75rem !important;
	align-items: center;
}

.csc-chip {
	font-family: var(--csc-mono);
	font-size: 0.72rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	line-height: 1;
}

.csc-chip a {
	display: inline-block;
	padding: 0.32rem 0.55rem;
	border-radius: 4px;
	background: var(--wp--preset--color--red-tint);
	color: var(--csc-red-dark);
	font-weight: 500;
	text-decoration: none;
}

.csc-chip a:hover {
	background: var(--csc-red);
	color: #fff;
}

.csc-chip .wp-block-post-terms__separator {
	display: none;
}

.csc-date {
	font-family: var(--csc-mono);
	font-size: 0.8125rem;
	color: var(--csc-muted);
}

.csc-pagination {
	margin-block-start: 2.5rem !important;
	font-family: var(--csc-mono);
	font-size: 0.875rem;
	gap: 0.4rem;
}

.csc-pagination a,
.csc-pagination .page-numbers {
	display: inline-block;
	padding: 0.45rem 0.75rem;
	border: 1px solid var(--csc-line);
	border-radius: 6px;
	text-decoration: none;
	color: var(--wp--preset--color--text);
	background: #fff;
}

.csc-pagination .page-numbers.current {
	background: var(--csc-ink);
	border-color: var(--csc-ink);
	color: #fff;
}

/* ==========================================================================
   Kronologija
   ========================================================================== */

.csc-timeline-cols {
	gap: clamp(2rem, 5vw, 4rem) !important;
}

.csc-timeline {
	position: relative;
	padding-left: 2.25rem;
}

.csc-timeline::before {
	content: "";
	position: absolute;
	left: 0.45rem;
	top: 0.6rem;
	bottom: 1.2rem;
	width: 2px;
	background: linear-gradient(var(--csc-red), rgba(200, 22, 29, 0.12));
}

.csc-tl-item {
	position: relative;
	padding-bottom: 2.1rem;
	margin: 0 !important;
}

.csc-tl-item:last-child {
	padding-bottom: 0;
}

.csc-tl-item::before {
	content: "";
	position: absolute;
	left: calc(-2.25rem + 0.45rem - 5px);
	top: 0.3rem;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: #fff;
	border: 2px solid var(--csc-red);
	box-shadow: 0 0 0 4px #fff;
}

.csc-tl-item > * {
	margin: 0 !important;
}

.csc-tl-date {
	font-family: var(--csc-mono);
	font-size: 0.8125rem;
	letter-spacing: 0.04em;
	color: var(--csc-red);
}

.csc-tl-title {
	font-size: 1.1875rem;
	margin-top: 0.35rem !important;
}

.csc-tl-text {
	font-size: var(--wp--preset--font-size--small);
	color: var(--csc-muted);
	line-height: 1.6;
	margin-top: 0.35rem !important;
}

@media (min-width: 782px) {
	.csc-sticky {
		position: sticky;
		top: calc(var(--wp-admin--admin-bar--height, 0px) + 7rem);
	}
}

/* ==========================================================================
   O Centru, suradnja, poziv na akciju
   ========================================================================== */

.csc-media-cols {
	gap: clamp(2rem, 5vw, 4.5rem) !important;
	align-items: center !important;
}

.csc-photo {
	margin: 0;
}

.csc-photo img {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	border-radius: var(--csc-radius);
	box-shadow: var(--csc-shadow);
}

.csc-lead-quote {
	font-size: clamp(1.25rem, 2.1vw, 1.5rem);
	font-weight: 500;
	line-height: 1.4;
	letter-spacing: -0.015em;
	color: var(--wp--preset--color--text);
	border-left: 3px solid var(--csc-red);
	padding-left: 1.25rem;
}

.csc-partners {
	gap: 0.65rem !important;
}

.csc-partner {
	margin: 0 !important;
	padding: 0.6rem 1.1rem;
	border: 1px solid var(--csc-line);
	border-radius: 999px;
	background: #fff;
	font-size: var(--wp--preset--font-size--small);
	font-weight: 500;
	line-height: 1.3;
}

.csc-partners + .csc-more-link {
	margin-top: 1.75rem !important;
}

.csc-cta {
	color: #fff;
	padding-block: clamp(3rem, 6vw, 4.5rem);
	background:
		radial-gradient(40rem 20rem at 100% 0%, rgba(255, 255, 255, 0.14), transparent 60%),
		linear-gradient(rgba(255, 255, 255, 0.06) 1px, transparent 1px) 0 0 / 40px 40px,
		linear-gradient(90deg, rgba(255, 255, 255, 0.06) 1px, transparent 1px) 0 0 / 40px 40px,
		var(--csc-red);
}

.csc-cta__inner {
	gap: 2rem;
	align-items: center;
}

.csc-cta__text > * {
	margin-block: 0;
}

.csc-cta__text > * + * {
	margin-block-start: 0.6rem !important;
}

.csc-cta h2 {
	color: #fff;
	font-size: var(--wp--preset--font-size--x-large);
	letter-spacing: -0.02em;
}

.csc-cta p {
	color: rgba(255, 255, 255, 0.9);
}

.csc-cta .wp-block-button__link {
	background: #fff;
	color: var(--csc-red-dark);
	font-family: var(--csc-mono);
	font-weight: 500;
}

.csc-cta .wp-block-button__link:hover {
	background: var(--csc-ink);
	color: #fff;
}

/* ==========================================================================
   Podnožje
   ========================================================================== */

.csc-footer {
	background: var(--csc-ink);
	color: #aeb8c7;
	font-size: var(--wp--preset--font-size--small);
	padding-block: clamp(3rem, 6vw, 4.5rem) 1.5rem;
}

.csc-footer__grid > * > * {
	margin-block: 0;
}

.csc-footer__grid > * > * + * {
	margin-block-start: 0.9rem !important;
}

.csc-footer a {
	color: #fff;
	text-decoration: none;
}

.csc-footer a:hover {
	color: var(--csc-red-on-ink);
}

.csc-footer__logo img {
	display: block;
	width: auto;
	height: 52px;
}

.csc-footer__title {
	color: #fff;
	font-family: var(--csc-mono);
	font-size: 0.78rem;
	font-weight: 500;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.csc-footer__links {
	list-style: none;
	padding: 0;
}

.csc-footer__links li + li {
	margin-top: 0.5rem;
}

.csc-footer__bottom {
	margin-block-start: 3rem !important;
	padding-top: 1.25rem;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	font-size: 0.8125rem;
	color: #8592a6;
	gap: 0.5rem 1.5rem;
}

.csc-footer__bottom p {
	margin: 0;
}

/* ==========================================================================
   Zaglavlje stranica
   ========================================================================== */

.csc-page-hero {
	position: relative;
	padding-block: clamp(3rem, 7vw, 5.5rem) clamp(2.5rem, 5vw, 3.75rem);
	background:
		linear-gradient(rgba(11, 18, 32, 0.045) 1px, transparent 1px) 0 0 / 44px 44px,
		linear-gradient(90deg, rgba(11, 18, 32, 0.045) 1px, transparent 1px) 0 0 / 44px 44px,
		var(--wp--preset--color--mist);
	border-bottom: 1px solid var(--csc-line);
}

.csc-page-hero::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: -1px;
	height: 3px;
	background: linear-gradient(90deg, var(--csc-red) 0 clamp(6rem, 18vw, 14rem), transparent 0);
}

.csc-page-hero__inner > * {
	margin-block: 0;
}

.csc-page-hero__title {
	font-size: var(--wp--preset--font-size--xx-large);
	letter-spacing: -0.025em;
	line-height: 1.1;
	max-width: 22ch;
	margin-block-start: 0.8rem !important;
}

.csc-page-hero__lead {
	max-width: 44rem;
	margin-block-start: 1rem !important;
	font-size: var(--wp--preset--font-size--large);
	line-height: 1.55;
	color: var(--csc-muted);
}

.csc-page-hero__lead p {
	margin: 0;
}

.csc-page-hero .wp-block-search {
	margin-block-start: 1.75rem !important;
	max-width: 32rem;
}

/* ==========================================================================
   Objava
   ========================================================================== */

.csc-article__head {
	padding-block: clamp(3rem, 7vw, 5rem) clamp(2rem, 4vw, 2.75rem);
	background:
		linear-gradient(rgba(11, 18, 32, 0.045) 1px, transparent 1px) 0 0 / 44px 44px,
		linear-gradient(90deg, rgba(11, 18, 32, 0.045) 1px, transparent 1px) 0 0 / 44px 44px,
		var(--wp--preset--color--mist);
	border-bottom: 1px solid var(--csc-line);
}

.csc-article__head > * {
	margin-block: 0;
}

.csc-article__title {
	font-size: var(--wp--preset--font-size--xx-large);
	line-height: 1.15;
	letter-spacing: -0.025em;
	margin-block-start: 1rem !important;
}

.csc-article__lead {
	margin-block-start: 1rem !important;
	font-size: var(--wp--preset--font-size--large);
	line-height: 1.55;
	color: var(--csc-muted);
}

.csc-article__lead p {
	margin: 0;
}

.csc-article__content {
	padding-block: clamp(2.25rem, 5vw, 3.5rem) 1rem;
}

.csc-article__foot {
	margin-block: 2.5rem clamp(3rem, 6vw, 4.5rem) !important;
	padding-top: 1.5rem;
	border-top: 1px solid var(--csc-line);
	gap: 1.5rem;
	font-size: var(--wp--preset--font-size--small);
}

.csc-article__foot .wp-block-post-navigation-link {
	max-width: 48%;
}

.csc-article__foot .post-navigation-link-next {
	margin-left: auto;
	text-align: right;
}

.csc-article__foot a {
	color: var(--wp--preset--color--text);
	text-decoration: none;
	font-weight: 500;
}

.csc-article__foot a:hover {
	color: var(--csc-red);
}

/* Sadržaj objava i stranica */
.wp-block-post-content h2 {
	margin-block-start: 2.5rem;
}

.wp-block-post-content h3 {
	margin-block-start: 2rem;
}

.wp-block-post-content .wp-block-table:not(.csc-facts):not(.csc-facts-light) table {
	border-collapse: collapse;
	width: 100%;
	font-size: var(--wp--preset--font-size--small);
}

.wp-block-post-content .wp-block-table:not(.csc-facts):not(.csc-facts-light) td,
.wp-block-post-content .wp-block-table:not(.csc-facts):not(.csc-facts-light) th {
	border: 1px solid var(--csc-line);
	padding: 0.7rem 0.9rem;
}

.wp-block-post-content .wp-block-table:not(.csc-facts):not(.csc-facts-light) tr:nth-child(even) td {
	background: var(--wp--preset--color--mist);
}

.wp-block-gallery.has-nested-images figure.wp-block-image img {
	border-radius: 8px;
}

.wp-block-post-content .wp-block-quote p {
	margin-block: 0;
}

.wp-block-post-content .wp-block-quote cite {
	display: block;
	margin-top: 0.75rem;
	font-size: var(--wp--preset--font-size--small);
	font-style: normal;
	color: var(--csc-muted);
}

/* ==========================================================================
   Stranice: O Centru, Ciljevi, Tim, Dokumenti, Propisi, Kontakt
   ========================================================================== */

.csc-facts-light {
	margin: 0;
}

.csc-facts-light table {
	width: 100%;
	border-collapse: collapse;
}

.csc-facts-light td {
	border: 0;
	border-bottom: 1px solid var(--csc-line);
	padding: 1rem 0;
	vertical-align: top;
	font-size: var(--wp--preset--font-size--small);
	line-height: 1.6;
}

.csc-facts-light tr:first-child td {
	border-top: 1px solid var(--csc-line);
}

.csc-facts-light td:first-child {
	width: 30%;
	padding-right: 1.25rem;
	font-family: var(--csc-mono);
	font-size: 0.8125rem;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--csc-muted);
}

.csc-vm-card .csc-lead-quote {
	font-size: var(--wp--preset--font-size--large);
}

.csc-goals .csc-goal--cert {
	grid-column: 1 / -1;
	background:
		radial-gradient(30rem 16rem at 100% 0%, rgba(200, 22, 29, 0.38), transparent 65%),
		linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px) 0 0 / 36px 36px,
		linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px) 0 0 / 36px 36px,
		var(--csc-ink);
	border-color: var(--csc-ink);
	color: var(--wp--preset--color--on-ink);
}

.csc-goals .csc-goal--cert h3 {
	color: #fff;
	font-size: var(--wp--preset--font-size--x-large);
}

.csc-goals .csc-goal--cert p:not(.csc-card__num) {
	color: var(--wp--preset--color--on-ink) !important;
	font-size: var(--wp--preset--font-size--medium) !important;
	max-width: 52rem;
}

.csc-goals .csc-goal--cert .csc-card__num {
	color: var(--csc-red-on-ink);
}

.csc-person__avatar {
	width: 64px;
	height: 64px;
	margin-bottom: 1.1rem !important;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: var(--csc-mono);
	font-size: 1.05rem;
	font-weight: 500;
	letter-spacing: 0.04em;
	color: #fff;
	background:
		linear-gradient(rgba(255, 255, 255, 0.07) 1px, transparent 1px) 0 0 / 10px 10px,
		var(--csc-ink);
}

.csc-person--lead {
	border-color: rgba(200, 22, 29, 0.45);
}

.csc-person--lead .csc-person__avatar {
	background: var(--csc-red);
}

.csc-person__role {
	font-family: var(--csc-mono);
	font-size: 0.75rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--csc-red);
}

.csc-person h3 {
	font-size: 1.1875rem !important;
	margin-block-start: 0.35rem !important;
}

.csc-docs {
	gap: 1rem !important;
}

.csc-doc {
	gap: 1.4rem !important;
	align-items: flex-start !important;
	background: #fff;
	border: 1px solid var(--csc-line);
	border-radius: var(--csc-radius);
	padding: 1.6rem;
}

.csc-doc__badge {
	flex-shrink: 0;
	width: 3.1rem;
	height: 3.9rem;
	margin: 0 !important;
	padding-bottom: 0.5rem;
	display: flex;
	align-items: flex-end;
	justify-content: center;
	font-family: var(--csc-mono);
	font-size: 0.72rem;
	font-weight: 500;
	letter-spacing: 0.06em;
	color: #fff;
	background: var(--csc-red);
	border-radius: 4px;
	clip-path: polygon(0 0, 68% 0, 100% 24%, 100% 100%, 0 100%);
}

.csc-doc__body {
	flex: 1;
	min-width: 0;
}

.csc-doc__body > * {
	margin-block: 0;
}

.csc-doc__body > * + * {
	margin-block-start: 0.55rem !important;
}

.csc-doc__body h3 {
	font-size: 1.1875rem;
	line-height: 1.35;
}

.csc-doc__meta {
	font-family: var(--csc-mono);
	font-size: 0.8125rem;
	color: var(--csc-muted);
}

.csc-doc__body p:not(.csc-doc__meta) {
	font-size: var(--wp--preset--font-size--small);
	color: var(--csc-muted);
}

.csc-doc__body .wp-block-buttons {
	margin-block-start: 1rem !important;
}

.csc-callout {
	padding: clamp(1.5rem, 4vw, 2.25rem);
	border-radius: var(--csc-radius);
	background: #fff;
	border: 1px solid var(--csc-line);
	border-left: 4px solid var(--csc-red);
}

.csc-callout > * {
	margin-block: 0;
}

.csc-callout > * + * {
	margin-block-start: 0.75rem !important;
}

.csc-callout h3 {
	font-size: 1.25rem;
}

.csc-law-group + .csc-law-group {
	margin-block-start: 2.75rem !important;
}

.csc-law-group > * {
	margin-block: 0;
}

.csc-law-group h2 {
	font-size: var(--wp--preset--font-size--large);
	margin-block-start: 0.5rem !important;
}

.csc-laws {
	list-style: none;
	padding: 0;
	margin-block-start: 1rem !important;
	border-top: 1px solid var(--csc-line);
}

.csc-laws li {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 1.25rem;
	padding: 0.95rem 0;
	border-bottom: 1px solid var(--csc-line);
	line-height: 1.45;
}

.csc-laws a {
	color: var(--wp--preset--color--text);
	font-weight: 500;
	text-decoration: none;
}

.csc-laws a:hover {
	color: var(--csc-red);
	text-decoration: underline;
}

.csc-laws code {
	flex-shrink: 0;
	font-family: var(--csc-mono);
	font-size: 0.78rem;
	color: var(--csc-muted);
	background: var(--wp--preset--color--mist);
	padding: 0.2rem 0.45rem;
	border-radius: 4px;
	white-space: nowrap;
}

/* ==========================================================================
   Prilagodbe za manje zaslone
   ========================================================================== */

@media (max-width: 781px) {
	.csc-logo img {
		height: 40px;
	}

	.csc-stat,
	.csc-stat:first-child {
		border-left: 0;
		padding: 1.1rem 0;
	}

	.csc-stat + .csc-stat {
		border-top: 1px solid rgba(255, 255, 255, 0.1);
	}

	.csc-facts td:first-child {
		width: 38%;
	}

	.csc-article__foot .wp-block-post-navigation-link {
		max-width: 100%;
	}

	.csc-laws li {
		flex-direction: column;
		gap: 0.4rem;
	}

	.csc-doc {
		flex-direction: column;
	}
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		transition: none !important;
		animation: none !important;
	}
}
