/* Novas Group — sekcije i komponente.
   Sve vrijednosti dolaze iz tokens.css. Bez radiusa, bez bolda, jedna sjena. */

/* Omotaci racunaju padding unutar max-widtha, inace je .nv-wrap 1392 umjesto 1320. */
*,
*::before,
*::after {
	box-sizing: border-box;
}

/* WordPress razmice djecu `.wp-site-blocks` za `--wp--style--block-gap`
   (24 px), pa je izmedju zaglavlja i sadrzaja te izmedju sadrzaja i podnozja
   stajala traka podloge stranice. Na tamnim sekcijama se nije vidjela, na
   fotografiji jest — 24 px crnog iznad heroja na /o-nama/.
   Razmak unutar sadrzaja se ne dira: odlomci u .nv-prose nose vlastite
   margine (15.5 px), ne blockGap. */
.wp-site-blocks > * + * {
	margin-block-start: 0;
}

/* ---------- osnove ---------- */

body {
	font-family: var(--nv-font-sans);
	font-size: var(--nv-body);
	line-height: var(--nv-body-lh);
	font-weight: 400;
}

h1, h2, h3, h4 {
	font-family: var(--nv-font-serif);
	font-weight: 400;
}

/* Goli naslovi u sadrzaju uzimaju velicinu iz theme.json, koji ima svoju
   fluidnu skalu. Na podstranicama vrijedi skala iz kruga -7, pa se ovdje
   preusmjeravaju na tokene.
   Selektor je namjerno slabe tezine (0,1,1) i stoji NA VRHU datoteke: svako
   kasnije pravilo s klasom (.nv-guide h3, .nv-nfaq__glava h2 …) ga nadjacava
   po redoslijedu, pa kartice zadrze svojih 23 px. */
body:not(.home) :where(main h2) {
	font-size: var(--nv-h2);
	line-height: var(--nv-h2-lh);
}

body:not(.home) :where(main h3) {
	font-size: var(--nv-h3);
	line-height: var(--nv-h3-lh);
}

body:not(.home) :where(main h4) {
	font-size: var(--nv-h4);
	line-height: var(--nv-h4-lh);
}

/* Dizajn nema ni jednu podebljanu rijec. */
strong, b, th {
	font-weight: 400;
}

/* iOS resetira izgled polja, bez ovoga vrati radius i sjenu. */
input, select, textarea, button {
	-webkit-appearance: none;
	appearance: none;
	border-radius: 0;
	font: inherit;
}

.nv-eyebrow {
	color: var(--nv-gold-500);
	font-size: var(--nv-eyebrow);
	letter-spacing: var(--nv-eyebrow-ls);
	text-transform: uppercase;
}

.nv-band--light .nv-eyebrow {
	color: var(--nv-gold-700);
}

/* ---------- ritam sekcija ----------
   Razmak nosi band, ne sekcija. Dvije susjedne sekcije s vlastitim
   padding-blockom zbrajale su se u prazan pojas od 152 px. */

.nv-band {
	padding-block: var(--nv-band-pad-top-mobile) var(--nv-band-pad-bottom-mobile);
}

.nv-band--light {
	background: var(--nv-sand-200);
	color: var(--nv-ink-body);
}

.nv-band--light :is(h1, h2, h3, h4) {
	color: var(--nv-ink);
}

.nv-band--light .nv-eyebrow {
	color: var(--nv-gold-700);
}

.nv-section {
	padding-block: 0;
}

.nv-section + .nv-section {
	margin-top: var(--nv-section-gap-mobile);
}

.nv-section h2:first-child,
.nv-section .nv-wrap > h2 {
	font-size: var(--nv-h2);
	line-height: var(--nv-h2-lh);
	margin: 0 0 var(--nv-heading-to-body);
}

.nv-section__lede {
	margin: 0 0 var(--nv-body-to-content);
	max-width: 62ch;
}

.nv-band--light .nv-section__lede {
	color: var(--nv-ink-body);
}

@media (min-width: 768px) {
	.nv-band {
		padding-block: var(--nv-band-pad-top-desktop) var(--nv-band-pad-bottom-desktop);
	}

	.nv-section + .nv-section {
		margin-top: var(--nv-section-gap-desktop);
	}
}

/* ---------- header ---------- */

.nv-header {
	background: var(--nv-header-glass-m);
	border-bottom: 1px solid rgba(255, 255, 255, 0.07);
}

/* WP renderira template-part kao <header>. Sticky na .nv-header unutra
   roditelj ne prenosi, pa ljepljivost ide na sam <header>. */
header:has(> .nv-header) {
	position: sticky;
	top: 0;
	z-index: 60;
}

/* Svaki skok na sidro (#id) mora stati ISPOD ovog zaglavlja: inace sadrzaj
   clanka vodica i gumb "Provjeri termin" dovedu gosta tocno na naslov koji
   je zaglavlje upravo pokrilo.

   Ide kao `scroll-padding-top` na spremnik, ne kao `scroll-margin` po
   elementu — tako vrijedi i za sidra koja jos ne postoje, i ne moze se
   zbrojiti s nekim drugim pravilom u dvostruki razmak.

   Brojke prate `.nv-header__inner`: 82 + 1 px obruba na desktopu, 64/62 + 1
   ispod 900. Zrak iznad naslova je u oba slucaja 27 px, isti koji ljepljivi
   stupci drze preko `top: 110px`. */
html {
	scroll-padding-top: 110px;
}

@media (max-width: 900px) {
	html {
		scroll-padding-top: 90px;
	}
}

@supports (backdrop-filter: blur(14px)) {
	.nv-header {
		backdrop-filter: blur(14px);
	}
}

.nv-header__inner {
	align-items: center;
	display: flex;
	gap: var(--nv-s5);
	justify-content: space-between;
	margin-inline: auto;
	max-width: var(--nv-wide);
	/* Artboard drzi zaglavlje na 82 px, a razmak radi visina, ne padding. */
	min-height: 82px;
	padding: 0 var(--nv-gutter-mobile);
}

