/* =========================================================
   BELOTEX — достъпност и „скъпа простота".

   Купувачите са често възрастни хора. Затова: едри букви, едри
   бутони, висок контраст, никакви иконки без думи до тях.
   Зарежда се ПОСЛЕДЕН, за да надгражда останалите файлове.
   ========================================================= */

/* ---------- Минимална цел за докосване: 48×48 ---------- */

.bx-btn,
.bx-swatch,
.bx-cart-toggle,
.bx-burger,
.bx-menu a,
.bx-size-link,
.bx-qty__btn,
.bx-modal__close { min-height: 48px; }

.bx-menu a { min-height: 44px; }

/* ---------- Типография ---------- */

.bx-hero__lead,
.bx-section-head__lead,
.woocommerce-product-details__short-description,
.bx-story__text p { font-size: clamp(17px, 1.9vw, 19.5px); line-height: 1.68; }

.bx-usp__grid p,
.bx-steps__grid p { font-size: 16px; line-height: 1.66; }

.bx-faq__item summary { font-size: 18.5px; padding: 23px 44px 23px 0; }
.bx-faq__a { font-size: 16.5px; line-height: 1.75; }

.bx-pdp-usp li { font-size: 16px; line-height: 1.55; }
.bx-pdp-usp { gap: 13px; }

.bx-size-table { font-size: 15.5px; }
.bx-size-table th, .bx-size-table td { padding: 14px 12px; }

/* ---------- Бутони: едри и ясни ---------- */

.bx-btn { padding: 16px 32px; font-size: 16.5px; }
.bx-btn--lg { padding: 19px 42px; font-size: 17.5px; }
.bx-btn--sm { padding: 12px 22px; font-size: 15.5px; }

.woocommerce div.product form.cart button.single_add_to_cart_button,
.single_add_to_cart_button { min-height: 62px; font-size: 17.5px; }

form.cart .quantity input { height: 62px; width: 86px; font-size: 17.5px; }

/* ---------- Мостри: по-едри, с по-ясна селекция ---------- */

.bx-swatch__chip { width: 46px; height: 46px; }
.bx-swatch.is-selected .bx-swatch__chip {
	box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.18), 0 0 0 3px var(--bx-paper), 0 0 0 5px var(--bx-ink);
}
.bx-swatches--size .bx-swatch__size { min-width: 70px; height: 54px; font-size: 16.5px; }
.bx-attr-head__label { font-size: 13.5px; }
.bx-attr-head__label b { font-size: 16px; }
.bx-size-link { font-size: 15px; }

/* ---------- Фокус: винаги видим ---------- */

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible {
	outline: 3px solid var(--bx-accent);
	outline-offset: 2px;
	border-radius: 2px;
}

/* ---------- Форми: едри полета с видими етикети ---------- */

.woocommerce form .form-row label,
.woocommerce-checkout label {
	font-size: 15px; font-weight: 600; color: var(--bx-ink);
	margin-bottom: 7px; display: block;
}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce-checkout input[type="text"],
.woocommerce-checkout input[type="tel"],
.woocommerce-checkout input[type="email"],
.woocommerce-checkout select {
	min-height: 58px; font-size: 17px; padding: 14px 16px;
	border: 1.5px solid var(--bx-line); border-radius: var(--bx-radius);
	background: var(--bx-card); color: var(--bx-ink); width: 100%;
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce-checkout input:focus,
.woocommerce-checkout select:focus { border-color: var(--bx-accent); }

.woocommerce form .form-row.woocommerce-invalid input.input-text { border-color: var(--bx-danger); }
.woocommerce .required { color: var(--bx-danger); text-decoration: none; }

/* Радио бутони за плащане/доставка: цялата карта е кликаема */
.woocommerce-checkout .wc_payment_methods li,
.woocommerce-checkout #shipping_method li {
	padding: 16px; border: 1.5px solid var(--bx-line); border-radius: var(--bx-radius);
	margin-bottom: 10px; background: var(--bx-card); list-style: none;
}
.woocommerce-checkout .wc_payment_methods li label,
.woocommerce-checkout #shipping_method li label {
	display: inline-flex; align-items: center; gap: 10px; font-size: 16.5px;
	font-weight: 600; cursor: pointer; margin: 0;
}
.woocommerce-checkout input[type="radio"],
.woocommerce-checkout input[type="checkbox"] {
	width: 22px; height: 22px; min-height: 0; accent-color: var(--bx-accent); cursor: pointer;
}

/* ---------- Тъкачен мотив: бранд елемент на производителя ---------- */

/* Разделителят между секциите е фирмен знак — живее в brand.css.
   Тук стоеше тъканата решетка; замени я златният ромб от брандбука. */

