/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

/**********************************************************************
 /$$$$$$$                                                            
| $$__  $$                                                           
| $$  \ $$ /$$$$$$   /$$$$$$   /$$$$$$   /$$$$$$   /$$$$$$   /$$$$$$ 
| $$$$$$$//$$__  $$ /$$__  $$ |____  $$ /$$__  $$ /$$__  $$ /$$__  $$
| $$____/| $$  \ $$| $$  \ $$  /$$$$$$$| $$  \__/| $$  \ $$| $$  \ $$
| $$     | $$  | $$| $$  | $$ /$$__  $$| $$      | $$  | $$| $$  | $$
| $$     |  $$$$$$/| $$$$$$$/|  $$$$$$$| $$      |  $$$$$$/|  $$$$$$/
|__/      \______/ | $$____/  \_______/|__/       \______/  \______/ 
                   | $$                                              
                   | $$                                              
                   |__/                                              
**********************************************************************/


/* ===== Design system ===== */
/* Values come from Elementor > Site Settings (Global Colors / Global Fonts); fallbacks = Figma */
body {
	--pp-white: var(--e-global-color-accent, #FFF9F9);
	--pp-red: var(--e-global-color-primary, #8A2451);
	--pp-black: var(--e-global-color-secondary, #272020);
	--pp-black-50: var(--e-global-color-pplinij, rgba(39, 32, 32, .5));

	--pp-font-primary: var(--e-global-typography-primary-font-family, "Heebo");
	--pp-font-secondary: var(--e-global-typography-secondary-font-family, "Imbue");
	--pp-font-text: var(--e-global-typography-text-font-family, "Heebo");
	--pp-font-accent: var(--e-global-typography-accent-font-family, "Heebo");

	/* font sizes in rem (1rem = 16px), from Site Settings typography presets */
	--pp-fs-topbar: var(--e-global-typography-pptopbr-font-size, .75rem);
	--pp-fs-nav: var(--e-global-typography-ppnavig-font-size, .75rem);
	--pp-fs-mega-title: var(--e-global-typography-ppmegan-font-size, .75rem);
	--pp-fs-mega-link: var(--e-global-typography-ppmegal-font-size, .875rem);
	--pp-fs-cta: var(--e-global-typography-ppctali-font-size, .8125rem);
	--pp-fs-card-title: var(--e-global-typography-ppkarti-font-size, 1.5rem);

	--pp-container: 1200px;
}


/* ===== Header ===== */

/* icons, logo and cart without inline line-height gap */
.pp-header .elementor-icon-wrapper,
.pp-header .elementor-icon {
	line-height: 0;
}

.pp-logo a,
.pp-logo img {
	display: block;
}

.pp-cart .elementor-menu-cart__wrapper,
.pp-cart .elementor-menu-cart__toggle_wrapper,
.pp-cart .elementor-menu-cart__toggle {
	display: flex;
}

/* mega menu: 2px line under the open item, on the top edge of the dropdown */
.pp-mega .e-n-menu-title-container {
	position: relative;
}

.pp-mega .e-n-menu-title:has([aria-expanded="true"]) .e-n-menu-title-container::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: -35px;
	z-index: 10;
	height: 2px;
	background: var(--pp-black);
}

/* mega menu card: image without inline gap */
.pp-card .elementor-widget-image a,
.pp-card img {
	display: block;
}

/* "Pogledaj" links: no inline gap, 15px arrow as in Figma */
.pp-cta {
	display: flex;
}

.pp-cta .elementor-button-icon svg {
	width: 15px;
	height: 15px;
}

/* arrow takes the link colour (red on hover) */
.pp-cta .elementor-button-icon svg path {
	stroke: currentColor;
}

/* text and arrow on one centre line */
.pp-cta .elementor-button-content-wrapper {
	align-items: center;
}

/* search: icon-only toggle (label stays for screen readers) */
.pp-search-menu .e-n-menu-title-text {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
}

.pp-search-menu .e-n-menu .e-n-menu-title .e-n-menu-dropdown-icon {
	position: absolute;
	width: 0;
	height: 0;
	margin: 0;
	overflow: hidden;
}

/* pointer on the search icon (Elementor sets cursor: default on the icon's inner elements) */
.pp-search-menu .e-n-menu-title,
.pp-search-menu .e-n-menu-title * {
	cursor: pointer !important;
}

/* search bar: magnifier and X on the text row, as in Figma */
.pp-search .e-search-form {
	align-items: flex-start;
}

.pp-search .e-search-label,
.pp-search .e-search-input-wrapper > svg {
	top: 10px;
}

/* no white focus ring from the theme; the bottom line darkens on focus */
.pp-search .e-search-input:focus-visible {
	box-shadow: none;
}


/* ===== Footer ===== */

/* newsletter: field + button in one row (stacked on mobile), 44px tall */
@media (min-width: 768px) {
	.pp-newsletter .elementor-form-fields-wrapper {
		flex-wrap: nowrap;
	}

	.pp-newsletter .elementor-field-type-email {
		flex: 1 1 0;
		width: auto;
		max-width: none;
	}

	.pp-newsletter .e-form__buttons {
		flex: 0 0 auto;
		width: auto;
		max-width: none;
	}
}

.pp-newsletter .elementor-field-group .elementor-field.elementor-size-xs {
	min-height: 44px;
	padding-block: 0;
	padding-inline: 15px;
}


/* copyright line: "POPAROO © 2026. developed by:" + logo on one centred line, logo as tall as the text */
.developed-by-container .elementor-heading-title {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	column-gap: 6px;
	row-gap: 4px;
}

.developed-by-container .developed-by {
	display: inline-flex;
	align-items: center;
	gap: 5px;
}

.developed-by-container .developed-by a {
	display: flex;
	transition: opacity .2s ease;
}

.developed-by-container .developed-by a:hover {
	opacity: .7;
}

.developed-by-container .developed-by-logo {
	display: block;
	width: auto;
	height: 12px;
}


/* ===== Blog (Inspiracija) ===== */

/* mobile: grid becomes a swipeable row; "next" arrow added by JS (functions.php), also used by .pp-products */
.pp-blog-grid .pp-blog-next,
.pp-products .pp-blog-next {
	display: none;
}

@media (max-width: 767px) {
	.pp-blog-grid {
		position: relative;
	}

	.pp-blog-grid .elementor-loop-container.elementor-grid {
		display: flex;
		column-gap: 30px;
		overflow-x: auto;
		overscroll-behavior-x: contain;
		scroll-snap-type: x mandatory;
		scrollbar-width: none;
	}

	.pp-blog-grid .elementor-loop-container::-webkit-scrollbar {
		display: none;
	}

	.pp-blog-grid .e-loop-item {
		flex: 0 0 278px;
		scroll-snap-align: start;
	}

	/* 16px space after the last post (30px gap - 15px + 1px); padding-right is ignored in scroll rows by some browsers */
	.pp-blog-grid .elementor-loop-container::after {
		content: "";
		flex: 0 0 1px;
		margin-left: -15px;
	}

	.pp-blog-grid .pp-blog-next,
	.pp-blog-grid .pp-blog-next:hover,
	.pp-blog-grid .pp-blog-next:focus,
	.pp-products .pp-blog-next,
	.pp-products .pp-blog-next:hover,
	.pp-products .pp-blog-next:focus {
		position: absolute;
		top: 119px;
		left: 258px;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 40px;
		height: 40px;
		padding: 0;
		border: 0;
		border-radius: 50%;
		background: var(--pp-black);
		color: var(--pp-white);
		cursor: pointer;
	}

	.pp-blog-grid .pp-blog-next:focus-visible,
	.pp-products .pp-blog-next:focus-visible {
		outline: 2px solid var(--pp-red);
		outline-offset: 2px;
	}
}

/* arrow hidden by JS when the row has nothing to scroll */
.pp-blog-grid .pp-blog-next[hidden],
.pp-products .pp-blog-next[hidden] {
	display: none;
}

/* card image: zoom in on hover */
.pp-post-image {
	overflow: hidden;
}

.pp-post-image a,
.pp-post-image img {
	display: block;
}

.pp-post-image img {
	transition: transform .5s ease;
}

.pp-post-card:hover .pp-post-image img {
	transform: scale(1.1);
}

@media (prefers-reduced-motion: reduce) {
	.pp-post-image img {
		transition: none;
	}
}


/* ===== Hero slider ===== */

/* small line above the title (typed in the slide heading as <span class="pp-hero-eyebrow">) */
.pp-hero .pp-hero-eyebrow {
	display: block;
	margin-bottom: 28px;
	font-family: var(--e-global-typography-pphrnad-font-family), sans-serif;
	font-size: var(--e-global-typography-pphrnad-font-size);
	font-weight: var(--e-global-typography-pphrnad-font-weight);
	line-height: var(--e-global-typography-pphrnad-line-height);
	text-transform: var(--e-global-typography-pphrnad-text-transform);
}

.pp-hero .elementor-slide-description {
	max-width: 381px;
}

.pp-hero .elementor-slide-button.elementor-button {
	min-width: 222px;
	padding: 20px 40px;
	text-align: center;
}

/* dots 32px from the bottom, as in Figma */
.pp-hero .swiper .swiper-pagination.swiper-pagination-bullets.swiper-pagination-horizontal {
	bottom: 26px;
}


/* ===== Temporarily hidden ===== */

/* "Prigode": header mega menu item (CSS ID pp-menu-prigode) and mobile menu item (class pp-hidden in Appearance > Menus); delete this rule to show it again */
.e-n-menu-item:has(> #pp-menu-prigode),
.menu-item.pp-hidden {
	display: none;
}


/* ===== Mini cart (side cart) ===== */

/* overlay as wide as the page, not 100vw (on Windows 100vw runs under the scrollbar and cuts the panel) */
.pp-cart .elementor-menu-cart__container {
	width: 100%;
}

/* panel: 380px content as in Figma, full width on phones */
.pp-cart .elementor-menu-cart__main {
	width: 412px;
	max-width: 100%;
}

/* head (inc/mini-cart.php): title with the count + free shipping bar (Free shipping bar), line below; X on the title row */
.pp-cart .pp-mini-cart-head {
	flex: none;
	margin: 0 -16px 20px;
	padding: 40px 16px 20px;
	border-bottom: 1px solid var(--e-global-color-ppblk10);
}

.pp-cart .pp-mini-cart-title {
	display: flex;
	align-items: center;
	min-height: 20px;
	margin: 0;
	color: var(--pp-black);
	font-family: var(--e-global-typography-ppmknas-font-family), sans-serif;
	font-size: var(--e-global-typography-ppmknas-font-size);
	font-weight: var(--e-global-typography-ppmknas-font-weight);
	line-height: var(--e-global-typography-ppmknas-line-height);
}

.pp-cart .pp-free-shipping {
	margin-top: 28px;
}

/* products take the free space and scroll; subtotal + buttons always visible */
.pp-cart .elementor-menu-cart__main .widget_shopping_cart_content {
	flex: 1 1 auto;
	height: auto;
	min-height: 0;
}

.pp-cart .elementor-menu-cart__products {
	flex: 1 1 auto;
	min-height: 0;
	max-height: none;
	/* scrollbar sits in the panel padding, not over the remove buttons */
	margin-right: -16px;
	padding-right: 16px;
	scrollbar-width: thin;
	scrollbar-color: var(--pp-black-50) transparent;
}

/* product: 117px image, 30px gap, text; trash on the right (space for it comes from the widget's button size) */
.pp-cart .elementor-menu-cart__product {
	grid-template-columns: 117px 1fr;
}

.pp-cart .elementor-menu-cart__product-name,
.pp-cart .elementor-menu-cart__product-price {
	padding-inline-start: 30px;
}

/* product image on a cream tile (panel is white) */
.pp-cart .elementor-menu-cart__product-image img {
	aspect-ratio: 1;
	padding: 17px;
	background: var(--pp-white);
	object-fit: contain;
}

/* name, price and quantity grouped next to the image */
.pp-cart .elementor-menu-cart__product-name {
	align-self: end;
}

.pp-cart .elementor-menu-cart__product-price {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 20px;
	align-self: start;
	margin-top: 13px;
}

/* sale price: new price first (bold), old price after (crossed out, grey), as in Figma */
.pp-cart .elementor-menu-cart__product-price .quantity {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: baseline;
	column-gap: 4px;
}

.pp-cart .elementor-menu-cart__product-price ins {
	order: 1;
	text-decoration: none;
}

.pp-cart .elementor-menu-cart__product-price del {
	order: 2;
	color: var(--e-global-color-ppblk60);
	font-weight: 400;
}

/* quantity (inc/mini-cart.php + assets/js/mini-cart.js): cream box, minus / number / plus */
.pp-cart .pp-mini-qty {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 112px;
	padding: 3px 0;
	background: var(--pp-white);
	transition: opacity .2s;
}

.pp-cart .pp-mini-qty.is-busy {
	opacity: .5;
	pointer-events: none;
}

.pp-cart .pp-mini-qty-value {
	color: var(--pp-black);
	font-family: var(--e-global-typography-ppmkkol-font-family), sans-serif;
	font-size: var(--e-global-typography-ppmkkol-font-size);
	font-weight: var(--e-global-typography-ppmkkol-font-weight);
	line-height: var(--e-global-typography-ppmkkol-line-height);
}

.pp-cart button.pp-mini-qty-btn,
.pp-cart button.pp-mini-qty-btn:hover,
.pp-cart button.pp-mini-qty-btn:focus {
	width: 29px;
	height: 23px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: linear-gradient(var(--pp-black), var(--pp-black)) center / 8px 1.25px no-repeat;
	cursor: pointer;
}

.pp-cart button.pp-mini-qty-plus,
.pp-cart button.pp-mini-qty-plus:hover,
.pp-cart button.pp-mini-qty-plus:focus {
	background:
		linear-gradient(var(--pp-black), var(--pp-black)) center / 8px 1.25px no-repeat,
		linear-gradient(var(--pp-black), var(--pp-black)) center / 1.25px 8px no-repeat;
}

.pp-cart button.pp-mini-qty-btn:disabled {
	opacity: .3;
	cursor: not-allowed;
}

/* remove: trash icon on a cream square (colours from the widget) */
.pp-cart .elementor-menu-cart__product-remove,
.pp-cart .elementor-menu-cart__product-remove:hover {
	border: 0;
	border-radius: 0;
	background: var(--pp-white);
}

.pp-cart .elementor-menu-cart__product-remove::before {
	inset: 0;
	width: auto;
	height: auto;
	margin: 0;
	transform: none;
	-webkit-mask: var(--pp-icon-trash) center / 15px no-repeat;
	mask: var(--pp-icon-trash) center / 15px no-repeat;
}

.pp-cart .elementor-menu-cart__product-remove::after {
	content: none;
}

.pp-cart {
	--pp-icon-trash: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-.75 -.75 15.25 16.5' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 2.5V1.25A1.25 1.25 0 0 0 8.75 0H5a1.25 1.25 0 0 0-1.25 1.25V2.5M0 2.5h13.75M12.5 2.5v11.875a.625.625 0 0 1-.625.625H1.875a.625.625 0 0 1-.625-.625V2.5M5 6.25v5M8.75 6.25v5'/%3E%3C/svg%3E");
}

/* subtotal: label left, amount right */
.pp-cart .elementor-menu-cart__subtotal {
	display: flex;
	justify-content: space-between;
}

/* close icon on the same line as the title */
.pp-cart .elementor-menu-cart__close-button,
.pp-cart .elementor-menu-cart__close-button-custom {
	position: absolute;
	top: 40px;
	right: 16px;
	margin: 0;
}


/* ===== Free shipping bar (mini cart + cart page, inc/woocommerce.php) ===== */

.pp-free-shipping p {
	margin: 0 0 11px;
	color: var(--e-global-color-ppzelen);
	font-family: var(--e-global-typography-ppmkdos-font-family), sans-serif;
	font-size: var(--e-global-typography-ppmkdos-font-size);
	font-weight: var(--e-global-typography-ppmkdos-font-weight);
	line-height: var(--e-global-typography-ppmkdos-line-height);
}

.pp-free-shipping__bar {
	display: block;
	height: 6px;
	background: rgba(127, 127, 127, .3);
}

.pp-free-shipping__bar span {
	display: block;
	height: 100%;
	background: var(--e-global-color-ppzelen);
	transition: width .3s;
}


/* ===== Mobile menu (popup) ===== */

/* line under the last item too */
.pp-mobile-nav .elementor-nav-menu > li:last-child {
	border-bottom: 1px solid var(--e-global-color-ppblk10);
}

/* caret: right when closed, down when open */
.pp-mobile-menu .pp-mobile-nav .elementor-nav-menu--dropdown .elementor-nav-menu > li > a.has-submenu {
	padding-right: 52px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M7.5 3.75 13.75 10 7.5 16.25' stroke='%23272020' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") right 17px center / 20px no-repeat;
}

.pp-mobile-menu .pp-mobile-nav .elementor-nav-menu--dropdown .elementor-nav-menu > li > a.has-submenu[aria-expanded="true"] {
	color: var(--pp-black);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M3.75 7.5 10 13.75 16.25 7.5' stroke='%23272020' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

/* open submenu: 15px top/bottom, no lines inside */
.pp-mobile-nav .elementor-nav-menu > li > .sub-menu {
	padding: 15px 0 7.5px;
	border-top: 1px solid var(--e-global-color-ppblk10);
}

.pp-mobile-menu .pp-mobile-nav .elementor-nav-menu--dropdown .elementor-nav-menu .sub-menu li.menu-item {
	border: 0;
}

/* 3rd level always visible under its group title */
.pp-mobile-nav .sub-menu .sub-menu {
	display: block !important;
	padding: 0;
	border: 0;
}

.pp-mobile-nav .elementor-nav-menu > li > .sub-menu > li + li {
	margin-top: 7.5px;
}

/* links (3rd level): 26px rhythm, as in Figma */
.pp-mobile-menu .pp-mobile-nav .elementor-nav-menu--dropdown .sub-menu a.elementor-sub-item {
	padding: 7.5px 16px 7.5px 47px;
	border: 0;
	font-family: var(--pp-font-primary), sans-serif;
	font-size: .75rem;
	font-weight: 500;
	line-height: .9;
	text-transform: none;
}

/* group titles (2nd level): red, bold, uppercase */
.pp-mobile-menu .pp-mobile-nav .elementor-nav-menu--dropdown .elementor-nav-menu > li > .sub-menu > li > a.elementor-sub-item {
	padding: 0 16px 5.5px 32px;
	color: var(--pp-red);
	font-weight: 700;
	text-transform: uppercase;
}


/* ===== Products (Aktualni proizvodi) ===== */

/* card: info under the image, cart button bottom right */
.pp-products ul.products li.product {
	position: relative;
	display: flex;
	flex-direction: column;
}

.pp-products ul.products li.product .woocommerce-LoopProduct-link {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
}

/* image: square tile, product centred (Figma 46/69/47 padding) */
.pp-products ul.products li.product .woocommerce-LoopProduct-link img {
	width: 100%;
	height: auto;
	aspect-ratio: 1;
	padding: 46px 69px 47px;
	object-fit: contain;
}

/* hover: image zooms in, same as the blog cards */
.pp-products ul.products li.product {
	overflow: hidden;
}

.pp-products ul.products li.product .woocommerce-LoopProduct-link img {
	transition: transform .5s ease;
}

.pp-products ul.products li.product:hover .woocommerce-LoopProduct-link img {
	transform: scale(1.1);
}

@media (prefers-reduced-motion: reduce) {
	.pp-products ul.products li.product .woocommerce-LoopProduct-link img {
		transition: none;
	}
}

/* category, title and price leave room for the button */
.pp-products ul.products li.product .pp-product-cat,
.pp-products ul.products li.product .woocommerce-loop-product__title,
.pp-products ul.products li.product .price {
	padding: 0 62px 0 24px;
}

/* category above the title (added in functions.php) */
.pp-products ul.products li.product .pp-product-cat {
	display: block;
	margin-bottom: 9px;
	color: var(--e-global-color-ppblk60);
	font-family: var(--e-global-typography-ppblkat-font-family), sans-serif;
	font-size: var(--e-global-typography-ppblkat-font-size);
	font-weight: var(--e-global-typography-ppblkat-font-weight);
	line-height: var(--e-global-typography-ppblkat-line-height);
}

/* price: new price first, old price after, as in Figma */
.pp-products ul.products li.product .price {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	column-gap: 3px;
	margin: 0;
}

.pp-products ul.products li.product .price ins {
	order: 1;
	text-decoration: none;
}

.pp-products ul.products li.product .price del {
	order: 2;
	opacity: 1;
}

/* add to cart: 30px circle with a cart icon (aria-label keeps the text for screen readers) */
.pp-products ul.products li.product .button {
	position: absolute;
	right: 24px;
	bottom: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	min-height: 0;
	margin: 0;
	padding: 0;
	font-size: 0;
	line-height: 0;
}

.pp-products ul.products li.product .button::before {
	content: "";
	width: 15px;
	height: 15px;
	background: currentColor;
	-webkit-mask: var(--pp-icon-cart) center / contain no-repeat;
	mask: var(--pp-icon-cart) center / contain no-repeat;
}

.pp-products {
	--pp-icon-cart: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 15 15' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 1.75h1.5l1.9 8.5h7.35'/%3E%3Cpath d='M3.25 4.25h9.9l-1.15 4.5H4.25'/%3E%3Ccircle cx='5' cy='12.6' r='.85'/%3E%3Ccircle cx='11.25' cy='12.6' r='.85'/%3E%3C/svg%3E");
	--pp-icon-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 15 15' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 7.75 6 11.25l6.5-7'/%3E%3C/svg%3E");
}

/* adding: dim the button; added: tick instead of the cart (mini cart count updates) */
.pp-products ul.products li.product .button.loading {
	opacity: .5;
}

.pp-products ul.products li.product .button.added::before {
	-webkit-mask-image: var(--pp-icon-check);
	mask-image: var(--pp-icon-check);
}

.pp-products ul.products li.product .button::after,
.pp-products ul.products li.product .added_to_cart {
	display: none;
}

/* "Dodano u košaricu" above the cart button for a few seconds (JS in functions.php) */
.pp-products ul.products li.product .pp-added-msg {
	position: absolute;
	right: 24px;
	bottom: 58px;
	z-index: 2;
	padding: 6px 10px;
	background: var(--pp-black);
	color: var(--pp-white);
	font-family: var(--pp-font-primary), sans-serif;
	font-size: .75rem;
	font-weight: 500;
	line-height: 1;
	white-space: nowrap;
	pointer-events: none;
	opacity: 0;
	transform: translateY(4px);
	transition: opacity .2s ease, transform .2s ease;
}

/* small arrow pointing at the button */
.pp-products ul.products li.product .pp-added-msg::after {
	content: "";
	position: absolute;
	top: 100%;
	right: 11px;
	border: 4px solid transparent;
	border-top-color: var(--pp-black);
}

.pp-products ul.products li.product.pp-added .pp-added-msg {
	opacity: 1;
	transform: none;
}

@media (prefers-reduced-motion: reduce) {
	.pp-products ul.products li.product .pp-added-msg {
		transition: none;
	}
}

/* mobile: swipeable row like the blog (not the shop grid); "next" arrow added by JS */
@media (max-width: 767px) {
	.pp-products:not(.pp-shop-grid) {
		position: relative;
	}

	/* gap (30px) comes from the widget settings */
	.pp-products:not(.pp-shop-grid).elementor-wc-products ul.products.elementor-grid {
		display: flex;
		overflow-x: auto;
		overscroll-behavior-x: contain;
		scroll-snap-type: x mandatory;
		scrollbar-width: none;
	}

	.pp-products:not(.pp-shop-grid) ul.products::-webkit-scrollbar {
		display: none;
	}

	.pp-products:not(.pp-shop-grid) ul.products li.product {
		flex: 0 0 278px;
		width: auto;
		margin: 0;
		scroll-snap-align: start;
	}

	/* 16px space after the last product (30px gap - 15px + 1px) */
	.pp-products:not(.pp-shop-grid).elementor-wc-products ul.products.elementor-grid::after {
		content: "";
		display: block;
		flex: 0 0 1px;
		margin-left: -15px;
	}

	.pp-products:not(.pp-shop-grid) .pp-blog-next,
	.pp-products:not(.pp-shop-grid) .pp-blog-next:hover,
	.pp-products:not(.pp-shop-grid) .pp-blog-next:focus {
		top: 170px;
	}
}


/* ===== Banners (under Aktualni proizvodi) ===== */

/* banner: image on the left (under the text), text block on the right, as in Figma */
.pp-banners-section .pp-banner.e-con {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 334px 43px;
	grid-template-rows: auto auto auto 1fr;
	gap: 0;
	min-height: 254px;
	padding: 0;
}

.pp-banner .pp-banner__img {
	grid-area: 1 / 1 / -1 / -1;
	align-self: center;
	justify-self: start;
}

.pp-banner .pp-banner__img img {
	display: block;
	filter: drop-shadow(0 0 15px rgba(128, 128, 128, .3));
}

.pp-banner .pp-banner__title,
.pp-banner .pp-banner__text,
.pp-banner .pp-banner__link {
	grid-column: 2;
	justify-self: end;
}

/* title keeps room for two lines, then 20px gaps (Figma) */
.pp-banner .pp-banner__title {
	grid-row: 1;
	margin-top: 57px;
}

.pp-banner .pp-banner__title .elementor-heading-title {
	min-height: 2em;
}

.pp-banner .pp-banner__text {
	grid-row: 2;
	margin-top: 20px;
}

.pp-banner .pp-banner__link {
	grid-row: 3;
	margin-top: 20px;
}

/* whole banner is clickable: the "Pretraži ponudu" link stretches over it (one link, URL set in the button) */
.pp-banners-section .pp-banner.e-con {
	position: relative;
	overflow: hidden;
}

.pp-banner .pp-banner__link,
.pp-banner .pp-banner__link .elementor-widget-container,
.pp-banner .pp-banner__link .elementor-button {
	position: static;
}

.pp-banner .pp-banner__link .elementor-button::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
}

/* keyboard focus outlines the whole banner */
.pp-banner .pp-banner__link .elementor-button:focus-visible {
	outline: none;
}

.pp-banner .pp-banner__link .elementor-button:focus-visible::after {
	outline: 2px solid var(--pp-red);
	outline-offset: -2px;
}

/* hover: image zooms in a little, link turns red (widget hover colour), arrow moves right */
.pp-banner .pp-banner__img img {
	transition: transform .5s ease;
	transform-origin: left center;
}

.pp-banner:hover .pp-banner__img img {
	transform: scale(1.05);
}

.pp-banner .pp-banner__link .elementor-button-icon {
	transition: transform .3s ease;
}

.pp-banner:hover .pp-banner__link .elementor-button-icon {
	transform: translateX(4px);
}

@media (prefers-reduced-motion: reduce) {
	.pp-banner .pp-banner__img img,
	.pp-banner .pp-banner__link .elementor-button-icon {
		transition: none;
	}
}

/* tablet + mobile: text on top, image under it, link bottom right */
@media (max-width: 1024px) {
	.pp-banners-section .pp-banner.e-con {
		grid-template-columns: minmax(0, 1fr);
		grid-template-rows: auto auto 1fr auto;
		min-height: 386px;
		padding: 30px 12px 35px 24px;
	}

	.pp-banner .pp-banner__img {
		grid-area: 3 / 1;
		margin-top: 20px;
	}

	/* keeps the width set in the widget, never taller than 216px */
	.pp-banner .pp-banner__img img {
		max-height: 216px;
		object-fit: contain;
		object-position: left center;
	}

	.pp-banner .pp-banner__title,
	.pp-banner .pp-banner__text,
	.pp-banner .pp-banner__link {
		grid-column: 1;
	}

	.pp-banner .pp-banner__title {
		margin-top: 0;
	}

	.pp-banner .pp-banner__title .elementor-heading-title {
		min-height: 0;
	}

	.pp-banner .pp-banner__link {
		grid-row: 4;
		margin-top: 15px;
	}
}


/* ===== Single product ===== */

/* "Dopuni svoju proslavu": hidden when the product has no related products (the widget renders nothing) */
.pp-related-section:not(:has(li.product)) {
	display: none;
}

/* breadcrumb: light links, current page medium, small arrow between (functions.php) */
.pp-breadcrumb .woocommerce-breadcrumb {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 5px;
	margin: 0;
	font-weight: 500;
}

.pp-breadcrumb .woocommerce-breadcrumb a {
	color: inherit;
	font-weight: 300;
	text-decoration: none;
}

.pp-breadcrumb .woocommerce-breadcrumb a:hover {
	color: var(--pp-red);
}

.pp-breadcrumb .pp-bc-sep {
	width: 10px;
	height: 10px;
	background: currentColor;
	-webkit-mask: var(--pp-caret-small) center / contain no-repeat;
	mask: var(--pp-caret-small) center / contain no-repeat;
}

.pp-breadcrumb {
	--pp-caret-small: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10' fill='none' stroke='%23000' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.75 2 6.75 5l-3 3'/%3E%3C/svg%3E");
}

/* gallery: cream square tiles, 3 thumbnails in a row (Figma) */
.pp-gallery .woocommerce-product-gallery__image img,
.pp-gallery .flex-control-thumbs img {
	width: 100%;
	height: auto;
	aspect-ratio: 1;
	object-fit: contain;
	background: var(--pp-white);
}

.pp-gallery .woocommerce-product-gallery__image img {
	padding: 14% 23%;
}

.pp-gallery .flex-control-thumbs {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
}

.pp-gallery.elementor-widget .woocommerce-product-gallery.images .flex-control-thumbs li {
	width: auto;
	margin: 0;
}

.pp-gallery .flex-control-thumbs img {
	padding: 8% 18%;
	opacity: 1;
	cursor: pointer;
}

.pp-gallery .flex-control-thumbs img.flex-active {
	outline: 1px solid var(--pp-black);
	outline-offset: -1px;
}

/* lightbox still opens on image click; the emoji trigger is hidden */
.pp-gallery .woocommerce-product-gallery__trigger {
	display: none;
}

/* category above the title */
.pp-product-top-cat .pp-product-cat {
	display: block;
	color: var(--e-global-color-ppblk60);
	font-family: var(--e-global-typography-ppblkat-font-family), sans-serif;
	font-size: var(--e-global-typography-ppblkat-font-size);
	font-weight: var(--e-global-typography-ppblkat-font-weight);
	line-height: var(--e-global-typography-ppblkat-line-height);
}

/* price: current price first (widget: 32px), old price after: 20px, 60%, struck through (Figma) */
.pp-product-price .price {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	column-gap: 10px;
	margin: 0;
}

.pp-product-price .price ins {
	order: 1;
	text-decoration: none;
}

.pp-product-price .price del {
	order: 2;
	color: var(--e-global-color-ppblk60);
	font-family: var(--e-global-typography-ppprsve-font-family), sans-serif;
	font-size: var(--e-global-typography-ppprsve-font-size);
	font-weight: var(--e-global-typography-ppprsve-font-weight);
	line-height: var(--e-global-typography-ppprsve-line-height);
	opacity: 1;
}

/* stock: dot + text, green in stock, red out of stock */
.pp-product-stock .stock {
	display: flex;
	align-items: center;
	gap: 5px;
	margin: 0;
	line-height: 1.33;
}

.pp-product-stock .stock::before {
	content: "";
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: currentColor;
}

.pp-product-stock .stock.in-stock,
.pp-product-stock .stock.available-on-backorder {
	color: var(--e-global-color-ppzelen);
}

.pp-product-stock .stock.out-of-stock {
	color: var(--pp-red);
}

/* stock is shown under the price; WooCommerce repeats it next to the button for simple products */
.pp-add-to-cart .stock {
	display: none;
}

/* variations: colour circles instead of the select (functions.php + JS) */
.pp-add-to-cart.elementor-widget form.cart table.variations {
	margin: 0 0 35px;
	border: 0;
}

.pp-add-to-cart table.variations tr,
.pp-add-to-cart table.variations td {
	display: block;
	padding: 0;
	border: 0;
	background: none;
}

.pp-add-to-cart table.variations th.label,
.pp-add-to-cart table.variations select,
.pp-add-to-cart .reset_variations,
.pp-add-to-cart .woocommerce-variation-price,
.pp-add-to-cart .woocommerce-variation-availability {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
}

.pp-swatches {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
}

/* stronger than the widget's ".cart button" styles */
.pp-add-to-cart.elementor-widget form.cart button.pp-swatch,
.pp-add-to-cart.elementor-widget form.cart button.pp-swatch:hover,
.pp-add-to-cart.elementor-widget form.cart button.pp-swatch:focus {
	width: 26px;
	height: 26px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: var(--pp-swatch);
	box-shadow: inset 0 0 0 1px rgba(39, 32, 32, .15);
	cursor: pointer;
}

/* no button spacing from the widget between the circles */
.pp-add-to-cart.elementor-widget.elementor-widget-woocommerce-product-add-to-cart form.cart button.pp-swatch {
	margin: 0;
}

.pp-add-to-cart.elementor-widget form.cart button.pp-swatch[aria-checked="true"] {
	outline: 1px solid var(--pp-black);
	outline-offset: 2px;
}

.pp-add-to-cart.elementor-widget form.cart button.pp-swatch:focus-visible {
	outline: 2px solid var(--pp-red);
	outline-offset: 2px;
}

.pp-add-to-cart.elementor-widget form.cart button.pp-swatch:disabled {
	opacity: .3;
	cursor: not-allowed;
}

/* quantity: cream box with minus / plus (functions.php + JS); stronger than the widget's stacked layout */
.pp-add-to-cart.elementor-widget.elementor-widget-woocommerce-product-add-to-cart form.cart div.quantity {
	display: inline-flex;
	flex: 0 0 133px;
	align-items: center;
	justify-content: space-between;
	width: 133px;
	height: 35px;
	background: var(--pp-white);
}

.pp-add-to-cart .quantity .qty {
	width: 50px;
	padding: 0;
	border: 0;
	background: transparent;
	text-align: center;
	-moz-appearance: textfield;
	appearance: textfield;
}

.pp-add-to-cart .quantity .qty::-webkit-outer-spin-button,
.pp-add-to-cart .quantity .qty::-webkit-inner-spin-button {
	margin: 0;
	-webkit-appearance: none;
}

.pp-add-to-cart.elementor-widget.elementor-widget-woocommerce-product-add-to-cart form.cart div.quantity button.pp-qty-btn,
.pp-add-to-cart.elementor-widget.elementor-widget-woocommerce-product-add-to-cart form.cart div.quantity button.pp-qty-btn:hover,
.pp-add-to-cart.elementor-widget.elementor-widget-woocommerce-product-add-to-cart form.cart div.quantity button.pp-qty-btn:focus {
	flex: 0 0 35px;
	height: 27px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: linear-gradient(var(--pp-black), var(--pp-black)) center / 10px 1.5px no-repeat;
	cursor: pointer;
}

.pp-add-to-cart.elementor-widget.elementor-widget-woocommerce-product-add-to-cart form.cart div.quantity button.pp-qty-plus,
.pp-add-to-cart.elementor-widget.elementor-widget-woocommerce-product-add-to-cart form.cart div.quantity button.pp-qty-plus:hover,
.pp-add-to-cart.elementor-widget.elementor-widget-woocommerce-product-add-to-cart form.cart div.quantity button.pp-qty-plus:focus {
	background:
		linear-gradient(var(--pp-black), var(--pp-black)) center / 10px 1.5px no-repeat,
		linear-gradient(var(--pp-black), var(--pp-black)) center / 1.5px 10px no-repeat;
}

/* only a thin line between the buttons and the number (Figma) */
.pp-add-to-cart.elementor-widget.elementor-widget-woocommerce-product-add-to-cart form.cart div.quantity button.pp-qty-minus,
.pp-add-to-cart.elementor-widget.elementor-widget-woocommerce-product-add-to-cart form.cart div.quantity button.pp-qty-minus:hover,
.pp-add-to-cart.elementor-widget.elementor-widget-woocommerce-product-add-to-cart form.cart div.quantity button.pp-qty-minus:focus {
	border-right: 1px solid var(--e-global-color-ppblk10);
}

.pp-add-to-cart.elementor-widget.elementor-widget-woocommerce-product-add-to-cart form.cart div.quantity button.pp-qty-plus,
.pp-add-to-cart.elementor-widget.elementor-widget-woocommerce-product-add-to-cart form.cart div.quantity button.pp-qty-plus:hover,
.pp-add-to-cart.elementor-widget.elementor-widget-woocommerce-product-add-to-cart form.cart div.quantity button.pp-qty-plus:focus {
	border-left: 1px solid var(--e-global-color-ppblk10);
}

/* add to cart: full width, 54px */
.pp-add-to-cart .single_add_to_cart_button {
	width: 100%;
}

/* adding to cart: text hidden, spinner centred in the button (instead of WooCommerce's faded button with the icon top right) */
.pp-add-to-cart.elementor-widget.elementor-widget-woocommerce-product-add-to-cart form.cart button.single_add_to_cart_button.loading {
	color: transparent;
	opacity: 1;
	transition: none;
}

.pp-add-to-cart.elementor-widget.elementor-widget-woocommerce-product-add-to-cart form.cart button.single_add_to_cart_button.loading::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	right: auto;
	width: 18px;
	height: 18px;
	margin: -9px 0 0 -9px;
	border: 2px solid var(--pp-white);
	border-right-color: transparent;
	border-radius: 50%;
	font-family: inherit;
	animation: pp-spin .8s linear infinite;
}

@keyframes pp-spin {
	to {
		transform: rotate(360deg);
	}
}

/* "Prikaži košaricu" under the button after AJAX add (only on pages without the mini cart) */
.pp-add-to-cart.elementor-widget form.cart a.added_to_cart {
	margin-top: 15px;
	padding: 0 0 4px;
	border-bottom: 1px solid currentColor;
	color: var(--pp-black);
	font-family: var(--e-global-typography-ppctali-font-family), sans-serif;
	font-size: var(--e-global-typography-ppctali-font-size);
	font-weight: var(--e-global-typography-ppctali-font-weight);
	line-height: var(--e-global-typography-ppctali-line-height);
	text-transform: var(--e-global-typography-ppctali-text-transform);
}

.pp-add-to-cart.elementor-widget form.cart a.added_to_cart:hover {
	color: var(--pp-red);
}

/* accordion: Opis / Specifikacije / ACF sections (shortcode in functions.php) */
.pp-accordion {
	border-top: 1px solid var(--e-global-color-ppblk10);
}

.pp-accordion__item {
	border-bottom: 1px solid var(--e-global-color-ppblk10);
}

.pp-accordion__title {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 10px 15px;
	color: var(--pp-black);
	font-family: var(--e-global-typography-ppaccna-font-family), sans-serif;
	font-size: var(--e-global-typography-ppaccna-font-size);
	font-weight: var(--e-global-typography-ppaccna-font-weight);
	line-height: var(--e-global-typography-ppaccna-line-height);
	list-style: none;
	cursor: pointer;
}

.pp-accordion__title::-webkit-details-marker {
	display: none;
}

.pp-accordion__title::after {
	content: "";
	flex: 0 0 20px;
	height: 20px;
	background: currentColor;
	-webkit-mask: var(--pp-caret-down) center / contain no-repeat;
	mask: var(--pp-caret-down) center / contain no-repeat;
	transition: transform .2s ease;
}

.pp-accordion__item[open] .pp-accordion__title::after {
	transform: rotate(180deg);
}

.pp-accordion__title:hover {
	color: var(--pp-red);
}

.pp-accordion {
	--pp-caret-down: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23000' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.75 7.5 10 13.75 16.25 7.5'/%3E%3C/svg%3E");
}

.pp-accordion__content {
	padding: 6px 15px 20px;
	color: var(--pp-black);
	font-family: var(--e-global-typography-ppacctx-font-family), sans-serif;
	font-size: var(--e-global-typography-ppacctx-font-size);
	font-weight: var(--e-global-typography-ppacctx-font-weight);
	line-height: var(--e-global-typography-ppacctx-line-height);
}

.pp-accordion__content > :last-child {
	margin-bottom: 0;
}

/* tables in tabs (from the editor's table button): no grid, thin lines between rows, first column medium */
.pp-accordion__content table {
	width: 100% !important;
	margin: 0 0 15px;
	border: 0;
	border-collapse: collapse;
}

.pp-accordion__content > table:last-child {
	margin-bottom: 0;
}

.pp-accordion__content tr {
	border-bottom: 1px solid var(--e-global-color-ppblk10);
}

.pp-accordion__content tr:last-child {
	border-bottom: 0;
}

.pp-accordion__content th,
.pp-accordion__content td {
	padding: 6px 10px 6px 0;
	border: 0;
	background: none;
	font-style: normal;
	text-align: left;
	vertical-align: top;
}

.pp-accordion__content th,
.pp-accordion__content td:first-child {
	font-weight: 500;
}

.pp-accordion__content td p {
	margin: 0;
	padding: 0;
}

@media (max-width: 767px) {
	.pp-gallery .flex-control-thumbs {
		gap: 19px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.pp-accordion__title::after {
		transition: none;
	}
}


/* ===== WooCommerce notices (product page without AJAX, cart, checkout) ===== */
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-error {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 10px 20px;
	margin: 0 0 20px;
	padding: 15px 20px;
	border: 0;
	border-left: 3px solid var(--pp-black);
	background: var(--pp-white);
	color: var(--pp-black);
	font-family: var(--e-global-typography-text-font-family), sans-serif;
	font-size: .875rem;
	font-weight: 400;
	line-height: 1.5;
	list-style: none;
}

.woocommerce .woocommerce-error {
	border-left-color: var(--pp-red);
}

/* WooCommerce's icon font is not used on this site */
.woocommerce .woocommerce-message::before,
.woocommerce .woocommerce-info::before,
.woocommerce .woocommerce-error::before {
	display: none;
}

.woocommerce .woocommerce-error li {
	margin: 0;
}

/* "Prikaži košaricu" etc.: underlined link like the other CTA links */
.woocommerce .woocommerce-message a.button,
.woocommerce .woocommerce-info a.button,
.woocommerce .woocommerce-error a.button {
	order: 2;
	float: none;
	margin: 0;
	padding: 0 0 4px;
	border: 0;
	border-bottom: 1px solid currentColor;
	border-radius: 0;
	background: none;
	color: var(--pp-black);
	font-family: var(--e-global-typography-ppctali-font-family), sans-serif;
	font-size: var(--e-global-typography-ppctali-font-size);
	font-weight: var(--e-global-typography-ppctali-font-weight);
	line-height: var(--e-global-typography-ppctali-line-height);
	text-transform: var(--e-global-typography-ppctali-text-transform);
}

.woocommerce .woocommerce-message a.button:hover,
.woocommerce .woocommerce-info a.button:hover,
.woocommerce .woocommerce-error a.button:hover {
	background: none;
	color: var(--pp-red);
}

/* product template: notices widget only takes space when there is a notice */
.elementor-widget.pp-notices:not(:has(.woocommerce-message, .woocommerce-info, .woocommerce-error)) {
	display: none;
}

.pp-notices .woocommerce-message,
.pp-notices .woocommerce-info,
.pp-notices .woocommerce-error {
	margin: 0;
}


/* ===== Product archive (shop, categories) ===== */

/* "Filteri": plain label on desktop, button with the sliders icon on mobile (JS in functions.php) */
.pp-filter-toggle .elementor-button {
	gap: 5px;
}

@media (min-width: 768px) {
	.pp-filter-toggle .elementor-button {
		cursor: default;
		pointer-events: none;
	}

	.pp-filter-toggle .elementor-button-icon {
		display: none;
	}
}

/* "Sortiraj po": text + small caret pointing down, no field look */
.pp-shop-sort .jet-sorting-select {
	field-sizing: content;
	max-width: 100%;
	height: auto;
	min-height: 0;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10' fill='none'%3E%3Cpath d='M2 3.5 5 6.5 8 3.5' stroke='%23272020' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") right center / 10px no-repeat;
	line-height: 1.2;
	cursor: pointer;
}

.pp-shop-sort .jet-sorting-select:focus-visible {
	outline: 1px solid var(--pp-black);
	outline-offset: 4px;
}

/* filter groups: line after the last one too */
.pp-filter-acc .e-n-accordion-item:last-child > .e-n-accordion-item-title {
	border-bottom-width: 1px;
}

.pp-filter-acc .e-n-accordion-item:last-child[open] > .e-n-accordion-item-title {
	border-bottom-width: 0;
}

.pp-filter-acc .e-n-accordion-item:last-child[open] > .e-con {
	border-bottom: 1px solid var(--e-global-color-ppblk10);
}

.pp-filter-acc .e-n-accordion-item-title-text {
	text-transform: uppercase;
}

/* label on the checkbox's centre line (10px gap set in the widget) */
.pp-filter .jet-checkboxes-list__button {
	align-items: center;
}

.pp-filter .jet-list-tree__children {
	margin-left: 0;
}

/* parent category = grey group title, not a checkbox (Figma) */
.pp-filter .jet-list-tree__parent .jet-checkboxes-list__item {
	pointer-events: none;
}

.pp-filter .jet-list-tree__parent .jet-checkboxes-list__decorator {
	display: none;
}

.pp-filter .jet-list-tree__parent .jet-checkboxes-list__label {
	color: var(--e-global-color-pplinij);
	font-weight: var(--e-global-typography-ppfilna-font-weight);
}

/* 25px between groups (15px between items) */
.pp-filter .jet-list-tree__children:not(:last-child) {
	margin-bottom: 10px;
}

.pp-filter .jet-checkboxes-list__input:focus-visible + .jet-checkboxes-list__button .jet-checkboxes-list__decorator {
	outline: 1px solid var(--pp-black);
	outline-offset: 2px;
}

/* "Boje": colour circles like on the product page (colour from ACF via functions.php), name shown as a tooltip */
.pp-filter--colors .jet-checkboxes-list-wrapper {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.pp-filter--colors .jet-checkboxes-list__item {
	position: relative;
}

/* selected: own colour kept (stronger than the plugin's grey), black ring + white tick (shadow keeps it visible on light colours) */
.pp-filter--colors .jet-checkboxes-list__decorator,
.pp-filter--colors .jet-checkboxes-list .jet-checkboxes-list__item .jet-checkboxes-list__input:checked + .jet-checkboxes-list__button .jet-checkboxes-list__decorator {
	background: var(--pp-swatch, #cccccc);
	box-shadow: inset 0 0 0 1px rgba(39, 32, 32, .15);
	cursor: pointer;
}

.pp-filter--colors .jet-checkboxes-list .jet-checkboxes-list__item .jet-checkboxes-list__input:checked + .jet-checkboxes-list__button .jet-checkboxes-list__decorator {
	outline: 1px solid var(--pp-black);
	outline-offset: 2px;
}

.pp-filter--colors .jet-checkboxes-list__checked-icon {
	filter: drop-shadow(0 0 1px rgba(39, 32, 32, .8));
}

.pp-filter--colors .jet-checkboxes-list__input:focus-visible + .jet-checkboxes-list__button .jet-checkboxes-list__decorator {
	outline: 2px solid var(--pp-red);
	outline-offset: 2px;
}

.pp-filter--colors .jet-checkboxes-list__label {
	position: absolute;
	bottom: calc(100% + 8px);
	left: 50%;
	z-index: 2;
	padding: 6px 10px;
	background: var(--pp-black);
	color: var(--pp-white);
	line-height: 1;
	white-space: nowrap;
	pointer-events: none;
	opacity: 0;
	transform: translate(-50%, 4px);
	transition: opacity .2s ease, transform .2s ease;
}

/* small arrow pointing at the circle */
.pp-filter--colors .jet-checkboxes-list__label::after {
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	margin-left: -4px;
	border: 4px solid transparent;
	border-top-color: var(--pp-black);
}

.pp-filter--colors .jet-checkboxes-list__item:hover .jet-checkboxes-list__label,
.pp-filter--colors .jet-checkboxes-list__input:focus-visible + .jet-checkboxes-list__button .jet-checkboxes-list__label {
	opacity: 1;
	transform: translate(-50%, 0);
}

@media (prefers-reduced-motion: reduce) {
	.pp-filter--colors .jet-checkboxes-list__label {
		transition: none;
	}
}

/* grid: product count under the products, WooCommerce pagination replaced by the JetSmartFilters one */
.pp-shop-grid .woocommerce {
	display: flex;
	flex-direction: column;
}

.pp-shop-grid .woocommerce-result-count {
	order: 2;
	margin: 53px 0 0;
	color: var(--pp-black);
	font-family: var(--e-global-typography-pprezul-font-family), sans-serif;
	font-size: var(--e-global-typography-pprezul-font-size);
	font-weight: var(--e-global-typography-pprezul-font-weight);
	line-height: var(--e-global-typography-pprezul-line-height);
	text-align: center;
	opacity: .8;
}

.pp-shop-grid .woocommerce-pagination {
	display: none;
}

/* pagination: 30px circles (radius in the widget), arrows instead of "Prethodna" / "Sljedeća" (text stays for screen readers) */
.pp-shop-pagination .jet-filters-pagination__link,
.pp-shop-pagination .jet-filters-pagination__dots {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 30px;
	height: 30px;
	transition: color .2s ease, background-color .2s ease;
}

/* stronger than the widget typography (Elementor post CSS) */
.pp-shop-pagination.elementor-widget .jet-filters-pagination__item.prev-next .jet-filters-pagination__link {
	font-size: 0;
}

.pp-shop-pagination .prev-next .jet-filters-pagination__link::before {
	content: "";
	width: 16px;
	height: 16px;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M7.5 3.75 13.75 10 7.5 16.25' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M7.5 3.75 13.75 10 7.5 16.25' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
}

.pp-shop-pagination .prev .jet-filters-pagination__link::before {
	transform: scaleX(-1);
}

.pp-shop-pagination a.jet-filters-pagination__item:focus-visible {
	outline: none;
}

.pp-shop-pagination a.jet-filters-pagination__item:focus-visible .jet-filters-pagination__link {
	outline: 1px solid var(--pp-black);
	outline-offset: 2px;
}

/* tablet + mobile: 2 products per row */
@media (max-width: 1024px) {
	.pp-shop-grid ul.products.elementor-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* mobile: smaller cards (Figma 177px), cart button 20px */
@media (max-width: 767px) {
	.pp-shop-grid ul.products li.product .woocommerce-LoopProduct-link img {
		aspect-ratio: 177 / 190;
		padding: 24px 30px;
	}

	.pp-shop-grid ul.products li.product .pp-product-cat,
	.pp-shop-grid ul.products li.product .woocommerce-loop-product__title,
	.pp-shop-grid ul.products li.product .price {
		padding: 0 37px 0 10px;
	}

	.pp-shop-grid ul.products li.product .button {
		right: 10px;
		bottom: 18px;
		width: 20px;
		height: 20px;
	}

	.pp-shop-grid ul.products li.product .button::before {
		width: 10px;
		height: 10px;
	}

	.pp-shop-grid ul.products li.product .pp-added-msg {
		right: 6px;
		bottom: 44px;
	}

	.pp-shop-grid .woocommerce-result-count {
		margin-top: 40px;
	}
}

/* mobile: filters slide in from the left (369px, Figma), page dimmed behind; X added by JS */
.pp-filter-close {
	display: none;
}

@media (max-width: 767px) {
	.pp-shop-filters.e-con {
		position: fixed;
		top: 0;
		bottom: 0;
		left: 0;
		z-index: 9999;
		width: min(369px, 100% - 33px);
		overflow-y: auto;
		overscroll-behavior: contain;
		background: var(--e-global-color-ppbijel);
		box-shadow: 0 0 0 100vmax transparent;
		visibility: hidden;
		transform: translateX(-100%);
		transition: transform .3s ease, box-shadow .3s ease, visibility 0s linear .3s;
	}

	.pp-shop-filters.e-con.is-open {
		box-shadow: 0 0 0 100vmax rgba(39, 32, 32, .5);
		visibility: visible;
		transform: none;
		transition: transform .3s ease, box-shadow .3s ease;
	}

	/* logged in: below the WordPress toolbar */
	.admin-bar .pp-shop-filters.e-con {
		top: var(--wp-admin--admin-bar--height, 0px);
	}

	.pp-filters-open {
		overflow: hidden;
	}

	/* X on the "Filteri" line */
	.pp-filter-close {
		position: absolute;
		top: 17px;
		right: 20px;
		z-index: 1;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 20px;
		height: 20px;
		padding: 0;
		border: 0;
		border-radius: 0;
		background: none;
		color: var(--pp-black);
		cursor: pointer;
	}

	.pp-filter-close:hover,
	.pp-filter-close:focus {
		background: none;
		color: var(--pp-red);
	}

	.pp-filter-close::before {
		content: "";
		width: 20px;
		height: 20px;
		background: currentColor;
		-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M15.625 4.375 4.375 15.625M15.625 15.625 4.375 4.375' stroke='%23000' stroke-width='1.25' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat;
		mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M15.625 4.375 4.375 15.625M15.625 15.625 4.375 4.375' stroke='%23000' stroke-width='1.25' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat;
	}
}

@media (max-width: 767px) and (prefers-reduced-motion: reduce) {
	.pp-shop-filters.e-con,
	.pp-shop-filters.e-con.is-open {
		transition: none;
	}
}


/* ===== Cart page (classic WooCommerce, woocommerce/cart/cart.php) ===== */

/* 1200px content with the header's side gutters; the title stays for screen readers only (the table head says "Košarica") */
body.woocommerce-cart main.site-main {
	max-width: calc(var(--pp-container) + 40px);
	padding-inline: 20px;
}

.woocommerce-cart .page-header {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip-path: inset(50%);
	white-space: nowrap;
}

/* products left, summary box right */
.woocommerce-cart .page-content > .woocommerce:has(.woocommerce-cart-form) {
	display: grid;
	grid-template-columns: minmax(0, 688fr) minmax(0, 467fr);
	column-gap: 45px;
	align-items: start;
	margin: 53px 0 120px;
}

.woocommerce-cart .page-content > .woocommerce > * {
	grid-column: 1 / -1;
}

.woocommerce-cart .page-content > .woocommerce > .woocommerce-cart-form {
	grid-column: 1;
}

.woocommerce-cart .page-content > .woocommerce > .cart-collaterals {
	grid-column: 2;
}

/* free shipping bar above the products */
.woocommerce-cart-form .pp-free-shipping {
	margin-bottom: 30px;
}

/* products table: lines only between rows (no theme borders / stripes) */
.woocommerce-cart .woocommerce-cart-form table.cart {
	margin: 0;
	border: 0;
	border-collapse: collapse;
	border-radius: 0;
}

.woocommerce-cart .woocommerce-cart-form table.cart :is(th, td) {
	padding: 18px 0;
	border: 0;
	border-bottom: 1px solid var(--e-global-color-ppblk10);
	background: none;
	vertical-align: middle;
}

.woocommerce-cart .woocommerce-cart-form table.cart th {
	padding-top: 0;
	color: var(--pp-black);
	font-family: var(--e-global-typography-ppkoszg-font-family), sans-serif;
	font-size: var(--e-global-typography-ppkoszg-font-size);
	font-weight: var(--e-global-typography-ppkoszg-font-weight);
	line-height: var(--e-global-typography-ppkoszg-line-height);
}

/* hidden: quantity saves itself, coupon is in the summary box (the button still works for assets/js/cart.js) */
.woocommerce-cart-form tr.pp-cart-actions {
	display: none;
}

/* image: 149px cream tile (!important: WooCommerce hides it up to 768px with "#content table.cart .product-thumbnail") */
.woocommerce-cart .woocommerce-cart-form table.cart td.product-thumbnail {
	display: table-cell !important;
	width: 179px;
	padding-right: 30px;
}

.woocommerce-cart .woocommerce-cart-form table.cart td.product-thumbnail img {
	display: block;
	width: 149px;
	max-width: none;
	aspect-ratio: 1;
	padding: 21px;
	background: var(--pp-white);
	object-fit: contain;
}

/* name, price, quantity (Figma: 13px and 20px apart) */
.woocommerce-cart-form .product-title {
	color: var(--pp-black);
	font-family: var(--e-global-typography-ppkospr-font-family), sans-serif;
	font-size: var(--e-global-typography-ppkospr-font-size);
	font-weight: var(--e-global-typography-ppkospr-font-weight);
	line-height: var(--e-global-typography-ppkospr-line-height);
}

.woocommerce-cart-form .product-title a {
	color: inherit;
	text-decoration: none;
}

.woocommerce-cart-form .product-title a:hover {
	color: var(--pp-red);
}

.woocommerce-cart-form .product-name dl.variation {
	margin: 8px 0 0;
	color: var(--e-global-color-ppblk60);
	font-size: .75rem;
}

/* price: old price crossed out, then the current one (Figma) */
.woocommerce-cart-form .product-price {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	column-gap: 8px;
	margin-top: 13px;
	color: var(--pp-black);
	font-family: var(--e-global-typography-ppmkcij-font-family), sans-serif;
	font-size: var(--e-global-typography-ppmkcij-font-size);
	font-weight: var(--e-global-typography-ppmkcij-font-weight);
	line-height: var(--e-global-typography-ppmkcij-line-height);
}

.woocommerce-cart-form .product-price del {
	color: var(--e-global-color-ppblk60);
	font-weight: 400;
}

.woocommerce-cart-form .product-price ins {
	text-decoration: none;
}

.woocommerce-cart-form .product-quantity {
	margin-top: 20px;
}

/* quantity: cream box, minus / number / plus (as in the mini cart) */
.woocommerce-cart-form .quantity {
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	width: 112px;
	padding: 3px 0;
	background: var(--pp-white);
}

.woocommerce-cart-form .quantity input.qty {
	width: 40px;
	height: 23px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: var(--pp-black);
	font-family: var(--e-global-typography-ppmkkol-font-family), sans-serif;
	font-size: var(--e-global-typography-ppmkkol-font-size);
	font-weight: var(--e-global-typography-ppmkkol-font-weight);
	line-height: var(--e-global-typography-ppmkkol-line-height);
	text-align: center;
	-moz-appearance: textfield;
	appearance: textfield;
}

.woocommerce-cart-form .quantity input.qty::-webkit-outer-spin-button,
.woocommerce-cart-form .quantity input.qty::-webkit-inner-spin-button {
	margin: 0;
	-webkit-appearance: none;
}

.woocommerce-cart-form .quantity button.pp-qty-btn,
.woocommerce-cart-form .quantity button.pp-qty-btn:hover,
.woocommerce-cart-form .quantity button.pp-qty-btn:focus {
	width: 29px;
	height: 23px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: linear-gradient(var(--pp-black), var(--pp-black)) center / 8px 1.25px no-repeat;
	cursor: pointer;
}

.woocommerce-cart-form .quantity button.pp-qty-plus,
.woocommerce-cart-form .quantity button.pp-qty-plus:hover,
.woocommerce-cart-form .quantity button.pp-qty-plus:focus {
	background:
		linear-gradient(var(--pp-black), var(--pp-black)) center / 8px 1.25px no-repeat,
		linear-gradient(var(--pp-black), var(--pp-black)) center / 1.25px 8px no-repeat;
}

/* quantity 1: minus off, the trash removes the product */
.woocommerce-cart-form .quantity:has(input.qty[value="1"]) button.pp-qty-minus {
	opacity: .3;
	pointer-events: none;
}

.woocommerce-cart-form .quantity:has(input[type="hidden"]) .pp-qty-btn {
	display: none;
}

/* line total in a cream box */
.woocommerce-cart .woocommerce-cart-form table.cart .product-subtotal {
	width: 172px;
}

.woocommerce-cart-form td.product-subtotal .amount {
	display: inline-block;
	padding: 10px;
	background: var(--pp-white);
	color: var(--pp-black);
	font-family: var(--e-global-typography-ppkosiz-font-family), sans-serif;
	font-size: var(--e-global-typography-ppkosiz-font-size);
	font-weight: var(--e-global-typography-ppkosiz-font-weight);
	line-height: var(--e-global-typography-ppkosiz-line-height);
}

/* remove: trash icon on a cream square (same icon as the mini cart) */
.woocommerce-cart .woocommerce-cart-form table.cart .product-remove {
	width: 34px;
}

.woocommerce-cart-form .product-remove a.remove,
.woocommerce-cart-form .product-remove a.remove:hover {
	position: relative;
	display: block;
	width: 34px;
	height: 35px;
	margin-left: auto;
	border-radius: 0;
	background: var(--pp-white);
	font-size: 0;
}

.woocommerce-cart-form .product-remove a.remove::before {
	content: "";
	position: absolute;
	inset: 0;
	background: var(--pp-black);
	-webkit-mask: var(--pp-icon-trash) center / 15px no-repeat;
	mask: var(--pp-icon-trash) center / 15px no-repeat;
	transition: background .3s;
}

.woocommerce-cart-form .product-remove a.remove:hover::before {
	background: var(--pp-red);
}

.woocommerce-cart-form {
	--pp-icon-trash: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-.75 -.75 15.25 16.5' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 2.5V1.25A1.25 1.25 0 0 0 8.75 0H5a1.25 1.25 0 0 0-1.25 1.25V2.5M0 2.5h13.75M12.5 2.5v11.875a.625.625 0 0 1-.625.625H1.875a.625.625 0 0 1-.625-.625V2.5M5 6.25v5M8.75 6.25v5'/%3E%3C/svg%3E");
}

/* summary box: grey, title with a line, coupon, totals, button */
.woocommerce-cart .cart-collaterals {
	padding: 50px 44px;
	background: var(--e-global-color-ppgrey2);
}

.woocommerce-cart .cart-collaterals .pp-cart-summary-title {
	margin: 0 0 30px;
	padding-bottom: 18px;
	border-bottom: 1px solid var(--e-global-color-ppblk10);
	color: var(--pp-black);
	font-family: var(--e-global-typography-ppkoszg-font-family), sans-serif;
	font-size: var(--e-global-typography-ppkoszg-font-size);
	font-weight: var(--e-global-typography-ppkoszg-font-weight);
	line-height: var(--e-global-typography-ppkoszg-line-height);
}

/* WooCommerce's own title (we print ours above the coupon) */
.woocommerce-cart .cart-collaterals .cart_totals > h2 {
	display: none;
}

.woocommerce-cart .cart-collaterals .cart_totals {
	float: none;
	width: auto;
}

/* coupon: cream field + black button, 50px (cart summary box and checkout summary) */
:is(.woocommerce-cart .cart-collaterals, .pp-checkout-summary) .coupon {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 30px;
}

:is(.woocommerce-cart .cart-collaterals, .pp-checkout-summary) .coupon #coupon_code,
:is(.woocommerce-cart .cart-collaterals, .pp-checkout-summary) .coupon button.button {
	height: 50px;
	border-radius: 0;
	font-family: var(--e-global-typography-ppkoskp-font-family), sans-serif;
	font-size: var(--e-global-typography-ppkoskp-font-size);
	font-weight: var(--e-global-typography-ppkoskp-font-weight);
	line-height: var(--e-global-typography-ppkoskp-line-height);
}

:is(.woocommerce-cart .cart-collaterals, .pp-checkout-summary) .coupon #coupon_code {
	flex: 1 1 0;
	min-width: 0;
	padding: 0 20px 0 27px;
	border: 1px solid var(--e-global-color-ppblk10);
	background: var(--pp-white);
	color: var(--pp-black);
}

:is(.woocommerce-cart .cart-collaterals, .pp-checkout-summary) .coupon #coupon_code::placeholder {
	color: var(--pp-black);
	opacity: .3;
}

:is(.woocommerce-cart .cart-collaterals, .pp-checkout-summary) .coupon #coupon_code.has-error {
	border-color: var(--pp-red);
}

:is(.woocommerce-cart .cart-collaterals, .pp-checkout-summary) .coupon button.button {
	flex: 0 0 103px;
	margin: 0;
	padding: 0;
	border: 0;
	background: var(--pp-black);
	color: var(--pp-white);
	text-transform: uppercase;
	transition: background .3s;
}

:is(.woocommerce-cart .cart-collaterals, .pp-checkout-summary) .coupon button.button:hover,
:is(.woocommerce-cart .cart-collaterals, .pp-checkout-summary) .coupon button.button:focus-visible {
	background: var(--pp-red);
	color: var(--pp-white);
}

:is(.woocommerce-cart .cart-collaterals, .pp-checkout-summary) .coupon .coupon-error-notice {
	flex-basis: 100%;
	margin: 8px 0 0;
	color: var(--pp-red);
	font-size: .8125rem;
}

/* totals: label column 168px, lines under the rows, "UKUPNO" bold */
.woocommerce-cart .cart_totals table.shop_table {
	margin: 0;
	border: 0;
	border-collapse: collapse;
	border-radius: 0;
}

.woocommerce-cart .cart_totals table.shop_table tr :is(th, td) {
	padding: 11px 0;
	border: 0;
	border-bottom: 1px solid var(--e-global-color-ppblk10);
	background: none;
	color: var(--pp-black);
	font-family: var(--e-global-typography-ppkostx-font-family), sans-serif;
	font-size: var(--e-global-typography-ppkostx-font-size);
	font-weight: var(--e-global-typography-ppkostx-font-weight);
	line-height: var(--e-global-typography-ppkostx-line-height);
	text-align: left;
	vertical-align: top;
}

.woocommerce-cart .cart_totals table.shop_table tr th {
	width: 168px;
}

.woocommerce-cart .cart_totals table.shop_table tr.cart-subtotal :is(th, td) {
	padding: 0 0 18px;
}

.woocommerce-cart .cart_totals table.shop_table tr.order-total :is(th, td) {
	padding: 18px 0 0;
	border-bottom: 0;
	font-family: var(--e-global-typography-ppkosiz-font-family), sans-serif;
	font-size: var(--e-global-typography-ppkosiz-font-size);
	font-weight: var(--e-global-typography-ppkosiz-font-weight);
	line-height: var(--e-global-typography-ppkosiz-line-height);
	text-transform: uppercase;
}

/* shipping: free shipping in green capitals (checkout too), address, "Promijeni adresu" in red */
.woocommerce-cart .cart_totals #shipping_method {
	margin: 0;
	padding: 0;
	list-style: none;
}

.woocommerce-cart .cart_totals #shipping_method li {
	margin: 0;
}

:is(.woocommerce-cart .cart_totals, .pp-checkout-totals) #shipping_method li:has(input[value^="free_shipping"]) label {
	color: var(--e-global-color-ppzelen);
	font-weight: 700;
	text-transform: uppercase;
}

