﻿@import url("./fonts.css");

/*
   PlantExtrakt / fusioncommerce
   Stage 2 safe visual system
   - brand tokens aligned to PlantExtrakt green
   - non-shop component layer added at the end
   - VirtueMart-specific blocks preserved for later cleanup
*/

body,
button,
input,
select,
textarea {
	font-family: var(--font-sans);
}

:root {
	--font-sans: "Lato", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  --font-body: "Lato", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  --font-heading: "Poppins", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;

	/* Brand */
	--color-primary: #004c20;
	/*--color-primary:#5CA48E;*/
	/*--color-primary: #52a447;*/
	/*--color-primary: #8bca84;*/
	--color-primary-2: #8EC618;
	--color-primary-rgb: 0, 76, 32;
	--color-primary-dark: #003817;
	--color-primary-strong: #002b12;
	--color-primary-soft: #e7f1eb;
	--color-primary-soft-2: #f2f8f4;

	/* Botanical accents */
	--color-botanical: #56745f;
	--color-botanical-soft: #edf4ef;

	/* Warm accents */
	--color-clay: #8a5f3d;
	--color-clay-soft: #f2e8dc;
	--color-sand: #f7f1e8;
	--color-cream: #fbf8f2;

	/* Commercial accent, use rarely */
	--color-accent: #d96f26;
	--color-accent-rgb: 217, 111, 38;
	--color-accent-dark: #b95a1b;
	--color-accent-soft: #fff0e5;

	/* Legacy warm alias */
	--color-secondary: #b48a52;
	--color-secondary-dark: #8f6b3d;
	--color-secondary-soft: #f5ede1;
	--color-secondary-rgb: 180, 138, 82;

	/* Neutrals */
	--color-text: #243129;
	--color-text-strong: #17231c;
	--color-text-muted: #66746c;
	--color-surface: #ffffff;
	--color-surface-alt: var(--color-cream);
	--color-surface-soft: #f1f5f2;
	--color-surface-soft-hover: #e7eee9;
	--color-border: #d9e3dc;
	--color-border-strong: #bfcec5;
	--color-border-soft: #eadfce;
	--color-border-ui: #dee2e6;
	--color-border-price: #cab8b8;
	--color-black: #000000;
	--color-black-rgb: 0, 0, 0;
	--color-white: #ffffff;
	--color-white-rgb: 255, 255, 255;

	/* Pastels */
	--color-pastel-green: #edf6ef;
	--color-pastel-sage: #eef3ec;
	--color-pastel-mint: #e9f5f1;
	--color-pastel-sand: #f7efe3;
	--color-pastel-clay: #f4e6d9;
	--color-pastel-blue: #edf4f7;

	/* Functional */
	--color-success: #477a58;
	--color-danger: #c95b5b;
	--color-danger-dark: #a84848;
	--color-rating: #9aa79f;
	--color-availability-text: #6f5328;

	/* Links */
	--color-link: var(--color-primary);
	--color-link-hover: var(--color-primary-dark);
	--color-link-underline: rgba(var(--color-primary-rgb), 0.28);
	--color-footer-link: rgba(var(--color-white-rgb), 0.78);
	--color-footer-link-hover: var(--color-white);

	/* Social */
	--color-facebook: #1877f2;
	--color-youtube: #ff0000;
	--color-instagram: #e4405f;
	--color-instagram-1: #f58529;
	--color-instagram-2: #feda77;
	--color-instagram-3: #dd2a7b;
	--color-instagram-4: #8134af;
	--color-instagram-5: #515bd4;
	--color-tiktok-cyan: #69c9d0;
	--color-tiktok-magenta: #ee1d52;

	/* Effects */
	--shadow-xs: 0 2px 8px rgba(19, 34, 25, 0.04);
	--shadow-sm: 0 8px 20px rgba(19, 34, 25, 0.06);
	--shadow-md: 0 14px 30px rgba(19, 34, 25, 0.09);
	--shadow-surface: var(--shadow-md);
	--shadow-menu: 0 16px 34px rgba(20, 38, 28, 0.12);
	--shadow-dropdown: 0 8px 24px rgba(20, 38, 28, 0.14);
	--border-primary-soft: rgba(var(--color-primary-rgb), 0.06);
	--border-primary-soft-08: rgba(var(--color-primary-rgb), 0.08);
	--focus-ring-primary: 0 0 0 0.2rem rgba(var(--color-primary-rgb), 0.14);
	--focus-outline-primary: 2px solid rgba(var(--color-primary-rgb), 0.25);
	--focus-outline-offset: 2px;
	--footer-social-inset: 0 0 0 1px rgba(var(--color-white-rgb), 0.10) inset;

	/* VM effects and colors */
	--shadow-category-card-soft: 0 8px 20px rgba(var(--color-black-rgb), 0.05),
		0 2px 6px rgba(var(--color-primary-rgb), 0.04);
	--shadow-category-card-soft-hover: 0 14px 28px rgba(var(--color-black-rgb), 0.07),
		0 4px 10px rgba(var(--color-primary-rgb), 0.06);
	--category-card-border: rgba(var(--color-primary-rgb), 0.08);
	--category-card-border-hover: rgba(var(--color-primary-rgb), 0.14);
	--category-card-separator: rgba(var(--color-primary-rgb), 0.10);
	--category-card-separator-hover: rgba(var(--color-primary-rgb), 0.18);
	--color-rating-active: #c28a2c;
	--color-rating-empty: #b9beb9;
	--color-rating-meta: var(--color-text-muted);

	/* Rounded UI */
	--bs-border-radius: 0.30rem;
	--bs-border-radius-sm: 0.45rem;
	--bs-border-radius-lg: 0.9rem;
	--bs-border-radius-xl: 1.1rem;
	--bs-border-radius-xxl: 1.35rem;
	--bs-border-radius-pill: 50rem;

	/* Bootstrap remap */
	--bs-primary: var(--color-primary);
	--bs-primary-rgb: var(--color-primary-rgb);
	--bs-secondary: var(--color-sand);
	--bs-secondary-rgb: 247, 241, 232;
	--bs-success: var(--color-success);
	--bs-success-rgb: 71, 122, 88;
	--bs-warning: var(--color-secondary);
	--bs-warning-rgb: var(--color-secondary-rgb);
	--bs-danger: var(--color-danger);
	--bs-danger-rgb: 201, 91, 91;
	--bs-body-color: var(--color-text);
	--bs-body-bg: var(--color-surface);
	--bs-border-color: var(--color-border);
	--bs-secondary-color: var(--color-text-muted);
	--bs-link-color: var(--color-link);
	--bs-link-hover-color: var(--color-link-hover);
	--bs-light: var(--color-cream);
	--bs-light-rgb: 251, 248, 242;
	--bs-heading-color: var(--color-text-strong);

	--plx-vm-filter-sidebar-sticky-offset: 1rem;
}

html,
body {
	overflow-x: clip;
}

@supports not (overflow-x: clip) {

	html,
	body {
		overflow-x: hidden;
	}
}

body {
	font-size: 16px;
	line-height: 1.6;
	color: var(--color-text);
	background: var(--color-surface);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

b,
strong {
	font-weight: 700;
}



/* ==========================================================================
   Original fusioncommerce.css
   Colors remapped to variables
   ========================================================================== */

/* Bootstrap */
.dropdown-menu {
	border-radius: 0;
	--bs-dropdown-zindex: 1030;
}

.dropdown-toggle {
	display: flex;
	align-items: center;
}

.dropdown-toggle::after {
	content: "";
	border: none;
	background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="10" height="10" fill="currentColor" class="bi bi-chevron-down" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708"/></svg>');
	background-repeat: no-repeat;
	width: 10px;
	height: 10px
}


.input-group .btn {
	font-size: 1rem;
	border-radius: var(--bs-border-radius);
}

.form-control,
.form-select {
	font-size: 14px
}

form .form-control,
form .form-select {
	border-color: var(--color-border-strong)
}

/* ==========================================================================
   PLX reusable components
   Small component system for editorial, VM and module snippets
   ========================================================================== */

/* Bootstrap accordion global override */
.accordion {
	--bs-accordion-color: var(--color-text);
	--bs-accordion-bg: var(--color-surface);
	--bs-accordion-border-color: var(--color-border);
	--bs-accordion-border-width: 1px;
	--bs-accordion-border-radius: var(--bs-border-radius);
	--bs-accordion-inner-border-radius: calc(var(--bs-border-radius) - 1px);

	--bs-accordion-btn-padding-x: 1rem;
	--bs-accordion-btn-padding-y: 0.9rem;
	--bs-accordion-btn-color: var(--color-text);
	--bs-accordion-btn-bg: var(--color-surface);
	--bs-accordion-btn-focus-border-color: var(--color-primary);
	--bs-accordion-btn-focus-box-shadow: var(--focus-ring-primary);

	--bs-accordion-active-color: var(--color-primary);
	--bs-accordion-active-bg: var(--color-primary-soft);

	--bs-accordion-body-padding-x: 1rem;
	--bs-accordion-body-padding-y: 1rem;

	border-radius: var(--bs-accordion-border-radius);
}

.accordion-item {
	overflow: hidden;
	background-color: var(--bs-accordion-bg);
	border-color: var(--bs-accordion-border-color);
}

.accordion-item+.accordion-item {
	margin-top: 0.45rem;
	border-top: var(--bs-accordion-border-width) solid var(--bs-accordion-border-color);
}

.accordion-button {
	gap: 0.75rem;
	font-size: 0.95rem;
	font-weight: 600;
	line-height: 1.35;
	color: var(--bs-accordion-btn-color);
	background-color: var(--bs-accordion-btn-bg);
	transition:
		color 0.18s ease,
		background-color 0.18s ease,
		box-shadow 0.18s ease;
}

.accordion-button:hover {
	color: var(--color-primary);
	background-color: color-mix(in srgb, var(--color-primary-soft) 52%, var(--color-white));
}

.accordion-button:not(.collapsed) {
	color: var(--bs-accordion-active-color);
	background-color: var(--bs-accordion-active-bg);
	box-shadow: inset 0 -1px 0 var(--bs-accordion-border-color);
}

.accordion-button:focus {
	z-index: 3;
	border-color: var(--bs-accordion-btn-focus-border-color);
	box-shadow: var(--bs-accordion-btn-focus-box-shadow);
}

/* Replace Bootstrap blue SVG icon with brand-colored mask */
.accordion-button::after {
	width: 0.85rem;
	height: 0.85rem;
	background-image: none;
	background-color: currentColor;
	opacity: 0.68;
	-webkit-mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path fill="black" fill-rule="evenodd" d="M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z"/></svg>');
	mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path fill="black" fill-rule="evenodd" d="M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z"/></svg>');
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	transition:
		transform 0.2s ease,
		opacity 0.2s ease;
}

.accordion-button:not(.collapsed)::after {
	background-image: none;
	opacity: 1;
}

.accordion-body {
	font-size: 0.95rem;
	line-height: 1.65;
	color: var(--color-text);
}

.accordion-body> :last-child {
	margin-bottom: 0;
}

.accordion-body strong {
	color: var(--color-text-strong);
	font-weight: 600;;
}

/* Flush accordion keeps Bootstrap's flush behavior, but with brand colors */
.accordion-flush {
	border-radius: 0;
}

.accordion-flush .accordion-item {
	border-left: 0;
	border-right: 0;
	border-radius: 0;
}

/* Keep VirtueMart category/menu accordions clean */
.vm-menu-default.accordion,
.vm-menu-default .accordion {
	--bs-accordion-bg: transparent;
	--bs-accordion-border-color: transparent;
	--bs-accordion-btn-bg: transparent;
	--bs-accordion-active-bg: transparent;
}


.vm-menu-default .accordion-button {
	padding: 0;
	background-color: transparent;
	box-shadow: none;
}

/* Mobile */
@media screen and (max-width: 768px) {
	.accordion {
		--bs-accordion-btn-padding-x: 0.9rem;
		--bs-accordion-btn-padding-y: 0.82rem;
		--bs-accordion-body-padding-x: 0.9rem;
		--bs-accordion-body-padding-y: 0.9rem;
	}

	.accordion-button,
	.accordion-body {
		font-size: 0.92rem;
	}
}

/* General styles */

img {
	max-width: 100%;
	height: auto;
	aspect-ratio: attr(width) / attr(height);
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: 500;
	margin-bottom: 1rem;
	margin-top: 1.5rem;
	color: var(--color-text);
}

h1 {
	font-size: 32px
}

h2 {
	font-size: 28px
}

h3 {
	font-size: 25px
}

h4 {
	font-size: 22px
}

h5 {
	font-size: 20px
}

h6 {
	font-size: 18px
}


/* Main menu */

.main-menu .parent>a::after,
.main-menu .parent>span::after {
	content: "";
	display: inline-block;
	width: 10px;
	height: 10px;
	margin-left: 5px;
	-webkit-mask: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="10" height="10" fill="currentColor" class="bi bi-chevron-down" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708"/></svg>');
	mask: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="10" height="10" fill="currentColor" class="bi bi-chevron-down" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708"/></svg>');
}

.main-menu .mod-menu__sub .parent>a::after,
.main-menu .mod-menu__sub .parent>span::after {
	position: absolute;
	right: 9px;
	top: 50%;
	transform: translateY(-50%) rotate(-90deg);
}


/* Banners */
.banner-section p {
	margin: 0
}

/* Modules */

.breadcrumb-item+.breadcrumb-item::before {
	float: none;
}

/* Footer */




/*********
Virtuemart
*********/

/* VM cart module */

/* Product page  */
/* Account */
/* VM Stock */
.vm-product-meta-container {
	min-height: 1.75rem;
	gap: 0.75rem;
}

.vm-product-meta-container.is-empty {
	border-bottom-color: transparent !important;
}

.vm-stock-status-text {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-size: 0.8125rem;
	font-weight: 400;
	line-height: 1.2;
	color: var(--color-text-muted);
	white-space: nowrap;
}

.vm-stock-status__dot {
	width: 0.42rem;
	height: 0.42rem;
	flex: 0 0 0.42rem;
	border-radius: 50%;
	background-color: currentColor;
	opacity: 0.95;
	position: relative;
	top: -0.01em;
}

.vm-stock-status.lowstock {
	color: var(--color-secondary-dark);
}

.vm-stock-status.nostock {
	color: var(--color-danger-dark);
}

.vm-stock-status.normalstock {
	color: var(--color-success);
}

.vm-product-meta__rating,
.vm-product-meta__stock {
	display: flex;
	align-items: center;
	min-height: 1.25rem;
}

.vm-product-meta__stock {
	margin-left: auto;
}

.vm-stock-status__label {
	display: inline-block;
	padding: 0.2rem 0.55rem;
	border-radius: var(--bs-border-radius-pill);
	border: 1px solid transparent;
}

/* Vm rating */

.vm-ratingbox-summary {
	display: inline-flex;
	align-items: baseline;
	gap: 0.2rem;
	font-size: 0.8125rem;
	line-height: 1;
	color: var(--color-rating-meta);
	white-space: nowrap;
}

.vm-ratingbox-value {
	font-weight: 600;
	color: var(--color-text);
}

.vm-ratingbox-count {
	color: var(--color-rating-meta);
}

/* VM effects filter */
.vm-effects-filter-slot {
	margin: 1.35rem 0 1.75rem;
}

.plx-vm-effects-filter__title {
	margin-bottom: 0.75rem;
	font-size: 0.95rem;
	font-weight: 600;
	line-height: 1.2;
	color: var(--color-text-strong);
}

.plx-vm-effects-filter__chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.plx-vm-effects-filter__chip {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.48rem 0.78rem;
	border: 1px solid var(--color-border-strong);
	border-radius: var(--bs-border-radius-pill);
	background: var(--color-surface);
	color: var(--color-text);
	font-size: 0.86rem;
	font-weight: 500;
	line-height: 1.2;
	text-decoration: none;
	transition:
		background-color 0.15s ease,
		border-color 0.15s ease,
		color 0.15s ease,
		box-shadow 0.15s ease;
}

.plx-vm-effects-filter__chip:hover,
.plx-vm-effects-filter__chip:focus {
	border-color: var(--category-card-border-hover);
	background: var(--color-primary-soft);
	color: var(--color-primary);
}

.plx-vm-effects-filter__chip.is-active {
	border-color: var(--color-primary);
	background: var(--color-primary);
	color: var(--color-white);
}

.plx-vm-effects-filter__count {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 1.35rem;
	padding: 0.05rem 0.35rem;
	border-radius: var(--bs-border-radius-pill);
	background: rgba(var(--color-black-rgb), 0.06);
	font-size: 0.72rem;
	font-weight: 600;
}

.plx-vm-effects-filter__chip.is-active .plx-vm-effects-filter__count,
.plx-vm-effects-filter__mobile-item.is-active .plx-vm-effects-filter__count {
	background: rgba(var(--color-white-rgb), 0.18);
}

/* Mobile filter button and offcanvas */
.plx-vm-effects-filter__mobile-trigger-wrap.is-fixed {
	position: fixed;
	right: 0.85rem;
	bottom: max(0.85rem, env(safe-area-inset-bottom));
	left: 0.85rem;
	z-index: 1030;
}

.plx-vm-effects-filter__mobile-trigger {
	width: 100%;
	box-shadow: 0 12px 28px rgba(19, 34, 25, 0.2);
}

.plx-vm-effects-filter__offcanvas {
	max-height: 82vh;
	border-top-left-radius: var(--bs-border-radius);
	border-top-right-radius: var(--bs-border-radius);
}

.plx-vm-effects-filter__offcanvas .offcanvas-title {
	margin: 0;
	font-size: 1rem;
	font-weight: 600;
	color: var(--color-text-strong);
}

.plx-vm-effects-filter__mobile-list {
	display: grid;
	gap: 0.45rem;
}

.plx-vm-effects-filter__mobile-item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	padding: 0.75rem 0.85rem;
	border: 1px solid var(--color-border);
	border-radius: var(--bs-border-radius-lg);
	background: var(--color-surface);
	color: var(--color-text);
	text-decoration: none;
}

