/* BCV Type Polish 1.0.0
 * Jost for display, Inter for text. Font files live in the child theme,
 * which already preloads jost-400 and inter-400. */

@font-face { font-family: 'Jost'; src: url('/wp-content/themes/bestchoice-porto-child/assets/fonts/jost-300.woff2') format('woff2'); font-weight: 300; font-style: normal; font-display: swap; }
@font-face { font-family: 'Jost'; src: url('/wp-content/themes/bestchoice-porto-child/assets/fonts/jost-400.woff2') format('woff2'); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: 'Jost'; src: url('/wp-content/themes/bestchoice-porto-child/assets/fonts/jost-500.woff2') format('woff2'); font-weight: 500 900; font-style: normal; font-display: swap; }
@font-face { font-family: 'Inter'; src: url('/wp-content/themes/bestchoice-porto-child/assets/fonts/inter-400.woff2') format('woff2'); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: 'Inter'; src: url('/wp-content/themes/bestchoice-porto-child/assets/fonts/inter-500.woff2') format('woff2'); font-weight: 500 900; font-style: normal; font-display: swap; }

/* ---------- Base ---------- */
html body.bcv-app {
	--bcv-display: 'Jost', 'Futura', 'Century Gothic', 'Helvetica Neue', Arial, sans-serif;
	font-family: 'Inter', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-size: 14px;
	line-height: 1.55;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
	font-synthesis-weight: none;
}
html body.bcv-app button,
html body.bcv-app input,
html body.bcv-app select,
html body.bcv-app textarea {
	font-family: inherit;
}