.woocommerce-cart .cart_totals .woocommerce-shipping-destination {
	margin: 11px 0;
}

.woocommerce-cart .cart_totals .woocommerce-shipping-destination strong {
	font-weight: inherit;
}

.woocommerce-cart .cart_totals .shipping-calculator-button {
	color: var(--pp-red);
	text-decoration: underline;
}

.woocommerce-cart .cart_totals .shipping-calculator-button::after {
	content: none;
}

.woocommerce-cart .cart_totals .shipping-calculator-form button.button {
	margin-top: 11px;
	padding: 15px 20px;
	border: 0;
	border-radius: 0;
	background: var(--pp-black);
	color: var(--pp-white);
}

/* "Kreni na plaćanje": full width, black, red on hover (as the mini cart button) */
.woocommerce-cart .cart-collaterals .wc-proceed-to-checkout {
	padding: 40px 0 0;
}

.woocommerce-cart .cart-collaterals .wc-proceed-to-checkout a.checkout-button {
	display: block;
	margin: 0;
	padding: 20px;
	border-radius: 0;
	background: var(--pp-black);
	color: var(--pp-white);
	font-family: var(--e-global-typography-ppgumb1-font-family), sans-serif;
	font-size: var(--e-global-typography-ppgumb1-font-size);
	font-weight: var(--e-global-typography-ppgumb1-font-weight);
	line-height: var(--e-global-typography-ppgumb1-line-height);
	text-align: center;
	text-transform: uppercase;
	transition: background .3s;
}

