/*
 * Sections — secțiunile paginii principale (Faza 3).
 * Mobile-first, rotunjit, grafit + auriu, respiră (padding vertical mare).
 */

/* ---- Antet de secțiune reutilizabil ---- */
.section__head { margin-bottom: var(--space-5); }
.section__head h2 { margin-top: 0.6rem; }
.section__head--center { text-align: center; }
.section__head--center .eyebrow { display: inline-block; }
.section__head--split { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: var(--space-4); }
.section__link {
	display: inline-flex; align-items: center; gap: 0.5em;
	font-size: var(--fs-sm); font-weight: 500; letter-spacing: 0.02em;
	color: var(--gold); white-space: nowrap;
	transition: gap var(--dur-med) var(--ease-spring), color var(--dur-fast) var(--ease-out);
}
.section__link:hover { gap: 0.9em; color: var(--accent-ink); }
.section__link .icon { width: 18px; height: 18px; }

/* ============================================================
   Cumpără după formă
   ============================================================ */
.shapes__track {
	display: flex;
	gap: var(--space-3);
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	padding-bottom: var(--space-2);
	margin-inline: calc(-1 * var(--space-4));
	padding-inline: var(--space-4);
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
}
.shapes__track::-webkit-scrollbar { display: none; }
.shape {
	scroll-snap-align: start;
	flex: 0 0 auto;
	width: 104px;
	display: flex; flex-direction: column; align-items: center; gap: 0.6rem;
	padding: var(--space-3) var(--space-2);
	background: var(--surface);
	border: 1px solid var(--hairline);
	border-radius: var(--radius);
	color: var(--text-dim);
	transition: transform var(--dur-med) var(--ease-out),
	            border-color var(--dur-med) var(--ease-out),
	            color var(--dur-med) var(--ease-out),
	            background var(--dur-med) var(--ease-out);
}
.shape .shape-icon { width: 32px; height: 32px; }
.shape:hover {
	transform: translateY(-4px);
	border-color: var(--hairline-strong);
	color: var(--accent-ink);
	background: var(--surface-strong);
}
.shape__icon { color: var(--gold); }
.shape:hover .shape__icon { color: var(--accent-ink); }
.shape__label { font-size: var(--fs-xs); font-weight: 500; letter-spacing: 0.01em; }
@media (min-width: 900px) {
	.shapes__track { flex-wrap: wrap; overflow: visible; justify-content: center; margin-inline: 0; padding-inline: 0; }
	.shape { width: 108px; }
}

/* ============================================================
   Grilă de produse + card
   ============================================================ */
.product-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--space-4);
}
@media (min-width: 560px) { .product-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 980px) { .product-grid { grid-template-columns: repeat(3, 1fr); } }

.product-card {
	display: flex; flex-direction: column;
	background: var(--bg-elevated);
	border: 1px solid var(--hairline);
	border-radius: var(--radius-lg);
	overflow: hidden;
	color: var(--text);
	transition: transform var(--dur-med) var(--ease-out),
	            border-color var(--dur-med) var(--ease-out),
	            box-shadow var(--dur-med) var(--ease-out);
}
.product-card:hover {
	transform: translateY(-4px);
	border-color: var(--hairline-strong);
	box-shadow: var(--shadow-card);
}
.product-card__media {
	position: relative;
	aspect-ratio: 4 / 3;
	overflow: hidden;
	background: #ffffff;
}
.product-card__media .product-card__img,
.product-card__media img {
	width: 100%; height: 100%;
	object-fit: cover;
	transition: transform 700ms var(--ease-out);
}
.product-card:hover .product-card__img,
.product-card:hover .product-card__media img { transform: scale(1.05); }
.product-card__cert {
	position: absolute; top: 0.8rem; left: 0.8rem;
	font-size: 0.7rem; letter-spacing: 0.06em; text-transform: uppercase;
	font-weight: 600; color: var(--ink-900);
	background: rgba(231, 206, 151, 0.92);
	padding: 0.28rem 0.6rem; border-radius: var(--radius-pill);
	-webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px);
}
.product-card__body { padding: var(--space-4); display: flex; flex-direction: column; gap: 0.35rem; flex: 1; }
.product-card__forma { font-size: var(--fs-eyebrow); letter-spacing: var(--tracking-eyebrow); text-transform: uppercase; color: var(--text-mute); }
.product-card__title {
	font-family: var(--font-display); font-size: 1.35rem; font-weight: 500; line-height: 1.15;
	letter-spacing: 0; margin: 0;
}
.product-card__chips { font-size: var(--fs-sm); color: var(--text-dim); margin: 0.1rem 0 0; }
.product-card__price {
	margin-top: auto; padding-top: var(--space-3);
	font-size: 1.15rem; font-weight: 600; color: var(--accent-ink);
}
.product-card__price .woocommerce-Price-amount { color: var(--accent-ink); }
.product-card__price del { color: var(--text-mute); font-weight: 400; font-size: 0.9em; margin-right: 0.4em; }

/* ============================================================
   Cele 4C — titlu lipit + panouri
   ============================================================ */
.c4c__grid { display: grid; gap: var(--space-5); }
.c4c__title { font-size: clamp(2.6rem, 1.6rem + 4vw, 4.5rem); margin: 0.4rem 0 1rem; }
.c4c__intro { color: var(--text-dim); max-width: 34ch; margin-bottom: var(--space-4); }
.c4c__panels { display: grid; gap: var(--space-3); }
.c4c__panel {
	display: flex; gap: var(--space-4); align-items: flex-start;
	padding: var(--space-5) var(--space-4);
	background: var(--surface);
	border: 1px solid var(--hairline);
	border-radius: var(--radius-lg);
}
.c4c__num {
	font-family: var(--font-display); font-size: 1.5rem; font-weight: 500;
	color: var(--gold); line-height: 1; flex: none;
	min-width: 2.4rem;
}
.c4c__panel-body h3 { font-size: var(--fs-h3); margin-bottom: 0.4rem; }
.c4c__panel-body p { color: var(--text-dim); margin: 0; }
@media (min-width: 900px) {
	.c4c__grid { grid-template-columns: 0.9fr 1.1fr; gap: var(--space-6); align-items: start; }
	.c4c__aside { position: sticky; top: 8rem; align-self: start; }
	.c4c__panels { gap: var(--space-4); }
	.c4c__panel { padding: var(--space-6) var(--space-5); }
}

/* ============================================================
   Lab vs. minat
   ============================================================ */
