/* =========================================================
   Waterman – marketplace redesign
   Refs: allegro.pl (dense header, orange CTA), bol.com (clean
   cards, category rails), ananas.rs (navy + yellow deals).
   ========================================================= */
:root {
	--wm-navy: #0a2240;
	--wm-navy-2: #12325e;
	--wm-blue: #233976;
	/* Waterman brand colours (waterman.com): deep navy, Waterman blue, sand gold. */
	--wm-brand-navy: #051b3f;
	--wm-brand-blue: #233976;
	--wm-sand: #d5c6ab;
	--wm-sand-dark: #c4b08c;
	--wm-gold: #a8843a;
	--wm-cream: #f6f3ed;
	--wm-accent: var(--wm-brand-blue);
	--wm-accent-dark: var(--wm-brand-navy);
	--wm-yellow: var(--wm-sand);
	--wm-red: #b42318;
	--wm-green: #2e6b4f;
	--wm-bg: var(--wm-cream);
	--wm-card: #ffffff;
	--wm-line: #e3e5e9;
	--wm-text: #1b2230;
	--wm-muted: #6b7280;
	--wm-radius: 10px;
	--wm-shadow: 0 1px 2px rgba(16, 24, 40, .06), 0 1px 3px rgba(16, 24, 40, .08);
	--wm-shadow-hover: 0 8px 24px rgba(16, 24, 40, .12);
	--wm-max: 1320px;
}

body {
	background: var(--wm-bg);
	color: var(--wm-text);
	font-family: "Roboto", system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
	font-size: 15px;
	line-height: 1.5;
}
html, body { overflow-x: clip; }
/* Let flex/grid children shrink below their content width (rails, USP row) instead of widening the page. */
.e-con, .e-con-inner, .e-con > .elementor-widget, .e-con-inner > .elementor-widget, .elementor-widget-container { min-width: 0; }
a { color: var(--wm-blue); }
a:hover { color: var(--wm-navy); }
h1, h2, h3, h4 { color: var(--wm-text); font-weight: 700; letter-spacing: -.01em; }

/* Hello Elementor leaves page titles/containers on Woo pages – keep them aligned. */
.site-main, .woocommerce-page .site-main, .page-content { max-width: var(--wm-max) !important; width: 100%; margin-inline: auto; padding-inline: 16px; }
.woocommerce-product-details__short-description ul, .woocommerce-Tabs-panel ul.fusion-checklist { list-style: none; padding-left: 0; }
.woocommerce-product-details__short-description li { margin-bottom: 6px; }
.woocommerce-product-details__short-description li p { margin: 0; }
.woocommerce-product-details__short-description .fusion-li-icon, .woocommerce-product-details__short-description i[class*="fa-"] { display: none; }
body.home .site-main, body.elementor-page .site-main { max-width: none; padding: 0; }
.page-header .entry-title { font-size: 26px; margin: 24px 0 12px; }

