/* ---------- Product images ---------- */
.elementor .card-img .card-img-photo { padding: 14%; object-position: center; }
.elementor .js-pdp-main img:not([src*="-white"]) { padding: 9%; object-position: center; }

/* ---------- Hero slider: artwork never sets the slider height ---------- */
@media (min-width: 641px) {
	.elementor .js-hero-slider > .anc-slide > .e-con:last-child { contain: size; }
}

/* ---------- Brand page logo ---------- */
.elementor-kit-6 .elementor .elementor-element-b842b28 { grid-template-columns: var(--brand-logo-width) minmax(0, 1fr); }
@media (max-width: 640px) { .elementor-kit-6 .elementor .elementor-element-b842b28 { grid-template-columns: minmax(0, 1fr); } }
.elementor img.anc-brand-logo { display: block; width: 100%; height: calc(var(--brand-logo-height) - var(--sp-32)); object-fit: contain; }
.anc-brand-name { font-family: var(--font-main); font-size: var(--fs-brand); font-weight: 800; color: var(--navy); }
@media (max-width: 640px) { .elementor img.anc-brand-logo { height: calc(var(--brand-logo-height-mobile) - var(--sp-32)); } }

/* ---------- Header: Kategorije ---------- */
.elementor-kit-6 .elementor .js-mega-toggle, .elementor-kit-6 .elementor .js-mega-toggle:hover, .elementor-kit-6 .elementor .js-mega-toggle:focus, .elementor-kit-6 .elementor .js-mega-toggle:active { background: none; box-shadow: none; }
.elementor-kit-6 .elementor .js-mega-toggle:focus { color: var(--navy); }
.elementor-kit-6 .elementor .js-mega-toggle:hover, .elementor-kit-6 .elementor .js-mega-toggle[aria-expanded="true"] { color: var(--gold-dark); }

/* ---------- Buy box ---------- */
.elementor .buy-box { --control-buy: 52px; --radius-buy: var(--radius-m); padding: var(--sp-24); border-radius: var(--radius-l); }
.elementor .buy-box .stock { padding-block: var(--sp-4); padding-inline: var(--sp-10); border-radius: var(--radius-pill); background-color: var(--ok-light); color: var(--ok-dark); }

/* Options */
.anc-options { display: grid; gap: var(--sp-16); margin-block-end: var(--sp-18); }
.anc-opt-head { display: flex; flex-wrap: wrap; gap: var(--sp-6); margin-block-end: var(--sp-10); font-family: var(--font-main); font-size: var(--fs-nav); color: var(--text-soft); }
.anc-opt-head b { font-weight: 600; color: var(--navy); }
.anc-opt-list { display: flex; flex-wrap: wrap; gap: var(--sp-10); }
.elementor-kit-6 .elementor table.anc-hidden-table { position: absolute; width: 1px; height: 1px; margin: 0; overflow: hidden; clip: rect(0 0 0 0); }

.elementor-kit-6 .elementor button.anc-swatch, .elementor-kit-6 .elementor button.anc-swatch:hover, .elementor-kit-6 .elementor button.anc-swatch:focus { position: relative; display: block; flex: none; width: 38px; height: 38px; padding: 0; border: 0; border-radius: var(--radius-pill); background-color: var(--swatch); box-shadow: inset 0 0 0 var(--stroke-1) rgba(0, 31, 63, 0.18); cursor: pointer; transition: transform 0.15s; }
.elementor-kit-6 .elementor button.anc-swatch:hover { transform: scale(1.08); }
.elementor-kit-6 .elementor button.anc-swatch.is-on { box-shadow: inset 0 0 0 var(--stroke-1) rgba(0, 31, 63, 0.18), 0 0 0 3px var(--mist), 0 0 0 5px var(--navy); }
.elementor-kit-6 .elementor button.anc-swatch:focus-visible { outline: 2px solid var(--gold); outline-offset: 6px; }

