/*
 * Pečjak — theme styles.
 * Values mirror the former Elementor kit / templates (breakpoints: tablet ≤ 1024px, mobile ≤ 767px).
 */

/* ==========================================================================
   1. Base (parity with Hello Elementor reset + Elementor kit)
   ========================================================================== */

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	-webkit-text-size-adjust: 100%;
}

body {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	overflow-x: hidden;
}

img {
	height: auto;
	max-width: 100%;
	border-style: none;
}

b,
strong {
	font-weight: bolder;
}

ul,
ol,
dl,
dd,
dt,
li {
	margin-block-start: 0;
	margin-block-end: 0;
}

/* Links take the surrounding typography (the kit forced 24/32 on every link; in practice every link sat in text styled to match). */
a {
	font: inherit;
	text-decoration: none;
}

.screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect( 0, 0, 0, 0 );
	white-space: nowrap;
	border: 0;
}

/* Font-size presets carry the line-height the design pairs them with. */
.has-small-font-size { line-height: 24px; }
.has-medium-font-size { line-height: 28px; }
.has-large-font-size { line-height: 32px; }
.has-x-large-font-size { line-height: 40px; }
.has-xx-large-font-size { line-height: 56px; }
.has-huge-font-size { line-height: 80px; }
.has-giant-font-size { line-height: 128px; }

h1,
h2,
h3,
h4,
h5,
h6 {
	margin: 0;
}

p {
	margin: 0;
}

/* Kit: tablet + mobile heading sizes. */
@media ( max-width: 1024px ) {
	h1,
	.wp-block-heading.has-giant-font-size {
		font-size: 56px;
		line-height: 64px;
		letter-spacing: -1px;
	}

	h2 {
		font-size: 32px;
		line-height: 40px;
		letter-spacing: -1px;
	}
}

/* ==========================================================================
   2. Layout helpers
   ========================================================================== */

/* Boxed section: centred, max 1440. */
.pj-boxed {
	width: 100%;
	max-width: 1440px;
	margin-left: auto !important;
	margin-right: auto !important;
}

/* Inner gutter (Elementor inner containers: 16px, 24px on tablet/mobile). */
.pj-gutter {
	padding-left: 16px;
	padding-right: 16px;
}

@media ( max-width: 1024px ) {
	.pj-gutter {
		padding-left: 24px;
		padding-right: 24px;
	}
}

/* Flex row that stacks on tablet. */
.pj-row {
	display: flex;
	flex-direction: row;
	gap: 32px;
}

@media ( max-width: 1024px ) {
	.pj-row.pj-stack-tablet {
		flex-direction: column;
	}

	.pj-row.pj-stack-tablet > * {
		width: 100% !important;
		flex-basis: auto !important;
	}
}

@media ( max-width: 767px ) {
	.pj-row.pj-stack-mobile {
		flex-direction: column;
	}

	.pj-row.pj-stack-mobile > * {
		width: 100% !important;
		flex-basis: auto !important;
	}
}

.pj-col {
	display: flex;
	flex-direction: column;
	min-width: 0;
}

.pj-hide {
	display: none !important;
}

@media ( min-width: 1025px ) {
	.pj-hide-desktop {
		display: none !important;
	}
}

@media ( min-width: 768px ) and ( max-width: 1024px ) {
	.pj-hide-tablet {
		display: none !important;
	}
}

@media ( max-width: 767px ) {
	.pj-hide-mobile {
		display: none !important;
	}
}

/* ==========================================================================
   3. Buttons
   ========================================================================== */

.wp-block-buttons {
	gap: 0;
}

.wp-block-button__link,
.wp-element-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
	transition: all 0.3s;
	text-decoration: none;
	cursor: pointer;
}

/* Icon spacing: Elementor default 5px; 8 / 12 where it was set explicitly. */
.wp-block-button.pj-icon-gap-8 .wp-block-button__link { gap: 8px; }
.wp-block-button.pj-icon-gap-12 .wp-block-button__link { gap: 12px; }

/* Arrow icon after the label — brown, as the original SVG. */
.wp-block-button.is-style-arrow .wp-block-button__link::after,
.wp-block-button.is-style-solid-arrow .wp-block-button__link::after,
.pj-read-more::after,
.pj-load-more .wp-block-button__link::after {
	content: "";
	flex: 0 0 auto;
	width: 1em;
	height: 1em;
	background: url( "../icons/arrow-forward.svg" ) center / contain no-repeat;
}

.pj-load-more .wp-block-button__link::after {
	display: none;
}

.wp-block-button.is-style-solid-arrow .wp-block-button__link {
	background-color: var( --wp--preset--color--red );
	border-color: var( --wp--preset--color--red );
	color: var( --wp--preset--color--cream );
}

.wp-block-button.is-style-solid-arrow .wp-block-button__link:hover,
.wp-block-button.is-style-solid-arrow .wp-block-button__link:focus {
	background-color: transparent;
	border-color: var( --wp--preset--color--red );
	color: var( --wp--preset--color--red );
}

/* Read more link styled as the outline button. */
.pj-read-more {
	display: inline-flex;
	align-items: center;
	align-self: flex-start;
	text-align: center;
	gap: 8px;
	padding: 20px 40px;
	border: 1px solid var( --wp--preset--color--brown );
	border-radius: 160px;
	background: transparent;
	color: var( --wp--preset--color--red );
	font-family: var( --wp--preset--font-family--lora );
	font-size: 16px;
	font-weight: 700;
	line-height: 24px;
	transition: all 0.3s;
}

.pj-read-more:hover,
.pj-read-more:focus {
	background-color: var( --wp--preset--color--red );
	border-color: var( --wp--preset--color--red );
	color: var( --wp--preset--color--cream );
}

/* ==========================================================================
   4. Header
   ========================================================================== */

.pj-site-header {
	position: relative;
	z-index: 9999;
}

.pj-header.wp-block-group {
	position: relative;
	z-index: 9999;
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	gap: 0;
	padding: 12px 48px;
}

.pj-header .pj-header__logo {
	flex: 0 0 auto;
	width: 15%;
	gap: 0;
}

.pj-header .pj-header__nav {
	flex: 0 1 auto;
	width: 70%;
	justify-content: center;
	gap: 0;
}

.pj-header .pj-header__actions {
	flex: 0 1 auto;
	width: 15%;
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-end;
	gap: 16px;
}

.pj-header .pj-header__toggle {
	display: none;
	flex: 0 1 auto;
	width: 15%;
	justify-content: flex-end;
}

.pj-header .wp-block-site-logo {
	line-height: 0;
}

.pj-header .wp-block-site-logo img {
	width: auto !important;
	height: 120px !important;
}

/* Like the Elementor widgets: icon and button wrappers shrink in proportion (48:166) when the
   15% column is too narrow; the icon and the pill button keep their size and overflow. */
.pj-header .pj-header__locator {
	flex: 0 1 48px;
	min-width: 0;
	display: block;
	line-height: 0;
	padding-bottom: 8px;
}

.pj-header .pj-header__locator img {
	display: block;
	width: 48px !important;
	max-width: none;
	height: 48px !important;
}

.pj-header .pj-header__cta {
	flex: 0 1 166px;
	min-width: 0;
	flex-wrap: nowrap;
}

.pj-header .pj-header__cta .wp-block-button {
	flex: 0 0 auto;
}

/* Desktop navigation. */
.pj-nav-main .wp-block-navigation__container {
	gap: 0;
	flex-wrap: nowrap;
}

.pj-nav-main .wp-block-navigation-item {
	display: flex;
	align-items: center;
}

.pj-nav-main .wp-block-navigation-item + .wp-block-navigation-item::before {
	content: "";
	display: block;
	width: 1px;
	height: 24px;
	margin: 0 24px;
	background: var( --wp--preset--color--brown );
}

.pj-nav-main .wp-block-navigation-item__content {
	padding: 0;
	font-family: var( --wp--preset--font-family--lora );
	font-size: 16px;
	font-weight: 700;
	line-height: 24px;
	text-transform: uppercase;
}

.pj-header--light .pj-nav-main .wp-block-navigation-item__content {
	color: var( --wp--preset--color--cream );
}

.pj-header--dark .pj-nav-main .wp-block-navigation-item__content {
	color: var( --wp--preset--color--red );
}

/* Hamburger (opens the mobile menu overlay). */
.pj-nav-burger .wp-block-navigation__responsive-container-open {
	display: flex !important;
	padding: 0;
	margin: 0;
	border: 0;
	background: none;
	color: #001033;
	width: 24px;
	height: 24px;
}

.pj-nav-burger .wp-block-navigation__responsive-container-open:hover,
.pj-nav-burger .wp-block-navigation__responsive-container-open:focus {
	background: none;
	color: #001033;
}

.pj-nav-burger .wp-block-navigation__responsive-container-open svg {
	width: 24px;
	height: 24px;
	fill: currentColor;
}