/* ---------- Header ---------- */
.wm-topbar { background: #061629 !important; font-size: 13px; }
.wm-topbar, .wm-topbar .wm-usp-row { color: #cfd8e6; }
.wm-topbar a { color: var(--wm-yellow); text-decoration: none; }
.wm-mainbar .wm-action, .wm-mainbar .wm-action small { color: #fff !important; }
.wm-mainbar .wm-action small { opacity: .7; }
.wm-mainbar .wm-action:hover { color: var(--wm-yellow) !important; }
.wm-mainbar .wm-search { border: 1px solid var(--wm-sand); border-radius: 4px; }
.wm-mainbar .wm-search button { background: var(--wm-sand); color: var(--wm-brand-navy); }
.wm-mainbar .wm-search button:hover { background: var(--wm-sand-dark); }
.wm-cart-count { background: var(--wm-sand) !important; color: var(--wm-brand-navy) !important; }

/* Nav bar under the header: navy like the live site (white bold links, gold "Akcija"). */
.wm-navbar .wm-mainnav-menu > li > a { color: #fff; font-weight: 700; }
.wm-navbar .wm-mainnav-menu > li > a:hover, .wm-navbar .wm-mainnav-menu > li.current-menu-item > a { color: var(--wm-sand); }
.wm-navbar .wm-mainnav-menu > li.wm-menu-akcija > a { color: #fff; }
.wm-navbar .wm-mainnav-menu .sub-menu { border-top-color: var(--wm-sand); }
.wm-navbar .wm-mainnav-menu .sub-menu a:hover { background: var(--wm-cream); color: var(--wm-brand-blue); }
.wm-usp-row { display: flex; gap: 28px; justify-content: center; flex-wrap: wrap; padding: 7px 16px; }
.wm-usp-row span::before { content: "✓"; color: var(--wm-yellow); font-weight: 700; margin-right: 6px; }

.wm-search { display: flex; align-items: stretch; width: 100%; background: #fff; border: 2px solid var(--wm-navy); border-radius: 8px; overflow: hidden; height: 48px; }
.wm-search input[type=search] { flex: 1; border: 0; padding: 0 16px; font-size: 15px; min-width: 0; border-radius: 0; background: #fff; }
.wm-search input[type=search]:focus { outline: none; }
.wm-search select { border: 0; border-left: 1px solid var(--wm-line); padding: 0 12px; font-size: 14px; color: var(--wm-muted); background: #fafbfc; max-width: 190px; border-radius: 0; }
.wm-search button { border: 0; border-radius: 0; background: var(--wm-accent); color: #fff; padding: 0 22px; display: flex; align-items: center; gap: 8px; font-weight: 700; font-size: 15px; cursor: pointer; }
.wm-search button:hover { background: var(--wm-accent-dark); }

.wm-actions { display: flex; gap: 22px; justify-content: flex-end; align-items: center; }
.wm-action { display: flex; align-items: center; gap: 8px; color: var(--wm-text) !important; text-decoration: none; font-size: 13px; font-weight: 600; line-height: 1.2; }
.wm-action small { display: block; font-weight: 400; color: var(--wm-muted); }
.wm-action:hover { color: var(--wm-accent) !important; }
.wm-cart-icon { position: relative; display: inline-flex; }
.wm-cart-count { position: absolute; top: -8px; right: -10px; min-width: 20px; height: 20px; border-radius: 10px; background: var(--wm-accent); color: #fff; font-style: normal; font-size: 11px; font-weight: 700; display: grid; place-items: center; padding: 0 5px; }

.wm-catnav { display: flex; align-items: center; gap: 8px; max-width: var(--wm-max); margin: 0 auto; padding: 0 16px; position: relative; }
.wm-catnav-all { position: relative; }
.wm-catnav-all > button { background: var(--wm-navy); color: #fff; border: 0; border-radius: 0; height: 44px; padding: 0 18px; font-weight: 700; font-size: 14px; display: flex; align-items: center; gap: 10px; cursor: pointer; }
.wm-catnav-all > button:hover, .wm-catnav-all > button:focus { background: var(--wm-navy-2); color: #fff; }
.wm-burger, .wm-burger::before, .wm-burger::after { display: block; width: 16px; height: 2px; background: currentColor; position: relative; }
.wm-burger::before, .wm-burger::after { content: ""; position: absolute; left: 0; }
.wm-burger::before { top: -5px; } .wm-burger::after { top: 5px; }
.wm-mega { display: none; position: absolute; top: 100%; left: 0; width: 340px; background: #fff; box-shadow: var(--wm-shadow-hover); border-radius: 0 0 var(--wm-radius) var(--wm-radius); list-style: none; margin: 0; padding: 8px; z-index: 999; }
.wm-catnav-all.is-open .wm-mega, .wm-catnav-all:hover .wm-mega { display: block; }
.wm-mega a { display: flex; gap: 12px; align-items: center; padding: 8px 10px; border-radius: 8px; color: var(--wm-text); text-decoration: none; font-weight: 600; }
.wm-mega a:hover { background: var(--wm-bg); }
.wm-mega img { width: 40px; height: 40px; object-fit: cover; border-radius: 8px; }
.wm-mega small { display: block; font-weight: 400; color: var(--wm-muted); font-size: 12px; }
.wm-catnav-links { display: flex; list-style: none; margin: 0; padding: 0; overflow-x: auto; scrollbar-width: none; }
.wm-catnav-links a { display: block; padding: 0 14px; line-height: 44px; color: var(--wm-text); text-decoration: none; font-size: 14px; font-weight: 500; white-space: nowrap; }
.wm-catnav-links a:hover { color: var(--wm-accent); }
.wm-catnav-links .wm-hot a { color: var(--wm-red); font-weight: 700; }

/* Main menu bar (structure from the live site: Akcija / Shop / Kategorije / Modeli / Setovi / Refili). */
.wm-mainnav { max-width: var(--wm-max); margin: 0 auto; padding: 0 16px; position: relative; }
.wm-mainnav .wm-mainnav-toggle { display: none; }
.wm-mainnav-menu { display: flex; align-items: center; gap: 4px; list-style: none; margin: 0; padding: 0; }
.wm-mainnav-menu > li { position: relative; }
.wm-mainnav-menu > li > a { display: flex; align-items: center; gap: 6px; padding: 0 16px; line-height: 50px; color: var(--wm-text); text-decoration: none; font-size: 15px; font-weight: 600; white-space: nowrap; }
.wm-mainnav-menu > li > a:hover, .wm-mainnav-menu > li.current-menu-item > a { color: var(--wm-accent); }
.wm-mainnav-menu > li.menu-item-has-children > a::after { content: ""; width: 7px; height: 7px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg) translateY(-3px); }
.wm-mainnav-menu > li.wm-menu-akcija { margin-right: 12px; }
.wm-mainnav-menu > li.wm-menu-akcija > a { background: #b8913f; color: #fff; line-height: 38px; border-radius: 4px; padding: 0 22px; margin: 6px 0; }
.wm-mainnav-menu > li.wm-menu-akcija > a:hover { background: #a37f33; color: #fff; }
.wm-mainnav-menu .sub-menu { display: none; position: absolute; top: 100%; left: 0; min-width: 240px; background: #fff; box-shadow: var(--wm-shadow-hover); border-radius: 0 0 var(--wm-radius) var(--wm-radius); border-top: 3px solid var(--wm-accent); list-style: none; margin: 0; padding: 8px; z-index: 999; }
.wm-mainnav-menu li:hover > .sub-menu, .wm-mainnav-menu li.is-open > .sub-menu, .wm-mainnav-menu li:focus-within > .sub-menu { display: block; }
.wm-mainnav-menu .sub-menu a { display: block; padding: 9px 12px; border-radius: 6px; color: var(--wm-text); text-decoration: none; font-size: 14px; font-weight: 500; }
.wm-mainnav-menu .sub-menu a:hover { background: var(--wm-bg); color: var(--wm-accent-dark); }

/* Old hero banner from the live site (full-width photo, centred title, two pill buttons). */
.wm-oldhero { text-align: center; }
.wm-oldhero .elementor-heading-title { color: #fff; text-shadow: 0 2px 16px rgba(0, 0, 0, .35); }
.wm-oldhero h1.elementor-heading-title { font-family: "Cormorant Garamond", Georgia, serif !important; font-size: 68px; line-height: 1.1; font-weight: 700 !important; letter-spacing: 0; }
.wm-oldhero .wm-oldhero-sub { color: #fff; font-size: 22px; letter-spacing: 2px; font-weight: 400; text-shadow: 0 2px 12px rgba(0, 0, 0, .4); }
.wm-oldhero .wm-oldhero-sub p { margin: 0; }
.wm-oldhero-btns { display: flex; gap: 14px; justify-content: center; flex-wrap: wrap; margin-top: 8px; }
.wm-pill { display: inline-block; border: 2px solid #fff; border-radius: 25px; background: rgba(255, 255, 255, .11); color: #fff !important; text-decoration: none; font-weight: 700; letter-spacing: 1px; padding: 14px 34px; font-size: 15px; transition: background .2s; }
.wm-pill:hover { background: transparent; }
.wm-pill.is-gold { background: #b8913f; border-color: #b8913f; }
.wm-pill.is-gold:hover { background: #a37f33; }

/* ---------- Home as a guided story (editorial, small boutique) ---------- */
body.home { background: #f6f3ed; }
.wm-serif, .wm-ch .elementor-heading-title, .wm-intro .elementor-heading-title, .wm-close .elementor-heading-title { font-family: "Cormorant Garamond", Georgia, serif !important; font-weight: 600; letter-spacing: 0; }
.wm-ch-num { font-family: "Roboto", sans-serif; font-size: 12px; font-weight: 700; letter-spacing: .3em; text-transform: uppercase; color: #a8843a; }
.wm-ch-num::before { content: ""; display: inline-block; width: 36px; height: 1px; background: currentColor; vertical-align: middle; margin-right: 12px; }
.wm-intro .elementor-heading-title { font-size: clamp(34px, 4vw, 52px); line-height: 1.15; color: var(--wm-navy); }
.wm-intro .elementor-widget-text-editor { font-size: 18px; line-height: 1.8; color: #4a5263; }
.wm-ch .elementor-heading-title { font-size: clamp(34px, 3.6vw, 50px); line-height: 1.1; color: var(--wm-navy); }
.wm-ch .elementor-widget-text-editor { font-size: 17px; line-height: 1.8; color: #4a5263; }
.wm-ch .elementor-widget-text-editor p:last-child { margin-bottom: 0; }
.wm-ch-img img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; border-radius: 4px; box-shadow: 0 30px 60px -30px rgba(10, 34, 64, .45); }
.wm-ch-link a, a.wm-ch-link { display: inline-flex; align-items: center; gap: 10px; color: var(--wm-navy); font-weight: 600; text-decoration: none; border-bottom: 1px solid #a8843a; padding-bottom: 4px; }
.wm-ch-link a::after, a.wm-ch-link::after { content: "→"; transition: transform .2s; }
.wm-ch-link a:hover::after, a.wm-ch-link:hover::after { transform: translateX(4px); }
.wm-ch-dark { background: var(--wm-navy); }
.wm-ch-dark .elementor-heading-title { color: #fff; }
.wm-ch-dark .elementor-widget-text-editor { color: #c9d4e5; }
.wm-ch-dark .wm-ch-link a, .wm-ch-dark a.wm-ch-link { color: #fff; }

/* Curated product picks */
.wm-picks { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; }
.wm-pick { display: flex; flex-direction: column; gap: 6px; text-decoration: none; color: var(--wm-text) !important; }
.wm-pick-img { display: block; background: #fff; border-radius: 4px; padding: 24px; margin-bottom: 12px; transition: box-shadow .3s, transform .3s; }
.wm-pick-img img { width: 100%; aspect-ratio: 1; object-fit: contain; display: block; }
.wm-pick:hover .wm-pick-img { box-shadow: 0 20px 40px -24px rgba(10, 34, 64, .45); transform: translateY(-4px); }
.wm-pick-col { font-size: 11px; font-weight: 700; letter-spacing: .25em; text-transform: uppercase; color: #a8843a; }
.wm-pick-name { font-family: "Cormorant Garamond", Georgia, serif; font-size: 23px; font-weight: 600; line-height: 1.2; color: var(--wm-navy); }
.wm-pick-price { font-size: 15px; color: #4a5263; }
.wm-pick-price del { opacity: .6; margin-right: 6px; }
.wm-pick-price ins { text-decoration: none; color: var(--wm-red); }
.wm-pick-more { font-size: 13px; font-weight: 600; color: var(--wm-navy); margin-top: 4px; }
.wm-pick-more::after { content: " →"; }
.wm-ch-dark .wm-pick-name { color: #fff; }
.wm-ch-dark .wm-pick-price, .wm-ch-dark .wm-pick-more { color: #c9d4e5; }

/* Engraving steps */
.wm-steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; counter-reset: wmstep; }
.wm-step { border-top: 1px solid rgba(201, 164, 92, .5); padding-top: 18px; counter-increment: wmstep; }
.wm-step::before { content: "0" counter(wmstep); display: block; font-family: "Cormorant Garamond", Georgia, serif; font-size: 40px; color: #c9a45c; line-height: 1; margin-bottom: 10px; }
.wm-step b { display: block; color: #fff; font-size: 17px; margin-bottom: 6px; }
.wm-step span { color: #c9d4e5; font-size: 15px; line-height: 1.6; }

/* Collections as a reading list */
.wm-colls { border-top: 1px solid #ddd5c6; }
.wm-coll { display: grid; grid-template-columns: 90px 220px 1fr auto; align-items: center; gap: 28px; padding: 18px 0; border-bottom: 1px solid #ddd5c6; text-decoration: none; color: var(--wm-text) !important; transition: background .2s, padding .2s; }
.wm-coll:hover { background: #fff; padding-inline: 18px; }
.wm-coll img { width: 90px; height: 90px; object-fit: contain; background: #fff; border-radius: 50%; padding: 8px; }
.wm-coll strong { font-family: "Cormorant Garamond", Georgia, serif; font-size: 30px; font-weight: 600; color: var(--wm-navy); }
.wm-coll span { color: #4a5263; font-size: 16px; line-height: 1.6; }
.wm-coll em { font-style: normal; font-size: 13px; font-weight: 600; color: #a8843a; white-space: nowrap; }

/* Chapter index (left, desktop only) */
.wm-toc { position: fixed; left: 24px; top: 50%; transform: translateY(-50%); z-index: 50; opacity: 0; pointer-events: none; transition: opacity .3s; }
.wm-toc.is-visible { opacity: 1; pointer-events: auto; }
.wm-toc ol { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 14px; }
.wm-toc a { display: flex; align-items: center; gap: 10px; font-size: 12px; font-weight: 600; color: #8a8f99; text-decoration: none; letter-spacing: .04em; }
.wm-toc a::before { content: ""; width: 18px; height: 1px; background: currentColor; transition: width .25s; }
.wm-toc a span { opacity: 0; transform: translateX(-4px); transition: opacity .25s, transform .25s; white-space: nowrap; }
.wm-toc:hover a span, .wm-toc a.is-active span { opacity: 1; transform: none; }
.wm-toc a.is-active { color: var(--wm-navy); }
.wm-toc a.is-active::before { width: 36px; background: #a8843a; }
@media (max-width: 1399px) { .wm-toc { display: none; } }

@media (max-width: 1024px) {
	.wm-coll { grid-template-columns: 70px 1fr auto; }
	.wm-coll img { width: 70px; height: 70px; }
	.wm-coll span { grid-column: 2 / -1; }
}
@media (max-width: 767px) {
	.wm-picks { grid-template-columns: 1fr 1fr; gap: 16px; }
	.wm-picks .wm-pick:nth-child(3) { display: none; }
	.wm-pick-img { padding: 12px; }
	.wm-pick-name { font-size: 19px; }
	.wm-steps { grid-template-columns: 1fr; }
	.wm-coll { grid-template-columns: 60px 1fr; gap: 6px 16px; }
	.wm-coll img { width: 60px; height: 60px; grid-row: span 2; }
	.wm-coll strong { font-size: 24px; }
	.wm-coll span { grid-column: 2; font-size: 14px; }
	.wm-coll em { display: none; }
	.wm-ch-img img { aspect-ratio: 4 / 3; }
}

/* ---------- Home sections ---------- */
.wm-section-title { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 14px; }
.wm-section-title h2 { font-size: 22px; margin: 0; }
.wm-section-title a { font-weight: 600; font-size: 14px; text-decoration: none; }

.wm-hero { border-radius: var(--wm-radius); overflow: hidden; color: #fff; background: radial-gradient(circle at 80% 40%, #1f4c8f 0%, var(--wm-navy) 60%) !important; }
.wm-hero .elementor-heading-title { font-size: 36px; line-height: 1.12; }
.wm-hero .elementor-widget-text-editor p { margin: 0; font-size: 16px; }
.wm-hero-media img { width: 100%; max-width: 300px; aspect-ratio: 1; object-fit: cover; border-radius: 50%; border: 6px solid rgba(255, 255, 255, .15); box-shadow: 0 20px 50px rgba(0, 0, 0, .35); }
.wm-hero-media .elementor-widget-image { text-align: center; }
.wm-hero-kicker { display: inline-block; background: var(--wm-yellow); color: var(--wm-navy); font-weight: 800; font-size: 12px; text-transform: uppercase; letter-spacing: .06em; padding: 4px 10px; border-radius: 4px; }
.wm-hero h1, .wm-hero h2 { color: #fff; font-size: 38px; line-height: 1.1; margin: 14px 0 10px; }
.wm-hero p { color: #dbe3ef; font-size: 16px; margin: 0 0 20px; }
.wm-btn { display: inline-flex; align-items: center; gap: 8px; background: var(--wm-accent); color: #fff !important; font-weight: 700; padding: 12px 22px; border-radius: 8px; text-decoration: none; }
.wm-btn:hover { background: var(--wm-accent-dark); }
.wm-btn.ghost { background: transparent; border: 2px solid #fff; }

.wm-promo { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 163px; border-radius: var(--wm-radius); padding: 20px; color: var(--wm-text); text-decoration: none; background: #fff; box-shadow: var(--wm-shadow); overflow: hidden; }
.wm-promo.is-yellow { background: var(--wm-yellow); }
.wm-promo div { display: flex; flex-direction: column; gap: 4px; }
.wm-promo strong { font-size: 19px; line-height: 1.2; color: var(--wm-text); }
.wm-promo span { color: var(--wm-accent-dark); font-weight: 800; font-size: 12px; letter-spacing: .05em; }
.wm-promo.is-yellow span { color: var(--wm-navy); }
.wm-promo em { font-style: normal; font-weight: 700; font-size: 14px; color: var(--wm-blue); margin-top: 6px; }
.wm-promo img { width: 120px; height: 120px; object-fit: cover; border-radius: 50%; flex: 0 0 auto; }
.wm-promo:hover { box-shadow: var(--wm-shadow-hover); color: var(--wm-text); }

.wm-cat-tiles { display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 14px; }
.wm-cat-tile { display: flex; flex-direction: column; align-items: center; gap: 10px; text-decoration: none; color: var(--wm-text); font-weight: 600; font-size: 14px; text-align: center; }
.wm-cat-img { width: 116px; height: 116px; border-radius: 50%; overflow: hidden; background: #fff; box-shadow: var(--wm-shadow); display: block; transition: transform .2s, box-shadow .2s; }
.wm-cat-img img { width: 100%; height: 100%; object-fit: cover; }
.wm-cat-tile:hover .wm-cat-img { transform: translateY(-3px); box-shadow: var(--wm-shadow-hover); }
.wm-cat-tile:hover { color: var(--wm-accent); }

.wm-panel { background: var(--wm-card); border-radius: var(--wm-radius); box-shadow: var(--wm-shadow); padding: 22px; }
.wm-deal-band { background: var(--wm-navy); border-radius: var(--wm-radius); padding: 22px; }
.wm-deal-band .wm-section-title h2 { color: #fff; }
.wm-deal-band .wm-section-title h2 em { font-style: normal; background: var(--wm-yellow); color: var(--wm-navy); padding: 2px 10px; border-radius: 6px; margin-right: 8px; }
.wm-deal-band .wm-section-title a { color: var(--wm-yellow); }

.wm-usps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.wm-usp { display: flex; gap: 14px; align-items: center; background: #fff; border-radius: var(--wm-radius); padding: 18px; box-shadow: var(--wm-shadow); }
.wm-usp i { flex: 0 0 46px; height: 46px; border-radius: 50%; background: #efe8da; color: var(--wm-accent); display: grid; place-items: center; font-style: normal; font-size: 22px; }
.wm-usp b { display: block; font-size: 15px; }
.wm-usp span { color: var(--wm-muted); font-size: 13px; }

.wm-collections { display: grid; grid-template-columns: repeat(6, 1fr); gap: 14px; }
.wm-collection { position: relative; border-radius: var(--wm-radius); overflow: hidden; aspect-ratio: 3/4; display: block; background: #ddd center/cover no-repeat; }
.wm-collection span { position: absolute; left: 0; right: 0; bottom: 0; padding: 14px; color: #fff; font-weight: 700; background: linear-gradient(0deg, rgba(0, 0, 0, .7), transparent); }
.wm-collection:hover { box-shadow: var(--wm-shadow-hover); }

.wm-newsletter { background: linear-gradient(120deg, var(--wm-navy), var(--wm-navy-2)); color: #fff; border-radius: var(--wm-radius); padding: 30px; display: flex; gap: 24px; align-items: center; justify-content: space-between; flex-wrap: wrap; }
.wm-newsletter h3 { color: #fff; margin: 0 0 4px; font-size: 22px; }
.wm-newsletter p { margin: 0; color: #c9d4e5; }
.wm-newsletter form { display: flex; gap: 8px; flex: 1 1 320px; max-width: 460px; }
.wm-newsletter > div { flex: 1 1 320px; }
.wm-newsletter input { flex: 1; border: 0; border-radius: 8px; padding: 12px 14px; }
.wm-newsletter button { background: var(--wm-yellow); color: var(--wm-navy); border: 0; border-radius: 8px; font-weight: 800; padding: 0 20px; }

/* ---------- Product rail ---------- */
.wm-rail { position: relative; }
.woocommerce .wm-rail ul.products.wm-rail-track, .wm-rail ul.products.wm-rail-track { display: grid; grid-auto-flow: column; grid-auto-columns: calc((100% - 4 * 14px) / 5); gap: 14px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; margin: 0; padding: 2px; list-style: none; }
.wm-rail-track::-webkit-scrollbar { display: none; }
.wm-rail ul.products li.product { width: auto !important; margin: 0 !important; float: none !important; scroll-snap-align: start; }
.wm-rail ul.products::before, .wm-rail ul.products::after { display: none !important; }
.wm-rail-btn { position: absolute; top: 38%; z-index: 2; width: 40px; height: 40px; border-radius: 50%; border: 0; background: #fff; color: var(--wm-text); box-shadow: var(--wm-shadow-hover); font-size: 26px; line-height: 1; cursor: pointer; padding: 0; }
.wm-rail-btn.prev { left: -14px; } .wm-rail-btn.next { right: -14px; }
.wm-rail-btn:hover { background: var(--wm-accent); color: #fff; }

/* ---------- Product cards (all loops) ---------- */
.woocommerce ul.products li.product, .woocommerce-page ul.products li.product {
	background: var(--wm-card); border-radius: var(--wm-radius); box-shadow: var(--wm-shadow);
	padding: 12px 12px 14px; display: flex; flex-direction: column; position: relative; transition: box-shadow .2s, transform .2s;
}
.woocommerce ul.products li.product:hover { box-shadow: var(--wm-shadow-hover); transform: translateY(-2px); }
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link { display: flex; flex-direction: column; flex: 1; color: var(--wm-text); text-decoration: none; }
.woocommerce ul.products li.product a img { aspect-ratio: 1; object-fit: contain; background: #fff; margin-bottom: 10px; border-radius: 6px; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 14px !important; font-weight: 500; line-height: 1.35; padding: 0 !important; margin: 0 0 8px; min-height: 2.7em; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.woocommerce ul.products li.product .price { order: 3; color: var(--wm-text) !important; font-size: 20px !important; font-weight: 800; margin: auto 0 4px !important; display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 8px; }
.woocommerce ul.products li.product .price del { color: var(--wm-muted); font-size: 13px; font-weight: 400; opacity: 1; order: 2; }
.woocommerce ul.products li.product .price ins { color: var(--wm-red); text-decoration: none; order: 1; }
.wm-card-meta { order: 4; display: flex; flex-direction: column; gap: 2px; font-size: 12px; margin-bottom: 10px; }
.wm-stock { color: var(--wm-green); font-weight: 600; }
.wm-stock.is-out { color: var(--wm-red); }
.wm-ship { color: var(--wm-muted); }
.woocommerce ul.products li.product .button { margin-top: 0 !important; width: 100%; text-align: center; background: var(--wm-accent); color: #fff; border-radius: 8px; font-weight: 700; padding: 10px; font-size: 14px; border: 0; }
.woocommerce ul.products li.product .button:hover { background: var(--wm-accent-dark); color: #fff; }
.woocommerce ul.products li.product .added_to_cart { text-align: center; font-size: 13px; padding-top: 6px; }
.woocommerce span.onsale { background: var(--wm-red); color: #fff; border-radius: 6px; min-height: 0; min-width: 0; line-height: 1; padding: 6px 8px; font-size: 13px; font-weight: 800; top: 12px; left: 12px; right: auto; margin: 0; }
.woocommerce ul.products li.product .onsale { top: 14px; left: 14px; right: auto; margin: 0; }

/* ---------- Shop / category archive ---------- */
.wm-shop-layout { display: grid; grid-template-columns: 250px 1fr; gap: 20px; align-items: start; margin-bottom: 40px; }
.wm-shop-filters { display: flex; flex-direction: column; gap: 14px; position: sticky; top: 16px; }
.wm-filter-box { background: #fff; border-radius: var(--wm-radius); box-shadow: var(--wm-shadow); padding: 16px; }
.wm-filter-box h3 { font-size: 15px; margin: 0 0 10px; }
.wm-filter-box ul { list-style: none; margin: 0; padding: 0; }
.wm-filter-box li a { display: flex; justify-content: space-between; padding: 7px 8px; border-radius: 6px; color: var(--wm-text); text-decoration: none; font-size: 14px; }
.wm-filter-box li a span { color: var(--wm-muted); font-size: 12px; }
.wm-filter-box li a:hover, .wm-filter-box li.is-active a { background: #efe8da; color: var(--wm-accent-dark); font-weight: 600; }
.wm-price-filter { display: flex; gap: 6px; align-items: center; }
.wm-price-filter input { width: 100%; min-width: 0; padding: 8px; border: 1px solid var(--wm-line); border-radius: 6px; }
.wm-price-filter button { background: var(--wm-navy); color: #fff; border: 0; border-radius: 6px; padding: 8px 10px; }
.wm-filter-usp { background: var(--wm-navy); color: #c9d4e5; font-size: 13px; }
.wm-filter-usp strong { display: block; color: var(--wm-yellow); font-size: 15px; margin-bottom: 4px; }
.wm-filter-usp p { margin: 0; }
.wm-shop-toolbar { display: flex; justify-content: space-between; align-items: center; background: #fff; border-radius: var(--wm-radius); box-shadow: var(--wm-shadow); padding: 10px 16px; margin-bottom: 16px; }
.wm-shop-toolbar .woocommerce-result-count, .wm-shop-toolbar .woocommerce-ordering { margin: 0 !important; float: none !important; font-size: 14px; color: var(--wm-muted); }
.wm-shop-toolbar select { border: 1px solid var(--wm-line); border-radius: 6px; padding: 6px 10px; }
.woocommerce .wm-shop-main ul.products { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin: 0; }
.woocommerce .wm-shop-main ul.products li.product { width: auto; margin: 0; float: none; }
.woocommerce .wm-shop-main ul.products::before, .woocommerce .wm-shop-main ul.products::after { display: none; }
.woocommerce .woocommerce-breadcrumb { font-size: 13px; color: var(--wm-muted); margin: 18px 0 6px; }
.woocommerce .woocommerce-breadcrumb a { color: var(--wm-blue); text-decoration: none; }
.woocommerce-products-header__title { font-size: 28px; margin: 4px 0 16px; }
.woocommerce nav.woocommerce-pagination ul { border: 0; display: inline-flex; gap: 6px; }
.woocommerce nav.woocommerce-pagination ul li { border: 0; }
.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span { border-radius: 8px; background: #fff; box-shadow: var(--wm-shadow); min-width: 38px; padding: 10px; }
.woocommerce nav.woocommerce-pagination ul li span.current { background: var(--wm-navy); color: #fff; }

/* ---------- Single product ---------- */
.single-product div.product { background: #fff; border-radius: var(--wm-radius); box-shadow: var(--wm-shadow); padding: 28px; margin-bottom: 24px; display: grid; grid-template-columns: 1.1fr 1fr; gap: 36px; }
.single-product div.product > .woocommerce-product-gallery, .single-product div.product > .summary { width: 100% !important; float: none !important; margin: 0 !important; }
.single-product div.product > .woocommerce-tabs, .single-product div.product > .related, .single-product div.product > .upsells { grid-column: 1 / -1; }
.single-product div.product .product_title { font-size: 26px; line-height: 1.25; margin-bottom: 10px; }
.single-product div.product p.price { font-size: 32px !important; font-weight: 800; color: var(--wm-text) !important; margin: 14px 0; }
.single-product div.product p.price ins { color: var(--wm-red); text-decoration: none; }
.single-product div.product p.price del { font-size: 18px; color: var(--wm-muted); font-weight: 400; }
.single-product div.product .stock { color: var(--wm-green); font-weight: 600; }
.single-product div.product form.cart { display: flex; gap: 10px; align-items: stretch; padding: 16px; background: var(--wm-bg); border-radius: var(--wm-radius); margin: 18px 0; }
.single-product div.product form.cart .quantity input { height: 50px; width: 70px; border-radius: 8px; border: 1px solid var(--wm-line); }
.single-product div.product form.cart .single_add_to_cart_button { flex: 1; background: var(--wm-accent) !important; color: #fff; border-radius: 8px; font-size: 17px; font-weight: 800; height: 50px; }
.single-product div.product form.cart .single_add_to_cart_button:hover { background: var(--wm-accent-dark) !important; }
.wm-trust { list-style: none; margin: 0 0 18px; padding: 0; border: 1px solid var(--wm-line); border-radius: var(--wm-radius); }
.wm-trust li { padding: 10px 14px 10px 40px; border-top: 1px solid var(--wm-line); font-size: 14px; color: var(--wm-muted); position: relative; }
.wm-trust li:first-child { border-top: 0; }
.wm-trust li::before { content: "✓"; position: absolute; left: 14px; color: var(--wm-green); font-weight: 800; }
.wm-trust b { color: var(--wm-text); }
.single-product .product_meta { font-size: 13px; color: var(--wm-muted); }
.woocommerce div.product .woocommerce-tabs ul.tabs { padding: 0; margin: 0 0 16px; border-bottom: 2px solid var(--wm-line); }
.woocommerce div.product .woocommerce-tabs ul.tabs::before { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { background: none; border: 0; border-radius: 0; margin: 0; padding: 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs li::before, .woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { padding: 12px 18px; font-weight: 600; color: var(--wm-muted); }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active { border-bottom: 3px solid var(--wm-accent); margin-bottom: -2px; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: var(--wm-text); }
.single-product .related > h2 { font-size: 22px; }
.single-product .related ul.products { display: grid; grid-template-columns: repeat(5, 1fr); gap: 14px; }
.single-product .related ul.products li.product { width: auto !important; margin: 0 !important; float: none !important; }
.single-product .related ul.products::before, .single-product .related ul.products::after { display: none; }

/* ---------- Cart / checkout / buttons ---------- */
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce #respond input#submit { border-radius: 8px; font-weight: 700; }
.woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt, .woocommerce .wc-proceed-to-checkout a.checkout-button { background: var(--wm-accent); color: #fff; }
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover, .woocommerce .wc-proceed-to-checkout a.checkout-button:hover { background: var(--wm-accent-dark); }
.woocommerce-cart .woocommerce, .woocommerce-checkout .woocommerce, .woocommerce-account .woocommerce { background: #fff; border-radius: var(--wm-radius); box-shadow: var(--wm-shadow); padding: 24px; margin-bottom: 30px; }

/* ---------- Footer ---------- */
.wm-footer { background: var(--wm-navy); color: #b9c5d8; font-size: 14px; }
.wm-footer h4 { color: #fff; font-size: 15px; margin: 0 0 14px; }
.wm-footer ul { list-style: none; margin: 0; padding: 0; }
.wm-footer li { margin-bottom: 8px; }
.wm-footer a { color: #b9c5d8; text-decoration: none; }
.wm-footer a:hover { color: var(--wm-yellow); }
.wm-pay { display: flex; gap: 8px; flex-wrap: wrap; }
.wm-pay span { background: #fff; color: var(--wm-navy); font-weight: 800; font-size: 11px; padding: 6px 10px; border-radius: 5px; }
.wm-footer-bottom { border-top: 1px solid rgba(255, 255, 255, .12); color: #8597b2; font-size: 13px; }

/* ---------- Responsive ---------- */
@media (max-width: 1024px) {
	.wm-rail ul.products.wm-rail-track, .woocommerce .wm-rail ul.products.wm-rail-track { grid-auto-columns: calc((100% - 2 * 14px) / 3); }
	.woocommerce .wm-shop-main ul.products, .single-product .related ul.products { grid-template-columns: repeat(3, 1fr); }
	.wm-collections { grid-template-columns: repeat(3, 1fr); }
	.wm-usps { grid-template-columns: repeat(2, 1fr); }
	.wm-catnav-links { display: none; }
	.wm-mainnav { padding: 0; }
	.wm-mainnav .wm-mainnav-toggle { display: flex; align-items: center; gap: 10px; width: 100%; height: 48px; padding: 0 16px; background: #fff; color: var(--wm-text); border: 0; border-radius: 0; font-weight: 700; font-size: 15px; }
	.wm-mainnav-toggle:hover, .wm-mainnav-toggle:focus { background: #fff; color: var(--wm-accent); }
	.wm-navbar .wm-mainnav-toggle, .wm-navbar .wm-mainnav-toggle:hover, .wm-navbar .wm-mainnav-toggle:focus { background: var(--wm-brand-navy); color: #fff; }
	.wm-navbar .wm-mainnav-menu { border-top-color: #1b3157; }
	.wm-navbar .wm-mainnav-menu > li > a { border-bottom-color: #1b3157; }
	.wm-navbar .wm-mainnav-menu .sub-menu { background: #0a2552; }
	.wm-navbar .wm-mainnav-menu .sub-menu a { color: #dfe5f0; }
	.wm-mainnav-menu { display: none; flex-direction: column; align-items: stretch; gap: 0; padding: 0 0 10px; border-top: 1px solid var(--wm-line); }
	.wm-mainnav.is-open .wm-mainnav-menu { display: flex; }
	.wm-mainnav-menu > li > a { justify-content: space-between; line-height: 46px; border-bottom: 1px solid var(--wm-line); }
	.wm-mainnav-menu > li.wm-menu-akcija { margin: 10px 16px 6px; }
	.wm-mainnav-menu > li.wm-menu-akcija > a { justify-content: center; border: 0; }
	.wm-mainnav-menu .sub-menu { position: static; box-shadow: none; border: 0; border-radius: 0; background: var(--wm-bg); padding: 4px 8px; }
	.wm-mainnav-menu li:hover > .sub-menu { display: none; }
	.wm-mainnav-menu li.is-open > .sub-menu { display: block; }
	.wm-oldhero h1.elementor-heading-title { font-size: 40px; }
	.wm-oldhero .wm-oldhero-sub { font-size: 17px; }
}
@media (max-width: 767px) {
	body { font-size: 14px; }
	.wm-usp-row { gap: 12px; font-size: 12px; justify-content: flex-start; overflow-x: auto; flex-wrap: nowrap; white-space: nowrap; }
	.wm-search { height: 44px; }
	.wm-search select { display: none; }
	.wm-search button span { display: none; }
	.wm-search button { padding: 0 16px; }
	.wm-actions { gap: 14px; }
	.wm-action > span:not(.wm-cart-icon) { display: none; }
	.wm-catnav { padding: 0; }
	.wm-catnav-all, .wm-catnav-all > button { width: 100%; }
	.wm-mega { width: 100%; }
	.wm-hero { min-height: 280px; }
	.wm-hero .elementor-heading-title { font-size: 27px; }
	.wm-oldhero h1.elementor-heading-title { font-size: 30px; }
	.wm-oldhero .wm-oldhero-sub { font-size: 14px; letter-spacing: 1px; }
	.wm-pill { padding: 11px 24px; font-size: 13px; }
	.wm-hero-media img { max-width: 170px; }
	.wm-promo { min-height: 120px; }
	.wm-promo img { width: 88px; height: 88px; }
	.wm-hero h1, .wm-hero h2 { font-size: 28px; }
	.wm-hero-body { padding: 22px; }
	.wm-rail ul.products.wm-rail-track, .woocommerce .wm-rail ul.products.wm-rail-track { grid-auto-columns: 46%; }
	.wm-rail-btn { display: none; }
	.wm-cat-tiles { grid-template-columns: repeat(4, 1fr); gap: 10px; }
	.wm-cat-img { width: 72px; height: 72px; }
	.wm-cat-tile { font-size: 12px; }
	.wm-collections { grid-template-columns: repeat(2, 1fr); }
	.wm-usps { grid-template-columns: 1fr; }
	.wm-shop-layout { grid-template-columns: 1fr; }
	.wm-shop-filters { position: static; }
	.wm-shop-filters .wm-filter-usp { display: none; }
	.woocommerce .wm-shop-main ul.products, .single-product .related ul.products { grid-template-columns: repeat(2, 1fr); gap: 10px; }
	.wm-shop-toolbar { flex-direction: column; gap: 8px; align-items: stretch; }
	.single-product div.product { grid-template-columns: 1fr; padding: 16px; gap: 20px; }
	.single-product div.product p.price { font-size: 26px !important; }
	.woocommerce ul.products li.product .price { font-size: 17px !important; }
}

/* =========================================================
   Inner pages (shop, category, product, cart, checkout, account)
   in the home page palette: cream, Waterman navy/blue, sand gold, serif titles.
   ========================================================= */
body:not(.home) { background: var(--wm-cream); }
.woocommerce-products-header__title, .page-header .entry-title, .single-product div.product .product_title,
.single-product .related > h2, .single-product .upsells > h2, .woocommerce-cart h2, .woocommerce-checkout h3,
.woocommerce-account h2, .woocommerce-tabs .panel > h2 {
	font-family: "Cormorant Garamond", Georgia, serif !important; font-weight: 600; color: var(--wm-brand-navy); letter-spacing: 0;
}
.woocommerce-products-header__title, .page-header .entry-title { font-size: 44px; }
.single-product div.product .product_title { font-size: 38px; line-height: 1.15; }
.term-description, .woocommerce-products-header .term-description { color: #4a5263; max-width: 760px; }

/* Product cards: calm, like the curated picks on the home page */
.woocommerce ul.products li.product, .woocommerce-page ul.products li.product { border-radius: 4px; box-shadow: none; padding: 16px 16px 18px; }
.woocommerce ul.products li.product:hover { box-shadow: 0 20px 40px -24px rgba(5, 27, 63, .45); transform: translateY(-3px); }
.woocommerce ul.products li.product .woocommerce-loop-product__title { font-family: "Cormorant Garamond", Georgia, serif; font-size: 20px !important; font-weight: 600; color: var(--wm-brand-navy); }
.woocommerce ul.products li.product .price { font-size: 16px !important; font-weight: 600; color: var(--wm-brand-navy) !important; }
.woocommerce ul.products li.product .button { background: transparent; color: var(--wm-brand-navy); border: 1px solid var(--wm-brand-navy); border-radius: 3px; font-weight: 600; letter-spacing: .04em; }
.woocommerce ul.products li.product .button:hover { background: var(--wm-brand-navy); color: #fff; }
.wm-ship { color: #8a8f99; }
.woocommerce span.onsale { background: var(--wm-brand-navy); color: var(--wm-sand); border-radius: 3px; font-weight: 700; }

/* Shop sidebar + toolbar */
.wm-filter-box, .wm-shop-toolbar { border-radius: 4px; box-shadow: none; border: 1px solid #e6dfd1; }
.wm-filter-box h3 { font-family: "Cormorant Garamond", Georgia, serif; font-size: 22px; font-weight: 600; color: var(--wm-brand-navy); }
.wm-filter-box li.is-active a, .wm-filter-box li a:hover { color: var(--wm-brand-navy); }
.wm-price-filter button { background: var(--wm-brand-navy); }
.wm-filter-usp { background: var(--wm-brand-navy); border: 0; }
.wm-filter-usp strong { color: var(--wm-sand); font-family: "Cormorant Garamond", Georgia, serif; font-size: 20px; }
.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span { border-radius: 3px; box-shadow: none; border: 1px solid #e6dfd1; }
.woocommerce nav.woocommerce-pagination ul li span.current { background: var(--wm-brand-navy); border-color: var(--wm-brand-navy); }

/* Single product */
.single-product div.product { border-radius: 4px; box-shadow: none; border: 1px solid #e6dfd1; }
.single-product div.product p.price { font-size: 28px !important; font-weight: 600; color: var(--wm-brand-navy) !important; }
.single-product div.product form.cart { background: var(--wm-cream); border-radius: 4px; }
.single-product div.product form.cart .single_add_to_cart_button { background: var(--wm-brand-navy) !important; border-radius: 3px; font-weight: 700; letter-spacing: .04em; }
.single-product div.product form.cart .single_add_to_cart_button:hover { background: var(--wm-brand-blue) !important; }
.wm-trust { border-color: #e6dfd1; border-radius: 4px; }
.wm-trust li { border-top-color: #e6dfd1; }
.wm-trust li::before { color: var(--wm-gold); }
.woocommerce div.product .woocommerce-tabs ul.tabs { border-bottom-color: #e6dfd1; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active { border-bottom-color: var(--wm-gold); }

/* Cart / checkout / account */
.woocommerce-cart .woocommerce, .woocommerce-checkout .woocommerce, .woocommerce-account .woocommerce { border-radius: 4px; box-shadow: none; border: 1px solid #e6dfd1; }
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button { background: #efe8da; color: var(--wm-brand-navy); border-radius: 3px; }
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover { background: var(--wm-sand); color: var(--wm-brand-navy); }
.woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt, .woocommerce .wc-proceed-to-checkout a.checkout-button,
.woocommerce #payment #place_order { background: var(--wm-brand-navy); color: #fff; }
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover, .woocommerce .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce #payment #place_order:hover { background: var(--wm-brand-blue); color: #fff; }
.woocommerce-message, .woocommerce-info { border-top-color: var(--wm-gold); }
.woocommerce-message::before, .woocommerce-info::before { color: var(--wm-gold); }
/* WooCommerce block cart / checkout: keep inside the page width */
.woocommerce-cart .page-content .alignwide, .woocommerce-cart .page-content .alignfull,
.woocommerce-checkout .page-content .alignwide, .woocommerce-checkout .page-content .alignfull,
.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout { max-width: 100%; margin-left: 0; margin-right: 0; width: auto; }
.wc-block-cart__empty-cart__title { font-family: "Cormorant Garamond", Georgia, serif !important; font-size: 30px !important; color: var(--wm-brand-navy); }
.wc-block-grid__product-title, .wc-block-components-product-name { font-family: "Cormorant Garamond", Georgia, serif; font-size: 19px; font-weight: 600; color: var(--wm-brand-navy) !important; text-decoration: none !important; }
.wc-block-components-button:not(.is-link), .wc-block-cart__submit-button, .wc-block-components-checkout-place-order-button { background: var(--wm-brand-navy) !important; color: #fff !important; border-radius: 3px !important; }
.wc-block-components-button:not(.is-link):hover { background: var(--wm-brand-blue) !important; }.wp-block-post-title a, .wp-block-woocommerce-product-collection a { text-decoration: none !important; }
.wp-block-post-title, .wp-block-post-title a { font-family: "Cormorant Garamond", Georgia, serif !important; font-size: 20px !important; font-weight: 600 !important; color: var(--wm-brand-navy) !important; }
.wp-block-button__link, .wc-block-components-product-button__button { text-decoration: none !important; background: transparent !important; color: var(--wm-brand-navy) !important; border: 1px solid var(--wm-brand-navy) !important; border-radius: 3px !important; font-weight: 600; }
.wp-block-button__link:hover, .wc-block-components-product-button__button:hover { background: var(--wm-brand-navy) !important; color: #fff !important; }
/* Shop / category / product search: white page, beige boxes, rounded corners (as in the first version). */
body.woocommerce.archive { background: #fff; }
body.woocommerce.archive ul.products li.product,
body.woocommerce.archive .wm-filter-box:not(.wm-filter-usp),
body.woocommerce.archive .wm-shop-toolbar { background: var(--wm-cream); border: 0; border-radius: var(--wm-radius); }
body.woocommerce.archive ul.products li.product a img { background: #fff; border-radius: 8px; padding: 10px; box-sizing: border-box; }
body.woocommerce.archive .wm-filter-usp { border-radius: var(--wm-radius); }
body.woocommerce.archive .wm-filter-box li a { border-radius: 6px; }
body.woocommerce.archive .wm-filter-box li.is-active a, body.woocommerce.archive .wm-filter-box li a:hover { background: #fff; }
body.woocommerce.archive .wm-price-filter input { background: #fff; border-color: #e6dfd1; border-radius: 6px; }
body.woocommerce.archive .wm-price-filter button { border-radius: 6px; }
body.woocommerce.archive .wm-shop-toolbar select { background-color: #fff; border-radius: 6px; }
body.woocommerce.archive ul.products li.product .button { border-radius: 8px; }
body.woocommerce.archive span.onsale { border-radius: 6px; }
body.woocommerce.archive nav.woocommerce-pagination ul li a, body.woocommerce.archive nav.woocommerce-pagination ul li span { border-radius: 8px; background: var(--wm-cream); border: 0; }
body.woocommerce.archive nav.woocommerce-pagination ul li span.current { background: var(--wm-brand-navy); }
body.woocommerce.archive nav.woocommerce-pagination { margin-top: 40px; margin-bottom: 8px; }
/* =========================================================
   Store pages typography = waterman.com:
   Roboto for text, menus, buttons, product names and prices;
   headings in NovelSansHair on waterman.com (licensed) → Roboto 500 (one family less to load).
   The home page keeps its own story typography.
   ========================================================= */
body:not(.home) { --wm-font-text: "Roboto", Arial, sans-serif; --wm-font-head: "Roboto", Arial, sans-serif; font-family: var(--wm-font-text); }
body:not(.home) button, body:not(.home) input, body:not(.home) select, body:not(.home) textarea,
body:not(.home) .elementor-widget-text-editor, body:not(.home) .elementor-widget-html { font-family: var(--wm-font-text); }
body:not(.home) .woocommerce-products-header__title, body:not(.home) .page-header .entry-title,
body:not(.home) .single-product div.product .product_title, body.single-product div.product .product_title,
body:not(.home) .related > h2, body:not(.home) .upsells > h2, body:not(.home) .woocommerce-cart h2, body:not(.home) .woocommerce-checkout h3,
body:not(.home) .woocommerce-account h2, body:not(.home) .woocommerce-tabs .panel > h2,
body:not(.home) .wm-filter-box h3, body:not(.home) .wm-filter-usp strong, body:not(.home) .wc-block-cart__empty-cart__title,
body:not(.home) h1, body:not(.home) h2, body:not(.home) h3, body:not(.home) h4 {
	font-family: var(--wm-font-head) !important; font-weight: 500 !important; letter-spacing: 0;
}
body:not(.home) .woocommerce-products-header__title, body:not(.home) .page-header .entry-title { font-size: 36px; }
body.single-product div.product .product_title { font-size: 30px; line-height: 1.25; }
body:not(.home) .wm-filter-box h3 { font-size: 18px; }
body:not(.home) .wm-filter-usp strong { font-size: 17px; }
body:not(.home) .wc-block-cart__empty-cart__title { font-size: 26px !important; }
body:not(.home) ul.products li.product .woocommerce-loop-product__title,
body:not(.home) .wp-block-post-title, body:not(.home) .wp-block-post-title a,
body:not(.home) .wc-block-grid__product-title, body:not(.home) .wc-block-components-product-name {
	font-family: var(--wm-font-text) !important; font-size: 16px !important; font-weight: 400 !important; line-height: 1.4;
}
body:not(.home) ul.products li.product .price, body.single-product div.product p.price { font-family: var(--wm-font-text); font-weight: 500 !important; }
body:not(.home) .wm-mainnav-menu > li > a, body:not(.home) .wm-action, body:not(.home) .wm-search, body:not(.home) .wm-usp-row, body:not(.home) .wm-footer { font-family: var(--wm-font-text); }
/* Avada checklists in product descriptions (fusion-checklist): Font Awesome isn't loaded here,
   so draw the check mark in CSS and keep the compact live-site layout. */
ul.fusion-checklist { list-style: none; padding-left: 0; margin: 0 0 18px; }
ul.fusion-checklist li.fusion-li-item { display: flex; align-items: flex-start; gap: 12px; margin: 0 0 8px; }
ul.fusion-checklist .icon-wrapper { flex: 0 0 18px; height: 1.7em !important; width: 18px !important; margin: 0 !important; position: relative; display: block !important; }
ul.fusion-checklist .icon-wrapper::before { content: ""; position: absolute; left: 3px; top: calc(50% - 7px); width: 6px; height: 11px; border: solid #aaaaaa; border-width: 0 2.5px 2.5px 0; transform: rotate(45deg); }
ul.fusion-checklist .icon-wrapper i { display: none !important; }
ul.fusion-checklist .fusion-li-item-content { margin-left: 0 !important; line-height: 1.7; }
ul.fusion-checklist .fusion-li-item-content p { margin: 0; }

/* Check-mark lists after the Avada cleanup (tools/clean-avada.php turns [fusion_checklist] into ul.wm-checklist). */
ul.wm-checklist { list-style: none !important; padding-left: 0 !important; margin: 0 0 18px; }
ul.wm-checklist > li { position: relative; padding-left: 30px; margin: 0 0 8px; line-height: 1.7; }
ul.wm-checklist > li::before { content: ""; position: absolute; left: 4px; top: .45em; width: 6px; height: 11px; border: solid #aaaaaa; border-width: 0 2.5px 2.5px 0; transform: rotate(45deg); }

/* Product descriptions (short + "Opis" tab): same typography as the live site –
   Open Sans 16px grey for text and lists, Zilla Slab for headings inside the text. */
body.single-product .woocommerce-product-details__short-description,
body.single-product .woocommerce-Tabs-panel--description {
	font-family: "Open Sans", Arial, sans-serif; font-size: 16px; line-height: 1.8; color: #747474;
}
body.single-product .woocommerce-product-details__short-description :is(p, li, div, span, em, strong),
body.single-product .woocommerce-Tabs-panel--description :is(p, li, div, span, em, strong) { font-family: inherit; }
body.single-product .woocommerce-product-details__short-description :is(h1, h2, h3, h4, h5, h6),
body.single-product .woocommerce-Tabs-panel--description :is(h1, h2, h3, h4, h5, h6):not(:first-child) {
	font-family: "Zilla Slab", Georgia, serif !important; color: #333 !important; letter-spacing: 0; margin: 0 0 14px;
}
body.single-product .woocommerce-product-details__short-description :is(h1, h2, h3, h4, h5, h6) *,
body.single-product .woocommerce-Tabs-panel--description :is(h1, h2, h3, h4, h5, h6) * { font-family: "Zilla Slab", Georgia, serif !important; }
body.single-product .woocommerce-Tabs-panel--description :is(h1, h2, h3, h4, h5):not(:first-child),
body.single-product .woocommerce-product-details__short-description :is(h1, h2, h3, h4, h5) { font-size: 24px !important; font-weight: 400 !important; line-height: 1.4; }
body.single-product .woocommerce-product-details__short-description h6,
body.single-product .woocommerce-Tabs-panel--description h6 { font-size: 18px !important; font-weight: 700 !important; line-height: 1.5; }
body.single-product .woocommerce-product-details__short-description strong,
body.single-product .woocommerce-Tabs-panel--description strong { font-weight: 700; }
body.single-product .woocommerce-Tabs-panel--description ul { padding-left: 20px; margin: 0 0 16px; }

/* Cart + checkout (WooCommerce blocks): white page, beige rounded boxes – same as the shop. */
body.woocommerce-cart, body.woocommerce-checkout { background: #fff; }
.woocommerce-cart .wc-block-components-main, .woocommerce-cart .wc-block-components-sidebar,
.woocommerce-checkout .wc-block-components-main, .woocommerce-checkout .wc-block-components-sidebar .wp-block-woocommerce-checkout-order-summary-block {
	background: var(--wm-cream); border: 0 !important; border-radius: var(--wm-radius); padding: 24px 28px !important;
}
.woocommerce-cart .wc-block-components-sidebar-layout.is-large, .woocommerce-checkout .wc-block-components-sidebar-layout.is-large { gap: 24px; flex-wrap: nowrap; }
.wc-block-components-sidebar-layout:not(.is-large) .wc-block-components-sidebar { margin-top: 20px; }
.woocommerce-cart .wc-block-cart-items, .woocommerce-cart .wc-block-cart-items th, .woocommerce-cart .wc-block-cart-items td { border-color: #e6dfd1 !important; }
.woocommerce-cart .wc-block-cart-item__image img, .woocommerce-checkout .wc-block-components-order-summary-item__image img { background: #fff; border-radius: 8px; padding: 4px; }
.woocommerce-checkout .wc-block-components-text-input input, .woocommerce-checkout .wc-block-components-combobox .components-combobox-control input,
.woocommerce-checkout .wc-blocks-components-select__select, .woocommerce-checkout textarea { background: #fff !important; border-color: #d9d0bf !important; border-radius: 8px !important; }
.woocommerce-cart .wc-block-components-quantity-selector { background: #fff; border-radius: 8px; }
.wc-block-cart__submit-button, .wc-block-components-checkout-place-order-button { text-decoration: none !important; border-radius: 8px !important; }
.wc-block-cart__submit-button .wc-block-components-button__text { text-decoration: none; }
@media (max-width: 767px) {
	.woocommerce-cart .wc-block-components-sidebar-layout, .woocommerce-checkout .wc-block-components-sidebar-layout { flex-wrap: wrap; }
	.woocommerce-cart .wc-block-components-main, .woocommerce-cart .wc-block-components-sidebar,
	.woocommerce-checkout .wc-block-components-main, .woocommerce-checkout .wc-block-components-sidebar .wp-block-woocommerce-checkout-order-summary-block { padding: 16px !important; }
}
/* Classic [woocommerce_cart] (live cart page is a shortcode, not the cart block) */
.woocommerce table.cart td.product-thumbnail img { width: 72px; height: auto; }
.woocommerce-cart .woocommerce table.cart td.actions .coupon #coupon_code { width: 170px; }
