/**
 * Public styles for related content.
 */
.fcm-related-section {
	clear: both;
	margin-top: 3rem;
}
.fcm-related-section > h2 {
	margin-bottom: 1.4rem;
}
.fcm-related-shirts ul.products {
	margin-bottom: 0;
}
.fcm-blog-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.5rem;
}
.fcm-blog-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	border: 1px solid rgba(0, 0, 0, 0.12);
	border-radius: 8px;
	overflow: hidden;
	background: #fff;
}
.fcm-blog-card__image {
	display: block;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	background: rgba(0, 0, 0, 0.04);
}
.fcm-blog-card__image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 180ms ease;
}
.fcm-blog-card:hover .fcm-blog-card__image img {
	transform: scale(1.025);
}
.fcm-blog-card__placeholder {
	display: block;
	width: 100%;
	height: 100%;
}
.fcm-blog-card__content {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 1.15rem;
}
.fcm-blog-card__content h3 {
	margin: 0 0 .7rem;
	font-size: 1.15rem;
}
.fcm-blog-card__content h3 a {
	color: inherit;
	text-decoration: none;
}
.fcm-blog-card__content p {
	margin: 0 0 1rem;
}
.fcm-blog-card__link {
	margin-top: auto;
	font-weight: 600;
	text-decoration: none;
}
@media (max-width: 900px) {
	.fcm-blog-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}
@media (max-width: 600px) {
	.fcm-blog-grid {
		grid-template-columns: 1fr;
	}
}

.fcm-match-badge {
	display: inline-flex;
	align-items: center;
	width: fit-content;
	margin: .35rem 0 .6rem;
	padding: .28rem .58rem;
	border-radius: 999px;
	font-size: .72rem;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: .01em;
}

.fcm-match-badge--exact {
	background: #e8f5e9;
	color: #1b5e20;
}

.fcm-match-badge--club {
	background: #fff4e5;
	color: #8a4b08;
}

.fcm-match-badge--none {
	background: #f1f1f1;
	color: #555;
}

.fcm-related-shirts ul.products li.product .fcm-match-badge {
	display: flex;
	margin-left: auto;
	margin-right: auto;
}


/* v0.4.4: consistent WooCommerce product grid on blog pages and custom themes. */
.fcm-related-shirts ul.products,
.entry-content .fcm-related-shirts ul.products,
.single-post .fcm-related-shirts ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1.5rem;
	width: 100%;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.fcm-related-shirts ul.products::before,
.fcm-related-shirts ul.products::after {
	display: none !important;
	content: none !important;
}

.fcm-related-shirts ul.products li.product,
.entry-content .fcm-related-shirts ul.products li.product,
.single-post .fcm-related-shirts ul.products li.product {
	float: none !important;
	clear: none !important;
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
	text-align: left;
}

.fcm-related-shirts ul.products li.product::marker {
	content: "";
	font-size: 0;
}

.fcm-related-shirts ul.products li.product > a,
.fcm-related-shirts ul.products li.product .woocommerce-LoopProduct-link {
	display: block;
	width: 100%;
}

.fcm-related-shirts ul.products li.product img {
	display: block;
	width: 100% !important;
	height: auto !important;
	margin: 0 0 .8rem !important;
}

.fcm-related-shirts ul.products li.product .woocommerce-loop-product__title {
	margin: 0 0 .45rem;
}

.fcm-related-shirts ul.products li.product .button {
	display: inline-flex;
	margin-top: .75rem;
}

.fcm-related-shirts ul.products li.product .fcm-match-badge {
	margin: .35rem 0 .6rem;
}

@media (max-width: 1000px) {
	.fcm-related-shirts ul.products,
	.entry-content .fcm-related-shirts ul.products,
	.single-post .fcm-related-shirts ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 600px) {
	.fcm-related-shirts ul.products,
	.entry-content .fcm-related-shirts ul.products,
	.single-post .fcm-related-shirts ul.products {
		grid-template-columns: 1fr;
	}
}

/* v0.4.5: compact product cards and proportional typography. */

/* Product cards are fully clickable, so the oversized loop buttons are redundant. */
.woocommerce ul.products li.product .button,
.woocommerce-page ul.products li.product .button,
.fcm-related-shirts ul.products li.product .button {
	display: none !important;
}

/* Let the number of columns follow the real width of the content container. */
.fcm-related-shirts ul.products,
.entry-content .fcm-related-shirts ul.products,
.single-post .fcm-related-shirts ul.products {
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 210px), 1fr)) !important;
	align-items: start;
}

/* Prevent theme typography from making related product titles enormous. */
.fcm-related-shirts ul.products li.product .woocommerce-loop-product__title,
.entry-content .fcm-related-shirts ul.products li.product .woocommerce-loop-product__title,
.single-post .fcm-related-shirts ul.products li.product .woocommerce-loop-product__title {
	font-size: clamp(1rem, 1.15vw, 1.25rem) !important;
	line-height: 1.25 !important;
	font-weight: inherit;
	letter-spacing: normal !important;
	word-break: normal;
	overflow-wrap: anywhere;
	margin: 0 0 .55rem !important;
}

.fcm-related-shirts ul.products li.product .price,
.entry-content .fcm-related-shirts ul.products li.product .price,
.single-post .fcm-related-shirts ul.products li.product .price {
	font-size: 1rem !important;
	line-height: 1.35 !important;
}

/* Keep badges readable without influencing the card width. */
.fcm-related-shirts ul.products li.product .fcm-match-badge {
	font-size: .72rem !important;
	line-height: 1.15 !important;
	white-space: normal;
}

@media (max-width: 600px) {
	.fcm-related-shirts ul.products,
	.entry-content .fcm-related-shirts ul.products,
	.single-post .fcm-related-shirts ul.products {
		grid-template-columns: 1fr !important;
	}
}

/* Related shirts: show up to five matches at once; activate carousel from six. */
.fcm-related-heading {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 1.4rem;
}
.fcm-related-heading > h2 {
	margin: 0;
}
.fcm-carousel-controls {
	display: flex;
	flex: 0 0 auto;
	gap: .55rem;
}
.fcm-carousel-button {
	display: inline-grid;
	place-items: center;
	width: 2.65rem;
	height: 2.65rem;
	padding: 0;
	border: 1px solid currentColor;
	border-radius: 999px;
	background: transparent;
	color: inherit;
	font: inherit;
	font-size: 1.25rem;
	line-height: 1;
	cursor: pointer;
}
.fcm-carousel-button:hover:not(:disabled),
.fcm-carousel-button:focus-visible:not(:disabled) {
	background: rgba(127, 127, 127, .16);
}
.fcm-carousel-button:disabled {
	opacity: .3;
	cursor: default;
}
.fcm-related-shirts--carousel .fcm-product-track {
	overflow: hidden;
}
.fcm-related-shirts--carousel ul.products,
.entry-content .fcm-related-shirts--carousel ul.products,
.single-post .fcm-related-shirts--carousel ul.products {
	display: flex !important;
	grid-template-columns: none !important;
	gap: 1.5rem;
	overflow-x: auto;
	overflow-y: hidden;
	scroll-snap-type: x mandatory;
	scroll-behavior: smooth;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
}
.fcm-related-shirts--carousel ul.products::-webkit-scrollbar {
	display: none;
}
.fcm-related-shirts--carousel ul.products li.product,
.entry-content .fcm-related-shirts--carousel ul.products li.product,
.single-post .fcm-related-shirts--carousel ul.products li.product {
	flex: 0 0 calc((100% - 6rem) / 5) !important;
	min-width: 0;
	scroll-snap-align: start;
}
@media (max-width: 1000px) {
	.fcm-related-shirts--carousel ul.products li.product,
	.entry-content .fcm-related-shirts--carousel ul.products li.product,
	.single-post .fcm-related-shirts--carousel ul.products li.product {
		flex-basis: calc((100% - 1.5rem) / 2) !important;
	}
}
@media (max-width: 600px) {
	.fcm-related-heading {
		align-items: flex-end;
	}
	.fcm-related-shirts--carousel ul.products li.product,
	.entry-content .fcm-related-shirts--carousel ul.products li.product,
	.single-post .fcm-related-shirts--carousel ul.products li.product {
		flex-basis: 100% !important;
	}
}


/* v0.4.8: remove product-loop CTA buttons everywhere, including WooCommerce Blocks. */
.woocommerce ul.products li.product a.button,
.woocommerce-page ul.products li.product a.button,
ul.products li.product a.button,
.wc-block-grid__product .wc-block-grid__product-add-to-cart,
.wc-block-grid__product .wp-block-button,
.wp-block-woocommerce-product-button,
.wc-block-components-product-button,
.wc-block-product-template .wp-block-button,
.wc-block-product-template .add_to_cart_button,
.wc-block-product-template .product_type_simple,
.wc-block-product-template .product_type_variable,
.wc-block-product-template .product_type_external,
.wc-block-product-template .product_type_grouped {
	display: none !important;
}