.woocommerce-cart .cart-collaterals .wc-proceed-to-checkout a.checkout-button:hover {
	background: var(--pp-red);
	color: var(--pp-white);
}

/* tablet: summary under the products */
@media (max-width: 1024px) {
	.woocommerce-cart .page-content > .woocommerce:has(.woocommerce-cart-form) {
		grid-template-columns: minmax(0, 1fr);
		row-gap: 50px;
		margin-top: 40px;
	}

	.woocommerce-cart .page-content > .woocommerce > .cart-collaterals {
		grid-column: 1;
	}
}

/* totals keep label | value columns (WooCommerce turns them into right-aligned blocks up to 768px) */
@media (max-width: 768px) {
	.woocommerce-cart .cart_totals table.shop_table tbody {
		display: table-row-group;
	}

	.woocommerce-cart .cart_totals table.shop_table tr {
		display: table-row;
	}

	.woocommerce-cart .cart_totals table.shop_table tr th {
		display: table-cell;
		width: 40%;
	}

	.woocommerce-cart .cart_totals table.shop_table tr td {
		display: table-cell;
		text-align: left !important;
	}

	.woocommerce-cart .cart_totals table.shop_table tr td::before {
		content: none;
	}
}

/* mobile: image left, name / price / quantity / total next to it, trash top right */
@media (max-width: 767px) {
	body.woocommerce-cart main.site-main {
		padding-inline: 16px;
	}

	.woocommerce-cart .page-content > .woocommerce:has(.woocommerce-cart-form) {
		margin: 30px 0 80px;
	}

	.woocommerce-cart .woocommerce-cart-form table.cart,
	.woocommerce-cart .woocommerce-cart-form table.cart :is(thead, tbody, thead tr) {
		display: block;
	}

	.woocommerce-cart .woocommerce-cart-form table.cart thead th {
		display: none;
	}

	.woocommerce-cart .woocommerce-cart-form table.cart thead th.product-name {
		display: block;
	}

	.woocommerce-cart .woocommerce-cart-form table.cart tr.cart_item {
		display: grid;
		grid-template-columns: 100px minmax(0, 1fr) 34px;
		column-gap: 15px;
		padding: 18px 0;
		border-bottom: 1px solid var(--e-global-color-ppblk10);
	}

	.woocommerce-cart .woocommerce-cart-form table.cart tr.cart_item td {
		display: block;
		width: auto;
		padding: 0;
		border: 0;
	}

	.woocommerce-cart .woocommerce-cart-form table.cart tr.cart_item td.product-thumbnail {
		display: block !important;
		grid-row: 1 / 3;
		padding: 0;
	}

	.woocommerce-cart .woocommerce-cart-form table.cart td.product-thumbnail img {
		width: 100px;
		padding: 14px;
	}

	.woocommerce-cart .woocommerce-cart-form table.cart tr.cart_item td.product-subtotal {
		grid-column: 2;
		margin-top: 15px;
	}

	.woocommerce-cart .woocommerce-cart-form table.cart tr.cart_item td.product-remove {
		grid-column: 3;
		grid-row: 1;
	}

	.woocommerce-cart .cart-collaterals {
		padding: 30px 20px;
	}
}

