.pshba {
	margin: 1.5rem 0;
	width: 100%;
}

.pshba-controls {
	display: flex;
	justify-content: flex-end;
	gap: .5rem;
	margin: 0 .25rem .6rem;
}

.pshba-control {
	width: 2.25rem;
	height: 2.25rem;
	border: 1px solid rgba(150, 105, 90, .5);
	border-radius: 999px;
	background: #fff;
	color: #96695a;
	font-size: 1rem;
	line-height: 1;
	cursor: pointer;
	transition: background-color .2s ease, color .2s ease, border-color .2s ease;
}

.pshba-control:hover,
.pshba-control:focus {
	background: #96695a;
	color: #fff;
	border-color: #96695a;
}

.pshba-control.is-disabled,
.pshba-control:disabled {
	opacity: .35;
	cursor: not-allowed;
	background: #fff;
	color: #96695a;
	border-color: rgba(150, 105, 90, .35);
}

.pshba-grid {
	display: flex;
	gap: 1rem;
	overflow-x: auto;
	overflow-y: hidden;
	padding: .25rem .25rem 1rem;
	scroll-snap-type: x mandatory;
	scroll-padding-left: .25rem;
	-webkit-overflow-scrolling: touch;
	scroll-behavior: smooth;
}

.pshba-grid::-webkit-scrollbar {
	height: 8px;
}

.pshba-grid::-webkit-scrollbar-thumb {
	background: rgba(150, 105, 90, .45);
	border-radius: 999px;
}

.pshba-card {
	flex: 0 0 500px;
	min-width: 500px;
	scroll-snap-align: start;
	overflow: hidden;
}
.pshba-card__body { display: flex; flex-direction: column; height: 100%; }
.pshba-card__images { display: grid; grid-template-columns: 1fr 1fr; }
.pshba-card__info { padding: .75rem 1rem .5rem; }
.pshba-card__title { font-weight: 600; margin: 0 0 .35rem; color: black;}
.pshba-card__description { margin: 0; color: black; font-size: .9rem; line-height: 1.5; }
.pshba-card__img { position: relative; }
.pshba-card__img img { width: 100%; height: auto; display: block;height: 100%;
object-fit: cover; }
.pshba-card__label { position: absolute; top: .5rem; left: .5rem; background: rgba(0,0,0,.55); color: #fff; font-size: .75rem; padding: .15rem .4rem; border-radius: 999px; }
.pshba-card__cta-wrap { padding: .9rem 1rem 1rem; }
.pshba-card__cta {
	display: block;
	width: 50%;
    margin: auto;
	text-align: center;
	text-decoration: none;
	font-weight: 600;
	color: #fff;
	background:#96695a;
	border: 1px solid rgba(255,255,255,.9);
	border-radius: 8px;
	padding: .55rem .8rem;
	transition: transform .2s ease, box-shadow .2s ease;
}
.pshba-card__cta:hover,
.pshba-card__cta:focus {
	color: #8a5d50;
	box-shadow: 0 6px 16px rgba(0,0,0,.18);
	transform: translateY(-1px);
}

@media (max-width: 768px) {
	.pshba-grid {
		gap: .75rem;
	}

	.pshba-card {
		flex-basis: 80vw;
		min-width: 80vw;
	}
}
