.foley-c7-ui-wine-listing {
	position: relative;

	&:has(.foley-c7-ui-wine-listing__controls) {
		@media(width > 1200px) {
			column-gap: 3rem;
			display: grid;
			grid-template-columns: 420px auto;
			padding-right: var(--container-gutter);
		}
	
		.foley-c7-ui-wine-listing__results {
			padding-top: 8.5rem;
		}
	}
	
	@media(width <= 1200px) {
		padding-inline: var(--container-gutter);
	}
}

.foley-c7-ui-wine-listing.is-loading {
	opacity: 0.65;
	pointer-events: none;
}

.foley-c7-ui-wine-listing__controls {
	background: linear-gradient(180deg, #F6F6F6 0%, #FFF 50%, #FFF 100%);
	margin-bottom: 4.5rem;
	padding: 8.75rem 1.75rem 1.75rem;
	position: relative;
	
	@media(width <= 1200px) {
		left: 0;
		position: absolute;
		top: 0;
		translate: -100% 0;
		transition: translate .3s;
		z-index: 1;
		
		&.active {
			translate: 0;	
		}
	}
}

/* single select filters */
.foley-c7-ui-wine-listing__control--sort,
.foley-c7-ui-wine-listing__control[data-control-type="select"] {
	.foley-c7-ui-wine-listing__label::after {
		content: ":";
	}

	select {
		align-items: center;
		border: none;
		line-height: 0.5;
		padding: 0 !important;

		selectedcontent {
			text-decoration: underline;
		}

		&::picker-icon {
			opacity: 0;
		}
	}
}

.foley-c7-ui-wine-listing__controls-grid {
	display: grid;
	font-size: .875rem;
	gap: .25rem 1rem;
	grid-template-columns: 1fr;
	margin-bottom: 1rem;

	.foley-c7-ui-wine-listing__control--sort {
		grid-column: unset;
	}
}

.foley-c7-ui-wine-listing__control {
	anchor-scope: --choices;
	align-items: center;
	display: flex;
	/*flex-direction: row;*/
	flex-direction: column;
	gap: 0.5rem;
	transition: padding .3s;
	
	&:not(:last-child) {
		border-bottom: 1px solid #D9D9D9;
	}

	label {
		white-space: nowrap;
	}
	
	&.active {
		padding-bottom: 1.5rem;

		.foley-c7-ui-wine-listing__choices {
			height: auto;
		}
	}

	&.active {
		.foley-c7-ui-wine-listing__label {
			&::after {
				rotate: 0deg;
			}
		}
	}
	
	.foley-c7-ui-wine-listing__price-wrapper {
		grid-template-columns: 1fr;
	}
}

.foley-c7-ui-wine-listing__control--sort {
	grid-column: 4;
}

.foley-c7-ui-wine-listing__label {	
	align-items: center;
	anchor-name: --choices;
	border-width: 1px 1px 0;
	border-style: solid;
	border-color: transparent;
	color: var(--color-black, #000);
	cursor: pointer;
	display: flex;
	font-size: 18px;
	font-weight: 600;
	gap: .5rem;
	justify-content: space-between;
	line-height: 1.2;
	margin-inline: 0 auto;
	padding: .5rem 0;
	position: relative;
	text-transform: uppercase;
	transition: border-color .2s .1s;
	width: 100%;
	z-index: 3;

	&::after {
		-webkit-mask-image: url('/wp-content/themes/ffws-brands-v2/dist/img/icons.svg#down-arrow');
		mask-image: url('/wp-content/themes/ffws-brands-v2/dist/img/icons.svg#down-arrow');
		-webkit-mask-size: contain;
		mask-size: contain;
		background: var(--color-site-text);
		content: "";
		display: block;
		height: 22px;
		rotate: -90deg;
		transition: all .2s;
		width: 20px;
	}
}

.foley-c7-ui-wine-listing__choices {
	display: grid;
	flex-wrap: wrap;
	gap: 0.75rem;
	grid-template-columns: 1fr 1fr;
	height: 0;
	gap: 0.75rem 2rem;
	overflow: hidden;
	padding-inline: .75rem;
	transition: height .2s .1s allow-discrete;
	width: 100%;

	&>label.foley-c7-ui-wine-listing__choice {

		font-size: 16px;
		font-weight: 400;


		input {
			flex-shrink: 0;
			height: 1.125rem;
			width: 1.125rem;
		}
	}
}

.foley-c7-ui-wine-listing__choice {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
}

.foley-c7-ui-wine-listing__control--price {
	align-items: stretch;
}

.foley-c7-ui-wine-listing__price-values {
	color: var(--color-black);
	display: flex;
	font-size: .875rem;
	gap: 0.5rem;
	line-height: 1.2;
	justify-content: space-between;
	width: 100%;
}

.foley-c7-ui-wine-listing__price-range {
	height: 2rem;
	position: relative;
	width: 100%;
}

.foley-c7-ui-wine-listing__price-track {
	background: #E3E3E3;
	border-radius: 999px;
	cursor: pointer;
	height: 0.5rem;
	left: 0;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}

.foley-c7-ui-wine-listing__price-track-fill {
	background: rgba(121, 39, 29, 0.30);
	border-radius: inherit;
	bottom: 0;
	left: var(--price-min-position, 0%);
	position: absolute;
	right: calc(100% - var(--price-max-position, 100%));
	top: 0;
}

.foley-c7-ui-wine-listing__price-handle {
	background: var(--color-wine-red, currentColor);
	border: unset;
	border-radius: 50%;
	cursor: grab;
	height: 1.25rem;
	padding: 0;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 1.25rem;
}

.foley-c7-ui-wine-listing__price-handle:active {
	cursor: grabbing;
}

.foley-c7-ui-wine-listing__price-handle:focus-visible {
	outline: 2px solid var(--color-wine-red, currentColor);
	outline-offset: 2px;
}

.foley-c7-ui-wine-listing__price-handle--min {
	left: var(--price-min-position, 0%);
}

.foley-c7-ui-wine-listing__price-handle--max {
	left: var(--price-max-position, 100%);
}

.foley-c7-ui-wine-listing__range {
	width: 100%;
}

.foley-c7-ui-wine-listing__control--ninety-plus {
	align-items: flex-start;
	
	& > label {
		pointer-events: none;
		
		&::after {
			content: none !important;
		}
	}
}

.foley-c7-ui-wine-listing__select {
	/*min-width: 0;
	width: 100%;*/
	min-width: 17.5ch;
}

.foley-c7-ui-wine-listing__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
}

.foley-c7-ui-wine-listing__grid {
	display: grid;
	gap: 3rem 1.5rem;
	grid-template-columns: repeat(var(--foley-c7-ui-columns-mobile), minmax(0, 1fr));
}

.foley-c7-ui-wine-listing__item {
	min-width: 0;
}

.foley-c7-ui-wine-listing__item--promo {
	padding-bottom: .5rem;

	@media(min-width:1025px) {
		display: flex;
		
		 .foley-c7-ui-promo-card {
			height: auto;
			margin-block: 0.325rem auto;
		}
	}

	@media(width <= 1024px) {
		grid-column: span 2;
		grid-row: 2;
		padding-bottom: 1.5rem;
	}
	
	.foley-c7-ui-promo-card__inner {
		padding-bottom: 2rem;
	}
	
	.foley-c7-ui-promo-card__content {
		padding-inline: 2rem;
	}
}

.foley-c7-ui-promo-card {
	background-color: var(--promo-background-color, var(--color-option-1));
  border-radius: 0.75rem;
  color: var(--promo-text-color, var(--color-white, #fff));
	height: 100%;
	margin-inline: auto;
  overflow: clip;
  text-align: center;

	@media(width > 1024px) {
		max-width: 270px;
	}
}

.foley-c7-ui-promo-card__inner {
	color: inherit;
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
	height: 100%;	
  padding: 0 0 1rem;
	text-decoration: none;


	&:visited,
	&:hover,
	&:focus,
	&:active {
		color: inherit !important;
	}
}

.foley-c7-ui-promo-card__media img,
.foley-c7-ui-promo-card__media .foley-c7-ui-promo-card__image {
	display: block;
	width: 100%;
	height: auto;
}

.foley-c7-ui-promo-card__content {
	display: flex;
	flex-direction: column;
	
	/*flex-grow: 1;*/
	/*gap: 0.75rem;*/
	gap: 1.5rem;
	padding-inline: 1rem;
}

.foley-c7-ui-promo-card__title,
.foley-c7-ui-promo-card__message {
	color: inherit;
	margin: 0;
}

.foley-c7-ui-promo-card__title {
	font-size: var(--h4-font-size);
}

.foley-c7-ui-promo-card__message {
	font-size: 1rem;
}

.foley-c7-ui-wine-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	margin-inline: auto;
	max-width: 300px;
	position: relative;

	.actions-overlay {
		align-items: center;
		background: rgba(255, 255, 255, 0.9);
		display: flex;
		flex-direction: column;
		gap: 2rem;
		justify-content: center;
		inset: 0;
		opacity: 0;
		padding: 1.5rem;
		position: absolute;
		transition: opacity .3s ease-in-out;



		.buttons {
			@media(width > 1024px) {
				display: grid;
				gap: 1rem;
				width: fit-content;
			}

			.outline {
				background: rgb(from var(--color-white, #fff) r g b / .5);
				color: var(--button-background, var(--color-page-link));
				outline-style: solid;
				outline-offset: -1.5px;
				outline-color: var(--button-background, var(--color-page-link));
				outline-width: 1px;

				&:hover {
					background: rgb(from var(--color-white, #fff) r g b / .5) !important;
					color: rgb(from var(--button-background, var(--color-page-link)) r g b / .75) !important;
					outline-color: rgb(from var(--button-background, var(--color-page-link)) r g b / .75) !important;
				}
			}
		}

		@media(width <=1024px) {
			display: contents;

			.sub-details,
			.button:not(.js-c7-add-to-cart) {
				display: none !important;
			}
		}

	}

	&:hover {
		.actions-overlay {
			opacity: 1;
		}
	}
}

.foley-c7-ui-wine-card .media img,
.foley-c7-ui-wine-card .media .foley-c7-ui-wine-card__image {
	display: block;
	width: 100%;
	height: auto;
}

.foley-c7-ui-wine-card__image-placeholder {
	display: block;
	width: 100%;
	aspect-ratio: 3 / 4;
	background: rgba(0, 0, 0, 0.08);
}

.foley-c7-ui-wine-listing__empty {
	padding: 1rem 0;
}

.foley-c7-ui-wine-listing__navigation {
	grid-column: span 2;
}

.foley-c7-ui-wine-listing__pagination {
	display: flex;
	flex-wrap: wrap;
	gap: 0.125rem;
	justify-content: center;
	margin-top: 1.5rem;
}

.foley-c7-ui-wine-listing__page {
	
	align-items: center;
	color: var(--color-black);
	display: inline-flex;
	font-size: 18px;
	justify-content: center;
	line-height: 1.2;
	min-width: 2.5rem;
	padding: 0.5rem 0.75rem;
	text-align: center;
	text-decoration: none;
}

.foley-c7-ui-wine-listing__page.is-current {
	font-weight: 700;
}

.foley-c7-ui-wine-listing__load-more {
	margin-top: 1.5rem;
}

.foley-c7-ui-wine-listing .action-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
}

@media (min-width: 769px) {
	/*.foley-c7-ui-wine-listing__controls-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}*/

	.foley-c7-ui-wine-listing__grid {
		grid-template-columns: repeat(var(--foley-c7-ui-columns-tablet), minmax(0, 1fr));
	}
}

@media (min-width: 1025px) {
	/*.foley-c7-ui-wine-listing__controls-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}*/

	.foley-c7-ui-wine-listing__grid {
		grid-template-columns: repeat(var(--foley-c7-ui-columns-desktop), minmax(0, 1fr));
	}
}


.foley-c7-ui-wine-listing__results {
  .wine-price {
		margin-block: auto 0;
		padding-top: .5rem;

    .c7-product__add-to-cart__form {
      align-items: stretch;
    }

    .c7-product__add-to-cart__form__quantity {
      input {
        height: 40px;
        padding: .5rem .5rem;
        width: 44px;
      }
		}
  }

  .action-buttons {
		margin-top: auto;
    padding-top: 0 !important;
	}
	
	.title {
		font-size: 1.125rem !important;
	}
}

.foley-c7-ui-wine-listing__controls-close {
	background: url('/wp-content/themes/ffws-brands-v2/dist/img/icons.svg#close') 50% 50% / contain no-repeat;
	border: unset;
	cursor: pointer;
	font-size: 0;
	height: 1.5rem;
	padding: 0;
	position: absolute;
	right: 1.75rem;
	top: 4.5rem;
	width: 1.5rem;
	
	@media(width > 1200px) {
		display: none;
	}
}



#foley-c7-ui-wine-listing__controls-toggle {
	align-items: center;
	background: none;
	border: none;
	color: var(--color-black);
	cursor: pointer;
	display: flex;
	font-size: 1.25rem;
	font-weight: 700;
	gap: .75rem;
	left: 1.75rem;
	line-height: 1.2;
	padding: 0;
	position: absolute;
	top: 4.5rem;
	z-index: 2;
	
	svg {
		height: 2rem;
		width: 2rem;
	}
}



.foley-c7-ui-wine-listing__per-page {
	align-items: center;
	display: flex;
	gap: .75rem;
	position: absolute;
	right: 1.75rem;
	top: 4.5rem;
	z-index: 2;
	
	& > svg {
		height: 1.75rem;
		width: 1.75rem;
	}
	
	label {
		color: var(--color-black);
		font-size: 1.25rem;
		font-weight: 700;
		line-height: 1.2;
	}
	
	select {
		background: var(--color-white);
		border: 1px solid rgba(0, 0, 0, 0.10);
		border-radius: .25rem;
		color: #231f20;
		text-align: center;
		font-size: 1.125rem;
		font-weight: 600;
		line-height: 1.25;
		letter-spacing: 0.18px;
		
		&, &:hover, &:focus {
			border: 1px solid rgba(0, 0, 0, 0.10) !important;
		}
		
		&::picker-icon {
			background: url('/wp-content/themes/ffws-brands-v2/dist/img/icons.svg#chevron-right') 50% 50% / contain no-repeat;
			color: transparent !important;
			rotate: 90deg;	
		}
		
		&:open::picker-icon {
			rotate: 90deg !important;
		}
	}
}