@media ( max-width: 1024px ) {
	.pj-header.wp-block-group {
		padding: 12px 24px;
	}

	.pj-header .wp-block-site-logo img {
		height: 88px !important;
	}

	.pj-header .pj-header__logo {
		width: 20%;
	}

	.pj-header .pj-header__nav,
	.pj-header .pj-header__locator {
		display: none;
	}

	.pj-header .pj-header__actions,
	.pj-header .pj-header__toggle {
		width: 50%;
	}

	.pj-header .pj-header__toggle {
		display: flex;
	}
}

@media ( max-width: 767px ) {
	.pj-header.wp-block-group {
		justify-content: space-between;
	}

	.pj-header .pj-header__logo {
		width: 118px;
	}

	.pj-header .pj-header__actions {
		width: 166px;
	}

	.pj-header .pj-header__toggle {
		width: 24px;
	}
}

/* ==========================================================================
   5. Mobile menu overlay (custom navigation overlay template part)
   ========================================================================== */

.pj-nav-burger .wp-block-navigation__responsive-container.is-menu-open {
	display: flex;
	justify-content: center;
	padding: 0;
	background: transparent;
	animation: none;
}

.pj-nav-burger .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-close,
.pj-nav-burger .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog,
.pj-nav-burger .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	width: 100%;
	max-width: 640px;
	height: 100%;
	margin: 0 auto;
	padding: 0;
}

.pj-nav-burger .wp-block-navigation__overlay-container {
	height: 100vh;
	overflow-y: auto;
	background: var( --wp--preset--color--cream );
}

.pj-mobile-menu.wp-block-group {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 16px;
	min-height: 100vh;
	padding: 0 24px;
}

.pj-mobile-menu .pj-mobile-menu__close {
	position: absolute;
	top: 44px;
	right: 24px;
	z-index: 2;
	width: 24px;
	height: 24px;
	padding: 0;
	border: 0;
	background: none;
	color: var( --wp--preset--color--red );
	cursor: pointer;
}

.pj-mobile-menu .pj-mobile-menu__close svg {
	width: 24px;
	height: 24px;
	fill: currentColor;
}

.pj-mobile-menu__logo.wp-block-group {
	padding: 12px 0;
	align-self: flex-start;
}

.pj-mobile-menu__logo .wp-block-site-logo img {
	width: auto !important;
	height: 88px !important;
}

.pj-nav-mobile .wp-block-navigation__container {
	flex-direction: column;
	align-items: stretch;
	gap: 0;
}

.pj-nav-mobile .wp-block-navigation-item {
	display: block;
}

.pj-nav-mobile .wp-block-navigation-item__content {
	display: block;
	padding: 20px 12px;
	border-bottom: 1px solid var( --wp--preset--color--brown );
	color: var( --wp--preset--color--black );
	font-family: var( --wp--preset--font-family--lora );
	font-size: 24px;
	font-weight: 400;
	line-height: 32px;
}

.pj-mobile-menu__social.wp-block-group {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
}

@media ( max-width: 767px ) {
	.pj-mobile-menu.wp-block-group {
		padding-bottom: 120px;
	}

	.pj-mobile-menu__nav.wp-block-group {
		padding: 24px 0;
	}
}

/* Social icons (footer + mobile menu): Elementor inline icon list spacing. */
.pj-social.wp-block-group {
	display: flex;
	flex-wrap: wrap;
	gap: 0;
	margin: 0 -8px;
}

.pj-social .pj-social__icon {
	margin: 0 8px;
	width: 35px;
	line-height: 0;
}

.pj-social .pj-social__icon img {
	display: block;
	width: 24px !important;
	height: 24px !important;
}

/* ==========================================================================
   6. Footer
   ========================================================================== */

.pj-footer.wp-block-group {
	display: flex;
	flex-direction: column;
	gap: 40px;
	padding: 60px 0;
	color: var( --wp--preset--color--cream );
}

.pj-footer__top.wp-block-group,
.pj-footer__bottom.wp-block-group {
	display: flex;
	flex-direction: row;
	gap: 32px;
	width: 100%;
	max-width: 1440px;
	margin: 0 auto;
	padding: 0 16px;
}

.pj-footer__col.wp-block-group {
	flex: 1 1 0;
	min-width: 0;
}

.pj-footer .wp-block-site-logo {
	line-height: 0;
}

.pj-footer .wp-block-site-logo img {
	width: 160px !important;
	height: 120px !important;
}

.pj-footer__info p {
	font-size: 16px;
	line-height: 28px;
	color: var( --wp--preset--color--cream );
}

/* The kit gave footer links a 32px line-height (it makes those rows 32px tall). */
.pj-footer__info a {
	color: var( --wp--preset--color--cream );
	font-size: 16px;
	line-height: 32px;
}

.pj-nav-footer .wp-block-navigation__container {
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
}

.pj-nav-footer .wp-block-navigation-item__content {
	padding: 0;
	color: var( --wp--preset--color--cream );
	font-size: 16px;
	line-height: 24px;
}