/* ---------- Small labels: one step larger, medium instead of heavy ---------- */
html body.bcv-app .bcv-kicker { font-size: 11px; font-weight: 500 }
html body.bcv-app .bcv-textlink { font-size: 12px; font-weight: 500 }
html body.bcv-app .bcv-btn { font-size: 12px; font-weight: 500 }
html body.bcv-app .bcv-topbar { font-size: 11px }
html body.bcv-app .bcv-switch__value { font-weight: 500 }
html body.bcv-app .bcv-header__nav a { font-size: 12px; font-weight: 500 }
html body.bcv-app .bcv-shopmenu__toggle { font-size: 12px; font-weight: 500 }
html body.bcv-app .bcv-shopmenu__eyebrow { font-size: 10.5px; font-weight: 500 }
html body.bcv-app .bcv-secure { font-size: 11px; font-weight: 500 }
html body.bcv-app .bcv-rail__tab { font-size: 11.5px; font-weight: 500 }
html body.bcv-app .bcv-card__flag { font-size: 10.5px; font-weight: 500 }
html body.bcv-app .bcv-card__name { font-size: 12px; font-weight: 500 }
html body.bcv-app .bcv-card__price { font-weight: 500 }
html body.bcv-app .bcv-card__option-label { font-size: 10px; font-weight: 500 }
html body.bcv-app .bcv-card-choice { font-size: 10.5px; font-weight: 500 }
html body.bcv-app .bcv-swatch--more { font-size: 11px; font-weight: 500 }
html body.bcv-app .bcv-hero__cta { font-size: 12px; font-weight: 500 }
html body.bcv-app .bcv-hero__line { font-size: 11px }
html body.bcv-app .bcv-ticker__track span { font-size: 11px; font-weight: 500 }
html body.bcv-app .bcv-catindex__num { font-size: 12px; font-weight: 500 }
html body.bcv-app .bcv-craft__facts span { font-size: 11px; font-weight: 500 }
html body.bcv-app .bcv-craft__facts strong { font-size: 12px }
html body.bcv-app .bcv-values__item h3 { font-weight: 500 }
html body.bcv-app .bcv-toolbar { font-size: 11.5px }
html body.bcv-app .bcv-toolbar__sort select { font-size: 11.5px; font-weight: 500 }
html body.bcv-app .bcv-pagination .page-numbers { font-size: 12px; font-weight: 500 }
html body.bcv-app .bcv-crumbs { font-size: 11px }
html body.bcv-app .bcv-product__price { font-weight: 500 }
html body.bcv-app .bcv-attr__label { font-size: 11px; font-weight: 500 }
html body.bcv-app .bcv-option { font-weight: 500 }
html body.bcv-app .bcv-qty input { font-weight: 500 }
html body.bcv-app .bcv-product__feedback { font-size: 12px }
html body.bcv-app .bcv-accordions summary { font-size: 12px; font-weight: 500 }
html body.bcv-app .bcv-product__specs span:first-child { font-size: 11px }
html body.bcv-app .bcv-search__bar input { font-weight: 500 }
html body.bcv-app .bcv-search__hint { font-size: 11px }
html body.bcv-app .bcv-search__item-name { font-weight: 500 }
html body.bcv-app .bcv-search__item-cat { font-size: 11px }
html body.bcv-app .bcv-search__item-price { font-weight: 500 }
html body.bcv-app .bcv-search__all { font-size: 12px; font-weight: 500 }
html body.bcv-app .bcv-drawer-item__name { font-size: 12px; font-weight: 500 }
html body.bcv-app .bcv-drawer-item__variation { font-size: 11.5px }
html body.bcv-app .bcv-drawer-item__price { font-weight: 500 }
html body.bcv-app .bcv-drawer__subtotal { font-weight: 500 }
html body.bcv-app .bcv-drawer__note { font-size: 11.5px }
html body.bcv-app .bcv-pref__section h3 { font-size: 11px }
html body.bcv-app .bcv-pref__options button strong { font-size: 11px }
html body.bcv-app .bcv-mobile__lines > p { font-size: 10.5px; font-weight: 500 }
html body.bcv-app .bcv-mobile__lines a { font-size: 11px; font-weight: 500 }
html body.bcv-app .bcv-mobile__secondary a { font-size: 12px; font-weight: 500 }
html body.bcv-app .bcv-mobile__pref { font-size: 11px; font-weight: 500 }
html body.bcv-app .bcv-mobile__pills button { font-size: 11px; font-weight: 500 }
html body.bcv-app .bcv-cookies a { font-weight: 500 }
html body.bcv-app .bcv-toast { font-size: 12px; font-weight: 500 }
html body.bcv-app .bcv-policy__nav a { font-size: 12px; font-weight: 500 }
html body.bcv-app .bcv-policy__brand { font-size: 12px; font-weight: 500 }
html body.bcv-app .bcv-policy__updated { font-size: 11px; font-weight: 500 }
html body.bcv-app .bcv-policy__details dt { font-weight: 500 }
html body.bcv-app .bcv-prose h3 { font-size: 12px; font-weight: 500 }
html body.bcv-app .bcv-prose a { font-weight: 500 }
html body.bcv-app .bcv-contact__item h3 { font-size: 12px; font-weight: 500 }
html body.bcv-app .bcv-contact__form label span { font-size: 11px; font-weight: 500 }
html body.bcv-app .bcv-notice { font-weight: 500 }
html body.bcv-app .bcv-newsletter > label { font-size: 12px; font-weight: 500 }
html body.bcv-app .bcv-newsletter__row button { font-size: 12px; font-weight: 500 }
html body.bcv-app .bcv-newsletter__consent { font-size: 11.5px }
html body.bcv-app .bcv-newsletter__msg { font-size: 12px }
html body.bcv-app .bcv-footer__nav h3 { font-size: 12px; font-weight: 500 }
html body.bcv-app .bcv-footer__bottom { font-size: 11px }
html body.bcv-app .woocommerce-message a, html body.bcv-app .woocommerce-info a, html body.bcv-app .woocommerce-error a { font-weight: 500 }
html body.bcv-app .woocommerce .button, html body.bcv-app .woocommerce button.button, html body.bcv-app .woocommerce a.button, html body.bcv-app .woocommerce input.button { font-size: 12px; font-weight: 500 }
html body.bcv-app .woocommerce form .form-row label { font-size: 11px; font-weight: 500 }
html body.bcv-app .woocommerce table.shop_table thead th { font-size: 10.5px; font-weight: 500 }
html body.bcv-app .woocommerce table.shop_table td.product-name a { font-weight: 500 }
html body.bcv-app .woocommerce table.shop_table td.product-name .variation { font-size: 11.5px }
html body.bcv-app .woocommerce .quantity .qty { font-weight: 500 }
html body.bcv-app .woocommerce .cart_totals .order-total td, html body.bcv-app .woocommerce .cart_totals .order-total th { font-weight: 500 }
html body.bcv-app .woocommerce-shipping-calculator .shipping-calculator-button { font-weight: 500 }
html body.bcv-app #ship-to-different-address label { font-weight: 500 }
html body.bcv-app #order_review .order-total td, html body.bcv-app #order_review .order-total th { font-weight: 500 }
html body.bcv-app #payment ul.payment_methods label { font-size: 12px; font-weight: 500 }
html body.bcv-app .woocommerce-terms-and-conditions-wrapper { font-size: 11.5px }
html body.bcv-app .woocommerce-order .woocommerce-thankyou-order-received { font-weight: 500 }
html body.bcv-app ul.woocommerce-order-overview li { font-size: 10.5px }
html body.bcv-app .woocommerce-MyAccount-navigation li a { font-size: 12px; font-weight: 500 }
html body.bcv-app .woocommerce-MyAccount-content legend { font-size: 12px; font-weight: 500 }
html body.bcv-app .woocommerce-Address-title .edit { font-weight: 500 }
html body.bcv-app .woocommerce form.login .lost_password { font-size: 12px }
html body.bcv-app .woocommerce-password-strength { font-size: 11.5px }
@media (max-width: 639px) {
	html body.bcv-app .bcv-topbar__note { font-size: 10px }
}
@media (max-width: 767px) {
	html body.bcv-app .woocommerce table.shop_table_responsive tr td::before { font-size: 10.5px; font-weight: 500 }
}

