.store-appointment {
	padding: 1rem;
	line-height: 1.25;
	text-align: center;
}

.store-appointment > span {
	display: block;
	font-family: Sanchez, sans-serif;
	font-size: 0.75rem;
	font-weight: 700;
	line-height: 1rem;
	text-align: center;
}

@media (min-width: 768px) {
	.store-appointment > span {
		font-size: 14px;
		line-height: 20px;
	}
}

.store-appointment > span + a {
	--tw-bg-opacity: 1;
	--tw-text-opacity: 1;

	display: inline-flex;
	justify-content: center;
	align-items: center;
	padding: 0.75rem 1.5rem;
	background-color: rgb(5 1 17 / var(--tw-bg-opacity, 1));
	font-size: 0.75rem;
	font-weight: 700;
	line-height: 1rem;
	text-transform: uppercase;
	color: rgb(255 255 255 / var(--tw-text-opacity, 1));
	cursor: pointer;
	border-radius: 0.25rem;
}

@media (min-width: 768px) {
	.store-appointment > span + a {
		font-size: 14px;
		line-height: 20px;
	}
}

.store-appointment .book-button {
	--tw-bg-opacity: 1;
	--tw-text-opacity: 1;

	display: inline-flex;
	justify-content: center;
	align-items: center;
	padding: 0.75rem 1.5rem;
	background-color: rgb(5 1 17 / var(--tw-bg-opacity, 1));
	font-size: 0.75rem;
	font-weight: 700;
	line-height: 1rem;
	text-transform: uppercase;
	color: rgb(255 255 255 / var(--tw-text-opacity, 1));
	cursor: pointer;
	border-radius: 0.25rem;
}

@media (min-width: 768px) {
	.store-appointment .book-button {
		font-size: 14px;
		line-height: 20px;
	}
}

.store-appointment .book-button-disabled {
	--tw-bg-opacity: 1;
	--tw-text-opacity: 1;

	display: inline-flex;
	justify-content: center;
	align-items: center;
	padding: 0.75rem 1.5rem;
	background-color: rgb(5 1 17 / var(--tw-bg-opacity, 1));
	font-size: 0.75rem;
	font-weight: 700;
	line-height: 1rem;
	color: rgb(255 255 255 / var(--tw-text-opacity, 1));
	cursor: not-allowed;
	border-radius: 0.25rem;
}

@media (min-width: 768px) {
	.store-appointment .book-button-disabled {
		font-size: 14px;
		line-height: 20px;
	}
}

.store-hours li > span:first-child {
	font-weight: 700;
}

.store-card-reviews .review-header .emphasized-number {
	margin-left: 0.5rem;
	font-weight: 700;
}

.store-card-reviews .average + .total {
	margin-top: 0.25rem;
}

.store-card-reviews .review-header .average,
.store-card-reviews .review-header .total {
	display: flex;
	align-items: center;
}

.store-card-reviews .review-header .average > div,
.store-card-reviews .review-header .total > div {
	flex: 0 0 auto;
	font-size: 0.75rem;
	line-height: 1rem;
}

@media (min-width: 768px) {
	.store-card-reviews .review-header .average > div,
	.store-card-reviews .review-header .total > div {
		font-size: 14px;
		line-height: 20px;
	}
}

.store-card-reviews .review-header .average .stars,
.store-card-reviews .review-header .total .stars {
	display: flex;
	align-items: center;
	margin-left: 0.5rem;
}

.store-card-reviews .review-header .average .stars svg,
.store-card-reviews .review-header .total .stars svg {
	margin-right: 0.125rem;
}

.store-card-reviews .review-header .average svg,
.store-card-reviews .review-header .total svg {
	display: inline-block;
	width: 12px;
	height: 12px;
}

.store-card-reviews .review-header .average .yext-star-fill,
.store-card-reviews .review-header .total .yext-star-fill {
	fill: #946f2e;
}

.store-card-reviews .review-header .average .yext-star-fill.half,
.store-card-reviews .review-header .total .yext-star-fill.half {
	opacity: 0.3;
}

.store-address {
	display: block;
	justify-content: space-between;
}

@media (min-width: 768px) {
	.store-address {
		column-gap: 0.5rem;
		column-gap: 0.5rem;
		display: flex;
		flex-wrap: nowrap;
	}
}

.store-address .store-address__left {
	text-align: left;
}

.store-address .store-address__right {
	margin-top: 0.25rem;
	text-align: left;
}

@media (min-width: 768px) {
	.store-address .store-address__right {
		margin-top: 0;
		text-align: right;
	}
}

.store-card .store-card__hours {
	--tw-border-opacity: 1;

	margin-top: 1rem;
	padding-top: 1rem;
	border-style: solid;
	border-top: 1px rgb(225 225 225 / var(--tw-border-opacity, 1));
}

.store-card .store-card__cta {
	font-weight: 700;
	line-height: 1.5;
	text-transform: none;
}

.store-card .store-address__left a,
.store-card .store-address__left p {
	text-decoration: none;
}