.elementor-kit-6 .elementor button.anc-pill, .elementor-kit-6 .elementor button.anc-pill:hover, .elementor-kit-6 .elementor button.anc-pill:focus { padding-block: var(--sp-10); padding-inline: var(--sp-14); border: 0; border-radius: var(--radius-m); background-color: var(--white); box-shadow: inset 0 0 0 var(--border-w) var(--line); color: var(--navy); font-family: var(--font-main); font-size: var(--fs-nav); font-weight: 500; line-height: 1.25; cursor: pointer; transition: box-shadow 0.15s, background-color 0.15s; }
.elementor-kit-6 .elementor button.anc-pill:hover { box-shadow: inset 0 0 0 var(--border-w) var(--navy); }
.elementor-kit-6 .elementor button.anc-pill.is-on { background-color: var(--navy); box-shadow: none; color: var(--white); }

/* Quantity */
.elementor-kit-6 .elementor .buy-box .anc-qty { height: var(--control-buy); border-radius: var(--radius-buy); background-color: var(--white); box-shadow: inset 0 0 0 var(--border-w) var(--line); }
.elementor-kit-6 .elementor .buy-box .anc-qty-btn, .elementor-kit-6 .elementor .buy-box .anc-qty-btn:focus { width: 42px; height: var(--control-buy); border-radius: var(--radius-buy); background: none; color: var(--navy); transition: background-color 0.15s; }
.elementor-kit-6 .elementor .buy-box .anc-qty-btn:hover { background-color: var(--steel); color: var(--navy); }
.elementor-kit-6 .elementor .buy-box .anc-qty input, .elementor-kit-6 .elementor .buy-box .anc-qty input:focus { width: 34px; height: var(--control-buy); border: 0; outline: none; box-shadow: none; font-weight: 600; color: var(--navy); }

