.bbt-container {
	width: 100%;
	max-width: 1280px;
	margin: 0 auto;
	padding-left: 32px;
	padding-right: 32px;
}

.bbt-container--wide {
	max-width: 1600px;
}

.bbt-section {
	padding-top: 64px;
	padding-bottom: 64px;
}

.bbt-section--tight {
	padding-top: 40px;
	padding-bottom: 40px;
}

.bbt-section--flush-top {
	padding-top: 0;
}

.bbt-grid {
	display: grid;
	gap: 28px;
}

.bbt-grid--2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.bbt-grid--3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.bbt-grid--4 {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.bbt-stack {
	display: flex;
	flex-direction: column;
}

.bbt-stack--18 {
	gap: 18px;
}

.bbt-stack--24 {
	gap: 24px;
}

.bbt-single-shell {
	width: 100%;
}

.bbt-single-shell__inner {
	width: 100%;
	max-width: 860px;
	margin: 0 auto;
	padding-left: 24px;
	padding-right: 24px;
}

/* Existing listing grid bridge */
.bbt-listing-grid {
	display: grid;
	gap: 28px;
}

.bbt-listing-grid--2col {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.bbt-listing-grid--3col {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.bbt-listing-grid--4col {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

/* Archive shell layout */
.bbt-archive-shell {
	display: block;
	width: 100%;
}

.bbt-archive-content {
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 32px 64px;
}

.bbt-archive-listings-wrap {
	width: 100%;
}

.bbt-home-listings--sale {
	max-width: 1600px;
	margin: 0 auto;
}

@media (max-width: 1024px) {
	.bbt-grid--3,
	.bbt-grid--4,
	.bbt-listing-grid--3col,
	.bbt-listing-grid--4col {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 768px) {
	.bbt-container {
		padding-left: 20px;
		padding-right: 20px;
	}

	.bbt-section {
		padding-top: 48px;
		padding-bottom: 48px;
	}

	.bbt-listing-grid--2col {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 640px) {
	.bbt-grid--2,
	.bbt-grid--3,
	.bbt-grid--4,
	.bbt-listing-grid--3col,
	.bbt-listing-grid--4col {
		grid-template-columns: 1fr;
	}

	.bbt-single-shell__inner {
		padding-left: 18px;
		padding-right: 18px;
	}

	.bbt-archive-content {
		padding: 0 20px 48px;
	}
}