.lvm__grid { display: grid; gap: var(--space-5); align-items: center; }
.lvm__lead { color: var(--text-dim); margin: var(--space-3) 0 var(--space-4); }
.lvm__list { list-style: none; padding: 0; margin: 0 0 var(--space-5); display: grid; gap: var(--space-3); }
.lvm__list li { display: flex; gap: var(--space-3); align-items: flex-start; }
.lvm__list svg { width: 22px; height: 22px; color: var(--gold); flex: none; margin-top: 2px; }
.lvm__list span { color: var(--text-dim); }
.lvm__compare {
	display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: var(--space-3);
	padding: var(--space-5);
	background: var(--surface);
	border: 1px solid var(--hairline);
	border-radius: var(--radius-xl);
}
.lvm__col { display: flex; flex-direction: column; gap: 0.5rem; text-align: center; }
.lvm__tag {
	align-self: center;
	font-size: var(--fs-xs); letter-spacing: 0.08em; text-transform: uppercase;
	color: var(--text-mute); border: 1px solid var(--hairline);
	padding: 0.3rem 0.7rem; border-radius: var(--radius-pill);
}
.lvm__tag--gold { color: var(--ink-900); background: var(--gold); border-color: var(--gold); }
.lvm__big { font-family: var(--font-display); font-size: clamp(1.8rem, 1.2rem + 2vw, 2.6rem); font-weight: 500; line-height: 1; color: var(--text); }
.lvm__big span { display: block; font-family: var(--font-body); font-size: 0.8rem; letter-spacing: 0.04em; text-transform: uppercase; color: var(--text-mute); margin-top: 0.35rem; }
.lvm__col--lab .lvm__big { color: var(--accent-ink); }
.lvm__meta { font-size: var(--fs-xs); color: var(--text-mute); }
.lvm__vs { font-family: var(--font-display); font-style: italic; color: var(--text-mute); font-size: 1.1rem; }
@media (min-width: 900px) {
	.lvm__grid { grid-template-columns: 1fr 1fr; gap: var(--space-7); }
}

/* ============================================================
   Testimoniale
   ============================================================ */
.testimonials__track {
	display: grid; gap: var(--space-4);
	grid-auto-flow: column;
	grid-auto-columns: 82%;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	margin-inline: calc(-1 * var(--space-4));
	padding: 0 var(--space-4) var(--space-2);
	scrollbar-width: none;
}
.testimonials__track::-webkit-scrollbar { display: none; }
.quote {
	scroll-snap-align: center;
	display: flex; flex-direction: column;
	margin: 0;
	padding: var(--space-5);
	background: var(--surface);
	border: 1px solid var(--hairline);
	border-radius: var(--radius-lg);
}
.quote__mark { font-family: var(--font-display); font-size: 4rem; line-height: 0.6; color: var(--gold); opacity: 0.5; height: 2rem; }
.quote__text { font-family: var(--font-display); font-size: 1.5rem; font-style: italic; line-height: 1.4; color: var(--text); margin: var(--space-3) 0 var(--space-4); }
.quote__by { display: flex; flex-direction: column; gap: 0.1rem; margin-top: auto; }
.quote__name { font-weight: 600; color: var(--gold); }
.quote__city { font-size: var(--fs-xs); color: var(--text-mute); letter-spacing: 0.04em; }
@media (min-width: 900px) {
	.testimonials__track { grid-auto-flow: row; grid-template-columns: repeat(3, 1fr); overflow: visible; margin-inline: 0; padding-inline: 0; }
}

/* ============================================================
   CTA final + newsletter
   ============================================================ */
.cta-band {
	position: relative;
	text-align: center;
	padding: clamp(3rem, 2rem + 6vw, 6rem) var(--space-4);
	background:
		radial-gradient(80% 120% at 50% 0%, rgba(203, 170, 114, 0.14), transparent 60%),
		var(--bg-elevated);
	border: 1px solid var(--hairline-strong);
	border-radius: var(--radius-xl);
	overflow: hidden;
}
.cta-band__title { font-size: clamp(2.4rem, 1.4rem + 5vw, 5rem); line-height: 1.02; margin-bottom: var(--space-3); }
.cta-band__title em { font-style: italic; color: var(--accent-ink); }
.cta-band__text { max-width: 46ch; margin: 0 auto var(--space-5); color: var(--text-dim); }
.btn--lg { min-height: 60px; padding: 1.05rem 2.4rem; font-size: var(--fs-body); }