/* ===== Checkout (classic WooCommerce, woocommerce/checkout/) ===== */

/* 1200px content with the header's side gutters; the title stays for screen readers only (not on the thank you page) */
body.woocommerce-checkout main.site-main {
	max-width: calc(var(--pp-container) + 40px);
	padding-inline: 20px;
}

.woocommerce-checkout:not(.woocommerce-order-received) .page-header {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip-path: inset(50%);
	white-space: nowrap;
}

/* form left, summary right; notices WooCommerce puts on top of the form stay in the left column */
.pp-checkout {
	display: grid;
	grid-template-columns: minmax(0, 585fr) minmax(0, 584fr);
	grid-template-rows: auto 1fr;
	column-gap: 31px;
}

.pp-checkout > * {
	grid-column: 1;
	grid-row: 1;
}

.pp-checkout > .woocommerce-NoticeGroup {
	margin-top: 42px;
}

.pp-checkout > .pp-checkout-main {
	grid-row: 2;
	padding: 42px 0 125px;
}

/* summary: grey from the header to the footer, out to the right edge of the window */
.pp-checkout > .pp-checkout-summary {
	grid-column: 2;
	grid-row: 1 / 3;
	padding: 42px 0 60px 36px;
	background: var(--e-global-color-ppgrey2);
	box-shadow: 0 0 0 100vmax var(--e-global-color-ppgrey2);
	clip-path: inset(0 -100vmax 0 0);
}

