
/* =========================================================
   Pikravetka Header & Footer Style v1.0
   ========================================================= */

/* ---------- HEADER ---------- */

.site-header,
.site-header-wrap,
.site-header-row-container-inner {
	background:
		linear-gradient(
			90deg,
			#F8FBF8 0%,
			#EEF5F0 56%,
			#FAF6EF 100%
		) !important;
}

.site-header {
	border-bottom: 1px solid #DCE7DF;
	box-shadow: 0 5px 18px rgba(54, 94, 74, 0.055);
	position: relative;
	z-index: 50;
}

/* Slightly richer inner glow, still subtle */
.site-header::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: -1px;
	height: 1px;
	background: linear-gradient(
		90deg,
		transparent,
		rgba(86, 143, 115, .22),
		transparent
	);
	pointer-events: none;
}

.site-header-row-container-inner > .site-container {
	background: transparent !important;
}

.site-branding,
.site-branding a,
.site-title,
.site-title a {
	color: #294536 !important;
}

/* Navigation */
.main-navigation .primary-menu-container > ul > li > a,
.header-navigation .header-menu-container > ul > li > a {
	position: relative;
	color: #31483C !important;
	transition: color .18s ease;
}

.main-navigation .primary-menu-container > ul > li > a:hover,
.header-navigation .header-menu-container > ul > li > a:hover,
.main-navigation .primary-menu-container > ul > li.current-menu-item > a,
.main-navigation .primary-menu-container > ul > li.current-menu-ancestor > a {
	color: #568F73 !important;
}

/* Active/hover underline */
.main-navigation .primary-menu-container > ul > li > a::after,
.header-navigation .header-menu-container > ul > li > a::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: 7px;
	width: 0;
	height: 2px;
	border-radius: 999px;
	background: #568F73;
	transform: translateX(-50%);
	transition: width .18s ease;
}

.main-navigation .primary-menu-container > ul > li > a:hover::after,
.header-navigation .header-menu-container > ul > li > a:hover::after,
.main-navigation .primary-menu-container > ul > li.current-menu-item > a::after,
.main-navigation .primary-menu-container > ul > li.current-menu-ancestor > a::after {
	width: 22px;
}

/* Search / icons */
.header-search-toggle,
.menu-toggle-open,
.drawer-toggle {
	color: #365E4A !important;
}

.header-search-toggle:hover,
.menu-toggle-open:hover,
.drawer-toggle:hover {
	color: #568F73 !important;
}

/* Dropdowns */
.main-navigation .sub-menu,
.header-navigation .sub-menu {
	background: #FBFDFB !important;
	border: 1px solid #DFE8E1 !important;
	border-radius: 12px !important;
	box-shadow: 0 10px 28px rgba(39, 66, 53, .10) !important;
	overflow: hidden;
}

.main-navigation .sub-menu a,
.header-navigation .sub-menu a {
	color: #31483C !important;
}

.main-navigation .sub-menu a:hover,
.header-navigation .sub-menu a:hover {
	background: #EEF5F0 !important;
	color: #365E4A !important;
}


/* ---------- FOOTER ---------- */

.site-footer,
#colophon,
.site-footer-wrap,
.site-footer-row-container-inner {
	background:
		radial-gradient(circle at 12% 22%, rgba(255,255,255,.035), transparent 28%),
		radial-gradient(circle at 88% 76%, rgba(255,255,255,.025), transparent 24%),
		linear-gradient(135deg, #315642 0%, #3F6A53 55%, #476F5A 100%) !important;
	color: #F1F6F2 !important;
}

.site-footer {
	position: relative;
	overflow: hidden;
	border-top: 1px solid rgba(255,255,255,.08);
}

/* subtle botanical / paw-like decorative dots */
.site-footer::before,
#colophon::before {
	content: "";
	position: absolute;
	inset: 0;
	pointer-events: none;
	opacity: .045;
	background-image:
		radial-gradient(circle at 10px 10px, #fff 0 2px, transparent 2.5px),
		radial-gradient(circle at 24px 24px, #fff 0 1.6px, transparent 2px);
	background-size: 42px 42px;
}

.site-footer-row-container-inner,
.site-footer .site-container,
#colophon .site-container {
	position: relative;
	z-index: 1;
	background: transparent !important;
}

.site-footer h1,
.site-footer h2,
.site-footer h3,
.site-footer h4,
.site-footer h5,
.site-footer h6,
#colophon h1,
#colophon h2,
#colophon h3,
#colophon h4,
#colophon h5,
#colophon h6 {
	color: #FFFFFF !important;
}

