/**
 * ForgeCommerce WooCommerce layer.
 *
 * WooCommerce's own stylesheet remains enabled. This file adds a compact,
 * theme-scoped presentation layer and avoids copying plugin templates.
 */

.fc-woo-shell{
	padding-top:clamp(2rem,5vw,4.5rem);
	padding-bottom:clamp(3rem,7vw,7rem);
}
.fc-woo-content{min-width:0}

/* Breadcrumbs / notices */
.woocommerce .woocommerce-breadcrumb{
	margin:0 0 1.5rem;
	color:var(--fc-muted);
	font-size:.88rem;
}
.woocommerce .woocommerce-breadcrumb a{color:var(--fc-text)}
.woocommerce-message,
.woocommerce-info,
.woocommerce-error{
	border:1px solid var(--fc-border);
	border-top:3px solid var(--fc-accent);
	border-radius:var(--fc-radius);
	background:#fff;
	color:var(--fc-text);
	box-shadow:none;
}
.woocommerce-error{border-top-color:#d63638}

.woocommerce div.product p.stock.fc-quote-availability,
body.single-product .woocommerce div.product p.stock.out-of-stock{
	display:inline-flex;
	align-items:center;
	min-height:42px;
	margin:0 0 1.25rem;
	padding:.65rem .85rem;
	border:1px solid #e2d5a8;
	border-radius:12px;
	background:#fff9e8;
	color:#6d5312;
	font-size:.9rem;
	font-weight:750;
}

/* Shop / archive heading and ordering */
.woocommerce .woocommerce-products-header{margin-bottom:clamp(1.5rem,4vw,3rem)}
.woocommerce .woocommerce-products-header__title{
	margin:0;
	font-size:clamp(2.1rem,4vw,3.6rem);
	line-height:1.06;
	letter-spacing:-.024em;
}
.woocommerce .woocommerce-result-count{color:var(--fc-muted)}
.woocommerce .woocommerce-ordering select{
	min-height:44px;
	padding:.55rem 2.5rem .55rem .8rem;
	border:1px solid var(--fc-border);
	border-radius:var(--fc-button-radius);
	background:#fff;
	color:var(--fc-text);
}

/* Product grid */
.woocommerce ul.products{
	display:grid;
	grid-template-columns:repeat(4,minmax(0,1fr));
	gap:clamp(1rem,2vw,1.5rem);
	margin:0 0 2rem;
}
.woocommerce ul.products::before,
.woocommerce ul.products::after{display:none}
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
	float:none;
	width:auto;
	margin:0;
	padding:0;
	overflow:hidden;
	border:1px solid var(--fc-border);
	border-radius:var(--fc-radius);
	background:#fff;
}
.woocommerce ul.products li.product a{color:inherit}
.woocommerce ul.products li.product a img{
	width:100%;
	margin:0;
	aspect-ratio:4/5;
	object-fit:cover;
	background:var(--fc-surface);
}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
	margin:0;
	padding:1rem 1rem .35rem;
	font-size:1.05rem;
	line-height:1.25;
}
.woocommerce ul.products li.product .price{
	display:block;
	margin:0;
	padding:0 1rem .85rem;
	color:var(--fc-text);
	font-size:.95rem;
	font-weight:800;
}
.woocommerce ul.products li.product .button{
	margin:.1rem 1rem 1rem;
}

