/* Shared photo-card variant: layout/copy stays intact, no gradient overlay. */
body.home a[href="#times"],
body.home a[href="#best-sellers"],
body.home a[href="#promos"] {
	position: relative;
	display: block;
	overflow: hidden;
	color: #fff !important;
	aspect-ratio: 4 / 5;
	isolation: isolate;
	text-decoration: none !important;
}

body.home a[href="#times"] > img,
body.home a[href="#best-sellers"] > img,
body.home a[href="#promos"] > img {
	display: block;
	width: 100%;
	height: 100% !important;
	object-fit: cover;
	object-position: center 25%;
}

.fofia-home-card-copy {
	position: absolute;
	inset: 0;
	z-index: 1;
	display: flex;
	box-sizing: border-box;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-end;
	gap: 12px;
	padding: clamp(20px, 2vw, 30px);
	color: #fff;
	text-shadow: 0 1px 3px rgba(0, 0, 0, .65);
	pointer-events: none;
	text-align: left;
}

.fofia-home-card-copy__title {
	display: block;
	max-width: 100%;
	font-family: "FOFIA Univers", "Arial Narrow", sans-serif;
	font-size: clamp(26px, 2.35vw, 38px);
	font-weight: 400;
	letter-spacing: .01em;
	line-height: .98;
}

.fofia-home-card-copy__body {
	display: block;
	max-width: 100%;
	font-size: clamp(15px, 1.2vw, 18px);
	font-weight: 400;
	line-height: 1.4;
}

.fofia-home-card-copy__cta {
	display: inline-block;
	padding-bottom: 2px;
	margin-top: 8px;
	border-bottom: 1px solid currentColor;
	font-size: clamp(12px, .95vw, 15px);
	font-weight: 700;
	letter-spacing: .02em;
}

.fofia-home-card-copy__cta::after { content: " →"; margin-left: 8px; }

@media (max-width: 767px) {
	body.home a[href="#times"],
	body.home a[href="#best-sellers"],
	body.home a[href="#promos"] { aspect-ratio: 1 / 1; }
}

/* Canonical main-site card surfaces and interaction. Renderer mappings stay
 * together here; page styles retain only layout, image crops and content. */
:root {
	--fofia-card-border: 1px solid rgba(12, 72, 138, .08);
	--fofia-card-radius: 8px;
	--fofia-card-shadow: 0 4px 16px rgba(22, 42, 62, .07);
	--fofia-card-shadow-hover: 0 12px 28px rgba(22, 42, 62, .13);
	--fofia-card-focus: var(--fofia-ui-accent, #1d47a3);
	--fofia-card-image-occupancy: 82%;
	--fofia-card-title-size: 21px;
	--fofia-card-title-weight: 600;
}
body.home .elementor-element-1317462 > .elementor-container > .elementor-column > .elementor-widget-wrap,
body.fofia-public-buttons .qodef-qi-woo-shortcode-product-list .qodef-e-product-inner,
.fofia-redesign-page .fofia-product-card,
body.fofia-public-buttons .fofia-new-product-card,
body.fofia-public-buttons .fofia-blog-card,
body.fofia-public-buttons .fofia-sheep-highlight,
#qodef-page-inner ul.products li.product .qodef-e-inner {
	box-sizing: border-box;
	background: #fff;
	border: var(--fofia-card-border);
	border-radius: var(--fofia-card-radius);
	box-shadow: var(--fofia-card-shadow) !important;
	min-width: 0;
}
/* Photo and carousel cards retain their existing transparent presentation. */
body.fofia-public-buttons.home a:is([href="#best-sellers"],[href="#promos"]),
body.fofia-public-buttons .fofia-hc-product-link {
	border-radius: var(--fofia-card-radius);
}
/* Native Qi cards use this same layout in the catalogue and component draft. */
body.fofia-public-buttons .qodef-qi-woo-shortcode-product-list .qodef-e-product-inner {
	padding: 16px;
	margin: 0;
	width: 100%;
}
body.fofia-public-buttons .qodef-qi-woo-shortcode-product-list .qodef-e-product-content {
	padding: 20px 4px 12px;
	flex: 1;
}
body.home .elementor-element-1317462 .elementor-widget-image a,
body.fofia-public-buttons .qodef-qi-woo-shortcode-product-list .qodef-e-product-image-holder a,
.fofia-redesign-page .fofia-product-card__image,
#qodef-page-inner ul.products li.product .qodef-e-media-image {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	aspect-ratio: 1 / 1;
	background: #fff;
	overflow: hidden;
}
body.home .elementor-element-1317462 .elementor-widget-image img,
body.fofia-public-buttons .qodef-qi-woo-shortcode-product-list .qodef-e-product-image img,
.fofia-redesign-page .fofia-product-card__image img,
#qodef-page-inner ul.products li.product .qodef-e-media-image img {
	display: block;
	width: var(--fofia-card-image-occupancy) !important;
	height: var(--fofia-card-image-occupancy) !important;
	max-width: var(--fofia-card-image-occupancy) !important;
	max-height: var(--fofia-card-image-occupancy) !important;
	object-fit: contain !important;
	object-position: center;
	margin: auto;
}
#qodef-page-inner ul.products li.product .qodef-e-media-image > a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}
body.home .elementor-element-1317462 h3,
body.fofia-public-buttons .qodef-qi-woo-shortcode-product-list .qodef-e-product-title,
.fofia-redesign-page .fofia-product-card h2,
#qodef-page-inner ul.products li.product .qodef-woo-product-title {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 3.75em;
	font-family: Poppins,Arial,sans-serif;
	font-size: var(--fofia-card-title-size);
	font-weight: var(--fofia-card-title-weight);
	line-height: 1.25;
	text-align: center;
	text-wrap: balance;
}
body.fofia-public-buttons .qodef-qi-woo-shortcode-product-list .qodef-e-product-title a,
#qodef-page-inner ul.products li.product .qodef-woo-product-title a {
	font-family:inherit;
	font-size:inherit;
	font-weight:inherit;
}
body.home .elementor-element-1317462 h3,
body.fofia-public-buttons .qodef-qi-woo-shortcode-product-list .qodef-e-product-title,
#qodef-page-inner ul.products li.product .qodef-woo-product-title {
	margin-block: 8px;
}
body.home .elementor-element-1317462 > .elementor-container > .elementor-column > .elementor-widget-wrap,
body.fofia-public-buttons .qodef-qi-woo-shortcode-product-list .qodef-e-product-inner,
.fofia-redesign-page .fofia-product-card,
#qodef-page-inner ul.products li.product .qodef-e-inner {
	display: flex;
	flex-direction: column;
	height: 100%;
}
.fofia-redesign-page .fofia-product-card { text-align:center; }
.fofia-redesign-page .fofia-product-card :is(.fofia-product-card__code,.fofia-product-card__description) { text-align:center; }
#qodef-page-inner ul.products li.product .qodef-e-content { padding: 16px; flex: 1; }
@media (max-width: 600px) {
	body.home .elementor-element-1317462 h3,
	body.fofia-public-buttons .qodef-qi-woo-shortcode-product-list .qodef-e-product-title,
	.fofia-redesign-page .fofia-product-card h2,
	#qodef-page-inner ul.products li.product .qodef-woo-product-title { --fofia-card-title-size:19px; }
}