.site-footer p,
.site-footer li,
.site-footer .widget,
.site-footer .site-info,
#colophon p,
#colophon li,
#colophon .widget,
#colophon .site-info {
	color: #DDEAE1 !important;
}

.site-footer a,
#colophon a {
	color: #EEF6F0 !important;
	text-decoration-color: rgba(238,246,240,.32);
	text-underline-offset: 3px;
	transition: color .18s ease, opacity .18s ease;
}

.site-footer a:hover,
#colophon a:hover {
	color: #FFFFFF !important;
	opacity: 1;
}

/* Footer widgets/cards */
.site-footer .widget {
	border-color: rgba(255,255,255,.08);
}

/* Footer bottom bar */
.site-footer-bottom-section,
.site-footer-bottom-section-1,
.site-footer-bottom-section-2,
.site-footer-row-layout-contained {
	border-color: rgba(255,255,255,.08) !important;
}

.site-footer .site-middle-footer-wrap,
.site-footer .site-bottom-footer-wrap,
#colophon .site-middle-footer-wrap,
#colophon .site-bottom-footer-wrap {
	background: transparent !important;
}


/* ---------- MOBILE ---------- */

@media (max-width: 900px) {

	.site-header,
	.site-header-wrap,
	.site-header-row-container-inner {
		background:
			linear-gradient(
				180deg,
				#F8FBF8 0%,
				#F0F6F2 100%
			) !important;
	}

	.site-header {
		box-shadow: 0 4px 14px rgba(54, 94, 74, .05);
	}

	/* underline is unnecessary inside mobile nav */
	.main-navigation .primary-menu-container > ul > li > a::after,
	.header-navigation .header-menu-container > ul > li > a::after {
		display: none;
	}

	.site-footer,
	#colophon {
		text-align: left;
	}

	.site-footer .site-container,
	#colophon .site-container {
		padding-left: 18px !important;
		padding-right: 18px !important;
	}
}

@media (max-width: 600px) {

	.site-footer,
	#colophon {
		font-size: 14px;
	}

	.site-footer h2,
	.site-footer h3,
	#colophon h2,
	#colophon h3 {
		font-size: 18px !important;
	}

	.site-footer .site-container,
	#colophon .site-container {
		padding-left: 14px !important;
		padding-right: 14px !important;
	}
}


/* =========================================================
   v1.1 — "Moj račun" button cleanup
   ========================================================= */

/*
 * Kadence može renderirati header button s nekoliko različitih klasa,
 * zato pokrivamo najčešće varijante i ograničavamo pravilo na header.
 */
.site-header .header-button,
.site-header .kadence-header-button,
.site-header a.header-button,
.site-header a.kt-button,
.site-header .button,
.site-header .kadence-button,
.site-header .wp-block-button__link {
	background: #6F9D82 !important;
	color: #FFFFFF !important;
	border: 1px solid #6F9D82 !important;
	border-radius: 999px !important;
	box-shadow: 0 4px 12px rgba(86, 143, 115, .16) !important;
	font-weight: 700 !important;
	transition:
		background-color .18s ease,
		border-color .18s ease,
		box-shadow .18s ease,
		transform .18s ease !important;
}

.site-header .header-button:hover,
.site-header .kadence-header-button:hover,
.site-header a.header-button:hover,
.site-header a.kt-button:hover,
.site-header .button:hover,
.site-header .kadence-button:hover,
.site-header .wp-block-button__link:hover {
	background: #7EAA90 !important;
	border-color: #7EAA90 !important;
	color: #FFFFFF !important;
	box-shadow: 0 6px 16px rgba(86, 143, 115, .22) !important;
	transform: translateY(-1px);
}