/* Buttons */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt{
	min-height:44px;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	padding:.7rem 1rem;
	border:0;
	border-radius:var(--fc-button-radius);
	background:var(--fc-accent);
	color:#111318;
	font-weight:850;
	line-height:1.1;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover{
	background:color-mix(in srgb,var(--fc-accent) 86%,#000);
	color:#111318;
}

/* Pagination */
.woocommerce nav.woocommerce-pagination ul{
	display:flex;
	gap:.45rem;
	border:0;
}
.woocommerce nav.woocommerce-pagination ul li{border:0}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
	min-width:42px;
	min-height:42px;
	display:grid;
	place-items:center;
	border:1px solid var(--fc-border);
	border-radius:var(--fc-button-radius);
	background:#fff;
	color:var(--fc-text);
}
.woocommerce nav.woocommerce-pagination ul li span.current{
	border-color:var(--fc-accent);
	background:var(--fc-accent);
	color:#111318;
}

/* Single product — canonical 0.15.0 layout. */
body.single-product .fc-container.fc-woo-shell{
	box-sizing:border-box;
	width:min(calc(100% - 32px),1520px);
	max-width:1520px;
	margin-inline:auto;
	padding-inline:0;
}
body.single-product .fc-woo-content,
body.single-product .woocommerce{
	width:100%;
	max-width:none;
}
body.single-product .woocommerce div.product{
	--fc-product-gap:clamp(32px,4vw,64px);
	display:flex;
	flex-wrap:wrap;
	align-items:flex-start;
	column-gap:var(--fc-product-gap);
	row-gap:clamp(32px,4vw,56px);
	width:100%;
	max-width:none;
}
body.single-product.woocommerce-page .woocommerce div.product div.images,
body.single-product.woocommerce-page .woocommerce div.product div.summary{
	box-sizing:border-box;
	float:none;
	flex:0 0 calc((100% - var(--fc-product-gap))/2);
	width:calc((100% - var(--fc-product-gap))/2);
	max-width:calc((100% - var(--fc-product-gap))/2);
	margin:0;
}

/* Static native WooCommerce gallery: first image + centered thumbnails. */
body.single-product .woocommerce div.product div.images.woocommerce-product-gallery{
	position:relative;
	display:flex;
	flex-direction:column;
	align-items:center;
	padding:0;
	border:0;
	background:transparent;
	box-shadow:none;
	opacity:1!important;
}
body.single-product.woocommerce-page .woocommerce div.product div.images.woocommerce-product-gallery > .woocommerce-product-gallery__wrapper{
	display:grid;
	grid-template-columns:repeat(4,minmax(0,1fr));
	gap:10px;
	box-sizing:border-box;
	width:min(100%,320px)!important;
	max-width:320px!important;
	margin-left:auto!important;
	margin-right:auto!important;
}
body.single-product .woocommerce div.product div.images .woocommerce-product-gallery__image{
	float:none;
	width:auto;
	margin:0;
}
body.single-product .woocommerce div.product div.images .woocommerce-product-gallery__image:first-child{
	grid-column:1/-1;
	display:grid;
	place-items:center;
	padding:14px;
	border:1px solid #dbe2dc;
	border-radius:22px;
	background:#f4f6f2;
}
body.single-product .woocommerce div.product div.images .woocommerce-product-gallery__image:first-child>a{
	display:grid;
	place-items:center;
	width:100%;
}
body.single-product.woocommerce-page .woocommerce div.product div.images.woocommerce-product-gallery > .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:first-child img{
	display:block!important;
	width:auto!important;
	height:auto!important;
	max-width:100%!important;
	max-height:500px!important;
	margin-left:auto!important;
	margin-right:auto!important;
	object-fit:contain;
	border-radius:15px;
}
body.single-product .woocommerce div.product div.images .woocommerce-product-gallery__image:not(:first-child)>a{
	display:block;
	aspect-ratio:1/1;
	overflow:hidden;
	border:1px solid #dbe2dc;
	border-radius:10px;
	background:#fff;
}
body.single-product .woocommerce div.product div.images .woocommerce-product-gallery__image:not(:first-child) img{
	display:block;
	width:100%;
	height:100%;
	max-width:none;
	margin:0;
	object-fit:cover;
	border-radius:0;
}
body.single-product .woocommerce-product-gallery__trigger{
	top:24px;
	right:24px;
}

/* Product summary. */
body.single-product .woocommerce div.product div.summary{
	position:relative;
	padding:clamp(26px,2.4vw,40px);
	border:1px solid #dbe2dc;
	border-radius:24px;
	background:#fff;
	box-shadow:0 18px 46px rgba(11,16,17,.055);
}
body.single-product .woocommerce div.product .product_title{
	max-width:none;
	margin:0 0 12px;
	font-size:clamp(2.3rem,3.5vw,3.8rem);
	line-height:1.05;
	letter-spacing:-.025em;
}
body.single-product .woocommerce div.product p.price{
	margin:0 0 18px;
	color:var(--fc-text);
	font-size:clamp(1.45rem,2vw,1.8rem);
	font-weight:900;
}
body.single-product .woocommerce div.product .woocommerce-product-details__short-description{
	margin:0 0 22px;
	padding:0 0 22px;
	border-bottom:1px solid #e3e8e3;
	color:#596462;
	font-size:1.02rem;
	line-height:1.65;
}
body.single-product .woocommerce div.product form.cart{
	display:grid;
	grid-template-columns:minmax(92px,150px) minmax(220px,1fr);
	gap:12px;
	margin:0 0 20px;
	padding:16px;
	border:1px solid #e0e6e0;
	border-radius:16px;
	background:#f6f8f4;
}
body.single-product .woocommerce div.product form.cart .quantity,
body.single-product .woocommerce div.product form.cart .qty,
body.single-product .woocommerce div.product form.cart .single_add_to_cart_button{
	width:100%;
	min-height:50px;
}
body.single-product .woocommerce div.product form.cart .single_add_to_cart_button{
	background:#0b1011;
	color:#fff;
	font-weight:900;
}
body.single-product .woocommerce div.product form.cart .single_add_to_cart_button:hover{
	background:var(--fc-accent);
	color:#0b1011;
}
body.single-product .fc-product-service-panel{margin-top:0}

/* Variation / forms */
.woocommerce div.product form.cart .variations{margin-bottom:1rem}
.woocommerce div.product form.cart .variations td,
.woocommerce div.product form.cart .variations th{padding:.4rem 0}
.woocommerce div.product form.cart .variations select,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select{
	min-height:44px;
	padding:.65rem .8rem;
	border:1px solid var(--fc-border);
	border-radius:var(--fc-button-radius);
	background:#fff;
	color:var(--fc-text);
}

/* Product meta, tabs and related products. */
body.single-product .woocommerce div.product .product_meta{
	padding-top:1rem;
	border-top:1px solid var(--fc-border);
	color:var(--fc-muted);
	font-size:.88rem;
}
body.single-product .woocommerce-tabs{
	flex:0 0 100%;
	box-sizing:border-box;
	width:100%;
	max-width:none;
	margin:clamp(42px,5vw,72px) 0 0;
	padding:clamp(18px,2vw,28px);
	border:1px solid #dbe2dc;
	border-radius:24px;
	background:#f4f6f2;
}
body.single-product .woocommerce-tabs ul.tabs{
	display:flex;
	flex-wrap:wrap;
	gap:6px;
	width:max-content;
	max-width:100%;
	margin:0 0 14px;
	padding:6px;
	border:1px solid #dbe2dc;
	border-radius:14px;
	background:#fff;
}
body.single-product .woocommerce-tabs ul.tabs::before{display:none}
body.single-product .woocommerce-tabs ul.tabs li{
	margin:0;
	padding:0;
	border:0;
	border-radius:10px;
	background:transparent;
}
body.single-product .woocommerce-tabs ul.tabs li::before,
body.single-product .woocommerce-tabs ul.tabs li::after{display:none}
body.single-product .woocommerce-tabs ul.tabs li a{
	display:block;
	padding:10px 14px;
	color:#596462;
	font-weight:850;
}
body.single-product .woocommerce-tabs ul.tabs li.active{background:#0b1011}
body.single-product .woocommerce-tabs ul.tabs li.active a{color:#fff}
body.single-product .woocommerce-Tabs-panel{
	box-sizing:border-box;
	width:100%;
	margin:0;
	padding:clamp(28px,4vw,56px);
	border:1px solid #e0e6e0;
	border-radius:18px;
	background:#fff;
}
body.single-product .woocommerce-Tabs-panel--description>*{
	max-width:980px;
	margin-left:auto;
	margin-right:auto;
}
body.single-product .woocommerce-Tabs-panel h2,
body.single-product .woocommerce-Tabs-panel h3{
	color:#0b1011;
	line-height:1.15;
	letter-spacing:-.025em;
}
body.single-product .woocommerce-Tabs-panel p{
	color:#596462;
	font-size:1rem;
	line-height:1.75;
}
body.single-product .woocommerce div.product .related,
body.single-product .woocommerce div.product .upsells{
	flex:0 0 100%;
	width:100%;
	margin-top:clamp(2.5rem,6vw,5rem);
}
body.single-product .woocommerce div.product .related>h2,
body.single-product .woocommerce div.product .upsells>h2{
	font-size:clamp(1.7rem,3vw,2.6rem);
	letter-spacing:-.03em;
}

/* Reviews. */
body.single-product .woocommerce-Tabs-panel--reviews #reviews{
	display:grid;
	grid-template-columns:minmax(0,1fr) minmax(320px,.85fr);
	gap:clamp(24px,4vw,48px);
	align-items:start;
}
body.single-product #comments,
body.single-product #review_form_wrapper{min-width:0}
body.single-product #comments ol.commentlist{
	display:grid;
	gap:14px;
	margin:0;
	padding:0;
}
body.single-product #comments ol.commentlist li{
	margin:0;
	padding:18px;
	border:1px solid #e0e6e0;
	border-radius:16px;
	background:#f8faf7;
}
body.single-product #review_form_wrapper{
	padding:22px;
	border:1px solid #e0e6e0;
	border-radius:16px;
	background:#f8faf7;
}
body.single-product .comment-form input[type="text"],
body.single-product .comment-form input[type="email"],
body.single-product .comment-form textarea{
	width:100%;
	box-sizing:border-box;
	padding:12px 14px;
	border:1px solid #dbe2dc;
	border-radius:11px;
	background:#fff;
	box-shadow:none;
}
body.single-product .comment-form textarea{min-height:170px;resize:vertical}
body.single-product .comment-form .submit{
	min-height:48px;
	padding:12px 20px;
	border:0;
	border-radius:11px;
	background:#0b1011;
	color:#fff;
	font-weight:900;
	cursor:pointer;
}
body.single-product .comment-form .submit:hover{
	background:var(--fc-accent);
	color:#0b1011;
}

/* Categories */
.woocommerce ul.products li.product-category mark{
	background:transparent;
	color:var(--fc-muted);
}

/* Cart / checkout / account base */
.woocommerce table.shop_table{
	border:1px solid var(--fc-border);
	border-radius:var(--fc-radius);
	border-collapse:separate;
	overflow:hidden;
}
.woocommerce-cart .cart-collaterals .cart_totals,
.woocommerce-checkout #order_review{
	padding:1.25rem;
	border:1px solid var(--fc-border);
	border-radius:var(--fc-radius);
	background:#fff;
}

/* Future ForgeCommerce quote/configurator modules can use these shells. */
.fc-product-configurator,
.fc-product-quote-summary{
	margin:1.25rem 0;
	padding:1.25rem;
	border:1px solid var(--fc-border);
	border-radius:var(--fc-radius);
	background:var(--fc-surface);
}

/* ForgeCommerce 0.10.0 — JF commercial catalog treatment. */
.woocommerce .woocommerce-products-header{
	padding-bottom:1.25rem;
	border-bottom:1px solid var(--fc-border);
}

