/**
 * Los Cocos: a shared commerce surface, September 2026.
 * Photos and product data stay literal. Borders denote controls and selection;
 * spacing, type and material distinguish the remaining hierarchy.
 */
.vlc-site {
	--vlc-shop-paper: #faf9f5;
	--vlc-shop-surface: #ffffff;
	--vlc-shop-ink: #20392b;
	--vlc-shop-muted: #556358;
	--vlc-shop-sage: #edf2e9;
	--vlc-shop-line: #dce2d8;
	--vlc-shop-radius: 1rem;
}
body.woocommerce .vlc-site,
body.single-product .vlc-site { background: var(--vlc-shop-paper); }
.vlc-site .vlc-header-search { border: 0; border-radius: 0.75rem; background: #eeeee7; }
.vlc-site .vlc-cart-toggle { border-radius: 0.75rem; }
.home .vlc-site .vlc-hero__cta .vlc-btn,
.home .vlc-site .vlc-hero-offer__actions .vlc-btn { border-radius: 0.75rem; }
.home .vlc-site .vlc-hero-offer__media { border-radius: 0.875rem; overflow: hidden; }
.home .vlc-site .vlc-hero-offer__whatsapp { border: 0; background: transparent; }

/* Catalog: one photograph, a readable name and an unambiguous purchase. */
.vlc-site .vlc-product-card,
.home .vlc-site .vlc-product-card,
.single-product .vlc-site .vlc-product-card {
	position: relative;
	border: 0;
	border-radius: var(--vlc-shop-radius);
	background: var(--vlc-shop-surface);
	box-shadow: none;
	transition: box-shadow 180ms ease;
}
.vlc-site .vlc-product-card .vlc-product-card__media {
	aspect-ratio: 1;
	border: 0;
	border-radius: var(--vlc-shop-radius);
	background: #f0efe9;
	overflow: hidden;
}
.vlc-site .vlc-product-card .vlc-product-card__body {
	position: static;
	gap: 0.875rem;
	padding: 1.125rem;
}
.vlc-site .vlc-product-card .vlc-card-title {
	min-height: 2.8em;
	font-size: 1.125rem;
	font-weight: 500;
	line-height: 1.4;
	letter-spacing: -0.015em;
}
.vlc-site .vlc-product-card .vlc-card-title a { color: var(--vlc-shop-ink); }
.vlc-site .vlc-product-card .vlc-card-price {
	color: var(--vlc-shop-ink);
	font-size: 1.25rem;
	font-weight: 650;
	font-variant-numeric: tabular-nums;
}
.vlc-site .vlc-product-card .vlc-card-actions .vlc-card-primary {
	min-height: 3rem;
	border: 0;
	border-radius: 0.75rem;
	background: var(--vlc-shop-sage);
	color: var(--vlc-shop-ink);
	font-size: 1rem;
	font-weight: 600;
	box-shadow: none;
	transition: background-color 160ms ease, color 160ms ease;
}
.vlc-site .vlc-product-card .vlc-card-actions .vlc-btn--consult { background: #f4eee6; color: #794a34; }
.vlc-site .vlc-product-card .lc-product-card-share {
	position: absolute;
	top: 0.75rem;
	right: 0.75rem;
	z-index: 3;
	display: block;
	margin: 0;
	padding: 0;
}
.vlc-site .vlc-product-card .lc-product-card-share__controls { display: block; }
.vlc-site .vlc-product-card .lc-product-card-share [data-lc-share-product],
.vlc-site .vlc-product-card .lc-product-card-share .lc-action-label { display: none; }
.vlc-site .vlc-product-card .lc-product-card-share [data-lc-save-product] {
	display: grid;
	place-items: center;
	width: 2.75rem;
	height: 2.75rem;
	min-height: 2.75rem;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: #fff;
	color: var(--vlc-shop-ink);
	box-shadow: 0 2px 8px rgb(24 43 29 / 8%);
}
.vlc-site .vlc-product-card .lc-product-card-share [data-lc-save-product][aria-pressed="true"] { background: var(--vlc-shop-ink); color: #fff; }
.vlc-site .vlc-product-card .lc-product-card-share [data-lc-save-product] svg { width: 1.25rem !important; height: 1.25rem !important; max-width: 1.25rem !important; max-height: 1.25rem !important; }
.vlc-site .vlc-product-card .vlc-card-badge { top: 0.875rem; left: 0.875rem; max-width: calc(100% - 5rem); border-radius: 999px; background: #fff; color: var(--vlc-shop-ink); font-size: 1rem; }
.vlc-site .vlc-products-grid { gap: 1.5rem; }
.vlc-site .vlc-shop-header { padding-top: 1.5rem; }
.vlc-site .vlc-shop-title { margin-top: 0.75rem; }
.vlc-site .vlc-shop-desc { margin-top: 0.875rem; color: var(--vlc-shop-muted); }
.vlc-site .vlc-shop-search { margin-block: 1.5rem; }
.vlc-site .vlc-shop-filters .vlc-filter-chip { border: 0; background: #eeeee7; color: var(--vlc-shop-muted); font-size: 1rem; text-transform: none; font-weight: 500; }
.vlc-site .vlc-shop-filters .vlc-filter-chip.is-active { background: var(--vlc-shop-ink); color: #fff; }
.vlc-site .vlc-shop-toolbar { padding-block: 1.25rem; border-color: var(--vlc-shop-line); }
.vlc-site .vlc-shop-count,
.vlc-site .woocommerce-ordering select { font-size: 1rem; }

/* The purchase journey uses the same material and type as the catalog. */
.vlc-site .premium-cart-wrapper { background: var(--vlc-shop-paper) !important; color: var(--vlc-shop-ink); padding: 2.5rem 0 4rem; }
.vlc-site .premium-cart-container { max-width: 80rem; padding: 0 2rem; grid-template-columns: minmax(0, 1fr) minmax(20rem, 23rem); gap: 3rem; }
.vlc-site .cart-title-section { margin-bottom: 2rem; }
.vlc-site .cart-title-section h1 { font-family: var(--vlc-font-serif) !important; font-size: clamp(2rem, 3.15vw, 2.875rem); font-weight: 500; line-height: 1.15; letter-spacing: -0.035em !important; color: var(--vlc-shop-ink) !important; }
.vlc-site .cart-title-section p { max-width: 48ch; margin-top: 0.875rem; color: var(--vlc-shop-muted); font-size: 1rem; line-height: 1.6; }
.vlc-site .premium-cart-items { gap: 1rem; }
.vlc-site .premium-cart-wrapper .woocommerce-cart-form { padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
/* !important is limited to properties forced by the legacy compatibility sheet. */
.vlc-site .premium-cart-wrapper .item-glass-card { grid-template-columns: 8rem minmax(0, 1fr); gap: 1.25rem; padding: 1.25rem; padding-right: 3.5rem; border: 0; border-radius: var(--vlc-shop-radius) !important; background: #fff !important; box-shadow: none !important; animation: none; transition: none; text-align: left; }
.vlc-site .premium-cart-wrapper .item-glass-card:hover { transform: none; box-shadow: none; }
.vlc-site .premium-cart-wrapper .item-image-box { grid-row: 1 / 3; width: 8rem; height: 8rem; margin: 0; border: 0; border-radius: 0.75rem; background: #f0efe9; }
.vlc-site .premium-cart-wrapper .item-details { min-width: 0; }
.vlc-site .premium-cart-wrapper .item-details h3 { margin: 0 0 0.75rem; font-family: var(--vlc-font-sans) !important; font-size: 1.125rem; line-height: 1.4; font-weight: 500; color: var(--vlc-shop-ink); overflow-wrap: break-word; }
.vlc-site .premium-cart-wrapper .item-details .variation,
.vlc-site .premium-cart-wrapper .item-price-tag,
.vlc-site .premium-cart-wrapper .item-price-tag small,
.vlc-site .premium-cart-wrapper .product-subtotal small,
.vlc-site .premium-cart-wrapper .backorder_notification { font-size: 1rem; line-height: 1.5; }
.vlc-site .premium-cart-wrapper .item-price-tag { color: var(--vlc-shop-muted); font-weight: 500; }
.vlc-site .premium-cart-wrapper .premium-qty-control { gap: 0; margin: 0; padding: 0; border: 0; border-radius: 0.75rem; background: var(--vlc-shop-sage); }
.vlc-site .premium-cart-wrapper .qty-btn { width: 2.75rem; height: 2.75rem; border-radius: 0.75rem; box-shadow: none; background: transparent; color: var(--vlc-shop-ink); }
.vlc-site .premium-cart-wrapper .premium-qty-control input.qty { width: 2.75rem; min-width: 2.75rem; height: 2.75rem; font-size: 1rem; font-weight: 500; }
.vlc-site .premium-cart-wrapper .product-subtotal { grid-column: 2; color: var(--vlc-shop-ink) !important; font-size: 1.25rem !important; line-height: 1.4; font-weight: 600; font-variant-numeric: tabular-nums; }
.vlc-site .premium-cart-wrapper .remove-item-btn { top: 0.75rem; right: 0.75rem; width: 2.75rem; height: 2.75rem; border: 0; background: transparent; color: var(--vlc-shop-muted); transform: none; }
.vlc-site .premium-cart-wrapper .remove-item-btn:hover { background: var(--vlc-shop-sage); color: var(--vlc-shop-ink); transform: none; }
.vlc-site .premium-cart-wrapper .totals-nano-glass { padding: 1.5rem; border: 0; border-radius: var(--vlc-shop-radius) !important; background: var(--vlc-shop-sage) !important; color: var(--vlc-shop-ink); box-shadow: none !important; }
.vlc-site .premium-cart-wrapper .totals-nano-glass h2 { margin: 0 0 1.5rem; font-family: var(--vlc-font-sans) !important; font-size: 1.25rem; font-weight: 600; line-height: 1.4; }
.vlc-site .premium-cart-wrapper .row-total { align-items: baseline; gap: 1rem; font-size: 1rem; line-height: 1.5; margin-bottom: 1rem; }
.vlc-site .premium-cart-wrapper .shipping-row > :last-child { text-align: right; }
.vlc-site .premium-cart-wrapper .row-grand-total { gap: 1rem; margin: 1.25rem 0; padding-top: 1.25rem; border-top: 1px solid #d4ddcf; color: var(--vlc-shop-ink) !important; font-size: 1.375rem; font-weight: 600; font-variant-numeric: tabular-nums; }
.vlc-site .premium-cart-wrapper .btn-checkout-premium { display: flex; align-items: center; justify-content: center; min-height: 3.5rem; padding: 0.875rem 1rem; border: 0; border-radius: 0.75rem !important; background: #a64c32 !important; font-size: 1rem; font-weight: 600; line-height: 1.4; letter-spacing: 0; text-transform: none; box-shadow: none !important; transform: none; }
.vlc-site .premium-cart-wrapper .btn-checkout-premium:hover { background: #893b26 !important; box-shadow: none; transform: none; }
.vlc-site .premium-cart-wrapper .btn-whatsapp-cart { min-height: 2.75rem; padding: 0.75rem 0; border: 0; border-radius: 0; background: transparent; color: var(--vlc-shop-ink); font-size: 1rem; font-weight: 500; line-height: 1.5; }
.vlc-site .premium-cart-wrapper .cart-whatsapp-note,
.vlc-site .premium-cart-wrapper .cart-confirm-note { font-size: 1rem; line-height: 1.5; color: var(--vlc-shop-muted); text-align: left; }
.vlc-site .premium-cart-wrapper :is(.qty-btn, .remove-item-btn, .btn-checkout-premium, .btn-whatsapp-cart):focus-visible { outline: 2px solid #2e6146; outline-offset: 3px; }

/* Checkout retains Woo's labels, validation and payment controls. */
.woocommerce-checkout .vlc-site .checkout-card { border: 0; border-radius: var(--vlc-shop-radius) !important; background: #fff !important; box-shadow: none; }
.woocommerce-checkout .vlc-site .checkout-left .checkout-card-body { padding: 1.5rem; }
.woocommerce-checkout .vlc-site .checkout-summary,
.woocommerce-checkout .vlc-site .woocommerce-checkout-review-order { border: 0; border-radius: 0 !important; background: transparent !important; box-shadow: none; }
.woocommerce-checkout .vlc-site .checkout-right .checkout-card { background: var(--vlc-shop-sage) !important; }
.woocommerce-checkout .vlc-site .checkout-card-header { padding: 1.5rem 1.5rem 0; border: 0; background: transparent; }
.woocommerce-checkout .vlc-site .checkout-card-header h3 { font-family: var(--vlc-font-sans); font-size: 1.25rem; font-weight: 600; }
.woocommerce-checkout .vlc-site .checkout-card-body { padding: 1.5rem; }
.woocommerce-checkout .vlc-site .checkout-intro h2 { font-size: 1.75rem; line-height: 1.25; font-weight: 500; }
.woocommerce-checkout .vlc-site .checkout-card-body h3 { font-family: var(--vlc-font-sans); font-size: 1.125rem; font-weight: 600; }
.woocommerce-checkout .vlc-site form.checkout .form-row label { font-size: 1rem; line-height: 1.5; font-weight: 500; }
.woocommerce-checkout .vlc-site form.checkout .form-row :is(input.input-text, select, textarea) { min-height: 3rem; padding: 0.75rem; border: 1px solid #bcc9bd; border-radius: 0.75rem; background: #fff; font-family: var(--vlc-font-sans); font-size: 1rem; line-height: 1.5; box-shadow: none; }
.woocommerce-checkout .vlc-site form.checkout .form-row :is(input.input-text, select, textarea):focus { outline: 2px solid #2e6146; outline-offset: 2px; }
.woocommerce-checkout .vlc-site .select2-container .select2-selection--single { min-height: 3rem; border: 1px solid #bcc9bd; border-radius: 0.75rem; }
.woocommerce-checkout .vlc-site .select2-container .select2-selection__rendered { padding: 0.5rem 0.75rem; font-size: 1rem; }
.woocommerce-checkout .vlc-site .select2-container .select2-selection__arrow { height: 3rem; }
.woocommerce-checkout .vlc-site .checkout-products-list > div:first-child,
.woocommerce-checkout .vlc-site .checkout-product-meta,
.woocommerce-checkout .vlc-site .checkout-security,
.woocommerce-checkout .vlc-site .woocommerce-privacy-policy-text,
.woocommerce-checkout .vlc-site #payment .payment_box { font-size: 1rem !important; line-height: 1.5; }
.woocommerce-checkout .vlc-site .checkout-product { display: grid; grid-template-columns: 4rem minmax(0, 1fr); align-items: start; gap: 0.75rem; padding-block: 1rem; }
.woocommerce-checkout .vlc-site .checkout-product-image { grid-row: 1 / 3; width: 4rem; height: 4rem; }
.woocommerce-checkout .vlc-site .checkout-product-image img { width: 4rem !important; height: 4rem !important; object-fit: contain !important; }
.woocommerce-checkout .vlc-site .checkout-product-info { min-width: 0; }
.woocommerce-checkout .vlc-site .checkout-product-name { font-size: 1rem; font-weight: 500; line-height: 1.5; }
.woocommerce-checkout .vlc-site .checkout-product-price { grid-column: 2; font-size: 1.125rem; font-weight: 600; }
.woocommerce-checkout .vlc-site .checkout-summary-row { display: flex; justify-content: space-between; gap: 1rem; padding-block: 0.5rem; font-size: 1rem; line-height: 1.5; }
.woocommerce-checkout .vlc-site .checkout-summary-row > :last-child { text-align: right; }
.woocommerce-checkout .vlc-site .checkout-summary-row.total { font-size: 1.375rem; font-weight: 600; }
.woocommerce-checkout .vlc-site #place_order { min-height: 3.5rem; border: 0; border-radius: 0.75rem !important; background: #a64c32 !important; font-size: 1rem !important; box-shadow: none; }

/* Editorial cards: a photograph and a title, not nested framed boxes. */
.vlc-site .lc-mano-verde .lc-mano-verde-card { border: 0; border-radius: var(--vlc-shop-radius); background: #fff; box-shadow: none; }
.vlc-site .lc-mano-verde .lc-mano-verde-card:hover { transform: none; box-shadow: none; }
.vlc-site .lc-mano-verde .lc-mano-verde-card__media { aspect-ratio: 16 / 10; border-radius: var(--vlc-shop-radius); }
.vlc-site .lc-mano-verde .lc-mano-verde-card__body { padding: 1.25rem; gap: 0.875rem; }
.vlc-site .lc-mano-verde .lc-mano-verde-card__meta,
.vlc-site .lc-mano-verde .lc-mano-verde-card__topics { color: var(--vlc-shop-muted); font-size: 1rem; font-weight: 400; line-height: 1.5; }
.vlc-site .lc-mano-verde .lc-mano-verde-card__topics span { padding: 0; border: 0; background: transparent; }
.vlc-site .lc-mano-verde .lc-mano-verde-card__topics span + span::before { content: '·'; margin-right: 0.75rem; }
.vlc-site main.lc-mano-verde .lc-mano-verde-card h3 { margin: 0; font-family: var(--vlc-font-serif); font-size: 1.5rem; font-weight: 500; line-height: 1.25; letter-spacing: -0.02em; }
.vlc-site .lc-mano-verde .lc-mano-verde-card h3 a { color: var(--vlc-shop-ink); }
.vlc-site .lc-mano-verde .lc-mano-verde-card p { margin: 0; color: var(--vlc-shop-muted); font-size: 1rem; line-height: 1.6; }
.vlc-site .lc-mano-verde .lc-mano-verde-card__link { min-height: 2.75rem; padding: 0.5rem 0; border: 0; border-radius: 0; background: transparent; color: var(--vlc-shop-ink); font-size: 1rem; }
.vlc-site .lc-mano-verde .lc-mano-verde-card__link { justify-self: start; }
.vlc-site .lc-mano-verde .lc-mano-verde-topics { border: 0; background: transparent; }
.vlc-site .lc-mano-verde .lc-mano-verde-topics__inner a { border: 0; background: #eeeee7; color: var(--vlc-shop-muted); font-size: 1rem; font-weight: 500; }
.vlc-site .lc-mano-verde .lc-mano-verde-topics__inner a.is-active { background: var(--vlc-shop-ink); color: #fff; }
.vlc-site .lc-mano-verde .lc-mano-verde-button { border-radius: 0.75rem; font-size: 1rem; }
@media (max-width: 1023px) {
	.vlc-site .premium-cart-container { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }
	.vlc-site .premium-cart-wrapper .cart-sidebar-totals { position: static; }
}
@media (max-width: 767px) {
	.vlc-site .premium-cart-wrapper { padding: 1.5rem 0 3rem; }
	.vlc-site .premium-cart-container { padding: 0 1rem; }
	.vlc-site .premium-cart-wrapper .item-glass-card { grid-template-columns: 5rem minmax(0, 1fr); gap: 1rem; padding: 1rem; padding-right: 2.75rem; }
	.vlc-site .premium-cart-wrapper .item-image-box { width: 5rem; height: 5rem; }
	.vlc-site .premium-cart-wrapper .item-details h3 { font-size: 1rem; }
	.vlc-site .premium-cart-wrapper .remove-item-btn { top: 0.25rem; right: 0.25rem; }
	.vlc-site .premium-cart-wrapper .totals-nano-glass { padding: 1.25rem; }
	.vlc-site .lc-mano-verde .lc-mano-verde-card__body { padding: 1rem; }
}

/* Product: give the real photograph the same weight as the buying decision. */
.single-product .vlc-site .vlc-main { padding-top: 1.5rem; background: var(--vlc-shop-paper); }
.single-product .vlc-site .vlc-product-single { width: calc(100% - 4rem); max-width: 80rem; }
.single-product .vlc-site .vlc-product-single .vlc-breadcrumb { margin-bottom: 1.25rem; color: var(--vlc-shop-muted); }
.single-product .vlc-site .vlc-product-single__grid { gap: clamp(2rem, 4vw, 4rem); }
.single-product .vlc-site .vlc-product-single__badges { padding: 0; border: 0; }
.single-product .vlc-site .vlc-product-single__badges .vlc-pill { color: var(--vlc-shop-muted); }
.single-product .vlc-site .vlc-product-single__title,
.single-product .vlc-site .product-type-variable .vlc-product-single__title {
	max-width: 24ch;
	margin: 0.875rem 0 0;
	color: var(--vlc-shop-ink);
	font-size: clamp(2rem, 3.15vw, 2.875rem);
	font-weight: 500;
	letter-spacing: -0.035em;
	line-height: 1.13;
	text-wrap: pretty;
}
.single-product .vlc-site .woocommerce-product-gallery,
.single-product .vlc-site .vlc-product-gallery-fallback { padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.single-product .vlc-site .woocommerce-product-gallery__image,
.single-product .vlc-site .woocommerce-product-gallery__image > a { border-radius: var(--vlc-shop-radius); overflow: hidden; background: #f0efe9; }
.single-product .vlc-site .woocommerce-product-gallery__image img,
.single-product .vlc-site .vlc-product-gallery-fallback img { padding: 0; max-height: min(70vh, 40rem); border: 0; border-radius: var(--vlc-shop-radius); object-fit: contain; }
.single-product .vlc-site .woocommerce-product-gallery ol.flex-control-thumbs {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	padding: 1rem 0 0;
	background: transparent;
}
.single-product .vlc-site .woocommerce-product-gallery ol.flex-control-thumbs li { width: 4.5rem !important; flex: 0 0 4.5rem; border: 0; border-radius: 0.625rem; background: transparent; }
.single-product .vlc-site .woocommerce-product-gallery ol.flex-control-thumbs img { border: 2px solid transparent; border-radius: 0.625rem; opacity: 0.85; object-fit: contain; transform: none; }
.single-product .vlc-site .woocommerce-product-gallery ol.flex-control-thumbs img.flex-active { border-color: var(--vlc-shop-ink); opacity: 1; }
.single-product .vlc-site .vlc-purchase-box { margin-top: 1.5rem; }
.single-product .vlc-site .vlc-purchase-box__price,
.single-product .vlc-site .product-type-variable .vlc-purchase-box__price { margin: 0 0 1.25rem; padding: 0; border: 0; font-size: 1.75rem; font-weight: 600; font-variant-numeric: tabular-nums; }
.single-product .vlc-site .vlc-purchase-box .qty { min-height: 3.5rem; border: 1px solid var(--vlc-shop-line); border-radius: 0.75rem; background: #fff; font-weight: 500; }
.single-product .vlc-site .vlc-purchase-box button.single_add_to_cart_button { min-height: 3.5rem; border: 0; border-radius: 0.75rem; background: #a64c32; font-size: 1rem; font-weight: 600; }
.single-product .vlc-site .vlc-product-single.product-type-variable .vlc-visual-picker { display: flex; flex-wrap: wrap; gap: 0.5rem; }
.single-product .vlc-site .vlc-product-single.product-type-variable .vlc-visual-picker__option { width: auto; min-width: 4.25rem; min-height: 2.875rem; padding: 0.625rem 0.875rem; border: 0; border-radius: 0.75rem; background: #eeeee7; color: var(--vlc-shop-ink); box-shadow: none; font-size: 1rem; font-weight: 500; white-space: nowrap; }
.single-product .vlc-site .vlc-product-single.product-type-variable .vlc-visual-picker__option.is-selected { background: var(--vlc-shop-ink); color: #fff; box-shadow: none; }
.single-product .vlc-site .vlc-product-single.product-type-variable .vlc-visual-picker__option:focus-visible { outline: 2px solid #2e6146; outline-offset: 3px; }
.single-product .vlc-site .vlc-purchase-box .vlc-product-whatsapp-cta { min-height: 2.75rem; margin-top: 1rem; padding: 0.5rem 0; border: 0; background: transparent; color: var(--vlc-shop-ink); font-weight: 500; }
.single-product .vlc-site .vlc-purchase-box--consult .vlc-product-whatsapp-cta { min-height: 3.5rem; padding: 0.875rem 1rem; background: var(--vlc-shop-ink); color: #fff; border-radius: 0.75rem; }
.single-product .vlc-site .lc-product-actions { margin-top: 0.5rem; padding-top: 0; border: 0; }
.single-product .vlc-site .lc-product-actions__controls { display: flex; flex-wrap: wrap; gap: 0.25rem 0.875rem; }
.single-product .vlc-site .lc-product-action-button,
.single-product .vlc-site .lc-product-action-button--primary { width: auto; flex: 0 0 auto; min-height: 2.75rem; padding: 0.5rem 0; border: 0; border-radius: 0; background: transparent; color: var(--vlc-shop-muted); font-weight: 500; font-size: 1rem; }
.single-product .vlc-site .lc-product-actions__status:empty { display: none; }
.single-product .vlc-site .vlc-product-mano { margin-top: 1rem; padding-top: 0; border: 0; }
.single-product .vlc-site .vlc-product-mano a { color: var(--vlc-shop-ink); font-weight: 500; }
.single-product .vlc-site .vlc-product-guide .vlc-option-row { border: 0; border-radius: 0.875rem; background: var(--vlc-shop-sage); }
.single-product .vlc-site .vlc-product-guide .vlc-option-row__icon { border-radius: 0; background: transparent; color: var(--vlc-guide-accent); }
.single-product .vlc-site .vlc-product-guide .vlc-option-row__label { color: var(--vlc-shop-muted); font-weight: 500; }
.single-product .vlc-site .vlc-product-guide .vlc-option-row__value { color: var(--vlc-shop-ink); font-weight: 500; }
.single-product .vlc-site .lc-product-geo--compact { margin-top: 3rem; border-color: var(--vlc-shop-line); }
.single-product .vlc-site .lc-product-geo--compact details { border-color: var(--vlc-shop-line); }
.single-product .vlc-site .lc-product-geo--compact summary { padding-block: 1.125rem; font-weight: 500; }
.single-product .vlc-site .vlc-review-invite { margin-top: 2rem; border-color: var(--vlc-shop-line); }
.single-product .vlc-site .related { margin-top: 3rem; padding-top: 3rem; border-color: var(--vlc-shop-line); }

/* The kit starts with actual miniatures; choosing reveals visual options. */
.single-product .vlc-site .vlc-purchase-box .vlc-kit-builder {
	margin: 1rem 0 0;
	padding: 1.25rem;
	border: 0;
	border-radius: var(--vlc-shop-radius);
	background: var(--vlc-shop-sage);
}
.single-product .vlc-site .vlc-kit-builder h2 { margin: 0 0 0.5rem; font-size: 1.25rem; font-weight: 600; }
.single-product .vlc-site .vlc-kit-group { border-color: #d4ddcf; }
.single-product .vlc-site .vlc-kit-group:last-of-type { border-bottom: 0; }
.single-product .vlc-site .vlc-kit-group > summary { padding: 1rem 0; }
.single-product .vlc-site .vlc-kit-group__head { gap: 0.75rem; }
.single-product .vlc-site .vlc-kit-group__label { font-weight: 500; }
.single-product .vlc-site .vlc-kit-group__action { font-weight: 600; }
.single-product .vlc-site .vlc-kit-group__action::after,
.single-product .vlc-site .vlc-kit-group.is-picked .vlc-kit-group__action::after { content: ''; display: inline-block; width: 0.4rem; height: 0.4rem; margin: 0 0.25rem 0.15rem 0.6rem; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg); }
.single-product .vlc-site .vlc-kit-group[open] .vlc-kit-group__action::after { margin-bottom: -0.05rem; transform: rotate(225deg); }
.single-product .vlc-site .vlc-kit-group__preview { display: flex; align-items: center; gap: 0.5rem; margin-top: 0.75rem; }
.single-product .vlc-site .vlc-kit-group__preview-reference { color: var(--vlc-shop-muted); font-size: 1rem; }
.single-product .vlc-site .vlc-kit-group__preview img { display: block; width: 3.5rem; height: 3.5rem; border: 0; border-radius: 0.625rem; object-fit: contain; background: #fff; }
.single-product .vlc-site .vlc-kit-group.is-picked .vlc-kit-group__preview,
.single-product .vlc-site .vlc-kit-group[open] .vlc-kit-group__preview { display: none; }
.single-product .vlc-site .vlc-kit-group__options { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.75rem; padding: 0 0 1rem; }
.single-product .vlc-site .vlc-kit-option {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 0.625rem;
	padding: 0.75rem;
	border: 0;
	border-radius: 0.75rem;
	background: #fff;
	box-shadow: inset 0 0 0 1px transparent;
}
.single-product .vlc-site .vlc-kit-option:has(input:checked) { background: #fff; box-shadow: inset 0 0 0 2px var(--vlc-shop-ink); }
.single-product .vlc-site .vlc-kit-option input { position: absolute; top: 0.75rem; right: 0.75rem; z-index: 1; width: 1.125rem; height: 1.125rem; accent-color: var(--vlc-shop-ink); }
.single-product .vlc-site .vlc-kit-option__media { width: 100%; height: auto; aspect-ratio: 4 / 3; border-radius: 0.5rem; background: #fff; }
.single-product .vlc-site .vlc-kit-group__options:has(> .vlc-kit-option[data-product-id]:last-of-type:nth-of-type(2)) { grid-template-columns: minmax(0, 1fr); }
.single-product .vlc-site .vlc-kit-group__options:has(> .vlc-kit-option[data-product-id]:last-of-type:nth-of-type(2)) > .vlc-kit-option[data-product-id] { display: grid; grid-template-columns: 5rem minmax(0, 1fr); align-items: center; gap: 0.875rem; padding-right: 2.25rem; }
.single-product .vlc-site .vlc-kit-group__options:has(> .vlc-kit-option[data-product-id]:last-of-type:nth-of-type(2)) .vlc-kit-option__media { aspect-ratio: 1; }
.single-product .vlc-site .vlc-kit-option__text { font-weight: 500; word-break: normal; overflow-wrap: break-word; }
.single-product .vlc-site .vlc-kit-option__copy { flex: 1; gap: 0.625rem; }
.single-product .vlc-site .vlc-kit-option strong { margin-top: auto; font-weight: 600; }
.single-product .vlc-site .vlc-kit-option--none { grid-column: 1 / -1; flex-direction: row; align-items: center; min-height: 2.75rem; padding: 0.5rem 0; background: transparent; box-shadow: none; }
.single-product .vlc-site .vlc-kit-option--none:has(input:checked) { background: transparent; box-shadow: none; }
.single-product .vlc-site .vlc-kit-option--none input { position: static; flex: 0 0 1.125rem; margin-right: 0.5rem; }
.single-product .vlc-site .vlc-kit-group__hint { grid-column: 1 / -1; margin: 0.25rem 0 0; }
.single-product .vlc-site .vlc-kit-group__selected { gap: 0.75rem; }
.single-product .vlc-site .vlc-kit-group__selected-media { background: #fff; border-radius: 0.625rem; }
.single-product .vlc-site .vlc-kit-group__remove { min-width: 0; padding: 0.5rem 0; border: 0; text-decoration: underline; text-underline-offset: 0.2rem; font-weight: 500; }
.single-product .vlc-site .vlc-kit-total { margin-top: 0.875rem; padding-top: 1rem; border-color: #d4ddcf; }
.single-product .vlc-site .vlc-kit-total strong { font-size: 1.125rem; }

.vlc-site :is(.vlc-card-primary, .lc-product-card-share__button, .lc-product-action-button, .vlc-kit-group > summary, .vlc-kit-option, .vlc-kit-group__remove):focus-visible { outline: 2px solid #2e6146; outline-offset: 4px; }
@media (hover: hover) {
	.vlc-site .vlc-product-card:hover,
	.home .vlc-site .vlc-product-card:hover { border: 0; box-shadow: 0 8px 28px rgb(24 43 29 / 7%); transform: none; }
	.vlc-site .vlc-product-card .vlc-card-actions .vlc-card-primary:hover { background: var(--vlc-shop-ink); color: #fff; }
	.single-product .vlc-site .vlc-purchase-box button.single_add_to_cart_button:hover { background: #893b26; }
	.single-product .vlc-site .lc-product-action-button:hover { background: transparent; color: var(--vlc-shop-ink); }
	.single-product .vlc-site .vlc-kit-option:hover { box-shadow: inset 0 0 0 1px #8caa90; }
	.single-product .vlc-site .vlc-kit-option:has(input:checked):hover { box-shadow: inset 0 0 0 2px var(--vlc-shop-ink); }
}
@media (min-width: 960px) {
	.single-product .vlc-site .vlc-product-single__grid { grid-template-columns: minmax(0, 1.08fr) minmax(0, 0.92fr); }
}
@media (max-width: 767px) {
	.single-product .vlc-site .vlc-main { padding-top: 1rem; }
	.single-product .vlc-site .vlc-product-single { width: calc(100% - 2rem); }
	.single-product .vlc-site .vlc-product-single .vlc-breadcrumb { margin-bottom: 1rem; }
	.single-product .vlc-site .vlc-product-single__grid { gap: 1.5rem; }
	.single-product .vlc-site .vlc-product-single__title,
	.single-product .vlc-site .product-type-variable .vlc-product-single__title { font-size: 2rem; }
	.single-product .vlc-site .woocommerce-product-gallery__image img { max-height: 55vh; }
	.single-product .vlc-site .woocommerce-product-gallery ol.flex-control-thumbs { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 0.25rem; scrollbar-width: thin; }
	.single-product .vlc-site .vlc-purchase-box { margin-top: 1.125rem; }
	.single-product .vlc-site .vlc-purchase-box .vlc-kit-builder { padding: 1rem; }
	.vlc-site .vlc-products-grid { gap: 1rem; }
	.vlc-site .vlc-product-card .vlc-product-card__body { gap: 0.75rem; padding: 0.875rem 0.75rem; }
	.vlc-site .vlc-product-card .vlc-card-title { font-size: 1rem; }
	.vlc-site .vlc-product-card .vlc-card-price { font-size: 1.0625rem; }
	.vlc-site .vlc-product-card .vlc-card-actions .vlc-card-primary { padding-inline: 0.5rem; }
	.vlc-site .vlc-product-card .lc-product-card-share { top: 0.5rem; right: 0.5rem; }
	.vlc-site .vlc-shop-filters { gap: 0.5rem; }
	.vlc-site .vlc-filter-chip { padding-inline: 0.875rem; }
}
@media (max-width: 359px) {
	.single-product .vlc-site .vlc-product-single__title,
	.single-product .vlc-site .product-type-variable .vlc-product-single__title { font-size: 1.875rem; }
	.single-product .vlc-site .vlc-purchase-box .vlc-kit-builder { padding: 0.875rem; }
	.single-product .vlc-site .vlc-kit-group__options { gap: 0.5rem; }
	.single-product .vlc-site .vlc-kit-option { padding: 0.625rem; }
	.vlc-site .vlc-product-card .vlc-product-card__body { padding-inline: 0.625rem; }
	.vlc-site .vlc-product-card .vlc-card-actions .vlc-card-primary > span[aria-hidden] { display: none; }
}