.pp-checkout-summary > * {
	max-width: 380px;
}

/* "Sažetak narudžbe" + total: phones only (folds the summary) */
.pp-checkout-summary__head {
	display: none;
}

/* products: 117px image with the quantity in a black circle, name, line total */
.pp-checkout-items {
	display: flex;
	flex-direction: column;
	gap: 25px;
}

.pp-checkout-item {
	display: grid;
	grid-template-columns: 117px minmax(0, 1fr) auto;
	column-gap: 30px;
	align-items: center;
}

.pp-checkout-item__image {
	position: relative;
}

.pp-checkout-item__image img {
	display: block;
	width: 117px;
	max-width: none;
	aspect-ratio: 1;
	padding: 17px;
	border: 2px solid var(--e-global-color-ppbijel);
	background: var(--pp-white);
	object-fit: contain;
}

.pp-checkout-item__qty {
	position: absolute;
	top: -7px;
	right: -10px;
	display: grid;
	place-items: center;
	min-width: 27px;
	height: 27px;
	padding: 0 6px;
	border: 2px solid var(--e-global-color-ppbijel);
	border-radius: 14px;
	background: var(--pp-black);
	color: var(--pp-white);
	font-family: var(--e-global-typography-pppagin-font-family), sans-serif;
	font-size: var(--e-global-typography-pppagin-font-size);
	font-weight: var(--e-global-typography-pppagin-font-weight);
	line-height: var(--e-global-typography-pppagin-line-height);
}