.woocommerce .woocommerce-products-header__title{
	max-width:15ch;
}

.woocommerce .term-description{
	max-width:72ch;
	color:var(--fc-muted);
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
	position:relative;
	border-radius:18px;
	box-shadow:0 1px 2px rgba(16,20,22,.06),0 10px 30px rgba(16,20,22,.04);
	transition:transform 180ms cubic-bezier(.2,.7,.2,1),box-shadow 180ms cubic-bezier(.2,.7,.2,1),border-color 180ms cubic-bezier(.2,.7,.2,1);
}

.woocommerce ul.products li.product:hover{
	transform:translateY(-5px);
	border-color:color-mix(in srgb,var(--fc-accent) 62%,var(--fc-border));
	box-shadow:0 20px 48px rgba(16,20,22,.12);
}

.woocommerce ul.products li.product a img{
	transition:transform 320ms cubic-bezier(.2,.7,.2,1);
}

.woocommerce ul.products li.product:hover a img{
	transform:scale(1.025);
}

.woocommerce span.onsale{
	min-width:auto;
	min-height:auto;
	left:1rem;
	top:1rem;
	padding:.45rem .65rem;
	border-radius:999px;
	background:var(--fc-accent);
	color:#101416;
	font-size:.72rem;
	font-weight:900;
	line-height:1;
}




.woocommerce-cart .cart-collaterals .cart_totals,
.woocommerce-checkout #order_review{
	border-radius:18px;
	box-shadow:0 1px 2px rgba(16,20,22,.06),0 14px 40px rgba(16,20,22,.04);
}

.woocommerce-checkout #order_review_heading{
	margin-top:0;
}

@media (max-width:1100px){
	.woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:960px){
	.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:560px){
	.woocommerce ul.products{grid-template-columns:1fr}
	.woocommerce .woocommerce-ordering,
	.woocommerce .woocommerce-result-count{float:none}
}


@media (max-width:980px){
	body.single-product .fc-container.fc-woo-shell{width:min(calc(100% - 24px),760px)}
	body.single-product.woocommerce-page .woocommerce div.product div.images,
	body.single-product.woocommerce-page .woocommerce div.product div.summary{
		flex:0 0 100%;
		width:100%;
		max-width:100%;
	}
	body.single-product.woocommerce-page .woocommerce div.product div.images.woocommerce-product-gallery > .woocommerce-product-gallery__wrapper{
		width:min(100%,280px)!important;
		max-width:280px!important;
	}
	body.single-product.woocommerce-page .woocommerce div.product div.images.woocommerce-product-gallery > .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:first-child img{
		max-height:440px!important;
	}
	body.single-product .woocommerce div.product div.summary{margin:0 auto}
	body.single-product .woocommerce-Tabs-panel--reviews #reviews{grid-template-columns:1fr}
}
@media (max-width:560px){
	body.single-product .woocommerce div.product form.cart{grid-template-columns:1fr}
	body.single-product .woocommerce div.product div.images .woocommerce-product-gallery__wrapper{grid-template-columns:repeat(4,minmax(0,1fr))}
	body.single-product .woocommerce-tabs{padding:12px;border-radius:20px}
	body.single-product .woocommerce-tabs ul.tabs{
		display:grid;
		grid-template-columns:1fr 1fr;
		width:100%;
	}
	body.single-product .woocommerce-tabs ul.tabs li a{padding:10px 8px;text-align:center}
	body.single-product .woocommerce-Tabs-panel{padding:20px}
}

@media (prefers-reduced-motion:reduce){
	.woocommerce ul.products li.product:hover,
	.woocommerce ul.products li.product:hover a img{transform:none}
}

/* ================================================================
 * ForgeCommerce JF 0.14.1 — WooCommerce visual integration
 * ================================================================ */

/* Archive quick routes */
.fc-woo-routes{
	display:grid;
	gap:.75rem;
	margin:0 0 clamp(1.4rem,3vw,2.25rem);
	padding:1rem;
	border:1px solid var(--fc-border);
	border-radius:18px;
	background:var(--fc-surface,#f6f7f5);
}
.fc-woo-routes-label{
	font-size:.72rem;
	font-weight:900;
	letter-spacing:.09em;
	text-transform:uppercase;
	color:var(--fc-muted);
}
.fc-woo-routes-scroll{
	display:flex;
	gap:.55rem;
	overflow-x:auto;
	padding-bottom:.1rem;
	scrollbar-width:thin;
}
.fc-woo-routes-scroll a{
	flex:0 0 auto;
	display:inline-flex;
	align-items:center;
	min-height:40px;
	padding:.55rem .85rem;
	border:1px solid var(--fc-border);
	border-radius:999px;
	background:#fff;
	color:var(--fc-text);
	font-size:.88rem;
	font-weight:800;
	text-decoration:none;
}
.fc-woo-routes-scroll a:hover,
.fc-woo-routes-scroll a:focus-visible{
	border-color:var(--fc-accent);
	box-shadow:0 0 0 3px color-mix(in srgb,var(--fc-accent) 20%,transparent);
}

/* Product archive toolbar */
.fc-woo-shop .woocommerce-before-shop-loop,
.fc-woo-archive .woocommerce-before-shop-loop{min-width:0}
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering{margin-bottom:1rem}
.woocommerce .woocommerce-ordering select{
	font-weight:750;
	box-shadow:0 1px 2px rgba(16,20,22,.04);
}

/* Product cards */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
	display:flex;
	flex-direction:column;
	min-width:0;
}
.woocommerce ul.products li.product>a.woocommerce-LoopProduct-link{
	display:block;
	min-width:0;
}
.woocommerce ul.products li.product a img{
	aspect-ratio:4/5;
	object-fit:contain;
	padding:.5rem;
	background:linear-gradient(180deg,#f7f8f6 0%,#eef0ec 100%);
}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
	font-size:1rem;
	font-weight:850;
	letter-spacing:-.015em;
}
.fc-product-reference{
	display:flex;
	flex-wrap:wrap;
	gap:.4rem;
	padding:0 1rem .3rem;
	color:var(--fc-muted);
	font-size:.72rem;
	font-weight:750;
	text-transform:uppercase;
	letter-spacing:.055em;
}
.fc-product-reference span+span::before{
	content:'·';
	margin-right:.4rem;
	color:var(--fc-border-strong,var(--fc-muted));
}
.woocommerce ul.products li.product .price{margin-top:auto}
.woocommerce ul.products li.product .button{
	width:calc(100% - 2rem);
	margin:.15rem 1rem 1rem;
}