.plx-vm-effects-filter__mobile-item.is-active {
	border-color: var(--color-primary);
	background: var(--color-primary);
	color: var(--color-white);
}

@media (max-width: 767.98px) {
	.vm-effects-filter-slot {
		margin: 0;
	}

	.plx-vm-effects-filter {
		padding: 0;
		border: 0;
		background: transparent;
	}

	.category-view {
		padding-bottom: 5rem;
	}
}

/*********
Joomla
*********/

/* com_content */
.item-content .page-header h2 {
	/*font-size: 20px;*/
}

/* Article page */
body.com_content.view-article.articole .com-content-article .page-header {
	margin-bottom: 0.75rem;
}

body.com_content.view-article.articole .com-content-article .page-header h1 {
	margin: 0;
	color: var(--color-text-strong);
	font-size: clamp(1.75rem, 2.3vw, 2.25rem);
	font-weight: 600;;
	line-height: 1.15;
}

body.com_content.view-article.articole .com-content-article .article-info {
	display: flex;
	flex-wrap: wrap;
	gap: 0.25rem 0.85rem;
	margin: 0 0 1rem;
	color: var(--color-text-muted) !important;
	font-size: 0.82rem;
	line-height: 1.35;
}

body.com_content.view-article.articole .com-content-article .article-info dd {
	margin: 0;
}

body.com_content.view-article.articole .com-content-article .full-image {
	margin: 0 0 1.25rem;
	border-radius: var(--bs-border-radius-lg);
	overflow: hidden;
	background: var(--color-surface-soft);
}

body.com_content.view-article.articole .com-content-article .full-image img {
	display: block;
	width: 100%;
	height: auto;
}

/* Article page typography */
body.com_content.view-article.articole .com-content-article__body {
	color: var(--color-text);
	font-size: 1rem;
	line-height: 1.72;
}

body.com_content.view-article.articole .com-content-article__body>h2,
body.com_content.view-article.articole .com-content-article__body>div[itemscope]>h2 {
	margin-top: 2.1rem;
	margin-bottom: 0.75rem;
	color: var(--color-text-strong);
	font-size: 1.45rem;
	font-weight: 600;;
	line-height: 1.25;
}

body.com_content.view-article.articole .com-content-article__body h3 {
	margin-top: 1.55rem;
	margin-bottom: 0.5rem;
	color: var(--color-text-strong);
	font-size: 1.14rem;
	font-weight: 600;;
	line-height: 1.32;
}

body.com_content.view-article.articole .com-content-article__body h4 {
	margin-top: 1.25rem;
	margin-bottom: 0.45rem;
	color: var(--color-text-strong);
	font-size: 1rem;
	font-weight: 600;;
	line-height: 1.35;
}

body.com_content.view-article.articole .com-content-article__body p,
body.com_content.view-article.articole .com-content-article__body ul,
body.com_content.view-article.articole .com-content-article__body ol {
	margin-bottom: 1rem;
}

body.com_content.view-article.articole .com-content-article__body li+li {
	margin-top: 0.35rem;
}

body.com_content.view-article.articole .com-content-article__body .accordion-header {
	margin: 0;
	font-size: inherit;
	line-height: inherit;
}

body.com_content.view-article.articole .com-content-article__body .accordion-header .accordion-button {
	font-size: 0.95rem;
	font-weight: 600;;
	line-height: 1.35;
}

.article-info {
	display: flex;
	flex-wrap: wrap;
	font-size: 14px;
	margin-bottom: 5px;
}

.item-image {
	display: block;
	margin: 0 auto 30px;
}

.article-info>* {
	margin-right: 8px
}

.com-content-article__links {
	list-style: none;
	padding: 0;
	margin: 30px 0;
}

body.com_content.view-article.articole .com-content-article__body a {
	color: var(--color-primary);
	text-decoration-color: var(--color-link-underline);
	text-underline-offset: 0.16em;
}

body.com_content.view-article.articole .com-content-article__body a:hover,
body.com_content.view-article.articole .com-content-article__body a:focus {
	color: var(--color-primary-dark);
	text-decoration-color: currentColor;
}



.pagenavigation {
	margin: 30px 0;
}

.pagenavigation .next {
	margin-left: auto;
}

/* tags */
.com-tags-tag-list__category,
.com-tags-tag__category {
	margin-top: 30px;
}

.tag-category .list-group-item h3 {
	margin: 0;
	font-size: 16px;
}


/* User */
.com-users-login.login,
.com-users-reset,
.com-users-remind,
.com-users-registration {
	max-width: 400px;
	margin: auto;
	padding: 15px;
	border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

.control-group,
.com-users-login__remember {
	margin-bottom: 15px;
}

.com-users-reset legend,
.com-users-remind legend {
	font-size: 14px
}

/* Contact */
#contact-form legend {
	font-size: 16px;
	font-weight: 600;
}

.com-contact-featured__table {
	margin-top: 30px;
}

/* Modules */
.sidebar-right ul,
.sidebar-left ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.sidebar-right li,
.sidebar-left li {
	margin-bottom: 10px
}

.mod-login__userdata>div {
	margin-bottom: 15px;
}

.awesomplete input {
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
}


#Passkey {
	width: 24px;
}

/* offcanvas*/
.offcanvas-body .mod-menu {
	flex-direction: column;
}

.offcanvas-body .mod-menu__sub {
	display: none;
	padding: 10px
}


.offcanvas-body .nav-item:last-child {
	border-bottom: none;
}



.offcanvas-body .subtoggle {
	padding: 0;
	background-color: transparent;
	border: none;
	width: 30px;
	height: 30px;
	position: absolute;
	right: 0;
	top: 1px;
	z-index: 1
}

.offcanvas-body .subtoggle.open {
	transform: rotate(-180deg);
	transition: all linear 200ms
}

/* To top */
.back-to-top-link {
	display: none;
	position: fixed;
	right: 12px;
	bottom: 12px;
	z-index: 1020;
}

@media screen and (max-width: 1080px) {

	body {
		font-size: 16px
	}

}

@media screen and (max-width: 991px) {

	h1 {
		font-size: 24px
	}

	h2 {
		font-size: 22px
	}

	h3 {
		font-size: 20px
	}

	h4 {
		font-size: 18px
	}

	h5 {
		font-size: 16px
	}

	h6 {
		font-size: 15px
	}

	.main-search {
		display: none;
	}
}

@media screen and (max-width: 490px) {

	.toolbar {
		padding: 6px 0;
	}

	.toolbar .bg-alt {
		background-color: var(--color-text);
		color: var(--color-white);
	}

	.top-bar {
		background-color: var(--color-text);
		color: var(--color-white);
	}

	.top-bar a {
		color: var(--color-white);
	}

	.cart-module .bi-cart3 {
		margin-top: 2px
	}

	.cart-module .total_products {
		display: none;
	}

	.vmCartModule .dropdown-menu {
		margin-right: -10px !important;
	}

	.cart-module .dropdown-toggle::after {
		content: none;
	}

	.com-contact-featured__items,
	.com-contact-category__items {
		overflow-x: auto;
	}

	footer {
		padding-bottom: 30px;
	}
}

/* ==========================================================================
   Integrated user.css
   Temporary override layer to be reorganized in the next cleanup pass
   ========================================================================== */

/* Base */
a,
.btn-link {
	color: var(--color-primary);
	text-decoration: none;
}

a:hover,
.btn-link:hover {
	color: var(--color-primary-dark);
}


.text-secondary,
.product_s_desc,
.breadcrumb-item.active,
.vm-cart-item-sku,
.vm-cart-item-cfields,
.vm-cart-item-basicprice del,
.vmpayment_description,
.vmpayment_description *,
.price-crossed span:last-child {
	color: var(--color-text-muted) !important;
}

@media (width >=992px) {
	.py-lg-4 {
		padding-top: 1.25rem !important;
		padding-bottom: 1.25rem !important;
	}
}

/* Global rounded surfaces */
.btn,
.dropdown-menu,
.card,
.offcanvas,
.form-control,
.form-select,
.input-group-text,
.page-link,
.alert,
.vmCartModule .dropdown-menu,
.com-users-login.login,
.com-users-reset,
.com-users-remind,
.com-users-registration,
.mod-login__userdata.userdata,
.vmquote {
	border-radius: var(--bs-border-radius);
}

.dropdown-menu,
.main-menu .mod-menu__sub,
.vmCartModule .dropdown-menu {
	/*overflow: hidden;*/
}

/* Buttons */
.btn-check:checked+.btn,
.btn.active,
.btn.show,
.btn:first-child:active,
:not(.btn-check)+.btn:active {
	color: var(--bs-btn-active-color, var(--color-white));
}

/* Toolbar, breadcrumbs, footer */

/* Forms */
.form-control,
.form-select,
.fusioncommerce-search input,
.vm-search-custom-search-input input,
#vm-orderby-select {
	border-color: var(--color-border-strong);
}

.fusioncommerce-search input,
.vm-search-custom-search-input input,
#vm-orderby-select {
	border-radius: var(--bs-border-radius) !important;
}

.form-control:focus,
.form-select:focus,
.fusioncommerce-search input:focus,
.vm-search-custom-search-input input:focus {
	border-color: rgba(var(--color-primary-rgb), 0.35);
	box-shadow: var(--focus-ring-primary);
}

.form-control-feedback {
	display: block;
	font-size: 14px;
	color: var(--color-danger);
}

/* Generic surfaces */
.dropdown-menu,
.offcanvas,
.com-users-login.login,
.com-users-reset,
.com-users-remind,
.com-users-registration,
.mod-login__userdata.userdata {
	padding: 15px;
	border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
	border-color: var(--color-border);
	box-shadow: var(--shadow-surface);
}

/* Pagination */
.active>.page-link,
.page-link.active {
	background-color: var(--color-primary);
	border-color: var(--color-primary);
}

.page-link,
.page-link:hover {
	color: var(--color-primary-dark);
}

/* Tags */
.tags .btn {
	font-size: 12px;
	padding: 0 5px;
	background-color: var(--color-primary);
	border-color: var(--color-primary);
	color: var(--color-white);
}

.tags .btn:hover {
	background-color: var(--color-primary-dark);
	border-color: var(--color-primary-dark);
}

/* Offcanvas menu */
.offcanvas-body .nav-item {
	padding: 5px 0;
	border-bottom: 1px solid var(--color-border);
	position: relative;
	border-bottom-color: var(--color-border);
}

.offcanvas-body a {
	font-size: 15px;
	color: var(--color-text);
}

.offcanvas-body .active>a {
	font-weight: 700;
	color: var(--color-primary);
}

/* VM general */
.vm-product-title {
	font-size: 1rem !important;
	min-height: 2.7em;
	line-height: 1.35;
}

.category-view .quantity-box {
	display: none;
	visibility: hidden;
}

.vm-products-type-title,
.vm-page-title,
.vm-category-title,
.vm-section-title {
	color: var(--color-text-strong);
}

.vm-price-desc {
	color: var(--color-text-muted);
}

.vm-has-discount .PricesalesPrice,
.vm-product-details-container .vm-price-value .PricesalesPrice,
.vm2-remove_from_cart {
	color: var(--color-danger);
}

.vm-menu-btn,
.vm-search-custom-search-input .btn,
.addtocart-bar svg {
	color: var(--color-primary);
}

.vm-menu-default .accordion-item {
	margin-top: 0;
	border: 0;
	box-shadow: none;
	background-color: transparent;
}

/* VM category page */
.vm-category-subcategories .vm-subcategory>a {
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: 0.9rem;
	background: linear-gradient(180deg, var(--color-surface) 0%, var(--color-surface-alt) 100%);
	border: 1px solid var(--category-card-border);
	border-radius: var(--bs-border-radius);
	box-shadow: var(--shadow-category-card-soft);
	transition: box-shadow 0.22s ease, border-color 0.22s ease, background-color 0.22s ease;
	backface-visibility: hidden;
	-webkit-font-smoothing: antialiased;
}

.vm-category-subcategories .vm-subcategory>a:hover,
.vm-category-subcategories .vm-subcategory>a:focus {
	border-color: var(--category-card-border-hover);
	box-shadow: var(--shadow-category-card-soft-hover);
}

.vm-category-subcategories .browseCategoryImage {
	display: block;
	width: 100%;
	margin-bottom: 0.9rem !important;
	border-radius: calc(var(--bs-border-radius) - 0.15rem);
}

.vm-category-subcategories .vm-subcategory-title {
	margin: 0;
	padding-top: 0.85rem;
	border-top: 1px solid var(--category-card-separator) !important;
	color: var(--color-text);
	font-size: 1.25rem;
	font-weight: 500;
	line-height: 1.35;
	transition: color 0.22s ease, border-color 0.22s ease;
}

.vm-category-subcategories .vm-subcategory>a:hover .vm-subcategory-title,
.vm-category-subcategories .vm-subcategory>a:focus .vm-subcategory-title {
	color: var(--color-primary);
	border-top-color: var(--category-card-separator-hover) !important;
}

@media (min-width: 1400px) {
	.col-xxl-20 {
		width: 20%;
	}

	.col-xxl-80 {
		width: 80%;
	}
}

/* Stock + availability */
.bi-square,
.vm-ratingbox-unrated svg,
.customer-reviews .form-check-label svg {
	color: var(--color-rating-empty);
}

.vm-ratingbox-rated svg {
	color: var(--color-rating-active) !important;
}

.normalstock .bi-square-fill {
	color: var(--color-success) !important;
}

.lowstock .bi-square-fill {
	color: var(--color-secondary) !important;
}

.nostock .bi-square-fill {
	color: var(--color-danger) !important;
}

.availability {
	background: var(--color-secondary-soft);
	color: var(--color-availability-text);
	border-radius: var(--bs-border-radius);
	padding: 0.45rem 0.75rem;
}

/* Search and cart */
.vmCartModule .btn-link {
	color: var(--color-text);
}

.vmCartModule .dropdown-menu {
	border: 1px solid var(--color-border);
}

/* Product tabs */
#tabs {
	border-bottom-color: var(--color-border);
}

#tabs>li {
	background-color: var(--color-primary-soft);
	color: var(--color-primary);
	border-top-left-radius: var(--bs-border-radius);
	border-top-right-radius: var(--bs-border-radius);
}

#tabs>li.current {
	background-color: var(--color-primary);
	color: var(--color-white);
}

/* Checkout */
.vm-coupon-container .btn {
	border-radius: var(--bs-border-radius);
}