/* Add to cart */
.elementor-kit-6 .elementor .buy-box .anc-btn-buy, .elementor-kit-6 .elementor .buy-box .single_add_to_cart_button { display: inline-flex; align-items: center; justify-content: center; gap: var(--sp-10); min-height: var(--control-buy); border-radius: var(--radius-buy); font-size: var(--fs-body); font-weight: 700; letter-spacing: 0.01em; box-shadow: 0 8px 18px -10px rgba(169, 127, 64, 0.9); transition: background-color 0.15s, transform 0.15s, box-shadow 0.15s; }
.elementor-kit-6 .elementor .buy-box .anc-btn-buy:hover, .elementor-kit-6 .elementor .buy-box .single_add_to_cart_button:hover { transform: translateY(-1px); box-shadow: 0 12px 22px -10px rgba(169, 127, 64, 1); }
.elementor-kit-6 .elementor .buy-box .anc-btn-buy::before, .elementor-kit-6 .elementor .buy-box .single_add_to_cart_button::before { content: ""; display: block; flex: none; position: static; width: 21px; height: 21px; margin: 0; background-color: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8'%3E%3Cpath d='M3 4h2.2l2.3 11.2a1.5 1.5 0 0 0 1.5 1.2h8.6a1.5 1.5 0 0 0 1.5-1.1L21 8H6.2'/%3E%3Ccircle cx='9.5' cy='20' r='1.3'/%3E%3Ccircle cx='17.5' cy='20' r='1.3'/%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 24 24' fill='none' stroke='black' stroke-width='1.8'%3E%3Cpath d='M3 4h2.2l2.3 11.2a1.5 1.5 0 0 0 1.5 1.2h8.6a1.5 1.5 0 0 0 1.5-1.1L21 8H6.2'/%3E%3Ccircle cx='9.5' cy='20' r='1.3'/%3E%3Ccircle cx='17.5' cy='20' r='1.3'/%3E%3C/svg%3E") center / contain no-repeat; }

/* Perks */
.elementor .buy-box .perk { align-items: center; gap: var(--sp-12); font-size: var(--fs-nav); color: var(--text-soft); }
.elementor .buy-box .perk .icon-sm { box-sizing: content-box; padding: var(--sp-8); border-radius: var(--radius-pill); background-color: var(--white); }

/* Gallery thumbnails */
.elementor-kit-6 .anc-thumb, .elementor-kit-6 .anc-thumb:focus { border-radius: var(--radius-m); transition: box-shadow 0.15s; }
.elementor-kit-6 .anc-thumb:hover { box-shadow: inset 0 0 0 var(--stroke-2) var(--gold); }
.anc-thumb img { object-fit: contain; }

/* Tabs */
.elementor [role="tab"] { cursor: pointer; transition: color 0.15s; }
.elementor [role="tab"]:hover { color: var(--gold-dark); }

/* Specifications */
.anc-specs table { overflow: hidden; border-radius: var(--radius-m); box-shadow: inset 0 0 0 var(--stroke-1) var(--line-2); }

/* Mobile buy bar button */
@media (max-width: 640px) {
	.elementor .buy-box { padding: var(--sp-18); }
	.elementor-kit-6 .elementor .buy-box .anc-atc { gap: var(--sp-10); }
}

/* WooCommerce notices */
.elementor-kit-6 .woocommerce-message, .elementor-kit-6 .woocommerce-info, .elementor-kit-6 .woocommerce-error { max-width: var(--content-width); margin: var(--sp-16) auto; padding: var(--sp-14) var(--sp-16); border: 0; border-radius: var(--radius-m); background-color: var(--gold-light); color: var(--notice-text); font-family: var(--font-main); font-size: var(--fs-nav); list-style: none; }
.elementor-kit-6 .woocommerce-error { background-color: #fbeceb; color: var(--error); }
.elementor-kit-6 .woocommerce-message::before, .elementor-kit-6 .woocommerce-info::before, .elementor-kit-6 .woocommerce-error::before { display: none; }

/* ---------- Shop toolbar on phones: Filteri and sorting share the row equally ---------- */
@media (max-width: 640px) {
	.elementor-kit-6 .elementor .e-con:has(> .e-con > span .anc-ordering) { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
	.elementor-kit-6 .elementor .e-con:has(> span .anc-ordering) { width: 100%; }
	.elementor-kit-6 .anc-ordering select { width: 100%; padding-inline: var(--sp-12) var(--sp-24); }
}

/* ---------- Footer on phones: Kontakt spans the row so the address and e-mail stay on one line ---------- */
@media (max-width: 640px) {
	.elementor-kit-6 .elementor .elementor-element-6936f512 { grid-column: 1 / -1; }
}

/* ---------- Novo u ponudi banner ---------- */
@media (max-width: 1100px) {
	.elementor .elementor-element-3b3429::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(90deg, var(--navy) 26%, rgba(0, 31, 63, 0) 72%); }
}
@media (max-width: 767px) {
	.elementor-kit-6 .elementor .elementor-element-3b3429 { --promo-art: max(112px, 17.86vw); min-height: 0; padding-block-start: calc(var(--promo-art) + var(--sp-12)); }
	.elementor-kit-6 .elementor .elementor-element-3b3429::before { inset-block-end: auto; height: var(--promo-art); background: linear-gradient(90deg, var(--navy), rgba(0, 31, 63, 0) 24%); }
	.elementor-kit-6 .elementor .elementor-element-3b3429 > img { height: var(--promo-art); object-position: right bottom; -webkit-mask-image: linear-gradient(#000 86%, transparent); mask-image: linear-gradient(#000 86%, transparent); }
}

/* ---------- Cart panel ---------- */
.anc-cd-scrim { position: fixed; inset: 0; z-index: 98; background-color: var(--overlay); opacity: 0; pointer-events: none; transition: opacity 0.2s; }
.anc-cd-scrim.is-open { opacity: 1; pointer-events: auto; }
.anc-cd { position: fixed; top: 0; right: 0; bottom: 0; z-index: 99; display: flex; flex-direction: column; width: min(420px, 100%); background-color: var(--white); font-family: var(--font-main); transform: translateX(100%); visibility: hidden; transition: transform 0.28s cubic-bezier(0.2, 0.7, 0.2, 1), visibility 0s linear 0.28s; }
.anc-cd.is-open { transform: none; visibility: visible; transition: transform 0.28s cubic-bezier(0.2, 0.7, 0.2, 1); }
.admin-bar .anc-cd { top: 32px; }
.anc-cd-main { display: flex; flex: 1; flex-direction: column; min-height: 0; transition: opacity 0.15s; }
.anc-cd.is-busy .anc-cd-main { opacity: 0.55; pointer-events: none; }
.anc-cd-main:empty::before { content: ""; width: 28px; height: 28px; margin: auto; border: 2px solid var(--line); border-block-start-color: var(--gold); border-radius: 50%; animation: anc-cd-spin 0.7s linear infinite; }
@keyframes anc-cd-spin { to { transform: rotate(360deg); } }
.anc-cd-none { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: var(--sp-6); text-align: center; }
.anc-cd-none svg { width: 44px; height: 44px; margin-block-end: var(--sp-10); color: var(--gold); }
.anc-cd-none h4 { margin: 0; font-size: 17px; font-weight: 700; color: var(--navy); }
.anc-cd-none p { margin: 0; font-size: var(--fs-nav); color: var(--muted); }
.anc-cd-head { display: flex; justify-content: space-between; align-items: center; padding-block: var(--sp-14); padding-inline: var(--sp-22) var(--sp-18); border-block-end: var(--stroke-1) solid var(--line); }
.anc-cd-head h3 { margin: 0; font-size: 19px; font-weight: 700; color: var(--navy); }
.elementor-kit-6 .anc-cd-x, .elementor-kit-6 .anc-cd-x:hover, .elementor-kit-6 .anc-cd-x:focus { display: grid; place-items: center; width: var(--control-sm); height: var(--control-sm); padding: 0; border: 0; border-radius: var(--radius-pill); background: none; color: var(--navy); }
.elementor-kit-6 .anc-cd-x:hover { background-color: var(--mist); }
.anc-cd-x svg { width: var(--icon-md); height: var(--icon-md); }
.anc-cd-body { flex: 1; overflow-y: auto; padding-block: var(--sp-18); padding-inline: var(--sp-22); }
.anc-cd-ok { display: flex; align-items: center; gap: var(--sp-10); margin: 0 0 var(--sp-14); font-size: var(--fs-nav); font-weight: 500; color: var(--ok); }
.anc-cd-ok svg { width: var(--icon-sm); height: var(--icon-sm); }
.anc-cd-item { display: grid; grid-template-columns: 68px minmax(0, 1fr) auto; gap: var(--sp-14); align-items: center; padding-block: var(--sp-12); border-block-end: var(--stroke-1) solid var(--line-2); }
.anc-cd-thumb { display: block; width: 68px; height: 68px; overflow: hidden; border-radius: var(--radius-s); background-color: var(--steel); }
.anc-cd-thumb img { display: block; width: 100%; height: 100%; padding: 6%; object-fit: contain; }
.anc-cd-info b { display: block; font-size: var(--fs-nav); font-weight: 500; line-height: 1.3; color: var(--ink); }
.anc-cd-info small { display: block; margin-block-start: var(--sp-2); font-size: var(--fs-small); color: var(--muted); }
.elementor-kit-6 a.anc-cd-rm { display: grid; place-items: center; width: var(--control-sm); height: var(--control-sm); border-radius: var(--radius-s); color: var(--muted); }
.elementor-kit-6 a.anc-cd-rm:hover { background-color: var(--mist); color: var(--error); }
.anc-cd-rm svg { width: var(--icon-sm); height: var(--icon-sm); }
.anc-cd-foot { display: grid; gap: var(--sp-10); padding-block: var(--sp-18); padding-inline: var(--sp-22); border-block-start: var(--stroke-1) solid var(--line); }
.anc-cd-sum { display: flex; justify-content: space-between; padding-block-end: var(--sp-6); font-size: 17px; font-weight: 700; color: var(--navy); }
.elementor-kit-6 a.anc-cd-btn { display: block; box-sizing: border-box; padding-block: 14px; padding-inline: var(--btn-pad-x); border-radius: var(--radius-m); font-family: var(--font-main); font-size: var(--fs-body); font-weight: 700; line-height: 1.2; text-align: center; text-decoration: none; transition: background-color 0.15s; }
.elementor-kit-6 a.anc-cd-go { background-color: var(--gold); color: var(--white); }
.elementor-kit-6 a.anc-cd-go:hover { background-color: var(--gold-dark); color: var(--white); }
.elementor-kit-6 a.anc-cd-view { background-color: var(--navy); color: var(--white); }
.elementor-kit-6 a.anc-cd-view:hover { background-color: var(--navy-3); color: var(--white); }

/* ---------- Cart and checkout blocks ---------- */
.elementor-kit-6 .wc-block-cart-item__image img, .elementor-kit-6 .wc-block-components-order-summary-item__image img { padding: 6%; border-radius: var(--radius-s); background-color: var(--steel); object-fit: contain; aspect-ratio: 1 / 1; }
.elementor-kit-6 a.wc-block-components-product-name { color: var(--navy); font-weight: 600; text-decoration: none; }
.elementor-kit-6 a.wc-block-components-product-name:hover { color: var(--gold-dark); }
.elementor-kit-6 .wc-block-components-quantity-selector { border-radius: var(--radius-m); box-shadow: inset 0 0 0 var(--border-w) var(--line); }
.elementor-kit-6 .wc-block-components-quantity-selector::after { display: none; }
.elementor-kit-6 button.wc-block-components-quantity-selector__button, .elementor-kit-6 button.wc-block-components-quantity-selector__button:hover, .elementor-kit-6 button.wc-block-components-quantity-selector__button:focus { padding: 0; border: 0; background: none; color: var(--navy); box-shadow: none; }
.elementor-kit-6 button.wc-block-cart-item__remove-link, .elementor-kit-6 button.wc-block-cart-item__remove-link:hover, .elementor-kit-6 button.wc-block-cart-item__remove-link:focus { padding: 0; border: 0; background: none; color: var(--muted); }
.elementor-kit-6 button.wc-block-cart-item__remove-link:hover { color: var(--error); }
.elementor-kit-6 .wc-block-components-button:not(.is-link) { min-height: 52px; border-radius: var(--radius-m); font-weight: 700; text-decoration: none; }
.elementor-kit-6 .wc-block-components-radio-control__option, .elementor-kit-6 .wc-block-components-radio-control-accordion-option { border-radius: var(--radius-m); }
.elementor-kit-6 .wc-block-components-checkout-step__title { font-family: var(--font-main); font-weight: 700; color: var(--navy); }

/* Empty cart */
.elementor-kit-6 .wp-block-woocommerce-empty-cart-block { padding-block: var(--sp-48); padding-inline: var(--sp-24); border-radius: var(--radius-l); background-color: var(--mist); text-align: center; }
.elementor-kit-6 .wp-block-woocommerce-empty-cart-block .wp-block-separator, .elementor-kit-6 .wp-block-woocommerce-empty-cart-block .wp-block-product-new, .elementor-kit-6 .wp-block-woocommerce-empty-cart-block > h2:not(.wc-block-cart__empty-cart__title), .elementor-kit-6 .wp-block-woocommerce-empty-cart-block .wp-block-woocommerce-product-new { display: none; }
.elementor-kit-6 .wc-block-cart__empty-cart__title { margin: 0; font-family: var(--font-main); font-size: var(--fs-h3); font-weight: 700; color: var(--navy); }
.elementor-kit-6 .wc-block-cart__empty-cart__title::before, .elementor-kit-6 .wc-block-cart__empty-cart__title.with-empty-cart-icon::before { display: none !important; }
.elementor-kit-6 .wp-block-woocommerce-empty-cart-block p { display: none; }
.anc-page-empty { margin-block-start: var(--sp-16); padding-block: var(--sp-48); padding-inline: var(--sp-24); border-radius: var(--radius-l); background-color: var(--mist); font-family: var(--font-main); text-align: center; }
.anc-page-empty h3 { margin: 0 0 var(--sp-6); font-size: var(--fs-h3); font-weight: 700; color: var(--navy); }
.anc-page-empty p { margin: 0; color: var(--muted); }
.elementor-kit-6 .anc-empty-btn { display: inline-block; margin-block-start: var(--sp-16); padding-block: 14px; padding-inline: var(--sp-24); border-radius: var(--radius-m); background-color: var(--navy); color: var(--white); font-family: var(--font-main); font-weight: 700; text-decoration: none; }
.elementor-kit-6 .anc-empty-btn:hover { background-color: var(--navy-3); color: var(--white); }

/* ---------- Order confirmation ---------- */
.woocommerce-order-received main.site-main .page-header, .woocommerce-order-received .anc-crumbs-page { display: none; }
.anc-done { max-width: 980px; margin-inline: auto; padding-block: var(--sp-56) var(--sp-24); font-family: var(--font-main); text-align: center; }
.anc-done-ic { display: grid; place-items: center; width: 68px; height: 68px; margin: 0 auto var(--sp-22); border-radius: var(--radius-pill); background-color: var(--ok-light); color: var(--ok); }
.anc-done-ic svg { width: 32px; height: 32px; }
.anc-done-bad { background-color: #fbeceb; color: var(--error); }
.anc-done h1 { margin: 0; font-size: var(--fs-h1); font-weight: 700; line-height: var(--lh-heading); letter-spacing: var(--ls-heading); color: var(--navy); }
.anc-done-lead { max-width: 56ch; margin: var(--sp-14) auto 0; color: var(--text-soft); }
.anc-done-lead b { color: var(--navy); font-weight: 600; }
.anc-done-pay { max-width: 640px; margin: var(--sp-20) auto 0; color: var(--text-soft); text-align: left; }
.anc-done-pay:empty { display: none; }
.anc-done-pay > p { margin: 0; padding: var(--sp-14) var(--sp-16); border-radius: var(--radius-m); background-color: var(--gold-light); color: var(--notice-text); text-align: center; }
.anc-done-pay h2, .anc-done-pay h3 { margin: var(--sp-16) 0 var(--sp-6); font-size: var(--fs-h3); color: var(--navy); }
.anc-done-pay ul { list-style: none; margin: 0; padding: var(--sp-14) var(--sp-16); border-radius: var(--radius-m); background-color: var(--mist); }
.anc-done-grid { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: var(--sp-22); align-items: start; margin-block-start: var(--sp-32); text-align: left; }
.anc-done-card { padding: var(--sp-24); border-radius: var(--radius-l); background-color: var(--mist); }
.anc-done-card h2 { margin: 0 0 var(--sp-10); font-size: var(--fs-h3); font-weight: 700; color: var(--navy); }
.anc-done-card .anc-cd-item { border-block-end-color: var(--line); }
.anc-done-card .anc-cd-thumb { background-color: var(--white); }
.anc-done-line { font-weight: 600; color: var(--navy); white-space: nowrap; }
.anc-done-rows { padding-block-start: var(--sp-12); }
.anc-done-rows > div { display: flex; justify-content: space-between; gap: var(--sp-12); padding-block: var(--sp-4); font-size: var(--fs-nav); }
.anc-done-total { font-size: 21px !important; font-weight: 700; color: var(--navy); }
.anc-done-vat { font-size: var(--fs-small) !important; color: var(--muted); }
.anc-done-side dl { display: grid; gap: var(--sp-14); margin: 0; }
.anc-done-side dt { font-size: var(--fs-small); color: var(--muted); }
.anc-done-side dd { margin: var(--sp-2) 0 0; font-weight: 500; color: var(--navy); overflow-wrap: anywhere; }
.anc-done-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--sp-10); margin-block-start: var(--sp-28); }
.elementor-kit-6 .anc-done-actions a.anc-cd-btn { min-width: 220px; }
@media (max-width: 760px) {
	.anc-done { padding-block-start: var(--sp-32); }
	.anc-done h1 { font-size: var(--fs-h1-mobile); }
	.anc-done-grid { grid-template-columns: minmax(0, 1fr); }
	.anc-done-card { padding: var(--sp-18); }
	.elementor-kit-6 .anc-done-actions a.anc-cd-btn { width: 100%; }
}