/* v0.6.21: category-filtered blog overview shortcode. */
.fcm-blog-list {
	width: 100%;
	margin: 2rem 0;
}
.fcm-blog-grid {
	display: grid;
	grid-template-columns: repeat(var(--fcm-blog-columns, 3), minmax(0, 1fr));
	gap: clamp(1.25rem, 2.5vw, 2rem);
}
.fcm-blog-card {
	display: flex;
	flex-direction: column;
	min-width: 0;
	margin: 0;
	overflow: hidden;
	border: 1px solid rgba(127, 127, 127, .24);
	border-radius: 14px;
	background: var(--wp--preset--color--base, #fff);
	box-shadow: 0 8px 24px rgba(0, 0, 0, .06);
}
.fcm-blog-card__image {
	display: block;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	background: rgba(127, 127, 127, .12);
}
.fcm-blog-card__image img {
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
	object-fit: cover;
	transition: transform .25s ease;
}
.fcm-blog-card:hover .fcm-blog-card__image img {
	transform: scale(1.025);
}
.fcm-blog-card__placeholder {
	display: block;
	width: 100%;
	height: 100%;
	background: linear-gradient(135deg, rgba(127,127,127,.08), rgba(127,127,127,.18));
}
.fcm-blog-card__content {
	display: flex;
	flex: 1;
	flex-direction: column;
	align-items: flex-start;
	padding: clamp(1rem, 2vw, 1.4rem);
}
.fcm-blog-card__date {
	margin-bottom: .55rem;
	font-size: .82rem;
	opacity: .68;
}
.fcm-blog-card__title {
	margin: 0 0 .75rem;
	font-size: clamp(1.2rem, 2vw, 1.55rem);
	line-height: 1.2;
}
.fcm-blog-card__title a {
	color: inherit;
	text-decoration: none;
}
.fcm-blog-card__title a:hover,
.fcm-blog-card__title a:focus-visible {
	text-decoration: underline;
	text-underline-offset: .15em;
}
.fcm-blog-card__excerpt {
	margin-bottom: 1rem;
	font-size: .96rem;
	line-height: 1.6;
	opacity: .82;
}
.fcm-blog-card__excerpt p {
	margin: 0;
}
.fcm-blog-card__link {
	margin-top: auto;
	font-weight: 700;
	text-decoration: none;
}
.fcm-blog-card__link:hover,
.fcm-blog-card__link:focus-visible {
	text-decoration: underline;
	text-underline-offset: .15em;
}
.fcm-blog-pagination {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: .45rem;
	margin-top: 2rem;
}
.fcm-blog-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.6rem;
	min-height: 2.6rem;
	padding: .45rem .75rem;
	border: 1px solid currentColor;
	border-radius: 999px;
	text-decoration: none;
}
.fcm-blog-pagination .page-numbers.current {
	background: currentColor;
}
.fcm-blog-pagination .page-numbers.current::first-line {
	color: var(--wp--preset--color--base, #fff);
}
.fcm-blog-list__empty,
.fcm-blog-list__notice {
	padding: 1rem 1.2rem;
	border: 1px solid rgba(127, 127, 127, .25);
	border-radius: 10px;
	background: rgba(127, 127, 127, .08);
}
@media (max-width: 900px) {
	.fcm-blog-grid {
		grid-template-columns: repeat(min(var(--fcm-blog-columns, 3), 2), minmax(0, 1fr));
	}
}
@media (max-width: 600px) {
	.fcm-blog-grid {
		grid-template-columns: 1fr;
	}
}


/* v0.6.23 — public verification badge */
.fcm-verification-badge { display: flex; align-items: center; gap: 12px; margin: 16px 0; padding: 13px 15px; border: 1px solid rgba(20,130,70,.28); border-radius: 10px; background: rgba(20,130,70,.07); }
.fcm-verification-badge__icon { display: inline-grid; place-items: center; flex: 0 0 30px; width: 30px; height: 30px; border-radius: 50%; background: #168447; color: #fff; font-weight: 700; }
.fcm-verification-badge strong, .fcm-verification-badge span { display: block; }
.fcm-verification-badge div > span { margin-top: 2px; font-size: .92em; opacity: .78; }


/* v0.6.24 — calmer grouped product information and precise verification icon */
.fcm-verification-badge__icon { display:inline-flex; align-items:center; justify-content:center; line-height:1; padding:0; overflow:hidden; }
.fcm-verification-badge__icon svg { display:block; width:19px; height:19px; fill:currentColor; margin:0; }
.fcm-verification-badge__note { margin-top:5px !important; font-size:.9em !important; opacity:.92 !important; font-style:italic; }
.woocommerce-product-attributes { border:0 !important; border-collapse:separate !important; border-spacing:0 !important; }
.woocommerce-product-attributes th,
.woocommerce-product-attributes td,
.woocommerce-product-attributes tr { border:0 !important; box-shadow:none !important; }
.woocommerce-product-attributes .woocommerce-product-attributes-item__label,
.woocommerce-product-attributes .woocommerce-product-attributes-item__value { padding:7px 10px !important; background:transparent !important; }
.woocommerce-product-attributes tr[class*="woocommerce-product-attributes-item--fcm_group_heading_"] th { padding:22px 10px 7px !important; font-size:1.04em; letter-spacing:.01em; }
.woocommerce-product-attributes tr[class*="woocommerce-product-attributes-item--fcm_group_heading_"] td { display:none !important; }
.woocommerce-product-attributes tr[class*="woocommerce-product-attributes-item--fcm_group_heading_"]:first-child th { padding-top:6px !important; }

/* v0.6.25 — definitive product-information presentation. */
.fcm-verification-badge__icon {
	position: relative !important;
	display: block !important;
	flex: 0 0 32px !important;
	width: 32px !important;
	height: 32px !important;
	padding: 0 !important;
	line-height: 0 !important;
}
.fcm-verification-badge__icon svg {
	position: absolute !important;
	left: 50% !important;
	top: 50% !important;
	width: 18px !important;
	height: 18px !important;
	margin: 0 !important;
	transform: translate(-50%, -50%) !important;
	fill: none !important;
	stroke: currentColor !important;
	stroke-width: 2.4 !important;
	stroke-linecap: round !important;
	stroke-linejoin: round !important;
}
.fcm-verification-badge__content { min-width: 0; }
.fcm-verification-badge__detail {
	display: block !important;
	margin-top: 3px !important;
	font-size: .92em !important;
	font-style: normal !important;
	opacity: .82 !important;
}
.single-product .fcm-verification-badge--under-gallery {
	clear: both;
	width: 100%;
	max-width: none;
	margin: 18px 0 0;
	box-sizing: border-box;
}
.single-product h1.fcm-product-title--full-width {
	display: block;
	width: 100%;
	max-width: none;
	margin: clamp(22px, 3vw, 42px) 0 clamp(24px, 3vw, 44px);
	padding: 0;
	box-sizing: border-box;
	text-align: left;
	line-height: 1.04;
}
.single-product .product.fcm-product-layout--full-title > h1.fcm-product-title--full-width {
	clear: both;
	flex: 0 0 100%;
}
.single-product .fcm-product-info-column > .fcm-product-details:first-child {
	margin-top: 0 !important;
}
.single-product .fcm-product-info-column > .wp-block-woocommerce-product-specifications {
	display: none !important;
	margin: 0 !important;
}
@media (max-width: 640px) {
	.single-product h1.fcm-product-title--full-width {
		margin-top: 18px;
		margin-bottom: 24px;
		font-size: clamp(2rem, 10vw, 3.25rem);
	}
}
.single-product .fcm-photo-role-labeled {
	position: relative !important;
}
.single-product .fcm-photo-role-label {
	position: absolute;
	left: 12px;
	bottom: 12px;
	z-index: 6;
	display: inline-flex;
	align-items: center;
	max-width: calc(100% - 24px);
	padding: 6px 10px;
	border: 1px solid rgba(255,116,23,.72);
	border-radius: 999px;
	background: rgba(8,8,8,.88);
	color: #ff7417;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.2;
	box-sizing: border-box;
	pointer-events: none;
}
.single-product .wc-block-product-gallery-thumbnails__thumbnail .fcm-photo-role-label,
.single-product .flex-control-thumbs li .fcm-photo-role-label {
	left: 4px;
	right: 4px;
	bottom: 4px;
	justify-content: center;
	max-width: none;
	padding: 3px 5px;
	border-radius: 5px;
	font-size: 9px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* Override theme table borders, including themes with highly specific rules. */
.single-product table.woocommerce-product-attributes,
.single-product table.woocommerce-product-attributes > tbody,
.single-product table.woocommerce-product-attributes > tbody > tr,
.single-product table.woocommerce-product-attributes > tbody > tr > th,
.single-product table.woocommerce-product-attributes > tbody > tr > td,
.single-product .woocommerce-product-attributes-item,
.single-product .woocommerce-product-attributes-item__label,
.single-product .woocommerce-product-attributes-item__value {
	border: 0 !important;
	border-top: 0 !important;
	border-right: 0 !important;
	border-bottom: 0 !important;
	border-left: 0 !important;
	outline: 0 !important;
	box-shadow: none !important;
	background-image: none !important;
}
.single-product table.woocommerce-product-attributes {
	border-collapse: collapse !important;
	border-spacing: 0 !important;
}
.single-product .woocommerce-product-attributes-item__label,
.single-product .woocommerce-product-attributes-item__value {
	padding: 7px 10px !important;
	background: transparent !important;
}
.single-product .fcm-attribute-group-heading > th {
	padding: 24px 10px 8px !important;
	font-size: 1.08em !important;
	font-weight: 700 !important;
	text-align: left !important;
	letter-spacing: .01em !important;
}
.single-product .fcm-attribute-group-heading:first-child > th { padding-top: 4px !important; }


/* v0.6.26: theme-agnostic public attribute presentation. */
body.single-product table.fcm-public-attribute-table,
body.single-product table.fcm-public-attribute-table tbody,
body.single-product table.fcm-public-attribute-table tr,
body.single-product table.fcm-public-attribute-table th,
body.single-product table.fcm-public-attribute-table td,
body.single-product .summary table.woocommerce-product-attributes,
body.single-product .summary table.woocommerce-product-attributes tbody,
body.single-product .summary table.woocommerce-product-attributes tr,
body.single-product .summary table.woocommerce-product-attributes th,
body.single-product .summary table.woocommerce-product-attributes td {
	border: none !important;
	border-width: 0 !important;
	border-style: none !important;
	outline: none !important;
	box-shadow: none !important;
	background-image: none !important;
}
body.single-product table.fcm-public-attribute-table { border-collapse: collapse !important; border-spacing: 0 !important; }
body.single-product table.fcm-public-attribute-table th,
body.single-product table.fcm-public-attribute-table td { padding: 8px 10px !important; background: transparent !important; }
body.single-product table.fcm-public-attribute-table .fcm-attribute-group-heading th {
	padding: 26px 10px 8px !important;
	font-size: 1.08em !important;
	font-weight: 700 !important;
	text-align: left !important;
}
body.single-product table.fcm-public-attribute-table .fcm-attribute-group-heading:first-child th { padding-top: 4px !important; }


/* v0.6.27 — one consistent FCM-owned product-details component. */
.single-product .fcm-product-details {
	margin: 1.5rem 0 1.75rem;
	width: 100%;
}
.single-product .fcm-product-details__group + .fcm-product-details__group { margin-top: 1.5rem; }
.single-product .fcm-product-details__heading {
	margin: 0 0 .7rem !important;
	font-size: 1rem !important;
	line-height: 1.3 !important;
	font-weight: 700 !important;
	letter-spacing: 0 !important;
	color: inherit;
}
.single-product .fcm-product-details__list { margin: 0; padding: 0; }
.single-product .fcm-product-details__row {
	display: grid;
	grid-template-columns: minmax(120px, .8fr) minmax(0, 1.2fr);
	gap: 1rem;
	padding: .45rem 0;
	border: 0 !important;
}
.single-product .fcm-product-details__row dt,
.single-product .fcm-product-details__row dd { margin: 0; padding: 0; border: 0 !important; }
.single-product .fcm-product-details__row dt { font-weight: 700; }
.single-product .fcm-product-details__row dd { min-width: 0; }
.single-product table.fcm-legacy-attribute-table,
.single-product table.woocommerce-product-attributes { display: none !important; }
@media (max-width: 520px) {
	.single-product .fcm-product-details__row { grid-template-columns: minmax(105px, .75fr) minmax(0, 1.25fr); gap: .75rem; }
}

/* v0.6.28 — group headings use exactly the same typography as product labels. */
.single-product .fcm-product-details__heading {
	font-family: inherit !important;
	font-size: 1em !important;
	font-style: normal !important;
	font-variant: normal !important;
	font-stretch: normal !important;
	font-weight: 700 !important;
	line-height: inherit !important;
	letter-spacing: inherit !important;
	text-transform: none !important;
}

/* v6.8.17 — screen-wide shirt-number index, direct product links and navigation. */
.fcm-shirt-number-link,
.fcm-product-attribute-link {
	color: inherit;
	font-weight: 700;
	text-decoration: underline;
	text-decoration-thickness: .08em;
	text-underline-offset: .16em;
}
.fcm-shirt-number-link:hover,
.fcm-shirt-number-link:focus-visible,
.fcm-product-attribute-link:hover,
.fcm-product-attribute-link:focus-visible {
	color: var(--wp--preset--color--primary, #b14f16);
}
.fcm-shirt-number-link:focus-visible,
.fcm-product-attribute-link:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 3px;
}
body.fcm-shirt-number-overview-page main,
body.fcm-shirt-number-overview-page .entry-content,
body.fcm-shirt-number-overview-page .wp-block-post-content {
	width: 100% !important;
	max-width: none !important;
}
body.fcm-shirt-number-overview-page .entry-content,
body.fcm-shirt-number-overview-page .wp-block-post-content {
	padding-right: 0 !important;
	padding-left: 0 !important;
}
body .fcm-shirt-numbers.alignfull {
	--fcm-number-present-bg: #dcefe0;
	--fcm-number-present-border: #3b8a52;
	--fcm-number-present-text: #174826;
	--fcm-number-missing-bg: #f5dddd;
	--fcm-number-missing-border: #b95555;
	--fcm-number-missing-text: #702424;
	--fcm-number-leading-bg: #f3d56b;
	--fcm-number-leading-border: #a87800;
	--fcm-number-leading-text: #4d3500;
	position: relative;
	left: auto !important;
	box-sizing: border-box;
	width: min(2200px, calc(100vw - clamp(24px, 4vw, 80px))) !important;
	max-width: none !important;
	margin: clamp(.75rem, 2vh, 1.5rem) auto 2rem !important;
	transform: none !important;
}
.fcm-shirt-numbers__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: clamp(1rem, 3vw, 3rem);
	margin-bottom: clamp(.65rem, 1.4vh, 1rem);
	padding: clamp(.8rem, 1.3vw, 1.25rem) clamp(1rem, 1.8vw, 1.75rem);
	border: 1px solid rgba(127,127,127,.24);
	border-radius: 12px;
	background: rgba(127,127,127,.07);
}
.fcm-shirt-numbers__intro {
	min-width: 0;
}
.fcm-shirt-numbers__eyebrow {
	display: block;
	margin-bottom: .22rem;
	font-size: clamp(.65rem, .7vw, .78rem);
	font-weight: 800;
	line-height: 1;
	letter-spacing: .14em;
	opacity: .7;
	text-transform: uppercase;
}
.fcm-shirt-numbers__title-row {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: .45rem .75rem;
}
.fcm-shirt-numbers .fcm-shirt-numbers__header h2 {
	margin: 0 !important;
	font-family: inherit !important;
	font-size: clamp(1.7rem, 2.45vw, 3rem) !important;
	font-style: normal !important;
	font-weight: 800 !important;
	line-height: .98 !important;
	letter-spacing: -.025em !important;
	text-transform: none !important;
}
.fcm-shirt-numbers__range {
	display: inline-flex;
	align-items: center;
	min-height: 1.8rem;
	padding: .22rem .6rem;
	border: 1px solid currentColor;
	border-radius: 999px;
	font-size: clamp(.7rem, .78vw, .86rem);
	font-weight: 800;
	line-height: 1;
	white-space: nowrap;
	opacity: .86;
}
.fcm-shirt-numbers__summary {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: .3rem .55rem;
	margin: .42rem 0 0 !important;
	font-size: clamp(.74rem, .82vw, .9rem);
	line-height: 1.25;
	opacity: .78;
}
.fcm-shirt-numbers__summary strong {
	font-weight: 700;
}
.fcm-shirt-numbers__actions {
	display: flex;
	flex-wrap: wrap;
	gap: .45rem;
	margin-top: .65rem;
}
.fcm-shirt-numbers__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .38rem;
	min-height: 2rem;
	padding: .42rem .72rem;
	border: 1px solid currentColor;
	border-radius: 999px;
	background: transparent;
	color: inherit !important;
	font-size: clamp(.68rem, .76vw, .82rem);
	font-weight: 800;
	line-height: 1;
	text-decoration: none !important;
	transition: background-color .16s ease, color .16s ease, transform .16s ease;
}
.fcm-shirt-numbers__button:hover {
	background: currentColor;
	color: var(--wp--preset--color--base, #fff) !important;
	transform: translateY(-1px);
}
.fcm-shirt-numbers__button:focus-visible {
	outline: 3px solid currentColor;
	outline-offset: 2px;
}
.fcm-shirt-numbers__button--back {
	background: rgba(127,127,127,.1);
}
.fcm-shirt-numbers__legend {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: .4rem;
	max-width: 34rem;
	font-size: clamp(.68rem, .74vw, .8rem);
	line-height: 1.25;
}
.fcm-shirt-numbers__legend-title {
	flex: 0 0 100%;
	margin: 0 0 .05rem;
	font-size: .68rem;
	letter-spacing: .1em;
	opacity: .58;
	text-align: right;
	text-transform: uppercase;
}
.fcm-shirt-numbers__legend span {
	display: inline-flex;
	align-items: center;
	gap: .3rem;
	padding: .34rem .5rem;
	border: 1px solid rgba(127,127,127,.22);
	border-radius: 999px;
	background: rgba(127,127,127,.06);
	white-space: nowrap;
}
.fcm-shirt-numbers__legend i {
	display: inline-block;
	flex: 0 0 .7rem;
	width: .7rem;
	height: .7rem;
	border: 1px solid;
	border-radius: 3px;
}
.fcm-shirt-numbers__legend .is-present {
	background: var(--fcm-number-present-bg);
	border-color: var(--fcm-number-present-border);
}
.fcm-shirt-numbers__legend .is-missing {
	background: var(--fcm-number-missing-bg);
	border-color: var(--fcm-number-missing-border);
}
.fcm-shirt-numbers__legend .is-leading {
	background: var(--fcm-number-leading-bg);
	border-color: var(--fcm-number-leading-border);
}
.fcm-shirt-numbers__grid {
	display: grid;
	grid-template-columns: repeat(20, minmax(0, 1fr));
	gap: clamp(4px, .38vw, 8px);
}
.fcm-shirt-number-tile {
	display: flex;
	min-width: 0;
	min-height: clamp(56px, 4.1vw, 68px);
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: .1rem;
	padding: .28rem .12rem;
	border: 1px solid;
	border-radius: 6px;
	text-align: center;
	scroll-margin-top: 8rem;
}
a.fcm-shirt-number-tile {
	position: relative;
	color: inherit;
	cursor: pointer;
	text-decoration: none !important;
	transition: filter .16s ease, transform .16s ease, box-shadow .16s ease;
}
a.fcm-shirt-number-tile:hover {
	z-index: 1;
	filter: brightness(1.045);
	transform: translateY(-2px);
	box-shadow: 0 6px 16px rgba(0,0,0,.18);
}
a.fcm-shirt-number-tile:focus-visible {
	z-index: 2;
	outline: 3px solid currentColor;
	outline-offset: 2px;
}
.fcm-shirt-number-tile strong {
	font-size: clamp(.95rem, 1.18vw, 1.35rem);
	line-height: 1;
}
.fcm-shirt-number-tile span {
	max-width: 100%;
	font-size: clamp(.5rem, .56vw, .64rem);
	line-height: 1.04;
}
.fcm-shirt-number-tile.is-present {
	background: var(--fcm-number-present-bg);
	border-color: var(--fcm-number-present-border);
	color: var(--fcm-number-present-text);
}
.fcm-shirt-number-tile.is-missing {
	background: var(--fcm-number-missing-bg);
	border-color: var(--fcm-number-missing-border);
	color: var(--fcm-number-missing-text);
}
.fcm-shirt-number-tile.is-leading {
	background: var(--fcm-number-leading-bg);
	border-color: var(--fcm-number-leading-border);
	color: var(--fcm-number-leading-text);
	box-shadow: inset 0 0 0 1px rgba(255,255,255,.4), 0 2px 7px rgba(115,79,0,.18);
}
.fcm-shirt-number-tile:target {
	outline: 3px solid currentColor;
	outline-offset: 3px;
}
.fcm-shirt-number-tile--invalid strong {
	max-width: 9em;
	font-size: clamp(.55rem, .62vw, .7rem);
	line-height: 1.05;
	overflow-wrap: anywhere;
}
.fcm-shirt-numbers__notice {
	padding: 1rem;
	border-left: 4px solid #b95555;
	background: #f5dddd;
}
@media (max-width: 1180px) {
	.fcm-shirt-numbers__grid {
		grid-template-columns: repeat(10, minmax(0, 1fr));
		gap: 7px;
	}
	.fcm-shirt-number-tile {
		min-height: 58px;
	}
	.fcm-shirt-number-tile strong {
		font-size: clamp(1rem, 2vw, 1.3rem);
	}
	.fcm-shirt-number-tile span {
		font-size: clamp(.58rem, 1vw, .68rem);
	}
}
@media (max-width: 900px) {
	.fcm-shirt-numbers__header {
		align-items: flex-start;
		flex-direction: column;
		gap: .8rem;
	}
	.fcm-shirt-numbers__legend {
		justify-content: flex-start;
	}
	.fcm-shirt-numbers__legend-title {
		text-align: left;
	}
}
@media (max-width: 720px) {
	.fcm-shirt-numbers {
		width: calc(100vw - 24px) !important;
	}
	.fcm-shirt-numbers__grid {
		grid-template-columns: repeat(5, minmax(0, 1fr));
	}
}
@media (max-width: 480px) {
	.fcm-shirt-numbers__header {
		padding: .85rem;
	}
	.fcm-shirt-numbers .fcm-shirt-numbers__header h2 {
		font-size: clamp(1.45rem, 8vw, 2rem) !important;
	}
	.fcm-shirt-numbers__summary {
		align-items: flex-start;
		flex-direction: column;
		gap: .12rem;
	}
	.fcm-shirt-numbers__summary > span {
		display: none;
	}
	.fcm-shirt-numbers__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 6px;
	}
	.fcm-shirt-number-tile {
		min-height: 59px;
		padding-inline: .12rem;
	}
}
@media (max-width: 340px) {
	.fcm-shirt-numbers__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* v6.8.22 — collapsed contact forms in Fred's site style. */
.fcm-contact-panel,
.fcm-contact-panel *,
.fcm-contact-panel *::before,
.fcm-contact-panel *::after {
	box-sizing: border-box;
}
.fcm-contact-panel {
	--fcm-contact-accent: var(--wp--preset--color--accent-1, var(--wp--preset--color--primary, #f47721));
	--fcm-contact-panel: #0d0d0d;
	--fcm-contact-field: #151515;
	width: min(100%, 960px);
	margin: clamp(1.5rem, 4vw, 3.5rem) auto;
	border: 1px solid rgba(255,255,255,.16);
	background: var(--fcm-contact-panel);
	color: #fff;
}
.fcm-contact-panel__toggle {
	display: flex;
	align-items: center;
	gap: 1rem;
	min-height: 58px;
	padding: .9rem clamp(1rem, 2vw, 1.35rem);
	color: var(--fcm-contact-accent);
	font-size: clamp(.95rem, 1.15vw, 1.08rem);
	font-weight: 750;
	letter-spacing: .01em;
	list-style: none;
	cursor: pointer;
	user-select: none;
}
.fcm-contact-panel__toggle::-webkit-details-marker {
	display: none;
}
.fcm-contact-panel__toggle:hover {
	background: rgba(255,255,255,.035);
}
.fcm-contact-panel__toggle:focus-visible {
	outline: 2px solid var(--fcm-contact-accent);
	outline-offset: -2px;
}
.fcm-contact-panel__arrow {
	width: .72rem;
	height: .72rem;
	margin-left: auto;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: rotate(45deg) translateY(-2px);
	transition: transform .2s ease;
}
.fcm-contact-panel[open] .fcm-contact-panel__arrow {
	transform: rotate(225deg) translate(-2px,-2px);
}
.fcm-contact-panel[open] .fcm-contact-panel__toggle {
	border-bottom: 1px solid rgba(255,255,255,.13);
}
.fcm-contact-panel > form {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: clamp(1rem, 3vw, 2rem) !important;
	background: var(--fcm-contact-panel) !important;
}
.fcm-contact-panel .wp-block-jetpack-contact-form {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: clamp(.9rem, 1.8vw, 1.25rem) !important;
	width: 100%;
}
.fcm-contact-panel :is(
	.wp-block-jetpack-field-textarea,
	.grunion-field-textarea-wrap,
	.grunion-field-checkbox-multiple-wrap,
	.grunion-field-radio-wrap,
	.grunion-field-consent-wrap,
	.wp-block-button,
	.contact-submit,
	.form-submit
) {
	grid-column: 1 / -1;
}
.fcm-contact-panel :is(.grunion-field-wrap, .wp-block-jetpack-input-wrap, .wp-block-button) {
	width: 100%;
	margin: 0 !important;
}
.fcm-contact-panel .grunion-field-wrap {
	display: flex !important;
	flex-direction: column !important;
	gap: 0 !important;
}
.fcm-contact-panel .grunion-field-wrap > br,
.fcm-contact-panel .grunion-field-wrap > p:empty {
	display: none !important;
	margin: 0 !important;
	padding: 0 !important;
}
.fcm-contact-panel .grunion-field-wrap > :is(input, select, textarea) {
	display: block !important;
}
.fcm-contact-panel label,
.fcm-contact-panel legend {
	display: block;
	margin: 0 0 .32rem !important;
	color: rgba(255,255,255,.82) !important;
	font-size: .82rem !important;
	font-weight: 650 !important;
	line-height: 1.35;
}
.fcm-contact-panel .grunion-label-required {
	margin-left: .3rem;
	color: var(--fcm-contact-accent);
	font-size: .72rem;
	font-weight: 600;
}
.fcm-contact-panel :is(
	input[type="text"],
	input[type="email"],
	input[type="tel"],
	input[type="url"],
	input[type="number"],
	input[type="date"],
	input[type="search"],
	select,
	textarea
) {
	width: 100% !important;
	min-height: 48px !important;
	margin: 0 !important;
	padding: .72rem .82rem !important;
	border: 1px solid rgba(255,255,255,.24) !important;
	border-radius: 0 !important;
	background: var(--fcm-contact-field) !important;
	color: #fff !important;
	font: inherit !important;
	line-height: 1.4 !important;
	box-shadow: none !important;
}
.fcm-contact-panel textarea {
	min-height: 165px !important;
	resize: vertical;
}
.fcm-contact-panel :is(input, select, textarea):focus {
	border-color: var(--fcm-contact-accent) !important;
	outline: 2px solid color-mix(in srgb, var(--fcm-contact-accent) 28%, transparent) !important;
	outline-offset: 0 !important;
}
.fcm-contact-panel :is(input, textarea)::placeholder {
	color: rgba(255,255,255,.46);
}
.fcm-contact-panel :is(
	button[type="submit"],
	input[type="submit"],
	.wp-block-button__link
) {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-height: 48px !important;
	margin: .2rem 0 0 !important;
	padding: .75rem 1.25rem !important;
	border: 1px solid var(--fcm-contact-accent) !important;
	border-radius: 0 !important;
	background: var(--fcm-contact-accent) !important;
	color: #050505 !important;
	font: inherit !important;
	font-weight: 750 !important;
	line-height: 1.1 !important;
	text-decoration: none !important;
	cursor: pointer;
	box-shadow: none !important;
}
.fcm-contact-panel :is(button[type="submit"], input[type="submit"], .wp-block-button__link):hover,
.fcm-contact-panel :is(button[type="submit"], input[type="submit"], .wp-block-button__link):focus-visible {
	border-color: #fff !important;
	background: #fff !important;
	color: #050505 !important;
	outline: none !important;
}
.fcm-contact-panel :is(.contact-form__input-error, .wpforms-error, .validation_error) {
	color: #ff9d9d !important;
	font-size: .78rem;
}
@media (max-width: 640px) {
	.fcm-contact-panel .wp-block-jetpack-contact-form {
		grid-template-columns: 1fr;
	}
	.fcm-contact-panel :is(.grunion-field-wrap, .wp-block-jetpack-input-wrap, .wp-block-button) {
		grid-column: 1;
	}
}
@media (prefers-reduced-motion: reduce) {
	.fcm-contact-panel__arrow {
		transition: none;
	}
}

/* v0.6.31 — one card system for blogs, products and collection grids. */
:root {
	--fcm-card-min-width: 210px;
	--fcm-card-gap: clamp(1rem, 2vw, 1.5rem);
	--fcm-card-radius: 8px;
	--fcm-card-image-ratio: 1 / 1;
	--fcm-card-title-lines: 3;
	--fcm-card-title-line-height: 1.25;
}

/* All FCM blog contexts use the same responsive grid and card dimensions. */
.fcm-blog-list .fcm-blog-grid,
.fcm-related-blogs .fcm-blog-grid,
.fcm-related-section .fcm-blog-grid {
	display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--fcm-card-min-width)), 1fr)) !important;
	gap: var(--fcm-card-gap) !important;
	align-items: stretch;
}
.fcm-blog-card {
	position: relative;
	display: flex !important;
	min-width: 0;
	height: 100%;
	margin: 0 !important;
	padding: 0 !important;
	border: 1px solid rgba(127,127,127,.24) !important;
	border-radius: var(--fcm-card-radius) !important;
	overflow: hidden;
	background: var(--wp--preset--color--base, #fff);
	box-shadow: 0 1px 2px rgba(0,0,0,.04);
	transition: transform .18s ease, box-shadow .18s ease;
}
.fcm-blog-card:hover,
.fcm-blog-card:focus-within {
	transform: translateY(-2px);
	box-shadow: 0 7px 20px rgba(0,0,0,.10);
}
.fcm-card-link {
	display: flex !important;
	flex: 1;
	flex-direction: column;
	min-width: 0;
	color: inherit !important;
	text-decoration: none !important;
}
.fcm-card-link:focus-visible {
	outline: 3px solid currentColor;
	outline-offset: -3px;
}
.fcm-blog-card__image {
	display: block !important;
	width: 100%;
	aspect-ratio: var(--fcm-card-image-ratio) !important;
	overflow: hidden;
	background: rgba(127,127,127,.10);
}
.fcm-blog-card__image img,
.fcm-blog-card__placeholder {
	display: block;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	object-fit: cover !important;
}
.fcm-blog-card__content {
	display: flex !important;
	flex: 1;
	flex-direction: column;
	align-items: flex-start;
	min-width: 0;
	padding: 1rem !important;
}
.fcm-blog-card__title,
.fcm-blog-card__content h3,
.fcm-blog-card__content h2 {
	display: -webkit-box;
	height: calc(var(--fcm-card-title-lines) * 1em * var(--fcm-card-title-line-height));
	min-height: calc(var(--fcm-card-title-lines) * 1em * var(--fcm-card-title-line-height));
	margin: 0 0 .65rem !important;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: var(--fcm-card-title-lines);
	font-size: clamp(1rem, 1.15vw, 1.2rem) !important;
	font-weight: inherit;
	line-height: var(--fcm-card-title-line-height) !important;
	letter-spacing: normal !important;
}
.fcm-blog-card__excerpt {
	display: -webkit-box;
	margin: 0 0 .8rem !important;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	font-size: .94rem;
	line-height: 1.5;
	opacity: .82;
}
.fcm-blog-card__link { margin-top: auto !important; font-weight: 700; }

/* Classic WooCommerce and Woo blocks share the same responsive grid. */
.woocommerce ul.products,
.woocommerce-page ul.products,
.fcm-related-shirts ul.products,
.wc-block-grid__products,
.wp-block-woocommerce-product-collection .wc-block-product-template,
.wp-block-post-template.is-layout-grid:has(.wc-block-components-product-image) {
	display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--fcm-card-min-width)), 1fr)) !important;
	gap: var(--fcm-card-gap) !important;
	align-items: stretch !important;
}
.woocommerce ul.products::before,
.woocommerce ul.products::after,
.wc-block-grid__products::before,
.wc-block-grid__products::after { display: none !important; content: none !important; }

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
.fcm-related-shirts ul.products li.product,
.wc-block-grid__product,
.wp-block-woocommerce-product-collection .wc-block-product {
	position: relative;
	display: flex !important;
	flex-direction: column;
	float: none !important;
	clear: none !important;
	width: auto !important;
	min-width: 0;
	height: 100%;
	margin: 0 !important;
	padding: 0 0 1rem !important;
	border: 0 !important;
	text-align: left !important;
	cursor: pointer;
}
.woocommerce ul.products li.product > a,
.woocommerce ul.products li.product .woocommerce-LoopProduct-link,
.wc-block-grid__product-link,
.wp-block-woocommerce-product-collection .wc-block-components-product-image > a {
	display: flex !important;
	flex: 1;
	flex-direction: column;
	width: 100%;
	min-width: 0;
	color: inherit;
	text-decoration: none;
}
.woocommerce ul.products li.product img,
.woocommerce-page ul.products li.product img,
.fcm-related-shirts ul.products li.product img,
.wc-block-grid__product-image img,
.wp-block-woocommerce-product-collection .wc-block-components-product-image img {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	aspect-ratio: var(--fcm-card-image-ratio) !important;
	margin: 0 0 .8rem !important;
	object-fit: cover !important;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title,
.fcm-related-shirts ul.products li.product .woocommerce-loop-product__title,
.wc-block-grid__product-title,
.wp-block-woocommerce-product-collection .wp-block-post-title {
	display: -webkit-box !important;
	height: calc(var(--fcm-card-title-lines) * 1em * var(--fcm-card-title-line-height));
	min-height: calc(var(--fcm-card-title-lines) * 1em * var(--fcm-card-title-line-height));
	margin: 0 0 .5rem !important;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: var(--fcm-card-title-lines);
	font-size: clamp(1rem, 1.15vw, 1.2rem) !important;
	line-height: var(--fcm-card-title-line-height) !important;
	letter-spacing: normal !important;
}
.fcm-related-shirts ul.products li.product .fcm-match-badge { margin: .35rem 0 .6rem !important; }

@media (max-width: 520px) {
	:root { --fcm-card-min-width: 145px; --fcm-card-gap: .9rem; }
	.fcm-blog-card__content { padding: .85rem !important; }
}

/* v0.6.32 — keep one-card grids at the normal card width instead of stretching. */
:root {
	--fcm-card-max-width: 260px;
}

.fcm-blog-list .fcm-blog-grid,
.fcm-related-blogs .fcm-blog-grid,
.fcm-related-section .fcm-blog-grid,
.woocommerce ul.products,
.woocommerce-page ul.products,
.fcm-related-shirts ul.products,
.wc-block-grid__products,
.wp-block-woocommerce-product-collection .wc-block-product-template,
.wp-block-post-template.is-layout-grid:has(.wc-block-components-product-image) {
	grid-template-columns: repeat(auto-fill, minmax(min(100%, var(--fcm-card-min-width)), var(--fcm-card-max-width))) !important;
	justify-content: start !important;
}

@media (max-width: 520px) {
	:root { --fcm-card-max-width: 210px; }
}


/* v6.8.0 — prevent sparse grids from stretching cards to full width. */
.fcm-blog-grid > :only-child,
.woocommerce ul.products > li.product:only-child,
.woocommerce-page ul.products > li.product:only-child,
.fcm-related-shirts ul.products > li.product:only-child,
.wc-block-grid__products > .wc-block-grid__product:only-child,
.wp-block-woocommerce-product-collection .wc-block-product-template > .wc-block-product:only-child {
	width: min(100%, var(--fcm-card-max-width)) !important;
	max-width: var(--fcm-card-max-width) !important;
	justify-self: start !important;
}

.fcm-blog-grid,
.woocommerce ul.products,
.woocommerce-page ul.products,
.fcm-related-shirts ul.products,
.wc-block-grid__products,
.wp-block-woocommerce-product-collection .wc-block-product-template {
	align-content: start !important;
}

/* v6.8.1 — restore the full collection grid for WooCommerce Product Collection blocks. */
.wp-block-woocommerce-product-collection,
.wp-block-woocommerce-product-collection > div,
.wp-block-woocommerce-product-collection .wc-block-product-template,
.wp-block-woocommerce-product-collection ul.wc-block-product-template,
.wp-block-woocommerce-product-collection .wp-block-woocommerce-product-template,
.woocommerce .wp-block-woocommerce-product-collection,
.woocommerce-page .wp-block-woocommerce-product-collection {
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	box-sizing: border-box !important;
}

.wp-block-woocommerce-product-collection .wc-block-product-template,
ul.wc-block-product-template,
.wp-block-woocommerce-product-template,
ul.wp-block-woocommerce-product-template {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)) !important;
	gap: var(--fcm-card-gap) !important;
	align-items: stretch !important;
	justify-content: stretch !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.wp-block-woocommerce-product-collection .wc-block-product,