/* ---------- Display: regular-weight Jost, a little smaller, a little air ---------- */
html body.bcv-app .bcv-display,
html body.bcv-app .bcv-card__index,
html body.bcv-app .bcv-hero__label,
html body.bcv-app .bcv-catindex__name,
html body.bcv-app .bcv-craft__marquee span,
html body.bcv-app .bcv-craft__body h2,
html body.bcv-app .bcv-product__title,
html body.bcv-app .bcv-drawer__head h2,
html body.bcv-app .bcv-mobile__links a,
html body.bcv-app .bcv-about-hero__type,
html body.bcv-app .bcv-cookies h3,
html body.bcv-app .bcv-prose h2,
html body.bcv-app .bcv-contact__form h2,
html body.bcv-app .woocommerce .cart-collaterals .cart_totals h2,
html body.bcv-app form.woocommerce-checkout #order_review_heading,
html body.bcv-app .woocommerce-billing-fields h3,
html body.bcv-app .woocommerce-shipping-fields h3,
html body.bcv-app .woocommerce-column__title,
html body.bcv-app .woocommerce-order-details__title,
html body.bcv-app .woocommerce #customer_login h2 {
	font-weight: 400;
	letter-spacing: 0.04em;
}

html body.bcv-app .bcv-display { font-size: clamp(24px, 3.4vw, 44px); line-height: 1; }
html body.bcv-app .bcv-hero__label { font-size: clamp(40px, 6vw, 92px); line-height: 0.95; letter-spacing: 0.08em; }
html body.bcv-app .bcv-catindex__name { font-size: clamp(26px, 4vw, 58px); line-height: 1; }
html body.bcv-app .bcv-craft__marquee span { font-size: clamp(20px, 2.8vw, 38px); font-weight: 300; letter-spacing: 0.14em; }
html body.bcv-app .bcv-craft__body h2 { font-size: clamp(40px, 5.6vw, 84px); line-height: 0.98; letter-spacing: 0.02em; }
html body.bcv-app .bcv-product__title { font-size: clamp(22px, 2.4vw, 30px); line-height: 1.15; letter-spacing: 0.02em; }
html body.bcv-app .bcv-card__index { font-size: 13px; letter-spacing: 0.12em; }
html body.bcv-app .bcv-drawer__head h2 { font-size: 20px; letter-spacing: 0.06em; }
html body.bcv-app .bcv-mobile__links a { font-size: clamp(22px, 6vw, 30px); }
html body.bcv-app .bcv-about-hero__type { font-size: clamp(36px, 8vw, 112px); line-height: 0.95; }

/* ---------- Product cards: readable names, calm prices ---------- */
html body.bcv-app .bcv-card__name {
	font-size: 13px;
	font-weight: 400;
	text-transform: none;
	letter-spacing: 0;
	line-height: 1.4;
}
html body.bcv-app .bcv-card__price { font-size: 13px; }
html body.bcv-app .bcv-card__name,
html body.bcv-app .bcv-product__title { text-wrap: pretty; }

/* ---------- One-line category trail above product names ---------- */
html body.bcv-app .bcv-product__info .bcv-kicker {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* ---------- Quiet small caps labels ---------- */
html body.bcv-app .bcv-kicker { letter-spacing: 0.16em; }
html body.bcv-app .bcv-hero__line { font-size: 12px; letter-spacing: 0.24em; }

/* ---------- Phones ---------- */
@media (max-width: 639px) {
	html body.bcv-app { font-size: 14px; }
	html body.bcv-app input,
	html body.bcv-app select,
	html body.bcv-app textarea { font-size: 16px; } /* stops iPhone zooming into fields */
	html body.bcv-app .bcv-hero__label { font-size: 40px; }
	html body.bcv-app .bcv-catindex__name { font-size: 28px; }
	html body.bcv-app .bcv-craft__body h2 { font-size: 38px; }
	html body.bcv-app .bcv-card__name { font-size: 12.5px; }
	html body.bcv-app .bcv-listing-hero--checkout .bcv-display--xl { font-size: 34px; }
	html body.bcv-app .bcv-crumbs {
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}
}