.newsletter {
	margin-top: var(--space-5);
	display: grid; gap: var(--space-4);
	padding: var(--space-5);
	border: 1px solid var(--hairline);
	border-radius: var(--radius-lg);
	background: var(--surface);
}
.newsletter__intro h3 { font-size: var(--fs-h3); margin-bottom: 0.3rem; }
.newsletter__intro p { color: var(--text-mute); font-size: var(--fs-sm); }
.newsletter__form { display: grid; gap: var(--space-3); grid-template-columns: 1fr; }
.newsletter__input {
	width: 100%;
	min-height: 54px;
	padding: 0.9rem 1.3rem;
	font-family: var(--font-body); font-size: var(--fs-body);
	color: var(--text);
	background: var(--paper-0);
	border: 1px solid var(--hairline-strong);
	border-radius: var(--radius-pill);
	transition: border-color var(--dur-fast) var(--ease-out);
}
.newsletter__input::placeholder { color: var(--text-mute); }
.newsletter__input:focus { outline: none; border-color: var(--gold); }
.newsletter__form .btn { width: 100%; }
.newsletter__note { grid-column: 1 / -1; font-size: var(--fs-sm); margin: 0; min-height: 1.2em; color: var(--text-mute); }
.newsletter__note.is-ok { color: var(--accent-ink); }
.newsletter__note.is-error { color: #E8A0A0; }
@media (min-width: 760px) {
	.newsletter { grid-template-columns: 1fr 1.2fr; align-items: center; padding: var(--space-6); }
	.newsletter__form { grid-template-columns: 1fr auto; }
	.newsletter__form .btn { width: auto; }
}

/* ============================================================
   Magazin (arhivă) — Faza 4
   ============================================================ */
.shop { padding-top: 8rem; padding-bottom: var(--space-8); }
.shop__head { margin-bottom: var(--space-4); }
.shop__title { font-size: clamp(2.2rem, 1.4rem + 3.5vw, 4rem); margin: 0.4rem 0 0.5rem; }
.shop__count { color: var(--text-mute); font-size: var(--fs-sm); margin: 0; }

.shop__toolbar {
	display: flex; align-items: center; justify-content: space-between; gap: var(--space-3);
	padding-block: var(--space-3);
	border-top: 1px solid var(--hairline);
	border-bottom: 1px solid var(--hairline);
	margin-bottom: var(--space-5);
}
.shop__filter-toggle { min-height: 46px; padding: 0.6rem 1.2rem; }
.shop__sort { margin-left: auto; }
.shop__sort-select {
	min-height: 46px; padding: 0.5rem 2.4rem 0.5rem 1.1rem;
	font-family: var(--font-body); font-size: var(--fs-sm); color: var(--text);
	background: var(--surface); border: 1px solid var(--hairline-strong);
	border-radius: var(--radius-pill); cursor: pointer;
	appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none' stroke='%23CBAA72' stroke-width='1.5'%3E%3Cpath d='M1 1l5 5 5-5'/%3E%3C/svg%3E");
	background-repeat: no-repeat; background-position: right 1.1rem center;
}
.shop__sort-select:focus { outline: none; border-color: var(--gold); }

.shop__layout { display: block; }
.shop__results { min-height: 40vh; transition: opacity var(--dur-med) var(--ease-out); }
.shop__results.is-loading { opacity: 0.45; pointer-events: none; }

/* Sidebar: bottom-sheet pe mobil (implicit ascuns, glisează de jos). */
.shop__sidebar {
	position: fixed; inset: auto 0 0 0; z-index: var(--z-overlay);
	max-height: 86vh; overflow-y: auto;
	background: var(--paper-0);
	border-top-left-radius: var(--radius-xl); border-top-right-radius: var(--radius-xl);
	border-top: 1px solid var(--hairline-strong);
	transform: translateY(100%);
	transition: transform var(--dur-med) var(--ease-in-out);
	box-shadow: 0 -30px 60px -20px rgba(0,0,0,0.7);
}
.shop__sidebar.is-open { transform: translateY(0); }
.shop__sidebar-inner { padding: var(--space-4) var(--space-4) var(--space-6); position: relative; }
.shop__filter-close {
	position: absolute; top: 0.8rem; right: 0.8rem;
	min-width: 44px; min-height: 44px;
	background: transparent; border: 0; color: var(--text); cursor: pointer;
}
.shop__scrim {
	position: fixed; inset: 0; z-index: calc(var(--z-overlay) - 1);
	background: rgba(10,10,12,0.6);
	-webkit-backdrop-filter: blur(2px); backdrop-filter: blur(2px);
}

.shop__pagination { margin-top: var(--space-6); }
.shop__pagination .page-numbers {
	display: inline-flex; flex-wrap: wrap; gap: 0.4rem; list-style: none; padding: 0; margin: 0; justify-content: center;
}
.shop__pagination .page-numbers li a,
.shop__pagination .page-numbers li span {
	display: inline-flex; align-items: center; justify-content: center;
	min-width: 44px; min-height: 44px; padding: 0 0.6rem;
	border: 1px solid var(--hairline); border-radius: var(--radius);
	color: var(--text-dim); font-size: var(--fs-sm);
}
.shop__pagination .page-numbers li .current { background: var(--gold); color: var(--ink-900); border-color: var(--gold); }
.shop__pagination .page-numbers li a:hover { border-color: var(--gold); color: var(--accent-ink); }

.shop__empty, .shop__empty-wrap { text-align: center; padding: var(--space-7) var(--space-3); color: var(--text-dim); display: grid; gap: var(--space-4); justify-items: center; }

/* ---- Panoul de filtre ---- */
.shop-filters { display: grid; gap: var(--space-4); }
.shop-filters__head { display: flex; align-items: center; justify-content: space-between; }
.shop-filters__title { font-family: var(--font-display); font-size: 1.4rem; }
.shop-filters__reset { font-size: var(--fs-sm); color: var(--gold); }
.shop-filters__reset:hover { color: var(--accent-ink); text-decoration: underline; }

.filter-group { border: 0; padding: 0; margin: 0; border-top: 1px solid var(--hairline); padding-top: var(--space-4); }
.filter-group__legend { font-size: var(--fs-eyebrow); letter-spacing: var(--tracking-eyebrow); text-transform: uppercase; color: var(--text-mute); padding: 0; margin-bottom: var(--space-3); }
.filter-group__options { display: flex; flex-wrap: wrap; gap: 0.5rem; }

.filter-check { display: inline-flex; align-items: center; gap: 0.5rem; cursor: pointer; font-size: var(--fs-sm); color: var(--text-dim); padding: 0.4rem 0.7rem; border: 1px solid var(--hairline); border-radius: var(--radius-pill); transition: border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out); }
.filter-check input { position: absolute; opacity: 0; width: 0; height: 0; }
.filter-check__box { display: none; }
.filter-check:hover { border-color: var(--hairline-strong); color: var(--text); }
.filter-check:has(input:checked) { background: var(--gold); color: var(--ink-900); border-color: var(--gold); font-weight: 600; }
.filter-check__count { font-size: 0.72rem; opacity: 0.6; }
.filter-check:has(input:checked) .filter-check__count { opacity: 0.8; }
.filter-check:focus-within { outline: 2px solid var(--accent-ink); outline-offset: 2px; }

.filter-price { display: flex; align-items: center; gap: 0.6rem; }
.filter-price__input {
	width: 100%; min-height: 46px; padding: 0.5rem 0.9rem;
	font-family: var(--font-body); font-size: var(--fs-sm); color: var(--text);
	background: var(--paper-0); border: 1px solid var(--hairline-strong); border-radius: var(--radius);
}
.filter-price__input:focus { outline: none; border-color: var(--gold); }
.filter-price__sep { color: var(--text-mute); }

/* ---- Desktop: sidebar sticky, fără bottom-sheet ---- */
@media (min-width: 1000px) {
	.shop__toolbar { justify-content: flex-end; }
	.shop__filter-toggle { display: none; }
	.shop__layout { display: grid; grid-template-columns: 264px 1fr; gap: var(--space-6); align-items: start; }
	.shop__sidebar {
		position: sticky; inset: auto; top: 8rem;
		max-height: none; overflow: visible;
		background: transparent; border: 0; border-radius: 0; transform: none; box-shadow: none;
	}
	.shop__sidebar-inner { padding: 0; }
	.shop__filter-close { display: none; }
	.shop__scrim { display: none !important; }
}

/* ============================================================
   Pagina de produs (single) — Faza 4
   ============================================================ */