.vmshipment,
.vmpayment {
	gap: 0.25rem 0;
}

.vm-shipment-plugin-single label,
.vm-payment-plugin-single label {
	padding: 0.75rem 0.9rem;
	border: 1px solid var(--color-border);
	border-radius: var(--bs-border-radius);
	background-color: var(--color-white);
}

/* Quotes and notices */
.vmquote {
	background-color: var(--color-primary-soft);
	color: var(--color-text);
}

/* VM categories sidebar left */
@media (min-width: 992px) {
	.plx-shop-sidebar-col {
		align-self: flex-start;
	}

	.plx-vm-filter-sidebar {
		position: sticky;
		top: var(--plx-vm-filter-sidebar-sticky-offset, 1rem);
		z-index: 2;
		width: 100%;
	}

	.plx-vm-filter-sidebar__body {
		max-height: calc(100vh - var(--plx-vm-filter-sidebar-sticky-offset, 1rem) - 1rem);
		overflow-y: auto;
	}
}

.plx-shop-sidebar .efecte .vm-menu {
	max-height: 350px;
	overflow-y: scroll;
}

.plx-shop-sidebar .vm-menu {
	scrollbar-width: thin;
	scrollbar-color: var(--color-primary) var(--color-sand);
}

.plx-shop-sidebar *::-webkit-scrollbar-thumb {
	background-color: var(--color-primary);
	border-radius: 20px;
	border: 2px solid var(--color-primary);
}

.plx-shop-sidebar *::-webkit-scrollbar-track {
	background: var(--color-cream);
}

/* =========================
   2. LINKURI UTILITARE DE PRODUS
   ========================= */

.prospect a,
.plx-docs__link,
.back-to-category a,
.vm-cart-item-name a {
	color: var(--color-link);
	text-decoration: none;
	transition: color 0.2s ease;
}

.prospect a:hover,
.prospect a:focus,
.plx-docs__link:hover,
.plx-docs__link:focus,
.back-to-category a:hover,
.back-to-category a:focus,
.vm-cart-item-name a:hover,
.vm-cart-item-name a:focus {
	color: var(--color-link-hover);
	text-decoration: none;
}

/* prospectul poate fi puÈ›in mai clar */
.plx-docs__link,
.prospect a {
	font-weight: 500;
}

/* =========================
   3. FOOTER LINKS
   ========================= */



/* logo / badges / social din footer sÄƒ nu primeascÄƒ tratament de text link */
footer .social-links a,
footer .btn,
footer img+a,
footer .footer-badges a,
footer a:has(img) {
	border-bottom: 0;
	text-decoration: none;
}

/* fallback pentru browsere fÄƒrÄƒ suport bun pe :has */
footer .social-links a,
footer .footer-badges a {
	border-bottom: 0 !important;
	text-decoration: none !important;
}

/* =========================
   4. BUTOANE = BUTOANE
   ========================= */

a.btn,
.btn,
button.btn,
.vm-addtocart-button-wrapper .btn,
.show-cart,
.back-to-top-link,
.btn-link.btn-sm,
.vmCartModule .btn {
	text-decoration: none !important;
}

a.btn:hover,
.btn:hover,
button.btn:hover,
.vm-addtocart-button-wrapper .btn:hover,
.show-cart:hover,
.back-to-top-link:hover,
.vmCartModule .btn:hover {
	text-decoration: none !important;
}

/* =========================
   5. MENIU È˜I NAVIGAÈšIE
   ========================= */

.offcanvas .mod-menu a,
.offcanvas .mod-menu__heading,
.breadcrumb a,
header a.logo,
header .toolbar a,
.cart-module a,
.cart-module .btn-link {
	text-decoration: none !important;
	border-bottom: 0 !important;
}

/* =========================
   6. TITLURI
   ========================= */

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a,
.module-title a,
.vm-page-title a,
.vm-section-title a,
.vm-product-title a {
	text-decoration: none;
	border-bottom: 0;
	color: inherit;
}

h1 a:hover,
h2 a:hover,
h3 a:hover,
h4 a:hover,
h5 a:hover,
h6 a:hover,
.module-title a:hover,
.vm-page-title a:hover,
.vm-section-title a:hover,
.vm-product-title a:hover {
	color: var(--color-link-hover);
	text-decoration: none;
}

/* VM category filter sidebar - clean vertical filter and sticky wrapper */
@media (min-width: 992px) {
	.vm-category-filter-row {
		align-items: stretch !important;
	}

	.vm-category-filter-column {
		align-self: stretch !important;
	}
}

@media (max-width: 991.98px) {
	.plx-vm-filter-sidebar__body {
		padding: 0;
		border: 0;
		background: transparent;
	}
}

/* VM category filter sidebar - visual layer */
@media (min-width: 992px) {
	.plx-vm-filter-sidebar {
		position: sticky;
		top: var(--plx-vm-filter-sidebar-sticky-offset, 3rem);
		z-index: 2;
		width: 100%;
		align-self: flex-start;
	}

	.plx-vm-filter-sidebar__body {
		max-height: calc(100vh - var(--plx-vm-filter-sidebar-sticky-offset, 3rem) - 1rem);
		padding: 0.95rem;
		overflow: hidden;
		border: 1px solid var(--color-border);
		border-radius: var(--bs-border-radius-lg);
		background: var(--color-surface-alt);
	}
}

/* Space between multiple filter modules in the same sidebar */
.plx-vm-filter-sidebar__body>*+* {
	margin-top: 1rem !important;
	padding-top: 0.9rem !important;
	border-top: 1px solid color-mix(in srgb, var(--color-border) 72%, transparent);
}

.plx-vm-filter-sidebar .plx-vm-effects-filter--vertical .plx-vm-effects-filter__title {
	margin: 0 0 0.55rem;
	font-size: 0.92rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--color-text-strong);
}

.plx-vm-filter-sidebar .plx-vm-effects-filter--vertical .plx-vm-effects-filter__vertical-list {
	display: flex;
	flex-direction: column;
	max-height: var(--plx-vm-effects-filter-list-max-height, 18rem);
	padding-right: 0.45rem;
	overflow-y: auto;
	overflow-x: hidden;
	scrollbar-width: thin;
	scrollbar-color: var(--color-primary) color-mix(in srgb, var(--color-primary-soft) 70%, transparent);
}

/* Chrome / Edge / Safari scrollbar */
.plx-vm-filter-sidebar .plx-vm-effects-filter--vertical .plx-vm-effects-filter__vertical-list::-webkit-scrollbar {
	width: 0.65rem;
}

.plx-vm-filter-sidebar .plx-vm-effects-filter--vertical .plx-vm-effects-filter__vertical-list::-webkit-scrollbar-track {
	border-radius: var(--bs-border-radius-pill);
	background: color-mix(in srgb, var(--color-primary-soft) 70%, transparent);
}

.plx-vm-filter-sidebar .plx-vm-effects-filter--vertical .plx-vm-effects-filter__vertical-list::-webkit-scrollbar-thumb {
	border: 0.18rem solid color-mix(in srgb, var(--color-primary-soft) 70%, transparent);
	border-radius: var(--bs-border-radius-pill);
	background: var(--color-primary);
}

.plx-vm-filter-sidebar .plx-vm-effects-filter--vertical .plx-vm-effects-filter__vertical-list::-webkit-scrollbar-thumb:hover {
	background: var(--color-primary-dark);
}

/* Optional scrollbar arrows, only where WebKit supports them */
.plx-vm-filter-sidebar .plx-vm-effects-filter--vertical .plx-vm-effects-filter__vertical-list::-webkit-scrollbar-button:single-button:vertical:decrement,
.plx-vm-filter-sidebar .plx-vm-effects-filter--vertical .plx-vm-effects-filter__vertical-list::-webkit-scrollbar-button:single-button:vertical:increment {
	display: block;
	height: 0.62rem;
	border-radius: var(--bs-border-radius-pill);
	background-color: transparent;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 0.42rem 0.42rem;
}

.plx-vm-filter-sidebar .plx-vm-effects-filter--vertical .plx-vm-effects-filter__vertical-list::-webkit-scrollbar-button:single-button:vertical:decrement {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23004c20' d='M8 4.5 3 9.5h10L8 4.5z'/%3E%3C/svg%3E");
}

.plx-vm-filter-sidebar .plx-vm-effects-filter--vertical .plx-vm-effects-filter__vertical-list::-webkit-scrollbar-button:single-button:vertical:increment {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23004c20' d='M8 11.5 3 6.5h10L8 11.5z'/%3E%3C/svg%3E");
}

/* Vertical links */
.plx-vm-filter-sidebar .plx-vm-effects-filter--vertical .plx-vm-effects-filter__vertical-item,
.plx-vm-filter-sidebar .plx-vm-effects-filter--vertical .plx-vm-effects-filter__vertical-item:visited {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.5rem;
	min-height: 1.55rem;
	padding: 0.16rem 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--color-text) !important;
	font-size: 0.82rem;
	font-weight: 400;
	line-height: 1.25;
	text-decoration: none !important;
}

.plx-vm-filter-sidebar .plx-vm-effects-filter--vertical .plx-vm-effects-filter__vertical-item:hover,
.plx-vm-filter-sidebar .plx-vm-effects-filter--vertical .plx-vm-effects-filter__vertical-item:focus {
	background: transparent !important;
	color: var(--color-primary) !important;
	text-decoration: underline !important;
	text-underline-offset: 0.16em;
}

.plx-vm-filter-sidebar .plx-vm-effects-filter--vertical .plx-vm-effects-filter__vertical-item.is-active,
.plx-vm-filter-sidebar .plx-vm-effects-filter--vertical .plx-vm-effects-filter__vertical-item[aria-current="page"] {
	background: transparent !important;
	color: var(--color-primary) !important;
	font-weight: 700;
	text-decoration: none !important;
}

/* Counts in sidebar links */
.plx-vm-filter-sidebar .plx-vm-effects-filter--vertical .plx-vm-effects-filter__count {
	margin-left: auto;
	min-width: 0;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	color: var(--color-text-muted);
	font-size: 0.76em;
	font-weight: 500;
}

.plx-vm-filter-sidebar .plx-vm-effects-filter--vertical .plx-vm-effects-filter__vertical-item.is-active .plx-vm-effects-filter__count,
.plx-vm-filter-sidebar .plx-vm-effects-filter--vertical .plx-vm-effects-filter__vertical-item[aria-current="page"] .plx-vm-effects-filter__count {
	color: inherit;
}

/* ========================================================================== 
   Stage 2 final visual layer
   General non-shop system. VM-specific blocks above are intentionally preserved.
   ========================================================================== */

/*.item-page h1,
.com-content-article h1,
.plx-page-intro__title,
.plx-hero__title {
	font-size: clamp(2rem, 4vw, 3.15rem);
	letter-spacing: -0.035em;
}

.item-page h2,
.com-content-article h2,
.plx-section__title,
.plx-cta__title {
	font-size: clamp(1.65rem, 3vw, 2.25rem);
	letter-spacing: -0.025em;
}*/

/* Header */
.header {
	background: var(--color-surface);
	border-bottom: 1px solid rgba(var(--color-primary-rgb), 0.08);
}

.toolbar {
	font-size: 14px;
	padding: 9px 0;
	background: var(--color-cream);
	border-bottom: 1px solid rgba(var(--color-primary-rgb), 0.06);
	color: var(--color-text-muted);
}

.header-inner {
	background: var(--color-surface);
}

/* White main menu */
.main-menu {
	background: var(--color-surface) !important;
	color: var(--color-text);
	/*border-top: 1px solid rgba(var(--color-primary-rgb), 0.08);
	border-bottom: 1px solid rgba(var(--color-primary-rgb), 0.08);*/
}

.main-menu .nav-item {
	position: relative;
}

.main-menu a,
.main-menu span,
.main-menu .mod-menu__heading {
	position: relative;
	display: block;
	padding: 0.95rem 1.05rem;
	background: transparent !important;
	color: var(--color-text) !important;
	font-weight: 550;
	text-decoration: none !important;
	border-bottom: 0 !important;
	transition:
		color 0.18s ease,
		background-color 0.18s ease;
}

.main-menu .active>a,
.main-menu .active>span,
.main-menu a:hover,
.main-menu a:focus,
.main-menu span:hover,
.main-menu span:focus,
.main-menu .mod-menu__heading:hover,
.main-menu .mod-menu__heading:focus {
	/*background: var(--color-primary-soft-2) !important;*/
	color: var(--color-primary) !important;
}

.main-menu .active>a::before,
.main-menu .active>span::before {
	content: "";
	position: absolute;
	right: 1.05rem;
	bottom: 0.42rem;
	left: 1.05rem;
	height: 2px;
	border-radius: var(--bs-border-radius-pill);
	background: var(--color-primary);
}

.main-menu .parent>a::after,
.main-menu .parent>span::after,
.main-menu .parent>.mod-menu__heading::after {
	background-color: currentColor !important;
}

.main-menu .mod-menu__sub {
	position: absolute;
	left: 0;
	top: 100%;
	z-index: 1022;
	min-width: 14rem;
	padding: 0.35rem;
	border: 1px solid var(--color-border);
	border-radius: var(--bs-border-radius);
	background: var(--color-surface);
	box-shadow: var(--shadow-menu);
	opacity: 0;
	visibility: hidden;
	transition:
		opacity 0.18s ease,
		visibility 0.18s ease;
}

.main-menu .parent:hover>.mod-menu__sub,
.main-menu .parent:focus-within>.mod-menu__sub {
	opacity: 1;
	visibility: visible;
}

.main-menu .mod-menu__sub a,
.main-menu .mod-menu__sub span,
.main-menu .mod-menu__sub .mod-menu__heading {
	padding: 0.35rem 0.65rem;
	border-radius: var(--bs-border-radius);
	background: var(--color-surface) !important;
	color: var(--color-text) !important;
}

.main-menu .mod-menu__sub a:hover,
.main-menu .mod-menu__sub a:focus,
.main-menu .mod-menu__sub span:hover,
.main-menu .mod-menu__sub span:focus,
.main-menu .mod-menu__sub .active>a,
.main-menu .mod-menu__sub .active>span {
	color: var(--color-primary) !important;
}

.mod-menu__sub .mod-menu__sub {
	left: 100%;
	top: 0;
}

@media (max-width: 1199.98px) {
	.main-menu {
		border: 0;
	}
}

/* Buttons */
.btn {
	font-weight: 600;
	text-decoration: none !important;
}

.plx-section .btn,
.plx-hero .btn,
.plx-cta .btn,
.plx-page-intro .btn {
	border-radius: var(--bs-border-radius-pill);
}

.btn-primary {
	--bs-btn-color: var(--color-white);
	--bs-btn-bg: var(--color-primary);
	--bs-btn-border-color: var(--color-primary);
	--bs-btn-hover-color: var(--color-white);
	--bs-btn-hover-bg: var(--color-primary-dark);
	--bs-btn-hover-border-color: var(--color-primary-dark);
	--bs-btn-focus-shadow-rgb: 49, 132, 253;
	--bs-btn-active-color: var(--color-white);
	--bs-btn-active-bg: var(--color-primary-strong);
	--bs-btn-active-border-color: var(--color-primary-strong);
	--bs-btn-disabled-color: var(--color-white);
	--bs-btn-disabled-bg: #8aab99;
	--bs-btn-disabled-border-color: #8aab99;
}

.btn-secondary {
	--bs-btn-color: var(--color-primary);
	--bs-btn-bg: var(--color-sand);
	--bs-btn-border-color: var(--color-border-soft);
	--bs-btn-hover-color: var(--color-white);
	--bs-btn-hover-bg: var(--color-primary);
	--bs-btn-hover-border-color: var(--color-primary);
	--bs-btn-active-color: var(--color-white);
	--bs-btn-active-bg: var(--color-primary-dark);
	--bs-btn-active-border-color: var(--color-primary-dark);
}

.btn-outline-primary {
	--bs-btn-color: var(--color-primary);
	--bs-btn-border-color: rgba(var(--color-primary-rgb), 0.35);
	--bs-btn-hover-color: var(--color-white);
	--bs-btn-hover-bg: var(--color-primary);
	--bs-btn-hover-border-color: var(--color-primary);
	--bs-btn-active-color: var(--color-white);
	--bs-btn-active-bg: var(--color-primary-dark);
	--bs-btn-active-border-color: var(--color-primary-dark);
}