/* Product detail */
.fc-woo-product .fc-woo-shell{padding-top:clamp(1.5rem,4vw,3rem)}
.fc-woo-product .woocommerce div.product{gap:clamp(1.5rem,4vw,4rem)}
.fc-woo-product .woocommerce div.product .product_title{max-width:14ch}
.fc-woo-product .woocommerce div.product div.summary{
	position:relative;
	border-radius:22px;
}
.fc-product-service-panel{
	display:grid;
	grid-template-columns:minmax(0,1fr) auto;
	gap:1rem;
	align-items:center;
	margin:1rem 0 1.1rem;
	padding:1rem;
	border:1px solid color-mix(in srgb,var(--fc-accent) 48%,var(--fc-border));
	border-radius:16px;
	background:color-mix(in srgb,var(--fc-accent) 9%,#fff);
}
.fc-product-service-panel>div{display:grid;gap:.2rem}
.fc-product-service-kicker{
	font-size:.7rem;
	font-weight:900;
	letter-spacing:.08em;
	text-transform:uppercase;
	color:var(--fc-muted);
}
.fc-product-service-panel strong{font-size:.94rem;line-height:1.3}
.fc-product-service-panel .fc-button{white-space:nowrap}

@media (max-width:720px){
	.fc-product-service-panel{grid-template-columns:1fr}
	.fc-product-service-panel .fc-button{justify-content:center;width:100%;white-space:normal;text-align:center}
}

/* Archive help */
.fc-woo-help-strip{
	display:grid;
	grid-template-columns:minmax(0,1fr) auto;
	gap:1.25rem;
	align-items:center;
	margin:clamp(2rem,5vw,4rem) 0 0;
	padding:clamp(1.25rem,3vw,2rem);
	border-radius:20px;
	background:#101617;
	color:#fff;
}
.fc-woo-help-strip>div{display:grid;gap:.3rem}
.fc-woo-help-strip span{
	font-size:.75rem;
	font-weight:900;
	letter-spacing:.08em;
	text-transform:uppercase;
	color:rgba(255,255,255,.64);
}
.fc-woo-help-strip strong{font-size:clamp(1rem,2vw,1.35rem);line-height:1.25}
.fc-woo-help-strip .fc-button{background:var(--fc-accent);color:#101416}

/* WooCommerce Blocks: cart — 0.15.15 responsive width fix */
.fc-woo-cart .fc-page-layout-default{
	width:min(calc(100% - 32px),1440px);
}
.fc-woo-cart .fc-page-entry,
.fc-woo-cart .fc-entry-content{
	width:100%;
	max-width:none;
}
.fc-woo-cart .fc-entry-header{
	width:min(100%,1280px);
	margin:0 auto clamp(1rem,2vw,1.6rem);
}
.fc-woo-cart .fc-entry-title{
	font-size:clamp(1.9rem,3.4vw,2.8rem);
	letter-spacing:-.024em;
	line-height:1.06;
}
.fc-woo-cart .wp-block-woocommerce-cart,
.fc-woo-cart .wp-block-woocommerce-cart.alignwide{
	width:min(100%,1280px);
	max-width:1280px;
	margin-left:auto;
	margin-right:auto;
	transform:none;
	float:none;
	box-sizing:border-box;
}
.fc-woo-cart .wp-block-woocommerce-filled-cart-block{
	display:grid;
	grid-template-columns:minmax(0,1.65fr) minmax(320px,.85fr);
	gap:clamp(1rem,2.4vw,2rem);
	align-items:start;
	width:100%;
}
.fc-woo-cart .wp-block-woocommerce-cart-items-block,
.fc-woo-cart .wp-block-woocommerce-cart-totals-block{
	min-width:0;
	width:100%;
	max-width:none;
	margin:0;
	box-sizing:border-box;
}
.fc-woo-cart .wp-block-woocommerce-cart-items-block{
	padding:clamp(1rem,2vw,1.35rem);
	border:1px solid var(--fc-border);
	border-radius:18px;
	background:#fff;
	box-shadow:0 12px 34px rgba(16,20,22,.04);
}
.fc-woo-cart .wp-block-woocommerce-cart-totals-block{
	position:sticky;
	top:calc(var(--fc-header-height,76px) + 1rem);
	padding:clamp(1rem,2vw,1.35rem);
	border:1px solid var(--fc-border);
	border-radius:18px;
	background:#fff;
	box-shadow:0 16px 42px rgba(16,20,22,.07);
}
.fc-woo-cart .wc-block-cart-items__row{padding:1rem 0}
.fc-woo-cart .wc-block-cart-item__image img{border-radius:12px}
.fc-woo-cart .wc-block-components-product-name{
	color:var(--fc-text);
	font-weight:850;
}
.fc-woo-cart .wc-block-components-product-metadata{
	color:var(--fc-muted);
	font-size:.84rem;
}
.fc-woo-cart .wc-block-components-quantity-selector{
	border-color:var(--fc-border);
	border-radius:11px;
	overflow:hidden;
}
.fc-woo-cart .wc-block-cart-item__remove-link{
	color:var(--fc-muted);
	font-weight:750;
}
.fc-woo-cart .wc-block-cart__totals-title,
.fc-woo-cart .wc-block-components-totals-item__label{font-weight:850}
.fc-woo-cart .wc-block-components-totals-wrapper{border-color:var(--fc-border)}
.fc-woo-cart .wc-block-cart__submit-button{
	min-height:52px;
	border:0;
	border-radius:11px;
	background:var(--fc-accent);
	color:#101416;
	font-weight:900;
	transition:transform .16s ease,background-color .16s ease,color .16s ease;
}
.fc-woo-cart .wc-block-cart__submit-button:hover{
	transform:translateY(-1px);
	background:#101416;
	color:#fff;
}

/* Empty cart: centered, contained and less visually oversized. */
.fc-woo-cart .wp-block-woocommerce-empty-cart-block{
	width:min(100%,900px);
	max-width:900px;
	margin:0 auto;
	padding:clamp(2rem,5vw,3.5rem) clamp(1rem,3vw,2rem);
	border:1px solid var(--fc-border);
	border-radius:22px;
	background:#fff;
	text-align:center;
	box-shadow:0 16px 42px rgba(16,20,22,.055);
	box-sizing:border-box;
}
.fc-woo-cart .wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title{
	font-size:clamp(1.6rem,3vw,2.35rem);
	letter-spacing:-.035em;
}
.fc-woo-cart .wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title.with-empty-cart-icon::before{
	width:96px;
	height:96px;
	margin:0 auto 1.2rem;
	background-size:contain;
}
.fc-woo-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__products{
	justify-content:center;
}
.fc-woo-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product{
	max-width:240px;
	margin-inline:auto;
}
.fc-woo-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image img{border-radius:16px}
.fc-woo-cart .wp-block-woocommerce-empty-cart-block .wp-block-button__link{
	border-radius:10px;
	background:var(--fc-accent);
	color:#101416;
	font-weight:900;
}

@media (max-width:900px){
	.fc-woo-cart .fc-page-layout-default{
		width:min(calc(100% - 24px),1440px);
	}
	.fc-woo-cart .wp-block-woocommerce-filled-cart-block{
		grid-template-columns:1fr;
	}
	.fc-woo-cart .wp-block-woocommerce-cart-totals-block{position:static}
}
@media (max-width:560px){
	.fc-woo-cart .fc-page-layout-default{
		width:min(calc(100% - 20px),1440px);
	}
	.fc-woo-cart .fc-entry-header{
		width:100%;
	}
	.fc-woo-cart .wp-block-woocommerce-cart,
	.fc-woo-cart .wp-block-woocommerce-cart.alignwide{
		width:100%;
		max-width:100%;
		margin-left:0;
		margin-right:0;
		transform:none;
		overflow:visible;
	}
	.fc-woo-cart .wp-block-woocommerce-cart-items-block,
	.fc-woo-cart .wp-block-woocommerce-cart-totals-block{
		width:100%;
		max-width:100%;
		padding:.85rem;
		border-radius:15px;
		overflow:hidden;
	}
	.fc-woo-cart .wc-block-cart-items,
	.fc-woo-cart .wc-block-cart-items tbody,
	.fc-woo-cart .wc-block-cart-items__row{
		max-width:100%;
	}
	.fc-woo-cart .wp-block-woocommerce-empty-cart-block{
		width:100%;
		max-width:100%;
		padding:2rem .85rem;
	}
}

/* WooCommerce Blocks: checkout — 0.15.15 wider desktop runtime layout */
.fc-woo-checkout .fc-page-layout-default{
	width:min(calc(100% - 32px),1440px);
}
.fc-woo-checkout .fc-page-entry,
.fc-woo-checkout .fc-entry-content{
	width:100%;
	max-width:none;
}
.fc-woo-checkout .fc-entry-header{
	width:min(100%,1320px);
	margin:0 auto clamp(1rem,2vw,1.6rem);
}
.fc-woo-checkout .fc-entry-title{
	font-size:clamp(1.9rem,3.4vw,2.8rem);
	letter-spacing:-.024em;
	line-height:1.06;
}

/* Saved block wrapper. */
.fc-woo-checkout .wp-block-woocommerce-checkout,
.fc-woo-checkout .wp-block-woocommerce-checkout.alignwide{
	width:min(100%,1320px);
	max-width:1320px;
	margin-left:auto;
	margin-right:auto;
	float:none;
	left:auto;
	right:auto;
	transform:none;
	box-sizing:border-box;
}

/* Runtime Woo Blocks wrapper: this is the element that actually owns main/sidebar. */
.fc-woo-checkout .wc-block-components-sidebar-layout{
	display:grid;
	grid-template-columns:minmax(0,1.8fr) minmax(360px,.82fr);
	gap:clamp(1.25rem,3vw,2.5rem);
	align-items:start;
	width:100%;
	max-width:none;
	margin:0;
	box-sizing:border-box;
}
.fc-woo-checkout .wp-block-woocommerce-checkout-fields-block,
.fc-woo-checkout .wc-block-checkout__main{
	grid-column:1;
	min-width:0;
	width:100%;
	max-width:none;
	margin:0;
	padding-right:0;
	float:none;
	left:auto;
	right:auto;
	transform:none;
	box-sizing:border-box;
}
.fc-woo-checkout .wp-block-woocommerce-checkout-totals-block,
.fc-woo-checkout .wc-block-checkout__sidebar{
	grid-column:2;
	min-width:0;
	width:100%;
	max-width:none;
	margin:0;
	float:none;
	left:auto;
	right:auto;
	transform:none;
	box-sizing:border-box;
}
.fc-woo-checkout .wc-block-components-checkout-step{
	margin-bottom:1rem;
	padding:clamp(1.05rem,2vw,1.5rem);
	border:1px solid var(--fc-border);
	border-radius:18px;
	background:#fff;
	box-shadow:0 10px 30px rgba(16,20,22,.035);
}
.fc-woo-checkout .wc-block-components-checkout-step__heading{
	margin-top:0;
	margin-bottom:.85rem;
}
.fc-woo-checkout .wc-block-components-checkout-step__title,
.fc-woo-checkout .wc-block-components-title{
	font-weight:900;
	letter-spacing:-.025em;
	color:var(--fc-text);
}
.fc-woo-checkout .wc-block-components-checkout-step__description,
.fc-woo-checkout .wc-block-components-address-form__address_2-toggle{color:var(--fc-muted)}
.fc-woo-checkout .wc-block-components-text-input input,
.fc-woo-checkout .wc-block-components-text-input textarea,
.fc-woo-checkout .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input,
.fc-woo-checkout .wc-block-components-country-input,
.fc-woo-checkout .wc-block-components-state-input{
	min-height:48px;
	border:1px solid var(--fc-border);
	border-radius:12px;
	background:#fff;
	box-shadow:none;
}
.fc-woo-checkout .wc-block-components-text-input input:focus,
.fc-woo-checkout .wc-block-components-text-input textarea:focus,
.fc-woo-checkout .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input:focus{
	border-color:#101416;
	box-shadow:0 0 0 2px rgba(184,255,36,.28);
}
.fc-woo-checkout .wc-block-components-checkbox .wc-block-components-checkbox__input{border-radius:5px}
.fc-woo-checkout .wc-block-components-radio-control__option{padding:.85rem 0}
.fc-woo-checkout .wp-block-woocommerce-checkout-totals-block,
.fc-woo-checkout .wc-block-checkout__sidebar{
	position:sticky;
	top:calc(var(--fc-header-height,76px) + 1rem);
	align-self:flex-start;
	padding:clamp(1rem,2vw,1.4rem);
	border:1px solid var(--fc-border);
	border-radius:20px;
	background:#fff;
	box-shadow:0 16px 42px rgba(16,20,22,.07);
}
.fc-woo-checkout .wc-block-components-checkout-order-summary__title{
	font-weight:900;
	letter-spacing:-.025em;
}
.fc-woo-checkout .wc-block-components-order-summary-item__image img{border-radius:12px}
.fc-woo-checkout .wc-block-components-product-name{
	font-weight:850;
	color:var(--fc-text);
}
.fc-woo-checkout .wc-block-components-totals-wrapper{border-color:var(--fc-border)}
.fc-woo-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{
	font-size:1.08rem;
	font-weight:900;
}
.fc-woo-checkout .wc-block-components-checkout-place-order-button{
	min-height:54px;
	border:0;
	border-radius:12px;
	background:var(--fc-accent);
	color:#101416;
	font-weight:900;
	transition:transform .16s ease,background-color .16s ease,color .16s ease;
}
.fc-woo-checkout .wc-block-components-checkout-place-order-button:hover{
	transform:translateY(-1px);
	background:#101416;
	color:#fff;
}
.fc-woo-checkout .wc-block-components-notice-banner{border-radius:14px}
.fc-woo-checkout .wc-block-components-validation-error,
.fc-woo-checkout .wc-block-components-form .wc-block-components-validation-error{
	font-size:.82rem;
	font-weight:700;
}
@media (max-width:900px){
	.fc-woo-checkout .fc-page-layout-default{
		width:min(calc(100% - 24px),1440px);
	}
	.fc-woo-checkout .wc-block-components-sidebar-layout{
		grid-template-columns:1fr;
	}
	.fc-woo-checkout .wp-block-woocommerce-checkout-fields-block,
	.fc-woo-checkout .wc-block-checkout__main,
	.fc-woo-checkout .wp-block-woocommerce-checkout-totals-block,
	.fc-woo-checkout .wc-block-checkout__sidebar{
		grid-column:1;
	}
	.fc-woo-checkout .wp-block-woocommerce-checkout-totals-block,
	.fc-woo-checkout .wc-block-checkout__sidebar{
		position:static;
		padding:1rem;
	}
}
@media (max-width:560px){
	.fc-woo-checkout .fc-page-layout-default{
		width:min(calc(100% - 20px),1440px);
	}
	.fc-woo-checkout .wp-block-woocommerce-checkout,
	.fc-woo-checkout .wp-block-woocommerce-checkout.alignwide{
		width:100%;
		max-width:100%;
		margin-left:0;
		margin-right:0;
		transform:none;
	}
	.fc-woo-checkout .wc-block-components-checkout-step{
		padding:1rem;
		border-radius:15px;
	}
	.fc-woo-checkout .wp-block-woocommerce-checkout-totals-block,
	.fc-woo-checkout .wc-block-checkout__sidebar{
		border-radius:16px;
	}
}

/* Account / customer panel — 0.15.10 deterministic 25/75 grid */
.fc-woo-account .fc-page-layout-default{
	width:min(calc(100% - 32px),1240px);
}
.fc-woo-account .fc-page-entry,
.fc-woo-account .fc-entry-content{
	width:100%;
	max-width:none;
}
.fc-woo-account .fc-entry-header{
	margin-bottom:clamp(.85rem,1.8vw,1.25rem);
}
.fc-woo-account .fc-entry-title{
	font-size:clamp(1.9rem,3.4vw,2.8rem);
	letter-spacing:-.024em;
	line-height:1.06;
}

/*
 * Important: do not depend on body.logged-in here.
 * WooCommerce already renders navigation + content only for an authenticated
 * customer. Target the real direct-child structure so the 25/75 layout always
 * activates on My Account endpoints.
 */
.fc-woo-account .fc-entry-content > .woocommerce{
	display:grid;
	grid-template-columns:minmax(190px,1fr) minmax(0,3fr);
	gap:clamp(1rem,2.2vw,1.6rem);
	align-items:start;
	width:100%;
	max-width:1180px;
	margin-left:auto;
	margin-right:auto;
	box-sizing:border-box;
}

.fc-woo-account .fc-entry-content > .woocommerce > .woocommerce-MyAccount-navigation{
	grid-column:1;
	grid-row:1;
	float:none;
	clear:none;
	width:100%;
	max-width:none;
	margin:0;
	box-sizing:border-box;
	position:sticky;
	top:calc(var(--fc-header-height,76px) + 1rem);
	padding:.45rem;
	border:1px solid var(--fc-border);
	border-radius:15px;
	background:#fff;
	box-shadow:0 10px 28px rgba(16,20,22,.05);
}

.fc-woo-account .fc-entry-content > .woocommerce > .woocommerce-MyAccount-content{
	grid-column:2;
	grid-row:1;
	float:none;
	clear:none;
	width:100%;
	max-width:none;
	margin:0;
	min-width:0;
	box-sizing:border-box;
	min-height:360px;
	padding:clamp(1.15rem,2.3vw,1.8rem);
	border:1px solid var(--fc-border);
	border-radius:18px;
	background:#fff;
	box-shadow:0 14px 36px rgba(16,20,22,.05);
}

/* Compact account navigation */
.fc-woo-account .woocommerce-MyAccount-navigation ul{
	list-style:none;
	margin:0;
	padding:0;
}
.fc-woo-account .woocommerce-MyAccount-navigation li{
	margin:0;
	border:0;
}
.fc-woo-account .woocommerce-MyAccount-navigation li+li{
	margin-top:.12rem;
}
.fc-woo-account .woocommerce-MyAccount-navigation a{
	display:flex;
	align-items:center;
	min-height:36px;
	padding:.48rem .62rem;
	border-radius:9px;
	color:var(--fc-text);
	font-size:.88rem;
	line-height:1.18;
	font-weight:760;
	text-decoration:none;
	transition:background-color .16s ease,color .16s ease,transform .16s ease;
}
.fc-woo-account .woocommerce-MyAccount-navigation a:hover{
	background:var(--fc-surface);
	transform:translateX(2px);
}
.fc-woo-account .woocommerce-MyAccount-navigation .is-active a{
	background:var(--fc-accent);
	color:#101416;
	font-weight:900;
}

.fc-woo-account .woocommerce-MyAccount-content > :first-child{margin-top:0}
.fc-woo-account .woocommerce-MyAccount-content > :last-child{margin-bottom:0}
.fc-woo-account .woocommerce-MyAccount-content h2,
.fc-woo-account .woocommerce-MyAccount-content h3{
	letter-spacing:-.025em;
}

/* Empty/account notices should use the whole content column, not shrink to cards */
.fc-woo-account .woocommerce-MyAccount-content .woocommerce-Message,
.fc-woo-account .woocommerce-MyAccount-content .woocommerce-message,
.fc-woo-account .woocommerce-MyAccount-content .woocommerce-info{
	width:100%;
	max-width:none;
	box-sizing:border-box;
	border-radius:12px;
}

/* Orders */
.fc-woo-account .woocommerce-orders-table{
	width:100%;
	border-collapse:separate;
	border-spacing:0;
	overflow:hidden;
	border:1px solid var(--fc-border);
	border-radius:14px;
	background:#fff;
}
.fc-woo-account .woocommerce-orders-table th,
.fc-woo-account .woocommerce-orders-table td{
	padding:.9rem 1rem;
	border:0;
	border-bottom:1px solid var(--fc-border);
	text-align:left;
	vertical-align:middle;
}
.fc-woo-account .woocommerce-orders-table th{
	background:var(--fc-surface);
	font-size:.78rem;
	text-transform:uppercase;
	letter-spacing:.055em;
}
.fc-woo-account .woocommerce-orders-table tr:last-child td{border-bottom:0}
.fc-woo-account .woocommerce-orders-table .button{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:38px;
	padding:.55rem .8rem;
	border-radius:9px;
	background:#101416;
	color:#fff;
	font-weight:850;
}

/* Addresses — 0.15.11: stable two-column cards */
.fc-woo-account .woocommerce-MyAccount-content .woocommerce-Addresses,
.fc-woo-account .woocommerce-MyAccount-content .col2-set.woocommerce-Addresses{
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:1rem;
	width:100%;
	max-width:none;
	margin:1rem 0 0;
	box-sizing:border-box;
}
.fc-woo-account .woocommerce-MyAccount-content .woocommerce-Addresses::before,
.fc-woo-account .woocommerce-MyAccount-content .woocommerce-Addresses::after{
	display:none;
	content:none;
}
.fc-woo-account .woocommerce-MyAccount-content .woocommerce-Address,
.fc-woo-account .woocommerce-MyAccount-content .woocommerce-Addresses .col-1,
.fc-woo-account .woocommerce-MyAccount-content .woocommerce-Addresses .col-2{
	float:none;
	clear:none;
	width:100%;
	max-width:none;
	min-width:0;
	margin:0;
	padding:1.15rem;
	box-sizing:border-box;
	border:1px solid var(--fc-border);
	border-radius:14px;
	background:#fff;
	box-shadow:0 8px 24px rgba(16,20,22,.035);
}
.fc-woo-account .woocommerce-MyAccount-content .woocommerce-Address-title,
.fc-woo-account .woocommerce-MyAccount-content .addresses .title{
	display:flex;
	flex-direction:column;
	align-items:flex-start;
	gap:.65rem;
	width:100%;
	margin:0 0 .9rem;
	box-sizing:border-box;
}
.fc-woo-account .woocommerce-MyAccount-content .woocommerce-Address-title h2,
.fc-woo-account .woocommerce-MyAccount-content .addresses .title h2{
	float:none;
	width:100%;
	margin:0;
	font-size:1.15rem;
	line-height:1.2;
	letter-spacing:-.02em;
	text-align:left;
}
.fc-woo-account .woocommerce-MyAccount-content .woocommerce-Address-title .edit,
.fc-woo-account .woocommerce-MyAccount-content .addresses .title .edit{
	float:none;
	clear:none;
	position:static;
	inset:auto;
	align-self:flex-start;
	display:inline-flex;
	align-items:center;
	max-width:100%;
	min-height:34px;
	padding:.42rem .62rem;
	border-radius:8px;
	background:var(--fc-surface);
	color:var(--fc-text);
	font-size:.82rem;
	font-weight:800;
	line-height:1.15;
	text-decoration:none;
	white-space:normal;
	word-break:normal;
	overflow-wrap:anywhere;
}
.fc-woo-account .woocommerce-MyAccount-content .woocommerce-Address-title .edit:hover,
.fc-woo-account .woocommerce-MyAccount-content .addresses .title .edit:hover{
	background:var(--fc-accent);
	color:#101416;
}
.fc-woo-account .woocommerce-MyAccount-content .woocommerce-Address address{
	margin:0;
	font-style:normal;
	line-height:1.55;
	color:var(--fc-muted);
}
@media (max-width:760px){
	.fc-woo-account .woocommerce-MyAccount-content .woocommerce-Addresses,
	.fc-woo-account .woocommerce-MyAccount-content .col2-set.woocommerce-Addresses{
		grid-template-columns:1fr;
	}
}

/* Account forms */
.fc-woo-account .form-row{margin:0 0 .85rem}
.fc-woo-account .form-row label{
	display:block;
	margin-bottom:.35rem;
	font-size:.84rem;
	font-weight:800;
}
.fc-woo-account .input-text,
.fc-woo-account select,
.fc-woo-account textarea{
	width:100%;
	min-height:48px;
	padding:.7rem .85rem;
	border:1px solid var(--fc-border);
	border-radius:11px;
	background:#fff;
	box-shadow:none;
	box-sizing:border-box;
}
.fc-woo-account .input-text:focus,
.fc-woo-account select:focus,
.fc-woo-account textarea:focus{
	outline:0;
	border-color:#101416;
	box-shadow:0 0 0 2px rgba(184,255,36,.28);
}
.fc-woo-account button.button,
.fc-woo-account a.button{
	min-height:44px;
	padding:.7rem 1rem;
	border:0;
	border-radius:10px;
	background:var(--fc-accent);
	color:#101416;
	font-weight:900;
}

/* Logged-out login stays centered */
.fc-woo-account:not(.logged-in) .fc-entry-content > .woocommerce{
	display:block;
	max-width:560px;
	margin-inline:auto;
	padding:clamp(1.1rem,3vw,1.8rem);
	border:1px solid var(--fc-border);
	border-radius:20px;
	background:#fff;
	box-shadow:0 16px 42px rgba(16,20,22,.06);
}
.fc-woo-account:not(.logged-in) .woocommerce > h2{
	margin-top:0;
	font-size:1.35rem;
}
.fc-woo-account:not(.logged-in) form.login{
	margin:0;
	padding:0;
	border:0;
}
.fc-woo-account:not(.logged-in) .woocommerce-form-login__rememberme{
	display:flex;
	align-items:center;
	gap:.45rem;
	margin-bottom:.8rem;
}
.fc-woo-account:not(.logged-in) .lost_password{margin-bottom:0}

/* Tablet/mobile: navigation above, content full width */
@media (max-width:900px){
	.fc-woo-account .fc-entry-content > .woocommerce{
		grid-template-columns:1fr;
		gap:.75rem;
	}
	.fc-woo-account .fc-entry-content > .woocommerce > .woocommerce-MyAccount-navigation{
		grid-column:1;
		grid-row:1;
		position:static;
		padding:.4rem;
	}
	.fc-woo-account .fc-entry-content > .woocommerce > .woocommerce-MyAccount-content{
		grid-column:1;
		grid-row:2;
	}
	.fc-woo-account .woocommerce-MyAccount-navigation ul{
		display:flex;
		gap:.3rem;
		overflow-x:auto;
		padding-bottom:.1rem;
		scrollbar-width:thin;
	}
	.fc-woo-account .woocommerce-MyAccount-navigation li{
		flex:0 0 auto;
	}
	.fc-woo-account .woocommerce-MyAccount-navigation li+li{margin-top:0}
	.fc-woo-account .woocommerce-MyAccount-navigation a{
		min-height:34px;
		padding:.44rem .58rem;
		font-size:.84rem;
		white-space:nowrap;
	}
}
@media (max-width:680px){
	.fc-woo-account .fc-page-layout-default{
		width:min(calc(100% - 20px),1240px);
	}
	.fc-woo-account .fc-entry-content > .woocommerce > .woocommerce-MyAccount-content{
		padding:1rem;
		border-radius:15px;
	}
	.fc-woo-account .woocommerce-Addresses{
		grid-template-columns:1fr;
	}
	.fc-woo-account .woocommerce-orders-table,
	.fc-woo-account .woocommerce-orders-table tbody,
	.fc-woo-account .woocommerce-orders-table tr,
	.fc-woo-account .woocommerce-orders-table td{
		display:block;
		width:100%;
	}
	.fc-woo-account .woocommerce-orders-table thead{display:none}
	.fc-woo-account .woocommerce-orders-table tr{
		padding:.85rem;
		border-bottom:1px solid var(--fc-border);
	}
	.fc-woo-account .woocommerce-orders-table td{
		padding:.35rem 0;
		border:0;
	}

	.woocommerce ul.products,
	.woocommerce-page ul.products{
		grid-template-columns:repeat(2,minmax(0,1fr));
		gap:.75rem;
	}
	.woocommerce ul.products li.product .woocommerce-loop-product__title{
		padding:.8rem .8rem .25rem;
		font-size:.92rem;
	}
	.fc-product-reference{
		padding:0 .8rem .25rem;
		font-size:.66rem;
	}
	.woocommerce ul.products li.product .price{
		padding:0 .8rem .65rem;
		font-size:.85rem;
	}
	.woocommerce ul.products li.product .button{
		width:calc(100% - 1.6rem);
		margin:.1rem .8rem .8rem;
		font-size:.82rem;
		padding:.6rem .55rem;
	}
	.fc-woo-routes{
		padding:.85rem;
		border-radius:15px;
	}
}
@media (max-width:380px){
	.woocommerce ul.products,
	.woocommerce-page ul.products{
		grid-template-columns:1fr;
	}
}


/* 0.14.1 — Shop header QA.
 * The assigned WooCommerce Shop page already supplies the commercial heading
 * and intro. Remove the oversized archive spacing and normalize that content
 * as the canonical shop hero. */
.fc-woo-shop .fc-woo-shell{
	padding-top:clamp(1.5rem,3vw,2.5rem);
}
.fc-woo-shop .woocommerce .woocommerce-breadcrumb{
	margin-bottom:clamp(1rem,2vw,1.5rem);
}
.fc-woo-shop .woocommerce-products-header{
	display:block;
	margin:0 0 clamp(1.5rem,3vw,2.25rem);
	padding:0 0 clamp(1.5rem,3vw,2.25rem);
	border-bottom:1px solid var(--fc-border);
}
.fc-woo-shop .woocommerce-products-header .page-description{
	margin:0;
}
.fc-woo-shop .woocommerce-products-header .jf-tienda-hero{
	max-width:920px;
	margin:0;
	padding:0!important;
}
.fc-woo-shop .woocommerce-products-header .jf-tienda-hero h1{
	max-width:18ch;
	margin:0 0 .75rem;
	font-size:clamp(2.25rem,4.2vw,3.7rem);
	line-height:1.05;
	letter-spacing:-.025em;
}
.fc-woo-shop .woocommerce-products-header .jf-tienda-hero p{
	max-width:72ch;
	margin:0;
	color:var(--fc-muted);
	font-size:clamp(1rem,1.5vw,1.15rem);
	line-height:1.6;
}
.fc-woo-shop .fc-woo-routes{
	margin-top:0;
}

/* 0.14.2 — product card QA refinement. */
.woocommerce ul.products li.product{
	display:flex;
	flex-direction:column;
	min-width:0;
}
.woocommerce ul.products li.product>a.woocommerce-LoopProduct-link{
	display:flex;
	flex:1 1 auto;
	flex-direction:column;
	min-width:0;
}
.woocommerce ul.products li.product a img{aspect-ratio:1/1;object-fit:cover}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
	padding:1rem 1rem .35rem;
	font-size:1rem;
	font-weight:850;
}
.woocommerce ul.products li.product .price{
	margin-top:auto;
	padding:0 1rem .8rem;
	font-weight:900;
}
.woocommerce ul.products li.product .button{
	width:calc(100% - 2rem);
	margin:.15rem 1rem 1rem;
}
.woocommerce ul.products li.product .button:hover{
	background:#0b1011;
	color:var(--fc-accent);
}
@media (max-width:680px){
	.woocommerce ul.products,
	.woocommerce-page ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
	.woocommerce ul.products li.product .woocommerce-loop-product__title{padding:.8rem .8rem .25rem;font-size:.92rem}
	.woocommerce ul.products li.product .price{padding:0 .8rem .65rem;font-size:.85rem}
	.woocommerce ul.products li.product .button{width:calc(100% - 1.6rem);margin:.1rem .8rem .8rem;font-size:.82rem;padding:.6rem .55rem}
}
@media (max-width:380px){
	.woocommerce ul.products,
	.woocommerce-page ul.products{grid-template-columns:1fr}
}


/* 0.15.14 — keyboard focus reinforcement on WooCommerce controls */
.fc-has-woocommerce input:focus-visible,
.fc-has-woocommerce select:focus-visible,
.fc-has-woocommerce textarea:focus-visible,
.fc-has-woocommerce button:focus-visible,
.fc-has-woocommerce a.button:focus-visible{
	outline:3px solid #101718;
	outline-offset:2px;
	box-shadow:0 0 0 2px #fff;
}


/* 0.15.17 — quotation flow */
.fc-woo-cart .wp-block-woocommerce-cart-order-summary-coupon-form-block,
.fc-woo-cart .wc-block-components-totals-coupon{
	display:none;
}
.fc-woo-cart .wp-block-woocommerce-cart-totals-block::after{
	content:"El precio final se confirma tras revisar cantidades, tallas, disponibilidad y personalización.";
	display:block;
	margin-top:.9rem;
	padding-top:.9rem;
	border-top:1px solid var(--fc-border);
	color:var(--fc-muted);
	font-size:.82rem;
	line-height:1.45;
}
.fc-woo-cart .wc-block-cart__submit-button::after{
	content:"";
}

/* Quote request page */
.fc-quote-request{
	width:100%;
	max-width:1320px;
	margin:0 auto;
}
.fc-quote-grid{
	display:grid;
	grid-template-columns:minmax(300px,.82fr) minmax(0,1.38fr);
	gap:clamp(1rem,2.4vw,2rem);
	align-items:start;
}
.fc-quote-summary,
.fc-quote-form-card,
.fc-quote-success,
.fc-quote-empty{
	border:1px solid var(--fc-border);
	border-radius:20px;
	background:#fff;
	box-shadow:0 14px 38px rgba(16,20,22,.055);
}
.fc-quote-summary{
	position:sticky;
	top:calc(var(--fc-header-height,76px) + 1rem);
	padding:clamp(1rem,2vw,1.35rem);
}
.fc-quote-form-card{
	padding:clamp(1.1rem,2.4vw,1.7rem);
}
.fc-quote-section-heading{
	margin-bottom:1rem;
}
.fc-quote-section-heading h2,
.fc-quote-success h2,
.fc-quote-empty h2{
	margin:.2rem 0 .45rem;
	font-size:clamp(1.45rem,2.4vw,2rem);
	letter-spacing:-.035em;
	line-height:1.05;
}
.fc-quote-section-heading p,
.fc-quote-success p,
.fc-quote-empty p{
	margin:.3rem 0 0;
	color:var(--fc-muted);
	line-height:1.55;
}
.fc-quote-kicker{
	display:block;
	color:var(--fc-muted);
	font-size:.72rem;
	font-weight:900;
	letter-spacing:.09em;
	text-transform:uppercase;
}
.fc-quote-items{
	display:grid;
	gap:.65rem;
}
.fc-quote-item{
	display:grid;
	grid-template-columns:64px minmax(0,1fr) auto;
	gap:.75rem;
	align-items:center;
	padding:.65rem;
	border:1px solid var(--fc-border);
	border-radius:14px;
	background:var(--fc-surface);
}
.fc-quote-item-image img{
	display:block;
	width:64px;
	height:64px;
	object-fit:cover;
	border-radius:10px;
}
.fc-quote-item-copy{
	display:grid;
	gap:.18rem;
	min-width:0;
}
.fc-quote-item-copy strong{
	font-size:.95rem;
	line-height:1.25;
}
.fc-quote-item-copy span{
	color:var(--fc-muted);
	font-size:.76rem;
}
.fc-quote-item-qty{
	display:grid;
	place-items:center;
	min-width:38px;
	height:38px;
	padding:0 .45rem;
	border-radius:10px;
	background:#fff;
	font-weight:900;
}
.fc-quote-price-note{
	display:grid;
	gap:.25rem;
	margin-top:.9rem;
	padding:.9rem;
	border-radius:13px;
	background:#f4ffe3;
	border:1px solid rgba(184,255,36,.55);
}
.fc-quote-price-note strong{
	font-size:.9rem;
}
.fc-quote-price-note span{
	color:var(--fc-muted);
	font-size:.8rem;
	line-height:1.45;
}
.fc-quote-edit-cart{
	display:inline-flex;
	margin-top:.85rem;
	color:var(--fc-text);
	font-size:.82rem;
	font-weight:850;
}
.fc-quote-form{
	display:grid;
	gap:.9rem;
}
.fc-quote-field-row{
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:.85rem;
}
.fc-quote-field{
	display:grid;
	gap:.35rem;
}
.fc-quote-field label{
	font-size:.82rem;
	font-weight:850;
}
.fc-quote-field input,
.fc-quote-field textarea{
	width:100%;
	min-height:48px;
	padding:.72rem .82rem;
	border:1px solid var(--fc-border);
	border-radius:11px;
	background:#fff;
	color:var(--fc-text);
	box-sizing:border-box;
	font:inherit;
}
.fc-quote-field textarea{
	min-height:126px;
	resize:vertical;
}
.fc-quote-field input:focus-visible,
.fc-quote-field textarea:focus-visible{
	outline:3px solid var(--fc-accent);
	outline-offset:2px;
	border-color:#101416;
}
.fc-quote-privacy{
	display:flex;
	align-items:flex-start;
	gap:.55rem;
	padding:.75rem .8rem;
	border-radius:11px;
	background:var(--fc-surface);
	color:var(--fc-muted);
	font-size:.8rem;
	line-height:1.45;
}
.fc-quote-privacy input{
	margin-top:.2rem;
}
.fc-quote-privacy a{
	color:var(--fc-text);
	font-weight:800;
}
.fc-quote-actions{
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:.75rem;
	margin-top:.2rem;
}
.fc-quote-actions .fc-button{
	width:100%;
	min-height:52px;
	justify-content:center;
	text-align:center;
}
.fc-quote-submit-whatsapp{
	background:#101416;
	color:#fff;
}
.fc-quote-submit-whatsapp:hover{
	background:var(--fc-accent);
	color:#101416;
}
.fc-quote-success,
.fc-quote-empty{
	max-width:820px;
	margin:0 auto;
	padding:clamp(1.4rem,4vw,2.5rem);
	text-align:center;
}
.fc-quote-success .fc-button,
.fc-quote-empty .fc-button{
	margin-top:1rem;
}
.fc-quote-error{
	margin-bottom:1rem;
	padding:.9rem 1rem;
	border:1px solid #d13b3b;
	border-radius:12px;
	background:#fff4f4;
	color:#7a1717;
	font-weight:800;
}
.fc-quote-honeypot{
	position:absolute!important;
	left:-9999px!important;
	width:1px!important;
	height:1px!important;
	overflow:hidden!important;
}

@media (max-width:900px){
	.fc-quote-grid{
		grid-template-columns:1fr;
	}
	.fc-quote-summary{
		position:static;
	}
}
@media (max-width:620px){
	.fc-quote-request{
		width:100%;
	}
	.fc-quote-form-card,
	.fc-quote-summary{
		border-radius:16px;
	}
	.fc-quote-field-row,
	.fc-quote-actions{
		grid-template-columns:1fr;
	}
	.fc-quote-item{
		grid-template-columns:56px minmax(0,1fr) auto;
	}
	.fc-quote-item-image img{
		width:56px;
		height:56px;
	}
}