/* ---------- Цените: най-важното число на страницата ---------- */

/* В каталога */
.woocommerce ul.products li.product .price,
ul.products li.product .price {
	display: block; margin: 10px 0 4px;
	font-size: 22px !important; font-weight: 700 !important;
	color: var(--bx-ink) !important; line-height: 1.25;
}
.woocommerce ul.products li.product .price del,
ul.products li.product .price del {
	font-size: 16px !important; font-weight: 400 !important;
	color: var(--bx-ink-faint) !important; margin-right: 8px;
}
.woocommerce ul.products li.product .price ins,
ul.products li.product .price ins { text-decoration: none; color: var(--bx-accent) !important; }

/* На продуктовата страница */
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.summary .price {
	font-size: clamp(30px, 3.6vw, 40px) !important;
	font-weight: 700 !important; color: var(--bx-ink) !important;
	line-height: 1.15; margin: 4px 0 10px !important; display: block;
}
.woocommerce div.product p.price del, .summary .price del {
	font-size: 22px !important; font-weight: 400 !important; color: var(--bx-ink-faint) !important;
}
.woocommerce div.product p.price ins, .summary .price ins {
	text-decoration: none; color: var(--bx-accent) !important;
}

/* Цената на избраната вариация */
.woocommerce-variation-price .price,
.woocommerce-variation-price span.price {
	font-size: clamp(30px, 3.6vw, 40px) !important;
	font-weight: 700 !important; color: var(--bx-ink) !important;
}
.woocommerce-variation-price { margin: 0 0 18px !important; }

/* В количката и на checkout-а */
.bx-drawer__price { font-size: 18px !important; }
.bx-drawer__total b { font-size: 24px !important; }
.woocommerce-checkout-review-order-table .order-total th,
.woocommerce-checkout-review-order-table .order-total td { font-size: 22px !important; }
.bx-sticky-buy__price { font-size: 20px !important; font-weight: 700; }

/* ---------- Цветна илюстрация на халата ---------- */

.bx-robe-visual {
	position: relative; display: block;
	background: linear-gradient(170deg, var(--bx-paper-2) 0%, var(--bx-paper-warm) 100%);
	border-radius: var(--bx-radius);
	padding: clamp(14px, 2vw, 26px) clamp(14px, 2vw, 26px) 46px;
	aspect-ratio: 4 / 5; overflow: hidden;
}
.bx-robe-visual__svg {
	display: block; width: 100%; height: 100%;
	filter: drop-shadow(0 20px 40px rgba(35, 32, 28, 0.18));
	transition: filter 0.4s var(--bx-ease);
}
.bx-robe-visual__svg rect[fill^="var"],
.bx-robe-visual__svg path[fill^="var"] { transition: fill 0.45s var(--bx-ease); }
.bx-robe-visual__note {
	position: absolute; left: 0; right: 0; bottom: 14px; margin: 0;
	text-align: center; font-size: 12.5px; color: var(--bx-ink-faint);
}

/* В каталога — по-малка версия */
.bx-loop-visual { display: block; }
.bx-loop-visual .bx-robe-visual { padding: clamp(10px, 2vw, 20px); }
.bx-loop-visual .bx-robe-visual__svg { filter: drop-shadow(0 12px 24px rgba(35, 32, 28, 0.14)); }

/* ---------- Производствен асортимент ---------- */

.bx-range { padding: clamp(56px, 8vw, 96px) 0; }
.bx-range__grid {
	display: grid; gap: 2px; margin: 0; padding: 0; list-style: none;
	background: var(--bx-line-soft); border: 1px solid var(--bx-line-soft);
	border-radius: var(--bx-radius); overflow: hidden;
}
@media (min-width: 640px) { .bx-range__grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 980px) { .bx-range__grid { grid-template-columns: repeat(3, 1fr); } }

.bx-range__grid li {
	background: var(--bx-card); padding: clamp(24px, 3vw, 34px);
	transition: background 0.25s var(--bx-ease);
}
.bx-range__grid li:hover { background: var(--bx-paper); }
.bx-range__head { display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap; margin-bottom: 10px; }
.bx-range__grid h3 {
	font-family: var(--bx-sans); font-size: 17.5px; font-weight: 700;
	letter-spacing: 0; margin: 0;
}
.bx-range__badge {
	font-size: 10.5px; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase;
	padding: 5px 10px; border-radius: 2px;
	background: var(--bx-accent); color: #fff; white-space: nowrap;
}
.bx-range__grid p { margin: 0; font-size: 15.5px; line-height: 1.62; color: var(--bx-ink-soft); }

/* ---------- Галерия от цветове ---------- */