.single-product main#main { padding-top: 8rem; }
.woocommerce div.product { display: grid; gap: var(--space-5); }
.woocommerce div.product .woocommerce-product-gallery { position: relative; }
.woocommerce div.product .woocommerce-product-gallery__wrapper { border-radius: var(--radius-lg); overflow: hidden; background: #fff; }
.woocommerce div.product .woocommerce-product-gallery img { border-radius: var(--radius-lg); }
.woocommerce span.onsale {
	background: var(--gold); color: var(--ink-900);
	border-radius: var(--radius-pill); padding: 0.3rem 0.9rem; font-weight: 600;
	min-height: auto; line-height: 1.4;
}

.woocommerce div.product .product_title {
	font-family: var(--font-display); font-weight: 500;
	font-size: clamp(2rem, 1.3rem + 2.4vw, 3.2rem); line-height: 1.08; margin-bottom: 0.6rem;
}
.woocommerce div.product p.price,
.woocommerce div.product span.price {
	color: var(--accent-ink); font-size: 1.7rem; font-weight: 600; margin-bottom: var(--space-4);
}
.woocommerce div.product p.price del { color: var(--text-mute); font-weight: 400; font-size: 0.7em; }
.woocommerce div.product p.price ins { text-decoration: none; }
.woocommerce div.product .woocommerce-product-details__short-description { color: var(--text-dim); margin-bottom: var(--space-4); }
.woocommerce div.product .woocommerce-product-details__short-description p { max-width: none; }

/* Spec table (extras de certificat) */
.pdp-specs {
	margin: var(--space-4) 0;
	border: 1px solid var(--hairline);
	border-radius: var(--radius-lg);
	background: var(--surface);
	overflow: hidden;
}
.pdp-specs__head {
	display: flex; align-items: center; justify-content: space-between; gap: var(--space-4);
	padding: var(--space-3) var(--space-4);
	border-bottom: 1px solid var(--hairline);
	background: var(--surface-strong);
}
.pdp-specs__title { font-family: var(--font-display); font-size: 1.2rem; line-height: 1; flex: none; }
.pdp-specs__badge { font-size: 0.68rem; letter-spacing: 0.08em; text-transform: uppercase; color: var(--gold); text-align: right; line-height: 1.3; }
.pdp-specs__list { margin: 0; padding: 0.4rem var(--space-4) var(--space-3); }
.pdp-specs__row { display: flex; align-items: baseline; justify-content: space-between; gap: var(--space-3); padding: 0.7rem 0; border-bottom: 1px solid var(--hairline); }
.pdp-specs__row:last-child { border-bottom: 0; }
.pdp-specs__row dt { color: var(--text-mute); font-size: var(--fs-sm); margin: 0; }
.pdp-specs__row dd { margin: 0; color: var(--text); font-weight: 500; text-align: right; }

/* Add to cart */
.woocommerce div.product form.cart { margin: var(--space-4) 0; display: flex; flex-wrap: wrap; gap: var(--space-3); align-items: center; }
.woocommerce div.product form.cart .quantity input.qty {
	min-height: 54px; width: 88px; text-align: center;
	background: var(--paper-0); color: var(--text);
	border: 1px solid var(--hairline-strong); border-radius: var(--radius-pill);
	font-family: var(--font-body); font-size: var(--fs-body);
}
.woocommerce div.product form.cart .button,
.woocommerce div.product .single_add_to_cart_button {
	min-height: 54px; padding: 0.95rem 2.2rem;
	background: var(--gold); color: var(--ink-900);
	border: 1px solid var(--gold); border-radius: var(--radius-pill);
	font-family: var(--font-body); font-size: var(--fs-sm); font-weight: 600;
	letter-spacing: 0.04em; text-transform: uppercase; cursor: pointer;
	box-shadow: var(--shadow-gold);
	transition: background var(--dur-fast) var(--ease-out), transform var(--dur-med) var(--ease-spring);
}
.woocommerce div.product .single_add_to_cart_button:hover { background: var(--accent-ink); transform: translateY(-2px); }

/* Reassurance */
.pdp-reassure { list-style: none; padding: var(--space-4) 0 0; margin: var(--space-3) 0 0; display: grid; gap: var(--space-3); border-top: 1px solid var(--hairline); }
.pdp-reassure li { display: flex; align-items: center; gap: var(--space-3); color: var(--text-dim); font-size: var(--fs-sm); }
.pdp-reassure svg { width: 22px; height: 22px; color: var(--gold); flex: none; }

/* Tabs */
.woocommerce div.product .woocommerce-tabs { margin-top: var(--space-6); }
.woocommerce div.product .woocommerce-tabs ul.tabs { list-style: none; margin: 0 0 var(--space-4); padding: 0 0 var(--space-2); display: flex; flex-wrap: wrap; gap: var(--space-3); border-bottom: 1px solid var(--hairline); }
.woocommerce div.product .woocommerce-tabs ul.tabs li { margin: 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { color: var(--text-mute); font-family: var(--font-body); font-size: var(--fs-sm); text-transform: uppercase; letter-spacing: 0.04em; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: var(--gold); }
.woocommerce div.product .woocommerce-tabs .panel { color: var(--text-dim); }
.woocommerce div.product .woocommerce-tabs .panel h2 { font-size: var(--fs-h3); margin-bottom: var(--space-3); }

.pdp-related { margin-top: var(--space-7); }

@media (min-width: 900px) {
	/* Galeria + sumarul: grilă cu 2 coloane (sumarul puțin mai lat). Sticky-ul
	   galeriei e mărginit de acest wrapper, deci nu atinge taburile de mai jos. */
	.woocommerce div.product .product__top {
		display: grid;
		grid-template-columns: 0.95fr 1.05fr;
		gap: var(--space-6);
		align-items: start;
	}
	/* Galeria rămâne „înghețată" cât timp derulezi specificațiile.
	   !important: foaia WooCommerce se încarcă după a noastră și ar readuce
	   position:relative. */
	.woocommerce div.product .product__top div.images.woocommerce-product-gallery {
		position: sticky !important;
		top: 7.5rem;
		align-self: start;
	}
	/* Sumarul umple întreaga lui coloană — WC îl limitează implicit la 48% + float. */
	.woocommerce div.product div.summary,
	.woocommerce div.product .entry-summary {
		width: 100% !important;
		float: none !important;
		margin: 0;
	}
}

/* WooCommerce notices (dark) */
.woocommerce-message, .woocommerce-info, .woocommerce-error, .woocommerce-noreviews {
	background: var(--surface); border: 1px solid var(--hairline); border-left: 3px solid var(--gold);
	color: var(--text); border-radius: var(--radius); padding: var(--space-3) var(--space-4); list-style: none;
}
.woocommerce-message a, .woocommerce-info a, .woocommerce-error a { color: var(--gold); }

/* ============================================================
   Coș / Finalizare / Cont — restilizare (Faza 4)
   Doar CSS: fluxurile și șabloanele WooCommerce rămân intacte.
   ============================================================ */
.woocommerce-cart main#main,
.woocommerce-checkout main#main,
.woocommerce-account main#main,
.woocommerce-page main#main { padding-top: 8rem; }

.woocommerce-cart .site-main > .container,
.woocommerce-checkout .site-main > .container,
.woocommerce-account .site-main > .container { max-width: var(--container); }

.woocommerce h1, .woocommerce h2, .woocommerce h3 { font-family: var(--font-display); font-weight: 500; }

/* Formulare (inputuri dark) */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce .select2-container .select2-selection,
.woocommerce-page input[type="text"],
.woocommerce-page input[type="email"],
.woocommerce-page input[type="tel"],
.woocommerce-page input[type="password"],
.woocommerce-page input[type="number"],
.woocommerce-page textarea,
.woocommerce-page select {
	background: var(--paper-0); color: var(--text);
	border: 1px solid var(--hairline-strong); border-radius: var(--radius);
	padding: 0.7rem 0.9rem; min-height: 50px; font-family: var(--font-body); font-size: var(--fs-body);
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce-page input:focus, .woocommerce-page textarea:focus, .woocommerce-page select:focus { outline: none; border-color: var(--gold); }
.woocommerce form .form-row label, .woocommerce-page label { color: var(--text-dim); font-size: var(--fs-sm); }
.woocommerce .select2-container--default .select2-selection--single .select2-selection__rendered { color: var(--text); line-height: 34px; }
.select2-dropdown { background: var(--paper-0); border-color: var(--hairline-strong); color: var(--text); }
.select2-container--default .select2-results__option--highlighted[aria-selected] { background: var(--gold); color: var(--ink-900); }

/* Tabele (coș, comandă, cont) */
.woocommerce table.shop_table {
	border: 1px solid var(--hairline); border-radius: var(--radius-lg); border-collapse: separate; border-spacing: 0; overflow: hidden;
	background: var(--surface); color: var(--text-dim);
}
.woocommerce table.shop_table th { color: var(--text); font-family: var(--font-body); font-weight: 600; padding: var(--space-3); border-bottom: 1px solid var(--hairline); }
.woocommerce table.shop_table td { padding: var(--space-3); border-top: 1px solid var(--hairline); }
.woocommerce table.shop_table .product-name a { color: var(--text); }
.woocommerce table.shop_table .product-name a:hover { color: var(--gold); }
.woocommerce .cart_item .product-price, .woocommerce .cart_item .product-subtotal,
.woocommerce table.shop_table .amount { color: var(--accent-ink); font-weight: 600; }
.woocommerce a.remove { color: var(--gold) !important; border: 1px solid var(--hairline); }
.woocommerce a.remove:hover { background: var(--gold); color: var(--ink-900) !important; }
.woocommerce .quantity input.qty {
	background: var(--paper-0); color: var(--text);
	border: 1px solid var(--hairline-strong); border-radius: var(--radius-pill);
	min-height: 46px; width: 76px; text-align: center;
}

/* Butoane WooCommerce (generice) */
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce #respond input#submit, .woocommerce .button {
	background: var(--surface-strong); color: var(--text);
	border: 1px solid var(--hairline-strong); border-radius: var(--radius-pill);
	padding: 0.8rem 1.6rem; min-height: 50px; font-family: var(--font-body); font-weight: 500;
	letter-spacing: 0.03em; text-transform: uppercase; font-size: var(--fs-sm);
	transition: background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), transform var(--dur-med) var(--ease-spring);
}
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover { border-color: var(--gold); color: var(--accent-ink); transform: translateY(-2px); }
.woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt,
.woocommerce #place_order, .woocommerce .checkout-button, .wc-proceed-to-checkout .checkout-button {
	background: var(--gold); color: var(--ink-900); border-color: var(--gold); box-shadow: var(--shadow-gold);
}
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover, .woocommerce #place_order:hover, .woocommerce .checkout-button:hover { background: var(--accent-ink); color: var(--ink-900); }