.site-header .header-button:focus-visible,
.site-header .kadence-header-button:focus-visible,
.site-header a.header-button:focus-visible,
.site-header a.kt-button:focus-visible,
.site-header .button:focus-visible,
.site-header .kadence-button:focus-visible,
.site-header .wp-block-button__link:focus-visible {
	outline: 3px solid rgba(111, 157, 130, .28) !important;
	outline-offset: 2px;
}

/* Slightly more compact on mobile */
@media (max-width: 900px) {
	.site-header .header-button,
	.site-header .kadence-header-button,
	.site-header a.header-button,
	.site-header a.kt-button,
	.site-header .button,
	.site-header .kadence-button,
	.site-header .wp-block-button__link {
		padding: 9px 15px !important;
		font-size: 14px !important;
		box-shadow: 0 3px 9px rgba(86, 143, 115, .14) !important;
	}
}


/* =========================================================
   v1.2 — centered site tagline
   ========================================================= */

.site-branding .site-description,
.site-description {
	text-align: center !important;
	width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
}


/* =========================================================
   v1.3 — force white text in "Moj račun" header button
   ========================================================= */

.site-header .header-button,
.site-header .header-button *,
.site-header .kadence-header-button,
.site-header .kadence-header-button *,
.site-header a.header-button,
.site-header a.header-button *,
.site-header a.kt-button,
.site-header a.kt-button *,
.site-header .button,
.site-header .button *,
.site-header .kadence-button,
.site-header .kadence-button *,
.site-header .wp-block-button__link,
.site-header .wp-block-button__link * {
	color: #FFFFFF !important;
	fill: #FFFFFF !important;
}

.site-header .header-button:hover,
.site-header .header-button:hover *,
.site-header .kadence-header-button:hover,
.site-header .kadence-header-button:hover *,
.site-header a.header-button:hover,
.site-header a.header-button:hover *,
.site-header a.kt-button:hover,
.site-header a.kt-button:hover *,
.site-header .button:hover,
.site-header .button:hover *,
.site-header .kadence-button:hover,
.site-header .kadence-button:hover *,
.site-header .wp-block-button__link:hover,
.site-header .wp-block-button__link:hover * {
	color: #FFFFFF !important;
	fill: #FFFFFF !important;
}


/* =========================================================
   v1.4 — Kadence header button text: force white
   ========================================================= */

/* Kadence Header Button element wrappers */
.site-header .header-button-wrap a,
.site-header .header-button-wrap a:visited,
.site-header .header-button-wrap a span,
.site-header .header-button-wrap .header-button,
.site-header .header-button-wrap .header-button span,
.site-header .header-button-wrap .kb-button,
.site-header .header-button-wrap .kb-button span,
.site-header .site-header-item .header-button,
.site-header .site-header-item .header-button span,
.site-header .site-header-item a.header-button,
.site-header .site-header-item a.header-button span {
	color: #FFFFFF !important;
	-webkit-text-fill-color: #FFFFFF !important;
}

/* Hover / focus / active / visited states */
.site-header .header-button-wrap a:hover,
.site-header .header-button-wrap a:hover span,
.site-header .header-button-wrap a:focus,
.site-header .header-button-wrap a:focus span,
.site-header .header-button-wrap a:active,
.site-header .header-button-wrap a:active span,
.site-header .site-header-item a.header-button:hover,
.site-header .site-header-item a.header-button:hover span,
.site-header .site-header-item a.header-button:focus,
.site-header .site-header-item a.header-button:focus span {
	color: #FFFFFF !important;
	-webkit-text-fill-color: #FFFFFF !important;
}

/* Extra fallback for Kadence's button text wrappers */
.site-header [class*="header-button"] a,
.site-header [class*="header-button"] a *,
.site-header [class*="header-button"] span {
	color: #FFFFFF !important;
	-webkit-text-fill-color: #FFFFFF !important;
}


/* =========================================================
   v1.5 — exact style for Directory "Moj račun" menu item
   ========================================================= */

