/* Slika u traci sa naslovom stranice (plugin Vastu Izgled). Stranice bez slike ostaju kao pre. */
.ve-page-head { position: relative; overflow: hidden; }
.ve-page-head:has(.ve-glava-slika) { padding-block: 0; min-height: clamp(230px, 27vw, 400px); display: flex; align-items: center; }
.ve-page-head .ve-glava-slika { position: absolute; inset: 0; display: block; margin: 0; }
.ve-page-head .ve-glava-slika img { width: 100%; height: 100%; object-fit: cover; object-position: right center; display: block; }
.ve-page-head:has(.ve-glava-slika) > .ve-wrap { position: relative; z-index: 1; width: 100%; }
.ve-page-head:has(.ve-glava-slika) h1 { max-width: 12ch; }
.ve-page-head:has(.ve-glava-slika) .ve-lead { max-width: min(64%, 46rem); }
@media (max-width: 781px) {
	.ve-page-head:has(.ve-glava-slika) { display: flex; flex-direction: column; align-items: stretch; min-height: 0; padding-block: clamp(2rem, 8vw, 2.75rem) 0; }
	.ve-page-head:has(.ve-glava-slika) > .ve-wrap { padding-bottom: 1.5rem; order: 1; }
	.ve-page-head:has(.ve-glava-slika) .ve-lead { max-width: none; }
	.ve-page-head .ve-glava-slika { position: static; aspect-ratio: 16 / 10; order: 2; }
	.ve-page-head .ve-glava-slika img { height: auto; aspect-ratio: 16 / 10; }
}
.ve-recenzije { background: #1F333B; color: #E4EAE7; padding-block: clamp(2.5rem, 6vw, 4.5rem); }
.ve-recenzije a { color: #E4EAE7; }
/* Tekst ocene ispod kartica (Trustindex ga boji crno): svetao na tamnoj pozadini, kartice ostaju bele */
.ve-recenzije .ti-footer,
.ve-recenzije .ti-footer *,
.ve-recenzije .ti-header,
.ve-recenzije .ti-header * { color: #E4EAE7 !important; }
/* Tri činjenice u redu (16+, 1000+, ocena) na širem ekranu; na telefonu ostaje jedna ispod druge */
@media (min-width: 761px) {
	.ve-sec .ve-cinjenice:has(.ve-cinjenica:nth-child(3)) { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
.ve-cinjenica span a { color: inherit; }


/* Kartice na telefonu (početna). Isključuje se u vastu-izgled.php: VI_KARTICE = false */
.vi-kartice .vi-chk { position: absolute; opacity: 0; width: 1px; height: 1px; margin: 0; pointer-events: none; }
.vi-kartice .vi-har-dugme { display: block; cursor: default; }
.vi-kartice .ve-sit .ve-sit-telo { display: flex; flex-direction: column; gap: 18px; flex: 1 1 auto; }
.vi-kartice .ve-sit .ve-sit-telo .ve-kvadrati { flex-grow: 1; margin: 0; }
@media (max-width: 781px) {
	.vi-kartice .ve-sec .ve-sit-grid { gap: 12px; }
	.vi-kartice .ve-sit { gap: 6px; padding: 18px 20px; position: relative; }
	.vi-kartice .ve-sit h3 { font-size: 1.2rem; margin: 0; }
	/* Telo kartice je na telefonu uvek vidljivo (ranije se otvaralo dodirom naslova), da se važni tekstovi ne propuste */
	.vi-kartice .ve-sit .ve-sit-telo { padding-top: 12px; }
	.vi-kartice .ve-sec .ve-kartice-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
	.vi-kartice .ve-kartice-3 .ve-kartica { padding: 16px; gap: 8px; }
	.vi-kartice .ve-kartice-3 .ve-kartica h3 { font-size: 1.05rem; }
	.vi-kartice .ve-kartice-3 .ve-kartica p { font-size: .875rem; line-height: 1.5; }
}

/* Početna, telefon: tri činjenice (16+, ocena, online) u jednom redu, ravnomerno */
@media (max-width: 760px) {
	body .ve-sec .ve-poverenje { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; }
	body .ve-poverenje-i { margin: 0 !important; padding: 0 10px; border-right: 1px solid var(--ve-linija); min-width: 0; }
	body .ve-poverenje-i:first-child { padding-left: 0; }
	body .ve-poverenje-i:last-child { border-right: 0; padding-right: 0; }
	body .ve-poverenje-i strong { font-size: 1.35rem; line-height: 1.15; }
	body .ve-poverenje-i strong .vastu-zv { display: block; width: max-content; font-size: .8rem; letter-spacing: 1px; margin-top: 2px; }
	body .ve-poverenje-i > span { font-size: .78rem; line-height: 1.35; }
}

/* Početna, računar: leva kolona (tekst) oko 10% šira u odnosu na plan desno. Vraćanje: obriši ovaj blok ili stavi 1.08fr / .92fr */
@media (min-width: 1081px) {
	body .ve-sec .ve-hero-grid { grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr); }
}

/* Početna, uvodni pasus pod naslovom: font manji za 2px od standardnog uvodnog. Vraćanje: obriši ovaj blok */
.ve-hero .ve-hero-tekst > .ve-lead { font-size: calc(var(--wp--preset--font-size--uvodni) - 2px); }

/* Početna, oznaka iznad naslova: zelena tačka iza reči online. Vraćanje: obriši ovaj blok */
.vi-online::after { content: ""; display: inline-block; width: .6em; height: .6em; margin-left: .5em; border-radius: 50%; background: #2FB45A; box-shadow: 0 0 0 .22em rgba(47, 180, 90, .22); vertical-align: .05em; }
@keyframes vi-online-puls { 0%, 100% { opacity: 1; box-shadow: 0 0 0 .22em rgba(47, 180, 90, .28); } 50% { opacity: .55; box-shadow: 0 0 0 .22em rgba(47, 180, 90, .06); } }
.vi-online::after { animation: vi-online-puls 2.6s ease-in-out infinite; }
@media (prefers-reduced-motion: reduce) { .vi-online::after { animation: none; } }

/* Početna: fotografija u pozadini hero sekcije (proba). Isključuje se u vastu-izgled.php: VI_HERO_SLIKA = false */
body.vi-hero .ve-hero {
	background-color: var(--ve-kamen);
	background-image: linear-gradient(90deg, var(--ve-kamen) 0%, var(--ve-kamen) 38%, rgba(229, 232, 224, .6) 68%, rgba(229, 232, 224, .45) 100%), url(slike/vastu-usluge.webp);
	background-size: cover;
	background-position: right center;
	background-repeat: no-repeat;
}
@media (max-width: 1080px) {
	body.vi-hero .ve-hero {
		background-image: linear-gradient(180deg, rgba(229, 232, 224, .94) 0%, rgba(229, 232, 224, .86) 100%), url(slike/vastu-usluge-m.webp);
		background-position: center bottom;
	}
}

/* Hero sa fotografijom: kompas i plan jači i uz meku svetlu podlogu, da se linije ne gube na slici */
body.vi-hero .ve-hero-plan::before { content: ""; position: absolute; inset: 0 2% auto 2%; margin-top: 2%; aspect-ratio: 1 / 1; border-radius: 50%; background: radial-gradient(circle, rgba(250, 250, 247, .88) 0%, rgba(250, 250, 247, .82) 62%, rgba(250, 250, 247, 0) 72%); z-index: 0; pointer-events: none; }
body.vi-hero .ve-hero-plan > *:not(.ve-plan-beleska) { position: relative; z-index: 1; }
body.vi-hero .ve-plan-svg circle[stroke="#C8CEC5"] { stroke: #6E7F79; stroke-width: 1.6; }
body.vi-hero .ve-plan-svg g[stroke="#16242A"] { stroke-width: 2; }
body.vi-hero .ve-plan-svg g[font-size="11"] { fill: #16242A; font-weight: 600; }
body.vi-hero .ve-plan-svg g[stroke-dasharray] { opacity: 1; stroke-width: 1.4; }
body.vi-hero .ve-hero-plan > .ve-plan-beleska { z-index: 3; background: #FAFAF7; opacity: 1; }


/* Stranica Signifikatori: šira površina, kartice planeta u dve kolone, kategorije u kolonama bez praznih mesta, dugme "Vidi sve planete" */
body.vi-str-signifikatori .ve-tekst { max-width: 1320px; }
body.vi-str-signifikatori .sgnf .sgnf-planets { grid-template-columns: repeat(auto-fill, minmax(540px, 1fr)); gap: 20px; align-items: start; }
body.vi-str-signifikatori .sgnf .sgnf-planet.focus { grid-column: 1 / -1; }
body.vi-str-signifikatori .sgnf .sgnf-body { display: block; column-count: 2; column-gap: 0; column-rule: 1px solid var(--sgnf-rule-soft); padding: 8px 0 12px; }
body.vi-str-signifikatori .sgnf .sgnf-planet.focus .sgnf-body { column-count: 3; padding: 12px 8px 18px; }
body.vi-str-signifikatori .sgnf .sgnf-row { break-inside: avoid; border-right: 0 !important; padding: 10px 18px; }
body.vi-str-signifikatori .sgnf .sgnf-item { font-size: 13.5px; line-height: 1.45; }
body.vi-str-signifikatori .sgnf .sgnf-planet:not(.focus) > header { cursor: pointer; }
body.vi-str-signifikatori .sgnf .sgnf-planet:not(.focus) > header:hover { background: var(--sgnf-bg-2); }
body.vi-str-signifikatori .sgnf .sgnf-intro p { max-width: 62ch; }
body.vi-str-signifikatori .sgnf .vi-sve-dugme { margin-left: auto; appearance: none; background: var(--sgnf-ink); color: var(--sgnf-bg); border: 1px solid var(--sgnf-ink); border-radius: 8px; padding: 9px 16px; font: 600 13px 'Poppins', sans-serif; cursor: pointer; }
body.vi-str-signifikatori .sgnf .vi-sve-dugme:hover { background: #3a342c; }
body.vi-str-signifikatori .sgnf .vi-sve-dugme[hidden] { display: none; }
@media (max-width: 900px) {
	body.vi-str-signifikatori .sgnf .sgnf-planets { grid-template-columns: 1fr; }
	body.vi-str-signifikatori .sgnf .sgnf-planet.focus .sgnf-body { column-count: 2; }
}
@media (max-width: 640px) {
	body.vi-str-signifikatori .sgnf .sgnf-body,
	body.vi-str-signifikatori .sgnf .sgnf-planet.focus .sgnf-body { column-count: 1; column-rule: 0; }
	body.vi-str-signifikatori .sgnf .vi-sve-dugme { width: 100%; margin-left: 0; }
}


/* Početna: fotografija iznad sekcije "Prvi korak". Isključuje se u vastu-izgled.php: VI_ZAK_SLIKA = false */
body.vi-zak .ve-zakazivanje { position: relative; padding-top: clamp(10rem, 18vw, 15rem); overflow: hidden; }
body.vi-zak .ve-zakazivanje::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: clamp(15rem, 22vw, 19rem); background: url(slike/kontakt.webp) right center / cover no-repeat; -webkit-mask-image: linear-gradient(#000 45%, transparent); mask-image: linear-gradient(#000 45%, transparent); pointer-events: none; }
body.vi-zak .ve-zakazivanje > * { position: relative; z-index: 1; }
@media (max-width: 781px) {
	body.vi-zak .ve-zakazivanje { padding-top: 10rem; }
	body.vi-zak .ve-zakazivanje::before { height: 14rem; background-image: url(slike/kontakt-m.webp); background-position: center top; }
}

/* Početna, "Ko gleda vaš plan": dugme "Više o meni i mom pristupu" po sredini */
body .ve-o-meni-tekst .wp-block-buttons { justify-content: center; }

/* Početna, "Ko gleda vaš plan": slika se proteže od vrha teksta do dna dugmeta (samo računar) */
@media (min-width: 1081px) {
	body .ve-sec .ve-o-meni { align-items: stretch; }
	body .ve-sec .ve-o-meni .ve-portret { position: relative; min-height: 100%; }
	body .ve-sec .ve-o-meni .ve-portret img {
		position: absolute; inset: 0; width: 100%; height: 100%;
		object-fit: cover; object-position: center top;
	}
}

/* Početna: red "Radim i sa poslovnim prostorima" po sredini */
body .ve-sec .ve-biz { justify-content: center; text-align: center; }

/* Početna: sekcija "Čime se bavim" sa tri usluge */
body .vi-usluge {
	background: linear-gradient(rgba(31, 51, 59, .88), rgba(31, 51, 59, .88)), url(slike/korekcija-prostora.webp) center / cover no-repeat;
	color: #E4EAE7;
}
body .vi-usluge .ve-eyebrow { color: #EDB45A; }
body .vi-usluge .ve-glava h2 { color: #FAFAF7; }
body .vi-usluge .ve-glava { margin-bottom: 2rem; }
body .vi-usluge-mreza { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
body .vi-usluge .vi-usluga { display: flex; flex-direction: column; justify-content: flex-start; gap: 12px; }
body .vi-usluge .vi-usluga h3, body .vi-usluge .vi-usluga p { margin: 0; }
body .vi-usluge .vi-usluga p { flex-grow: 1; }
body .vi-usluge .vi-usluga .wp-block-buttons { padding-top: 8px; }
@media (max-width: 781px) {
	body .vi-usluge { background-image: linear-gradient(rgba(31, 51, 59, .88), rgba(31, 51, 59, .88)), url(slike/korekcija-prostora-m.webp); }
}
@media (max-width: 1080px) {
	body .vi-usluge-mreza { grid-template-columns: minmax(0, 1fr); gap: 12px; }
	body .vi-usluge .vi-usluga { padding: 18px 20px; gap: 8px; }
	body .vi-usluge .vi-usluga h3 { font-size: 1.2rem; }
}

/* Korekcija i Adaptacija prostora: slajd "Primeri provera iz Vastu analize" (bez JavaScripta) */
body .vi-galerija .ve-glava { margin-bottom: 2rem; }
body .vi-sl { position: relative; max-width: 1000px; }
body .vi-sl .vi-sl-r { position: absolute; opacity: 0; width: 1px; height: 1px; margin: 0; pointer-events: none; }
body .vi-sl-pozornica { position: relative; background: var(--ve-karta, #FAFAF7); border: 1px solid var(--ve-linija, #D8DDD9); border-radius: 8px; }
body .vi-sl-slajd { display: none; margin: 0; padding: 28px 64px; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); gap: 36px; align-items: center; animation: vi-sl-ulaz .35s ease; }
body .vi-sl-slika { background: #fff; border: 1px solid var(--ve-linija, #D8DDD9); border-radius: 6px; overflow: hidden; }
body .vi-sl-slika img { display: block; width: 100%; height: auto; aspect-ratio: 1 / 1; object-fit: contain; }
body .vi-sl-slajd figcaption { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
body .vi-sl-broj { font-size: .8125rem; letter-spacing: .14em; color: var(--ve-safran, #B9771F); font-weight: 500; }
body .vi-sl-slajd figcaption strong { font-family: var(--ve-serif, Georgia, serif); font-size: clamp(1.5rem, 2.6vw, 2.125rem); line-height: 1.15; font-weight: 500; color: var(--ve-sumska-d, #12302B); }
body .vi-sl-tekst { font-size: 1.0625rem; line-height: 1.6; color: var(--ve-meko, #4A5A60); }
body .vi-sl-str { position: absolute; top: 50%; width: 44px; height: 44px; margin-top: -22px; border-radius: 50%; background: var(--ve-sumska, #1E4A43); cursor: pointer; display: flex; align-items: center; justify-content: center; transition: background .2s ease; z-index: 2; }
body .vi-sl-str:hover { background: var(--ve-sumska-d, #12302B); }
body .vi-sl-str::after { content: ""; width: 11px; height: 11px; border-top: 2px solid #fff; border-right: 2px solid #fff; transform: rotate(45deg); margin-left: -3px; }
body .vi-sl-nazad { left: 10px; }
body .vi-sl-nazad::after { transform: rotate(-135deg); margin-left: 3px; }
body .vi-sl-napred { right: 10px; }
body .vi-sl-tacke { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-top: 18px; }
body .vi-sl-tacka { width: 36px; height: 36px; border-radius: 50%; border: 1px solid var(--ve-linija, #D8DDD9); background: var(--ve-karta, #FAFAF7); color: var(--ve-meko, #4A5A60); font-size: .875rem; display: flex; align-items: center; justify-content: center; cursor: pointer; transition: background .2s ease, color .2s ease, border-color .2s ease; }
body .vi-sl-tacka:hover { border-color: var(--ve-sumska, #1E4A43); }
@keyframes vi-sl-ulaz { from { opacity: 0; } to { opacity: 1; } }
body .vi-sl #vi-sl-1:checked ~ .vi-sl-pozornica .vi-sl-slajd:nth-child(1) { display: grid; }
body .vi-sl #vi-sl-1:checked ~ .vi-sl-tacke .vi-sl-tacka:nth-child(1) { background: var(--ve-sumska, #1E4A43); border-color: var(--ve-sumska, #1E4A43); color: #fff; }
body .vi-sl #vi-sl-1:focus-visible ~ .vi-sl-tacke .vi-sl-tacka:nth-child(1) { outline: 2px solid var(--ve-safran, #B9771F); outline-offset: 3px; }
body .vi-sl #vi-sl-2:checked ~ .vi-sl-pozornica .vi-sl-slajd:nth-child(2) { display: grid; }
body .vi-sl #vi-sl-2:checked ~ .vi-sl-tacke .vi-sl-tacka:nth-child(2) { background: var(--ve-sumska, #1E4A43); border-color: var(--ve-sumska, #1E4A43); color: #fff; }
body .vi-sl #vi-sl-2:focus-visible ~ .vi-sl-tacke .vi-sl-tacka:nth-child(2) { outline: 2px solid var(--ve-safran, #B9771F); outline-offset: 3px; }
body .vi-sl #vi-sl-3:checked ~ .vi-sl-pozornica .vi-sl-slajd:nth-child(3) { display: grid; }
body .vi-sl #vi-sl-3:checked ~ .vi-sl-tacke .vi-sl-tacka:nth-child(3) { background: var(--ve-sumska, #1E4A43); border-color: var(--ve-sumska, #1E4A43); color: #fff; }
body .vi-sl #vi-sl-3:focus-visible ~ .vi-sl-tacke .vi-sl-tacka:nth-child(3) { outline: 2px solid var(--ve-safran, #B9771F); outline-offset: 3px; }
body .vi-sl #vi-sl-4:checked ~ .vi-sl-pozornica .vi-sl-slajd:nth-child(4) { display: grid; }
body .vi-sl #vi-sl-4:checked ~ .vi-sl-tacke .vi-sl-tacka:nth-child(4) { background: var(--ve-sumska, #1E4A43); border-color: var(--ve-sumska, #1E4A43); color: #fff; }
body .vi-sl #vi-sl-4:focus-visible ~ .vi-sl-tacke .vi-sl-tacka:nth-child(4) { outline: 2px solid var(--ve-safran, #B9771F); outline-offset: 3px; }
body .vi-sl #vi-sl-5:checked ~ .vi-sl-pozornica .vi-sl-slajd:nth-child(5) { display: grid; }
body .vi-sl #vi-sl-5:checked ~ .vi-sl-tacke .vi-sl-tacka:nth-child(5) { background: var(--ve-sumska, #1E4A43); border-color: var(--ve-sumska, #1E4A43); color: #fff; }
body .vi-sl #vi-sl-5:focus-visible ~ .vi-sl-tacke .vi-sl-tacka:nth-child(5) { outline: 2px solid var(--ve-safran, #B9771F); outline-offset: 3px; }
body .vi-sl #vi-sl-6:checked ~ .vi-sl-pozornica .vi-sl-slajd:nth-child(6) { display: grid; }
body .vi-sl #vi-sl-6:checked ~ .vi-sl-tacke .vi-sl-tacka:nth-child(6) { background: var(--ve-sumska, #1E4A43); border-color: var(--ve-sumska, #1E4A43); color: #fff; }
body .vi-sl #vi-sl-6:focus-visible ~ .vi-sl-tacke .vi-sl-tacka:nth-child(6) { outline: 2px solid var(--ve-safran, #B9771F); outline-offset: 3px; }
body .vi-sl #vi-sl-7:checked ~ .vi-sl-pozornica .vi-sl-slajd:nth-child(7) { display: grid; }
body .vi-sl #vi-sl-7:checked ~ .vi-sl-tacke .vi-sl-tacka:nth-child(7) { background: var(--ve-sumska, #1E4A43); border-color: var(--ve-sumska, #1E4A43); color: #fff; }
body .vi-sl #vi-sl-7:focus-visible ~ .vi-sl-tacke .vi-sl-tacka:nth-child(7) { outline: 2px solid var(--ve-safran, #B9771F); outline-offset: 3px; }
body .vi-sl #vi-sl-8:checked ~ .vi-sl-pozornica .vi-sl-slajd:nth-child(8) { display: grid; }
body .vi-sl #vi-sl-8:checked ~ .vi-sl-tacke .vi-sl-tacka:nth-child(8) { background: var(--ve-sumska, #1E4A43); border-color: var(--ve-sumska, #1E4A43); color: #fff; }
body .vi-sl #vi-sl-8:focus-visible ~ .vi-sl-tacke .vi-sl-tacka:nth-child(8) { outline: 2px solid var(--ve-safran, #B9771F); outline-offset: 3px; }
body .vi-sl #vi-sl-9:checked ~ .vi-sl-pozornica .vi-sl-slajd:nth-child(9) { display: grid; }
body .vi-sl #vi-sl-9:checked ~ .vi-sl-tacke .vi-sl-tacka:nth-child(9) { background: var(--ve-sumska, #1E4A43); border-color: var(--ve-sumska, #1E4A43); color: #fff; }
body .vi-sl #vi-sl-9:focus-visible ~ .vi-sl-tacke .vi-sl-tacka:nth-child(9) { outline: 2px solid var(--ve-safran, #B9771F); outline-offset: 3px; }
body .vi-sl #vi-sl-10:checked ~ .vi-sl-pozornica .vi-sl-slajd:nth-child(10) { display: grid; }
body .vi-sl #vi-sl-10:checked ~ .vi-sl-tacke .vi-sl-tacka:nth-child(10) { background: var(--ve-sumska, #1E4A43); border-color: var(--ve-sumska, #1E4A43); color: #fff; }
body .vi-sl #vi-sl-10:focus-visible ~ .vi-sl-tacke .vi-sl-tacka:nth-child(10) { outline: 2px solid var(--ve-safran, #B9771F); outline-offset: 3px; }
@media (max-width: 781px) {
	body .vi-sl-slajd { grid-template-columns: minmax(0, 1fr); gap: 16px; padding: 14px; }
	body .vi-sl-slajd figcaption { padding: 0 4px 6px; gap: 8px; }
	body .vi-sl-tekst { font-size: .9375rem; }
	body .vi-sl-str { top: 28%; width: 40px; height: 40px; margin-top: -20px; background: rgba(30, 74, 67, .85); }
	body .vi-sl-nazad { left: 6px; }
	body .vi-sl-napred { right: 6px; }
	body .vi-sl-tacka { width: 28px; height: 28px; font-size: .75rem; }
	body .vi-sl-tacke { gap: 4px; }
}
/* Članci sa slikom u traci naslova: istaknuta slika (znak elementa) se ne ponavlja ispod trake. */
.ve-clanak:has(.ve-glava-slika) .ve-istaknuta { display: none; }

/* Stranica Panchtattva: animirani vektorski dijagram pet elemenata u traci naslova. */
.ve-page-head:has(.ve-glava-anim) { min-height: clamp(260px, 30vw, 420px); display: flex; align-items: center; }
.ve-page-head:has(.ve-glava-anim) > .ve-wrap { position: relative; z-index: 1; width: 100%; }
.ve-page-head:has(.ve-glava-anim) h1 { max-width: 14ch; }
.ve-page-head:has(.ve-glava-anim) .ve-lead { max-width: min(52%, 40rem); }
.ve-glava-anim { position: absolute; right: clamp(1rem, 6vw, 7rem); top: 50%; transform: translateY(-50%); height: 88%; max-height: 360px; aspect-ratio: 400 / 360; margin: 0; }
.pt-dijagram { display: block; width: 100%; height: 100%; overflow: visible; }
.pt-krug, .pt-vatra, .pt-list, .pt-etar, .pt-vaz, .pt-val { transform-box: fill-box; transform-origin: center; }
.pt-krug { animation: pt-puls 6s ease-in-out infinite; animation-delay: calc(var(--k) * -1.2s); }
.pt-zl { stroke-dasharray: 9 7; animation: pt-tece 2.2s linear infinite; animation-delay: calc(var(--k) * -.4s); }
.pt-luk { stroke-dasharray: 14 10; animation: pt-tece 2.4s linear infinite; }
.pt-vatra { animation: pt-plamen 2.8s ease-in-out infinite; transform-origin: 50% 100%; }
.pt-list { animation: pt-njihanje 5s ease-in-out infinite; transform-origin: 20% 90%; }
.pt-etar { animation: pt-okret 24s linear infinite; }
.pt-vaz { animation: pt-njihanje 4s ease-in-out infinite; }
.pt-val { animation: pt-talas 3.2s ease-in-out infinite; }
@keyframes pt-puls { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.05); } }
@keyframes pt-tece { to { stroke-dashoffset: -24; } }
@keyframes pt-plamen { 0%, 100% { transform: scale(1, 1); } 50% { transform: scale(.94, 1.07); } }
@keyframes pt-njihanje { 0%, 100% { transform: rotate(-4deg); } 50% { transform: rotate(4deg); } }
@keyframes pt-okret { to { transform: rotate(360deg); } }
@keyframes pt-talas { 0%, 100% { transform: translateX(-2px); } 50% { transform: translateX(2px); } }
@media (prefers-reduced-motion: reduce) {
	.pt-krug, .pt-luk, .pt-zl, .pt-vatra, .pt-list, .pt-etar, .pt-vaz, .pt-val { animation: none; }
	.pt-zl { animation: none; }
}
@media (max-width: 781px) {
	.ve-page-head:has(.ve-glava-anim) { flex-direction: column; align-items: stretch; min-height: 0; padding-block: clamp(2rem, 8vw, 2.75rem) 1.5rem; }
	.ve-page-head:has(.ve-glava-anim) .ve-lead { max-width: none; }
	.ve-glava-anim { position: static; transform: none; height: auto; width: min(78%, 300px); margin: 1.5rem auto 0; order: 2; }
	.ve-page-head:has(.ve-glava-anim) > .ve-wrap { order: 1; }
}

/* Cenovnik i Kompatibilnost partnera (Guna Milan): leva strana slike u traci naslova pod svetlom maskom, da se naslov vidi (samo računar i tablet) */
@media (min-width: 782px) {
	body.vi-str-cenovnik .ve-page-head .ve-glava-slika::after,
	body.vi-str-cenovnik-promo .ve-page-head .ve-glava-slika::after,
	body.vi-str-kompatibilnost-partnera .ve-page-head .ve-glava-slika::after,
	body.vi-str-natalna-karta-i-vas-dom .ve-page-head .ve-glava-slika::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(90deg, rgba(241, 242, 237, .95) 0%, rgba(241, 242, 237, .92) 32%, rgba(241, 242, 237, .6) 52%, rgba(241, 242, 237, 0) 78%); }
}

/* Aplikacije: kad ima cetiri aplikacije, red se deli na cetvrtine (na uzim ekranima 2 x 2) */
.ve-tekst .ve-kolone:has(.wc-disclaimer):has(> .wp-block-column:nth-child(5)) > .wp-block-column:not(:first-child) { flex: 1 1 calc(25% - 18px) !important; min-width: 200px; }
@media (max-width: 1100px) {
	.ve-tekst .ve-kolone:has(.wc-disclaimer):has(> .wp-block-column:nth-child(5)) > .wp-block-column:not(:first-child) { flex: 1 1 calc(50% - 12px) !important; }
}
/* Pet i više aplikacija: tri u redu na širokom ekranu (vlasnik 2026-11-08), na užim ostaju po dve */
@media (min-width: 1101px) {
	.ve-tekst .ve-kolone:has(.wc-disclaimer):has(> .wp-block-column:nth-child(6)) > .wp-block-column:not(:first-child) { flex: 1 1 calc(33.333% - 16px) !important; }
}

/* Kompas na početnoj: prsten sa crticama, tačkastim krugom i slovima pravaca lagano se okreće (ceo krug za 60 s, u smeru kazaljke na satu).
   Tlocrt u sredini miruje, a slova ostaju uspravna. Markup kompasa se ne menja (stoji u sadržaju stranice), sve ide preko CSS-a. */
@keyframes vi-kompas { to { transform: rotate(360deg); } }
@keyframes vi-kompas-nazad { to { transform: rotate(-360deg); } }
@keyframes vi-kompas-n {
  0.00% { transform: translate(0.00px, 0.00px); }
  2.78% { transform: translate(40.72px, 3.56px); }
  5.56% { transform: translate(80.20px, 14.14px); }
  8.33% { transform: translate(117.25px, 31.42px); }
  11.11% { transform: translate(150.73px, 54.86px); }
  13.89% { transform: translate(179.64px, 83.77px); }
  16.67% { transform: translate(203.08px, 117.25px); }
  19.44% { transform: translate(220.36px, 154.30px); }
  22.22% { transform: translate(230.94px, 193.78px); }
  25.00% { transform: translate(234.50px, 234.50px); }
  27.78% { transform: translate(230.94px, 275.22px); }
  30.56% { transform: translate(220.36px, 314.70px); }
  33.33% { transform: translate(203.08px, 351.75px); }
  36.11% { transform: translate(179.64px, 385.23px); }
  38.89% { transform: translate(150.73px, 414.14px); }
  41.67% { transform: translate(117.25px, 437.58px); }
  44.44% { transform: translate(80.20px, 454.86px); }
  47.22% { transform: translate(40.72px, 465.44px); }
  50.00% { transform: translate(0.00px, 469.00px); }
  52.78% { transform: translate(-40.72px, 465.44px); }
  55.56% { transform: translate(-80.20px, 454.86px); }
  58.33% { transform: translate(-117.25px, 437.58px); }
  61.11% { transform: translate(-150.73px, 414.14px); }
  63.89% { transform: translate(-179.64px, 385.23px); }
  66.67% { transform: translate(-203.08px, 351.75px); }
  69.44% { transform: translate(-220.36px, 314.70px); }
  72.22% { transform: translate(-230.94px, 275.22px); }
  75.00% { transform: translate(-234.50px, 234.50px); }
  77.78% { transform: translate(-230.94px, 193.78px); }
  80.56% { transform: translate(-220.36px, 154.30px); }
  83.33% { transform: translate(-203.08px, 117.25px); }
  86.11% { transform: translate(-179.64px, 83.77px); }
  88.89% { transform: translate(-150.73px, 54.86px); }
  91.67% { transform: translate(-117.25px, 31.42px); }
  94.44% { transform: translate(-80.20px, 14.14px); }
  97.22% { transform: translate(-40.72px, 3.56px); }
  100.00% { transform: translate(-0.00px, 0.00px); }
}
.ve-plan-svg > circle[stroke="#C8CEC5"],
.ve-plan-svg > g[stroke="#16242A"][stroke-width="1.2"],
.ve-plan-svg > g[font-size="11"] { transform-box: view-box; transform-origin: 260px 260px; animation: vi-kompas 60s linear infinite; }
.ve-plan-svg > g[font-size="11"] > text { transform-box: fill-box; transform-origin: center; animation: vi-kompas-nazad 60s linear infinite; }
.ve-plan-svg > text[font-size="13"] { animation: vi-kompas-n 60s linear infinite; }
@media (prefers-reduced-motion: reduce) {
	.ve-plan-svg > circle[stroke="#C8CEC5"], .ve-plan-svg > g[stroke="#16242A"][stroke-width="1.2"], .ve-plan-svg > g[font-size="11"],
	.ve-plan-svg > g[font-size="11"] > text, .ve-plan-svg > text[font-size="13"] { animation: none; }
}


/* Natalna karta i vas dom: naslov je dug, pa pravilo za kratke naslove (max-width 12ch) daje 5 redova — ovde 2 reda */
body.vi-str-natalna-karta-i-vas-dom .ve-page-head:has(.ve-glava-slika) h1 { max-width: 20ch; }

/* Aplikacije: naslov uvek zauzima prostor za 2 reda, pa sve slike počinju i završavaju na istoj visini (a dugmad su već na istoj) */
@media (min-width: 782px) {
	.ve-tekst .ve-kolone:has(.wc-disclaimer) > .wp-block-column:not(:first-child) h2 { min-height: 2lh; }
}

/* Aplikacije: ikone umesto slika — ikona u svetlozelenom krugu, iste veličine u svim karticama */
.ve-tekst .ve-kolone:has(.wc-disclaimer) > .wp-block-column:not(:first-child) .wp-block-image { width: 168px; height: 168px; margin: 0 auto 12px; border-radius: 50%; background: var(--wp--preset--color--kamen, #E5E8E0); display: flex; align-items: center; justify-content: center; }
.ve-tekst .ve-kolone:has(.wc-disclaimer) > .wp-block-column:not(:first-child) .wp-block-image img { width: 105px; height: 105px; max-width: none; }

/* Aplikacije: dugmad "Otvorite aplikaciju..." u šafran (narandžastoj) boji, kao dugme kalkulatora */
.ve-tekst .ve-kolone:has(.wc-disclaimer) .wp-block-button__link { background-color: var(--wp--preset--color--safran, #D38A1F); border-color: var(--wp--preset--color--safran, #D38A1F); color: #fff; }
.ve-tekst .ve-kolone:has(.wc-disclaimer) .wp-block-button__link:hover { filter: brightness(1.1); }