/* Breadcrumbs */
.breadcrumbs {
	margin-bottom: 1.25rem;
}

.mod-breadcrumbs {
	/*padding: 0.65rem 0.9rem;
	border: 1px solid rgba(var(--color-primary-rgb), 0.08);
	border-radius: var(--bs-border-radius-lg);
	background: var(--color-cream);*/
	font-size: 0.88rem;
	white-space: nowrap;
	flex-wrap: nowrap;
	overflow-x: auto;
}

.mod-breadcrumbs a {
	color: var(--color-primary);
	text-decoration: none;
}

.breadcrumb-item.active {
	color: var(--color-text-muted);
}

/* Non-shop sections */
.plx-section {
	--plx-section-py: clamp(2.5rem, 6vw, 5rem);
	margin-block: 0;
	padding-block: var(--plx-section-py);
}

.plx-section--sm,
.plx-section--compact {
	--plx-section-py: clamp(1.75rem, 4vw, 3rem);
	margin-block: 0;
}

.plx-section--lg {
	--plx-section-py: clamp(3.5rem, 7vw, 6rem);
	margin-block: 0;
}

.plx-section--soft {
	background: var(--color-cream);
}

.plx-section--green-soft {
	background: var(--color-primary-soft-2);
}

.plx-section__head {
	max-width: 48rem;
	margin-bottom: 1.75rem;
}

.plx-section__kicker,
.plx-kicker {
	margin-bottom: 0.55rem;
	color: var(--color-clay);
	font-size: 0.78rem;
	font-weight: 750;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.plx-section__intro {
	max-width: 48rem;
	margin-bottom: 0;
	color: var(--color-text-muted);
	font-size: 1.05rem;
	line-height: 1.7;
}

/* Hero */
.plx-hero {
	position: relative;
	padding-block: clamp(3rem, 8vw, 6.5rem);
	background:
		radial-gradient(circle at 85% 15%, rgba(var(--color-primary-rgb), 0.08), transparent 34rem),
		linear-gradient(135deg, var(--color-cream), var(--color-surface));
	overflow: hidden;
}

.plx-hero--green {
	background:
		radial-gradient(circle at 85% 15%, rgba(var(--color-white-rgb), 0.12), transparent 32rem),
		linear-gradient(135deg, var(--color-primary-strong), var(--color-primary));
	color: var(--color-white);
}

.plx-hero__content {
	max-width: 46rem;
}

.plx-hero__kicker {
	margin-bottom: 0.75rem;
	color: var(--color-clay);
	font-size: 0.8rem;
	font-weight: 750;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.plx-hero__title {
	margin-bottom: 1rem;
	color: var(--color-text-strong);
}

.plx-hero__text {
	max-width: 40rem;
	margin-bottom: 1.5rem;
	color: var(--color-text-muted);
	font-size: 1.12rem;
	line-height: 1.75;
}

.plx-hero__actions,
.plx-page-intro__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
}

.plx-hero--green .plx-hero__kicker,
.plx-hero--green .plx-hero__title,
.plx-hero--green .plx-hero__text {
	color: var(--color-white);
}

.plx-hero--green .plx-hero__text {
	opacity: 0.82;
}

/* Page intro */
.plx-page-intro {
	max-width: 52rem;
	margin-bottom: clamp(1.75rem, 4vw, 3rem);
}

.plx-page-intro__kicker {
	margin-bottom: 0.5rem;
	color: var(--color-clay);
	font-size: 0.78rem;
	font-weight: 750;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.plx-page-intro__title {
	margin-bottom: 0.75rem;
}

.plx-page-intro__text {
	color: var(--color-text-muted);
	font-size: 1.08rem;
	line-height: 1.75;
}

/* Card variants */
.plx-card--green {
	--plx-card-bg: var(--color-primary-soft-2);
	--plx-card-border: rgba(var(--color-primary-rgb), 0.14);
}

.plx-card--sand {
	--plx-card-bg: var(--color-sand);
	--plx-card-border: #eadfce;
}

.plx-card--clay {
	--plx-card-bg: var(--color-clay-soft);
	--plx-card-border: #e2cdb8;
}

.plx-card--blue {
	--plx-card-bg: var(--color-pastel-blue);
	--plx-card-border: #d7e6eb;
}

.plx-card--editorial {
	--plx-card-radius: var(--bs-border-radius);
	--plx-card-shadow: var(--shadow-xs);
}

.plx-card--link:hover,
.plx-card--link:focus {
	background: var(--color-primary-soft);
	color: var(--color-primary);
	/*transform: translateY(-2px);*/
	border-color: rgba(var(--color-primary-rgb), 0.24);
	box-shadow: var(--shadow-sm);
}

/* Trust blocks */
.plx-trust {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 13rem), 1fr));
	gap: 1rem;
}

.plx-trust__item {
	display: flex;
	gap: 0.85rem;
	align-items: flex-start;
	padding: 1rem;
	border: 1px solid var(--color-border);
	border-radius: var(--bs-border-radius-xl);
	background: var(--color-surface);
}

.plx-trust__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 2.4rem;
	width: 2.4rem;
	height: 2.4rem;
	border-radius: var(--bs-border-radius-pill);
	background: var(--color-primary-soft);
	color: var(--color-primary);
	font-weight: 750;
}

.plx-trust__title {
	margin-bottom: 0.2rem;
	font-weight: 700;
	color: var(--color-text-strong);
}

.plx-trust__text {
	margin-bottom: 0;
	color: var(--color-text-muted);
	font-size: 0.92rem;
}

/* CTA */
.plx-cta {
	padding: clamp(1.5rem, 4vw, 2.5rem);
	border-radius: var(--bs-border-radius-xxl);
	background:
		radial-gradient(circle at 90% 10%, rgba(var(--color-white-rgb), 0.14), transparent 20rem),
		linear-gradient(135deg, var(--color-primary), var(--color-primary-strong));
	color: var(--color-white);
}

.plx-cta__title {
	color: var(--color-white);
	margin-bottom: 0.5rem;
}

.plx-cta__text {
	max-width: 42rem;
	margin-bottom: 1.25rem;
	color: rgba(var(--color-white-rgb), 0.82);
}

.plx-cta .btn-secondary {
	--bs-btn-color: var(--color-primary);
	--bs-btn-bg: var(--color-white);
	--bs-btn-border-color: var(--color-white);
	--bs-btn-hover-color: var(--color-primary);
	--bs-btn-hover-bg: var(--color-primary-soft);
	--bs-btn-hover-border-color: var(--color-primary-soft);
}

/* Article cards */
.plx-article-card {
	display: flex;
	flex-direction: column;
	width: 100%;
	height: 100%;
	min-width: 0;
	color: var(--color-text);
}

.plx-article-card__body {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	min-width: 0;
}

.plx-article-card__meta {
	margin-bottom: 0.45rem;
	color: var(--color-clay);
	font-size: 0.78rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

.plx-article-card__title {
	margin-bottom: 0.5rem;
	color: var(--color-text-strong);
	font-size: 1.08rem;
}

.plx-article-card__text {
	color: var(--color-text-muted);
	font-size: 0.95rem;
}

/* Optional boxed article card variant */
.plx-article-grid-module--boxed .plx-article-card {
	overflow: hidden;
	border: 1px solid var(--color-border);
	border-radius: var(--bs-border-radius-xl);
	background: var(--color-surface);
	box-shadow: var(--shadow-xs);
	text-decoration: none !important;
	transition:
		transform 0.18s ease,
		box-shadow 0.18s ease,
		border-color 0.18s ease;
}

.plx-article-grid-module--boxed .plx-article-card:hover,
.plx-article-grid-module--boxed .plx-article-card:focus-within {
	transform: translateY(-2px);
	border-color: rgba(var(--color-primary-rgb), 0.22);
	box-shadow: var(--shadow-sm);
}

/* Brand cards */
/*.plx-brand-card {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 1rem;
	align-items: center;
	height: 100%;
	padding: 1.2rem;
	border: 1px solid var(--color-border);
	border-radius: var(--bs-border-radius-xl);
	background: var(--color-surface);
	text-decoration: none !important;
	color: var(--color-text);
	transition:
		border-color 0.18s ease,
		box-shadow 0.18s ease,
		transform 0.18s ease;
}

.plx-brand-card:hover,
.plx-brand-card:focus {
	transform: translateY(-2px);
	border-color: rgba(var(--color-primary-rgb), 0.24);
	box-shadow: var(--shadow-sm);
	color: var(--color-text);
}

.plx-brand-card__logo {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 5rem;
	height: 5rem;
}

.plx-brand-card__logo img {
	max-width: 80%;
	max-height: 80%;
	object-fit: contain;
}

.plx-brand-card__title {
	margin-bottom: 0.25rem;
	color: var(--color-text-strong);
	font-weight: 750;
}

.plx-brand-card__text {
	margin-bottom: 0;
	color: var(--color-text-muted);
	font-size: 0.94rem;
}

@media (max-width: 575.98px) {
	.plx-brand-card {
		grid-template-columns: 1fr;
	}

	.plx-brand-card__logo {
		width: 4.5rem;
		height: 4.5rem;
	}
}*/

/* Footer */
footer {
	padding: clamp(2.5rem, 6vw, 4.5rem) 0;
	background: var(--color-primary-strong) !important;
	color: rgba(var(--color-white-rgb), 0.78);
}

footer .module-title {
	color: var(--color-white);
	font-size: 1rem;
	font-weight: 750;
	margin-bottom: 1rem;
}

footer a:not(.btn),
footer .moduletable a:not(.btn),
footer .custom a:not(.btn) {
	color: var(--color-footer-link);
	text-decoration: none;
	border-bottom: 1px solid transparent;
	transition:
		color 0.18s ease,
		border-color 0.18s ease;
}

footer a:hover:not(.btn),
footer a:focus:not(.btn),
footer .moduletable a:hover:not(.btn),
footer .moduletable a:focus:not(.btn),
footer .custom a:hover:not(.btn),
footer .custom a:focus:not(.btn) {
	color: var(--color-footer-link-hover);
	border-bottom-color: rgba(var(--color-white-rgb), 0.35);
	text-decoration: none;
}

footer .nav {
	flex-direction: column;
}

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

footer li,
footer .nav-item {
	margin-bottom: 0.5rem;
}

footer .border-top {
	border-color: rgba(var(--color-white-rgb), 0.14) !important;
}

footer .social-links .social-link {
	background: rgba(var(--color-white-rgb), 0.08);
	border-color: rgba(var(--color-white-rgb), 0.10);
	box-shadow: var(--footer-social-inset);
}

footer .social-links .social-link:hover {
	background: rgba(var(--color-white-rgb), 0.14);
	color: inherit;
}

@media (prefers-reduced-motion: reduce) {

	.plx-card--link,
	.plx-article-card,
	.plx-brand-card {
		transition: none;
	}

	.plx-card--link:hover,
	.plx-article-card:hover,
	.plx-brand-card:hover {
		transform: none;
	}
}

/* ========================================================================== 
   Press archive cards
   Uses the existing .plx-article-card component and only scopes refinements to
   the custom com_content category layout.
   ========================================================================== */

.presa .blog-items {
	align-items: stretch;
}

.presa .blog-item {
	display: flex;
}

.presa .plx-article-card {
	width: 100%;
}

.presa .plx-article-card__image {
	display: block;
	overflow: hidden;
	aspect-ratio: 16 / 9;
	background: var(--color-surface-alt);
}

.presa .plx-article-card__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.presa .plx-article-card__title a {
	color: inherit;
	text-decoration: none;
}

.presa .plx-article-card__title a:hover,
.presa .plx-article-card__title a:focus {
	color: var(--color-primary);
	text-decoration: underline;
	text-underline-offset: 0.16em;
}

.presa .plx-article-card__text> :last-child {
	margin-bottom: 0;
}

.presa .plx-article-card__links {
	padding-top: 1rem;
}

.presa .plx-article-card__links ul {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem 0.65rem;
}

.presa .plx-article-card__links a {
	color: var(--color-primary);
	font-size: 0.84rem;
	font-weight: 600;
	line-height: 1.25;
	text-decoration: none;
}

.presa .plx-article-card__links a:hover,
.presa .plx-article-card__links a:focus {
	color: var(--color-primary-dark);
	text-decoration: underline;
	text-underline-offset: 0.16em;
}

/* Blog lead module */
.plx-blog-lead {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(20rem, 0.85fr);
	gap: clamp(1.35rem, 3vw, 2.75rem);
	align-items: center;
	padding: 0 0 1rem;
	/*border-bottom: 1px solid var(--color-border);*/
	background: transparent;
	box-shadow: none;
	overflow: visible;
}

.plx-blog-lead.no-image {
	grid-template-columns: 1fr;
	max-width: 860px;
}

.plx-blog-lead__media {
	display: block;
	position: relative;
	border-radius: var(--bs-border-radius-lg);
	overflow: hidden;
	background: var(--color-surface-soft);
	text-decoration: none;
}

.plx-blog-lead__media figure {
	height: 100%;
	margin: 0;
}

.plx-blog-lead__media img {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 9;
	height: auto;
	object-fit: cover;
	transition: transform 0.25s ease;
}

.plx-blog-lead__media:hover img,
.plx-blog-lead__media:focus img {
	transform: scale(1.018);
}

.plx-blog-lead__content {
	padding: 0;
}

.plx-blog-lead__title {
	margin: 0 0 0.65rem;
	font-size: clamp(1.35rem, 1.75vw, 1.75rem);
	font-weight: 600;;
	line-height: 1.18;
	color: var(--color-text-strong);
}

.plx-blog-lead__title-link {
	display: -webkit-box;
	overflow: hidden;
	color: inherit;
	text-decoration: none;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
}

.plx-blog-lead__title-link:hover,
.plx-blog-lead__title-link:focus {
	color: var(--color-primary);
}

.plx-blog-lead__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem 0.85rem;
	margin-bottom: 0.85rem;
	color: var(--color-text-muted);
	font-size: 0.82rem;
	line-height: 1.35;
}

.plx-blog-lead__meta-item+.plx-blog-lead__meta-item::before {
	content: "";
	display: inline-block;
	width: 0.28rem;
	height: 0.28rem;
	margin-right: 0.85rem;
	border-radius: 50%;
	background: currentColor;
	vertical-align: middle;
	opacity: 0.5;
}

.plx-blog-lead__intro {
	display: -webkit-box;
	overflow: hidden;
	margin-bottom: 1rem;
	color: var(--color-text);
	font-size: 0.96rem;
	line-height: 1.65;
	-webkit-line-clamp: 5;
	-webkit-box-orient: vertical;
}

.plx-blog-lead__intro> :last-child {
	margin-bottom: 0;
}

.plx-blog-lead__action {
	margin-top: 0.85rem;
}

@media (max-width: 991.98px) {
	.plx-blog-lead {
		grid-template-columns: 1fr;
		gap: 1.1rem;
		padding-bottom: 1.5rem;
	}

	.plx-blog-lead__title {
		font-size: 1.45rem;
	}

	.plx-blog-lead__intro {
		-webkit-line-clamp: 4;
	}
}

@media (max-width: 575.98px) {
	.plx-blog-lead-list {
		margin-bottom: 2rem;
	}

	.plx-blog-lead {
		padding-bottom: 1.25rem;
	}

	.plx-blog-lead__media {
		border-radius: var(--bs-border-radius);
	}

	.plx-blog-lead__title {
		font-size: 1.32rem;
	}

	.plx-blog-lead__intro {
		font-size: 0.94rem;
		-webkit-line-clamp: 4;
	}
}

/* Blog article grid */
.com-content-category-blog .plx-blog-grid {
	--bs-gutter-x: 2rem;
	--bs-gutter-y: 2.75rem;
}

.com-content-category-blog .plx-blog-grid__item {
	display: flex;
}

.plx-blog-card {
	display: flex;
	flex-direction: column;
	width: 100%;
	height: 100%;
	background: transparent;
	color: var(--color-text);
}

.plx-blog-card__media {
	aspect-ratio: 16 / 9;
	margin-bottom: 0.9rem;
	border-radius: var(--bs-border-radius);
	background: var(--color-surface-soft);
	overflow: hidden;
}