.pp-checkout-item__name {
	color: var(--pp-black);
	font-family: var(--e-global-typography-ppchkpr-font-family), sans-serif;
	font-size: var(--e-global-typography-ppchkpr-font-size);
	font-weight: var(--e-global-typography-ppchkpr-font-weight);
	line-height: var(--e-global-typography-ppchkpr-line-height);
}

.pp-checkout-item__name dl.variation {
	margin: 8px 0 0;
	color: var(--e-global-color-ppblk60);
	font-family: var(--e-global-typography-ppchkcb-font-family), sans-serif;
	font-size: var(--e-global-typography-ppchkcb-font-size);
}

.pp-checkout-item__total {
	color: var(--pp-black);
	font-family: var(--e-global-typography-ppmkcij-font-family), sans-serif;
	font-size: var(--e-global-typography-ppmkcij-font-size);
	font-weight: var(--e-global-typography-ppmkcij-font-weight);
	line-height: var(--e-global-typography-ppmkcij-line-height);
	text-align: right;
	white-space: nowrap;
}

/* coupon (styled with the cart's coupon above) */
.pp-checkout-summary .pp-checkout-coupon {
	margin: 30px 0;
	transition: opacity .2s;
}

.pp-checkout-summary .pp-checkout-coupon.is-busy {
	opacity: .5;
	pointer-events: none;
}