.bx-colors { background: var(--bx-paper-warm); padding: clamp(56px, 8vw, 96px) 0; }
.bx-colors__grid {
	display: grid; gap: 18px 16px;
	grid-template-columns: repeat(auto-fit, minmax(96px, 1fr));
	margin-top: 8px;
}
.bx-colors__item { text-align: center; }
.bx-colors__chip {
	display: block; width: 100%; aspect-ratio: 1; border-radius: var(--bx-radius);
	box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.14), 0 6px 18px rgba(35, 32, 28, 0.08);
	transition: transform 0.25s var(--bx-ease), box-shadow 0.25s var(--bx-ease);
}
.bx-colors__item:hover .bx-colors__chip {
	transform: translateY(-4px);
	box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.14), 0 14px 30px rgba(35, 32, 28, 0.16);
}
.bx-colors__name {
	display: block; margin-top: 11px; font-size: 13.5px;
	color: var(--bx-ink-soft); line-height: 1.35;
}

/* ---------- Скалата на плътността ---------- */

.bx-gsm { background: var(--bx-card); padding: clamp(56px, 8vw, 100px) 0; border-top: 1px solid var(--bx-line-soft); }
.bx-gsm__grid { display: grid; gap: 20px; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); margin-top: 8px; }
.bx-gsm__item {
	position: relative; padding: 30px 26px;
	border: 1.5px solid var(--bx-line-soft); border-radius: var(--bx-radius);
	background: var(--bx-paper);
}
.bx-gsm__item--ours {
	border-color: var(--bx-accent); background: var(--bx-card);
	box-shadow: 0 14px 40px rgba(30, 75, 69, 0.1);
}
.bx-gsm__badge {
	position: absolute; top: -13px; left: 26px;
	background: var(--bx-accent); color: #fff;
	font-size: 12px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase;
	padding: 6px 14px; border-radius: 2px;
}
.bx-gsm__num {
	font-family: var(--bx-serif); font-size: clamp(30px, 4vw, 42px);
	font-weight: 600; line-height: 1; color: var(--bx-ink-faint);
}
.bx-gsm__item--ours .bx-gsm__num { color: var(--bx-accent); }
.bx-gsm__unit { font-size: 15px; color: var(--bx-ink-faint); margin-left: 5px; }
.bx-gsm__title {
	font-family: var(--bx-sans); font-size: 17px; font-weight: 700;
	letter-spacing: 0; margin: 14px 0 8px;
}
.bx-gsm__text { font-size: 15.5px; color: var(--bx-ink-soft); line-height: 1.65; margin: 0; }

/* Пълнеж, показващ плътността */
.bx-gsm__bar { height: 6px; border-radius: 3px; background: var(--bx-paper-2); margin: 20px 0 0; overflow: hidden; }
.bx-gsm__bar i { display: block; height: 100%; background: var(--bx-ink-faint); border-radius: 3px; }
.bx-gsm__item--ours .bx-gsm__bar i { background: var(--bx-accent); }

/* ---------- Поръчка по телефон — за тези, които не искат форми ---------- */

.bx-callout {
	display: grid; gap: 18px; align-items: center;
	padding: clamp(26px, 4vw, 40px); margin: 0;
	background: var(--bx-paper-warm); border-radius: var(--bx-radius);
	border: 1.5px solid var(--bx-line-soft);
}
@media (min-width: 760px) { .bx-callout { grid-template-columns: 1fr auto; gap: 32px; } }
.bx-callout h2 { font-size: clamp(21px, 2.6vw, 27px); margin: 0 0 8px; }
.bx-callout p { margin: 0; color: var(--bx-ink-soft); font-size: 16.5px; }
.bx-callout__phone {
	display: inline-flex; align-items: center; gap: 12px;
	padding: 18px 32px; min-height: 62px;
	background: var(--bx-accent); color: #fff; border-radius: var(--bx-radius);
	font-size: clamp(19px, 2.4vw, 24px); font-weight: 700; text-decoration: none;
	white-space: nowrap; transition: background 0.25s var(--bx-ease);
}
.bx-callout__phone:hover { background: var(--bx-accent-deep); color: #fff; }

/* ---------- B2B закачка ---------- */

.bx-b2b { padding: clamp(48px, 7vw, 84px) 0; }
.bx-b2b__in {
	display: grid; gap: 26px; align-items: center;
	padding: clamp(30px, 4vw, 52px);
	background: var(--bx-accent); color: #fff; border-radius: var(--bx-radius);
}
@media (min-width: 820px) { .bx-b2b__in { grid-template-columns: 1.4fr auto; gap: 40px; } }
.bx-b2b h2 { color: #fff; font-size: clamp(23px, 3vw, 32px); margin: 0 0 10px; }
.bx-b2b p { color: rgba(255, 255, 255, 0.84); margin: 0; font-size: 16.5px; }