.plx-blog-card__media figure,
.plx-blog-card__media .item-image {
	width: 100%;
	height: 100%;
	margin: 0;
}

.plx-blog-card__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: opacity 0.18s ease;
}

.plx-blog-card:hover .plx-blog-card__media img {
	opacity: 0.94;
}

.plx-blog-card__body {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
}

.plx-blog-card__header {
	margin: 0 0 0.55rem;
}

.plx-blog-card__title {
	margin: 0;
	font-size: 1.02rem;
	font-weight: 600;;
	line-height: 1.28;
	color: var(--color-text-strong);
}

.plx-blog-card__title-link {
	display: -webkit-box;
	overflow: hidden;
	color: inherit;
	text-decoration: none;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

.plx-blog-card__title-link:hover,
.plx-blog-card__title-link:focus {
	color: var(--color-primary);
}

.plx-blog-card .article-info {
	display: flex;
	flex-wrap: wrap;
	gap: 0.25rem 0.75rem;
	margin: 0 0 0.7rem;
	padding: 0;
	color: var(--color-text-muted);
	font-size: 0.74rem;
	line-height: 1.35;
	opacity: 0.85;
}

.plx-blog-card .article-info dt {
	display: none;
}

.plx-blog-card .article-info dd {
	margin: 0;
}

.plx-blog-card__intro {
	display: -webkit-box;
	overflow: hidden;
	margin: 0 0 0.95rem;
	color: var(--color-text);
	font-size: 0.92rem;
	line-height: 1.58;
	-webkit-line-clamp: 5;
	-webkit-box-orient: vertical;
}

.plx-blog-card__action,
.plx-blog-card .readmore {
	margin-top: auto;
}

.plx-blog-card__readmore {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	padding-inline: 0;
	color: var(--color-primary);
	font-weight: 600;
	text-decoration: none;
}

.plx-blog-card__readmore:hover,
.plx-blog-card__readmore:focus {
	color: var(--color-primary-dark);
	text-decoration: underline;
	text-decoration-thickness: 0.08em;
	text-underline-offset: 0.22em;
}

.plx-blog-card__readmore-icon {
	flex: 0 0 auto;
	width: 0.9rem;
	height: 0.9rem;
	transition: transform 0.15s ease;
}

.plx-blog-card__readmore:hover .plx-blog-card__readmore-icon,
.plx-blog-card__readmore:focus .plx-blog-card__readmore-icon {
	transform: translateX(2px);
}


@media (max-width: 575.98px) {
	.com-content-category-blog .plx-blog-grid {
		--bs-gutter-y: 2.25rem;
	}

	.plx-blog-card__intro {
		-webkit-line-clamp: 4;
	}
}

/* Blog page header */
.plx-blog-page-header {
	margin: 0 auto 1.35rem;
	padding-bottom: 0;
	text-align: center;
}

.plx-blog-page-eyebrow {
	margin: 0 0 0.35rem;
	color: var(--color-primary);
	font-size: 0.78rem;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.plx-blog-page-title {
	margin: 0 0 0.45rem;
	color: var(--color-text-strong);
	font-size: clamp(1.85rem, 2.7vw, 2.35rem);
	font-weight: 600;;
	line-height: 1.12;
}

.plx-blog-page-intro {
	max-width: 760px;
	margin: 0 auto;
	color: var(--color-text-muted);
	font-size: 1rem;
	line-height: 1.6;
	text-align: center;
}

/* Blog sidebar tags */
.plx-blog-tags-nav__list {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem 0.5rem;
}

.plx-blog-tags-nav__link {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.38rem 0.65rem;
	border: 1px solid transparent;
	border-radius: var(--bs-border-radius-pill);
	background: var(--color-primary-soft-2);
	color: var(--color-primary);
	font-size: 0.88rem;
	font-weight: 550;
	line-height: 1.25;
	text-decoration: none;
	transition:
		background-color 0.15s ease,
		border-color 0.15s ease,
		color 0.15s ease;
}

.plx-blog-tags-nav__link:hover,
.plx-blog-tags-nav__link:focus {
	border-color: rgba(var(--color-primary-rgb), 0.18);
	background: var(--color-primary-soft);
	color: var(--color-primary-dark);
}

.plx-blog-tags-nav__link.is-active {
	border-color: var(--color-primary);
	background: var(--color-primary);
	color: var(--color-white);
}

.plx-blog-tags-nav__count {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 1.25rem;
	padding: 0.05rem 0.32rem;
	border-radius: var(--bs-border-radius-pill);
	background: rgba(var(--color-black-rgb), 0.06);
	font-size: 0.72rem;
	font-weight: 600;;
	line-height: 1.1;
}

.plx-blog-tags-nav__link.is-active .plx-blog-tags-nav__count {
	background: rgba(var(--color-white-rgb), 0.18);
	color: var(--color-white);
}

/* FAQ accordion */
.accordion-header {
	margin: 0;
}

/* Blog article links, toc*/
.bibliografie {
	margin-top: 2.5rem;
	padding-top: 1.5rem;
	border-top: 1px solid var(--color-border);
}

.bibliografie p {
	margin-bottom: 0.3rem !important;
}

.bibliografie h2,
.bibliografie h3 {
	font-size: 1rem;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	margin-bottom: 0.75rem;
	color: var(--color-text-strong);
}

.bibliografie ul,
.bibliografie ol {
	margin: 0;
	padding-left: 1.1rem;
}

.bibliografie li+li {
	margin-top: 0.25rem;
}

.article-links {
	margin: 1.5rem 0;
	padding: 1rem 1.25rem;
	border-radius: var(--bs-border-radius-lg);
	background: var(--color-cream);
	border-left: 3px solid var(--color-secondary);
}

.article-links p {
	margin-bottom: 0.4rem;
}

.article-links a {
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.3em;
}

.article-links a:hover,
.article-links a:focus {
	text-decoration-thickness: 2px;
}

/* TOC / Cuprins (TinyMCE) */
.mce-toc {
	background: var(--color-primary-soft-2);
	border-left: 4px solid var(--color-botanical);
	border-radius: var(--bs-border-radius-lg);
	padding: 16px 18px;
	margin: 18px 0 28px;
}

.mce-toc h2,
.mce-toc h3,
.mce-toc .toc-title {
	margin: 0 0 10px;
	font-size: 1.1rem;
}

.mce-toc ul {
	margin: 0;
	padding-left: 0;
	list-style: none;
}

.mce-toc li {
	margin: 8px 0;
}

.mce-toc a {
	color: inherit;
	text-decoration: none;
}

.mce-toc ul {
	counter-reset: toc;
}

.mce-toc li {
	counter-increment: toc;
	display: flex;
	gap: 10px;
}

.mce-toc li::before {
	content: counter(toc) ".";
	font-weight: 400;
	opacity: .65;
	min-width: 1.4em;
	text-align: right;
}

/* Reusable article grid module */
.plx-article-grid__item {
	min-width: 0;
}

.plx-article-card {
	display: flex;
	flex-direction: column;
	width: 100%;
	height: 100%;
	min-width: 0;
	color: var(--color-text);
}

.plx-article-card__media {
	display: block;
	aspect-ratio: 16 / 9;
	margin-bottom: 0.7rem;
	border-radius: var(--bs-border-radius);
	background: var(--color-surface-soft);
	overflow: hidden;
	text-decoration: none;
}

.plx-article-card__media a {
	display: block;
	width: 100%;
	height: 100%;
}

.plx-article-card__media figure,
.plx-article-card__media .item-image {
	width: 100%;
	height: 100%;
	margin: 0;
}

.plx-article-card__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.plx-article-card__title {
	margin: 0 0 0.45rem;
	font-size: 1rem;
	font-weight: 600;;
	line-height: 1.28;
	color: var(--color-text-strong);
}

.plx-article-card__title-link {
	display: -webkit-box;
	overflow: hidden;
	color: inherit;
	text-decoration: none;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	text-decoration-line: none !important;
}

.plx-article-card__title-link:hover,
.plx-article-card__title-link:focus {
	color: var(--color-primary);
}

.plx-article-card__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.2rem 0.65rem;
	margin: 0 0 0.55rem;
	padding: 0;
	color: var(--color-text-muted);
	font-size: 0.75rem;
	line-height: 1.35;
}

.plx-article-card__meta dt {
	display: none;
}

.plx-article-card__meta dd {
	margin: 0;
}

.plx-article-card__intro {
	display: -webkit-box;
	overflow: hidden;
	margin: 0 0 0.75rem;
	color: var(--color-text);
	font-size: 0.92rem;
	line-height: 1.55;
	-webkit-line-clamp: 4;
	-webkit-box-orient: vertical;
}

.plx-article-card__tags {
	margin-bottom: 0.65rem;
}

.plx-article-card__action {
	margin-top: auto;
}

/* Compact article cluster variant */
.plx-article-grid-module--cluster .plx-article-card__media {
	margin-bottom: 0.45rem;
}

.plx-article-grid-module--cluster .plx-article-card__title {
	margin-bottom: 0;
	font-size: 0.9rem;
	font-weight: 600;;
	line-height: 1.25;
}

.plx-article-grid-module--cluster .plx-article-card__title-link {
	-webkit-line-clamp: 2;
}

.plx-article-grid-module--cluster .plx-article-card__meta,
.plx-article-grid-module--cluster .plx-article-card__intro,
.plx-article-grid-module--cluster .plx-article-card__tags,
.plx-article-grid-module--cluster .plx-article-card__action {
	display: none !important;
}

/* Article cluster inside editorial content */
.plx-article-grid-module--cluster {
	margin: 1.35rem 0 1.6rem;
}

.plx-article-grid-module--cluster .plx-article-grid__list {
	--bs-gutter-x: 0.75rem;
	--bs-gutter-y: 0.95rem;
}

.plx-article-grid-module--cluster .plx-article-card__body {
	display: block;
}

.plx-article-grid-module--cluster .plx-article-card__media {
	aspect-ratio: 16 / 10;
	margin-bottom: 0.4rem;
	border-radius: var(--bs-border-radius);
	background: var(--color-surface-soft);
	overflow: hidden;
}

.plx-article-grid-module--cluster .plx-article-card__media a {
	display: block;
	width: 100%;
	height: 100%;
}

.plx-article-grid-module--cluster .plx-article-card__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.plx-article-grid-module--cluster .plx-article-card__title {
	margin: 0;
	font-size: 0.8rem;
	font-weight: 600;;
	line-height: 1.22;
	color: var(--color-text-strong);
}

.plx-article-grid-module--cluster .plx-article-card__title-link {
	display: -webkit-box;
	overflow: hidden;
	color: inherit;
	text-decoration: none;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

.plx-article-grid-module--cluster .plx-article-card__title-link:hover,
.plx-article-grid-module--cluster .plx-article-card__title-link:focus {
	color: var(--color-primary);
}

/* Article cluster block */
.plx-article-cluster-block {
	margin: 1.5rem 0 1.75rem;
	padding: 1rem;
	border: 1px solid var(--color-border);
	border-radius: var(--bs-border-radius);
	background: var(--color-surface-soft);
}

/* Tagged article listings reuse blog grid */
.com-tags-tag.articole .plx-blog-grid {
	--bs-gutter-x: 2rem;
	--bs-gutter-y: 2.75rem;
}

.com-tags-tag.articole .plx-blog-grid__item {
	display: flex;
}

.com-tags-tag.articole .category-desc:empty {
	display: none;
}

/* Editorial links */
body.articole .com-content-article__body a:not(.btn):not(.accordion-button):not(.plx-blog-card__title-link):not(.plx-blog-card__readmore),
body.articole .category-desc a:not(.btn),
body.articole .article-links a:not(.btn),
body.articole .bibliografie a:not(.btn) {
	color: var(--color-primary);
	font-weight: 550;
	text-decoration-line: underline;
	text-decoration-thickness: 0.09em;
	text-decoration-color: rgba(var(--color-primary-rgb), 0.42);
	text-underline-offset: 0.25em;
	transition:
		color 0.15s ease,
		text-decoration-color 0.15s ease,
		text-decoration-thickness 0.15s ease;
}

body.articole .com-content-article__body a:not(.btn):not(.accordion-button):not(.plx-blog-card__title-link):not(.plx-blog-card__readmore):hover,
body.articole .com-content-article__body a:not(.btn):not(.accordion-button):not(.plx-blog-card__title-link):not(.plx-blog-card__readmore):focus,
body.articole .category-desc a:not(.btn):hover,
body.articole .category-desc a:not(.btn):focus,
body.articole .article-links a:not(.btn):hover,
body.articole .article-links a:not(.btn):focus,
body.articole .bibliografie a:not(.btn):hover,
body.articole .bibliografie a:not(.btn):focus {
	color: var(--color-primary-dark);
	text-decoration-color: currentColor;
	text-decoration-thickness: 0.15em;
}

/* Dictionarul plantelor */
.plx-plant-dictionary__header {
	margin-bottom: 2rem;
	padding: clamp(1.35rem, 3vw, 2.25rem);
	border: 1px solid var(--color-border);
	border-radius: var(--bs-border-radius-xl);
	background:
		linear-gradient(135deg, rgba(var(--color-primary-rgb), 0.075), rgba(var(--color-white-rgb), 0) 48%),
		var(--color-surface-alt);
}

.plx-plant-dictionary__page-header h1,
.plx-plant-dictionary__title {
	margin: 0 0 0.65rem;
	color: var(--color-text-strong);
	font-size: clamp(1.9rem, 3vw, 2.45rem);
	font-weight: 600;;
	line-height: 1.12;
}

.plx-plant-dictionary__intro {
	max-width: 48rem;
	margin: 0.2rem auto 0;
	color: var(--color-text-muted);
	font-size: 1rem;
	line-height: 1.65;
}

.plx-plant-dictionary__intro> :last-child {
	margin-bottom: 0;
}

.plx-plant-dictionary__tools {
	max-width: 48rem;
	margin-top: 1.25rem;
}

.plx-plant-dictionary__search {
	max-width: 30rem;
	margin: 0 auto;
}

.plx-plant-dictionary__search-shell {
	position: relative;
}

.plx-plant-dictionary__search-input.form-control {
	min-height: 2.7rem;
	padding: 0.55rem 5.65rem 0.55rem 1.15rem;
	border: 1px solid var(--color-border-strong);
	border-radius: var(--bs-border-radius-pill);
	background: var(--color-surface);
	box-shadow: 0 6px 16px rgba(var(--color-black-rgb), 0.035);
	font-size: 0.92rem;
}

.plx-plant-dictionary__search-input.form-control:focus {
	border-color: rgba(var(--color-primary-rgb), 0.55);
	box-shadow: var(--focus-ring-primary), 0 8px 18px rgba(var(--color-black-rgb), 0.045);
}

.plx-plant-dictionary__search-button,
.plx-plant-dictionary__search-clear {
	position: absolute;
	top: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.1rem;
	height: 2.1rem;
	padding: 0;
	border: 0;
	border-radius: var(--bs-border-radius-pill);
	transform: translateY(-50%);
}

.plx-plant-dictionary__search-button {
	right: 0.32rem;
	background: var(--color-primary);
	color: var(--color-white);
}

.plx-plant-dictionary__search-button:hover,
.plx-plant-dictionary__search-button:focus {
	background: var(--color-primary-dark);
	color: var(--color-white);
}

.plx-plant-dictionary__search-clear {
	right: 2.62rem;
	background: transparent;
	color: var(--color-text-muted);
}

.plx-plant-dictionary__search-clear:hover,
.plx-plant-dictionary__search-clear:focus {
	background: var(--color-surface-soft);
	color: var(--color-primary);
}

.plx-plant-dictionary__alpha {
	margin-top: 1rem;
}

.plx-alpha-nav {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.35rem;
}

.plx-alpha-nav a,
.plx-alpha-nav span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2rem;
	height: 2rem;
	padding: 0 0.45rem;
	border: 1px solid var(--color-border);
	border-radius: var(--bs-border-radius-pill);
	background: var(--color-surface);
	font-size: 0.84rem;
	font-weight: 600;;
	line-height: 1;
	text-decoration: none;
}

.plx-alpha-nav a {
	color: var(--color-primary);
}

.plx-alpha-nav a:hover,
.plx-alpha-nav a:focus {
	border-color: var(--color-primary);
	background: var(--color-primary-soft);
	color: var(--color-primary-dark);
}

.plx-alpha-nav span.is-disabled {
	color: var(--color-text-muted);
	opacity: 0.38;
}

.plx-plant-dictionary .plx-blog-grid {
	--bs-gutter-x: 1rem;
	--bs-gutter-y: 1rem;
}

.plx-plant-card {
	scroll-margin-top: 7rem;
	padding: 0.75rem;
	border: 1px solid var(--color-border);
	border-radius: var(--bs-border-radius);
	background: var(--color-surface);
	box-shadow: var(--shadow-xs);
	transition:
		border-color 0.15s ease,
		box-shadow 0.15s ease,
		transform 0.15s ease;
}

.plx-plant-card:hover {
	border-color: var(--category-card-border-hover);
	box-shadow: var(--shadow-sm);
	/*transform: translateY(-1px);*/
}

.plx-plant-card__media {
	aspect-ratio: 16 / 10;
	border-radius: var(--bs-border-radius);
}

.plx-plant-card .plx-blog-card__title {
	font-size: 1rem;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.plx-plant-card__intro {
	margin-bottom: 0.8rem;
	color: var(--color-text-muted);
	font-size: 0.88rem;
	line-height: 1.5;
	-webkit-line-clamp: 3;
}

@media (max-width: 575.98px) {
	.plx-plant-dictionary__header {
		padding: 1.1rem;
	}

	.plx-plant-dictionary__search .input-group {
		flex-direction: column;
		gap: 0.55rem;
	}

	.plx-plant-dictionary__search .form-control {
		width: 100%;
		border-radius: var(--bs-border-radius-pill) !important;
	}
}

.plx-plant-dictionary__empty {
	margin-top: 1.5rem;
}

/* ==========================================================================
   Dictionarul plantelor - article detail
   ========================================================================== */

body.com_content.view-article.plante .com-content-article {
	max-width: 980px;
	margin-inline: auto;
}

body.com_content.view-article.plante .com-content-article .page-header,
body.com_content.view-article.plante .com-content-article .article-info,
body.com_content.view-article.plante .com-content-article [itemprop="articleBody"],
body.com_content.view-article.plante .com-content-article .com-content-article__body {
	max-width: 860px;
	margin-inline: auto;
}

body.com_content.view-article.plante .com-content-article .page-header {
	margin-top: 1.25rem;
	margin-bottom: 1rem;
}

body.com_content.view-article.plante .com-content-article .page-header h1 {
	margin: 0;
	color: var(--color-text-strong);
	font-size: clamp(1.65rem, 2.2vw, 2.15rem);
	font-weight: 600;
	line-height: 1.18;
}

body.com_content.view-article.plante .com-content-article .item-image {
	max-width: 980px;
	margin: 0 auto 1rem;
}

body.com_content.view-article.plante .com-content-article .item-image img {
	display: block;
	width: 100%;
	max-height: clamp(16rem, 34vw, 23rem);
	object-fit: cover;
	border-radius: var(--bs-border-radius);
}

body.com_content.view-article.plante .com-content-article [itemprop="articleBody"],
body.com_content.view-article.plante .com-content-article .com-content-article__body {
	color: var(--color-text);
	font-size: 1rem;
	line-height: 1.72;
}

body.com_content.view-article.plante .com-content-article [itemprop="articleBody"] h2,
body.com_content.view-article.plante .com-content-article .com-content-article__body h2 {
	margin-top: 2rem;
	margin-bottom: 0.75rem;
	color: var(--color-text-strong);
	font-size: clamp(1.25rem, 1.6vw, 1.45rem);
	font-weight: 600;;
	line-height: 1.25;
}

body.com_content.view-article.plante .com-content-article [itemprop="articleBody"] h3,
body.com_content.view-article.plante .com-content-article .com-content-article__body h3 {
	margin-top: 1.35rem;
	margin-bottom: 0.5rem;
	color: var(--color-text-strong);
	font-size: 1.05rem;
	font-weight: 600;;
	line-height: 1.35;
}

body.com_content.view-article.plante .com-content-article [itemprop="articleBody"] ul,
body.com_content.view-article.plante .com-content-article .com-content-article__body ul {
	padding-left: 1.25rem;
}

body.com_content.view-article.plante .com-content-article [itemprop="articleBody"] li+li,
body.com_content.view-article.plante .com-content-article .com-content-article__body li+li {
	margin-top: 0.25rem;
}

.plx-article-back-link {
	display: inline-flex;
	align-items: center;
	color: var(--color-primary);
	font-size: 0.92rem;
	font-weight: 600;
	text-decoration: none;
}

.plx-article-back-link:hover,
.plx-article-back-link:focus {
	color: var(--color-primary-dark);
	text-decoration: underline;
}

@media (max-width: 767.98px) {
	body.com_content.view-article.plante .com-content-article .item-image img {
		max-height: none;
		aspect-ratio: 16 / 9;
	}

	body.com_content.view-article.plante .com-content-article .page-header h1 {
		font-size: 1.45rem;
	}
}

/* ==========================================================================
   Editorial team page
   Page class: .echipa-editoriala
   ========================================================================== */

body.echipa-editoriala .com-content-article {
	max-width: 1120px;
	margin-inline: auto;
}

/* Page title + intro narrow */
body.echipa-editoriala .com-content-article .page-header,
body.echipa-editoriala .plx-editorial-intro {
	max-width: 860px;
	margin-left: auto;
	margin-right: auto;
}

body.echipa-editoriala .plx-editorial-intro> :last-child {
	margin-bottom: 0;
}

body.echipa-editoriala .com-content-article .page-header {
	margin-bottom: 0.9rem;
}

body.echipa-editoriala .com-content-article .page-header h1 {
	margin-bottom: 0;
	color: var(--color-text-strong);
	font-size: clamp(1.8rem, 2.4vw, 2.35rem);
	font-weight: 600;;
	line-height: 1.15;
}

body.echipa-editoriala .com-content-article__body {
	color: var(--color-text);
	font-size: 1rem;
	line-height: 1.72;
}

body.echipa-editoriala .com-content-article__body h2 {
	margin-top: 1.9rem;
	margin-bottom: 0.7rem;
	color: var(--color-text-strong);
	font-size: clamp(1.25rem, 1.7vw, 1.55rem);
	font-weight: 600;;
	line-height: 1.25;
}

body.echipa-editoriala .com-content-article__body h2::after {
	content: "";
	display: block;
	width: 4rem;
	height: 2px;
	margin-top: 0.55rem;
	border-radius: var(--bs-border-radius-pill);
	background: var(--color-primary);
	opacity: 0.35;
}

/* Author grid */
body.echipa-editoriala .plx-editorial-team {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.35rem;
	margin: 2rem 0 1.75rem;
	width: 100%;
	max-width: 1120px;
	margin-left: auto;
	margin-right: auto;
}

body.echipa-editoriala .plx-editorial-team>[class*="col-"] {
	width: auto;
	max-width: none;
	padding: 1.2rem;
	border: 1px solid var(--color-border);
	border-radius: var(--bs-border-radius);
	background: var(--color-surface);
	box-shadow: var(--shadow-xs);
}

body.echipa-editoriala .plx-editorial-team>[class*="col-"]:nth-child(odd) {
	background: linear-gradient(180deg,
			var(--color-surface) 0%,
			var(--color-primary-soft-2) 100%);
}

body.echipa-editoriala .plx-editorial-team h3 {
	display: grid;
	grid-template-columns: 4.75rem 1fr;
	align-items: center;
	gap: 0.85rem;
	margin: 0 0 1rem;
	color: var(--color-text-strong);
	font-size: 1.12rem;
	font-weight: 600;;
	line-height: 1.25;
}

body.echipa-editoriala .plx-editorial-team h3 br {
	display: none;
}

body.echipa-editoriala .plx-editorial-team h3 img {
	width: 4.75rem;
	height: 4.75rem;
	object-fit: cover;
	padding: 0.16rem;
	border: 1px solid var(--color-border) !important;
	background: var(--color-surface);
	box-shadow: 0 6px 16px rgba(var(--color-black-rgb), 0.06);
}

body.echipa-editoriala .plx-editorial-team p {
	margin-bottom: 0.78rem;
	color: var(--color-text);
	font-size: 0.94rem;
	line-height: 1.65;
}

body.echipa-editoriala .plx-editorial-team p:last-child {
	margin-bottom: 0;
}

body.echipa-editoriala .plx-editorial-team>[class*="col-"]:last-child:nth-child(odd) {
	grid-column: 1 / -1;
	max-width: 550px;
	margin-left: auto;
	margin-right: auto;
}

/* Social / profile links */
body.echipa-editoriala .author-socials {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
	margin: 0.95rem 0 0.9rem;
}

body.echipa-editoriala .author-socials a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 1.85rem;
	padding: 0.28rem 0.58rem;
	border: 1px solid var(--color-border-strong);
	border-radius: var(--bs-border-radius-pill);
	background: var(--color-surface);
	color: var(--color-primary);
	font-size: 0.78rem;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none;
}

body.echipa-editoriala .author-socials a:hover,
body.echipa-editoriala .author-socials a:focus {
	border-color: var(--color-primary);
	background: var(--color-primary-soft);
	color: var(--color-primary-dark);
	text-decoration: none;
}

body.echipa-editoriala .author-socials .fab {
	font-size: 0.95rem;
	line-height: 1;
}

/* Published articles */
body.echipa-editoriala .plx-editorial-team p+.articole,
body.echipa-editoriala .plx-editorial-team .articole {
	margin-top: 0.45rem;
	margin-bottom: 0;
	padding-top: 0.55rem;
	border-top: 1px solid var(--color-border);
}

body.echipa-editoriala .plx-editorial-team .articole li {
	position: relative;
	margin-bottom: 0.4rem;
	padding-left: 0.78rem;
	font-size: 0.82rem;
	line-height: 1.35;
}

body.echipa-editoriala .plx-editorial-team .articole li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.55em;
	width: 0.32rem;
	height: 0.32rem;
	border-radius: 50%;
	background: var(--color-secondary);
}

