/* AMS Bobcat Range — listing + brochure styles. Restrained; inherits theme type. */

.ams-bc {
	--bc-accent: #e2581f;
	--bc-ink: #1c1f23;
	--bc-muted: #6b7280;
	--bc-line: #e5e7eb;
	--bc-radius: 12px;
	color: var(--bc-ink);
}

/* Filters */
.ams-bc-filters { display: flex; flex-wrap: wrap; gap: .6rem; margin: 0 0 1.5rem; }
.ams-bc-filters input[type="search"], .ams-bc-filters select {
	flex: 1 1 180px; min-width: 0; padding: .6rem .75rem;
	border: 1px solid var(--bc-line); border-radius: 8px; font: inherit; background: #fff;
}

/* Buttons */
.ams-bc-btn {
	display: inline-block; padding: .65rem 1.2rem; background: var(--bc-accent); color: #fff;
	border: 0; border-radius: 8px; font: inherit; font-weight: 600; text-decoration: none; cursor: pointer;
	transition: filter .15s ease;
}
.ams-bc-btn:hover { filter: brightness(.92); color: #fff; }
.ams-bc-btn--ghost { background: transparent; color: var(--bc-accent); border: 1px solid var(--bc-accent); }
.ams-bc-btn--ghost:hover { background: var(--bc-accent); color: #fff; }

/* Grid */
.ams-bc-grid { display: grid; gap: 1.25rem; grid-template-columns: repeat(auto-fill, minmax(min(100%, 260px), 1fr)); }
.ams-bc-card {
	display: flex; flex-direction: column; border: 1px solid var(--bc-line); border-radius: var(--bc-radius);
	overflow: hidden; background: #fff; text-decoration: none; color: inherit;
	transition: transform .15s ease, box-shadow .15s ease;
}
.ams-bc-card:hover { transform: translateY(-3px); box-shadow: 0 10px 28px rgba(0,0,0,.10); }
.ams-bc-card__media { aspect-ratio: 4 / 3; background: #f1f2f4 center / contain no-repeat; }
.ams-bc-card__body { padding: 1rem; display: flex; flex-direction: column; gap: .3rem; }
.ams-bc-card__series { font-size: .75rem; text-transform: uppercase; letter-spacing: .04em; color: var(--bc-muted); }
.ams-bc-card__title { margin: 0; font-size: 1.15rem; }
.ams-bc-card__summary { margin: 0; font-size: .9rem; color: var(--bc-muted); }
.ams-bc-card__more { margin-top: .35rem; font-weight: 600; color: var(--bc-accent); font-size: .9rem; }

.ams-bc-pagination { display: flex; flex-wrap: wrap; gap: .4rem; margin: 1.75rem 0 0; }
.ams-bc-pagination a { min-width: 2.25rem; padding: .45rem .6rem; text-align: center; border: 1px solid var(--bc-line); border-radius: 7px; text-decoration: none; color: inherit; }
.ams-bc-pagination a.is-current { background: var(--bc-accent); color: #fff; border-color: var(--bc-accent); }
.ams-bc-empty { padding: 2rem 0; color: var(--bc-muted); }

/* Single */
.ams-bc-single { max-width: 1080px; margin-inline: auto; }
.ams-bc-back { display: inline-block; margin-bottom: 1rem; color: var(--bc-muted); text-decoration: none; }
.ams-bc-back:hover { color: var(--bc-accent); }
.ams-bc-single__layout { display: grid; grid-template-columns: 1.5fr 1fr; gap: 2rem; margin: .5rem 0 1.5rem; }
@media (max-width: 760px) { .ams-bc-single__layout { grid-template-columns: 1fr; } }
.ams-bc-single__main { width: 100%; aspect-ratio: 4 / 3; object-fit: contain; background: #f1f2f4; border-radius: var(--bc-radius); }
.ams-bc-single__thumbs { display: flex; gap: .5rem; margin-top: .5rem; flex-wrap: wrap; }
.ams-bc-single__thumbs img { width: 72px; height: 54px; object-fit: cover; border-radius: 6px; cursor: pointer; border: 2px solid transparent; }
.ams-bc-single__thumbs img:hover { border-color: var(--bc-accent); }
.ams-bc-single__series { font-size: .8rem; text-transform: uppercase; letter-spacing: .04em; color: var(--bc-muted); margin: 0 0 .25rem; }
.ams-bc-single__title { margin: 0 0 .5rem; }
.ams-bc-single__lead { color: var(--bc-muted); font-size: 1.05rem; line-height: 1.6; }
.ams-bc-single__cta { display: flex; gap: .6rem; flex-wrap: wrap; margin-top: 1rem; }
.ams-bc-single__desc { margin: 1.5rem 0; line-height: 1.7; }
.ams-bc-single__specs h2 { font-size: 1.2rem; }
.ams-bc-single__specs table { width: 100%; border-collapse: collapse; }
.ams-bc-single__specs th, .ams-bc-single__specs td { text-align: left; padding: .6rem .75rem; border-bottom: 1px solid var(--bc-line); }
.ams-bc-single__specs th { width: 40%; color: var(--bc-muted); font-weight: 600; }
.ams-bc-single__video { margin: 1.5rem 0; }
.ams-bc-single__video iframe { width: 100%; aspect-ratio: 16 / 9; height: auto; border: 0; border-radius: var(--bc-radius); }

.ams-bc a:focus-visible, .ams-bc button:focus-visible, .ams-bc input:focus-visible, .ams-bc select:focus-visible {
	outline: 2px solid var(--bc-accent); outline-offset: 2px;
}
@media (prefers-reduced-motion: reduce) { .ams-bc-card, .ams-bc-btn { transition: none; } }