.pj-footer__follow.wp-block-group {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.pj-footer__bottom.wp-block-group {
	align-items: center;
}

.pj-footer__legal.wp-block-group {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: 16px;
	flex: 1 1 0;
}

.pj-footer__legal p,
.pj-footer__legal a {
	color: var( --wp--preset--color--cream );
	font-size: 16px;
	line-height: 24px;
}

.pj-footer .pj-footer__ifs {
	flex: 1 1 0;
	text-align: right;
	line-height: 0;
}

.pj-footer .pj-footer__ifs img {
	display: inline-block;
	width: 72px;
	height: 40px;
}

@media ( max-width: 1024px ) {
	.pj-footer.wp-block-group {
		padding: 32px 0;
	}

	.pj-footer__top.wp-block-group,
	.pj-footer__bottom.wp-block-group {
		flex-direction: column;
		padding: 0 24px;
	}

	.pj-footer__col.wp-block-group {
		flex: 0 0 auto;
		width: 100%;
		text-align: center;
	}

	.pj-footer__menu.wp-block-group {
		display: none;
	}

	.pj-footer .pj-footer__brand .wp-block-site-logo {
		display: flex;
		justify-content: center;
	}

	.pj-footer__follow.wp-block-group {
		align-items: stretch;
	}

	.pj-footer__follow h5 {
		text-align: center;
	}

	.pj-footer__follow .pj-social.wp-block-group {
		justify-content: center;
	}

	.pj-footer__legal.wp-block-group {
		flex: 0 0 auto;
		width: 100%;
		justify-content: center;
	}

	.pj-footer .pj-footer__ifs {
		flex: 0 0 auto;
		width: 100%;
		text-align: center;
	}
}

/* ==========================================================================
   7. Shared sections
   ========================================================================== */

.pj-main {
	display: block;
}

/* Full-width hero image that slides under the header. */
.pj-hero-img.wp-block-image,
.pj-hero-img {
	margin-top: -144px !important;
	line-height: 0;
}

.wp-block-image.pj-hero-img img {
	display: block;
	width: 100%;
	height: auto;
}

@media ( max-width: 1024px ) {
	.wp-block-image.pj-hero-img img {
		height: 400px;
		object-fit: cover;
		object-position: center center;
	}
}

/* Centered intro: eyebrow + big title + text (960 wide). */
.pj-intro.wp-block-group {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 16px;
	width: 960px;
	max-width: 100%;
	margin: 0 auto;
	padding: 0 16px;
	text-align: center;
}

@media ( max-width: 1024px ) {
	.pj-intro.wp-block-group {
		width: 100%;
		padding: 0 24px;
	}
}

.pj-eyebrow {
	color: var( --wp--preset--color--brown );
	font-size: 20px;
	line-height: 28px;
}

.pj-date {
	color: var( --wp--preset--color--brown );
	font-size: 16px;
	line-height: 24px;
}

/* 404 */
.pj-404.wp-block-group {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 60px 0;
}

/* ==========================================================================
   8. Search results (Hello Elementor default listing)
   ========================================================================== */

/* Hello Elementor's .site-main widths. */
.pj-hello-list.wp-block-group {
	width: 100%;
	margin: 0 auto;
}

@media ( max-width: 575px ) {
	.pj-hello-list.wp-block-group {
		padding: 0 10px;
	}
}

@media ( min-width: 576px ) {
	.pj-hello-list.wp-block-group {
		max-width: 500px;
	}
}

@media ( min-width: 768px ) {
	.pj-hello-list.wp-block-group {
		max-width: 600px;
	}
}

@media ( min-width: 992px ) {
	.pj-hello-list.wp-block-group {
		max-width: 800px;
	}
}

@media ( min-width: 1200px ) {
	.pj-hello-list.wp-block-group {
		max-width: 1140px;
	}
}

.pj-hello-list .wp-block-post-template {
	margin: 0;
	padding: 0;
	list-style: none;
}


.pj-hello-list .entry-title {
	margin: 8px 0 16px;
	font-family: var( --wp--preset--font-family--martel-sans );
	font-size: 72px;
	font-weight: 900;
	line-height: 80px;
}

.pj-hello-list .entry-title a {
	display: inline; /* core makes Post Title links inline-blocks */
	font-family: var( --wp--preset--font-family--lora );
	font-size: 24px;
	font-weight: 400;
	line-height: 32px;
	color: var( --wp--preset--color--black );
}

.pj-hello-list .pj-hello-list__image {
	margin: 0;
}

/* Hello Elementor: .post .wp-post-image (an inline image inside a link, so it sits on a text line). */
.pj-hello-list .pj-hello-list__image a {
	display: inline;
}

.pj-hello-list .pj-hello-list__image img {
	width: 100%;
	max-height: 500px;
	object-fit: cover;
	vertical-align: baseline;
}

@media ( max-width: 991px ) {
	.pj-hello-list .pj-hello-list__image img {
		max-height: 400px;
	}
}

@media ( max-width: 575px ) {
	.pj-hello-list .pj-hello-list__image img {
		max-height: 300px;
	}
}

@media ( max-width: 1024px ) {
	.pj-hello-list .entry-title {
		font-size: 32px;
		line-height: 40px;
		letter-spacing: -1px;
	}
}

/* ==========================================================================
   9. Content pages: intro + text column (O nama subpages, Kontakt, …)
   ========================================================================== */

.pj-page-intro.wp-block-group {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.pj-text-section.wp-block-group {
	display: flex;
	flex-direction: column;
	align-items: center;
	margin: 64px 0 120px;
}

.pj-text-col.wp-block-group {
	display: flex;
	flex-direction: column;
	gap: 32px;
	width: 960px;
	max-width: 100%;
	padding: 0 16px;
}

.pj-text-col > .wp-block-buttons {
	justify-content: center;
}

@media ( max-width: 1024px ) {
	.pj-text-section.wp-block-group {
		margin: 32px 0 60px;
	}

	.pj-text-col.wp-block-group {
		width: 100%;
		padding: 0 24px;
	}
}

/* Legal pages (Politika privatnosti, Uvjeti korištenja). */
.pj-legal.wp-block-group {
	display: flex;
	flex-direction: column;
	align-items: center;
	margin: 32px 0 60px;
}

.pj-legal__text.wp-block-group {
	display: flex;
	flex-direction: column;
	gap: 0;
	width: 100%;
	max-width: 1440px;
	padding: 0 16px;
}

.pj-legal__text ul,
.pj-legal__text ol {
	padding-left: 40px;
}

@media ( max-width: 1024px ) {
	.pj-legal__text.wp-block-group {
		padding: 0 24px;
	}
}

/* ==========================================================================
   10. Forms (pecjak/form) — geometry of the former Elementor forms
   ========================================================================== */

.pj-form {
	position: relative;
	width: 100%;
}

.pj-form__fields {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -16px -32px;
}

.pj-form__field,
.pj-form__submit {
	flex: 0 0 auto;
	width: 100%;
	padding: 0 16px;
	margin-bottom: 32px;
}

.pj-form__col-50 { width: 50%; }
.pj-form__col-70 { width: 70%; }
.pj-form__col-30 { width: 30%; }
.pj-form__col-100 { width: 100%; }

.pj-form input[type="text"],
.pj-form input[type="email"],
.pj-form input[type="tel"],
.pj-form textarea {
	display: block;
	width: 100%;
	min-height: 59px;
	margin: 0;
	padding: 7px 20px;
	border: 1px solid var( --wp--preset--color--brown );
	border-radius: 120px;
	background: #fff;
	color: var( --wp--preset--color--black );
	font-family: var( --wp--preset--font-family--lora );
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;
	outline: 0;
	box-shadow: none;
	-webkit-appearance: none;
	appearance: none;
}

.pj-form textarea {
	min-height: 0;
	height: 112px;
	border-radius: 16px;
	resize: vertical;
}

.pj-form ::placeholder {
	color: #757575;
	opacity: 1;
}

/* As in Elementor: 16/24 consent text inside a 24/32 line box. */
.pj-form__option {
	display: block;
	font-family: var( --wp--preset--font-family--lora );
	font-size: 24px;
	line-height: 32px;
}

.pj-form__option label {
	font-size: 16px;
	line-height: 24px;
}

.pj-form__option input[type="checkbox"] {
	margin: 3px 3px 3px 4px;
	margin-inline-start: 0;
	vertical-align: baseline;
}

.pj-form__option a {
	font-size: 16px;
	line-height: 32px;
	text-decoration: underline;
}

.pj-form__button {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 20px 40px;
	border: 1px solid var( --wp--preset--color--brown );
	border-radius: 160px;
	background-color: transparent;
	color: var( --wp--preset--color--red );
	font-family: var( --wp--preset--font-family--lora );
	font-size: 16px;
	font-weight: 700;
	line-height: 24px;
	cursor: pointer;
	transition: all 0.3s;
}

.pj-form__button:hover,
.pj-form__button:focus {
	background-color: var( --wp--preset--color--red );
	border-color: var( --wp--preset--color--red );
	color: var( --wp--preset--color--cream );
}

.pj-form__button-icon {
	width: 16px;
	height: 16px;
}

.pj-form.is-sending .pj-form__button {
	opacity: 0.6;
	cursor: progress;
}

.pj-form__error[hidden] {
	display: none;
}

.pj-form__error {
	display: block;
	margin-top: 4px;
	color: #d63638;
	font-size: 14px;
	line-height: 20px;
}

.pj-form__message {
	margin: 10px 0;
	font-family: var( --wp--preset--font-family--lora );
	font-size: 20px;
	line-height: 28px;
}

.pj-form__hp {
	position: absolute !important;
	left: -9999px;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

@media ( max-width: 767px ) {
	.pj-form--contact .pj-form__field,
	.pj-form--b2b .pj-form__field {
		width: 100%;
	}
}

/* Kontakt: form + accordion sections. */
.pj-form-section.wp-block-group,
.pj-accordion-section.wp-block-group {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.pj-form-section.wp-block-group {
	margin: 80px 0;
}

.pj-accordion-section.wp-block-group {
	margin: 0 0 120px;
}

.pj-form-col.wp-block-group,
.pj-accordion-col.wp-block-group {
	width: 960px;
	max-width: 100%;
	padding: 0 16px;
}

@media ( max-width: 1024px ) {
	.pj-form-col.wp-block-group,
	.pj-accordion-col.wp-block-group {
		width: 100%;
		padding: 0 24px;
	}
}

/* ==========================================================================
   11. Accordion (core/accordion styled like the Elementor nested accordion)
   ========================================================================== */

.pj-accordion .wp-block-accordion-item {
	margin: 0;
}

.pj-accordion .wp-block-accordion-heading {
	margin: 0;
	font-family: var( --wp--preset--font-family--martel-sans );
	font-size: 24px;
	font-weight: 800;
	line-height: 32px;
	letter-spacing: -1px;
	text-transform: uppercase;
	color: var( --wp--preset--color--red );
}

.pj-accordion .wp-block-accordion-heading__toggle {
	justify-content: flex-start;
	gap: 8px;
	padding: 16px 0;
	color: var( --wp--preset--color--red );
}

.pj-accordion .wp-block-accordion-heading__toggle:hover .wp-block-accordion-heading__toggle-title {
	text-decoration: none;
}

.pj-accordion .wp-block-accordion-heading__toggle-title {
	flex: 0 1 auto;
}

.pj-accordion .wp-block-accordion-heading__toggle-icon {
	flex: 0 0 24px;
	width: 24px;
	height: 24px;
	font-size: 0;
	transform: none !important;
	background: url( "../icons/keyboard-arrow-down.svg" ) center / 24px 24px no-repeat;
}

.pj-accordion .wp-block-accordion-item.is-open > .wp-block-accordion-heading .wp-block-accordion-heading__toggle-icon {
	background-image: url( "../icons/keyboard-arrow-up.svg" );
}

.pj-accordion .wp-block-accordion-panel {
	padding: 0 0 16px;
}

.pj-accordion .wp-block-accordion-panel p {
	font-size: 20px;
	line-height: 28px;
}

/* ==========================================================================
   12. Split sections, bands, cards (O nama, Naslovnica, B2B)
   ========================================================================== */

.pj-w-30 { width: 30%; }
.pj-w-40 { width: 40%; }
.pj-w-50 { width: 50%; }
.pj-w-60 { width: 60%; }
.pj-w-70 { width: 70%; }

.pj-gap-8 { gap: 8px !important; }
.pj-gap-16 { gap: 16px !important; }
.pj-gap-32 { gap: 32px !important; }
.pj-gap-40 { gap: 40px !important; }

.pj-row > .pj-col {
	flex: 0 1 auto;
}

.wp-block-image.pj-hero-img--natural img {
	height: auto !important;
	object-fit: fill;
}

.pj-split.wp-block-group {
	padding: 60px 0;
}

.pj-split .pj-row {
	align-items: center;
}

.pj-split__img.wp-block-image {
	line-height: 0;
}

@media ( max-width: 767px ) {
	.pj-split__img.wp-block-image img {
		height: auto !important;
	}
}

/* Full-bleed background image band. */
.pj-band.wp-block-group {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.pj-band__inner.wp-block-group {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 32px;
	width: 960px;
	max-width: 100%;
	padding: 0 16px;
}

@media ( max-width: 1024px ) {
	.pj-band__inner.wp-block-group {
		width: 100%;
		padding: 0 24px;
	}
}

.pj-band--onama.wp-block-group {
	padding: 260px 0 246px;
}

@media ( max-width: 767px ) {
	.pj-band--onama.wp-block-group {
		padding: 130px 0 220px;
	}
}

/* Cream cards with image (O nama). */
.pj-cards.wp-block-group {
	padding: 60px 0;
}

.pj-cards__row.wp-block-group {
	align-items: center;
}

.pj-card.wp-block-group {
	display: flex;
	flex-direction: row;
	gap: 24px;
	width: 100%;
	flex: 0 1 auto;
	padding: 32px;
	border-radius: 8px;
	background: var( --wp--preset--color--cream );
}

.pj-card__text.wp-block-group {
	display: flex;
	flex-direction: column;
	gap: 16px;
	flex: 0 0 auto;
	width: 57.959%;
}

.pj-card__img.wp-block-image {
	order: 9;
	flex: 0 1 auto;
	width: 100%;
	line-height: 0;
}

@media ( max-width: 767px ) {
	.pj-cards.wp-block-group {
		padding: 0 0 60px;
	}

	.pj-card.wp-block-group {
		flex-wrap: wrap;
	}

	.pj-card__text.wp-block-group {
		width: 100%;
	}
}

/* ==========================================================================
   13. Compatibility: Elementor global colour variables (used by the store-locator
       plugin CSS) and the kit's global button look for plugin buttons.
   ========================================================================== */

:root {
	--e-global-color-primary: #000000;
	--e-global-color-secondary: #ffffff;
	--e-global-color-text: #79242f;
	--e-global-color-accent: #0a2240;
	--e-global-color-4a93445: #ffefcc;
	--e-global-color-5adf5a5: #9c6129;
}

.psl .psl-more {
	padding: 20px 40px;
	border: 1px solid var( --wp--preset--color--brown );
	border-radius: 160px;
	background-color: transparent;
	color: var( --wp--preset--color--red );
	font-family: var( --wp--preset--font-family--lora );
	font-size: 16px;
	font-weight: 700;
	line-height: 24px;
	opacity: 1;
	transition: all 0.3s;
}

.psl .psl-more:hover,
.psl .psl-more:focus {
	background-color: var( --wp--preset--color--red );
	border-color: var( --wp--preset--color--red );
	color: var( --wp--preset--color--cream );
	opacity: 1;
}

/* ==========================================================================
   14. Store locator page
   ========================================================================== */

.pj-sl-hero.wp-block-group {
	margin-top: -144px !important;
}

.pj-sl-hero__inner.wp-block-group {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 32px;
	max-width: 1440px;
	margin: 0 auto;
	padding: 300px 0 250px;
}

.pj-sl-search.wp-block-group {
	width: 100%;
	max-width: 568px;
}

.pj-sl-search .store-locator-search {
	margin: 0 0 24px !important;
}

.pj-sl-search .store-locator-search .search-input-wrapper {
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 20px 24px;
	background: #fff;
	border-radius: 120px;
	border: 1px solid #9c6129;
}

.pj-sl-search .store-locator-search .store-search-input {
	height: 24px;
	border: none !important;
	line-height: 32px;
}

.pj-sl-search .store-search-input:focus {
	outline: none;
}

.pj-sl-search button {
	display: flex;
	padding: 0;
	border: none !important;
}

.pj-sl-search button:hover {
	background: unset !important;
}

.pj-sl-results.wp-block-group {
	display: flex;
	flex-direction: column;
	align-items: center;
	margin: 0 0 120px;
}

.pj-sl-results__inner.wp-block-group {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 16px;
	width: 960px;
	max-width: 100%;
	padding: 0 16px;
}

@media ( max-width: 767px ) {
	.pj-sl-search.wp-block-group {
		padding: 0 16px;
		max-width: 568px;
	}

	.pj-sl-results.wp-block-group {
		margin: -100px 0 120px;
	}
}

/* ==========================================================================
   15. Newsletter form + Prijavi se page
   ========================================================================== */

.pj-form--newsletter .pj-form__fields {
	margin: 0 -8px -16px;
}

.pj-form--newsletter .pj-form__field,
.pj-form--newsletter .pj-form__submit {
	padding: 0 8px;
	margin-bottom: 16px;
}

.pj-form--newsletter .pj-form__submit {
	display: flex;
}

/* Flex item like Elementor's: never narrower than its content (may overflow its 30% column). */
.pj-form--newsletter .pj-form__button {
	flex: 1 1 100%;
	justify-content: center;
	color: #fff;
}

.pj-form--newsletter .pj-form__button:hover,
.pj-form--newsletter .pj-form__button:focus {
	color: var( --wp--preset--color--cream );
}

.pj-form--newsletter .pj-form__message {
	margin: 10px 0 0;
	color: var( --wp--preset--color--cream );
	font-size: 16px;
	line-height: 24px;
}

@media ( max-width: 767px ) {
	.pj-form--newsletter .pj-form__field,
	.pj-form--newsletter .pj-form__submit {
		width: 100%;
	}
}

.pj-signup.wp-block-group {
	margin: 0 0 45px;
}

.pj-signup__title.wp-block-heading {
	margin-bottom: 85px;
}

.pj-signup-band.wp-block-group {
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 60px 0;
}

.pj-signup-band.wp-block-group > * {
	width: 100%;
	max-width: 1440px;
	margin-left: auto;
	margin-right: auto;
}

/* ==========================================================================
   16. Motion effects (see assets/js/theme.js)
   ========================================================================== */

.pj-anim:not(.is-animated) {
	visibility: hidden;
}

.pj-anim.is-animated {
	animation-duration: 1.25s;
	animation-fill-mode: both;
}

.pj-anim.pj-anim-fast.is-animated {
	animation-duration: 0.75s;
}

.pj-anim-tada.is-animated {
	animation-name: pj-tada;
}

.pj-anim-fadeIn.is-animated {
	animation-name: pj-fadeIn;
}

@keyframes pj-tada {
	from, to { transform: scale3d( 1, 1, 1 ); }
	10%, 20% { transform: scale3d( 0.9, 0.9, 0.9 ) rotate3d( 0, 0, 1, -3deg ); }
	30%, 50%, 70%, 90% { transform: scale3d( 1.1, 1.1, 1.1 ) rotate3d( 0, 0, 1, 3deg ); }
	40%, 60%, 80% { transform: scale3d( 1.1, 1.1, 1.1 ) rotate3d( 0, 0, 1, -3deg ); }
}

@keyframes pj-fadeIn {
	from { opacity: 0; }
	to { opacity: 1; }
}

@media ( prefers-reduced-motion: reduce ) {
	.pj-anim.is-animated {
		animation: none;
	}
}

.pj-mousetrack {
	transition: transform 1s cubic-bezier( 0, 0.33, 0.07, 1.03 );
}

.pj-bg-parallax {
	position: relative;
}

.pj-bg-parallax.has-motion-layer {
	background-image: none !important;
}

.pj-bg-parallax > :not(.pj-motion-container) {
	position: relative;
	z-index: 1;
}

.pj-motion-container {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
	z-index: 0;
}

.pj-motion-layer {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 200%;
	background-repeat: no-repeat;
	transition: transform 1s cubic-bezier( 0, 0.33, 0.07, 1.03 );
}

/* ==========================================================================
   17. Naslovnica
   ========================================================================== */

/* Hero slider (4 slides; 2 per view on tablet as before). */
.pj-hero-slider.pj-carousel {
	margin-top: -144px !important;
	--pj-dot-gap: 0px;
}

.pj-hero-slide.wp-block-group {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 1100px;
	height: 100%;
}

.pj-hero-slide__title.wp-block-heading {
	width: 49.327%;
}

.pj-hero-slider .pj-carousel__dots.swiper-pagination {
	align-items: flex-end;
	height: 150px;
	padding: 48px 0;
	background: var( --wp--preset--color--cream );
	border-top-left-radius: 100% 100%;
	border-top-right-radius: 100% 100%;
}

.pj-hero-slider .pj-carousel__dots .swiper-pagination-bullet {
	margin: 0 24px !important;
}

@media ( max-width: 767px ) {
	.pj-hero-slide.wp-block-group {
		min-height: 800px;
	}

	.pj-hero-slide__title.wp-block-heading {
		width: 100%;
	}
}

/* Featured product (cream) */
.pj-featured.wp-block-group {
	padding: 60px 0;
}

.pj-featured__row.wp-block-group {
	align-items: center;
}

.pj-featured__media.wp-block-group {
	position: relative;
}

.pj-featured__main.wp-block-image {
	line-height: 0;
}

.pj-pistachio.wp-block-image {
	position: absolute;
	margin: 0;
	line-height: 0;
}

.pj-pistachio img {
	width: auto !important;
	max-width: none;
}

.pj-pistachio-1 { left: 94px; top: 299px; }
.pj-pistachio-1 img { height: 97px !important; }
.pj-pistachio-2 { left: 646px; top: 118px; }
.pj-pistachio-2 img { height: 64px !important; }
.pj-pistachio-3 { left: 262px; top: 3px; }
.pj-pistachio-3 img { height: 46px !important; }

@media ( max-width: 767px ) {
	.pj-featured__main.wp-block-image img {
		height: 302px !important;
	}
}

/* Products: tabs + carousels */
.pj-products.wp-block-group {
	padding: 120px 0;
}

@media ( max-width: 1024px ) {
	.pj-products.wp-block-group {
		padding: 32px 0;
	}
}

.pj-tabs.wp-block-tabs {
	display: flex;
	flex-direction: column;
	gap: 40px;
}

.pj-tabs .wp-block-tab-list {
	display: flex;
	flex-wrap: nowrap;
	gap: 4px;
	align-self: center;
	width: fit-content;
	margin: 0 auto;
	padding: 8px;
	border: 1px solid var( --wp--preset--color--brown );
	border-radius: 160px;
}

.pj-tabs .wp-block-tab-list button {
	margin: 0;
	padding: 20px 40px;
	border: 0;
	border-radius: 160px;
	background: var( --wp--preset--color--white );
	color: var( --wp--preset--color--red );
	font-family: var( --wp--preset--font-family--lora );
	font-size: 16px;
	font-weight: 700;
	line-height: 24px;
	cursor: pointer;
	transition: all 0.3s;
}

.pj-tabs .wp-block-tab-list button[aria-selected="true"],
.pj-tabs .wp-block-tab-list button.is-active {
	background: var( --wp--preset--color--red );
	color: var( --wp--preset--color--cream );
}

.pj-tabs .wp-block-tab-panel {
	padding: 0;
}

/* Product cards (loop item #316) */
.pj-product-card.wp-block-group {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 16px;
	height: 100%;
	padding: 24px;
	border: 1px solid var( --wp--preset--color--brown );
	border-radius: 12px;
}

.pj-product-card .pj-product-card__img {
	width: 100%;
	max-width: 219px;
	margin: 0 auto;
	line-height: 0;
}

.pj-product-card .pj-product-card__img img {
	width: 100%;
	height: auto;
	border-radius: 9px;
	background-color: #f8f8f8;
}

.pj-product-card__text.wp-block-group {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	text-align: center;
}

.pj-product-card__title {
	font-family: var( --wp--preset--font-family--lora );
	font-size: 32px;
	font-weight: 400;
	line-height: 40px;
	text-align: center;
}

.pj-product-card__title a {
	color: var( --wp--preset--color--black );
}

/* The whole card is the link (it was an <a> in Elementor). */
.pj-product-card__title a::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
}

.pj-product-card__claim {
	color: var( --wp--preset--color--brown );
	font-size: 16px;
	line-height: 24px;
	text-align: center;
}

/* Product carousel navigation: dots under the slides, arrows 150px left/right of the centre on the dots line. */
.pj-carousel--products .pj-carousel__dots .swiper-pagination-bullet:not(.swiper-pagination-bullet-active) {
	background-color: transparent;
	border: 1px solid #79242f;
}

.pj-carousel--products .pj-carousel__arrow {
	top: auto;
	bottom: -4px;
	transform: none;
}

.pj-carousel--products .pj-carousel__arrow--prev {
	left: calc( 50% - 150px - 12px );
}

.pj-carousel--products .pj-carousel__arrow--next {
	right: auto;
	left: calc( 50% + 150px - 12px );
}

/* Store finder band */
.pj-finder.wp-block-group {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding: 260px 0 246px;
}

.pj-finder__row.wp-block-group {
	width: 100%;
}

.pj-finder__media.wp-block-group {
	position: relative;
	align-self: stretch;
}

.pj-pack.wp-block-image {
	position: absolute;
	margin: 0;
	line-height: 0;
}

.pj-pack img {
	width: auto !important;
	max-width: none;
	height: 281px !important;
}

.pj-pack-1 { left: 48px; top: -72px; }
.pj-pack-2 { left: 488px; top: -70px; }
.pj-pack-3 { left: 275px; top: 31px; }

@media ( max-width: 1024px ) {
	.pj-finder.wp-block-group {
		padding: 32px 0 380px;
	}

	.pj-pack img {
		height: 198px !important;
	}

	.pj-pack-1 { left: 98px; top: 21px; }
	.pj-pack-2 { left: 83px; top: 40px; }
	.pj-pack-3 { left: 90px; top: 102px; }
}

@media ( max-width: 767px ) {
	.pj-finder__title.wp-block-heading {
		font-size: 32px;
		line-height: 36px;
	}

	.pj-pack.wp-block-image {
		width: 100%;
	}

	.pj-pack img {
		width: 100% !important;
		height: 140px !important;
		object-fit: contain;
	}

	.pj-pack-1 { left: 0; top: 40px; }
	.pj-pack-2 { left: -27%; top: 132px; }
	.pj-pack-3 { left: 180px; top: 130px; }
}

/* Testimonials */
.pj-testimonials.wp-block-group {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding: 260px 0 246px;
}

.pj-testimonials__inner.wp-block-group {
	width: 960px;
	max-width: 100%;
	padding: 0 16px;
}

.pj-quote.wp-block-group {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 40px;
}

.pj-quote__name {
	font-size: 16px;
	font-weight: 700;
	line-height: 24px;
}

.pj-carousel--quotes .pj-carousel__dots .swiper-pagination-bullet:not(.swiper-pagination-bullet-active) {
	background-color: transparent;
	border: 1px solid #ffefcc;
	opacity: 1;
}

@media ( max-width: 1024px ) {
	.pj-testimonials__inner.wp-block-group {
		width: 100%;
		padding: 0 24px;
	}
}

@media ( max-width: 767px ) {
	.pj-testimonials.wp-block-group {
		padding: 120px 0;
	}
}

/* News (home) */
.pj-news.wp-block-group {
	display: flex;
	flex-direction: column;
	gap: 40px;
	padding: 60px 0 120px;
}

.pj-news__head.wp-block-group {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 32px;
}

.pj-news__head > .wp-block-group {
	flex: 1 1 0;
}

.pj-news__title.wp-block-heading {
	font-size: 48px;
}

@media ( max-width: 767px ) {
	.pj-news__head-title.wp-block-group {
		flex: 0 0 auto;
		width: 40%;
	}

	.pj-news__head-button.wp-block-group {
		flex: 0 0 auto;
		width: 60%;
	}
}

.pj-news-grid.wp-block-post-template {
	gap: 32px;
}

@media ( max-width: 1024px ) {
	.pj-news-query .pj-news-grid.wp-block-post-template {
		grid-template-columns: 1fr;
	}
}

.pj-news-card.wp-block-group {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.pj-news-card__image.wp-block-post-featured-image {
	margin: 0;
	line-height: 0;
}

.pj-news-card__image img {
	width: 100%;
	height: 448px !important;
	object-fit: cover;
}

.pj-news-card__text.wp-block-group {
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 0 16px;
	text-align: center;
}

.pj-news-card__title,
.pj-news-card__title a {
	color: var( --wp--preset--color--black );
	font-size: 24px;
	line-height: 32px;
}

/* Newsletter band (synced pattern) */
.pj-newsletter.wp-block-group {
	display: flex;
	flex-direction: row;
	padding: 60px 0;
}

.pj-newsletter__inner.wp-block-group {
	display: flex;
	flex-direction: row;
	align-items: center;
	padding: 0 16px;
}

.pj-newsletter__col.wp-block-group {
	width: 50%;
}

@media ( max-width: 767px ) {
	.pj-newsletter.wp-block-group,
	.pj-newsletter .pj-motion-layer {
		background-position: 50% 100% !important;
		background-size: 599px auto !important;
	}
}

/* Elementor applied container % widths from 768px up only; below that they were 100%. */
@media ( max-width: 767px ) {
	.pj-w-30,
	.pj-w-40,
	.pj-w-50,
	.pj-w-60,
	.pj-w-70,
	.pj-newsletter__col.wp-block-group {
		width: 100%;
	}

	/* Elementor rows wrap on mobile. */
	.pj-news__head.wp-block-group {
		flex-wrap: wrap;
	}
}

/* Form buttons may wrap (the narrow newsletter button breaks onto two lines on tablets). */
.pj-form__button {
	white-space: normal;
}

/* ==========================================================================
   18. B2B / HoReCa
   ========================================================================== */

.pj-hero-slide--overlay.wp-block-group {
	position: relative;
}

.pj-hero-slide--overlay.wp-block-group::before {
	content: "";
	position: absolute;
	inset: 0;
	background: rgba( 0, 0, 0, 0.11 );
}

.pj-hero-slide--overlay > * {
	position: relative;
}

.pj-hero-slide--wide .pj-hero-slide__title.wp-block-heading {
	width: 90%;
}

@media ( max-width: 767px ) {
	.pj-hero-slide--wide .pj-hero-slide__title.wp-block-heading {
		width: 100%;
	}

	.pj-b2b-tradition__img.wp-block-image img {
		height: 253px !important;
	}
}

.pj-b2b-categories__inner.wp-block-group {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 40px;
}

.pj-b2b-categories__inner > .pj-carousel {
	width: 100%;
}

.pj-b2b-cta.wp-block-group {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 16px;
}

/* B2B category card (loop item #2444) */
.pj-term-card.wp-block-group {
	display: flex;
	flex-direction: column;
	gap: 16px;
	padding: 24px;
	border-radius: 12px;
}

.pj-term-card__img.wp-block-pecjak-acf-image {
	margin: 0;
	line-height: 0;
	overflow: hidden;
}

.pj-term-card__img img {
	display: block;
	border-radius: 12px;
}

.pj-term-card__text.wp-block-group {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	text-align: center;
}

.pj-product-count {
	color: var( --wp--preset--color--brown );
	font-family: var( --wp--preset--font-family--lora );
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;
}

.pj-term-card__name,
.pj-term-card__name a {
	color: var( --wp--preset--color--black );
	font-size: 32px;
	line-height: 40px;
	text-align: center;
}

.pj-terms-query .wp-block-term-template {
	margin: 0;
	padding: 0;
	list-style: none;
}

/* Partners band */
.pj-b2b-partners.wp-block-group {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 64px;
	padding: 120px 0 60px;
}

.pj-b2b-partners > .wp-block-group {
	width: 100%;
	max-width: 1440px;
}

.pj-b2b-partner__row.wp-block-group {
	align-items: center;
}

.pj-logos-row.wp-block-group {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 32px;
}

.pj-logos.wp-block-group {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 64px;
	flex: 0 0 auto;
	width: 800px;
}

@media ( max-width: 767px ) {
	.pj-logos.wp-block-group {
		width: 100%;
	}
}

.pj-logos .pj-logo.wp-block-image {
	flex: 0 1 auto;
	line-height: 0;
}

.pj-b2b-sectors.wp-block-group {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 32px;
}

.pj-icon-boxes.wp-block-group {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	gap: 32px;
	width: 100%;
}

.pj-icon-box.wp-block-group {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 16px;
	flex: 1 1 0;
	min-width: 0;
}

.pj-icon-box__icon.wp-block-image {
	line-height: 0;
}

.pj-icon-box__title {
	font-size: 24px;
	line-height: 32px;
}

@media ( max-width: 1024px ) {
	.pj-b2b-partners.wp-block-group {
		padding: 32px 0 380px;
	}
}

@media ( max-width: 767px ) {
	.pj-b2b-partners.wp-block-group {
		padding: 32px 0;
	}

	.pj-b2b-partner__title.wp-block-heading {
		font-size: 24px;
		line-height: 32px;
	}

	.pj-logos.wp-block-group {
		justify-content: center;
		gap: 16px;
	}

	.pj-logos.wp-block-group {
		flex-wrap: wrap;
	}

	/* Each logo is as wide as its image at 35px height (three share the first row). */
	.pj-logos .pj-logo img {
		width: 100%;
		height: 35px !important;
		object-fit: contain;
	}

	.pj-b2b-sectors__title {
		text-align: center;
	}

	.pj-icon-boxes.wp-block-group {
		flex-wrap: wrap;
		gap: 16px;
	}

	.pj-icon-boxes > .pj-icon-box.wp-block-group {
		flex: 0 0 100%;
	}
}

.pj-testimonials--b2b.wp-block-group {
	padding: 260px 0 246px;
}

@media ( max-width: 767px ) {
	.pj-testimonials--b2b.wp-block-group {
		padding: 90px 0 170px;
	}
}

/* Contact (#kontakt) */
.pj-b2b-contact.wp-block-group {
	padding: 60px 0 120px;
}

.pj-b2b-contact__title.wp-block-heading {
	font-family: var( --wp--preset--font-family--martel-sans );
	font-size: 20px;
	font-weight: 900;
	line-height: 28px;
}

.pj-b2b-contact__img .wp-block-image {
	line-height: 0;
}

@media ( max-width: 767px ) {
	.pj-b2b-contact.wp-block-group {
		padding: 0 0 80px;
	}

	.pj-b2b-contact__row.wp-block-group {
		flex-wrap: wrap;
	}

	.pj-b2b-contact__title.wp-block-heading {
		font-size: 32px;
		line-height: 36px;
	}
}

/* Founder quote band */
.pj-founder.wp-block-group {
	display: flex;
	flex-direction: row;
	gap: 32px;
}

.pj-founder__photo.wp-block-image {
	flex: 0 0 auto;
	align-self: flex-start;
	line-height: 0;
}

/* As in Elementor: the photo column starts at the image's width at 120px height and shrinks
   in proportion with the 100% text column. */
.pj-founder__photo.wp-block-image {
	flex: 0 1 auto;
	min-width: 0;
}

.pj-founder > .wp-block-group {
	flex: 0 1 100%;
	min-width: 0;
}

@media ( max-width: 767px ) {
	.pj-founder.wp-block-group {
		flex-wrap: wrap;
	}

	.pj-founder > .wp-block-group {
		flex-basis: 100%;
	}
}

/* Inner rows that kept a 16px gutter on every device. */
.pj-gutter-16 {
	padding-left: 16px;
	padding-right: 16px;
}

/* Same intrinsic widths as the old "large" image size, so the logos shrink identically. */
@media ( min-width: 768px ) {
	.pj-logos .pj-logo:nth-child(1) { flex-basis: 456px; }
	.pj-logos .pj-logo:nth-child(2) { flex-basis: 390px; }
	.pj-logos .pj-logo:nth-child(3) { flex-basis: 216px; }
	.pj-logos .pj-logo:nth-child(4) { flex-basis: 800px; }

	.pj-logos .pj-logo img {
		width: 100%;
	}
}

/* Elementor image widgets: inline images in a 24/32 line box. */
.pj-logos .pj-logo.wp-block-image {
	line-height: 32px;
}

.pj-logos .pj-logo img {
	display: inline-block;
	vertical-align: middle;
}

/* ==========================================================================
   19. Blog (Novosti, categories) + single post
   ========================================================================== */

.pj-blog__intro.wp-block-group {
	display: flex;
	flex-direction: column;
}

.pj-blog__intro .pj-intro.wp-block-group {
	width: 100%;
	max-width: 1440px;
}

.pj-blog__featured.wp-block-group {
	padding: 64px 16px;
	max-width: 1440px;
	margin: 0 auto;
}

.pj-carousel--featured {
	--pj-dots-spacing: 32px;
}

.pj-carousel--featured .pj-carousel__dots .swiper-pagination-bullet {
	margin: 0 24px !important;
}

.pj-carousel--featured .pj-carousel__dots.swiper-pagination {
	gap: 0;
}

/* Featured post card (loop item #380) and the single post hero (#397). */
.pj-featured-card.wp-block-group {
	display: flex;
	flex-direction: row;
	gap: 32px;
	height: 100%;
}

.pj-featured-card__text.wp-block-group {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 16px;
	flex: 0 0 auto;
	width: 40%;
	min-height: 570px;
	padding: 32px;
	border-radius: 12px;
	background: var( --wp--preset--color--blue );
}

.pj-featured-card__text.is-cream.wp-block-group {
	background: var( --wp--preset--color--cream );
}

.pj-featured-card__head.wp-block-group {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.pj-featured-card__text .pj-date {
	color: var( --wp--preset--color--cream );
}

.pj-featured-card__text.is-cream .pj-date {
	color: var( --wp--preset--color--brown );
}

.pj-featured-card__title,
.pj-featured-card__title a {
	margin: 0;
	color: var( --wp--preset--color--cream );
	font-family: var( --wp--preset--font-family--lora );
	font-size: 48px;
	font-weight: 400;
	line-height: 56px;
	letter-spacing: normal;
}

.pj-featured-card__text.is-cream .pj-featured-card__title {
	color: var( --wp--preset--color--black );
}

.pj-featured-card .pj-read-more {
	color: var( --wp--preset--color--cream );
}

.pj-featured-card .pj-read-more:hover,
.pj-featured-card .pj-read-more:focus {
	color: var( --wp--preset--color--cream );
}

.pj-featured-card__image.wp-block-post-featured-image {
	position: relative;
	flex: 0 1 100%;
	min-width: 0;
	margin: 0;
	border-radius: 12px;
	overflow: hidden;
}

/* Was a CSS background in Elementor: it must not give the card its height. */
.pj-featured-card__image img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100% !important;
	object-fit: cover;
}

@media ( max-width: 767px ) {
	.pj-featured-card.wp-block-group {
		flex-wrap: wrap;
	}

	.pj-featured-card__text.wp-block-group {
		width: 100%;
	}

	/* The image column had no content of its own and collapsed on phones. */
	.pj-featured-card__image.wp-block-post-featured-image {
		flex-basis: 100%;
		height: 0;
	}
}

/* Search + category filter */
.pj-blog__list.wp-block-group {
	display: flex;
	flex-direction: column;
	gap: 64px;
	max-width: 1440px;
	margin: 0 auto;
	padding: 0 0 120px;
}

.pj-blog__tools.wp-block-group {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 32px;
	padding: 0 16px;
}

.pj-search.wp-block-search {
	flex: 0 0 auto;
	width: 298px;
}

.pj-search .wp-block-search__inside-wrapper {
	padding: 0;
	border: 0;
}

.pj-search .wp-block-search__input {
	height: 64px;
	padding: 20px 48.25px 20px 64px;
	border: 1px solid var( --wp--preset--color--brown );
	border-radius: 120px;
	background: #fff url( "../icons/search.svg" ) 24px center / 24px 24px no-repeat;
	color: var( --wp--preset--color--black );
	font-family: var( --wp--preset--font-family--lora );
	font-size: 16px;
	line-height: 24px;
}

.pj-search .wp-block-search__input::placeholder {
	color: var( --wp--preset--color--black );
	opacity: 1;
}

.pj-search .wp-block-search__input:focus {
	outline: none;
}

.pj-filter {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: 16px;
}

.pj-filter__item {
	padding: 8px 20px;
	border: 1px solid var( --wp--preset--color--brown );
	border-radius: 4px;
	color: var( --wp--preset--color--red );
	font-family: var( --wp--preset--font-family--lora );
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;
	transition: all 0.3s;
}

.pj-filter__item:hover {
	color: var( --wp--preset--color--red );
}

.pj-filter__item.is-active {
	border-color: var( --wp--preset--color--red );
	background: var( --wp--preset--color--red );
	color: var( --wp--preset--color--cream );
}

@media ( max-width: 767px ) {
	.pj-blog__tools.wp-block-group {
		flex-wrap: wrap;
	}
}

/* Grid + load more */
/* Blog listing only (the Naslovnica news row uses the same query class without this gutter). */
.pj-blog .pj-news-query.wp-block-query {
	padding: 0 16px;
}

.pj-filter-target.is-loading {
	opacity: 0.5;
	transition: opacity 0.2s;
}

.pj-load-more.wp-block-buttons {
	display: flex;
	justify-content: center;
	margin-top: 30px;
}

.pj-load-more .wp-block-button__link {
	color: var( --wp--preset--color--black );
}

.pj-load-more .wp-block-button__link.is-loading {
	opacity: 0.6;
	cursor: progress;
}

.pj-blog .pj-news-grid.wp-block-post-template {
	row-gap: 32px;
	column-gap: 32px;
}

@media ( max-width: 1024px ) {
	.pj-blog .pj-news-grid.wp-block-post-template {
		grid-template-columns: repeat( 2, minmax( 0, 1fr ) );
	}
}

@media ( max-width: 767px ) {
	.pj-blog .pj-news-grid.wp-block-post-template {
		grid-template-columns: 1fr;
	}
}

/* Single post */
.pj-single__hero.wp-block-group {
	padding: 60px 16px 64px;
	max-width: 1440px;
	margin: 0 auto;
}

.pj-single__body.wp-block-group {
	padding: 0 0 60px;
}

.pj-post-content.wp-block-post-content {
	width: 100%;
	max-width: 992px;
	margin: 0 auto;
	padding: 0 16px;
}

.pj-post-content p,
.pj-post-content.wp-block-post-content > p:last-child {
	margin: 0 0 32px;
	font-size: var( --wp--preset--font-size--medium );
	line-height: 32px;
}

.pj-post-content.wp-block-post-content > .wp-block-image:last-child,
.pj-post-content.wp-block-post-content > figure:last-child {
	margin-bottom: 24px;
}

.pj-post-content li {
	font-size: var( --wp--preset--font-size--medium );
}

.pj-post-content h2,
.pj-post-content h3 {
	margin: 8px 0 16px;
	font-family: var( --wp--preset--font-family--martel-sans );
	font-size: 32px;
	font-weight: 900;
	line-height: 40px;
}

.pj-post-content h4,
.pj-post-content h5,
.pj-post-content h6 {
	margin: 8px 0 16px;
}

.pj-post-content a {
	color: inherit;
	font-family: inherit;
	font-size: inherit;
	text-decoration: underline;
}

.pj-post-content .wp-block-image,
.pj-post-content figure {
	margin: 0 0 24px;
}

.pj-post-content ul,
.pj-post-content ol {
	margin-top: 0;
	margin-bottom: 0;
}

/* ==========================================================================
   20. Single product (former Elementor single template #344)
   ========================================================================== */

/* Margins of the stacked sections must not collapse (the empty gallery row kept both). */
.pj-product.pj-main {
	display: flex;
	flex-direction: column;
}

/* Hero: natural height down to tablet, 300px crop on phones. */
.wp-block-image.pj-hero-img--product img {
	height: auto;
}

@media ( max-width: 1024px ) {
	.wp-block-image.pj-hero-img--product img {
		height: auto;
	}
}

@media ( max-width: 767px ) {
	.wp-block-image.pj-hero-img--product img {
		height: 300px;
		object-fit: cover;
	}
}

.pj-product__top.wp-block-group {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 64px;
	margin: -180px 0 32px;
}

@media ( max-width: 767px ) {
	.pj-product__top.wp-block-group {
		margin-top: -175px;
	}
}

.pj-product__intro.wp-block-group {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	width: 100%;
	max-width: 1440px;
	padding: 0 16px;
}

.pj-product__spacer.wp-block-spacer {
	height: 175px !important;
}

@media ( max-width: 767px ) {
	.pj-product__spacer.wp-block-spacer {
		height: 215px !important;
	}
}

.pj-product__image.wp-block-post-featured-image {
	width: 320px;
	max-width: 100%;
	margin: 0;
	padding: 28px;
	line-height: 0;
}

.pj-product__image.wp-block-post-featured-image img {
	width: 100%;
	max-width: 264px;
	height: auto;
}

.pj-product__title.wp-block-post-title {
	color: var( --wp--preset--color--black );
	font-family: var( --wp--preset--font-family--lora );
	font-size: 48px;
	font-weight: 400;
	line-height: 56px;
	letter-spacing: normal;
}

@media ( max-width: 767px ) {
	.pj-product__title.wp-block-post-title {
		font-size: 32px;
		line-height: 36px;
	}
}

/* 960px text column (it overflowed the screen on tablets in Elementor; here it shrinks). */
.pj-product__desc.wp-block-group,
.pj-product__claims-wrap.wp-block-group,
.pj-product__details-inner.wp-block-group {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	width: 960px;
	max-width: 100%;
	padding: 0 16px;
}

.pj-product__lead {
	width: 100%;
	color: var( --wp--preset--color--black );
	font-family: var( --wp--preset--font-family--lora );
	font-size: 24px;
	line-height: 32px;
	text-align: center;
}

@media ( max-width: 767px ) {
	.pj-product__lead {
		font-size: 18px;
		line-height: 24px;
	}
}

.pj-product__claims.wp-block-group {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	gap: 8px;
	width: 100%;
}

@media ( max-width: 767px ) {
	.pj-product__claims.wp-block-group {
		flex-wrap: wrap;
	}
}

.pj-claim {
	padding: 8px 20px;
	border-radius: 4px;
	background-color: var( --wp--preset--color--red );
	color: var( --wp--preset--color--cream );
	font-family: var( --wp--preset--font-family--lora );
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;
}

/* Gallery (Elementor image carousel: 4 / 2 / 1, 16px apart, light chevrons 10px from the edges). */
.pj-product__gallery.pj-gallery {
	margin: 0;
}

.pj-gallery .swiper-wrapper {
	align-items: center;
}

.pj-gallery .swiper-slide {
	text-align: center;
}

.pj-gallery .pj-gallery__slide {
	margin: 0;
}

.pj-gallery .pj-gallery__image {
	display: inline;
	max-width: 100%;
	height: auto;
	vertical-align: baseline;
}

/* From tablet up all slides take the height of the tallest one and the images crop to fill. */
@media ( min-width: 768px ) {
	.pj-gallery .swiper-wrapper {
		align-items: stretch;
	}

	.pj-gallery .swiper-slide,
	.pj-gallery .pj-gallery__slide {
		height: auto;
	}

	.pj-gallery .swiper-slide > .pj-gallery__slide {
		height: 100%;
	}

	.pj-gallery .pj-gallery__image {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
}

.pj-gallery .pj-carousel__arrow {
	width: 25px;
	height: 25px;
	color: rgba( 237, 237, 237, 0.9 );
}

.pj-gallery .pj-carousel__arrow:hover,
.pj-gallery .pj-carousel__arrow:focus {
	color: rgba( 237, 237, 237, 0.9 );
}

.pj-gallery .pj-carousel__arrow svg {
	width: 25px;
	height: 25px;
}

.pj-gallery .pj-carousel__arrow--prev {
	left: 10px;
}

.pj-gallery .pj-carousel__arrow--next {
	right: 10px;
}

/* Videos + accordions */
.pj-product__details.wp-block-group {
	display: flex;
	flex-direction: column;
	align-items: center;
	margin: 32px 0 120px;
}

.pj-product__details-inner > * {
	width: 100%;
}

.pj-product__videos.wp-block-group {
	margin-top: 16px;
}

.video-recipes-container iframe {
	width: 100%;
	max-width: 100%;
	height: 560px;
}

.pj-product__text {
	color: var( --wp--preset--color--black );
	font-family: var( --wp--preset--font-family--lora );
	font-size: 20px;
	font-weight: 400;
	line-height: 28px;
}

.pj-product__text p {
	margin: 0;
}

/* Specs band */
.pj-specs.wp-block-group {
	display: flex;
	flex-direction: column;
}

.pj-specs__row.wp-block-group {
	display: flex;
	flex-direction: row;
	gap: 16px;
	padding: 60px 16px 240px;
}

@media ( max-width: 767px ) {
	.pj-specs__row.wp-block-group {
		flex-wrap: wrap;
	}
}

.pj-spec.wp-block-pecjak-if-field {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 24px;
	flex: 0 1 auto;
	width: 100%;
	min-width: 0; /* equal columns even when a long word overflows (as in Elementor) */
	padding: 32px;
	border-left: 1px solid var( --wp--preset--color--cream );
}

/* Like Elementor widgets: never wider than the column (long words overflow to the right). */
.pj-spec.wp-block-pecjak-if-field > * {
	max-width: 100%;
}

.pj-spec__value {
	color: var( --wp--preset--color--cream );
	font-family: var( --wp--preset--font-family--martel-sans );
	font-size: 48px;
	font-weight: 900;
	line-height: 56px;
	text-align: center;
}

.pj-spec__label {
	color: var( --wp--preset--color--cream );
	font-size: 20px;
	line-height: 28px;
	text-align: center;
}

/* Other products */
.pj-related.wp-block-group {
	display: flex;
	flex-direction: column;
	gap: 40px;
	padding: 32px 0 120px;
}

.pj-related__head.wp-block-group {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 32px;
}

.pj-related__head > .wp-block-group {
	flex: 0 1 auto;
	width: 100%;
}

.pj-related__title.wp-block-heading {
	font-size: 48px;
	line-height: 56px;
}

@media ( max-width: 767px ) {
	.pj-related__head.wp-block-group {
		flex-wrap: wrap;
	}

	.pj-related__title.wp-block-heading {
		font-size: 32px;
		line-height: 32px;
	}

	.pj-related__head-button .wp-block-buttons {
		justify-content: flex-start;
	}
}

/* Arrows 150px either side of the dots: on the dots line on desktop, just below them on smaller screens. */
.pj-carousel--related .pj-carousel__arrow {
	bottom: -2px;
}

@media ( max-width: 1024px ) {
	.pj-carousel--related .pj-carousel__arrow {
		bottom: -26px;
	}
}

/* ==========================================================================
   21. Product listings: /proizvodi/ (categories), category and B2B category pages
   ========================================================================== */

/* Category grid (loop item #460) */
.pj-term-grid-section.wp-block-group {
	margin: 40px 0 60px;
}

.pj-term-grid .wp-block-term-template {
	display: grid;
	grid-template-columns: repeat( 3, minmax( 0, 1fr ) );
	gap: 32px;
	margin: 0;
	padding: 0;
	list-style: none;
}

@media ( max-width: 1024px ) {
	.pj-term-grid .wp-block-term-template {
		grid-template-columns: repeat( 2, minmax( 0, 1fr ) );
	}
}

@media ( max-width: 767px ) {
	.pj-term-grid .wp-block-term-template {
		grid-template-columns: minmax( 0, 1fr );
	}
}

.pj-term-tile.wp-block-group {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.pj-term-tile__img.wp-block-pecjak-acf-image {
	margin: 0;
	line-height: 0;
}

.pj-term-tile__img img {
	display: block;
	border-radius: 12px;
}

/* The whole cream bar links to the category (it was an <a> in Elementor). */
.pj-term-tile__bar.wp-block-group {
	position: relative;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	gap: 12px;
	padding: 16px;
	border-radius: 12px;
	background-color: var( --wp--preset--color--cream );
}

.pj-term-tile__bar::after {
	content: "";
	flex: 0 0 24px;
	width: 24px;
	height: 24px;
	background: url( "../icons/arrow-forward.svg" ) center / 24px 24px no-repeat;
}

.pj-term-tile__name,
.pj-term-tile__name a {
	color: var( --wp--preset--color--black );
	font-family: var( --wp--preset--font-family--lora );
	font-size: 32px;
	font-weight: 400;
	line-height: 40px;
}

.pj-term-tile__name a::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 12px;
}

/* Category pages */
@media ( max-width: 1024px ) {
	.pj-intro.pj-intro--cat.wp-block-group {
		padding: 0 16px;
	}
}

.pj-cat-description {
	font-size: 24px;
	line-height: 32px;
}

.pj-cat-section.wp-block-group {
	margin: 60px 0 120px;
}

.pj-cat-list.wp-block-post-template,
.pj-cat-grid.wp-block-post-template {
	display: grid;
	grid-template-columns: minmax( 0, 1fr );
	gap: 64px;
	margin: 0;
	padding: 0;
	list-style: none;
}

/* Loop item #490: 40% cream box + 60% photo (the photo row collapses on phones). */
.pj-cat-card.wp-block-group {
	display: flex;
	flex-direction: row;
	gap: 32px;
}

.pj-cat-card__box.wp-block-group {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: flex-start;
	gap: 16px;
	min-height: 570px;
	padding: 32px;
	border-radius: 12px;
	background-color: var( --wp--preset--color--cream );
}

.pj-cat-card > .pj-cat-card__box {
	flex: 0 0 auto;
	width: 40%;
}

.pj-cat-card__media.wp-block-pecjak-acf-image {
	flex: 0 1 auto;
	width: 60%;
	border-radius: 12px;
}

.pj-cat-card__text.wp-block-group {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 16px;
	width: 100%;
}

.pj-cat-card__title {
	color: var( --wp--preset--color--black );
	font-family: var( --wp--preset--font-family--lora );
	font-size: 48px;
	font-weight: 400;
	line-height: 56px;
}

.pj-cat-card__claim {
	color: var( --wp--preset--color--brown );
	font-family: var( --wp--preset--font-family--lora );
	font-size: 20px;
	font-weight: 400;
	line-height: 28px;
}

.pj-read-more.pj-read-more--gap-12 {
	gap: 12px;
}

.pj-cat-card__image.wp-block-post-featured-image {
	max-width: 100%;
	margin: 0;
	padding: 32px;
	line-height: 0;
}

.pj-cat-card__image--center.wp-block-post-featured-image {
	align-self: center;
}

@media ( max-width: 767px ) {
	.pj-cat-card.wp-block-group {
		flex-wrap: wrap;
	}

	.pj-cat-card > .pj-cat-card__box,
	.pj-cat-card__media.wp-block-pecjak-acf-image {
		width: 100%;
	}

	.pj-cat-card__text.wp-block-group {
		align-items: center;
	}

	.pj-cat-card__title,
	.pj-cat-card__claim {
		text-align: center;
	}

	.pj-cat-card__title {
		font-size: 32px;
		line-height: 40px;
	}

	.pj-cat-card__text .pj-read-more {
		align-self: center;
	}

	.pj-cat-card__image.wp-block-post-featured-image {
		padding: 0;
	}
}

/* B2B subcategories (loop item #801482): 3 cards per row, one per row below desktop. */
.pj-cat-grid.wp-block-post-template {
	grid-template-columns: repeat( 3, minmax( 0, 1fr ) );
	gap: 32px;
}

@media ( max-width: 1024px ) {
	.pj-cat-grid.wp-block-post-template {
		grid-template-columns: minmax( 0, 1fr );
	}
}

.pj-b2b-card.wp-block-group {
	align-items: center;
	height: 100%;
}