.wp-block-woocommerce-product-collection li.wc-block-product,
ul.wc-block-product-template > li,
ul.wp-block-woocommerce-product-template > li {
	display: flex !important;
	flex-direction: column !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 0 1rem !important;
	box-sizing: border-box !important;
}

.wp-block-woocommerce-product-collection .wc-block-components-product-image,
.wp-block-woocommerce-product-collection .wc-block-components-product-image > a,
.wp-block-woocommerce-product-collection .wc-block-components-product-image img,
.wp-block-woocommerce-product-collection .wc-block-components-product-image__image,
.wp-block-woocommerce-product-collection .wc-block-components-product-image .wc-block-components-product-image__placeholder,
.wp-block-woocommerce-product-collection .wc-block-components-product-image svg {
	width: 100% !important;
	max-width: none !important;
	box-sizing: border-box !important;
}

.wp-block-woocommerce-product-collection .wc-block-components-product-image {
	aspect-ratio: var(--fcm-card-image-ratio) !important;
	margin: 0 0 .8rem !important;
	overflow: hidden !important;
}

.wp-block-woocommerce-product-collection .wc-block-components-product-image > a,
.wp-block-woocommerce-product-collection .wc-block-components-product-image img,
.wp-block-woocommerce-product-collection .wc-block-components-product-image__image,
.wp-block-woocommerce-product-collection .wc-block-components-product-image .wc-block-components-product-image__placeholder,
.wp-block-woocommerce-product-collection .wc-block-components-product-image svg {
	display: block !important;
	height: 100% !important;
	aspect-ratio: var(--fcm-card-image-ratio) !important;
	object-fit: cover !important;
}