.nv-nav ul {
	display: flex;
	gap: 18px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.nv-nav nav a {
	color: var(--nv-fg-nav);
	font-size: var(--nv-eyebrow);
	letter-spacing: 0.08em;
	padding-block: var(--nv-s2);
	text-decoration: none;
	text-transform: uppercase;
	transition: color var(--nv-dur-fast) var(--nv-ease);
	white-space: nowrap;
}

.nv-nav nav a:hover {
	color: var(--nv-fg);
}

.nv-nav .current-menu-item a,
.nv-nav [aria-current="page"] {
	border-bottom: 1px solid var(--nv-gold-500);
	color: var(--nv-fg-strong);
}

/* Artboard iz kruga -7 trazi hamburger ispod 900 px. Izmjereno 10.09.2026.:
   hrvatski i engleski izbornik stanu vec na 901, ali njemacki
   ("Immobilienverwaltung") tek od 951 px. Prag je zato 960 — 60 px iznad
   artboarda, jedan za sva tri jezika. Prije je bio 1200, sto je bilo
   pretjerano oprezno. */
.nv-nav {
	display: none;
}

/* Artboard: 46 x 46 px, sto je ujedno najmanja preporucena dodirna zona. */
.nv-burger {
	align-items: center;
	background: none;
	border: 1px solid rgba(255, 255, 255, 0.2);
	color: var(--nv-fg-strong);
	cursor: pointer;
	display: flex;
	height: 46px;
	justify-content: center;
	line-height: 0;
	padding: 0;
	width: 46px;
}

.nv-burger svg {
	height: 20px;
	width: 20px;
}

@media (min-width: 960px) {
	.nv-header {
		background: var(--nv-header-glass);
	}

	.nv-nav {
		align-items: center;
		display: flex;
		flex: 1;
		gap: var(--nv-s4);
	}

	/* Artboard: logo | izbornik | jezici + CTA kao tri skupine u
	   space-betweenu. Automatske margine daju izborniku jednak zrak s obje
	   strane; bez njih se sve tri skupine zbiju uz desni rub. */
	.nv-nav > nav {
		margin-inline: auto;
	}

	.nv-burger {
		display: none;
	}

	.nv-header__inner {
		padding-inline: var(--nv-gutter-desktop);
	}
}

/* ---------- prekidac jezika ---------- */

.nv-lang {
	display: flex;
	gap: 10px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.nv-lang a {
	color: #89867E;
	font-size: var(--nv-label);
	letter-spacing: 0.1em;
	text-decoration: none;
	text-transform: uppercase;
}

.nv-lang .current-lang a {
	border-bottom: 1px solid var(--nv-gold-500);
	color: var(--nv-fg);
	padding-bottom: 2px;
}

/* ---------- padajuci izbornik ----------
   Artboard crta strelicu 9x9 uz "Smjestaj" i "Vodic" (stroke 2.4, isti path
   kao chevron-down). Otvoreni panel nije nacrtan ni u jednom artboardu, pa je
   sastavljen od postojecih tokena: staklo zaglavlja, linija i mjera nadnaslova.

   Bez JS-a: panel je u DOM-u, sakriven opacity/visibility, pa ga tipkovnica
   otvara preko :focus-within kad se dodje do prve podstavke. */

.nv-nav__strelica {
	flex: none;
	height: 9px;
	margin-inline-start: 6px;
	stroke-width: 2.4;
	width: 9px;
}

.nv-nav nav a {
	align-items: center;
	display: inline-flex;
}

@media (min-width: 960px) {
	.nv-nav__ima-panel {
		position: relative;
	}

	.nv-nav .nv-nav__panel {
		background: var(--nv-header-glass);
		border: 1px solid var(--nv-line-dark);
		display: grid;
		inset-inline-start: 0;
		list-style: none;
		margin: 0;
		min-width: 232px;
		opacity: 0;
		padding: var(--nv-s3) 0;
		pointer-events: none;
		position: absolute;
		top: 100%;
		transition: opacity var(--nv-dur-fast) var(--nv-ease);
		visibility: hidden;
		z-index: 70;
	}

	@supports (backdrop-filter: blur(14px)) {
		.nv-nav .nv-nav__panel {
			backdrop-filter: blur(14px);
		}
	}

	.nv-nav .nv-nav__ima-panel:hover .nv-nav__panel,
	.nv-nav .nv-nav__ima-panel:focus-within .nv-nav__panel {
		opacity: 1;
		pointer-events: auto;
		visibility: visible;
	}

	.nv-nav .nv-nav__panel a {
		/* `.nv-nav nav a` vec nosi padding-block; bez ovoga se zbraja. */
		display: block;
		padding: 9px var(--nv-s5);
		white-space: nowrap;
	}

	.nv-nav .nv-nav__panel a:hover {
		background: var(--nv-ink-600);
		color: var(--nv-fg);
	}
}

/* Ispod 1200 px izbornik je ionako otvoreni panel, pa podstavke stoje uvucene. */
@media (max-width: 959px) {
	.nv-nav .nv-nav__panel {
		display: grid;
		gap: var(--nv-s2);
		list-style: none;
		margin: var(--nv-s2) 0 0;
		padding-inline-start: var(--nv-s5);
	}

	.nv-nav__strelica {
		display: none;
	}
}

/* ---------- jednoredni UI tekst ----------
   Artboard na <body> nema prored uopce — svaki blok postavlja svoj. Tema ima
   globalnih 1.72, sto je naslijedilo i gumbe, oznake i izbornik: CTA u
   zaglavlju bio je 52 px umjesto 40. Ovdje se vraca na `normal`, kako je u
   dizajnu; prozni tekst zadrzava --nv-body-lh. */

.nv-btn,
.nv-eyebrow,
.nv-nav nav a,
.nv-lang a,
.nv-tags li,
.nv-card__meta,
.nv-card__price,
.nv-bottombar__price {
	line-height: normal;
}

/* ---------- zaglavlje nekretnine (artboard "Vila MM", krug -6) ----------
   Naslov stoji PREKO fotografije. Do kruga -5 je bio na tamnoj podlozi iznad
   slika, po screens/05; artboard iz -6 to obrce i on je noviji. */

.nv-nhero {
	position: relative;
}

.nv-nhero__img {
	aspect-ratio: 16 / 9;
	display: block;
	max-height: 76vh;
	object-fit: cover;
	width: 100%;
}

/* Alfa je namjerno visoka: mrvice u 12.5 px inace padnu ispod kontrasta
   4.5:1 preko svijetlih dijelova fotografije. Ne smanjivati. */
.nv-nhero__scrim {
	background: linear-gradient(
		0deg,
		rgba(5, 12, 20, 0.96) 0%,
		rgba(5, 12, 20, 0.9) 30%,
		rgba(5, 12, 20, 0.82) 46%,
		rgba(5, 12, 20, 0.18) 100%
	);
	inset: 0;
	position: absolute;
}

.nv-nhero__tekst {
	align-items: flex-end;
	display: flex;
	inset: 0;
	position: absolute;
}

.nv-nhero__tekst > .nv-wrap {
	padding-bottom: var(--nv-s8);
	width: 100%;
}

.nv-nhero .nv-breadcrumbs {
	margin-bottom: var(--nv-s5);
}

.nv-nhero .nv-eyebrow {
	margin: 0 0 18px;
}

/* Podstranice drze H1 na 52 px; 66 px je samo naslovnica. */
.nv-nhero h1 {
	font-size: var(--nv-h1);
	letter-spacing: var(--nv-h1-ls);
	line-height: 1.08;
	margin: 0 0 22px;
	max-width: 900px;
	text-wrap: pretty;
}

.nv-nhero__traka {
	align-items: baseline;
	border-top: 1px solid var(--nv-line-dark-dash);
	color: var(--nv-fg-muted);
	display: flex;
	flex-wrap: wrap;
	font-size: 14px;
	gap: var(--nv-s4) 32px;
	justify-content: space-between;
	margin: 0;
	padding-top: var(--nv-s5);
}

.nv-nhero__min {
	color: var(--nv-fg-dim);
}

/* Objekt bez fotografije ne dobiva prazan crni pojas — tekst tada stoji
   na podlozi stranice, kao svaka druga podstranica. */
.nv-nhero--bez-slike .nv-nhero__scrim,
.nv-nhero--bez-slike .nv-nhero__tekst {
	position: static;
}

.nv-nhero--bez-slike .nv-nhero__scrim {
	display: none;
}

.nv-nhero--bez-slike .nv-nhero__tekst > .nv-wrap {
	padding-block: var(--nv-s8);
}

/* Krug -7: heroji ispod 900 px idu u portret 4:5, bez ogranicenja visine. */
@media (max-width: 900px) {
	.nv-nhero__img {
		aspect-ratio: 4 / 5;
		max-height: none;
	}

	.nv-nhero__traka {
		font-size: var(--nv-small);
		gap: var(--nv-s2);
	}
}

/* ---------- galerija: 2 velike + 6 malih, sve 3:2 ---------- */

.nv-galerija {
	padding-top: var(--nv-s6);
}

.nv-galerija__grid {
	display: grid;
	gap: var(--nv-s2);
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (min-width: 901px) {
	.nv-galerija__grid {
		grid-template-columns: repeat(6, minmax(0, 1fr));
	}

	.nv-galerija__plocica--velika {
		grid-column: span 3;
	}
}

/* Plocica je <button> jer otvara lightbox — resetiraju se izgled i padding. */
.nv-galerija__plocica {
	aspect-ratio: 3 / 2;
	background: var(--nv-ink-600);
	border: 0;
	cursor: pointer;
	display: block;
	overflow: hidden;
	padding: 0;
}

@media (min-width: 901px) {
	.nv-galerija__plocica--velika {
		grid-row: 1;
	}
}

/* Ispod 900 px mreza je 2 stupca, a velika plocica uzima oba (artboard). */
@media (max-width: 900px) {
	.nv-galerija__plocica--velika {
		grid-column: span 2;
	}
}

.nv-galerija__plocica img {
	display: block;
	height: 100%;
	object-fit: cover;
	transition: transform var(--nv-dur-base) var(--nv-ease);
	width: 100%;
}

.nv-galerija__plocica:hover img {
	transform: scale(1.03);
}

.nv-galerija__noga {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: var(--nv-s5);
	justify-content: space-between;
	padding-top: 18px;
}

.nv-galerija__note {
	color: var(--nv-fg-dim);
	font-size: 13px;
	margin: 0;
	max-width: 60ch;
}

/* ---------- fotografija u prozi ---------- */

/* Prozne stranice (page.html) nisu imale nacin da nose fotografiju. Slika ide
   punom sirinom stupca proze, u omjeru 3:2 kao i ostale plocice na sajtu. */
.nv-prose__img {
	margin-block: var(--nv-s6);
}

.nv-prose__img img {
	aspect-ratio: 3 / 2;
	display: block;
	height: auto;
	object-fit: cover;
	width: 100%;
}

/* ---------- lightbox: <dialog>, bez vanjske biblioteke ---------- */

.nv-lb {
	background: var(--nv-ink-900);
	border: 0;
	color: var(--nv-fg);
	height: 100%;
	max-height: 100%;
	max-width: 100%;
	padding: 0;
	width: 100%;
}

.nv-lb::backdrop {
	background: rgba(5, 12, 20, 0.92);
}

.nv-lb__traka {
	align-items: center;
	background: var(--nv-header-glass-m);
	border-bottom: 1px solid var(--nv-line-dark);
	display: flex;
	gap: var(--nv-s5);
	justify-content: space-between;
	min-height: 66px;
	padding-inline: var(--nv-gutter-mobile);
	position: sticky;
	top: 0;
	z-index: 1;
}

@supports (backdrop-filter: blur(14px)) {
	.nv-lb__traka {
		backdrop-filter: blur(14px);
	}
}

@media (min-width: 768px) {
	.nv-lb__traka {
		padding-inline: var(--nv-gutter-desktop);
	}
}

.nv-lb__naslov {
	color: var(--nv-fg-muted);
	font-size: var(--nv-btn);
	letter-spacing: 0.2em;
	margin: 0;
	text-transform: uppercase;
}

.nv-lb__zatvori {
	align-items: center;
	background: none;
	border: 0;
	color: var(--nv-gold-400);
	cursor: pointer;
	display: flex;
	font-size: var(--nv-btn);
	gap: 9px;
	letter-spacing: 0.2em;
	/* Dodirna zona ostaje 44 px i kad je tekst visok 13. */
	padding: var(--nv-s3) 0;
	text-transform: uppercase;
}

.nv-lb__zatvori svg {
	height: 16px;
	width: 16px;
}

.nv-lb__tijelo {
	margin-inline: auto;
	max-width: var(--nv-container);
	padding: var(--nv-s2) var(--nv-gutter-mobile) var(--nv-s9);
}

@media (min-width: 768px) {
	.nv-lb__tijelo {
		padding-inline: var(--nv-gutter-desktop);
	}
}

.nv-lb__grid {
	display: grid;
	gap: var(--nv-s1);
	padding-top: var(--nv-s2);
}

@media (min-width: 901px) {
	.nv-lb__grid {
		gap: var(--nv-s2);
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.nv-lb__grid figure {
	margin: 0;
}

.nv-lb__grid img {
	display: block;
	width: 100%;
}

.nv-lb__grid figcaption {
	color: var(--nv-fg-dim);
	font-size: var(--nv-btn);
	letter-spacing: 0.18em;
	padding-top: var(--nv-s3);
	text-transform: uppercase;
}

/* ---------- tijelo nekretnine: 1fr / 380 px ---------- */

.nv-ntijelo {
	display: grid;
	gap: var(--nv-s8);
	padding-top: var(--nv-s9);
}

@media (min-width: 901px) {
	.nv-ntijelo {
		align-items: start;
		gap: var(--nv-s9);
		grid-template-columns: minmax(0, 1fr) 380px;
	}
}

.nv-ntijelo__glavno {
	display: flex;
	flex-direction: column;
	gap: 56px;
	min-width: 0;
}

.nv-ntijelo__uvod {
	color: var(--nv-fg-muted);
	font-size: 19px;
	line-height: 1.65;
	margin: 0;
	max-width: 720px;
	text-wrap: pretty;
}

/* Svaka podsekcija pocinje istom oznakom na liniji od 1 px. */
.nv-nsec__oznaka {
	border-top: 1px solid var(--nv-line-dark-chip);
	color: var(--nv-gold-500);
	font-size: var(--nv-label);
	letter-spacing: var(--nv-label-ls);
	margin: 0 0 var(--nv-s6);
	padding-top: 18px;
	text-transform: uppercase;
}

.nv-nsec__oznaka--bez-linije {
	border-top: 0;
	margin-bottom: var(--nv-s3);
	padding-top: 0;
}

.nv-nsec__note {
	color: var(--nv-fg-dim);
	font-size: 14px;
	line-height: 1.7;
	margin: 0 0 22px;
	max-width: 620px;
}

.nv-nsec__proza {
	color: var(--nv-fg-muted);
	font-size: 15px;
	line-height: 1.75;
	margin: 0;
	max-width: 660px;
}

/* --- Prostor: sest plocica u dva stupca --- */

.nv-prostor {
	display: grid;
	gap: var(--nv-s6);
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (max-width: 900px) {
	.nv-prostor {
		grid-template-columns: minmax(0, 1fr);
	}
}

.nv-prostor__stavka img {
	aspect-ratio: 4 / 3;
	display: block;
	margin-bottom: var(--nv-s3);
	object-fit: cover;
	width: 100%;
}

.nv-prostor__naslov {
	color: var(--nv-fg-strong);
	font-size: 16px;
	margin: 0 0 var(--nv-s1);
}

.nv-prostor__detalj {
	color: var(--nv-fg-dim);
	font-size: 13px;
	line-height: 1.55;
	margin: 0;
}

/* --- Sto je ukljuceno: 12 stavki u tri stupca, bez bulleta --- */

.nv-ukljuceno {
	color: var(--nv-fg-muted);
	display: grid;
	font-size: 15px;
	gap: 14px var(--nv-s6);
	grid-template-columns: repeat(2, minmax(0, 1fr));
	line-height: 1.6;
	list-style: none;
	margin: 0;
	padding: 0;
}

@media (min-width: 901px) {
	.nv-ukljuceno {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

/* --- Cijene: 150px / 1fr / auto, redovi razdvojeni linijama --- */

.nv-cijene__red {
	align-items: baseline;
	border-top: 1px solid var(--nv-line-dark);
	display: grid;
	gap: var(--nv-s5);
	grid-template-columns: 150px minmax(0, 1fr) auto;
	padding: var(--nv-s4) 0;
}

.nv-cijene__red:last-child {
	border-bottom: 1px solid var(--nv-line-dark);
}

@media (max-width: 900px) {
	.nv-cijene__red {
		gap: var(--nv-s1) var(--nv-s4);
		grid-template-columns: minmax(0, 1fr) auto;
	}

	.nv-cijene__mjeseci {
		grid-column: 1 / -1;
		order: 3;
	}
}

.nv-cijene__sezona {
	color: var(--nv-fg-dim);
	font-size: 13px;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.nv-cijene__mjeseci {
	color: var(--nv-fg-dim);
	font-size: 14px;
}

.nv-cijene__iznos {
	font-size: 16px;
}

/* --- Udaljenosti: sest redova u dva stupca --- */

.nv-udaljenosti {
	display: grid;
	gap: var(--nv-s3) var(--nv-s7);
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-bottom: var(--nv-s6);
}

@media (max-width: 900px) {
	.nv-udaljenosti {
		grid-template-columns: minmax(0, 1fr);
	}
}

.nv-udaljenosti__red {
	border-bottom: 1px solid var(--nv-line-dark-soft);
	color: var(--nv-fg-muted);
	display: flex;
	font-size: 14px;
	gap: var(--nv-s4);
	justify-content: space-between;
	margin: 0;
	padding: var(--nv-s3) 0;
}

.nv-udaljenosti__koliko {
	color: var(--nv-fg-dim);
	text-align: end;
}

/* --- Panel Kalendar --- */

.nv-panel-inset {
	background: var(--nv-ink-700);
	border: 1px solid var(--nv-line-dark);
	padding: 32px 34px;
}

.nv-panel-inset p:last-child {
	color: var(--nv-fg-muted);
	font-size: 15px;
	line-height: 1.75;
	margin: 0;
}

/* --- Proza ispod strukturiranih sekcija --- */

.nv-nproza .nv-prose {
	max-width: none;
}

/* ---------- ljepljivi panel upita ---------- */

.nv-upit {
	background: var(--nv-ink-600);
	border: 1px solid rgba(255, 255, 255, 0.1);
	padding: var(--nv-s6) 26px 30px;
}

.nv-upit__cijena {
	align-items: baseline;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	display: flex;
	gap: var(--nv-s4);
	justify-content: space-between;
	padding-bottom: 18px;
}

.nv-upit__iznos {
	color: var(--nv-gold-400);
	font-family: var(--nv-font-serif);
	font-size: var(--nv-h3);
}

.nv-upit__po {
	color: var(--nv-fg-dim);
	font-size: 13px;
}

.nv-upit__forma {
	display: flex;
	flex-direction: column;
	gap: var(--nv-s4);
	padding-top: 22px;
}

.nv-upit__forma label {
	display: flex;
	flex-direction: column;
	gap: 7px;
}

/* Oznaka stoji IZNAD polja, ne u placeholderu — pravilo D3. */
.nv-upit__forma label > span {
	color: var(--nv-fg-dim);
	font-size: 9.5px;
	letter-spacing: 0.2em;
	text-transform: uppercase;
}

.nv-upit__forma select {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='%233D434B' stroke-width='2'%3E%3Cpath d='M5 8l7 7 7-7'/%3E%3C/svg%3E");
	background-position: right 12px center;
	background-repeat: no-repeat;
	background-size: 14px 14px;
	padding-right: 34px;
}

.nv-upit__forma :is(input, select) {
	background-color: var(--nv-sand-100);
	border: 1px solid var(--nv-line-field);
	color: var(--nv-ink);
	font-size: 15px;
	padding: 14px 15px;
	width: 100%;
}

.nv-upit__forma .nv-btn {
	justify-content: center;
	margin-top: var(--nv-s1);
}

.nv-upit__napomena {
	color: var(--nv-fg-faint);
	font-size: 12.5px;
	line-height: 1.6;
	margin: 0;
}

.nv-upit__cinjenice {
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	display: grid;
	font-size: var(--nv-small);
	gap: var(--nv-s3);
	margin: var(--nv-s6) 0 0;
	padding-top: var(--nv-s5);
}

.nv-upit__cinjenice > div {
	display: flex;
	gap: var(--nv-s3);
	justify-content: space-between;
}

.nv-upit__cinjenice dt {
	color: var(--nv-fg-dim);
}

.nv-upit__cinjenice dd {
	margin: 0;
	text-align: end;
}

.nv-upit__whatsapp {
	justify-content: center;
	margin-top: var(--nv-s5);
	width: 100%;
}

/* ---------- FAQ nekretnine: ljepljivi naslov lijevo ---------- */

.nv-nfaq__mreza {
	display: grid;
	gap: var(--nv-s8);
}

@media (min-width: 901px) {
	.nv-nfaq__mreza {
		align-items: start;
		gap: var(--nv-s9);
		grid-template-columns: var(--nv-sidecol) minmax(0, 1fr);
	}
}

.nv-nfaq__glava {
	display: flex;
	flex-direction: column;
	gap: var(--nv-s4);
}

.nv-nfaq__glava h2 {
	margin: 0;
}

.nv-nfaq__glava p {
	color: var(--nv-ink-muted);
	font-size: 14.5px;
	line-height: 1.7;
	margin: 0;
}

.nv-nfaq__glava .nv-btn {
	align-self: flex-start;
}

/* Artboard crta liniju i IZNAD prvog pitanja; .nv-faq nosi samo donje. */
.nv-nfaq__popis details:first-child {
	border-top: 1px solid var(--nv-line-light);
}

/* ---------- "Prije nego dodete" ----------
   Dva svijetla banda jedan do drugog zbroje svoje paddinge u prazan pojas od
   160 px; artboard drzi 72. Zato FAQ gubi donji, a vodici zadrzavaju gornji. */

.nv-nfaq {
	padding-bottom: 0;
}

.nv-nvodic {
	padding-top: var(--nv-section-gap-mobile);
}

@media (min-width: 768px) {
	.nv-nvodic {
		padding-top: var(--nv-section-gap-desktop);
	}
}

.nv-nvodic h2 {
	margin: 0 0 var(--nv-s6);
}

/* ---------- oprema u tri stupca (screens/06) ---------- */

.nv-prose .nv-oprema {
	display: grid;
	gap: 0 var(--nv-s7);
	list-style: none;
	margin: var(--nv-s6) 0;
	padding: 0;
}

@media (min-width: 700px) {
	.nv-prose .nv-oprema {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 1024px) {
	.nv-prose .nv-oprema {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.nv-prose .nv-oprema li {
	border-bottom: 1px solid var(--nv-line-dark);
	padding: var(--nv-s4) 0;
}

/* ---------- tijelo nekretnine: tekst i panel ---------- */

.nv-ndio {
	display: grid;
	gap: var(--nv-s8);
}

@media (min-width: 1100px) {
	.nv-ndio {
		align-items: start;
		gap: var(--nv-s9);
		grid-template-columns: minmax(0, 1fr) 340px;
	}
}

/* Proza vise ne treba vlastito ogranicenje — stupac ga daje. */
.nv-ndio .nv-prose {
	max-width: none;
}

/* screens/07: zlatno uokviren panel za rezervaciju. */
.nv-rezerviraj {
	border: 1px solid var(--nv-gold-500);
	padding: var(--nv-s7);
}

.nv-rezerviraj h2 {
	font-size: var(--nv-h3);
	line-height: var(--nv-h3-lh);
	margin: 0 0 var(--nv-s4);
}

.nv-rezerviraj p {
	color: var(--nv-fg-muted);
	margin: 0 0 var(--nv-s5);
}

.nv-rezerviraj .nv-btn {
	width: 100%;
	justify-content: center;
}

.nv-rezerviraj__kontakt {
	border-top: 1px solid var(--nv-line-dark);
	display: grid;
	gap: var(--nv-s3);
	margin: var(--nv-s6) 0 0;
	padding-top: var(--nv-s5);
}

.nv-rezerviraj__kontakt > div {
	display: flex;
	gap: var(--nv-s4);
	justify-content: space-between;
}

.nv-rezerviraj__kontakt dt {
	color: var(--nv-fg-muted);
	font-size: var(--nv-small);
}

.nv-rezerviraj__kontakt dd {
	margin: 0;
	text-align: end;
}

/* ---------- gumbi ---------- */

.nv-btn {
	background: var(--nv-gold-500);
	border: 1px solid var(--nv-gold-500);
	color: var(--nv-ink-800);
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	gap: var(--nv-s2);
	font-size: var(--nv-btn);
	letter-spacing: var(--nv-btn-ls);
	padding: 17px 30px;
	text-decoration: none;
	text-transform: uppercase;
	transition: background var(--nv-dur-fast) var(--nv-ease),
		border-color var(--nv-dur-fast) var(--nv-ease);
	white-space: nowrap;
}

/* Ikone su 24x24 u datoteci; artboard ih u gumbu crta na 14 px. Bez ovoga
   je CTA u zaglavlju bio 52 px visok umjesto 40. */
.nv-btn svg {
	flex: none;
	height: 14px;
	width: 14px;
}

.nv-btn:hover {
	background: var(--nv-gold-600);
	border-color: var(--nv-gold-600);
	color: var(--nv-ink-800);
}

.nv-btn:active {
	background: var(--nv-gold-700);
	border-color: var(--nv-gold-700);
}

.nv-btn[disabled],
.nv-btn[aria-disabled="true"] {
	background: transparent;
	border-color: var(--nv-line-dark-chip);
	color: var(--nv-fg-faint);
	cursor: not-allowed;
}

.nv-btn--outline {
	background: transparent;
	border-color: var(--nv-gold-500);
	color: var(--nv-gold-400);
}

.nv-btn--outline:hover {
	background: transparent;
	border-color: var(--nv-gold-500);
	color: var(--nv-gold-400);
}

.nv-band--light .nv-btn--outline {
	border-color: var(--nv-line-light);
	color: var(--nv-ink);
}

.nv-band--light .nv-btn--outline:hover {
	border-color: var(--nv-gold-700);
	color: var(--nv-bronze-800);
}

/* ---------- hero ---------- */

.nv-hero {
	align-items: end;
	display: grid;
	min-height: var(--nv-hero-height-mobile);
	position: relative;
}

@media (min-width: 768px) {
	.nv-hero {
		min-height: clamp(var(--nv-hero-min-desktop), 72vh, var(--nv-hero-max-desktop));
	}
}

.nv-hero__media {
	inset: 0;
	position: absolute;
	z-index: 0;
}

.nv-hero__media img {
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.nv-hero__media::after {
	background: linear-gradient(96deg, rgba(6, 14, 24, 0.95) 0%, rgba(6, 14, 24, 0.78) 46%, rgba(6, 14, 24, 0.2) 100%);
	content: "";
	inset: 0;
	position: absolute;
}

.nv-hero__body {
	margin-inline: auto;
	max-width: var(--nv-wide);
	padding: var(--nv-s10) var(--nv-gutter-mobile) var(--nv-s9);
	position: relative;
	width: 100%;
	z-index: 1;
}

.nv-hero h1 {
	font-size: var(--nv-h1);
	letter-spacing: var(--nv-h1-ls);
	line-height: var(--nv-h1-lh);
	margin: var(--nv-s4) 0 var(--nv-s5);
	max-width: 840px;
}

.nv-hero__lede {
	color: var(--nv-fg-muted);
	font-size: 1.0625rem;
	max-width: 520px;
}

@media (min-width: 768px) {
	.nv-hero__body {
		padding-inline: var(--nv-gutter-desktop);
	}
}

/* ---------- traka za pretragu ----------
   Upada 46 px u hero. Nijedan roditelj ne smije imati overflow: hidden. */

.nv-search {
	margin-block-start: calc(-1 * (var(--nv-band-pad-top-mobile) + 46px));
	margin-inline: auto;
	max-width: var(--nv-container);
	padding-inline: var(--nv-gutter-mobile);
	position: relative;
	z-index: 2;
}

.nv-search__inner {
	background: var(--nv-white);
	box-shadow: var(--nv-shadow-float);
	color: var(--nv-ink);
	display: grid;
	gap: 1px;
	padding: var(--nv-s4);
}

@media (min-width: 768px) {
	.nv-search {
		margin-block-start: calc(-1 * (var(--nv-band-pad-top-desktop) + 46px));
		padding-inline: var(--nv-gutter-desktop);
	}

	.nv-search__inner {
		align-items: end;
		grid-template-columns: repeat(3, minmax(0, 1fr)) auto;
		gap: 0;
		padding: var(--nv-s5) var(--nv-s6);
	}

	.nv-search__field + .nv-search__field {
		border-inline-start: 1px solid var(--nv-line-field);
		padding-inline-start: var(--nv-s5);
	}
}

.nv-search__field {
	display: grid;
	gap: var(--nv-s1);
	padding-block: var(--nv-s2);
}

.nv-search__field label {
	color: var(--nv-ink-muted);
	font-size: var(--nv-label);
	letter-spacing: var(--nv-label-ls);
	text-transform: uppercase;
}

.nv-search__field :is(input, select) {
	background: transparent;
	border: 0;
	color: var(--nv-ink);
	padding: 0;
	width: 100%;
}

/* ---------- kartice nekretnina ---------- */

.nv-cards {
	display: grid;
	gap: var(--nv-card-gap-mobile);
}

@media (min-width: 768px) {
	.nv-cards {
		gap: var(--nv-card-gap-desktop);
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.nv-card {
	background: var(--nv-ink-600);
	border: 1px solid rgba(255, 255, 255, .08);
	display: flex;
	flex-direction: column;
	transition: background var(--nv-dur-base) var(--nv-ease),
		border-color var(--nv-dur-base) var(--nv-ease);
}

.nv-card:hover {
	background: var(--nv-ink-500);
	border-color: var(--nv-gold-500);
}

.nv-card:hover :is(h2, h3),
.nv-card:hover :is(h2, h3) a {
	color: var(--nv-gold-400);
}

.nv-card__media {
	aspect-ratio: 16 / 10;
	overflow: hidden;
}

.nv-card__media img {
	height: 100%;
	object-fit: cover;
	transition: transform var(--nv-dur-base) var(--nv-ease);
	width: 100%;
}

.nv-card:hover .nv-card__media img {
	transform: scale(1.03);
}

.nv-card__body {
	display: grid;
	gap: var(--nv-s3);
	padding: var(--nv-s6);
}

.nv-card h2,
.nv-card h3 {
	font-size: var(--nv-h3);
	line-height: var(--nv-h3-lh);
	margin: 0;
}

.nv-card__meta {
	color: var(--nv-fg-dim);
	font-size: var(--nv-small);
	margin: 0;
}

.nv-tags {
	display: flex;
	flex-wrap: wrap;
	gap: var(--nv-s2);
	list-style: none;
	margin: 0;
	padding: 0;
}

.nv-tags li {
	border: 1px solid var(--nv-line-dark-chip);
	color: var(--nv-fg-muted);
	font-size: var(--nv-small);
	padding: 7px 12px;
	white-space: nowrap;
}

.nv-card__foot {
	align-items: center;
	border-top: 1px solid var(--nv-line-dark);
	display: flex;
	gap: var(--nv-s4);
	justify-content: space-between;
	margin-top: var(--nv-s3);
	padding-top: var(--nv-s4);
}

.nv-card__price {
	color: var(--nv-gold-400);
	margin: 0;
	white-space: nowrap;
}

/* Kartica koja ceka podatke — ne prazna, nego oznacena. */
.nv-card--placeholder {
	background: var(--nv-ink-700);
	border: 1px dashed var(--nv-line-dark-dash);
	display: grid;
	min-height: 280px;
	place-content: center;
	text-align: center;
}

.nv-card--placeholder p {
	color: var(--nv-fg-faint);
	margin: 0;
	padding: var(--nv-s6);
}

/* ---------- traka jamstava ---------- */

.nv-usp {
	border: 1px solid var(--nv-line-dark);
	display: grid;
}

.nv-usp__cell {
	align-items: start;
	display: flex;
	gap: var(--nv-s4);
	padding: var(--nv-s6);
}

.nv-usp__cell + .nv-usp__cell {
	border-top: 1px solid var(--nv-line-dark);
}

.nv-usp__cell svg {
	color: var(--nv-gold-500);
	flex: none;
	height: 26px;
	width: 26px;
}

.nv-usp__cell strong {
	display: block;
	font-size: var(--nv-small);
}

.nv-usp__cell span {
	color: var(--nv-fg-dim);
	font-size: var(--nv-small);
}

@media (min-width: 768px) {
	.nv-usp {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	/* Okomite linije umjesto vodoravnih; grid-gap ovo ne moze. */
	.nv-usp__cell + .nv-usp__cell {
		border-inline-start: 1px solid var(--nv-line-dark);
		border-top: 0;
	}
}

.nv-band--light .nv-usp {
	border-color: var(--nv-line-light);
}

.nv-band--light .nv-usp__cell + .nv-usp__cell {
	border-color: var(--nv-line-light);
}

.nv-band--light .nv-usp__cell svg {
	color: var(--nv-gold-700);
}

.nv-band--light .nv-usp__cell span {
	color: var(--nv-ink-muted);
}

/* ---------- proza ---------- */

.nv-prose {
	max-width: var(--nv-prose);
}

.nv-prose p {
	font-size: var(--nv-body-long);
	line-height: var(--nv-body-long-lh);
}

.nv-prose h2 {
	font-size: var(--nv-h2);
	line-height: var(--nv-h2-lh);
	margin-block: var(--nv-s8) var(--nv-heading-to-body);
}

.nv-prose h3 {
	font-size: var(--nv-h3);
	margin-block: var(--nv-s7) var(--nv-s3);
}

/* ---------- FAQ ---------- */

.nv-faq {
	max-width: var(--nv-faq);
}

.nv-faq details {
	border-bottom: 1px solid var(--nv-line-dark);
}

.nv-faq summary {
	align-items: baseline;
	cursor: pointer;
	display: flex;
	font-size: var(--nv-faq-q);
	gap: var(--nv-s4);
	justify-content: space-between;
	list-style: none;
	padding-block: var(--nv-s5);
}

.nv-faq summary::-webkit-details-marker {
	display: none;
}

.nv-faq summary::after {
	color: var(--nv-gold-500);
	content: "+";
	flex: none;
}

.nv-faq details[open] summary::after {
	content: "\2212";
}

.nv-faq details > :not(summary) {
	color: var(--nv-fg-muted);
	margin-block: 0 var(--nv-s5);
	max-width: 70ch;
}

.nv-band--light .nv-faq details {
	border-color: var(--nv-line-light);
}

.nv-band--light .nv-faq summary::after {
	color: var(--nv-gold-700);
}

.nv-band--light .nv-faq details > :not(summary) {
	color: var(--nv-ink-body);
}

/* ---------- oprema ---------- */

.nv-amenities {
	display: grid;
	gap: 0;
	list-style: none;
	margin: 0;
	padding: 0;
}

@media (min-width: 768px) {
	.nv-amenities {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		column-gap: var(--nv-s8);
	}
}

.nv-amenities li {
	border-bottom: 1px solid var(--nv-line-dark);
	padding-block: var(--nv-s3);
}

/* ---------- forma ---------- */

.nv-form {
	display: grid;
	gap: var(--nv-s5);
	max-width: 720px;
}

.nv-field {
	display: grid;
	gap: var(--nv-s2);
}

.nv-field label {
	color: var(--nv-fg-dim);
	font-size: var(--nv-label);
	letter-spacing: var(--nv-label-ls);
	text-transform: uppercase;
}

.nv-field :is(input, select, textarea) {
	background: var(--nv-white);
	border: 1px solid var(--nv-line-field);
	color: var(--nv-ink);
	padding: 13px 14px;
	width: 100%;
}

.nv-field :is(input, select, textarea)::placeholder {
	color: var(--nv-ink-muted);
}

.nv-field[data-state="error"] :is(input, select, textarea) {
	border-color: var(--nv-error);
}

.nv-field__error {
	color: var(--nv-error-on-dark);
	font-size: var(--nv-small);
}

.nv-band--light .nv-field__error {
	color: var(--nv-error);
}

.nv-notice {
	border: 1px solid;
	padding: var(--nv-s4) var(--nv-s5);
}

.nv-notice--ok {
	border-color: var(--nv-success-on-dark);
	color: var(--nv-success-on-dark);
}

.nv-notice--err {
	border-color: var(--nv-error-on-dark);
	color: var(--nv-error-on-dark);
}

/* ---------- ljepljivi stupac ----------
   Radi samo ako nijedan roditelj nema overflow: hidden. */

/* Artboardi drze ljepljive stupce na 110 px = 82 px zaglavlja + 28. */
.nv-sticky {
	align-self: start;
}

@media (min-width: 901px) {
	.nv-sticky {
		position: sticky;
		top: 110px;
	}
}

@media (min-width: 1024px) {
	.nv-twocol {
		display: grid;
		gap: var(--nv-s9);
		grid-template-columns: var(--nv-sidecol) minmax(0, 1fr);
	}
}

/* ---------- footer ---------- */

.nv-footer {
	background: var(--nv-ink-900);
	border-top: 1px solid rgba(255, 255, 255, 0.08);
	padding-block: 44px var(--nv-s7);
}

.nv-footer__cols {
	display: grid;
	gap: var(--nv-s7);
}

@media (min-width: 768px) {
	.nv-footer__cols {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

/* Artboard `Podnožje`: sans 10 px, ls 0.22em, prigušen. Bio je serifni
   `--nv-small` u punoj svjetlini, pa je nadvladavao same linkove. */
.nv-footer h2 {
	color: var(--nv-fg-dim);
	font-family: var(--nv-font-sans);
	font-size: 10px;
	letter-spacing: 0.22em;
	margin: 0 0 15px;
	text-transform: uppercase;
}

/* Bez vlastite velicine <li> nasljeduje 16 px/1.72 iz tijela, pa je redak
   visok 28 px umjesto 16 i stupac se rastegne za trecinu. */
.nv-footer ul {
	display: grid;
	font-size: var(--nv-small);
	gap: 11px;
	line-height: 1.2;
	list-style: none;
	margin: 0;
	padding: 0;
}

.nv-footer a {
	color: var(--nv-fg-muted);
	font-size: var(--nv-small);
	text-decoration: none;
}

.nv-footer a:hover {
	color: var(--nv-fg);
}

.nv-footer__legal {
	border-top: 1px solid var(--nv-line-dark-soft);
	color: var(--nv-fg-faint);
	font-size: 11px;
	letter-spacing: 0.06em;
	margin-top: 30px;
	padding-top: 22px;
}

/* ---------- mobilna donja traka ---------- */

.nv-bottombar {
	background: var(--nv-header-glass-m);
	border-top: 1px solid var(--nv-line-dark);
	bottom: 0;
	display: flex;
	gap: var(--nv-s3);
	inset-inline: 0;
	padding: var(--nv-s3) var(--nv-gutter-mobile);
	position: fixed;
	z-index: 55;
}

.nv-bottombar .nv-btn {
	flex: 1;
	justify-content: center;
}

@media (min-width: 960px) {
	.nv-bottombar {
		display: none;
	}
}

/* Traka je fixed i visoka 79 px, pa bi bez ovoga trajno pokrila zadnji
   redak footera (copyright i OIB) na svakoj stranici ispod 1200 px. */
.nv-bottombar__spacer {
	height: var(--nv-s10);
}

@media (min-width: 960px) {
	.nv-bottombar__spacer {
		display: none;
	}
}

/* ---------- omotac i logo ---------- */

.nv-wrap {
	margin-inline: auto;
	max-width: var(--nv-container);
	padding-inline: var(--nv-gutter-mobile);
}

@media (min-width: 768px) {
	.nv-wrap {
		padding-inline: var(--nv-gutter-desktop);
	}
}

.nv-logo {
	align-items: center;
	color: var(--nv-fg);
	display: flex;
	gap: var(--nv-s3);
	text-decoration: none;
}

.nv-logo__mark {
	color: var(--nv-gold-500);
	height: 34px;
	width: 34px;
}

/* Artboard: serifni "NOVAS" 22 px iznad zlatnog "GROUP" 8.5 px.
   Prije je ovo bio jedan sans natpis od 11 px — upola manji od dizajna. */
.nv-logo__text {
	display: flex;
	flex-direction: column;
	line-height: 1;
	text-transform: uppercase;
}

.nv-logo__name {
	font-family: var(--nv-font-serif);
	font-size: 22px;
	letter-spacing: 0.15em;
}

.nv-logo__sub {
	color: var(--nv-gold-500);
	font-size: 8.5px;
	letter-spacing: 0.36em;
	margin-top: 3px;
}

/* Krug -7: red zaglavlja je 64 px ispod 900 px. Nacrtani mobilni artboard
   naslovnice drzi 62 px i logo 17/7 px na 390, pa ostaje i taj korak. */
@media (max-width: 900px) {
	.nv-header__inner {
		min-height: 64px;
	}
}

@media (max-width: 767px) {
	.nv-header__inner {
		gap: var(--nv-s3);
		min-height: 62px;
	}

	.nv-logo {
		gap: 9px;
	}

	.nv-logo__mark {
		height: 26px;
		width: 26px;
	}

	.nv-logo__name {
		font-size: 17px;
		letter-spacing: 0.14em;
	}

	.nv-logo__sub {
		font-size: 7px;
		letter-spacing: 0.34em;
		margin-top: 2px;
	}
}

/* ---------- uvodni odlomak pod H1 ---------- */

.nv-lede {
	color: var(--nv-fg-muted);
	font-size: var(--nv-h4);
	line-height: var(--nv-h4-lh);
	max-width: 46ch;
}

.nv-band--light .nv-lede {
	color: var(--nv-ink-body);
}

/* ---------- popravci nakon prvog pregleda ---------- */

/* Naslov kartice je link, ali ne smije biti podcrtan kao inline link. */
.nv-card :is(h2, h3) a,
.nv-card__media {
	color: inherit;
	text-decoration: none;
}

.nv-card :is(h2, h3) a:hover {
	color: var(--nv-gold-400);
}


/* Hero ne smije rasti s vrlo visokim viewportom, inace se fotografija
   razvuce a tekst ostane na dnu. */
.nv-hero {
	max-height: var(--nv-hero-max-desktop);
}

/* Gumb u headeru i u kartici dijele .nv-btn, ali kartica ga koristi kao
   oznaku unutar linka — bez vlastitog razmaka. */
.nv-card .nv-btn {
	padding: 12px 20px;
}

/* Kad su .nv-wrap i .nv-prose na istom elementu, mjera reda mora pobijediti
   sirinu stranice — inace tekst ide preko 1248 px i postaje necitljiv. */
.nv-wrap.nv-prose {
	max-width: calc(var(--nv-prose) + 2 * var(--nv-gutter-mobile));
}

@media (min-width: 768px) {
	.nv-wrap.nv-prose {
		max-width: calc(var(--nv-prose) + 2 * var(--nv-gutter-desktop));
	}
}

/* H1 podstranice je manji od naslovnice: dizajn trazi 58 px, ne 66. */
.nv-prose > h1 {
	font-size: clamp(2.125rem, 1.2rem + 3vw, 3.625rem);
	margin-bottom: var(--nv-s5);
}

.nv-prose > h1 + .nv-lede {
	margin-bottom: var(--nv-s8);
}

/* Zaglavlje stranice nekretnine iz kruga -5 (.nv-phero kao grid s medijem u
   pozadini) uklonjeno je 10.09.2026. Artboard iz -6 crta hero drugacije, a
   klasa .nv-phero je u -6 preuzeta za hero stranica "Za vlasnike" i "O nama".
   Stari goli `.nv-phero { display:grid; align-items:end; min-height:520px }`
   je zato ostao aktivan i gurao fotografiju na dno praznog pojasa od 124 px.
   Pravila za novi .nv-phero su nize, uz "hero s tekstom preko fotografije". */

/* ---------- kartice vodica (3 + 2) ---------- */

.nv-guides {
	display: grid;
	gap: var(--nv-card-gap-mobile);
}

@media (min-width: 900px) {
	.nv-guides {
		gap: var(--nv-card-gap-desktop);
		grid-template-columns: repeat(6, minmax(0, 1fr));
	}

	.nv-guide:nth-child(-n+3) {
		grid-column: span 2;
	}

	.nv-guide:nth-child(n+4) {
		grid-column: span 3;
	}
}

/* Tri kartice u ravnopravnim trecinama — "Prije nego dodete" i "Nastavite
   citati". Mora stajati IZA osnovnog .nv-guides jer ga inace sest stupaca
   iz osnovnog pravila pregazi i kartice ispadnu siroke jednu sestinu. */
@media (min-width: 901px) {
	.nv-guides--tri {
		gap: var(--nv-s5);
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.nv-guides--tri .nv-guide:nth-child(-n+3),
	.nv-guides--tri .nv-guide:nth-child(n+4) {
		grid-column: auto;
	}
}

.nv-guide {
	background: var(--nv-sand-50);
	border: 1px solid var(--nv-line-light);
	color: inherit;
	display: grid;
	text-decoration: none;
}

.nv-guide:hover {
	border-color: var(--nv-gold-700);
}

.nv-guide__media {
	aspect-ratio: 16 / 10;
	overflow: hidden;
}

.nv-guide__media img {
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.nv-guide__body {
	display: grid;
	gap: var(--nv-s2);
	padding: var(--nv-s5);
}

.nv-guide h3 {
	font-size: var(--nv-h4);
	line-height: var(--nv-h4-lh);
	margin: 0;
}

.nv-guide p {
	color: var(--nv-ink-muted);
	font-size: var(--nv-small);
	margin: 0;
}

/* Na mobitelu su kartice vodica horizontalne, slicica 118 px lijevo. */
@media (max-width: 899px) {
	.nv-guide {
		grid-template-columns: 118px minmax(0, 1fr);
	}

	.nv-guide__media {
		aspect-ratio: auto;
		height: 100%;
	}

	.nv-guide__body {
		padding: var(--nv-s4);
	}
}

/* ---------- hero s tekstom preko fotografije, vodoravni gradijent ----------
   Artboard "Za vlasnike": tekst je okomito centriran, gradijent ide slijeva
   udesno pod 96deg. Stranica nekretnine ima svoj (.nv-nhero) jer joj tekst
   sjeda na dno i gradijent ide odozdo. */

.nv-phero {
	position: relative;
}

.nv-phero__img {
	display: block;
	height: 56vh;
	min-height: 460px;
	object-fit: cover;
	width: 100%;
}

/* Artboard "O nama" drzi hero nize: 44vh, najmanje 380 px. Stoji ovdje, a ne
   uz ostatak stranice "O nama", jer mora doci PRIJE mobilnog upita — ista
   tezina selektora, pa odlucuje redoslijed. */
.nv-phero--nizak .nv-phero__img {
	height: 44vh;
	min-height: 380px;
}

.nv-phero__scrim {
	background: linear-gradient(
		96deg,
		rgba(6, 13, 22, 0.97) 0%,
		rgba(6, 13, 22, 0.9) 48%,
		rgba(6, 13, 22, 0.3) 100%
	);
	inset: 0;
	position: absolute;
}

.nv-phero__tekst {
	align-items: center;
	display: flex;
	inset: 0;
	position: absolute;
}

.nv-phero__tekst > .nv-wrap {
	width: 100%;
}

.nv-phero .nv-breadcrumbs {
	margin-bottom: var(--nv-s5);
}

.nv-phero .nv-eyebrow {
	margin: 0 0 var(--nv-s5);
}

.nv-phero h1 {
	font-size: var(--nv-h1);
	letter-spacing: var(--nv-h1-ls);
	line-height: 1.08;
	margin: 0 0 22px;
	max-width: 900px;
	text-wrap: pretty;
}

.nv-phero__lede {
	color: var(--nv-fg-muted);
	font-size: 17px;
	line-height: 1.7;
	margin: 0;
	max-width: 560px;
}

/* Heroji na 56vh (Za vlasnike) i 44vh (O nama) NE idu u 4:5 na mobitelu.
   Artboard u portret pretvara samo one zapisane kao 16/9 i 58vh — dakle
   nekretninu i clanak vodica. Provjereno mjerenjem artboarda na 390, 738 i
   900 px: ondje ostaju 396 odnosno 504 px visoki. */

/* ---------- "Sto radimo umjesto vas": 6 numeriranih celija ---------- */

.nv-sto {
	padding-top: 76px;
}

.nv-sto h2 {
	margin: 0 0 var(--nv-s4);
}

.nv-sto__lede {
	color: var(--nv-fg-muted);
	line-height: 1.75;
	margin: 0 0 var(--nv-s7);
	max-width: 700px;
}

/* Linija medju celijama je 1 px razmaka na svijetloj podlozi mreze — bez
   posebnih rubova po celiji koji se udvostrucuju na spojevima. */
.nv-sto__mreza {
	background: var(--nv-line-dark);
	border: 1px solid var(--nv-line-dark);
	display: grid;
	gap: 1px;
	grid-template-columns: minmax(0, 1fr);
}

@media (min-width: 901px) {
	.nv-sto__mreza {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 901px) {
	.nv-sto__mreza {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.nv-sto__celija {
	background: var(--nv-ink-700);
	padding: 30px 28px;
}

.nv-sto__broj {
	color: var(--nv-gold-500);
	font-size: var(--nv-label);
	letter-spacing: var(--nv-label-ls);
	margin: 0 0 14px;
	text-transform: uppercase;
}

.nv-sto__celija h3 {
	font-size: var(--nv-h4);
	line-height: var(--nv-h4-lh);
	margin: 0 0 10px;
}

.nv-sto__celija p:last-child {
	color: var(--nv-fg-dim);
	font-size: 14px;
	line-height: 1.7;
	margin: 0;
}

/* ---------- cetiri koraka suradnje ---------- */

.nv-koraci__sekcija h2 {
	margin: 0 0 var(--nv-s6);
}

.nv-koraci {
	border-block: 1px solid var(--nv-line-light);
	display: grid;
	grid-template-columns: minmax(0, 1fr);
}

@media (min-width: 901px) {
	.nv-koraci {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	.nv-korak {
		border-inline-end: 1px solid var(--nv-line-light-soft);
		padding: 30px 22px;
	}

	/* Prvi i zadnji stupac drze rub stranice, ne svoj padding. */
	.nv-korak:first-child {
		padding-inline-start: 0;
	}

	.nv-korak:last-child {
		border-inline-end: 0;
		padding-inline-end: 0;
	}
}

@media (max-width: 899px) {
	.nv-korak {
		padding: var(--nv-s5) 0;
	}

	.nv-korak + .nv-korak {
		border-top: 1px solid var(--nv-line-light-soft);
	}
}

.nv-korak__broj {
	color: var(--nv-gold-700);
	font-family: var(--nv-font-serif);
	font-size: var(--nv-h3);
	margin: 0 0 var(--nv-s3);
}

.nv-korak__naslov {
	color: var(--nv-ink);
	font-size: 15px;
	line-height: 1.6;
	margin: 0 0 6px;
}

.nv-korak__tekst {
	color: var(--nv-ink-muted);
	font-size: 13.5px;
	line-height: 1.65;
	margin: 0;
}

/* ---------- tri kartice modela naplate ---------- */

.nv-modeli {
	display: grid;
	gap: var(--nv-s5);
	grid-template-columns: minmax(0, 1fr);
	margin-top: 66px;
}

@media (min-width: 901px) {
	.nv-modeli {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.nv-model {
	background: var(--nv-sand-50);
	border: 1px solid var(--nv-line-light-soft);
	padding: 28px 26px;
}

.nv-model__oznaka {
	color: var(--nv-gold-700);
	font-size: var(--nv-label);
	letter-spacing: var(--nv-label-ls);
	margin: 0 0 14px;
	text-transform: uppercase;
}

.nv-model__iznos {
	color: var(--nv-ink);
	font-family: var(--nv-font-serif);
	font-size: var(--nv-h3);
	line-height: var(--nv-h3-lh);
	margin: 0 0 var(--nv-s3);
}

.nv-model__tekst {
	color: var(--nv-ink-muted);
	font-size: 13.5px;
	line-height: 1.7;
	margin: 0;
}

.nv-vlasnici__seo,
.nv-vlasnici__faq,
.nv-vlasnici__papiri {
	margin-top: 74px;
}

/* ---------- forma za procjenu prihoda ---------- */

.nv-procjena {
	display: grid;
	gap: var(--nv-s8);
	padding-block: 78px 88px;
}

@media (min-width: 901px) {
	.nv-procjena {
		align-items: start;
		gap: var(--nv-s9);
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.nv-procjena h2 {
	margin: 0 0 var(--nv-s4);
}

.nv-procjena .nv-eyebrow {
	margin: 0 0 18px;
}

.nv-procjena__lede {
	color: var(--nv-fg-muted);
	line-height: 1.75;
	margin: 0 0 26px;
	max-width: 520px;
}

.nv-procjena__note {
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	color: var(--nv-fg-dim);
	display: flex;
	flex-direction: column;
	font-size: 14px;
	gap: var(--nv-s3);
	padding-top: 22px;
}

/* ---------- O nama (artboard "O nama") ---------- */

.nv-onama__proza,
.nv-brojke {
	margin-top: 66px;
}

/* Red od cetiri brojke na linijama, s okomitim crtama medju stupcima. */
.nv-brojke {
	border-block: 1px solid var(--nv-line-light);
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	padding-inline: var(--nv-gutter-mobile);
}

@media (min-width: 901px) {
	.nv-brojke {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		padding-inline: var(--nv-gutter-desktop);
	}
}

.nv-brojka {
	padding: 30px 20px;
}

.nv-brojka:not(:last-child) {
	border-inline-end: 1px solid var(--nv-line-light-soft);
}

@media (min-width: 768px) {
	.nv-brojka:first-child {
		padding-inline-start: 0;
	}

	.nv-brojka:last-child {
		padding-inline-end: 0;
	}
}

.nv-brojka__broj {
	color: var(--nv-ink);
	font-family: var(--nv-font-serif);
	font-size: var(--nv-h2);
	line-height: 1;
	margin: 0 0 var(--nv-s3);
}

.nv-brojka__opis {
	color: var(--nv-ink-muted);
	font-size: 13.5px;
	line-height: 1.6;
	margin: 0;
}

/* ---------- pravne stranice (artboard "Uvjeti najma") ---------- */

.nv-pravno__glava {
	padding-block: 60px 46px;
}

.nv-pravno__glava h1 {
	font-size: var(--nv-h1);
	letter-spacing: var(--nv-h1-ls);
	line-height: 1.1;
	margin: 0 0 var(--nv-s5);
	max-width: 860px;
	text-wrap: pretty;
}

.nv-pravno__lede {
	color: var(--nv-fg-muted);
	font-size: 17px;
	line-height: 1.7;
	margin: 0 0 26px;
	max-width: 640px;
}

.nv-vtoc__brojevi a {
	display: flex;
	gap: var(--nv-s3);
}

.nv-vtoc__broj {
	color: var(--nv-gold-700);
	flex: 0 0 auto;
}

.nv-vtoc__nota {
	color: var(--nv-ink-muted);
	font-size: 13px;
	line-height: 1.7;
	margin: 0;
}

.nv-pravno__tijelo {
	max-width: var(--nv-prose);
}

/* Broj sekcije ispred naslova — brojac umjesto rucnog upisivanja u tekst. */
.nv-pravno__tijelo {
	counter-reset: nv-sekcija;
}

.nv-pravno__tijelo h2 {
	counter-increment: nv-sekcija;
	font-size: var(--nv-h3);
	line-height: var(--nv-h3-lh);
	margin-top: 44px;
}

.nv-pravno__tijelo h2::before {
	color: var(--nv-gold-700);
	content: counter(nv-sekcija);
	margin-inline-end: 14px;
}

.nv-pravno__tijelo > :first-child {
	margin-top: 0;
}

/* ---------- kontakt (artboard "Kontakt") ---------- */

.nv-kontakt__glava {
	padding-block: 60px 0;
}

.nv-kontakt__glava h1 {
	font-size: var(--nv-h1);
	letter-spacing: var(--nv-h1-ls);
	line-height: 1.1;
	margin: 0 0 var(--nv-s5);
	max-width: 860px;
	text-wrap: pretty;
}

.nv-kontakt__lede {
	color: var(--nv-fg-muted);
	font-size: 17px;
	line-height: 1.7;
	margin: 0;
	max-width: 600px;
}

.nv-kontakt {
	display: grid;
	gap: var(--nv-s8);
	padding-block: 52px 88px;
}

@media (min-width: 901px) {
	.nv-kontakt {
		align-items: start;
		gap: var(--nv-s9);
		grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
	}
}

/* --- sest redova cinjenica na linijama --- */

.nv-kredovi {
	margin: 0;
}

.nv-kredovi > div {
	align-items: baseline;
	border-top: 1px solid var(--nv-line-dark-soft);
	display: flex;
	gap: var(--nv-s5);
	justify-content: space-between;
	padding: 18px 0;
}

.nv-kredovi > div:first-child {
	border-top-color: var(--nv-line-dark-chip);
}

.nv-kredovi > div:last-child {
	border-bottom: 1px solid var(--nv-line-dark-soft);
}

.nv-kredovi dt {
	color: var(--nv-fg-dim);
	font-size: var(--nv-label);
	letter-spacing: var(--nv-label-ls);
	text-transform: uppercase;
}

.nv-kredovi dd {
	color: var(--nv-fg-muted);
	font-size: 15px;
	margin: 0;
	text-align: end;
}

.nv-kredovi__druga {
	color: var(--nv-fg-dim);
	display: block;
	font-size: 13px;
}

.nv-kontakt__gumbi {
	display: flex;
	flex-wrap: wrap;
	gap: var(--nv-s3);
	margin: 26px 0 0;
}

.nv-kontakt__gumbi .nv-btn {
	padding: 14px 20px;
}

/* --- mjesto za statičnu kartu --- */

.nv-karta {
	align-items: center;
	aspect-ratio: 16 / 10;
	background: var(--nv-ink-700);
	border: 1px dashed var(--nv-line-dark-dash);
	display: flex;
	flex-direction: column;
	gap: 10px;
	justify-content: center;
	margin-top: 34px;
	padding: var(--nv-s6);
	text-align: center;
}

.nv-karta svg {
	color: var(--nv-gold-500);
	height: 26px;
	width: 26px;
}

.nv-karta__gumb {
	margin-top: 4px;
}

.nv-karta__veza {
	font-size: var(--nv-fs-mali);
}

/* Kad je karta ucitana, okvir preuzima cijeli prostor kutije: crtkani rub i
   ikona su bili najava karte, ne njezin dio. */
.nv-karta--ucitana {
	border-style: solid;
	display: block;
	padding: 0;
	position: relative;
}

.nv-karta--ucitana > :not(.nv-karta__okvir) {
	display: none;
}

.nv-karta__okvir {
	border: 0;
	display: block;
	height: 100%;
	width: 100%;
}

.nv-karta__oznaka {
	color: var(--nv-gold-500);
	font-size: var(--nv-label);
	letter-spacing: var(--nv-label-ls);
	margin: 0;
	text-transform: uppercase;
}

.nv-karta__tekst {
	color: var(--nv-fg-dim);
	font-size: 13px;
	line-height: 1.7;
	margin: 0;
	max-width: 320px;
}

.nv-karta__slot {
	margin: 0;
}

/* --- poruke o ishodu slanja --- */

.nv-poruka {
	border: 1px solid;
	border-inline-start-width: 2px;
	margin-top: 22px;
	padding: 20px 22px;
}

.nv-poruka__h {
	font-family: var(--nv-font-serif);
	font-size: 19px;
	margin: 0 0 var(--nv-s2);
}

.nv-poruka p:last-child {
	color: var(--nv-fg-muted);
	font-size: 13px;
	line-height: 1.7;
	margin: 0;
}

.nv-poruka--ok {
	background: rgba(134, 194, 162, 0.12);
	border-color: rgba(134, 194, 162, 0.35);
	border-inline-start-color: var(--nv-success-on-dark);
}

.nv-poruka--ok .nv-poruka__h {
	color: var(--nv-success-on-dark);
}

.nv-poruka--greska {
	background: rgba(232, 144, 122, 0.14);
	border-color: rgba(232, 144, 122, 0.4);
	border-inline-start-color: var(--nv-error-on-dark);
}

.nv-poruka--greska .nv-poruka__h {
	color: var(--nv-error-on-dark);
}

/* ---------- forma na tamnoj podlozi ---------- */

.nv-forma {
	background: var(--nv-ink-600);
	border: 1px solid rgba(255, 255, 255, 0.1);
	display: flex;
	flex-direction: column;
	gap: 18px;
	padding: 32px 34px 34px;
}

.nv-forma label {
	display: flex;
	flex-direction: column;
	gap: 7px;
}

/* Oznaka iznad polja, ne u placeholderu — pravilo D3. */
.nv-forma label > span {
	color: var(--nv-fg-dim);
	font-size: 9.5px;
	letter-spacing: 0.2em;
	text-transform: uppercase;
}

.nv-forma :is(input:not([type="checkbox"]), select, textarea) {
	background-color: var(--nv-sand-100);
	border: 1px solid var(--nv-line-field);
	color: var(--nv-ink);
	font-size: 15px;
	padding: 15px 16px;
	width: 100%;
}

.nv-forma textarea {
	resize: vertical;
}

.nv-forma select {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='%233D434B' stroke-width='2'%3E%3Cpath d='M5 8l7 7 7-7'/%3E%3C/svg%3E");
	background-position: right 12px center;
	background-repeat: no-repeat;
	background-size: 14px 14px;
	padding-right: 34px;
}

.nv-forma__par {
	display: grid;
	gap: 18px;
	grid-template-columns: minmax(0, 1fr);
}

@media (min-width: 901px) {
	.nv-forma__par {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.nv-forma label.nv-forma__pristanak {
	align-items: flex-start;
	color: var(--nv-fg-muted);
	flex-direction: row;
	font-size: 13px;
	gap: var(--nv-s3);
	line-height: 1.6;
}

/* Globalni reset polja uzima `appearance`, pa kvadratic bez ovoga nestane. */
.nv-forma__pristanak input[type="checkbox"] {
	-webkit-appearance: checkbox;
	appearance: checkbox;
	accent-color: var(--nv-gold-500);
	flex: 0 0 auto;
	height: 20px;
	margin: 0;
	width: 20px;
}

/* `.nv-forma label > span` je specificniji od `.nv-forma__pristanak > span`,
   pa pristanak inace ostane verzal s razmakom slova kao oznaka polja. */
.nv-forma label.nv-forma__pristanak > span {
	color: var(--nv-fg-muted);
	font-size: 13px;
	letter-spacing: normal;
	text-transform: none;
}

.nv-forma .nv-btn {
	justify-content: center;
}

.nv-forma__oznaka {
	color: var(--nv-gold-500);
	font-size: var(--nv-label);
	letter-spacing: var(--nv-label-ls);
	margin: 0 0 2px;
	text-transform: uppercase;
}

.nv-forma__troje {
	display: grid;
	gap: 18px;
	grid-template-columns: minmax(0, 1fr);
}

@media (min-width: 901px) {
	.nv-forma__troje {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

/* Honeypot: iz toka, ali ne display:none — dio robota preskace skrivena polja. */
.nv-forma__med {
	height: 0;
	margin: 0;
	overflow: hidden;
	position: absolute;
	width: 0;
}

.nv-forma__off {
	color: var(--nv-fg-dim);
	font-size: 12.5px;
	line-height: 1.7;
	margin: 0;
}

.nv-forma .nv-btn[disabled] {
	cursor: not-allowed;
}

/* ---------- clanak vodica (artboard "Vodic - Plaze") ---------- */

.nv-vclanak__glava {
	padding-block: 60px 44px;
}

.nv-vclanak__glava .nv-eyebrow {
	margin: 0 0 18px;
}

.nv-vclanak__glava h1 {
	font-size: var(--nv-h1);
	letter-spacing: var(--nv-h1-ls);
	line-height: 1.1;
	margin: 0 0 22px;
	max-width: 900px;
	text-wrap: pretty;
}

.nv-vclanak__lede {
	color: var(--nv-fg-muted);
	font-size: 19px;
	line-height: 1.65;
	margin: 0 0 28px;
	max-width: 760px;
	text-wrap: pretty;
}

.nv-vclanak__meta {
	align-items: center;
	border-top: 1px solid var(--nv-line-dark-chip);
	color: var(--nv-fg-dim);
	display: flex;
	flex-wrap: wrap;
	font-size: 12.5px;
	gap: var(--nv-s5);
	margin: 0;
	padding-top: var(--nv-s5);
}

/* Kosa crta izmedju podataka, kao u artboardu — bez dodatnog markupa. */
.nv-vclanak__meta span + span::before {
	color: var(--nv-gold-700);
	content: "/";
	margin-inline-end: var(--nv-s5);
}

.nv-vclanak__hero {
	margin: 0;
}

.nv-vclanak__hero :is(img, picture) {
	display: block;
	height: 58vh;
	min-height: 400px;
	object-fit: cover;
	width: 100%;
}

.nv-vclanak__hero picture img {
	height: 100%;
	min-height: 0;
}

@media (max-width: 900px) {
	.nv-vclanak__hero :is(img, picture) {
		aspect-ratio: 4 / 5;
		height: auto;
		min-height: 0;
	}
}

.nv-vclanak__mreza {
	display: grid;
	gap: var(--nv-s8);
}

@media (min-width: 901px) {
	.nv-vclanak__mreza {
		align-items: start;
		gap: var(--nv-s9);
		grid-template-columns: var(--nv-sidecol) minmax(0, 1fr);
	}
}

.nv-vclanak__proza {
	max-width: var(--nv-prose);
}

/* --- ljepljivi sadrzaj clanka --- */

.nv-vtoc {
	display: flex;
	flex-direction: column;
	gap: 18px;
}

.nv-vtoc__oznaka {
	color: var(--nv-gold-700);
	font-size: var(--nv-label);
	letter-spacing: var(--nv-label-ls);
	margin: 0;
	text-transform: uppercase;
}

.nv-vtoc nav {
	display: flex;
	flex-direction: column;
}

.nv-vtoc nav a {
	border-top: 1px solid var(--nv-line-light);
	color: var(--nv-ink);
	font-size: 14px;
	line-height: 1.5;
	padding: var(--nv-s3) 0;
	text-decoration: none;
}

.nv-vtoc nav a:last-child {
	border-bottom: 1px solid var(--nv-line-light);
}

.nv-vtoc nav a:hover {
	color: var(--nv-bronze-800);
}

.nv-vtoc__cta {
	background: var(--nv-sand-50);
	border: 1px solid var(--nv-line-light-soft);
	padding: 22px 24px;
}

.nv-vtoc__cta p:not(.nv-vtoc__oznaka) {
	color: var(--nv-ink-body);
	font-size: 14px;
	line-height: 1.7;
	margin: 0 0 var(--nv-s4);
}

.nv-vtoc__cta .nv-vtoc__oznaka {
	margin-bottom: var(--nv-s3);
}

/* ---------- arhiva vodica (artboard "Vodic - arhiva") ---------- */

.nv-varhiva__glava {
	padding-block: var(--nv-s9) 58px;
}

.nv-varhiva__glava h1 {
	font-size: var(--nv-h1);
	letter-spacing: var(--nv-h1-ls);
	line-height: 1.1;
	margin: 0 0 var(--nv-s5);
	max-width: 900px;
	text-wrap: pretty;
}

.nv-varhiva__glava .nv-lede {
	margin: 0 0 34px;
	max-width: 640px;
}

/* --- cipovi filtra --- */

.nv-filtri {
	display: flex;
	flex-wrap: wrap;
	gap: 9px;
}

.nv-cip {
	background: none;
	border: 1px solid var(--nv-line-dark-chip);
	color: var(--nv-fg-nav);
	cursor: pointer;
	font-size: var(--nv-eyebrow);
	letter-spacing: 0.14em;
	padding: 10px 16px;
	text-transform: uppercase;
	transition: color var(--nv-dur-fast) var(--nv-ease), background var(--nv-dur-fast) var(--nv-ease);
}

.nv-cip:hover {
	color: var(--nv-fg);
}

.nv-cip.is-aktivan {
	background: var(--nv-gold-500);
	border-color: var(--nv-gold-500);
	color: var(--nv-ink-800);
}

/* --- istaknuti vodic: siroka kartica 1.15fr / 1fr --- */

.nv-vist {
	background: var(--nv-sand-50);
	border: 1px solid var(--nv-line-light-soft);
	color: inherit;
	display: grid;
	margin-bottom: var(--nv-s7);
	text-decoration: none;
}

@media (min-width: 901px) {
	.nv-vist {
		grid-template-columns: 1.15fr 1fr;
	}
}

.nv-vist:hover {
	border-color: var(--nv-gold-700);
}

.nv-vist__media {
	overflow: hidden;
}

.nv-vist__media img {
	display: block;
	height: 100%;
	min-height: 340px;
	object-fit: cover;
	width: 100%;
}

.nv-vist__body {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 40px 42px;
}

.nv-vist__body .nv-eyebrow {
	margin: 0 0 var(--nv-s4);
}

.nv-vist h2 {
	font-size: var(--nv-h2);
	line-height: var(--nv-h2-lh);
	margin: 0 0 14px;
	text-wrap: pretty;
}

.nv-vist__p {
	color: var(--nv-ink-body);
	font-size: 15.5px;
	line-height: 1.75;
	margin-bottom: 22px;
	max-width: 520px;
}

@media (max-width: 900px) {
	.nv-vist__body {
		padding: var(--nv-s6) var(--nv-s5);
	}

	.nv-vist__media img {
		min-height: 0;
		aspect-ratio: 16 / 10;
	}
}

/* --- mreza 3 x N --- */

.nv-vmreza {
	display: grid;
	gap: var(--nv-s5);
	grid-template-columns: minmax(0, 1fr);
}

@media (min-width: 901px) {
	.nv-vmreza {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 901px) {
	.nv-vmreza {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.nv-vkart {
	background: var(--nv-sand-50);
	border: 1px solid var(--nv-line-light-soft);
	color: inherit;
	display: flex;
	flex-direction: column;
	text-decoration: none;
}

.nv-vkart:hover {
	border-color: var(--nv-gold-700);
}

.nv-vkart__media {
	display: block;
	overflow: hidden;
}

.nv-vkart__media img {
	aspect-ratio: 16 / 10;
	display: block;
	object-fit: cover;
	width: 100%;
}

.nv-vkart__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: var(--nv-s2);
	padding: 22px 24px 24px;
}

.nv-vkart__kat {
	color: var(--nv-gold-700);
	font-size: 10px;
	letter-spacing: var(--nv-label-ls);
	text-transform: uppercase;
}

.nv-vkart h3 {
	font-size: var(--nv-h4);
	line-height: var(--nv-h4-lh);
	margin: 0;
	text-wrap: pretty;
}

.nv-vkart__p {
	color: var(--nv-ink-muted);
	font-size: var(--nv-small);
	line-height: 1.6;
}

/* Meta se lijepi na dno kartice da se redovi poravnaju medju karticama. */
.nv-vmeta {
	color: var(--nv-ink-muted);
	display: block;
	font-size: 12.5px;
	margin-top: auto;
	padding-top: 14px;
}

.nv-vist .nv-vmeta {
	margin-top: 0;
	padding-top: 0;
}

.nv-vmreza__prazno {
	color: var(--nv-ink-muted);
	margin: var(--nv-s7) 0 0;
}

.nv-varhiva__zasto,
.nv-varhiva__proza {
	margin-top: var(--nv-s10);
}

/* ---------- CTA band za vlasnike, puna sirina na fotografiji ---------- */

.nv-owners {
	align-items: center;
	display: grid;
	min-height: var(--nv-owners-band-mobile);
	position: relative;
}

.nv-owners__media {
	inset: 0;
	position: absolute;
	z-index: 0;
}

.nv-owners__media img {
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.nv-owners__media::after {
	background: linear-gradient(90deg, rgba(6, 14, 24, 0.94) 0%, rgba(6, 14, 24, 0.72) 55%, rgba(6, 14, 24, 0.45) 100%);
	content: "";
	inset: 0;
	position: absolute;
}

.nv-owners__inner {
	align-items: center;
	display: grid;
	gap: var(--nv-s6);
	position: relative;
	width: 100%;
	z-index: 1;
}

.nv-owners h2 {
	font-size: var(--nv-h2);
	line-height: var(--nv-h2-lh);
	margin: var(--nv-s3) 0 var(--nv-s4);
	max-width: 22ch;
}

.nv-owners p {
	color: var(--nv-fg-muted);
	margin: 0;
	max-width: 54ch;
}

@media (min-width: 900px) {
	.nv-owners {
		min-height: var(--nv-owners-band-desktop);
	}

	.nv-owners__inner {
		align-items: center;
		grid-template-columns: minmax(0, 1fr) auto;
	}
}

/* ---------- dvostupcani blok s ljepljivim naslovom ---------- */

.nv-twocol {
	display: grid;
	gap: var(--nv-s6);
}

@media (min-width: 1024px) {
	.nv-twocol {
		gap: var(--nv-s9);
		grid-template-columns: var(--nv-sidecol) minmax(0, 1fr);
	}

	.nv-twocol__head,
	.nv-sticky {
		align-self: start;
		position: sticky;
		top: 110px;
	}
}

.nv-twocol__head h2 {
	font-size: var(--nv-h2);
	line-height: var(--nv-h2-lh);
	margin: 0 0 var(--nv-s4);
}

.nv-twocol__body > :first-child {
	margin-top: 0;
}

/* Prazna kartica: lijevo poravnata, s oznakom, ne centrirani placeholder. */
.nv-card--placeholder {
	align-content: start;
	display: grid;
	gap: var(--nv-s3);
	padding: 44px;
	place-content: start;
	text-align: start;
}

.nv-card--placeholder p {
	margin: 0;
	padding: 0;
}

.nv-card--placeholder__lead {
	color: var(--nv-fg-muted);
	font-size: 1rem;
}

.nv-card--placeholder__note {
	color: var(--nv-fg-faint);
	font-size: 0.875rem;
}

/* ---------- donja traka na mobitelu ---------- */

.nv-bottombar__price {
	color: var(--nv-fg);
	font-size: var(--nv-small);
	margin: 0;
	align-self: center;
	white-space: nowrap;
}

/* <picture> se ponasa kao inline element — mora popuniti okvir kao <img>. */
.nv-hero__media picture,
.nv-card__media picture,
.nv-guide__media picture,
.nv-owners__media picture {
	display: block;
	height: 100%;
}

/* ---------- oznaka [[ ceka klijenta ]] ----------
   Artboard je crta u svakoj sekciji: gold-400 s tockastom zlatnom linijom na
   tamnom, bronze-800 sa zlatnom na svijetlom. Bez toga se 555 praznina na
   sajtu ne razlikuje od gotovog teksta. */

.nv-oznaka {
	border-bottom: 1px dotted var(--nv-gold-500);
	color: var(--nv-gold-400);
}

.nv-band--light .nv-oznaka,
.nv-on-light .nv-oznaka {
	border-bottom-color: var(--nv-gold-700);
	color: var(--nv-bronze-800);
}

/* ---------- slot koji se ne objavljuje ---------- */

.nv-slot {
	border: 1px dashed var(--nv-line-light-dash);
	display: grid;
	gap: var(--nv-s3);
	padding: var(--nv-s6);
}

.nv-slot p:last-child {
	color: var(--nv-ink-muted);
	margin: 0;
	max-width: 70ch;
}

.nv-slot .nv-eyebrow {
	margin: 0;
}

/* ---------- vodic bez slike ---------- */

.nv-guide--text {
	align-items: center;
	grid-template-columns: minmax(0, 1fr) auto;
	padding: var(--nv-s5) var(--nv-s6);
}

.nv-guide--text .nv-guide__body {
	padding: 0;
}

.nv-guide__arrow {
	color: var(--nv-gold-700);
	line-height: 0;
}

@media (min-width: 900px) {
	.nv-guide--text {
		grid-column: span 3;
	}
}

.nv-guides__cta {
	margin: var(--nv-s5) 0 0;
}

.nv-guides__cta a {
	color: var(--nv-bronze-800);
	font-size: var(--nv-eyebrow);
	letter-spacing: var(--nv-eyebrow-ls);
	text-transform: uppercase;
}

/* ---------- donji red footera ---------- */

/* Artboard drzi liniju 8 px ispod zadnjeg linka, pa donji red pocinje
   34 px ispod nje. Prije je linija stajala 48 px nize i footer je zjapio. */
.nv-footer__contact {
	align-items: center;
	border-top: 1px solid var(--nv-line-dark-soft);
	display: grid;
	gap: var(--nv-s5);
	margin-top: 8px;
	padding-top: 34px;
}

@media (min-width: 900px) {
	.nv-footer__contact {
		grid-template-columns: auto minmax(0, 1fr) auto;
		gap: var(--nv-s7);
	}
}

.nv-footer__lines {
	color: var(--nv-fg-muted);
	display: flex;
	flex-wrap: wrap;
	font-size: var(--nv-small);
	gap: var(--nv-s3) var(--nv-s6);
	margin: 0;
}

.nv-footer__social {
	display: flex;
	gap: var(--nv-s3);
	margin: 0;
}

.nv-footer__social .nv-btn {
	padding: 10px 14px;
}

/* Prekidac jezika u footeru je vodoravan; .nv-footer ul ga inace slozi u stupac. */
.nv-footer .nv-lang {
	color: var(--nv-fg-dim);
	display: flex;
	font-size: 12px;
	gap: var(--nv-s3);
}

.nv-footer .nv-lang li {
	border: 0;
}

.nv-twocol__lede {
	color: var(--nv-ink-body);
	margin: 0 0 var(--nv-s5);
}

/* ---------- izbornik: panel ispod 1200 px ---------- */

/* Artboard "Zaglavlje", krug -7: panel ima 8 px gore i 22 px dolje, redovi
   izbornika 15 px teksta s 15 px paddinga (visina reda ~48 px), CTA punom
   sirinom i jezici na dnu. */
/* Artboard pise 0.98, ali on stoji nad praznim platnom. Nad pravim heroom se
   kroz tih 2 % procita naslov stranice, pa panel ide na punu neprozirnost. */
.nv-header.is-open .nv-nav {
	background: rgb(8, 16, 26);
	border-top: 1px solid var(--nv-line-dark);
	display: flex;
	flex-direction: column;
	gap: 18px;
	inset-inline: 0;
	padding: var(--nv-s2) var(--nv-gutter) 22px;
	position: absolute;
	top: 100%;
}

@supports (backdrop-filter: blur(14px)) {
	.nv-header.is-open .nv-nav {
		backdrop-filter: blur(14px);
	}
}

.nv-header__inner {
	position: relative;
}

.nv-header.is-open .nv-nav ul {
	display: grid;
	gap: 0;
}

/* Artboard "Zaglavlje" crta pet redova, bez podstavki. Podstranice iz
   padajucih izbornika dostupne su iz podnozja i iz samog teksta. */
.nv-header.is-open .nv-nav .nv-nav__panel {
	display: none;
}

.nv-header.is-open .nv-nav nav > ul > li:not(:last-child) {
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

/* Strelica uz "Smjestaj" i "Vodic" nema sto otvarati kad panel ne postoji. */
.nv-header.is-open .nv-nav__strelica {
	display: none;
}

.nv-header.is-open .nv-nav nav a {
	color: var(--nv-fg);
	display: block;
	font-size: 15px;
	letter-spacing: normal;
	padding-block: 15px;
	text-transform: none;
}

.nv-header.is-open .nv-nav__cta {
	justify-content: center;
	padding: 16px 20px;
	width: 100%;
}

/* Artboard "Zaglavlje": izbornik → CTA → jezici, a jezici su obican red, ne
   segmentirana traka. Dodirna zona se drzi na 44 px visinom retka, ne okvirom. */
.nv-header.is-open .nv-nav__lang {
	order: 3;
}

.nv-header.is-open .nv-nav__cta {
	order: 2;
}

.nv-header.is-open .nv-nav__lang .nv-lang {
	display: flex;
	gap: 18px;
}

.nv-header.is-open .nv-nav__lang .nv-lang a {
	display: inline-flex;
	align-items: center;
	font-size: 11px;
	letter-spacing: 0.12em;
	min-height: 44px;
}

.nv-header.is-open .nv-nav__lang .nv-lang a {
	border: 0;
	justify-content: flex-start;
	padding-block: 0;
}

/* Aktivan jezik se oznacava zlatnom crtom ispod, kao i na desktopu. */
.nv-header.is-open .nv-nav__lang .nv-lang .current-lang a {
	border-bottom: 1px solid var(--nv-gold-500);
	padding-bottom: 3px;
}

/* `.nv-nav ul a` je prije bojao i ovaj gumb u svijetlo, pa je zlatna
   podloga nosila svijetli tekst. Artboard trazi tamni. */
.nv-nav__cta {
	color: var(--nv-ink-800);
	padding: 13px 20px;
}

.nv-header.is-open .nv-nav__cta {
	justify-content: center;
}

.nv-burger__close,
.nv-burger[aria-expanded="true"] .nv-burger__open {
	display: none;
}

.nv-burger[aria-expanded="true"] .nv-burger__close {
	display: block;
}

@media (min-width: 960px) {
	.nv-burger {
		display: none;
	}

	.nv-nav__lang .nv-lang {
		display: flex;
	}
}


/* Trazilica je u tamnom bandu i visi -46 px preko heroja; razmak do prve
   sekcije nosi band, pa joj treba vlastiti razmak prema dolje. */
.nv-search + .nv-section {
	margin-top: var(--nv-section-gap-mobile);
}

@media (min-width: 768px) {
	.nv-search + .nv-section {
		margin-top: var(--nv-section-gap-desktop);
	}
}

/* WordPress blockGap dodaje margin-top djeci flow grupe. Bandovi moraju
   biti susjedni jer razmak nose sami. */
main > :is(.nv-hero, .nv-band, .nv-owners) {
	margin-block: 0;
}

/* ---------- mrvice ---------- */

.nv-breadcrumbs {
	font-size: 0.78125rem;
	margin-bottom: 20px;
}

.nv-breadcrumbs ol {
	display: flex;
	flex-wrap: wrap;
	gap: var(--nv-s2);
	list-style: none;
	margin: 0;
	padding: 0;
}

.nv-breadcrumbs li {
	color: var(--nv-fg-dim);
}

.nv-breadcrumbs li + li::before {
	color: var(--nv-gold-700);
	content: "·";
	margin-inline-end: var(--nv-s2);
}

.nv-breadcrumbs a {
	color: var(--nv-fg-dim);
	text-decoration: none;
}

.nv-breadcrumbs a:hover {
	color: var(--nv-fg);
}

.nv-band--light .nv-breadcrumbs li,
.nv-band--light .nv-breadcrumbs a {
	color: var(--nv-ink-muted);
}

/* ---------- paginacija ---------- */

.nv-pagination {
	display: flex;
	flex-wrap: wrap;
	gap: var(--nv-s2);
	list-style: none;
	margin: var(--nv-s8) 0 0;
	padding: 0;
}

.nv-pagination a,
.nv-pagination span {
	align-items: center;
	border: 1px solid var(--nv-line-dark-chip);
	color: var(--nv-fg-muted);
	display: inline-flex;
	justify-content: center;
	min-height: 44px;
	min-width: 44px;
	padding-inline: var(--nv-s3);
	text-decoration: none;
}

.nv-pagination .is-current {
	background: var(--nv-gold-500);
	border-color: var(--nv-gold-500);
	color: var(--nv-ink);
}

.nv-band--light .nv-pagination a,
.nv-band--light .nv-pagination span {
	border-color: var(--nv-line-light);
	color: var(--nv-ink-body);
}

/* ---------- 404 ---------- */

.nv-404 {
	display: grid;
	gap: var(--nv-s7);
}

@media (min-width: 900px) {
	.nv-404 {
		gap: var(--nv-s9);
		grid-template-columns: 1.1fr 1fr;
	}

	.nv-404__aside {
		border-inline-start: 1px solid var(--nv-line-dark);
		padding-inline-start: var(--nv-s8);
	}
}

.nv-404 h1 {
	font-size: clamp(2.125rem, 1.2rem + 3vw, 3.625rem);
	margin: var(--nv-s3) 0 var(--nv-s5);
}

.nv-404__links,
.nv-404__aside ul {
	display: grid;
	gap: var(--nv-s3);
	list-style: none;
	margin: var(--nv-s6) 0 0;
	padding: 0;
}

.nv-404__aside h2 {
	font-size: var(--nv-h4);
	margin: 0;
}

/* ---------- traka za kolacice ---------- */

.nv-cookie {
	align-items: center;
	background: var(--nv-ink-900);
	border-top: 1px solid var(--nv-line-dark);
	bottom: 0;
	display: grid;
	gap: var(--nv-s4);
	inset-inline: 0;
	padding: var(--nv-s5) var(--nv-gutter-mobile);
	position: fixed;
	z-index: 60;
}

.nv-cookie[hidden] {
	display: none;
}

.nv-cookie p {
	color: var(--nv-fg-muted);
	font-size: var(--nv-small);
	margin: 0;
	max-width: 70ch;
}

/* Oba gumba jednako vidljiva: isti razmak, ista visina, bez tihog "Odbij". */
.nv-cookie__actions {
	display: flex;
	gap: var(--nv-s3);
}

.nv-cookie__actions .nv-btn {
	flex: 1;
	justify-content: center;
}

@media (min-width: 768px) {
	.nv-cookie {
		grid-template-columns: minmax(0, 1fr) auto;
		padding-inline: var(--nv-gutter-desktop);
	}

	.nv-cookie__actions .nv-btn {
		flex: none;
	}
}

/* Na mobitelu stoji iznad ljepljive donje trake. */
@media (max-width: 959px) {
	.nv-cookie {
		bottom: var(--nv-bottombar-h, 68px);
	}
}

/* Inline linkovi u SEO bloku — na pjescanoj podlozi zlatna nije citljiva. */
.nv-prose a {
	color: var(--nv-bronze-800);
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}

.nv-prose a:hover {
	color: var(--nv-bronze-900);
}

/* ---------- clanak vodica ---------- */

/* Zadano je rub stranice: screens/09 (upravljanje) i screens/12 (kontakt)
   drze zaglavlje na istom rubu kao sve ostalo.
   Iznimka je clanak vodica — screens/11 ga drzi kao uzi centrirani stupac,
   sa sirokom slikom ispod. Za to sluzi modifikator --clanak. */
.nv-article__head {
	margin-inline: auto;
	max-width: var(--nv-container);
	padding-inline: var(--nv-gutter-mobile);
}

.nv-article__head--clanak {
	max-width: calc(788px + 2 * var(--nv-gutter-mobile));
}

.nv-article__head h1 {
	font-size: clamp(2rem, 1.1rem + 2.9vw, 3.25rem);
	line-height: var(--nv-h1-lh);
	letter-spacing: var(--nv-h1-ls);
	margin: 0 0 var(--nv-s5);
}

.nv-article__meta {
	border-bottom: 1px solid var(--nv-line-dark);
	color: var(--nv-fg-dim);
	display: flex;
	flex-wrap: wrap;
	font-size: var(--nv-small);
	gap: var(--nv-s3) var(--nv-s6);
	margin: 0;
	padding-bottom: var(--nv-s5);
}

.nv-article__hero {
	margin: var(--nv-s7) auto 0;
	max-width: var(--nv-container);
	padding-inline: var(--nv-gutter-mobile);
}

.nv-article__hero picture {
	display: block;
}

.nv-article .nv-prose {
	margin-top: var(--nv-s8);
}

@media (min-width: 768px) {
	.nv-article__head {
		padding-inline: var(--nv-gutter-desktop);
	}

	.nv-article__head--clanak {
		max-width: calc(788px + 2 * var(--nv-gutter-desktop));
	}

	.nv-article__hero {
		padding-inline: var(--nv-gutter-desktop);
	}
}

/* ---------- stranica za vlasnike ---------- */

.nv-steps {
	display: grid;
	gap: var(--nv-s7);
}

@media (min-width: 900px) {
	.nv-steps {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: var(--nv-s8);
	}
}

.nv-steps h3 {
	font-size: var(--nv-h4);
	line-height: var(--nv-h4-lh);
	margin: 0 0 var(--nv-s3);
}

.nv-steps p {
	color: var(--nv-fg-muted);
	margin: 0;
}

.nv-mgmt {
	display: grid;
	gap: var(--nv-s7);
}

@media (min-width: 1024px) {
	.nv-mgmt {
		align-items: start;
		gap: var(--nv-s9);
		grid-template-columns: 1fr 0.85fr;
	}
}

.nv-mgmt__fee {
	border-top: 1px solid var(--nv-line-dark);
	font-size: var(--nv-h4);
	margin: var(--nv-s7) 0 var(--nv-s3);
	padding-top: var(--nv-s6);
}

.nv-panel {
	background: var(--nv-ink-600);
	padding: var(--nv-s7);
}

.nv-panel h2 {
	font-size: var(--nv-h3);
	line-height: var(--nv-h3-lh);
	margin: 0 0 var(--nv-s3);
}

.nv-panel p {
	color: var(--nv-fg-muted);
	margin: 0 0 var(--nv-s5);
}

.nv-panel p:last-child {
	margin-bottom: 0;
}

.nv-papers {
	display: grid;
	gap: var(--nv-card-gap-mobile);
}

@media (min-width: 900px) {
	.nv-papers {
		gap: var(--nv-card-gap-desktop);
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.nv-paper {
	border: 1px solid var(--nv-line-dark);
	color: inherit;
	display: block;
	padding: var(--nv-s6);
	text-decoration: none;
	transition: border-color var(--nv-dur-base) var(--nv-ease);
}

.nv-paper:hover {
	border-color: var(--nv-gold-500);
}

.nv-paper h3 {
	font-size: var(--nv-h4);
	line-height: var(--nv-h4-lh);
	margin: var(--nv-s3) 0 var(--nv-s2);
}

.nv-paper p {
	color: var(--nv-fg-dim);
	font-size: var(--nv-small);
	margin: 0;
}

/* Naslov clanka nema vlastiti eyebrow razmak u .nv-article__head */
.nv-article__head .nv-eyebrow {
	margin: 0 0 var(--nv-s3);
}

.nv-article__head .nv-lede {
	margin: 0 0 var(--nv-s5);
}

/* Iznimke: kadrovi koji popunjavaju okvir moraju zadrzati punu visinu. */
.nv-hero__media img,
.nv-card__media img,
.nv-guide__media img,
.nv-owners__media img,
.nv-split__media img {
	height: 100%;
}

/* ---------- kontakt ---------- */

/* Lijevo je u dizajnu forma. Dok je odgodjena, stupac drzi naslov i uvod,
   a desni panel nosi kanale — zato je omjer isti kao na upravljanju. */
.nv-contact {
	display: grid;
	gap: var(--nv-s7);
}

@media (min-width: 1024px) {
	.nv-contact {
		align-items: start;
		gap: var(--nv-s9);
		grid-template-columns: 1fr 0.85fr;
	}
}

.nv-contact__main > p {
	color: var(--nv-fg-muted);
	max-width: var(--nv-prose);
}

/* Mjesto forme: oznaceno, ne prazno. */
.nv-contact__slot {
	border: 1px dashed var(--nv-line-dark-dash);
	color: var(--nv-fg-faint);
	margin-top: var(--nv-s6);
	padding: var(--nv-s5);
}

/* Desni stupac nema podlogu — screens/12 ga drzi na istoj pozadini,
   odvojen samo linijama. */
.nv-contact__aside h2 {
	font-size: var(--nv-h3);
	line-height: var(--nv-h3-lh);
	margin: 0 0 var(--nv-s5);
}

.nv-contact__rows {
	display: grid;
	margin: 0;
}

.nv-contact__rows > div {
	align-items: baseline;
	border-top: 1px solid var(--nv-line-dark);
	display: flex;
	gap: var(--nv-s4);
	justify-content: space-between;
	padding: var(--nv-s4) 0;
}

.nv-contact__rows > div:last-child {
	border-bottom: 1px solid var(--nv-line-dark);
}

.nv-contact__rows dt {
	color: var(--nv-fg-muted);
	font-size: var(--nv-small);
	line-height: var(--nv-small-lh);
}

.nv-contact__rows dd {
	color: var(--nv-fg);
	margin: 0;
	text-align: end;
}

/* Karta ceka adresu; kutija drzi mjesto u ritmu panela. */
.nv-contact__map {
	align-content: center;
	border: 1px dashed var(--nv-line-dark-dash);
	color: var(--nv-fg-faint);
	display: grid;
	font-size: var(--nv-label);
	justify-items: center;
	letter-spacing: var(--nv-label-ls);
	margin-top: var(--nv-s6);
	min-height: 220px;
	text-align: center;
	text-transform: uppercase;
}

/* ---------- tablica u prozi ---------- */

.nv-table {
	margin: var(--nv-s6) 0;
	overflow-x: auto;
}

.nv-table table {
	border-collapse: collapse;
	width: 100%;
}

/* Jezgra bloka tablice crta okvir sa sve cetiri strane; dizajn ima samo
   vodoravne linije, pa se ostale tri izrijekom gase. */
.nv-table th,
.nv-table td {
	border: 0;
	border-bottom: 1px solid var(--nv-line-dark);
	padding: var(--nv-s3) var(--nv-s4) var(--nv-s3) 0;
	text-align: start;
}

.nv-band--light .nv-table th,
.nv-band--light .nv-table td {
	border-bottom-color: var(--nv-line-light-soft);
}

.nv-band--light .nv-table th {
	color: var(--nv-ink-muted);
}

/* Artboard: tablice se ispod 900 px citaju u 12.5 px. */
@media (max-width: 900px) {
	.nv-table table {
		font-size: 12.5px;
	}
}

.nv-table th {
	color: var(--nv-fg-muted);
	font-size: var(--nv-small);
	font-weight: 400;
	letter-spacing: var(--nv-label-ls);
	text-transform: uppercase;
}

/* Stara mreza galerije (3 stupca, sve figure) zamijenjena je plocicama iz
   artboarda; pravila su gore uz .nv-galerija. Ovdje je ostala samo zastita od
   slika od 2560 px koja vrijedi svugdje. */