/* totals: label left, amount right, line above "UKUPNO" */
.pp-checkout-summary table.pp-checkout-totals {
	width: 100%;
	margin: 0;
	border: 0;
	border-collapse: collapse;
	border-radius: 0;
}

.pp-checkout-summary table.pp-checkout-totals tr :is(th, td) {
	padding: 0 0 11px;
	border: 0;
	background: none;
	color: var(--pp-black);
	font-family: var(--e-global-typography-ppchktx-font-family), sans-serif;
	font-size: var(--e-global-typography-ppchktx-font-size);
	font-weight: var(--e-global-typography-ppchktx-font-weight);
	line-height: var(--e-global-typography-ppchktx-line-height);
	text-align: left;
	vertical-align: top;
}

.pp-checkout-summary table.pp-checkout-totals tr td {
	text-align: right;
}

.pp-checkout-summary table.pp-checkout-totals tr:has(+ tr.order-total) :is(th, td) {
	padding-bottom: 18px;
}

.pp-checkout-summary table.pp-checkout-totals tr.order-total :is(th, td) {
	padding: 18px 0 0;
	border-top: 1px solid var(--e-global-color-ppblk10);
	font-family: var(--e-global-typography-ppkosiz-font-family), sans-serif;
	font-size: var(--e-global-typography-ppkosiz-font-size);
	font-weight: var(--e-global-typography-ppkosiz-font-weight);
	line-height: var(--e-global-typography-ppkosiz-line-height);
	text-transform: uppercase;
}

.pp-checkout-totals #shipping_method {
	margin: 0;
	padding: 0;
	list-style: none;
}

.pp-checkout-totals #shipping_method li {
	margin: 0;
}

.pp-checkout-totals :is(.woocommerce-remove-coupon, .woocommerce-shipping-contents) {
	color: var(--pp-red);
}

/* left: section titles, fields in a 6-column grid (half = 3, third = 2); payment sits outside #customer_details, hence its own margin */
.pp-checkout-section + .pp-checkout-section,
.pp-checkout .pp-checkout-payment {
	margin-top: 33px;
}

.pp-checkout .pp-checkout-title {
	margin: 0 0 15px;
	color: var(--pp-black);
	font-family: var(--e-global-typography-ppkoszg-font-family), sans-serif;
	font-size: var(--e-global-typography-ppkoszg-font-size);
	font-weight: var(--e-global-typography-ppkoszg-font-weight);
	line-height: var(--e-global-typography-ppkoszg-line-height);
}

.pp-checkout .pp-checkout-fields {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 15px;
}

.pp-checkout .pp-checkout-fields .form-row {
	grid-column: span 6;
	float: none;
	width: auto;
	margin: 0;
	padding: 0;
}

.pp-checkout .pp-checkout-fields .form-row.pp-w-half {
	grid-column: span 3;
}

.pp-checkout .pp-checkout-fields .form-row.pp-w-third {
	grid-column: span 2;
}

/* country (only Croatia): hidden; !important as WooCommerce's address JS shows it with an inline style */
.pp-checkout .pp-checkout-fields .form-row.pp-w-hidden {
	display: none !important;
}

/* fields: cream, 50px, no border; placeholder 50% black */
.pp-checkout .pp-checkout-fields .form-row :is(.input-text, select),
.pp-checkout .pp-checkout-fields .select2-container .select2-selection--single,
.pp-checkout .pp-phone-prefix {
	height: 50px;
	padding: 0 17px;
	border: 0;
	border-radius: 0;
	background-color: var(--pp-white);
	color: var(--pp-black);
	font-family: var(--e-global-typography-ppchktx-font-family), sans-serif;
	font-size: var(--e-global-typography-ppchktx-font-size);
	font-weight: var(--e-global-typography-ppchktx-font-weight);
	line-height: var(--e-global-typography-ppchktx-line-height);
}

.pp-checkout .pp-checkout-fields .form-row .input-text::placeholder {
	color: var(--e-global-color-pplinij);
	opacity: 1;
}

.pp-checkout .pp-checkout-fields .form-row :is(.input-text, select):focus,
.pp-checkout .pp-checkout-fields .select2-container--focus .select2-selection--single {
	outline: 0;
	box-shadow: inset 0 0 0 1px var(--pp-black);
}

.pp-checkout .pp-checkout-fields .form-row.woocommerce-invalid :is(.input-text, select, .select2-selection--single) {
	box-shadow: inset 0 0 0 1px var(--pp-red);
}

.pp-checkout .checkout-inline-error-message {
	margin: 5px 0 0;
	color: var(--pp-red);
	font-size: .75rem;
}

/* županija: select (selectWoo) with the shop's caret */
.pp-checkout .pp-checkout-fields .form-row select,
.pp-checkout .pp-checkout-fields .select2-container .select2-selection--single {
	padding-right: 34px;
	background: var(--pp-white) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10' fill='none'%3E%3Cpath d='M2 3.5 5 6.5 8 3.5' stroke='%23272020' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") right 17px center / 10px no-repeat;
	appearance: none;
}

.pp-checkout .pp-checkout-fields .select2-container .select2-selection--single .select2-selection__rendered {
	padding: 0;
	color: var(--pp-black);
	line-height: 50px;
}

.pp-checkout .pp-checkout-fields .select2-container .select2-selection__placeholder {
	color: var(--e-global-color-pplinij);
}

.pp-checkout .pp-checkout-fields .select2-container .select2-selection__arrow {
	display: none;
}

/* županija list (selectWoo opens it at the end of <body>): white, thin line, cream hover, same font as the fields */
:is(.woocommerce-checkout, .woocommerce-cart) .select2-container--default .select2-dropdown {
	border: 1px solid var(--e-global-color-ppblk10);
	border-radius: 0;
	background: var(--e-global-color-ppbijel);
	box-shadow: 0 10px 30px rgba(39, 32, 32, .08);
	color: var(--pp-black);
	font-family: var(--e-global-typography-ppchktx-font-family), sans-serif;
	font-size: var(--e-global-typography-ppchktx-font-size);
	font-weight: var(--e-global-typography-ppchktx-font-weight);
}

:is(.woocommerce-checkout, .woocommerce-cart) .select2-container--default .select2-search--dropdown {
	padding: 10px;
}

:is(.woocommerce-checkout, .woocommerce-cart) .select2-container--default .select2-search--dropdown .select2-search__field {
	height: 40px;
	padding: 0 12px;
	border: 0;
	border-radius: 0;
	background: var(--pp-white);
	color: var(--pp-black);
	font: inherit;
}

:is(.woocommerce-checkout, .woocommerce-cart) .select2-container--default .select2-search--dropdown .select2-search__field:focus {
	outline: 0;
	box-shadow: inset 0 0 0 1px var(--pp-black);
}

:is(.woocommerce-checkout, .woocommerce-cart) .select2-container--default .select2-results > .select2-results__options {
	max-height: 260px;
	scrollbar-width: thin;
	scrollbar-color: var(--pp-black-50) transparent;
}

:is(.woocommerce-checkout, .woocommerce-cart) .select2-container--default .select2-results__option {
	padding: 12px 17px;
	line-height: var(--e-global-typography-ppchktx-line-height);
}

/* chosen county bold, the one under the mouse / keyboard on cream */
:is(.woocommerce-checkout, .woocommerce-cart) .select2-container--default .select2-results__option[aria-selected="true"] {
	background: transparent;
	color: var(--pp-black);
	font-weight: 700;
}

:is(.woocommerce-checkout, .woocommerce-cart) .select2-container--default .select2-results__option--highlighted[aria-selected] {
	background: var(--pp-white);
	color: var(--pp-black);
}

/* phone: "+385" box (inc/checkout.php) next to the number */
.pp-checkout #billing_phone_field .woocommerce-input-wrapper {
	display: flex;
	gap: 15px;
}

.pp-checkout .pp-phone-prefix {
	display: flex;
	flex: 0 0 84px;
	align-items: center;
	color: var(--e-global-color-pplinij);
}

/* checkboxes: 15px square, black with a tick when ticked */
.pp-checkout-options {
	display: flex;
	flex-direction: column;
	gap: 15px;
	margin-top: 15px;
}

.pp-checkout .pp-checkbox-row,
.pp-checkout .woocommerce-terms-and-conditions-wrapper .form-row {
	margin: 0;
	padding: 0;
}

/* form.pp-checkout: stronger than WooCommerce's "form .form-row label.checkbox" (inline) */
form.pp-checkout .form-row label.checkbox {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin: 0;
	color: var(--pp-black);
	font-family: var(--e-global-typography-ppchkcb-font-family), sans-serif;
	font-size: var(--e-global-typography-ppchkcb-font-size);
	font-weight: var(--e-global-typography-ppchkcb-font-weight);
	line-height: var(--e-global-typography-ppchkcb-line-height);
	cursor: pointer;
}

.pp-checkout label.checkbox :is(abbr.required, .optional) {
	display: none;
}

.pp-checkout .form-row input[type="checkbox"] {
	display: block;
	flex: 0 0 15px;
	width: 15px;
	height: 15px;
	margin: 0;
	border: 1px solid var(--e-global-color-pplinij);
	border-radius: 0;
	background: transparent;
	appearance: none;
	cursor: pointer;
}

.pp-checkout .form-row input[type="checkbox"]:checked {
	border-color: var(--pp-black);
	background: var(--pp-black) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10' fill='none'%3E%3Cpath d='M2 5.2 4.2 7.2 8 3' stroke='%23FFF9F9' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 10px no-repeat;
}

.pp-checkout .form-row input[type="checkbox"]:focus-visible,
.pp-checkout #payment input.input-radio:focus-visible {
	outline: 1px solid var(--pp-black);
	outline-offset: 2px;
}

.pp-checkout .pp-checkbox-note {
	display: block;
}

.pp-checkout .pp-billing-address .pp-checkout-title {
	margin-top: 18px;
}

/* payment: cream boxes with a thin border, round radio, the chosen method's details under it */
.pp-checkout #payment {
	border-radius: 0;
	background: none;
}

.pp-checkout #payment ul.payment_methods {
	margin: 0;
	padding: 0;
	border: 0;
	list-style: none;
}

.pp-checkout #payment ul.payment_methods li {
	position: relative;
	margin: 0 0 -1px;
	padding: 0;
	border: 1px solid var(--e-global-color-ppblk10);
	background: var(--pp-white);
	line-height: inherit;
}

.pp-checkout #payment ul.payment_methods li input.input-radio {
	position: absolute;
	top: 17px;
	left: 17px;
	width: 15px;
	height: 15px;
	margin: 0;
	border: 1px solid var(--e-global-color-pplinij);
	border-radius: 50%;
	background: transparent;
	appearance: none;
	cursor: pointer;
}

.pp-checkout #payment ul.payment_methods li input.input-radio:checked {
	border-color: var(--pp-black);
	background: radial-gradient(circle, var(--pp-white) 3.5px, var(--pp-black) 4px);
}

.pp-checkout #payment ul.payment_methods li label {
	display: flex;
	align-items: center;
	gap: 10px;
	min-height: 48px;
	margin: 0;
	padding: 0 17px 0 42px;
	color: var(--pp-black);
	font-family: var(--e-global-typography-ppchkpl-font-family), sans-serif;
	font-size: var(--e-global-typography-ppchkpl-font-size);
	font-weight: var(--e-global-typography-ppchkpl-font-weight);
	line-height: var(--e-global-typography-ppchkpl-line-height);
	cursor: pointer;
}

.pp-checkout #payment ul.payment_methods li label img {
	max-height: 24px;
	margin: 0 0 0 auto;
}

.pp-checkout #payment div.payment_box {
	margin: 0;
	padding: 0 17px 25px 42px;
	border-radius: 0;
	background: transparent;
	color: var(--pp-black);
	font-family: var(--e-global-typography-ppchkcb-font-family), sans-serif;
	font-size: var(--e-global-typography-ppchkcb-font-size);
	line-height: 1.5;
}

.pp-checkout #payment div.payment_box::before {
	content: none;
}

/* only one method: WooCommerce hides its radio, the text moves left */
.pp-checkout #payment ul.payment_methods li:has(> input.input-radio[style*="none"]) :is(label, div.payment_box) {
	padding-left: 17px;
}

.pp-checkout #payment div.payment_box p:last-child {
	margin-bottom: 0;
}

/* terms + "Naruči" (full width, black, red on hover) */
.pp-checkout #payment div.place-order {
	margin: 15px 0 0;
	padding: 0;
}