.store-card .store-card__email {
	font-weight: 700;
	color: var(--color-base-text-2);
	text-decoration-line: underline;
	transition-duration: 0.3s;
	transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter,
		backdrop-filter;
	transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

.store-card .store-card__email:hover {
	--tw-text-opacity: 1;

	color: rgb(220 38 38 / var(--tw-text-opacity, 1));
}

.store-card h3 {
	--tw-text-opacity: 1;

	margin: 0;
	font-family: Lato, sans-serif;
	font-size: 16px;
	font-weight: 700;
	line-height: 20px;
	text-transform: uppercase;
	color: rgb(5 1 17 / var(--tw-text-opacity, 1));
}

.store-card .store-card__image {
	position: relative;
	overflow: hidden;
	display: block;
	border-radius: 0.25rem;
}

@media (min-width: 768px) {
	.store-card .store-card__image {
		padding-bottom: 80%;
	}
}

@media (max-width: 767px) {
	.store-card .store-card__image {
		padding-bottom: 110%;
	}
}

.store-card .store-card__image img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-fit: cover;
}

.store-card .store-card__footer {
	display: flex;
	align-items: center;
	margin-top: 0.5rem;
	font-size: 14px;
	line-height: 20px;
}

.store-card .store-card__footer > a {
	display: inline-block;
	margin-right: 0.5rem;
	font-weight: 700;
	text-decoration-line: underline;
}

.store-card .store-card__footer > a:hover {
	--tw-text-opacity: 1;

	color: rgb(174 0 0 / var(--tw-text-opacity, 1));
}

@media (min-width: 768px) {
	.store-card.store-card--placeholder .store-card__image {
		padding-bottom: 80%;
	}
}

@media (max-width: 767px) {
	.store-card.store-card--placeholder .store-card__image {
		padding-bottom: 110%;
	}
}

.store-card.store-card--placeholder .store-card__contents > div:first-child {
	width: 75%;
	height: 1.75rem;
}

.store-card.store-card--placeholder .store-card__contents > div:nth-child(2),
.store-card.store-card--placeholder .store-card__contents > div:nth-child(3) {
	width: 50%;
	height: 0.75rem;
}

.store-card.store-card--placeholder .store-card__contents > div:nth-child(4) {
	width: 100%;
	padding-bottom: 50%;
}

.store-card.store-card--placeholder .store-card__contents > div:nth-child(5) {
	width: 75%;
	height: 0.75rem;
}

.stores {
	margin-bottom: 3rem;
}

.stores .stores__radius {
	padding-top: 0;
	padding-left: 0;
	border-top-width: 0;
	border-left-width: 0;
	border-right-width: 0;
}

.stores__header {
	--tw-text-opacity: 1;

	overflow: hidden;
	color: rgb(34 31 31 / var(--tw-text-opacity, 1));
}

.stores__header h1 {
	margin: 0 0 0.4375rem;
	font-family: Lato, Helvetica, Arial, sans-serif;
	font-size: 1.625rem;
	font-weight: 700;
	letter-spacing: 0.03em;
	transition-duration: 0.35s;
	transition-property: font-size;
	transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
	transition-timing-function: ease-in-out;
}

.stores__header img {
	width: 100%;
}

.stores__header-ir {
	display: flex;
	justify-content: center;
	align-items: center;
}

@media (min-width: 768px) {
	.stores__header-ir {
		position: relative;
		width: 100%;
	}
}

.stores__header-p {
	margin: 0 auto;
	line-height: 1.5;
	max-width: 17.75rem;
}

.stores__header-p p {
	font-family: Lato, Helvetica, Arial, sans-serif;
	font-size: 1em;
	line-height: 1.42857em;
	transition-duration: 0.35s;
	transition-property: font-size;
	transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
	transition-timing-function: ease-in-out;
}

.stores__header-top {
	display: block;
}

.stores__header-cont {
	position: absolute;
	left: 0;
	right: 0;
	text-align: center;
}

.stores__no-results p {
	margin: 2.5rem 0 1.875em;
	font-family: Lato, Helvetica, Arial, sans-serif;
	font-size: 1em;
	font-weight: 400;
	line-height: 1.42857em;
	font-style: normal;
	transition-duration: 0.35s;
	transition-property: font-size;
	transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
	transition-timing-function: ease-in-out;
}

.stores .stores__title {
	position: relative;
	margin: 0;
	padding: 0;
	font-family: Sanchez, sans-serif;
	font-size: 1.125rem;
	text-align: left;
}

@media (min-width: 1024px) {
	.stores .stores__title {
		font-size: 1.75rem;
	}
}

.stores .stores__title .icon {
	position: absolute;
	right: 0;
}

.stores .stores__title .icon-up {
	--tw-scale-x: 0;
	--tw-scale-y: 0;

	visibility: hidden;
	opacity: 0;
}

.stores .stores__title .icon-down,
.stores .stores__title .icon-up {
	transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x))
		skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.stores .stores__title .icon-down {
	--tw-scale-x: 1;
	--tw-scale-y: 1;

	visibility: visible;
	opacity: 1;
}

.stores .stores__title--result {
	grid-column: span 1 / span 1;
	margin-top: 27px;
}