/* Cart totals + checkout review */
.cart_totals, .woocommerce-checkout-review-order {
	background: var(--bg-elevated); border: 1px solid var(--hairline); border-radius: var(--radius-lg); padding: var(--space-4);
}
.cart_totals h2, .woocommerce-checkout-review-order h3 { margin-bottom: var(--space-3); }
.wc-proceed-to-checkout { padding-top: var(--space-3); }
.wc-proceed-to-checkout .checkout-button { display: block; text-align: center; }

/* Coupon */
.woocommerce .cart .coupon .input-text { max-width: 200px; }

/* My account */
.woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 0.4rem; }
.woocommerce-MyAccount-navigation li a { display: block; padding: 0.7rem 1rem; border: 1px solid var(--hairline); border-radius: var(--radius); color: var(--text-dim); }
.woocommerce-MyAccount-navigation li.is-active a, .woocommerce-MyAccount-navigation li a:hover { border-color: var(--gold); color: var(--gold); }

/* Checkout layout */
@media (min-width: 900px) {
	.woocommerce-checkout .col2-set, form.checkout .col2-set { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-5); width: 100%; }
	.woocommerce-checkout .col2-set .col-1, .woocommerce-checkout .col2-set .col-2 { width: auto; float: none; }
	.woocommerce-account .woocommerce { display: grid; grid-template-columns: 220px 1fr; gap: var(--space-5); align-items: start; }
}

/* ============================================================
   Coș / Checkout BLOCK (WooCommerce Blocks) — restilizare dark
   ============================================================ */
.wc-block-cart, .wc-block-checkout, .wp-block-woocommerce-cart, .wp-block-woocommerce-checkout { color: var(--text-dim); }

/* Butoane bloc — primar auriu */
.wc-block-components-button.wc-block-components-button.contained,
.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button {
	background: var(--gold); color: var(--ink-900);
	border-radius: var(--radius-pill); font-family: var(--font-body); font-weight: 600;
	letter-spacing: 0.03em; min-height: 54px; box-shadow: var(--shadow-gold);
	transition: background var(--dur-fast) var(--ease-out), transform var(--dur-med) var(--ease-spring);
}
.wc-block-components-button.contained:hover,
.wc-block-cart__submit-button:hover,
.wc-block-components-checkout-place-order-button:hover { background: var(--accent-ink); transform: translateY(-2px); }
.wc-block-components-button__text { color: inherit; }