.pp-checkout .woocommerce-privacy-policy-text p {
	margin: 0 0 15px;
	color: var(--e-global-color-ppblk60);
	font-size: .75rem;
}

.pp-checkout .woocommerce-terms-and-conditions-link {
	color: inherit;
	text-decoration: underline;
}

.pp-checkout #payment #place_order {
	float: none;
	width: 100%;
	margin: 34px 0 0;
	padding: 20px;
	border: 0;
	border-radius: 0;
	background: var(--pp-black);
	color: var(--pp-white);
	font-family: var(--e-global-typography-ppgumb1-font-family), sans-serif;
	font-size: var(--e-global-typography-ppgumb1-font-size);
	font-weight: var(--e-global-typography-ppgumb1-font-weight);
	line-height: var(--e-global-typography-ppgumb1-line-height);
	text-transform: uppercase;
	transition: background .3s;
}

.pp-checkout #payment #place_order:hover,
.pp-checkout #payment #place_order:focus-visible {
	background: var(--pp-red);
}

/* sections hidden until ticked (billing address, R1) */
.pp-checkout [hidden] {
	display: none;
}

/* tablet + phones: summary on top, full width, folds under "Sažetak narudžbe" */
@media (max-width: 1024px) {
	.pp-checkout {
		grid-template-columns: minmax(0, 1fr);
		grid-template-rows: none;
	}

	.pp-checkout > *,
	.pp-checkout > .pp-checkout-main {
		grid-column: 1;
		grid-row: auto;
	}

	.pp-checkout > .pp-checkout-main {
		padding: 36px 0 80px;
	}

	.pp-checkout > .pp-checkout-summary {
		grid-column: 1;
		grid-row: auto;
		order: -1;
		padding: 30px 0 27px;
		clip-path: inset(0 -100vmax);
	}

	.pp-checkout-summary > * {
		max-width: none;
	}

	.pp-checkout-summary .pp-checkout-summary__head {
		display: block;
		margin: 0 0 24px;
	}

	.pp-checkout-summary.is-collapsed .pp-checkout-summary__head {
		margin-bottom: 0;
	}

	.pp-checkout-summary.is-collapsed #order_review {
		display: none;
	}

	.pp-checkout-summary__toggle,
	.pp-checkout-summary__toggle:hover,
	.pp-checkout-summary__toggle:focus {
		display: flex;
		align-items: center;
		width: 100%;
		padding: 0 0 9px;
		border: 0;
		border-bottom: 1px solid var(--e-global-color-ppblk10);
		border-radius: 0;
		background: none;
		color: var(--pp-black);
		font-family: var(--e-global-typography-ppkoszg-font-family), sans-serif;
		font-size: var(--e-global-typography-ppkoszg-font-size);
		font-weight: var(--e-global-typography-ppkoszg-font-weight);
		line-height: var(--e-global-typography-ppkoszg-line-height);
		text-align: left;
	}

	/* caret after the title, up when open */
	.pp-checkout-summary__toggle #order_review_heading::after {
		content: "";
		display: inline-block;
		width: 10px;
		height: 10px;
		margin-left: 10px;
		background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10' fill='none'%3E%3Cpath d='M2 3.5 5 6.5 8 3.5' stroke='%23272020' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 10px no-repeat;
		transform: rotate(180deg);
		transition: transform .2s;
	}

	.pp-checkout-summary.is-collapsed #order_review_heading::after {
		transform: none;
	}

	.pp-checkout-summary__total {
		margin-left: auto;
		font-family: var(--e-global-typography-ppkosiz-font-family), sans-serif;
		font-size: var(--e-global-typography-ppkosiz-font-size);
		font-weight: var(--e-global-typography-ppkosiz-font-weight);
		line-height: var(--e-global-typography-ppkosiz-line-height);
	}
}

@media (max-width: 767px) {
	body.woocommerce-checkout main.site-main {
		padding-inline: 16px;
	}
}

/* ===== Thank you page (order received) ===== */

/* title: page title (Narudžba zaprimljena), centred over the full width (Hello limits it to 1140px) */
.woocommerce-order-received .page-header .entry-title {
	max-width: none;
	margin: 42px 0 0;
	color: var(--pp-black);
	font-family: var(--e-global-typography-pphvaln-font-family), serif;
	font-size: var(--e-global-typography-pphvaln-font-size);
	font-weight: var(--e-global-typography-pphvaln-font-weight);
	line-height: var(--e-global-typography-pphvaln-line-height);
	text-align: center;
}

/* sections 42px apart */
.woocommerce-order-received .woocommerce-order {
	display: flex;
	flex-direction: column;
	gap: 42px;
	margin: 98px 0 42px;
}

/* "Hvala Vam!" (inc/checkout.php): green script */
.woocommerce-order-received .woocommerce-thankyou-order-received {
	margin: 0;
	color: var(--e-global-color-ppzelen);
	font-family: var(--e-global-typography-pphvala-font-family), cursive;
	font-size: var(--e-global-typography-pphvala-font-size);
	font-weight: var(--e-global-typography-pphvala-font-weight);
	line-height: var(--e-global-typography-pphvala-line-height);
	text-align: center;
}

/* order number, date, email, total, payment: cream strip, label above value */
.woocommerce-order-received .woocommerce-order ul.woocommerce-order-overview {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 24px 75px;
	margin: 0;
	padding: 39px 20px;
	list-style: none;
	background: var(--pp-white);
}

.woocommerce-order-received .woocommerce-order ul.woocommerce-order-overview::before,
.woocommerce-order-received .woocommerce-order ul.woocommerce-order-overview::after {
	content: none;
}

.woocommerce-order-received .woocommerce-order ul.woocommerce-order-overview li {
	display: flex;
	flex-direction: column;
	gap: 15px;
	float: none;
	margin: 0;
	padding: 0;
	border: 0;
	color: var(--pp-black);
	font-family: var(--e-global-typography-pphvlab-font-family), sans-serif;
	font-size: var(--e-global-typography-pphvlab-font-size);
	font-weight: var(--e-global-typography-pphvlab-font-weight);
	line-height: var(--e-global-typography-pphvlab-line-height);
	text-transform: uppercase;
}

.woocommerce-order-received .woocommerce-order ul.woocommerce-order-overview li strong {
	font-family: var(--e-global-typography-pphvval-font-family), sans-serif;
	font-size: var(--e-global-typography-pphvval-font-size);
	font-weight: var(--e-global-typography-pphvval-font-weight);
	line-height: var(--e-global-typography-pphvval-line-height);
	text-transform: none;
}

/* bank transfer: HUB3 slip (WSB plugin, which sets width: 800px inline), up to 790px, centred; barcode button like the site's buttons */
.woocommerce-order-received .woocommerce-order .slipdiv {
	margin: 0;
	text-align: center;
}

.woocommerce-order-received .woocommerce-order .slipdiv img {
	max-width: min(100%, 790px);
	height: auto;
	margin: 0 auto;
}

.woocommerce-order-received .woocommerce-order p.barcode-text {
	margin: 0;
	text-align: center;
}

.woocommerce-order-received .woocommerce-order p.barcode-text:empty {
	display: none;
}

.woocommerce-order-received .woocommerce-order #barcode_toggler {
	padding: 15px 20px;
	border: 1px solid var(--pp-black);
	border-radius: 0;
	background: transparent;
	color: var(--pp-black);
	font-family: var(--e-global-typography-ppgumb1-font-family), sans-serif;
	font-size: var(--e-global-typography-ppgumb1-font-size);
	font-weight: var(--e-global-typography-ppgumb1-font-weight);
	line-height: var(--e-global-typography-ppgumb1-line-height);
	text-transform: uppercase;
	transition: background .3s, color .3s, border-color .3s;
}

.woocommerce-order-received .woocommerce-order #barcode_toggler:hover,
.woocommerce-order-received .woocommerce-order #barcode_toggler:focus-visible {
	border-color: var(--pp-red);
	background: var(--pp-red);
	color: var(--pp-white);
}

/* section titles: Detalji narudžbe, Podaci za R1 račun, Adresa za naplatu / dostavu */
.woocommerce-order-received .woocommerce-order :is(.woocommerce-order-details__title, .woocommerce-column__title) {
	margin: 0 0 25px;
	color: var(--pp-black);
	font-family: var(--e-global-typography-pphvaln-font-family), serif;
	font-size: var(--e-global-typography-pphvaln-font-size);
	font-weight: var(--e-global-typography-pphvaln-font-weight);
	line-height: var(--e-global-typography-pphvaln-line-height);
}

/* order table: cream head and totals, lines between the rows, text from 138px */
.woocommerce-order-received .woocommerce-order-details {
	margin: 0;
}

.woocommerce-order-received .woocommerce-order table.order_details {
	margin: 0;
	border: 0;
	border-collapse: collapse;
	border-radius: 0;
}

.woocommerce-order-received .woocommerce-order table.order_details tr :is(th, td) {
	padding: 22px 20px 21px 0;
	border: 0;
	border-bottom: 1px solid var(--e-global-color-ppblk10);
	background: none;
	color: var(--pp-black);
	font-family: var(--e-global-typography-pphvtx-font-family), sans-serif;
	font-size: var(--e-global-typography-pphvtx-font-size);
	font-weight: var(--e-global-typography-pphvtx-font-weight);
	line-height: var(--e-global-typography-pphvtx-line-height);
	text-align: left;
	vertical-align: top;
}

.woocommerce-order-received .woocommerce-order table.order_details tr :is(th, td):first-child {
	width: 55%;
	padding-left: 138px;
}

.woocommerce-order-received .woocommerce-order table.order_details :is(thead, tfoot) tr :is(th, td) {
	background: var(--pp-white);
	font-family: var(--e-global-typography-pphvval-font-family), sans-serif;
	font-weight: var(--e-global-typography-pphvval-font-weight);
}

.woocommerce-order-received .woocommerce-order table.order_details thead th {
	text-transform: uppercase;
}

.woocommerce-order-received .woocommerce-order table.order_details td.product-name a {
	color: inherit;
	text-decoration: none;
}

.woocommerce-order-received .woocommerce-order table.order_details td.product-name a:hover {
	color: var(--pp-red);
}

.woocommerce-order-received .woocommerce-order table.order_details .product-quantity {
	font-weight: inherit;
}

/* R1 details (inc/checkout.php) and addresses: title + cream box */
.woocommerce-order-received .pp-r1-details {
	margin-top: 42px;
}

.woocommerce-order-received .woocommerce-order :is(.pp-r1-details p, .woocommerce-customer-details address) {
	margin: 0;
	padding: 21px 20px 21px 138px;
	border: 0;
	border-radius: 0;
	background: var(--pp-white);
	color: var(--pp-black);
	font-family: var(--e-global-typography-pphvtx-font-family), sans-serif;
	font-size: var(--e-global-typography-pphvtx-font-size);
	font-style: normal;
	font-weight: var(--e-global-typography-pphvtx-font-weight);
	line-height: var(--e-global-typography-pphvtx-line-height);
}

.woocommerce-order-received .woocommerce-customer-details .woocommerce-columns--addresses {
	display: flex;
	flex-direction: column;
	gap: 42px;
}

.woocommerce-order-received .woocommerce-customer-details .woocommerce-columns--addresses::before,
.woocommerce-order-received .woocommerce-customer-details .woocommerce-columns--addresses::after {
	content: none;
}

.woocommerce-order-received .woocommerce-customer-details .woocommerce-column {
	float: none;
	width: auto;
	margin: 0;
	padding: 0;
}

/* phone and email under the address without WooCommerce's icons */
.woocommerce-order-received .woocommerce-customer-details address :is(.woocommerce-customer-details--phone, .woocommerce-customer-details--email) {
	margin: 0;
	padding: 0;
}

.woocommerce-order-received .woocommerce-customer-details address :is(.woocommerce-customer-details--phone, .woocommerce-customer-details--email)::before {
	content: none;
}

/* phones: smaller titles, data stacked, table rows to the screen edges */
@media (max-width: 767px) {
	.woocommerce-order-received .woocommerce-order {
		margin-top: 60px;
	}

	.woocommerce-order-received .woocommerce-order ul.woocommerce-order-overview {
		flex-direction: column;
		align-items: flex-start;
		padding: 19px 40px;
	}

	.woocommerce-order-received .woocommerce-order table.order_details {
		width: calc(100% + 32px);
		max-width: none;
		margin: 0 -16px;
	}

	.woocommerce-order-received .woocommerce-order table.order_details tr :is(th, td):first-child {
		width: 52%;
		padding-left: 16px;
	}

	.woocommerce-order-received .woocommerce-order :is(.pp-r1-details p, .woocommerce-customer-details address) {
		padding: 21px 16px;
	}
}