body.echipa-editoriala .plx-editorial-team .articole a {
	color: var(--color-primary);
	text-decoration-color: var(--color-link-underline);
	text-underline-offset: 0.16em;
}

body.echipa-editoriala .plx-editorial-team .articole a:hover,
body.echipa-editoriala .plx-editorial-team .articole a:focus {
	color: var(--color-primary-dark);
	text-decoration-color: currentColor;
}

/* Editorial notes */
body.echipa-editoriala .com-content-article__body>.alert-info {
	margin: 1rem 0 0;
	padding: 1rem 1.15rem;
	border: 1px solid rgba(var(--color-primary-rgb), 0.14);
	border-left: 4px solid var(--color-primary);
	border-radius: var(--bs-border-radius-lg);
	background: var(--color-primary-soft-2);
	color: var(--color-text);
}

body.echipa-editoriala .com-content-article__body>.alert-info:last-of-type {
	border-color: rgba(var(--color-secondary-rgb), 0.24);
	border-left-color: var(--color-secondary);
	background: var(--color-surface-alt);
}

body.echipa-editoriala .com-content-article__body>.alert-info p {
	margin-bottom: 0.45rem;
	font-size: 0.94rem;
	line-height: 1.6;
}

body.echipa-editoriala .com-content-article__body>.alert-info p:last-child {
	margin-bottom: 0;
}

body.echipa-editoriala .com-content-article__body>.alert-info strong {
	color: var(--color-text-strong);
	font-weight: 600;;
}

/* Responsive */
@media (max-width: 991.98px) {
	body.echipa-editoriala .plx-editorial-team {
		grid-template-columns: 1fr;
		gap: 1rem;
	}
}

@media (max-width: 575.98px) {
	body.echipa-editoriala .com-content-article {
		max-width: none;
	}

	body.echipa-editoriala .plx-editorial-team {
		margin-top: 1.45rem;
	}

	body.echipa-editoriala .plx-editorial-team>[class*="col-"] {
		padding: 1rem;
	}

	body.echipa-editoriala .plx-editorial-team h3 {
		grid-template-columns: 4.25rem 1fr;
		gap: 0.75rem;
		font-size: 1.02rem;
	}

	body.echipa-editoriala .plx-editorial-team h3 img {
		width: 4.25rem;
		height: 4.25rem;
	}

	body.echipa-editoriala .author-socials a {
		font-size: 0.76rem;
	}
}

/* ==========================================================================
   Home page
   ========================================================================== */
/* Trust strip */
.plx-home-trust {
	width: 100vw;
	max-width: none;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	transform: none;
	background: var(--color-primary);
	color: var(--color-white);
}

.plx-home-trust__inner {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	width: min(100% - 2rem, 1320px);
	margin-inline: auto;
}

.plx-home-trust__item {
	display: flex;
	flex-direction: column;
	gap: 0.05rem;
	padding-block: 0.75rem;
	border-left: 1px solid rgba(var(--color-white-rgb), 0.14);
}

.plx-home-trust__item:last-child {
	border-right: 1px solid rgba(var(--color-white-rgb), 0.14);
}

.plx-home-trust__item strong {
	font-size: 0.9rem;
	font-weight: 750;
	line-height: 1.2;
}

.plx-home-trust__item span {
	color: rgba(var(--color-white-rgb), 0.78);
	font-size: 0.78rem;
	line-height: 1.25;
}

/* Home sections */
.plx-home-section {
	padding-block: clamp(2.25rem, 4vw, 4rem);
}

.plx-home-section__header {
	max-width: 48rem;
	margin: 0 auto clamp(1.5rem, 3vw, 2.25rem);
	text-align: center;
}

.plx-home-section__eyebrow {
	margin-bottom: 0.6rem;
	color: var(--color-secondary-dark);
	font-size: 0.78rem;
	font-weight: 750;
	line-height: 1.2;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.plx-home-section__title {
	margin: 0 0 0.75rem;
	color: var(--color-text-strong);
	font-size: clamp(1.75rem, 3vw, 2.55rem);
	font-weight: 700;
	line-height: 1.12;
	letter-spacing: -0.035em;
	text-wrap: balance;
}

.plx-home-section__lead {
	margin: 0;
	color: var(--color-text-muted);
	font-size: clamp(1rem, 1.3vw, 1.08rem);
	line-height: 1.7;
}

.plx-home-section__action {
	margin-top: clamp(1.35rem, 3vw, 2rem);
	text-align: center;
}

/* Brands */
.plx-home-brands {
	position: relative;
}

.plx-home-brands__grid {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 1rem;
}

.plx-home-brand-card {
	min-height: 12.25rem;
	padding: 1.25rem;
	border-color: rgba(var(--color-primary-rgb), 0.09);
	box-shadow: var(--shadow-xs);
	transition:
		transform 0.18s ease,
		border-color 0.18s ease,
		box-shadow 0.18s ease,
		background-color 0.18s ease;
}

.plx-home-brand-card:hover,
.plx-home-brand-card:focus {
	transform: translateY(-3px);
	border-color: rgba(var(--color-primary-rgb), 0.20);
	background: var(--color-primary-soft-2);
	box-shadow: var(--shadow-sm);
	color: var(--color-text);
}

.plx-home-brand-card__logo {
	display: flex;
	align-items: center;
	height: 4.5rem;
	margin-bottom: 0.9rem;
}

.plx-home-brand-card__logo img {
	display: block;
	width: auto;
	max-width: 12rem;
	max-height: 3.8rem;
	object-fit: contain;
}

.plx-home-brand-card__title {
	display: block;
	margin-bottom: 0.4rem;
	color: var(--color-text-strong);
	font-size: 0.98rem;
	font-weight: 750;
	line-height: 1.25;
}

.plx-home-brand-card__text {
	display: block;
	color: var(--color-text-muted);
	font-size: 0.98rem;
	line-height: 1.5;
}


@media (max-width: 1199.98px) {
	.plx-home-brands__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

@media (max-width: 991.98px) {
	.plx-home-brands__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 767.98px) {
	.plx-home-brands__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 575.98px) {
	.plx-home-brands__grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 991.98px) {

	.plx-home-trust__inner {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 575.98px) {

	.plx-home-trust__inner {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.plx-home-trust__item,
	.plx-home-trust__item:last-child {
		border-right: 0;
		border-left: 0;
		border-bottom: 1px solid rgba(var(--color-white-rgb), 0.14);
	}

	.plx-home-trust__item:last-child {
		border-bottom: 0;
	}

	.plx-home-section {
		padding-block: 2.5rem;
	}

	.plx-home-section__header {
		text-align: left;
	}

	.plx-home-brand-card {
		min-height: auto;
	}

	.plx-home-trust__item:nth-last-child(-n + 2) {
		border-bottom: 0;
	}
}

/* Home product categories */
.plx-home-categories {
	background:
		linear-gradient(180deg,
			var(--color-surface) 0%,
			var(--color-primary-soft-2) 100%);
}

.plx-home-categories__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1.1rem;
}

.plx-home-category-card {
	position: relative;
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: 1.1rem;
	border: 1px solid rgba(var(--color-primary-rgb), 0.10);
	border-radius: var(--bs-border-radius-xl);
	background: var(--color-surface);
	color: var(--color-text);
	text-decoration: none;
	box-shadow: var(--shadow-xs);
	overflow: hidden;
	transition:
		transform 0.18s ease,
		border-color 0.18s ease,
		box-shadow 0.18s ease,
		background-color 0.18s ease;
}

.plx-home-category-card::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at top right,
			rgba(var(--color-primary-rgb), 0.08),
			transparent 42%);
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.18s ease;
}

.plx-home-category-card:hover,
.plx-home-category-card:focus {
	transform: translateY(-4px);
	border-color: rgba(var(--color-primary-rgb), 0.22);
	box-shadow: var(--shadow-sm);
	color: var(--color-text);
}

.plx-home-category-card:hover::before,
.plx-home-category-card:focus::before {
	opacity: 1;
}

.plx-home-category-card__media {
	position: relative;
	z-index: 1;
	display: block;
	aspect-ratio: 4 / 3;
	margin-bottom: 1rem;
	border-radius: var(--bs-border-radius-lg);
	background: var(--color-cream);
	overflow: hidden;
}

.plx-home-category-card__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	transition: transform 0.22s ease;
}