/* Inputuri bloc */
.wc-block-components-text-input input,
.wc-block-components-select .wc-block-components-select__container,
.wc-block-components-quantity-selector,
.wc-block-components-address-form input,
.wc-block-components-form input.wc-block-components-text-input__input {
	background: var(--paper-0) !important; color: var(--text) !important;
	border: 1px solid var(--hairline-strong) !important; border-radius: var(--radius) !important;
}
.wc-block-components-text-input label,
.wc-block-components-checkout-step__title { color: var(--text-dim) !important; }
.wc-block-components-text-input input:focus { border-color: var(--gold) !important; }

/* Quantity stepper bloc */
.wc-block-components-quantity-selector { border-radius: var(--radius-pill); overflow: hidden; }
.wc-block-components-quantity-selector__button { color: var(--text); }
.wc-block-components-quantity-selector__input { color: var(--text); background: transparent; }

/* Totaluri + panouri */
.wc-block-components-totals-item__value,
.wc-block-components-order-summary-item__total-price,
.wc-block-formatted-money-amount { color: var(--accent-ink); font-weight: 600; }
.wc-block-cart__sidebar .wc-block-components-totals-wrapper,
.wc-block-checkout__sidebar,
.wc-block-components-panel {
	background: var(--bg-elevated); border: 1px solid var(--hairline); border-radius: var(--radius-lg);
}
.wc-block-cart-items__header, .wc-block-components-order-summary__container { color: var(--text-mute); }
.wc-block-cart-item__product-name a, .wc-block-components-product-name { color: var(--text) !important; }
.wc-block-cart-item__product-name a:hover { color: var(--gold) !important; }
.wc-block-components-product-price, .wc-block-cart-item__total { color: var(--accent-ink); }
.wc-block-components-totals-item { border-color: var(--hairline); }
.wc-block-cart__totals-title, .wc-block-components-checkout-step__heading-content { color: var(--text-mute); }
.wc-block-components-panel__button { color: var(--text); }
.wc-block-cart-item__remove-link, .wc-block-cart__coupon-toggle { color: var(--gold) !important; }

/* Combobox-uri bloc (Țară/Regiune, Municipiu) — fundal închis */
.wc-block-components-combobox,
.wc-block-components-combobox-control,
.wc-block-components-combobox .components-combobox-control,
.wc-block-components-combobox .components-base-control__field,
.wc-block-components-combobox input.components-combobox-control__input,
.wc-block-components-combobox-control input {
	background: var(--paper-0) !important; color: var(--text) !important;
	border-radius: var(--radius) !important;
}
.wc-block-components-combobox .components-combobox-control__suggestions-container,
.wc-block-components-combobox .components-form-token-field__input-container {
	background: var(--paper-0) !important; border-color: var(--hairline-strong) !important; color: var(--text) !important;
}
.wc-block-components-combobox input::placeholder { color: var(--text-mute) !important; }
.components-form-token-field__suggestions-list { background: var(--paper-0) !important; color: var(--text) !important; }
.components-form-token-field__suggestion.is-selected { background: var(--gold) !important; color: var(--ink-900) !important; }
/* select nativ de rezervă */
.wc-block-components-select__container, .wc-block-components-select select {
	background: var(--paper-0) !important; color: var(--text) !important; border-color: var(--hairline-strong) !important;
}

/* Select-uri bloc (clasa reală: wc-blocks-components-select, cu "blocks") */
.wc-blocks-components-select__container {
	background: var(--paper-0) !important;
	border: 1px solid var(--hairline-strong) !important;
	border-radius: var(--radius) !important;
}
.wc-blocks-components-select__select {
	background: transparent !important; color: var(--text) !important;
}
.wc-blocks-components-select__label, .wc-blocks-components-select__container .wc-blocks-components-select__label { color: var(--text-mute) !important; }
.wc-blocks-components-select__select option { background: var(--paper-0); color: var(--text); }

/* ============================================================
   Pagini de conținut editorial (.prose) — Faza 6
   Mapează clasele de culoare ale vechii teme FSE la tema luminoasă.
   ============================================================ */
/* Scoped to the MAIN element: post_class() also puts a bare `page` class on the
   <article>, so an unscoped `.page` doubled the top padding (content floated
   halfway down the viewport). */
main.site-main.page { padding-top: 9rem; padding-bottom: var(--space-8); }
.page__wrap { width: min(92vw, 800px); margin-inline: auto; }

.prose { color: var(--text-dim); font-size: 1.075rem; line-height: 1.75; }
.prose > * + * { margin-top: var(--space-4); }

