/* Park Space — parking page (medidas do Figma 200:2802) */
.ps-parking-main { background-color: var(--ps-white); padding: 1.5rem 0 4rem; }
.ps-parking-head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 1rem; margin-bottom: 2rem; }
.ps-parking-head-text { display: flex; flex-direction: column; gap: 0.5rem; }
.ps-parking-crumb a:hover { color: var(--ps-green-dark); }
.ps-parking-title { letter-spacing: -0.01em; }
.ps-parking-actions { display: flex; gap: 1rem; }

/* Galeria: 700x320 | 2 colunas de 322x156 (gap 8) */
.ps-parking-gallery { display: grid; grid-template-columns: 1fr; gap: 0.5rem; margin-bottom: 2.5rem; }
.ps-parking-gallery figure { position: relative; overflow: hidden; border-radius: var(--ps-radius-sm); background-color: var(--ps-surface-2); }
.ps-parking-gallery img { width: 100%; height: 100%; object-fit: cover; }
.ps-parking-gallery-main { aspect-ratio: 700 / 320; }
.ps-parking-gallery-item { aspect-ratio: 322 / 156; }
.ps-parking-gallery-more { position: absolute; right: 1rem; bottom: 1rem; }
@media (min-width: 48rem) {
	.ps-parking-gallery { grid-template-columns: 43.75rem 20.13rem 20.13rem; grid-template-rows: 9.75rem 9.75rem; justify-content: space-between; }
	.ps-parking-gallery-main { grid-row: 1 / 3; aspect-ratio: auto; }
	.ps-parking-gallery-item { aspect-ratio: auto; }
	.ps-parking-gallery-single { grid-template-columns: 1fr; grid-template-rows: auto; }
	.ps-parking-gallery-single .ps-parking-gallery-main { aspect-ratio: 1360 / 520; }
}

/* Conteúdo 783 | drawer 437 (gap 140); blocos gap 32 */
.ps-parking-grid { display: grid; grid-template-columns: 1fr; gap: 2.5rem; align-items: start; }
.ps-parking-content { display: flex; flex-direction: column; gap: 2rem; }
.ps-parking-address { display: flex; align-items: center; gap: 0.5rem; }
.ps-parking-address .ps-body { color: var(--ps-text-3); }
.ps-parking-facts {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1rem;
	padding: 1rem 1.5rem;
	border: 0.06rem solid var(--ps-border);
	border-radius: var(--ps-radius);
}
.ps-parking-fact { display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; gap: 1rem; padding: 0.81rem 0; }
.ps-parking-fact .ps-strong { max-width: 6.5rem; }
.ps-parking-verified { display: flex; align-items: center; gap: 1rem; }
.ps-parking-verified-icon { display: inline-flex; align-items: center; justify-content: center; width: 3.5rem; height: 3.5rem; border-radius: 50%; background-color: var(--ps-blue-light); flex: none; }
.ps-parking-verified-icon .ps-ic { color: var(--ps-blue); }
.ps-parking-verified-text { display: flex; flex-direction: column; gap: 0.19rem; }
.ps-parking-operator { color: var(--ps-text); }
.ps-parking-offer { display: flex; flex-direction: column; gap: 1.5rem; }
.ps-parking-offer-note { color: var(--ps-text-3); }
.ps-parking-features { display: grid; grid-template-columns: 1fr; gap: 1rem; }
.ps-parking-features-col { display: flex; flex-direction: column; gap: 1rem; }
.ps-parking-features-col li { display: flex; align-items: center; gap: 0.5rem; }
.ps-parking-feature-text { color: var(--ps-text-3); }
.ps-parking-map { display: flex; flex-direction: column; gap: 2rem; }
.ps-parking-map-media { aspect-ratio: 790 / 315; }
.ps-parking-aside { display: flex; flex-direction: column; gap: 2rem; align-items: flex-start; }
.ps-parking-drawer { width: 100%; gap: 0.5rem; }
.ps-parking-types { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; margin-bottom: 0.5rem; }
.ps-parking-type {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	height: 2.5rem;
	padding: 0.63rem 1rem;
	border: 0.06rem solid var(--ps-border);
	border-radius: var(--ps-radius);
	font-size: 0.88rem;
	line-height: 1.25rem;
	color: var(--ps-text);
}
.ps-parking-type.on { border-color: #a3a3a3; }
.ps-parking-price { display: flex; flex-direction: column; gap: 0.5rem; padding: 1rem 0; }
.ps-parking-price-value { display: flex; align-items: baseline; gap: 0.5rem; }
.ps-parking-price-unit { font-size: 1rem; line-height: 1.5; color: var(--ps-text); }
.ps-parking-price-table { color: var(--ps-text); text-decoration: underline; }
.ps-parking-drawer .ps-btn { margin-top: 0.5rem; }
@media (min-width: 48rem) {
	.ps-parking-facts { grid-template-columns: repeat(4, 1fr); gap: 0; }
	.ps-parking-fact { border-left: 0.06rem solid var(--ps-border); }
	.ps-parking-fact:first-child { border-left: 0; }
	.ps-parking-features { grid-template-columns: 1fr 1fr; gap: 2rem; }
}
@media (min-width: 62rem) {
	.ps-parking-main { padding: 2rem 0 4rem; }
	.ps-parking-head { margin-bottom: 2rem; }
	.ps-parking-grid { grid-template-columns: 48.94rem 27.31rem; justify-content: space-between; gap: 2rem; }
}