.plx-home-category-card:hover .plx-home-category-card__media img,
.plx-home-category-card:focus .plx-home-category-card__media img {
	transform: scale(1.045);
}

.plx-home-category-card__body {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
}

.plx-home-category-card__title {
	display: block;
	margin-bottom: 0.45rem;
	color: var(--color-text-strong);
	font-size: 1.12rem;
	font-weight: 750;
	line-height: 1.2;
}

.plx-home-category-card__text {
	display: block;
	color: var(--color-text-muted);
	font-size: 0.92rem;
	line-height: 1.58;
}

.plx-home-category-card__link {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	margin-top: auto;
	padding-top: 1rem;
	color: var(--color-primary);
	font-size: 0.9rem;
	font-weight: 700;
	line-height: 1.2;
}

.plx-home-category-card__link::after {
	content: "";
	display: inline-block;
	width: 0.45rem;
	height: 0.45rem;
	border-top: 2px solid currentColor;
	border-right: 2px solid currentColor;
	transform: rotate(45deg);
	transition: transform 0.18s ease;
}

.plx-home-category-card:hover .plx-home-category-card__link::after,
.plx-home-category-card:focus .plx-home-category-card__link::after {
	transform: translateX(3px) rotate(45deg);
}

@media (max-width: 1199.98px) {
	.plx-home-categories__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 575.98px) {
	.plx-home-categories__grid {
		grid-template-columns: 1fr;
	}

	.plx-home-category-card {
		display: grid;
		grid-template-columns: 6.5rem 1fr;
		gap: 1rem;
		align-items: center;
		padding: 1rem;
	}

	.plx-home-category-card__media {
		margin-bottom: 0;
	}

	.plx-home-category-card__title {
		font-size: 1rem;
	}

	.plx-home-category-card__text {
		font-size: 0.88rem;
		line-height: 1.45;
	}

	.plx-home-category-card__link {
		padding-top: 0.65rem;
	}
}

/* Home why PlantExtrakt */
.plx-home-why {
	position: relative;
	width: 100vw;
	max-width: none;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	transform: none;
	background:
		linear-gradient(135deg,
			var(--color-primary) 0%,
			var(--color-primary-dark) 100%);
	color: var(--color-white);
	overflow: hidden;
}

.plx-home-why::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at 12% 18%,
			rgba(var(--color-white-rgb), 0.11),
			transparent 32%),
		radial-gradient(circle at 88% 72%,
			rgba(var(--color-white-rgb), 0.08),
			transparent 34%);
	pointer-events: none;
}

.plx-home-why__inner {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.35fr);
	gap: clamp(2rem, 5vw, 4rem);
	width: min(100% - 2rem, 1320px);
	margin-inline: auto;
	align-items: center;
}

.plx-home-why__intro {
	max-width: 34rem;
}

.plx-home-why .plx-home-section__eyebrow {
	color: rgba(var(--color-white-rgb), 0.72);
}

.plx-home-why .plx-home-section__title {
	color: var(--color-white);
}

.plx-home-why .plx-home-section__lead {
	color: rgba(var(--color-white-rgb), 0.78);
}

.plx-home-why__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	margin-top: 1.5rem;
}

.plx-home-why .btn-primary {
	--bs-btn-color: var(--color-primary);
	--bs-btn-bg: var(--color-white);
	--bs-btn-border-color: var(--color-white);
	--bs-btn-hover-color: var(--color-primary-dark);
	--bs-btn-hover-bg: var(--color-primary-soft);
	--bs-btn-hover-border-color: var(--color-primary-soft);
}

.plx-home-why .btn-outline-primary {
	--bs-btn-color: var(--color-white);
	--bs-btn-border-color: rgba(var(--color-white-rgb), 0.42);
	--bs-btn-hover-color: var(--color-primary);
	--bs-btn-hover-bg: var(--color-white);
	--bs-btn-hover-border-color: var(--color-white);
}

.plx-home-why__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
}

.plx-home-why-card {
	min-height: 13rem;
	padding: 1.25rem;
	border: 1px solid rgba(var(--color-white-rgb), 0.14);
	border-radius: var(--bs-border-radius-xl);
	background: rgba(var(--color-white-rgb), 0.08);
	box-shadow: 0 18px 36px rgba(var(--color-black-rgb), 0.10);
	backdrop-filter: blur(8px);
}

.plx-home-why-card__number {
	display: inline-flex;
	margin-bottom: 1.15rem;
	color: rgba(var(--color-white-rgb), 0.56);
	font-size: 0.78rem;
	font-weight: 800;
	line-height: 1;
	letter-spacing: 0.08em;
}

.plx-home-why-card__title {
	margin: 0 0 0.55rem;
	color: var(--color-white);
	font-size: 1.05rem;
	font-weight: 750;
	line-height: 1.25;
}

.plx-home-why-card__text {
	margin: 0;
	color: rgba(var(--color-white-rgb), 0.74);
	font-size: 0.92rem;
	line-height: 1.6;
}

@media (max-width: 991.98px) {
	.plx-home-why__inner {
		grid-template-columns: 1fr;
	}

	.plx-home-why__intro {
		max-width: 48rem;
	}
}

@media (max-width: 575.98px) {
	.plx-home-why__grid {
		grid-template-columns: 1fr;
	}

	.plx-home-why__actions .btn {
		width: 100%;
	}

	.plx-home-why-card {
		min-height: auto;
	}
}

/* Home guide */


.plx-home-guide__inner {
	width: min(100% - 2rem, 1120px);
	margin-inline: auto;
}

.plx-home-guide__header {
	max-width: 48rem;
	margin: 0 auto clamp(1.5rem, 3vw, 2.25rem);
	text-align: center;
}

.plx-home-guide__grid {
	display: grid;
	grid-template-columns: 1.25fr 1fr 1fr;
	gap: 1rem;
}

.plx-home-guide-card {
	position: relative;
	display: flex;
	flex-direction: column;
	min-height: 17rem;
	padding: 1.35rem;
	border: 1px solid rgba(var(--color-primary-rgb), 0.10);
	border-radius: var(--bs-border-radius-xl);
	background: var(--color-surface);
	color: var(--color-text);
	text-decoration: none;
	box-shadow: var(--shadow-xs);
	overflow: hidden;
	transition:
		transform 0.18s ease,
		border-color 0.18s ease,
		box-shadow 0.18s ease,
		background-color 0.18s ease;
}

.plx-home-guide-card::before {
	content: "";
	position: absolute;
	inset: auto 1.35rem 1.35rem auto;
	width: 4.5rem;
	height: 4.5rem;
	border-radius: 50%;
	background: rgba(var(--color-primary-rgb), 0.06);
	pointer-events: none;
}

.plx-home-guide-card:hover,
.plx-home-guide-card:focus {
	transform: translateY(-3px);
	border-color: rgba(var(--color-primary-rgb), 0.20);
	background: var(--color-primary-soft-2);
	box-shadow: var(--shadow-sm);
	color: var(--color-text);
}

.plx-home-guide-card--featured {
	background: var(--color-primary-soft-2);
}

.plx-home-guide-card__eyebrow {
	display: block;
	margin-bottom: 0.85rem;
	color: var(--color-secondary-dark);
	font-size: 0.75rem;
	font-weight: 800;
	line-height: 1.2;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.plx-home-guide-card__title {
	display: block;
	max-width: 18rem;
	margin-bottom: 0.75rem;
	color: var(--color-text-strong);
	font-size: clamp(1.15rem, 2vw, 1.45rem);
	font-weight: 750;
	line-height: 1.2;
	text-wrap: balance;
}

.plx-home-guide-card__text {
	display: block;
	max-width: 22rem;
	color: var(--color-text-muted);
	font-size: 0.95rem;
	line-height: 1.6;
}

.plx-home-guide-card__link {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	margin-top: auto;
	padding-top: 1rem;
	color: var(--color-primary);
	font-size: 0.9rem;
	font-weight: 750;
	line-height: 1.2;
}

.plx-home-guide-card__link::after {
	content: "";
	display: inline-block;
	width: 0.45rem;
	height: 0.45rem;
	border-top: 2px solid currentColor;
	border-right: 2px solid currentColor;
	transform: rotate(45deg);
	transition: transform 0.18s ease;
}

.plx-home-guide-card:hover .plx-home-guide-card__link::after,
.plx-home-guide-card:focus .plx-home-guide-card__link::after {
	transform: translateX(3px) rotate(45deg);
}

@media (max-width: 991.98px) {
	.plx-home-guide__grid {
		grid-template-columns: 1fr;
	}

	.plx-home-guide-card {
		min-height: auto;
	}
}

@media (max-width: 575.98px) {
	.plx-home-guide__header {
		text-align: left;
	}

	.plx-home-guide-card {
		padding: 1.1rem;
	}
}

/* ==========================================================================
   Brands category layout
   ========================================================================== */

.plx-brands-page {
	padding-block: 1rem 3rem;
}

.plx-brands-hero {
	max-width: 920px;
	margin: 0 auto clamp(2rem, 4vw, 3.25rem);
	text-align: center;
}

.plx-brands-hero__eyebrow {
	margin-bottom: 0.65rem;
	color: var(--color-secondary-dark);
	font-size: 0.78rem;
	font-weight: 800;
	line-height: 1.2;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.plx-brands-hero__title {
	margin: 0 0 0.9rem;
	color: var(--color-text-strong);
	font-size: clamp(2rem, 4vw, 3.2rem);
	font-weight: 750;
	line-height: 1.08;
	letter-spacing: -0.045em;
	text-wrap: balance;
}

.plx-brands-hero__description {
	max-width: 760px;
	margin-inline: auto;
	color: var(--color-text-muted);
	font-size: clamp(1rem, 1.25vw, 1.08rem);
	line-height: 1.72;
}

.plx-brands-hero__description> :last-child {
	margin-bottom: 0;
}

.plx-brands-hero__image {
	max-width: 18rem;
	margin: 0 auto 1.25rem;
}

.plx-brands-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1rem;
}

.plx-brand-card {
	position: relative;
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: 1.15rem;
	border: 1px solid rgba(var(--color-primary-rgb), 0.09);
	border-radius: var(--bs-border-radius-xl);
	background: var(--color-surface);
	box-shadow: var(--shadow-xs);
	overflow: hidden;
	transition:
		transform 0.18s ease,
		border-color 0.18s ease,
		box-shadow 0.18s ease,
		background-color 0.18s ease;
}

.plx-brand-card::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at top right,
			rgba(var(--color-primary-rgb), 0.07),
			transparent 42%);
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.18s ease;
}

.plx-brand-card:hover,
.plx-brand-card:focus-within {
	transform: translateY(-3px);
	border-color: rgba(var(--color-primary-rgb), 0.20);
	background: var(--color-primary-soft-2);
	box-shadow: var(--shadow-sm);
}

.plx-brand-card:hover::before,
.plx-brand-card:focus-within::before {
	opacity: 1;
}

.plx-brand-card__top,
.plx-brand-card__body {
	position: relative;
	z-index: 1;
}

.plx-brand-card__top {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 0.75rem;
	margin-bottom: 1rem;
}

.plx-brand-card__media {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 4.25rem;
	margin-bottom: 0.75rem;
	text-decoration: none;
}

.plx-brand-card__logo {
	display: block;
	width: auto;
	max-width: 11.5rem;
	max-height: 3.25rem;
	object-fit: contain;
}

.plx-brand-card__placeholder {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 3.5rem;
	height: 3.5rem;
	border-radius: var(--bs-border-radius-pill);
	background: var(--color-primary-soft);
	color: var(--color-primary);
	font-size: 1.35rem;
	font-weight: 800;
	line-height: 1;
}

.plx-brand-card__edit {
	flex: 0 0 auto;
}

.plx-brand-card__body {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	min-height: 0;
}

.plx-brand-card__title {
	margin: 0 0 0.55rem;
	color: var(--color-text-strong);
	font-size: 1.08rem;
	font-weight: 750;
	line-height: 1.25;
}

.plx-brand-card__title a {
	color: inherit;
	text-decoration: none;
}

.plx-brand-card__title a:hover,
.plx-brand-card__title a:focus {
	color: var(--color-primary);
}

.plx-brand-card__intro {
	display: -webkit-box;
	overflow: hidden;
	margin: 0;
	color: var(--color-text-muted);
	font-size: 0.92rem;
	line-height: 1.58;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 4;
}

.plx-brand-card__meta {
	margin-bottom: 0.65rem;
	color: var(--color-text-muted);
	font-size: 0.78rem;
}

.plx-brand-card__meta .article-info {
	margin-bottom: 0;
}

.plx-brand-card__tags {
	margin-top: 0.85rem;
}

.plx-brand-card__action {
	margin-top: auto;
	padding-top: 1.1rem;
}

.plx-brand-card__action .btn {
	width: 100%;
	font-weight: 700;
}

@media (max-width: 1199.98px) {
	.plx-brands-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 991.98px) {
	.plx-brands-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 575.98px) {
	.plx-brands-page {
		padding-block: 0.5rem 2.25rem;
	}

	.plx-brands-hero {
		text-align: left;
	}

	.plx-brands-grid {
		grid-template-columns: 1fr;
	}

	.plx-brand-card {
		padding: 1rem;
	}

	.plx-brand-card__media {
		height: 3.75rem;
	}

	.plx-brand-card__logo {
		max-width: 10.5rem;
		max-height: 3.1rem;
	}

	.plx-brand-card__intro {
		-webkit-line-clamp: 3;
	}
}

/* ==========================================================================
   Brand article layout
   ========================================================================== */

.plx-brand-article {
	max-width: 920px;
	margin-inline: auto;
	padding-block: 1rem 3rem;
}

.plx-brand-article__hero {
	display: grid;
	grid-template-columns: minmax(12rem, 18rem) minmax(0, 1fr);
	gap: clamp(1.5rem, 4vw, 3rem);
	align-items: center;
	margin-bottom: clamp(2rem, 4vw, 3rem);
	padding: clamp(1.25rem, 3vw, 2rem);
	border: 1px solid rgba(var(--color-primary-rgb), 0.10);
	border-radius: var(--bs-border-radius-xl);
	background:
		radial-gradient(circle at top right,
			rgba(var(--color-primary-rgb), 0.07),
			transparent 38%),
		var(--color-primary-soft-2);
}