.prose h1, .prose h2, .prose h3, .prose h4 { font-family: var(--font-display); color: var(--text); font-weight: 500; line-height: 1.15; letter-spacing: -0.01em; }
.prose h1 { font-size: clamp(2.4rem, 1.5rem + 3.5vw, 3.8rem); text-align: center; margin-bottom: var(--space-3); }
.prose h1 + p, .prose h1 + .wp-block-paragraph { text-align: center; color: var(--text-mute); font-size: var(--fs-lead); max-width: 60ch; margin-inline: auto; }
.prose h2 { font-size: clamp(1.7rem, 1.2rem + 1.8vw, 2.4rem); margin-top: var(--space-6); }
.prose h3 { font-size: clamp(1.3rem, 1.05rem + 1vw, 1.7rem); margin-top: var(--space-5); }
.prose h4 { font-size: 1.2rem; }
.prose p { max-width: none; }
.prose strong { color: var(--text); font-weight: 600; }
.prose a { color: var(--accent-ink); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.prose a:hover { color: var(--gold-deep); }
.prose ul, .prose ol { padding-left: 1.3em; display: grid; gap: 0.5rem; }
.prose li { padding-left: 0.2em; }
.prose blockquote { border-left: 3px solid var(--gold); padding: 0.4rem 0 0.4rem 1.4rem; font-family: var(--font-display); font-style: italic; font-size: 1.35rem; color: var(--text); }
.prose img, .prose figure { border-radius: var(--radius-lg); }
.prose figure { margin-inline: 0; }

/* Separatoare */
.prose hr, .prose .wp-block-separator { border: 0; height: 1px; background: var(--hairline); margin-block: var(--space-5); opacity: 1; }

/* ---- Mapare clase de culoare (vechea temă FSE -> temă luminoasă) ---- */
.prose .has-white-color, .prose .has-base-color, .prose .has-contrast-color { color: var(--text) !important; }
.prose .has-platinum-color { color: var(--text-dim) !important; }
.prose .has-platinum-dark-color { color: var(--text-mute) !important; }
.prose .has-accent-color { color: var(--accent-ink) !important; }
/* Fundaluri: aplatizează la suprafețe luminoase pe crem */
.prose .has-base-background-color, .prose .has-white-background-color { background-color: transparent !important; }
.prose .has-platinum-background-color { background-color: var(--surface) !important; }
.prose .has-contrast-background-color { background-color: var(--bg-elevated) !important; border: 1px solid var(--hairline); }
.prose .has-accent-background-color { background-color: var(--surface-strong) !important; }

/* ---- Blocuri WordPress ---- */
.prose .wp-block-group { border-radius: var(--radius-lg); }
.prose .wp-block-group.has-background { padding: clamp(1.5rem, 1rem + 2vw, 3rem); }
.prose .wp-block-columns { display: grid; gap: var(--space-4); }
@media (min-width: 720px) { .prose .wp-block-columns { grid-template-columns: repeat(var(--cols, 2), 1fr); } }
.prose .wp-block-column { min-width: 0; }
.prose .wp-block-buttons { display: flex; flex-wrap: wrap; gap: var(--space-3); list-style: none; padding: 0; }
.prose .wp-block-button__link {
	display: inline-flex; align-items: center; min-height: 52px; padding: 0.85rem 1.9rem;
	background: var(--gold); color: var(--ink-900) !important; text-decoration: none;
	border-radius: var(--radius-pill); font-family: var(--font-body); font-weight: 600;
	letter-spacing: 0.03em; text-transform: uppercase; font-size: var(--fs-sm);
	box-shadow: var(--shadow-gold); transition: background var(--dur-fast) var(--ease-out), transform var(--dur-med) var(--ease-spring);
}
.prose .wp-block-button__link:hover { background: var(--gold-bright); transform: translateY(-2px); }
.prose .wp-block-button.is-style-outline .wp-block-button__link {
	background: transparent; color: var(--text) !important; border: 1px solid var(--hairline-strong); box-shadow: none;
}
.prose .wp-block-button.is-style-outline .wp-block-button__link:hover { border-color: var(--gold); color: var(--accent-ink) !important; }

/* FAQ (details/summary) */
.prose .wp-block-details, .prose details {
	background: var(--surface); border: 1px solid var(--hairline); border-radius: var(--radius-lg);
	padding: var(--space-3) var(--space-4); margin-top: var(--space-3);
}
.prose .wp-block-details summary, .prose details summary {
	cursor: pointer; font-family: var(--font-display); font-size: 1.25rem; color: var(--text);
	list-style: none; display: flex; align-items: center; justify-content: space-between; gap: var(--space-3);
}
.prose .wp-block-details summary::-webkit-details-marker, .prose details summary::-webkit-details-marker { display: none; }
.prose .wp-block-details summary::after, .prose details summary::after { content: "+"; color: var(--gold); font-size: 1.4rem; line-height: 1; transition: transform var(--dur-fast) var(--ease-out); }
.prose .wp-block-details[open] summary::after, .prose details[open] summary::after { transform: rotate(45deg); }
.prose .wp-block-details > *:not(summary), .prose details > *:not(summary) { margin-top: var(--space-3); color: var(--text-dim); }

.prose .has-text-align-center { text-align: center; }
.prose .has-text-align-right { text-align: right; }

/* ---- Contact Form 7 ---- */
.wpcf7-form { display: grid; gap: var(--space-3); }
.wpcf7-form label { display: grid; gap: 0.4rem; color: var(--text-dim); font-size: var(--fs-sm); }
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form input[type="url"],
.wpcf7-form input[type="number"],
.wpcf7-form textarea,
.wpcf7-form select {
	width: 100%; min-height: 52px; padding: 0.75rem 1rem;
	background: var(--paper-0); color: var(--text);
	border: 1px solid var(--hairline-strong); border-radius: var(--radius);
	font-family: var(--font-body); font-size: var(--fs-body);
	transition: border-color var(--dur-fast) var(--ease-out);
}
.wpcf7-form textarea { min-height: 140px; resize: vertical; }
.wpcf7-form input:focus, .wpcf7-form textarea:focus, .wpcf7-form select:focus { outline: none; border-color: var(--gold); }
.wpcf7-form input::placeholder, .wpcf7-form textarea::placeholder { color: var(--text-mute); }
.wpcf7-form .wpcf7-submit {
	justify-self: start; min-height: 54px; padding: 0.9rem 2.2rem;
	background: var(--gold); color: var(--ink-900); border: 1px solid var(--gold);
	border-radius: var(--radius-pill); cursor: pointer;
	font-family: var(--font-body); font-weight: 600; letter-spacing: 0.03em; text-transform: uppercase; font-size: var(--fs-sm);
	box-shadow: var(--shadow-gold); transition: background var(--dur-fast) var(--ease-out), transform var(--dur-med) var(--ease-spring);
}
.wpcf7-form .wpcf7-submit:hover { background: var(--gold-bright); transform: translateY(-2px); }
.wpcf7-form .wpcf7-not-valid-tip { color: var(--copper); font-size: var(--fs-xs); }
.wpcf7 form .wpcf7-response-output {
	border-radius: var(--radius); border: 1px solid var(--hairline-strong);
	padding: var(--space-3); margin: var(--space-3) 0 0; color: var(--text-dim);
}

/* ============================================================
   Corecții pagină de produs (galerie, taburi, similare)
   ============================================================ */
/* Galeria umple coloana ei de grilă — anulează width-ul procentual din WC. */
.woocommerce div.product div.images.woocommerce-product-gallery,
.woocommerce div.product .woocommerce-product-gallery {
	width: 100% !important;
	float: none !important;
}
.woocommerce div.product .woocommerce-product-gallery__wrapper { width: 100%; margin: 0; }
.woocommerce div.product .woocommerce-product-gallery__image {
	aspect-ratio: 1 / 1;
	display: grid; place-items: center;
	background: #ffffff;
	border-radius: var(--radius-lg);
	overflow: hidden;
}
.woocommerce div.product .woocommerce-product-gallery__image a { display: contents; }
.woocommerce div.product .woocommerce-product-gallery__image img {
	width: 100% !important; height: 100% !important;
	object-fit: contain;
	border-radius: 0;
}
/* Butonul de zoom: pastilă discretă, nu emoji plutitor. */
.woocommerce div.product .woocommerce-product-gallery__trigger {
	position: absolute; top: 0.9rem; right: 0.9rem; z-index: 9;
	width: 44px; height: 44px;
	display: grid; place-items: center;
	background: rgba(23, 17, 13, 0.55); color: #fff;
	border-radius: var(--radius-pill);
	-webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px);
	font-size: 0; text-indent: -9999px;
}
.woocommerce div.product .woocommerce-product-gallery__trigger::before {
	content: ""; text-indent: 0; font-size: 0;
	width: 18px; height: 18px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cline x1='16.5' y1='16.5' x2='21' y2='21'/%3E%3C/svg%3E");
	background-size: contain; background-repeat: no-repeat;
}
.woocommerce div.product .woocommerce-product-gallery__trigger img { display: none; }
/* Miniaturi (dacă produsul are mai multe imagini) */
.woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs {
	display: flex; gap: var(--space-2); margin-top: var(--space-3); padding: 0; list-style: none;
}
.woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs li { width: 84px; float: none; }
.woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs img {
	border-radius: var(--radius); border: 1px solid var(--hairline); cursor: pointer; opacity: 0.65;
}
.woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs img.flex-active,
.woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs img:hover { opacity: 1; border-color: var(--gold); }