/* Approved component R1: unified catalogue-card hover, no layout/data changes.
 * Explicit renderer families avoid selection tiles, swatches and navigation.
 * Production pages and the component draft use this same promoted rule set.
 */
body.fofia-public-buttons :is(
  .fofia-redesign-page .fofia-product-card,
  .qodef-qi-woo-shortcode-product-list .qodef-e-product-inner,
  #qodef-page-inner ul.products li.product .qodef-e-inner,
  .fofia-new-products-list .fofia-new-product-card,
  .fofia-blog-card,
  .fofia-sheep-highlight,
  .fofia-hc-product-link,
  a:has(> .fofia-home-card-copy),
  .elementor-element-1317462 > .elementor-container > .elementor-column > .elementor-widget-wrap
) {
  transition:transform var(--fofia-ui-motion-duration) var(--fofia-ui-motion-ease),box-shadow var(--fofia-ui-motion-duration) var(--fofia-ui-motion-ease)!important;
}
/* Individual scale composes with existing image transforms, including the
 * deliberate crop/translation of the Medium Female related-product image. */
body.fofia-public-buttons :is(
  .fofia-product-card__image img,
  .qodef-qi-woo-shortcode-product-list .qodef-e-product-image img,
  #qodef-page-inner ul.products li.product .qodef-e-media-image img,
  .fofia-new-product-card figure img,
  .fofia-blog-card__image img,
  .fofia-sheep-highlight img,
  .fofia-hc-product-link img,
  a:has(> .fofia-home-card-copy) > img,
  .elementor-element-1317462 .elementor-widget-image img
) {
  scale:1;
  transition:scale var(--fofia-ui-motion-duration) var(--fofia-ui-motion-ease)!important;
}
/* Qi's built-in hover-zoom adds 1.03 on top of the approved image scale.
 * Neutralize only that renderer; Woo's intentional static crops are retained. */