.wp-block-woocommerce-product-collection .wp-block-post-title,
.wp-block-woocommerce-product-collection .wc-block-components-product-title {
	display: -webkit-box !important;
	height: calc(var(--fcm-card-title-lines) * 1em * var(--fcm-card-title-line-height)) !important;
	min-height: calc(var(--fcm-card-title-lines) * 1em * var(--fcm-card-title-line-height)) !important;
	margin: 0 0 .5rem !important;
	overflow: hidden !important;
	-webkit-box-orient: vertical !important;
	-webkit-line-clamp: var(--fcm-card-title-lines) !important;
	line-height: var(--fcm-card-title-line-height) !important;
}

@media (min-width: 1100px) {
	.wp-block-woocommerce-product-collection .wc-block-product-template,
	ul.wc-block-product-template,
	.wp-block-woocommerce-product-template,
	ul.wp-block-woocommerce-product-template {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}
}

@media (min-width: 640px) and (max-width: 1099px) {
	.wp-block-woocommerce-product-collection .wc-block-product-template,
	ul.wc-block-product-template,
	.wp-block-woocommerce-product-template,
	ul.wp-block-woocommerce-product-template {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 639px) {
	.wp-block-woocommerce-product-collection .wc-block-product-template,
	ul.wc-block-product-template,
	.wp-block-woocommerce-product-template,
	ul.wp-block-woocommerce-product-template {
		grid-template-columns: 1fr !important;
	}
}

/* v6.12.15 — context-aware shirt-number index scopes. */
.fcm-shirt-numbers__current-view {
	margin: .35rem 0 .75rem;
	font-size: .9rem;
	font-weight: 700;
	color: var(--fcm-accent, #ff7417);
}
.fcm-shirt-numbers__scope-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: .55rem;
	margin: 0 0 1rem;
}
.fcm-shirt-numbers__scope-tab {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: .65rem 1rem;
	border: 1px solid rgba(255,116,23,.65);
	border-radius: 999px;
	background: transparent;
	color: inherit;
	font-size: .86rem;
	font-weight: 800;
	line-height: 1;
	text-decoration: none !important;
	transition: background .18s ease, color .18s ease, transform .18s ease;
}
.fcm-shirt-numbers__scope-tab:hover,
.fcm-shirt-numbers__scope-tab:focus-visible,
.fcm-shirt-numbers__scope-tab.is-active {
	background: var(--fcm-accent, #ff7417);
	border-color: var(--fcm-accent, #ff7417);
	color: #111;
}
.fcm-shirt-numbers__scope-tab:hover { transform: translateY(-1px); }
@media (max-width: 700px) {
	.fcm-shirt-numbers__scope-tabs { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); }
	.fcm-shirt-numbers__scope-tab { width: 100%; padding-inline: .65rem; }
}


/* v8.10.16: canonical blog-card layout used everywhere in FCM. */
.fcm-blog-list,
.fcm-related-blogs,
.fcm-related-section.fcm-related-blogs,
.fcm-latest-collection-blogs {
	box-sizing: border-box !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
}
.fcm-blog-list .fcm-blog-grid,
.fcm-related-blogs .fcm-blog-grid,
.fcm-related-section .fcm-blog-grid,
.fcm-latest-collection-blogs .fcm-blog-grid {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: clamp(16px, 2vw, 28px) !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	align-items: stretch !important;
}
.fcm-blog-grid > .fcm-blog-card,
.fcm-blog-grid > article.fcm-blog-card {
	box-sizing: border-box !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	height: 100% !important;
	margin: 0 !important;
}
.fcm-blog-card > .fcm-card-link {
	display: flex !important;
	flex-direction: column !important;
	width: 100% !important;
	height: 100% !important;
	min-width: 0 !important;
}
.fcm-blog-card__image {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	aspect-ratio: 16 / 9 !important;
	height: auto !important;
	overflow: hidden !important;
	background: #0b0b0b !important;
}
.fcm-blog-card__image img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	max-width: 100% !important;
	object-fit: contain !important;
	object-position: center center !important;
	transform: none !important;
}
.fcm-blog-card:hover .fcm-blog-card__image img,
.fcm-blog-card:focus-within .fcm-blog-card__image img {
	transform: none !important;
}
.fcm-blog-card__content {
	display: flex !important;
	flex: 1 1 auto !important;
	flex-direction: column !important;
	min-width: 0 !important;
}
.fcm-blog-card__link {
	margin-top: auto !important;
}
@media (max-width: 900px) {
	.fcm-blog-list .fcm-blog-grid,
	.fcm-related-blogs .fcm-blog-grid,
	.fcm-related-section .fcm-blog-grid,
	.fcm-latest-collection-blogs .fcm-blog-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}
@media (max-width: 600px) {
	.fcm-blog-list .fcm-blog-grid,
	.fcm-related-blogs .fcm-blog-grid,
	.fcm-related-section .fcm-blog-grid,
	.fcm-latest-collection-blogs .fcm-blog-grid {
		grid-template-columns: minmax(0, 1fr) !important;
	}
}

/* v8.10.19: use one broad, centred canvas for every part of a blog detail page. */
body.single-post {
	--fcm-blog-page-width: 1240px;
	--fcm-blog-page-gutter: clamp(18px, 3vw, 42px);
}
body.single-post main,
body.single-post article,
body.single-post .wp-block-post-content,
body.single-post .entry-content,
body.single-post .wp-block-post-title,
body.single-post .wp-block-post-featured-image,
body.single-post .wp-block-post-date,
body.single-post .wp-block-post-author,
body.single-post .wp-block-post-terms,
body.single-post .wp-block-post-excerpt,
body.single-post .wp-block-post-content > .fcm-related-section,
body.single-post .fcm-related-section {
	box-sizing: border-box !important;
	width: min(calc(100% - (2 * var(--fcm-blog-page-gutter))), var(--fcm-blog-page-width)) !important;
	max-width: var(--fcm-blog-page-width) !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

/* Gutenberg/theme constrained children must use the same canvas. */
body.single-post .wp-block-post-content > *,
body.single-post .entry-content > *,
body.single-post .wp-block-post-content .alignwide,
body.single-post .entry-content .alignwide,
body.single-post .wp-block-post-content .alignfull,
body.single-post .entry-content .alignfull {
	box-sizing: border-box !important;
	width: 100% !important;
	max-width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

/* Keep normal media responsive without enlarging it beyond its source ratio. */
body.single-post .wp-block-post-content img,
body.single-post .entry-content img,
body.single-post .wp-block-post-featured-image img {
	max-width: 100% !important;
	height: auto !important;
}

/* Related shirts and stories share the full article canvas. */
body.single-post .fcm-related-shirts,
body.single-post .fcm-related-blogs,
body.single-post .fcm-related-heading,
body.single-post .fcm-product-track,
body.single-post .fcm-blog-grid {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
}

@media (max-width: 700px) {
	body.single-post {
		--fcm-blog-page-gutter: 14px;
	}
}

/* v8.10.20: one fully clickable shirt-card basis for related shirts. */
.fcm-uniform-shirt-cards .fcm-shirt-card-grid {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: clamp(1rem, 1.8vw, 1.6rem) !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}
.fcm-uniform-shirt-cards .fcm-shirt-card {
	position: relative !important;
	float: none !important;
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 1px solid rgba(255,255,255,.14);
	border-radius: 14px;
	overflow: hidden;
	background: #111;
	box-shadow: 0 8px 24px rgba(0,0,0,.14);
	transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.fcm-uniform-shirt-cards .fcm-shirt-card:hover,
.fcm-uniform-shirt-cards .fcm-shirt-card:focus-within {
	transform: translateY(-4px);
	border-color: rgba(239,123,19,.72);
	box-shadow: 0 14px 32px rgba(0,0,0,.24);
}
.fcm-uniform-shirt-cards .fcm-shirt-card__link {
	display: block !important;
	width: 100% !important;
	color: inherit !important;
	text-decoration: none !important;
}
.fcm-uniform-shirt-cards .fcm-shirt-card__media {
	position: relative;
	display: block;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	background: #171717;
}
.fcm-uniform-shirt-cards .fcm-shirt-card__image,
.fcm-uniform-shirt-cards .fcm-shirt-card img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	object-fit: cover !important;
	transition: transform .25s ease;
}
.fcm-uniform-shirt-cards .fcm-shirt-card:hover img { transform: scale(1.025); }
.fcm-uniform-shirt-cards .fcm-shirt-card__badges {
	position: absolute;
	z-index: 3;
	left: 10px;
	right: 10px;
	top: 10px;
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	align-items: flex-start;
	pointer-events: none;
}
.fcm-uniform-shirt-cards .fcm-shirt-card__badges .fcm-badges,
.fcm-uniform-shirt-cards .fcm-shirt-card__badges .fcm-match-badge {
	position: static !important;
	margin: 0 !important;
}
.fcm-uniform-shirt-cards .woocommerce-loop-product__title,
.fcm-uniform-shirt-cards .price,
.fcm-uniform-shirt-cards .button,
.fcm-uniform-shirt-cards .fcm-shirt-card > a + * {
	display: none !important;
}
@media (max-width: 1050px) {
	.fcm-uniform-shirt-cards .fcm-shirt-card-grid { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
}
@media (max-width: 600px) {
	.fcm-uniform-shirt-cards .fcm-shirt-card-grid { grid-template-columns: 1fr !important; }
}


/* v8.10.21: relation label and product title below related-shirt images. */
.fcm-uniform-shirt-cards .fcm-shirt-card__content {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 9px;
	min-height: 104px;
	padding: 14px 15px 16px;
	background: #111;
}
.fcm-uniform-shirt-cards .fcm-shirt-card__match {
	display: block;
	min-height: 24px;
}
.fcm-uniform-shirt-cards .fcm-shirt-card__match .fcm-match-badge {
	position: static !important;
	display: inline-flex !important;
	margin: 0 !important;
	max-width: 100%;
}
.fcm-uniform-shirt-cards .fcm-shirt-card__title {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
	color: inherit;
	font-size: clamp(.92rem, 1.15vw, 1.05rem);
	font-weight: 700;
	line-height: 1.35;
	text-decoration: none !important;
}
.fcm-uniform-shirt-cards .fcm-shirt-card__link:hover .fcm-shirt-card__title,
.fcm-uniform-shirt-cards .fcm-shirt-card__link:focus .fcm-shirt-card__title {
	color: #ef7b13;
	text-decoration: none !important;
}
@media (max-width: 600px) {
	.fcm-uniform-shirt-cards .fcm-shirt-card__content { min-height: 92px; padding: 12px 13px 14px; }
}


/* v8.10.22: all non-image product badges live below the title. */
.fcm-uniform-shirt-cards .fcm-shirt-card__meta-badges {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	width: 100%;
	min-height: 0;
}
.fcm-uniform-shirt-cards .fcm-shirt-card__meta-badges:empty { display: none; }
.fcm-uniform-shirt-cards .fcm-shirt-card__meta-badges .fcm-badges {
	position: static !important;
	display: contents !important;
	margin: 0 !important;
}
.fcm-uniform-shirt-cards .fcm-shirt-card__meta-badges .fcm-badge {
	max-width: 100%;
	white-space: normal;
}

/* v8.11.13-v2 — mobile-only layout consistency. Desktop remains unchanged. */
@media (max-width: 767px) {
	/* Always show exactly two shirt cards per row on collection-style grids. */
	.woocommerce ul.products,
	.woocommerce-page ul.products,
	.fcm-related-shirts ul.products,
	.wc-block-grid__products,
	.wp-block-woocommerce-product-collection .wc-block-product-template,
	.wp-block-post-template.is-layout-grid:has(.wc-block-components-product-image),
	ul.wc-block-product-template,
	.wp-block-woocommerce-product-template,
	ul.wp-block-woocommerce-product-template {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: clamp(.65rem, 3vw, .95rem) !important;
		width: 100% !important;
		max-width: 100% !important;
		justify-content: stretch !important;
	}
	.woocommerce ul.products li.product,
	.woocommerce-page ul.products li.product,
	.fcm-related-shirts ul.products li.product,
	.wc-block-grid__product,
	.wp-block-woocommerce-product-collection .wc-block-product {
		width: 100% !important;
		max-width: none !important;
		min-width: 0 !important;
	}
	/* Related-shirt carousels retain swiping but expose two cards at once. */
	.fcm-related-shirts--carousel ul.products,
	.entry-content .fcm-related-shirts--carousel ul.products,
	.single-post .fcm-related-shirts--carousel ul.products {
		display: flex !important;
		gap: .8rem !important;
	}
	.fcm-related-shirts--carousel ul.products li.product,
	.entry-content .fcm-related-shirts--carousel ul.products li.product,
	.single-post .fcm-related-shirts--carousel ul.products li.product {
		flex: 0 0 calc((100% - .8rem) / 2) !important;
		width: calc((100% - .8rem) / 2) !important;
		max-width: calc((100% - .8rem) / 2) !important;
	}
	/* Keep mobile product titles readable within the two-column grid. */
	.woocommerce ul.products li.product .woocommerce-loop-product__title,
	.woocommerce-page ul.products li.product .woocommerce-loop-product__title,
	.fcm-related-shirts ul.products li.product .woocommerce-loop-product__title,
	.wc-block-grid__product-title,
	.wp-block-woocommerce-product-collection .wp-block-post-title {
		font-size: clamp(.82rem, 3.7vw, 1rem) !important;
	}
	/* WordPress block-navigation mobile overlay: use the site's black visual language. */
	.wp-block-navigation__responsive-container,
	.wp-block-navigation__responsive-container.is-menu-open,
	.wp-block-navigation__responsive-container-content,
	.wp-block-navigation__responsive-dialog,
	.wp-block-navigation__responsive-close,
	.wp-block-navigation__responsive-container .wp-block-navigation__submenu-container {
		background: #000 !important;
		color: #ff7417 !important;
	}
	.wp-block-navigation__responsive-container a,
	.wp-block-navigation__responsive-container button,
	.wp-block-navigation__responsive-container svg {
		color: #ff7417 !important;
		fill: currentColor !important;
	}
}

/* v8.11.14-v2 — definitive mobile-only collection grids and navigation overlay. */
@media (max-width: 767px) {
	/* Every public shirt overview uses exactly two equal columns on phones. */
	body .woocommerce ul.products,
	body .woocommerce-page ul.products,
	body .fcm-related-shirts ul.products,
	body .fcm-related-section.fcm-related-shirts ul.products,
	body.single-post .fcm-related-shirts ul.products,
	body.single-product .fcm-related-shirts ul.products,
	body .fcm-uniform-shirt-cards .fcm-shirt-card-grid,
	body .wc-block-grid__products,
	body ul.wc-block-product-template,
	body .wp-block-woocommerce-product-template,
	body .wp-block-woocommerce-product-collection .wc-block-product-template,
	body .elementor-products-grid ul.products,
	body .elementor-widget-woocommerce-products ul.products {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		grid-auto-flow: row !important;
		column-gap: 10px !important;
		row-gap: 18px !important;
		width: 100% !important;
		max-width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
		justify-content: stretch !important;
	}
	body .woocommerce ul.products > li.product,
	body .woocommerce-page ul.products > li.product,
	body .fcm-related-shirts ul.products > li.product,
	body .fcm-uniform-shirt-cards .fcm-shirt-card,
	body .wc-block-grid__products > .wc-block-grid__product,
	body .wp-block-woocommerce-product-collection .wc-block-product-template > .wc-block-product,
	body .elementor-products-grid ul.products > li.product {
		box-sizing: border-box !important;
		float: none !important;
		clear: none !important;
		grid-column: auto !important;
		width: 100% !important;
		max-width: none !important;
		min-width: 0 !important;
		margin: 0 !important;
		justify-self: stretch !important;
	}
	/* Undo legacy sparse-grid and one-card mobile limits. */
	body .woocommerce ul.products > li.product:only-child,
	body .woocommerce-page ul.products > li.product:only-child,
	body .fcm-related-shirts ul.products > li.product:only-child,
	body .fcm-uniform-shirt-cards .fcm-shirt-card:only-child,
	body .wc-block-grid__products > .wc-block-grid__product:only-child {
		width: 100% !important;
		max-width: none !important;
		justify-self: stretch !important;
	}
	/* Related carousels under products and blogs: exactly two visible cards. */
	body .fcm-related-shirts--carousel ul.products,
	body.single-post .fcm-related-shirts--carousel ul.products,
	body.single-product .fcm-related-shirts--carousel ul.products {
		display: flex !important;
		gap: 10px !important;
		overflow-x: auto !important;
		scroll-snap-type: x mandatory;
	}
	body .fcm-related-shirts--carousel ul.products > li.product,
	body.single-post .fcm-related-shirts--carousel ul.products > li.product,
	body.single-product .fcm-related-shirts--carousel ul.products > li.product {
		flex: 0 0 calc((100% - 10px) / 2) !important;
		width: calc((100% - 10px) / 2) !important;
		max-width: calc((100% - 10px) / 2) !important;
		scroll-snap-align: start;
	}

	/* Full-screen mobile menu in the site's visual style. */
	.wp-block-navigation__responsive-container.is-menu-open {
		background: #000 !important;
		color: #ff7417 !important;
		padding: 22px 20px 32px !important;
	}
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
		box-sizing: border-box !important;
		width: 100% !important;
		max-width: 100% !important;
		height: 100% !important;
		background: #000 !important;
	}
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-page-list {
		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
		justify-content: center !important;
		gap: 10px !important;
		width: 100% !important;
		min-height: calc(100dvh - 100px) !important;
		margin: 0 !important;
		padding: 44px 0 !important;
		text-align: center !important;
	}
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
		width: 100% !important;
		justify-content: center !important;
		text-align: center !important;
	}
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item > a {
		display: block !important;
		width: 100% !important;
		padding: 10px 8px !important;
		color: #ff7417 !important;
		font-size: clamp(1.45rem, 7vw, 2rem) !important;
		font-weight: 700 !important;
		line-height: 1.15 !important;
		text-align: center !important;
		text-decoration: none !important;
	}
	.wp-block-navigation__responsive-container-close {
		top: 18px !important;
		right: 18px !important;
		color: #ff7417 !important;
	}
}

/* v8.11.15-v2 — hard mobile two-column contract for every FCM collection surface. */
@media (max-width: 900px) {
	body .fcm-shortcode-collection-layout .fcm-filtered-screen__products > ul.products,
	body .fcm-unified-results-section .fcm-filtered-screen__products > ul.products,
	body .fcm-filtered-screen__products > ul.products,
	body .fcm-product-search-collection .products,
	body .fcm-related-shirts:not(.fcm-related-shirts--carousel) > ul.products,
	body .fcm-related-shirts:not(.fcm-related-shirts--carousel) .fcm-product-track > ul.products,
	body .fcm-uniform-shirt-cards .fcm-shirt-card-grid,
	body.woocommerce-page.archive ul.products,
	body.post-type-archive-product ul.products,
	body.tax-product_cat ul.products,
	body .elementor-widget-woocommerce-products ul.products,
	body .elementor-products-grid ul.products,
	body .wc-block-grid__products,
	body .wp-block-woocommerce-product-collection ul.wc-block-product-template,
	body ul.wp-block-woocommerce-product-template {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
		grid-auto-columns: minmax(0, 1fr) !important;
		grid-auto-flow: row !important;
		gap: 16px 10px !important;
		box-sizing: border-box !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
		float: none !important;
		clear: both !important;
	}
	body .fcm-shortcode-collection-layout .fcm-filtered-screen__products > ul.products::before,
	body .fcm-shortcode-collection-layout .fcm-filtered-screen__products > ul.products::after,
	body .fcm-unified-results-section .fcm-filtered-screen__products > ul.products::before,
	body .fcm-unified-results-section .fcm-filtered-screen__products > ul.products::after,
	body .fcm-filtered-screen__products > ul.products::before,
	body .fcm-filtered-screen__products > ul.products::after {
		display: none !important;
		content: none !important;
	}
	body .fcm-shortcode-collection-layout .fcm-filtered-screen__products > ul.products > li.product,
	body .fcm-unified-results-section .fcm-filtered-screen__products > ul.products > li.product,
	body .fcm-filtered-screen__products > ul.products > li.product,
	body .fcm-product-search-collection .products > li.product,
	body .fcm-related-shirts:not(.fcm-related-shirts--carousel) ul.products > li.product,
	body.woocommerce-page.archive ul.products > li.product,
	body.post-type-archive-product ul.products > li.product,
	body.tax-product_cat ul.products > li.product,
	body .elementor-widget-woocommerce-products ul.products > li.product,
	body .elementor-products-grid ul.products > li.product,
	body .wc-block-grid__products > li,
	body .wp-block-woocommerce-product-collection ul.wc-block-product-template > li,
	body ul.wp-block-woocommerce-product-template > li {
		box-sizing: border-box !important;
		display: block !important;
		grid-column: auto !important;
		grid-row: auto !important;
		float: none !important;
		clear: none !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		margin: 0 !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	body .fcm-filtered-screen__products,
	body .fcm-shortcode-collection-layout,
	body .fcm-unified-results-section {
		box-sizing: border-box !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		overflow: visible !important;
	}
}

/* Also cover phones reporting a wider CSS viewport (landscape / accessibility zoom). */
@media (hover: none) and (pointer: coarse) {
	body .fcm-shortcode-collection-layout .fcm-filtered-screen__products > ul.products,
	body .fcm-unified-results-section .fcm-filtered-screen__products > ul.products,
	body .fcm-filtered-screen__products > ul.products,
	body .fcm-product-search-collection .products,
	body .fcm-related-shirts:not(.fcm-related-shirts--carousel) ul.products {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 16px 10px !important;
	}
}

/* v8.13.0 — automatic contact form for shirts that are for sale/open to bids. */
.fcm-sale-contact-panel__body { padding: clamp(1rem, 3vw, 2rem); }
.fcm-sale-contact-panel__body > .fcm-sale-contact-form { padding: 0 !important; }
.fcm-sale-contact-panel__intro { margin: 0 0 1rem; color: rgba(255,255,255,.72); }
.fcm-sale-contact-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.fcm-sale-contact-form > label { margin:0 !important; }
.fcm-sale-contact-form__message, .fcm-sale-contact-form__submit { grid-column:1/-1; }
.fcm-sale-contact-form__trap { position:absolute !important; left:-10000px !important; width:1px !important; height:1px !important; overflow:hidden !important; }
.fcm-sale-contact-panel__notice { margin:0 0 1rem; padding:.8rem 1rem; border-left:3px solid currentColor; }
.fcm-sale-contact-panel__notice.is-success { color:#62d68d; background:rgba(28,128,67,.13); }
.fcm-sale-contact-panel__notice.is-error { color:#ff9d9d; background:rgba(185,45,45,.13); }
@media (max-width:640px){ .fcm-sale-contact-form{grid-template-columns:1fr;} .fcm-sale-contact-form__message,.fcm-sale-contact-form__submit{grid-column:1;} }

/* v8.15.7 — FCM product photo viewer: photo-only layout with map-style zoom controls. */
.fcm-gallery-modal[hidden]{display:none!important}
.fcm-gallery-modal{position:fixed;inset:0;z-index:999999;display:grid;place-items:center;padding:clamp(10px,2vw,28px);opacity:0;transition:opacity .16s ease}
.fcm-gallery-modal.is-open{opacity:1}
.fcm-gallery-modal__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.86);backdrop-filter:blur(8px)}
.fcm-gallery-modal__dialog{position:relative;width:min(1480px,96vw);height:min(900px,94vh);display:grid;grid-template-rows:auto minmax(0,1fr) auto;background:linear-gradient(145deg,#111315,#08090a);color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:14px;box-shadow:0 28px 90px rgba(0,0,0,.7);overflow:hidden}
.fcm-gallery-modal__header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:22px 28px 18px;border-bottom:1px solid rgba(255,255,255,.08)}
.fcm-gallery-modal__title{margin:0!important;color:var(--fcm-accent,#ff7417)!important;font-family:inherit;font-size:clamp(20px,2vw,30px)!important;font-weight:800!important;line-height:1.15!important}
.fcm-gallery-modal__counter{margin:7px 0 0;color:var(--fcm-accent,#ff7417);font-size:15px}
.fcm-gallery-modal__close{appearance:none;border:0;background:transparent;color:#fff;font-size:38px;line-height:1;cursor:pointer;padding:0 4px;opacity:.9}
.fcm-gallery-modal__layout{min-height:0;display:grid;grid-template-columns:126px minmax(0,1fr);gap:22px;padding:12px 28px 14px}
.fcm-gallery-modal__thumbs{min-height:0;display:flex;flex-direction:column;gap:10px;overflow-y:auto;padding:4px 5px 4px 0;scrollbar-width:thin}
.fcm-gallery-modal__thumb{position:relative;flex:0 0 112px;width:100%;padding:5px;border:2px solid transparent;border-radius:9px;background:#111315;cursor:pointer;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,255,255,.035)}
.fcm-gallery-modal__thumb.is-active{border-color:var(--fcm-accent,#ff7417);box-shadow:0 0 0 1px rgba(255,116,23,.35)}
.fcm-gallery-modal__thumb img{display:block!important;width:100%!important;height:100%!important;max-width:100%!important;object-fit:contain!important;object-position:center!important;background:#0b0c0d!important;border-radius:5px}
.fcm-gallery-modal__thumb span{position:absolute;left:7px;right:7px;bottom:6px;padding:3px 5px;border-radius:5px;background:rgba(0,0,0,.78);font-size:11px;line-height:1.2;color:var(--fcm-accent,#ff7417);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fcm-gallery-modal__stage{position:relative;min-width:0;min-height:0;display:grid;grid-template-rows:minmax(0,1fr) 24px;place-items:center;padding:4px clamp(18px,4vw,72px)}
.fcm-gallery-modal__figure{width:100%;height:100%;min-height:0;margin:0;display:grid;place-items:center;position:relative;overflow:hidden;border-radius:10px;background:#0b0c0d;cursor:zoom-in;touch-action:pan-y}
.fcm-gallery-modal__figure.is-zoomed{cursor:zoom-out;touch-action:none}
.fcm-gallery-modal__image{display:block!important;width:auto!important;height:auto!important;max-width:100%!important;max-height:100%!important;min-width:0!important;min-height:0!important;object-fit:contain!important;object-position:center!important;margin:auto!important;padding:0!important;background:transparent!important;transition:transform .16s ease;will-change:transform;user-select:none;-webkit-user-drag:none}
.fcm-gallery-modal__caption{position:absolute;left:14px;bottom:14px;max-width:60%;padding:6px 10px;border-radius:999px;background:rgba(0,0,0,.75);color:var(--fcm-accent,#ff7417);font-size:13px;font-weight:700;pointer-events:none}
.fcm-gallery-modal__caption:empty{display:none}
.fcm-gallery-modal__nav{position:absolute;z-index:3;top:50%;transform:translateY(-50%);width:54px;height:54px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.28);border-radius:50%;background:rgba(12,13,14,.8);color:#fff;font-size:38px;line-height:1;cursor:pointer;box-shadow:0 8px 20px rgba(0,0,0,.35)}
.fcm-gallery-modal__nav:hover{border-color:var(--fcm-accent,#ff7417);background:var(--fcm-accent,#ff7417);color:#111}
.fcm-gallery-modal__nav--prev{left:16px}.fcm-gallery-modal__nav--next{right:16px}
.fcm-gallery-modal__dots{height:24px;display:flex;align-items:center;justify-content:center;gap:8px}
.fcm-gallery-modal__dot{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.24)}.fcm-gallery-modal__dot.is-active{background:var(--fcm-accent,#ff7417)}
.fcm-gallery-modal__footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 28px;border-top:1px solid rgba(255,255,255,.08);color:rgba(255,255,255,.55);font-size:13px}
.fcm-gallery-modal__footer-actions{display:flex;align-items:center;gap:24px}
.fcm-gallery-modal__zoom-controls{display:inline-flex;align-items:center;gap:7px}
.fcm-gallery-modal__zoom-control{appearance:none;min-width:38px;height:38px;padding:0 11px;border:1px solid rgba(255,116,23,.7);border-radius:7px;background:#101112;color:var(--fcm-accent,#ff7417);font:inherit;font-size:20px;font-weight:800;line-height:1;cursor:pointer}
.fcm-gallery-modal__zoom-reset{min-width:auto;font-size:13px;padding-inline:14px}
.fcm-gallery-modal__zoom-control:hover:not(:disabled){background:var(--fcm-accent,#ff7417);color:#111;border-color:var(--fcm-accent,#ff7417)}
.fcm-gallery-modal__zoom-control:disabled{opacity:.35;cursor:default}
.fcm-gallery-modal__fullscreen{appearance:none;border:0;background:transparent;color:#fff;font:inherit;font-weight:700;cursor:pointer;padding:8px 0}
.fcm-gallery-modal__fullscreen:hover{color:var(--fcm-accent,#ff7417)}
.fcm-gallery-modal__dialog:fullscreen{width:100vw;height:100vh;max-width:none;max-height:none;border-radius:0;border:0}

@media(max-width:1050px){
 .fcm-gallery-modal__layout{grid-template-columns:94px minmax(0,1fr)}
 .fcm-gallery-modal__stage{padding-inline:clamp(12px,3vw,36px)}
 .fcm-gallery-modal__thumb{flex-basis:88px}
}
@media(max-width:700px){
 .fcm-gallery-modal{padding:0}
 .fcm-gallery-modal__dialog{width:100vw;height:100dvh;max-width:none;max-height:none;border-radius:0;border:0}
 .fcm-gallery-modal__header{padding:14px 16px 11px}
 .fcm-gallery-modal__layout{display:grid;grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) 82px;gap:9px;padding:8px 12px 10px}
 .fcm-gallery-modal__stage{grid-row:1;padding-inline:0}
 .fcm-gallery-modal__thumbs{grid-row:2;flex-direction:row;overflow-x:auto;overflow-y:hidden;padding:0 0 3px;order:2}
 .fcm-gallery-modal__thumb{flex:0 0 72px;height:72px}
 .fcm-gallery-modal__nav{width:42px;height:42px;font-size:30px}.fcm-gallery-modal__nav--prev{left:8px}.fcm-gallery-modal__nav--next{right:8px}
 .fcm-gallery-modal__footer{padding:9px 14px}.fcm-gallery-modal__footer>span{display:none}
 .fcm-gallery-modal__footer-actions{margin-left:auto;gap:16px}
 .fcm-gallery-modal__zoom-control{min-width:34px;height:34px;font-size:18px;padding-inline:9px}
 .fcm-gallery-modal__zoom-reset{font-size:11px;padding-inline:10px}
 .fcm-gallery-modal__fullscreen{font-size:12px}
}

/* v8.15.10 gallery polish: no offset black cards behind photos; the modal itself
 * provides the dark canvas. Placeholder thumbnails use the same clean frame. */
.fcm-gallery-modal__figure,
.fcm-gallery-modal__thumb,
.fcm-gallery-modal__thumb img,
.fcm-gallery-modal__stage{
	background:transparent!important;
	box-shadow:none!important;
}
.fcm-gallery-modal__thumb{padding:0!important;}
.fcm-gallery-modal__thumb img{border-radius:7px!important;}
.fcm-gallery-modal__thumb img[src*="photos-coming-soon"],
.fcm-gallery-modal__image[src*="photos-coming-soon"]{
	border:0!important;
	outline:0!important;
	box-shadow:none!important;
}


/* ================================================================
   FCM v9.7.10 — native-feeling pinch / trackpad zoom
   ================================================================ */
.fcm-gallery-modal__figure{
	touch-action:none!important;
	overscroll-behavior:contain;
}
.fcm-gallery-modal__image{
	touch-action:none!important;
	transform-origin:50% 50%;
}
.fcm-gallery-modal__figure.is-zoomed .fcm-gallery-modal__image{
	transition:transform .05s linear;
}
@media (pointer:coarse){
	.fcm-gallery-modal__figure{cursor:default}
	.fcm-gallery-modal__figure.is-zoomed{cursor:default}
}

/* v10.0.7 — phone-only related-shirts carousel.
 * Keep the established card styling; only change the track behaviour.
 * Two full-width columns are visible at once and additional cards continue horizontally. */
.fcm-carousel-controls--mobile-only {
	display: none;
}

@media (max-width: 767px) {
	body .fcm-related-shirts--mobile-carousel,
	body.single-product .fcm-related-shirts--mobile-carousel,
	body.single-post .fcm-related-shirts--mobile-carousel {
		box-sizing: border-box !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
	}

	body .fcm-related-shirts--mobile-carousel .fcm-product-track,
	body.single-product .fcm-related-shirts--mobile-carousel .fcm-product-track,
	body.single-post .fcm-related-shirts--mobile-carousel .fcm-product-track {
		box-sizing: border-box !important;
		display: block !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		overflow: hidden !important;
	}

	/* Use horizontal CSS-grid columns instead of flex. This prevents the global
	 * WooCommerce two-column grid rules from creating a second vertical row. */
	body .fcm-related-shirts--mobile-carousel .fcm-product-track > ul.products,
	body.single-product .fcm-related-shirts--mobile-carousel .fcm-product-track > ul.products,
	body.single-post .fcm-related-shirts--mobile-carousel .fcm-product-track > ul.products {
		display: grid !important;
		grid-template-columns: none !important;
		grid-template-rows: minmax(0, auto) !important;
		grid-auto-flow: column !important;
		grid-auto-columns: calc((100% - 10px) / 2) !important;
		column-gap: 10px !important;
		row-gap: 0 !important;
		box-sizing: border-box !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
		overflow-x: auto !important;
		overflow-y: hidden !important;
		scroll-snap-type: x mandatory !important;
		scroll-behavior: smooth;
		scrollbar-width: none;
		-webkit-overflow-scrolling: touch;
		overscroll-behavior-x: contain;
		touch-action: pan-x pan-y;
	}

	body .fcm-related-shirts--mobile-carousel .fcm-product-track > ul.products::-webkit-scrollbar {
		display: none;
	}

	body .fcm-related-shirts--mobile-carousel .fcm-product-track > ul.products > li.product,
	body.single-product .fcm-related-shirts--mobile-carousel .fcm-product-track > ul.products > li.product,
	body.single-post .fcm-related-shirts--mobile-carousel .fcm-product-track > ul.products > li.product {
		box-sizing: border-box !important;
		display: block !important;
		grid-column: auto !important;
		grid-row: 1 !important;
		float: none !important;
		clear: none !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
		justify-self: stretch !important;
		align-self: start !important;
		scroll-snap-align: start;
		scroll-snap-stop: always;
	}

	/* The card itself keeps the old FCM proportions and fills its half-screen slot. */
	body .fcm-related-shirts--mobile-carousel .fcm-shirt-card__link,
	body .fcm-related-shirts--mobile-carousel .fcm-shirt-card__media,
	body .fcm-related-shirts--mobile-carousel .fcm-shirt-card__content {
		box-sizing: border-box !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	.fcm-carousel-controls--mobile-only {
		display: flex;
	}
}

/* v10.2.2 – only confirmed rarity facts are surfaced beside public attributes. */
.fcm-rarity-public-fact{display:inline-flex;align-items:center;gap:4px;margin-left:8px;padding:3px 7px;border:1px solid #a66b22;border-radius:999px;background:rgba(255,116,23,.10);color:#ff9a52;font-size:.72em;font-weight:800;line-height:1.2;vertical-align:middle;white-space:nowrap}
@media(max-width:620px){.fcm-rarity-public-fact{display:flex;width:max-content;margin:5px 0 0}}

/* v11.6.1 — compact hand-off from product actions/share controls to related shirts. */
body.single-product .fcm-related-section.fcm-related-shirts{
	margin-top:clamp(18px,1.8vw,28px)!important;
}
body.single-product .fcm-related-section.fcm-related-shirts .fcm-related-heading{
	margin-top:0!important;
	margin-bottom:clamp(14px,1.5vw,20px)!important;
}
/* Jetpack/theme share wrappers should not create an extra visual spacer before related content. */
body.single-product .sharedaddy,
body.single-product .sd-sharing-enabled,
body.single-product .wp-block-jetpack-sharing-buttons{
	margin-bottom:clamp(12px,1.4vw,20px)!important;
	padding-bottom:0!important;
}
body.single-product .fcm-share-before-related{
	box-sizing:border-box!important;
	display:flex!important;
	justify-content:flex-end!important;
	width:100%!important;
	max-width:1500px!important;
	margin:0 auto 16px!important;
	padding:0!important;
	clear:both!important;
}

/* v11.11.12 — granular private product data for authorized FCM accounts. */
.single-product .fcm-private-product {
	box-sizing: border-box;
	width: 100%;
	margin: 2rem 0 2.25rem;
	padding: clamp(18px, 2.1vw, 30px);
	border: 1px solid rgba(255, 115, 23, .34);
	border-top: 2px solid #ff7317;
	border-radius: 18px;
	background: linear-gradient(145deg, rgba(11, 24, 32, .98), rgba(8, 16, 22, .98));
	color: #f7f7f7;
}
.single-product .fcm-private-product__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 22px;
	padding-bottom: 18px;
	margin-bottom: 18px;
	border-bottom: 1px solid rgba(129, 154, 169, .25);
}
.single-product .fcm-private-product__eyebrow {
	display: block;
	margin-bottom: 6px;
	color: #ff7317;
	font-size: .72rem;
	font-weight: 800;
	letter-spacing: .16em;
}
.single-product .fcm-private-product__head h2 {
	margin: 0 !important;
	color: #fff !important;
	font-size: clamp(1.55rem, 2.4vw, 2.25rem) !important;
	line-height: 1.08 !important;
}
.single-product .fcm-private-product__head p {
	margin: 8px 0 0;
	max-width: 760px;
	color: #9bacb8;
	font-size: .95rem;
}
.single-product .fcm-private-product__lock {
	display: grid;
	place-items: center;
	flex: 0 0 42px;
	width: 42px;
	height: 42px;
	border: 1px solid rgba(255, 115, 23, .42);
	border-radius: 12px;
	background: rgba(255, 115, 23, .08);
	font-size: 1.05rem;
}
.single-product .fcm-private-product__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}
.single-product .fcm-private-product__group {
	min-width: 0;
	padding: 16px 18px;
	border: 1px solid rgba(125, 151, 166, .26);
	border-radius: 13px;
	background: rgba(13, 27, 35, .72);
}
.single-product .fcm-private-product__group h3 {
	margin: 0 0 10px !important;
	color: #ff8b3d !important;
	font-family: inherit !important;
	font-size: .86rem !important;
	font-weight: 800 !important;
	letter-spacing: .08em !important;
	text-transform: uppercase !important;
}
.single-product .fcm-private-product__group dl { margin: 0; }
.single-product .fcm-private-product__row {
	display: grid;
	grid-template-columns: minmax(130px, .72fr) minmax(0, 1.28fr);
	gap: 14px;
	padding: 8px 0;
	border-top: 1px solid rgba(125, 151, 166, .16);
}
.single-product .fcm-private-product__row:first-child { border-top: 0; padding-top: 2px; }
.single-product .fcm-private-product__row dt,
.single-product .fcm-private-product__row dd { margin: 0; min-width: 0; }
.single-product .fcm-private-product__row dt { color: #98aab5; font-size: .88rem; }
.single-product .fcm-private-product__row dd { color: #f4f6f7; font-weight: 650; overflow-wrap: anywhere; }
.single-product .fcm-private-product__row a { color: #ff8b3d; text-decoration: underline; text-underline-offset: 2px; }
.single-product .fcm-private-product__sublist { margin: 0; padding-left: 1.1em; font-weight: 500; }
.single-product .fcm-private-product__sublist li + li { margin-top: 6px; }
.single-product .fcm-private-product__empty {
	padding: 16px 18px;
	border: 1px dashed rgba(125, 151, 166, .3);
	border-radius: 12px;
	color: #9bacb8;
}
@media (max-width: 820px) {
	.single-product .fcm-private-product__grid { grid-template-columns: 1fr; }
}
@media (max-width: 520px) {
	.single-product .fcm-private-product { padding: 16px 14px; border-radius: 14px; }
	.single-product .fcm-private-product__head { gap: 12px; }
	.single-product .fcm-private-product__row { grid-template-columns: 1fr; gap: 3px; }
}


/* v11.11.13 — tighter transition from product controls/private data into related shirts. */
body.single-product .fcm-related-section.fcm-related-shirts{
	margin-top:clamp(8px,1vw,14px)!important;
}
body.single-product .fcm-private-product + .fcm-related-section.fcm-related-shirts{
	margin-top:12px!important;
}

/* v11.11.14 — one canonical related-shirt presentation for products and blogs. */
body.single-product .fcm-related-section.fcm-related-shirts,
body.single-post .fcm-related-section.fcm-related-shirts{
	margin-top:4px!important;
	margin-bottom:clamp(30px,2.8vw,42px)!important;
	padding-top:0!important;
}
body.single-product .fcm-related-section.fcm-related-shirts .fcm-related-heading,
body.single-post .fcm-related-section.fcm-related-shirts .fcm-related-heading{
	margin-top:0!important;
	margin-bottom:clamp(12px,1.2vw,17px)!important;
}
/* Related shirts deliberately float on the page instead of sitting in dark card panels. */
body .fcm-related-section.fcm-related-shirts.fcm-uniform-shirt-cards .fcm-shirt-card,
body.single-product .fcm-related-section.fcm-related-shirts.fcm-uniform-shirt-cards .fcm-shirt-card,
body.single-post .fcm-related-section.fcm-related-shirts.fcm-uniform-shirt-cards .fcm-shirt-card{
	border:0!important;
	border-radius:0!important;
	background:transparent!important;
	box-shadow:none!important;
	overflow:visible!important;
}
body .fcm-related-section.fcm-related-shirts.fcm-uniform-shirt-cards .fcm-shirt-card:hover,
body .fcm-related-section.fcm-related-shirts.fcm-uniform-shirt-cards .fcm-shirt-card:focus-within{
	border-color:transparent!important;
	box-shadow:none!important;
	transform:translateY(-2px)!important;
}
body .fcm-related-section.fcm-related-shirts.fcm-uniform-shirt-cards .fcm-shirt-card__media{
	border-radius:14px!important;
	background:#171717!important;
	overflow:hidden!important;
}
body .fcm-related-section.fcm-related-shirts.fcm-uniform-shirt-cards .fcm-shirt-card__content{
	min-height:104px!important;
	padding:12px 4px 10px!important;
	background:transparent!important;
}
/* The reaction composer must read as a separate section rather than touching the cards. */
body.single-product .fcm-related-section.fcm-related-shirts + .fcm-reactions,
body.single-post .fcm-related-section.fcm-related-shirts + .fcm-reactions,
body.single-product .fcm-related-section.fcm-related-shirts ~ .fcm-reactions:first-of-type,
body.single-post .fcm-related-section.fcm-related-shirts ~ .fcm-reactions:first-of-type{
	margin-top:clamp(28px,2.5vw,38px)!important;
}
@media(max-width:760px){
	body.single-product .fcm-related-section.fcm-related-shirts,
	body.single-post .fcm-related-section.fcm-related-shirts{
		margin-top:2px!important;
		margin-bottom:28px!important;
	}
	body .fcm-related-section.fcm-related-shirts.fcm-uniform-shirt-cards .fcm-shirt-card__media{
		border-radius:12px!important;
	}
	body .fcm-related-section.fcm-related-shirts.fcm-uniform-shirt-cards .fcm-shirt-card__content{
		min-height:92px!important;
		padding:10px 3px 8px!important;
	}
}
/* Remove the theme's leftover summary bottom margin so the action row hands off quickly to related shirts. */
body.single-product .woocommerce div.product div.summary,
body.single-product div.product div.summary{
	margin-bottom:0!important;
}
body .fcm-related-section.fcm-related-shirts.fcm-uniform-shirt-cards .fcm-shirt-card__link{
	background:transparent!important;
}