.pdp-related { margin-top: var(--space-6); }
.pdp-related { margin-top: var(--space-5); padding-bottom: var(--space-3); }

/* Taburi: linie fină cu accent auriu în loc de cutii gri implicite. */
.woocommerce div.product .woocommerce-tabs ul.tabs {
	border-bottom: 1px solid var(--hairline-strong);
	padding-bottom: 0; gap: var(--space-4);
}
.woocommerce div.product .woocommerce-tabs ul.tabs li {
	background: transparent; border: 0; border-radius: 0; padding: 0; margin: 0;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
	display: inline-block; padding: 0.6rem 0.15rem; font-weight: 500;
	border-bottom: 2px solid transparent; margin-bottom: -1px;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
	color: var(--accent-ink); border-bottom-color: var(--gold);
}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none; }
/* Titlul dublat din panoul Descriere (tabul spune deja același lucru). */
.woocommerce div.product .woocommerce-Tabs-panel--description > h2:first-child { display: none; }
.woocommerce div.product .woocommerce-Tabs-panel { max-width: 72ch; }

/* Ritm mai strâns între descriere și „Piese similare". */
.woocommerce div.product .woocommerce-tabs { margin-top: var(--space-5); }
.pdp-related.section { margin-top: 0; padding-block: var(--space-5) var(--space-3); }

/* ============================================================
   Solicitare (inquiry): CTA produs, modal, formulare, pagină CTA.
   ============================================================ */

/* CTA de solicitare pe pagina de produs (unde era add-to-cart). */
.pdp-inquiry { display: flex; flex-wrap: wrap; gap: 0.75rem; margin-top: var(--space-3); }
.pdp-inquiry .btn { flex: 1 1 auto; }

/* Honeypot anti-spam — ascuns vizual + de la cititorii de ecran. */
.ld26-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }

/* CTA din josul paginilor Contact / Parteneri. */
.ld26-page-cta { display: flex; flex-wrap: wrap; gap: 0.75rem; margin-top: var(--space-4); }
.ld26-page-cta--form { display: block; }

/* ---- Modal ---- */
.ld26-modal { position: fixed; inset: 0; z-index: 200; display: grid; place-items: center; padding: 1.25rem; }
.ld26-modal[hidden] { display: none; }
.ld26-modal__scrim {
	position: absolute; inset: 0; background: rgba(23, 17, 13, 0.5);
	-webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px);
	opacity: 0; transition: opacity var(--dur-med) var(--ease-out);
}
.ld26-modal.is-open .ld26-modal__scrim { opacity: 1; }
.ld26-modal__dialog {
	position: relative; width: min(92vw, 560px); max-height: 90vh; overflow-y: auto;
	background: var(--paper-0); border-radius: var(--radius-lg);
	padding: clamp(1.5rem, 1rem + 2vw, 2.5rem);
	box-shadow: var(--shadow-card);
	opacity: 0; transform: translateY(14px) scale(0.98);
	transition: opacity var(--dur-med) var(--ease-out), transform var(--dur-med) var(--ease-spring);
}
.ld26-modal.is-open .ld26-modal__dialog { opacity: 1; transform: none; }
.ld26-modal__close {
	position: absolute; top: 0.9rem; right: 0.9rem;
	width: 40px; height: 40px; display: grid; place-items: center;
	background: transparent; border: 0; color: var(--text); cursor: pointer;
	border-radius: 100px; transition: background var(--dur-fast) var(--ease-out);
}
.ld26-modal__close:hover { background: var(--paper-50); }
.ld26-modal__title { margin: 0.2rem 0 0.4rem; }
.ld26-modal__lead { color: var(--gold-deep); margin-bottom: 1.2rem; }

/* ---- Formulare de solicitare (modal + B2B) ---- */
.ld26-inquiry-form { display: block; }
.ld26-field { margin-bottom: 1rem; }
.ld26-field-row { display: grid; grid-template-columns: 1fr; gap: 0 1rem; }
@media (min-width: 560px) { .ld26-field-row { grid-template-columns: 1fr 1fr; } }
.ld26-field label { display: block; font-size: 0.82rem; font-weight: 600; margin-bottom: 0.35rem; color: var(--text); }
.ld26-inquiry-form input[type="text"],
.ld26-inquiry-form input[type="email"],
.ld26-inquiry-form input[type="tel"],
.ld26-inquiry-form select,
.ld26-inquiry-form textarea {
	width: 100%; padding: 0.8rem 1rem;
	font-family: var(--font-body); font-size: 1rem; color: var(--text);
	background: var(--paper-50); border: 1px solid var(--hairline-strong);
	border-radius: 14px; transition: border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);
}
.ld26-inquiry-form input:focus,
.ld26-inquiry-form select:focus,
.ld26-inquiry-form textarea:focus { outline: none; border-color: var(--gold); background: var(--paper-0); }
.ld26-inquiry-form textarea { resize: vertical; min-height: 96px; }
.ld26-consent { display: flex; gap: 0.6rem; align-items: flex-start; font-size: 0.85rem; color: var(--text); margin: 0.4rem 0 1.1rem; }
.ld26-consent input { margin-top: 0.15rem; }
.ld26-inquiry-form__actions { display: flex; flex-wrap: wrap; gap: 0.75rem; }
.ld26-inquiry-form__actions .btn { flex: 1 1 auto; }
.ld26-inquiry-form__status { margin: 0.9rem 0 0; font-size: 0.9rem; min-height: 1.2em; }
.ld26-inquiry-form__status.is-ok { color: #0F7A5A; }
.ld26-inquiry-form__status.is-error { color: #b3261e; }
.ld26-inquiry-form__status.is-pending { color: var(--gold-deep); }