body.fofia-public-buttons .qodef-qi-woo-shortcode-product-list .qodef-e-product-image img {
  transform:none!important;
}
@media(hover:hover) and (pointer:fine) {
  body.fofia-public-buttons :is(
    .fofia-redesign-page .fofia-product-card:hover,
    .qodef-qi-woo-shortcode-product-list .qodef-e-product-inner:hover,
    #qodef-page-inner ul.products li.product .qodef-e-inner:hover,
    .fofia-new-product-card:hover,
    .fofia-blog-card:hover,
    .fofia-sheep-highlight:hover,
    a:has(> .fofia-home-card-copy):hover,
    .elementor-element-1317462 > .elementor-container > .elementor-column:hover > .elementor-widget-wrap
  ) {box-shadow:var(--fofia-card-shadow-hover)!important;}
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
  body.fofia-public-buttons :is(
    .fofia-redesign-page .fofia-product-card:hover,
    .qodef-qi-woo-shortcode-product-list .qodef-e-product-inner:hover,
    #qodef-page-inner ul.products li.product .qodef-e-inner:hover,
    .fofia-new-products-list .fofia-new-product-card:hover,
    .fofia-blog-card:hover,
    .fofia-sheep-highlight:hover,
    .fofia-hc-product-link:hover,
    a:has(> .fofia-home-card-copy):hover,
    .elementor-element-1317462 > .elementor-container > .elementor-column:hover > .elementor-widget-wrap
  ) {transform:translateY(-4px)!important;}
  body.fofia-public-buttons :is(
    .fofia-product-card:hover .fofia-product-card__image img,
    .qodef-qi-woo-shortcode-product-list .qodef-e-product-inner:hover .qodef-e-product-image img,
    #qodef-page-inner ul.products li.product .qodef-e-inner:hover .qodef-e-media-image img,
    .fofia-new-product-card:hover figure img,
    .fofia-blog-card:hover .fofia-blog-card__image img,
    .fofia-sheep-highlight:hover img,
    .fofia-hc-product-link:hover img,
    a:has(> .fofia-home-card-copy):hover > img,
    .elementor-element-1317462 > .elementor-container > .elementor-column:hover .elementor-widget-image img
  ) {scale:1.035;opacity:1!important;}
}
/* Whole-card overlays must trigger the text state as well as direct anchors. */
body.fofia-public-buttons :is(
  .fofia-product-card:focus-visible,
  .qodef-qi-woo-shortcode-product-list .qodef-e-product-inner:focus-within,
  #qodef-page-inner ul.products li.product .qodef-e-inner:focus-within,
  .fofia-new-product-card:focus-within,
  .fofia-blog-card:focus-within,
  .fofia-sheep-highlight:focus-visible,
  .fofia-hc-product-link:focus-visible,
  a:has(> .fofia-home-card-copy):focus-visible,
  .elementor-element-1317462 > .elementor-container > .elementor-column:focus-within > .elementor-widget-wrap
) {outline:2px solid var(--fofia-ui-accent);outline-offset:3px;}
body.fofia-public-buttons :is(
  .fofia-product-card:is(:hover,:focus-visible) :is(h2,h3,h4),
  .qodef-qi-woo-shortcode-product-list .qodef-e-product-inner:is(:hover,:focus-within) .qodef-e-product-title a,
  .qodef-e-product-categories a:is(:hover,:focus-visible),
  #qodef-page-inner ul.products li.product .qodef-e-inner:is(:hover,:focus-within) .qodef-woo-product-title,
  #qodef-page-inner ul.products li.product .qodef-e-inner:is(:hover,:focus-within) .qodef-woo-product-title a,
  .fofia-new-product-card:is(:hover,:focus-within) h2,
  .fofia-blog-card:is(:hover,:focus-within) h3 a,
  .fofia-sheep-highlight:is(:hover,:focus-visible) h3,
  .fofia-hc-product-link:is(:hover,:focus-visible) h3,
  .elementor-element-1317462 > .elementor-container > .elementor-column:is(:hover,:focus-within) h3,
  .elementor-element-1317462 > .elementor-container > .elementor-column:is(:hover,:focus-within) h3 a
) {color:var(--fofia-public-button-blue,#1d47a3)!important;}
@media(prefers-reduced-motion:reduce) {
  body.fofia-public-buttons :is(
    .fofia-redesign-page .fofia-product-card,
    .qodef-qi-woo-shortcode-product-list .qodef-e-product-inner,
    #qodef-page-inner ul.products li.product .qodef-e-inner,
    .fofia-new-products-list .fofia-new-product-card,
    .fofia-blog-card,
    .fofia-sheep-highlight,
    .fofia-hc-product-link,
    a:has(> .fofia-home-card-copy),
    .elementor-element-1317462 > .elementor-container > .elementor-column > .elementor-widget-wrap
  ) {transition:none!important;transform:none!important;}
  body.fofia-public-buttons :is(
    .fofia-product-card__image img,
    .qodef-qi-woo-shortcode-product-list .qodef-e-product-image img,
    #qodef-page-inner ul.products li.product .qodef-e-media-image img,
    .fofia-new-product-card figure img,
    .fofia-blog-card__image img,
    .fofia-sheep-highlight img,
    .fofia-hc-product-link img,
  a:has(> .fofia-home-card-copy) > img,
    .elementor-element-1317462 .elementor-widget-image img
  ) {transition:none!important;scale:1!important;}
}