.plx-brand-article__logo-wrap {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 8rem;
	padding: 1.25rem;
	border: 1px solid rgba(var(--color-primary-rgb), 0.08);
	border-radius: var(--bs-border-radius-lg);
	background: var(--color-surface);
	box-shadow: var(--shadow-xs);
}

.plx-brand-article__logo {
	display: block;
	width: auto;
	max-width: 14rem;
	max-height: 6rem;
	object-fit: contain;
}

.plx-brand-article__eyebrow {
	margin-bottom: 0.65rem;
	color: var(--color-secondary-dark);
	font-size: 0.78rem;
	font-weight: 800;
	line-height: 1.2;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.plx-brand-article__title {
	margin: 0;
	color: var(--color-text-strong);
	font-size: clamp(2rem, 4vw, 3.1rem);
	font-weight: 750;
	line-height: 1.08;
	letter-spacing: -0.045em;
	text-wrap: balance;
}

.plx-brand-article__edit {
	margin-top: 1rem;
}

.plx-brand-article__tags {
	margin-bottom: 1.25rem;
}

.plx-brand-article__body {
	color: var(--color-text);
	font-size: 1rem;
	line-height: 1.75;
}

.plx-brand-article__body> :first-child {
	margin-top: 0;
}

.plx-brand-article__body> :last-child {
	margin-bottom: 0;
}

.plx-brand-article__body h2 {
	margin-top: 2rem;
	margin-bottom: 0.75rem;
	color: var(--color-text-strong);
	font-size: 1.45rem;
	font-weight: 700;
	line-height: 1.25;
}

.plx-brand-article__body h3 {
	margin-top: 1.5rem;
	margin-bottom: 0.55rem;
	color: var(--color-text-strong);
	font-size: 1.18rem;
	font-weight: 700;
	line-height: 1.3;
}

.plx-brand-article__body p {
	margin-bottom: 1rem;
}

.plx-brand-article__body ul,
.plx-brand-article__body ol {
	margin-bottom: 1rem;
	padding-left: 1.25rem;
}

.plx-brand-article__body li+li {
	margin-top: 0.35rem;
}

@media (max-width: 767.98px) {
	.plx-brand-article {
		padding-block: 0.5rem 2.25rem;
	}

	.plx-brand-article__hero {
		grid-template-columns: 1fr;
		text-align: left;
	}

	.plx-brand-article__logo-wrap {
		justify-content: flex-start;
		min-height: 6rem;
	}

	.plx-brand-article__logo {
		max-width: 12rem;
		max-height: 5rem;
	}
}

/* ==========================================================================
   Expertiza / Medicamente homeopate
   ========================================================================== */

.expertiza-homeopatie {
	--homeo-section-space: clamp(2rem, 4vw, 3.5rem);
	--homeo-card-padding: clamp(1.1rem, 2vw, 1.75rem);
	color: var(--color-text);
}

.homeo-page-header {
	margin-bottom: 1rem;
}

.homeo-page-header h1 {
	margin: 0;
	color: var(--color-text-strong);
	font-size: clamp(1.75rem, 2.5vw, 2.25rem);
	font-weight: 600;;
	line-height: 1.15;
}

.expertiza-homeopatie> :first-child {
	margin-top: 0;
}

.expertiza-homeopatie strong {
	color: var(--color-text-strong);
	font-weight: 600;;
}

.expertiza-homeopatie p {
	margin-bottom: 0.95rem;
}

.expertiza-homeopatie p:last-child {
	margin-bottom: 0;
}

.expertiza-homeopatie h2 {
	margin: 0 0 1rem;
	color: var(--color-text-strong);
	font-size: clamp(1.45rem, 2.2vw, 2rem);
	font-weight: 600;;
	line-height: 1.18;
}

.expertiza-homeopatie h3 {
	margin: 1.25rem 0 0.65rem;
	color: var(--color-text-strong);
	font-size: clamp(1.05rem, 1.3vw, 1.25rem);
	font-weight: 600;;
	line-height: 1.28;
}

.homeo-hero {
	margin-bottom: var(--homeo-section-space);
	padding: clamp(1.25rem, 3vw, 2.25rem);
	border: 1px solid rgba(var(--color-primary-rgb), 0.1);
	border-radius: var(--bs-border-radius-xl);
	background:
		linear-gradient(135deg, rgba(var(--color-primary-rgb), 0.07), rgba(var(--color-primary-rgb), 0.015)),
		var(--color-surface-alt);
	overflow: hidden;
}

.homeo-eyebrow {
	display: inline-flex;
	align-items: center;
	margin: 0 0 0.85rem;
	padding: 0.35rem 0.7rem;
	border-radius: var(--bs-border-radius-pill);
	background: var(--color-primary);
	color: var(--color-white);
	font-size: 0.78rem;
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: 0.06em;
}

.homeo-quote {
	margin: 0 0 1rem;
	color: var(--color-text-strong);
	font-size: clamp(1.35rem, 2.2vw, 1.9rem);
	font-weight: 600;
	line-height: 1.2;
}

.homeo-list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.homeo-list li {
	position: relative;
	padding-left: 1.45rem;
	line-height: 1.55;
}

.homeo-list li+li {
	margin-top: 0.55rem;
}

.homeo-list li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.68em;
	width: 0.5rem;
	height: 0.5rem;
	border-radius: 50%;
	background: var(--color-secondary);
	transform: translateY(-50%);
}

.homeo-list--hero li::before {
	background: var(--color-primary);
}

.homeo-media {
	margin: 0;
	border-radius: var(--bs-border-radius-xl);
	background: var(--color-surface-soft);
	overflow: hidden;
	box-shadow: var(--shadow-xs);
}

.homeo-media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.homeo-media:not(.homeo-media--hero):not(.homeo-media--wide) img {
	aspect-ratio: 1 / 1;
}

.homeo-media--hero {
	background: transparent;
	box-shadow: none;
}

.homeo-media--hero img {
	object-fit: contain;
	aspect-ratio: 570 / 274;
}

.homeo-media--compact img {
	aspect-ratio: 370 / 332;
}

.homeo-media--wide {
	margin-bottom: 1.25rem;
}

.homeo-media--wide img {
	aspect-ratio: 1200 / 628;
}

.homeo-faq {
	display: grid;
	gap: clamp(1.5rem, 3vw, 2.5rem);
	margin-bottom: var(--homeo-section-space);
}

.homeo-faq-item {
	padding-bottom: clamp(1.5rem, 3vw, 2.5rem);
	border-bottom: 1px solid var(--color-border);
}

.homeo-faq-item:last-child {
	padding-bottom: 0;
	border-bottom: 0;
}

.homeo-copy {
	max-width: 42rem;
}

.homeo-numbered-list {
	margin: 0;
	padding-left: 1.25rem;
}

.homeo-numbered-list li+li {
	margin-top: 0.7rem;
}

.homeo-section {
	margin-top: var(--homeo-section-space);
}

.homeo-section-heading {
	margin-bottom: 1.1rem;
}

.homeo-section-subtitle {
	margin: -0.55rem 0 0;
	color: var(--color-text-muted);
	font-size: 1rem;
	font-weight: 500;
}

.homeo-feature-card {
	padding: var(--homeo-card-padding);
	border: 1px solid var(--color-border);
	border-radius: var(--bs-border-radius-xl);
	background: var(--color-surface-alt);
	box-shadow: var(--shadow-xs);
}

.homeo-feature-card h3 {
	margin-top: 0;
}

.homeo-alert {
	margin-top: 1rem;
	padding: 0.9rem 1rem;
	border-left: 4px solid var(--color-secondary);
	border-radius: var(--bs-border-radius);
	background: var(--color-secondary-soft);
	color: var(--color-text-strong);
	font-weight: 500;
}

.homeo-section--text {
	max-width: 860px;
	margin-right: auto;
	margin-left: auto;
}

.homeo-rules-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.homeo-rules-list li {
	padding: 1.05rem 1.1rem;
	border: 1px solid var(--color-border);
	border-radius: var(--bs-border-radius-lg);
	background: var(--color-surface);
	box-shadow: var(--shadow-xs);
}

.homeo-rules-list h3 {
	margin-top: 0;
	font-size: 1.1rem;
	font-weight: 600;;
	line-height: 1.3;
}

.homeo-rules-list p {
	margin-bottom: 0;
	/*color: var(--color-text-muted);*/
}

@media (min-width: 992px) {
	.homeo-rules-list li:last-child:nth-child(odd) {
		grid-column: 1 / -1;
	}
}

.homeo-callout {
	margin: 1.25rem 0;
	padding: 1rem 1.15rem;
	border: 1px solid rgba(var(--color-primary-rgb), 0.14);
	border-left: 4px solid var(--color-primary);
	border-radius: var(--bs-border-radius);
	background: var(--color-primary-soft-2);
}

.homeo-callout h3 {
	margin-top: 0;
}

.homeo-callout ul {
	margin-bottom: 0;
	padding-left: 1.2rem;
}

.homeo-section--videos {
	margin-bottom: var(--homeo-section-space);
}

.homeo-video {
	border-radius: var(--bs-border-radius-lg);
	background: var(--color-surface-soft);
	overflow: hidden;
	box-shadow: var(--shadow-xs);
}

.homeo-video iframe {
	border: 0;
}

@media (max-width: 991.98px) {
	.homeo-copy {
		max-width: none;
	}

	.homeo-rules-list {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 575.98px) {
	.homeo-hero {
		padding: 1rem;
		border-radius: var(--bs-border-radius-lg);
	}

	.homeo-faq {
		gap: 1.5rem;
	}

	.homeo-faq-item {
		padding-bottom: 1.5rem;
	}

	.homeo-feature-card {
		padding: 1rem;
	}

	.homeo-rules-list li {
		padding: 0.95rem;
	}
}

/* Home needs */
.plx-home-needs {
	padding-top: clamp(2.5rem, 5vw, 4.5rem);
	padding-bottom: clamp(2.5rem, 5vw, 4.5rem);
	background:
		linear-gradient(180deg, var(--color-primary-soft-2), var(--color-white));
}

.plx-home-needs__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0.85rem;
	max-width: 1120px;
	margin: 0 auto;
}

.plx-home-need-card {
	display: flex;
	flex-direction: column;
	min-height: 100%;
	padding: 1rem 1.05rem;
	border: 1px solid var(--color-border);
	border-radius: var(--bs-border-radius-lg);
	background: var(--color-surface);
	color: var(--color-text);
	text-decoration: none;
	box-shadow: 0 8px 18px rgba(var(--color-black-rgb), 0.035);
	transition:
		border-color 0.16s ease,
		background-color 0.16s ease,
		box-shadow 0.16s ease,
		transform 0.16s ease;
}

.plx-home-need-card:hover,
.plx-home-need-card:focus {
	border-color: rgba(var(--color-primary-rgb), 0.22);
	background: var(--color-primary-soft);
	color: var(--color-text);
	box-shadow: var(--shadow-sm);
	transform: translateY(-2px);
}

.plx-home-need-card__title {
	margin-bottom: 0.35rem;
	color: var(--color-text-strong);
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.25;
}

.plx-home-need-card__text {
	color: var(--color-text-muted);
	font-size: 0.88rem;
	line-height: 1.45;
}

@media (max-width: 1199.98px) {
	.plx-home-needs__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 575.98px) {
	.plx-home-needs__grid {
		grid-template-columns: 1fr;
	}

	.plx-home-need-card {
		padding: 0.9rem 1rem;
	}
}

.plx-home-shop-strip {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.9rem;
	margin: 1.25rem auto 0;
	padding: 0.8rem 1rem;
	border-radius: var(--bs-border-radius-lg);
	background: var(--color-primary);
	color: var(--color-white);
	text-align: center;
}

.plx-home-shop-strip strong {
	font-weight: 750;
}

.plx-home-shop-strip span {
	opacity: 0.86;
}

.plx-home-shop-strip a {
	color: var(--color-white);
	font-weight: 750;
	text-decoration: underline;
	text-underline-offset: 0.18em;
}

@media (max-width: 767.98px) {
	.plx-home-shop-strip {
		display: grid;
		gap: 0.35rem;
		margin-top: 1rem;
		font-size: 0.9rem;
	}
}

/* VME wishlist dropdown */
.vme-mod-wishlist {
	position: relative;
}

.vme-wishlist-toggle {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--color-primary);
	line-height: 1;
}

.vme-wishlist-toggle::after {
	display: none;
}

.vme-wishlist-toggle:hover,
.vme-wishlist-toggle:focus {
	color: var(--color-primary-dark);
}

.vme-wishlist-toggle:focus-visible {
	outline: var(--focus-outline-primary);
	outline-offset: var(--focus-outline-offset);
}

.vme-wishlist-toggle .jewel {
	position: absolute;
	top: -0.45rem;
	right: -0.55rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 1.25rem;
	height: 1.25rem;
	padding: 0 0.3rem;
	border-radius: 999px;
	background: var(--color-danger);
	color: var(--color-white);
	font-size: 0.72rem;
	font-weight: 700;
	line-height: 1;
}

.vme-wishlist-dropdown {
	min-width: 22rem;
	max-width: min(92vw, 24rem);
	padding: 0;
	border: 1px solid var(--color-border);
	border-radius: var(--bs-border-radius);
	background: var(--color-surface);
	box-shadow: var(--shadow-dropdown);
	overflow: hidden;
	right: 0;
	left: auto;
}

.vme-wishlist-items {
	max-height: 24rem;
	overflow-y: auto;
}

.vme-wishlist-thumb {
	width: 3.5rem;
}

.vme-wishlist-thumb img {
	width: 3.5rem;
	height: 3.5rem;
	object-fit: contain;
}

.vme-wishlist-product .mod-product-name {
	display: block;
	color: var(--color-text-strong);
	font-size: 0.9rem;
	font-weight: 600;
	line-height: 1.25;
	text-decoration: none;
}

.vme-wishlist-product .mod-product-name:hover,
.vme-wishlist-product .mod-product-name:focus {
	color: var(--color-primary);
}

.vme-wishlist-product .mod-product-price {
	margin-top: 0.25rem;
	font-size: 0.85rem;
	font-weight: 600;
	color: var(--color-primary);
}

.vme-wishlist-remove .vme-remove-btn {
	color: var(--color-text-muted);
	font-size: 1.25rem;
	line-height: 1;
	text-decoration: none;
}

.vme-wishlist-remove .vme-remove-btn:hover,
.vme-wishlist-remove .vme-remove-btn:focus {
	color: var(--color-danger-dark);
}

.vme-mod-wishlist .mod-row-separator {
	height: 1px;
	background: var(--color-border);
	margin: 0 1rem;
}

@media (max-width: 575.98px) {
	.vme-wishlist-dropdown {
		min-width: min(92vw, 22rem);
	}
}

/* Header dropdown stacking fix */
.header {
	position: relative;
	z-index: 1040;
	overflow: visible;
}

.header-inner {
	position: relative;
	z-index: 1050;
	overflow: visible;
}

.cart-module,
.cart-module .moduletable,
.cart-module .vme-mod-wishlist,
.cart-module .vp-dropmod-container,
.cart-module .dropdown {
	position: relative;
	z-index: 1060;
	overflow: visible;
}

.cart-module .dropdown-menu,
.vme-wishlist-dropdown {
	z-index: 1070;
}

.main-menu,
.navbar,
.navigation,
.menu-wrapper {
	position: relative;
	z-index: 1020;
}

.vme-wishlist-icon {
	display: block;
	width: 1.75rem;
	height: 1.75rem;
	color: currentColor;
}

.vme-wishlist-toggle.has-item .vme-wishlist-icon {
	color: var(--color-primary);
}

.vme-wishlist-toggle.empty .vme-wishlist-icon {
	color: var(--color-text);
}

.vme-wishlist-toggle:hover .vme-wishlist-icon,
.vme-wishlist-toggle:focus .vme-wishlist-icon {
	color: var(--color-primary-dark);
}
/*
 * FusionCommerce typography baseline
 */
body {
  font-family: var(--font-body, var(--font-sans));
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  font-family: var(--font-heading, var(--font-sans));
}