.site-header .pkdir-menu-account > a,
.site-header .pkdir-menu-account > a:visited {
	background: #6F9D82 !important;
	color: #FFFFFF !important;
	-webkit-text-fill-color: #FFFFFF !important;
	border: 1px solid #6F9D82 !important;
	border-radius: 999px !important;
	padding: 10px 18px !important;
	box-shadow: 0 4px 12px rgba(86, 143, 115, .16) !important;
	font-weight: 700 !important;
	text-decoration: none !important;
	transition:
		background-color .18s ease,
		border-color .18s ease,
		box-shadow .18s ease,
		transform .18s ease !important;
}

.site-header .pkdir-menu-account > a:hover,
.site-header .pkdir-menu-account > a:focus,
.site-header .pkdir-menu-account > a:active {
	background: #7EAA90 !important;
	color: #FFFFFF !important;
	-webkit-text-fill-color: #FFFFFF !important;
	border-color: #7EAA90 !important;
	box-shadow: 0 6px 16px rgba(86, 143, 115, .22) !important;
	transform: translateY(-1px);
}

.site-header .pkdir-menu-account > a:focus-visible {
	outline: 3px solid rgba(111, 157, 130, .28) !important;
	outline-offset: 2px;
}

@media (max-width: 900px) {
	.site-header .pkdir-menu-account > a,
	.site-header .pkdir-menu-account > a:visited {
		padding: 9px 15px !important;
		font-size: 14px !important;
	}
}


/* =========================================================
   v1.6 — Legal footer links
   ========================================================= */

