/* Search results page — ArtisanConnect layout */

.sac-search-page .sac-search-hero {
	padding-bottom: 48px;
}

.sac-search-page .sac-search-hero .acg-hero__title {
	color: #fff;
}

.sac-search-page .sac-search-hero .acg-hero__title strong {
	color: var(--acg-peach);
}

.sac-search-hero__form {
	max-width: 640px;
	margin: 32px auto 0;
}

.sac-search-hero__form .acg-header-search__form {
	width: 100%;
}

.sac-search-hero__form .acg-header-search__field {
	background: rgba(255, 255, 255, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 999px;
	padding: 6px 8px 6px 18px;
}

.sac-search-hero__form .acg-header-search__icon {
	color: rgba(255, 255, 255, 0.72);
}

.sac-search-hero__form .acg-header-search__input {
	color: #fff;
	font-size: 1rem;
}

.sac-search-hero__form .acg-header-search__input::placeholder {
	color: rgba(255, 255, 255, 0.62);
}

.sac-search-hero__form .acg-header-search__input:focus {
	outline: none;
}

.sac-search-hero__form .acg-header-search__submit {
	background: var(--acg-peach);
	color: var(--acg-dark);
}

.sac-search-hero__form .acg-header-search__submit:hover,
.sac-search-hero__form .acg-header-search__submit:focus-visible {
	background: #fff;
}

.sac-search-content {
	padding: 48px 24px 96px;
}

.sac-search-content__inner {
	max-width: 920px;
	margin: 0 auto;
}

.sac-search-summary {
	margin: 0 0 40px;
	font-size: 1rem;
	color: var(--acg-muted);
	text-align: center;
}

.sac-search-summary strong {
	color: var(--acg-dark);
}

.sac-search-section + .sac-search-section {
	margin-top: 48px;
}

.sac-search-section__heading {
	margin: 0 0 20px;
	font-family: var(--acg-font-heading);
	font-size: 1.375rem;
	font-weight: 300;
	line-height: 1.25;
	color: var(--acg-dark);
}

.sac-search-section__heading strong {
	font-weight: 600;
	color: var(--acg-accent);
}

.sac-search-results-list {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.sac-search-result-card {
	border: 1px solid rgba(45, 41, 38, 0.1);
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(45, 41, 38, 0.05);
	transition: border-color var(--acg-duration) var(--acg-ease), box-shadow var(--acg-duration) var(--acg-ease), transform var(--acg-duration) var(--acg-ease);
}

.sac-search-result-card:hover,
.sac-search-result-card:focus-within {
	border-color: rgba(196, 106, 74, 0.28);
	box-shadow: 0 14px 32px rgba(45, 41, 38, 0.08);
	transform: translateY(-1px);
}

.sac-search-result-card__link {
	display: flex;
	align-items: flex-start;
	gap: 16px;
	padding: 16px 18px;
	color: inherit;
	text-decoration: none;
}

.sac-search-result-card__media {
	flex: 0 0 72px;
	width: 72px;
	height: 72px;
	border-radius: 12px;
	overflow: hidden;
	background: rgba(45, 41, 38, 0.06);
}

.sac-search-result-card__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.sac-search-result-card__placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	color: var(--acg-muted);
}

.sac-search-result-card__placeholder svg {
	width: 28px;
	height: 28px;
}

.sac-search-result-card__body {
	flex: 1 1 auto;
	min-width: 0;
}

.sac-search-result-card__type {
	display: inline-block;
	margin-bottom: 6px;
	padding: 2px 8px;
	border-radius: 999px;
	background: rgba(196, 106, 74, 0.12);
	color: var(--acg-accent);
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	line-height: 1.4;
}

.sac-search-result-card__title {
	margin: 0;
	font-family: var(--acg-font-heading);
	font-size: 1.0625rem;
	font-weight: 600;
	line-height: 1.3;
	color: var(--acg-dark);
}

.sac-search-result-card:hover .sac-search-result-card__title,
.sac-search-result-card:focus-within .sac-search-result-card__title {
	color: var(--acg-accent);
}

.sac-search-result-card__date {
	margin: 6px 0 0;
	font-size: 0.875rem;
	font-weight: 600;
	color: var(--acg-accent);
}

.sac-search-result-card__desc {
	margin: 8px 0 0;
	font-size: 0.875rem;
	line-height: 1.5;
	color: var(--acg-muted);
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.sac-search-result-card__meta {
	flex: 0 0 auto;
	align-self: center;
	text-align: right;
}

.sac-search-result-card__price {
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--acg-dark);
	white-space: nowrap;
}

.sac-search-empty {
	padding: 48px 24px;
	border: 1px dashed rgba(45, 41, 38, 0.16);
	border-radius: 20px;
	background: rgba(45, 41, 38, 0.03);
	text-align: center;
}

.sac-search-empty h2 {
	margin: 0 0 12px;
	font-family: var(--acg-font-heading);
	font-size: 1.5rem;
	font-weight: 300;
	color: var(--acg-dark);
}

.sac-search-empty p {
	margin: 0;
	font-size: 1rem;
	line-height: 1.6;
	color: var(--acg-muted);
}

@media (max-width: 640px) {
	.sac-search-result-card__link {
		flex-wrap: wrap;
	}

	.sac-search-result-card__meta {
		width: 100%;
		padding-left: 88px;
		text-align: left;
	}
}