@media (min-width: 500px) {
	.stores .stores__title--result {
		grid-column: span 2 / span 2;
	}
}

@media (min-width: 1024px) {
	.stores .stores__title--result {
		grid-column: span 3 / span 3;
	}
}

.stores .stores__title--result select {
	font-size: inherit;
}

.stores__wrapper {
	position: relative;
	padding-top: 2.5rem;
}

.stores__wrapper > .stores__title {
	margin-bottom: 1rem;
}

@media (min-width: 768px) {
	.stores__wrapper > .stores__title {
		margin-bottom: 1.5rem;
	}
}

.stores__wrapper + .stores__wrapper {
	--tw-border-opacity: 1;

	margin-top: 2.5rem;
	border-top: 1px rgb(225 225 225 / var(--tw-border-opacity, 1));
	border-style: solid;
}

.stores__list.is-hidden {
	visibility: hidden;
	opacity: 0;
	height: 0;
}

.stores__list .store-item h3 {
	margin: 0.625rem 0 0.125rem;
	font-family: Sanchez, Helvetica, Arial, sans-serif;
	font-size: 1.125em;
	font-weight: 700;
	letter-spacing: 0.03em;
	transition-duration: 0.35s;
	transition-property: font-size;
	transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
	transition-timing-function: ease-in-out;
}

.stores__list .store-item__data {
	--tw-text-opacity: 1;

	padding-top: 1rem;
	font-size: 16px;
	line-height: 20px;
	line-height: 1.5rem;
	letter-spacing: 0;
	color: rgb(5 1 17 / var(--tw-text-opacity, 1));
}

.stores__anchor {
	position: absolute;
	top: -50px;
	visibility: hidden;
}

.stores .btn-show-all {
	--tw-text-opacity: 1;
	--tw-bg-opacity: 1;

	padding: 1.125em 1.875em;
	border: 1px solid transparent;
	background-color: rgb(34 31 31 / var(--tw-bg-opacity, 1));
	font-family: Lato, Helvetica, Arial, sans-serif;
	font-size: 0.875em;
	font-weight: 700;
	line-height: 1.125em;
	text-align: center;
	text-transform: uppercase;
	color: rgb(255 255 255 / var(--tw-text-opacity, 1));
	transition: font-size 0.35s ease-in-out,
		padding 0.35s ease-in-out;
	cursor: pointer;
	border-radius: 0.25em;
}

.stores-form {
	margin: 7.1% auto 0;
	max-width: 25.25rem;
	transition-duration: 0.2s;
	transition-property: all;
	transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
	transition-timing-function: ease-in-out;
}

.stores-form .input,
.stores-form label {
	text-transform: uppercase;
}

.stores-form label {
	--tw-text-opacity: 1;

	font-size: 14px;
	font-weight: 700;
	line-height: 20px;
	letter-spacing: 0.1em;
	color: rgb(121 119 118 / var(--tw-text-opacity, 1));
}

.stores-form__btn {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	z-index: 1;
	opacity: 0;
	width: 50px;
	transform: translate3d(-4px, 0, 0);
}

.stores-form .input-placeholder {
	position: relative;
	z-index: 0;
}

.stores-form .input-placeholder label {
	position: absolute;
	overflow: hidden;
	z-index: 3;
	display: block;
	opacity: 1;
	padding: 1rem 1.5625rem;
	border: 1px solid transparent;
}

.stores-form .input-placeholder.has-value .stores-form__btn {
	visibility: visible;
	opacity: 1;
	transform: translateZ(0);
}

.stores-form .input-placeholder .icon {
	position: absolute;
	top: 18px;
	right: 1rem;
	z-index: 3;
	display: block;
	width: 1em;
	height: 0.875em;
	background-image: var(--background-image);
	background-repeat: no-repeat;
	background-size: 25.75em 192.0625em;
	background-position: 0 0;
}

.stores-form__search {
	--tw-border-opacity: 1;
	--tw-bg-opacity: 1;
	--tw-text-opacity: 1;
	--tw-shadow: 0 0 #0000;
	--tw-shadow-colored: 0 0 #0000;

	position: relative;
	z-index: 2;
	width: 100%;
	margin: 0;
	padding: 13px 18px !important;
	border-width: 1px;
	border-style: solid;
	border-color: rgb(203 203 203 / var(--tw-border-opacity, 1));
	background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
	font-family: Lato, Helvetica, Arial, sans-serif;
	font-size: 14px;
	font-weight: 700;
	line-height: 20px;
	letter-spacing: 0.1em;
	text-align: left;
	text-transform: uppercase;
	color: rgb(34 31 31 / var(--tw-text-opacity, 1));
	border-radius: 0.25rem;
	box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

@media only screen and (max-width: 767px) {
	.stores__header {
		position: relative;
		height: 19.6875rem;
	}

	.btn-show-all {
		margin-left: 1.4375rem;
	}
}

.store-items {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(1, minmax(0, 1fr));
}

@media (min-width: 500px) {
	.store-items {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 1024px) {
	.store-items {
		gap: 2rem;
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}