.pikhf-legal-footer {
	background: linear-gradient(135deg, #365f4c 0%, #2f5443 100%);
	color: rgba(255,255,255,.92);
	border-top: 1px solid rgba(255,255,255,.08);
}

.pikhf-legal-footer__inner {
	max-width: 1300px;
	margin: 0 auto;
	padding: 24px 30px 20px;
}

.pikhf-legal-footer__title {
	font-size: 15px;
	font-weight: 700;
	margin-bottom: 10px;
	color: #fff;
}

.pikhf-legal-footer__nav {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 18px;
}

.pikhf-legal-footer__nav a {
	color: rgba(255,255,255,.84) !important;
	text-decoration: none;
	font-size: 14px;
}

.pikhf-legal-footer__nav a:hover,
.pikhf-legal-footer__nav a:focus {
	color: #fff !important;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.pikhf-legal-footer__bottom {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-top: 18px;
	padding-top: 14px;
	border-top: 1px solid rgba(255,255,255,.12);
	font-size: 13px;
	color: rgba(255,255,255,.72);
}

.pikhf-cookie-settings {
	appearance: none;
	border: 0;
	background: transparent;
	color: rgba(255,255,255,.84);
	font: inherit;
	padding: 0;
	cursor: pointer;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.pikhf-cookie-settings:hover,
.pikhf-cookie-settings:focus {
	color: #fff;
}

@media (max-width: 700px) {
	.pikhf-legal-footer__inner {
		padding: 22px 20px 18px;
	}
	.pikhf-legal-footer__nav {
		flex-direction: column;
		gap: 6px;
	}
	.pikhf-legal-footer__bottom {
		align-items: flex-start;
		flex-direction: column;
	}
}


/* =========================================================
   v1.7 — Full Pikravetka footer
   ========================================================= */

/* Hide Kadence default footer so the custom footer is the only footer shown. */
#colophon.site-footer,
.site-footer#colophon {
	display: none !important;
}

.pikhf-legal-footer {
	display: none !important;
}

.pikhf-main-footer {
	background:
		radial-gradient(circle at 18% 12%, rgba(255,255,255,.045), transparent 33%),
		linear-gradient(135deg, #0f5a45 0%, #0d513f 52%, #0a4637 100%);
	color: rgba(255,255,255,.88);
	border-top: 1px solid rgba(255,255,255,.08);
}

.pikhf-main-footer__inner {
	max-width: 1300px;
	margin: 0 auto;
	padding: 52px 30px 18px;
}

.pikhf-main-footer__grid {
	display: grid;
	grid-template-columns: 1.45fr 1fr 1fr 1fr 1.05fr;
	gap: 42px;
	align-items: start;
}

.pikhf-footer-logo {
	display: inline-block;
	max-width: 240px;
	margin-bottom: 16px;
}

.pikhf-footer-logo img {
	display: block;
	max-width: 100%;
	width: auto;
	height: auto;
	max-height: 68px;
	filter: brightness(0) invert(1);
	opacity: .97;
}

.pikhf-footer-brandname {
	display: inline-block;
	margin-bottom: 14px;
	color: #fff !important;
	font-size: 25px;
	font-weight: 800;
	text-decoration: none;
}

.pikhf-footer-brand p {
	max-width: 310px;
	margin: 0;
	color: rgba(255,255,255,.78);
	font-size: 15px;
	line-height: 1.7;
}

.pikhf-footer-badges {
	display: flex;
	gap: 10px;
	margin-top: 20px;
}

.pikhf-footer-roundlink {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border: 1px solid rgba(255,255,255,.35);
	border-radius: 50%;
	color: #fff !important;
	text-decoration: none !important;
	font-weight: 700;
	transition: .18s ease;
}

.pikhf-footer-roundlink:hover,
.pikhf-footer-roundlink:focus {
	background: rgba(255,255,255,.12);
	border-color: rgba(255,255,255,.65);
	transform: translateY(-1px);
}

.pikhf-footer-col h3 {
	margin: 0 0 16px;
	color: #fff;
	font-size: 17px;
	font-weight: 750;
	line-height: 1.25;
}

.pikhf-footer-col ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.pikhf-footer-col li {
	margin: 0 0 10px;
	padding: 0;
	color: rgba(255,255,255,.76);
	font-size: 14px;
	line-height: 1.4;
}

.pikhf-footer-col a {
	color: rgba(255,255,255,.80) !important;
	text-decoration: none;
	transition: color .16s ease, opacity .16s ease;
}

.pikhf-footer-col a:hover,
.pikhf-footer-col a:focus {
	color: #fff !important;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.pikhf-footer-contact li {
	display: flex;
	align-items: flex-start;
	gap: 9px;
}

.pikhf-contact-icon {
	width: 18px;
	flex: 0 0 18px;
	color: rgba(255,255,255,.95);
	text-align: center;
}

.pikhf-footer-bottom {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 24px;
	margin-top: 38px;
	padding-top: 18px;
	border-top: 1px solid rgba(255,255,255,.14);
}

.pikhf-footer-copy {
	color: rgba(255,255,255,.72);
	font-size: 13px;
	white-space: nowrap;
}

.pikhf-footer-legal {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 10px 22px;
}

.pikhf-footer-legal a,
.pikhf-footer-legal .pikhf-cookie-settings {
	color: rgba(255,255,255,.80) !important;
	font-size: 13px;
	line-height: 1.4;
	text-decoration: none;
}

.pikhf-footer-legal a:hover,
.pikhf-footer-legal a:focus,
.pikhf-footer-legal .pikhf-cookie-settings:hover,
.pikhf-footer-legal .pikhf-cookie-settings:focus {
	color: #fff !important;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.pikhf-footer-legal .pikhf-cookie-settings {
	border: 0;
	background: transparent;
	padding: 0;
	cursor: pointer;
	font: inherit;
}

@media (max-width: 1100px) {
	.pikhf-main-footer__grid {
		grid-template-columns: 1.4fr 1fr 1fr;
	}
}

@media (max-width: 760px) {
	.pikhf-main-footer__inner {
		padding: 38px 22px 18px;
	}

	.pikhf-main-footer__grid {
		grid-template-columns: 1fr 1fr;
		gap: 32px 26px;
	}

	.pikhf-footer-brand {
		grid-column: 1 / -1;
	}

	.pikhf-footer-bottom {
		flex-direction: column;
		align-items: flex-start;
		gap: 14px;
	}

	.pikhf-footer-legal {
		justify-content: flex-start;
	}
}

@media (max-width: 520px) {
	.pikhf-main-footer__grid {
		grid-template-columns: 1fr;
		gap: 28px;
	}

	.pikhf-footer-brand {
		grid-column: auto;
	}

	.pikhf-footer-logo img {
		max-height: 58px;
	}

	.pikhf-footer-legal {
		flex-direction: column;
		gap: 8px;
	}
}
