/* Final multilingual editorial refinements */
[hidden] { display: none !important; }

body.tba-home-edition .address-card {
	order: 3;
	display: grid;
	grid-template-columns: minmax(150px, .72fr) minmax(0, 1.28fr);
	gap: 1.35rem;
	margin-top: 2rem;
	padding-top: 1.4rem;
	border-top: 1px solid rgba(25,25,22,.34);
}
.address-card-image {
	display: block;
	overflow: hidden;
	aspect-ratio: 4 / 3;
	background: var(--sand);
}
.address-card-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	filter: saturate(.86) contrast(.98);
	transition: transform .35s ease, filter .35s ease;
}
.address-card:hover .address-card-image img {
	transform: scale(1.018);
	filter: saturate(1) contrast(1);
}
.address-card-copy { align-self: center; }
.address-card-copy .eyebrow {
	margin: 0 0 .45rem;
	font-family: var(--sans);
	font-size: .56rem;
}
.address-card-copy h3 {
	margin: 0 0 .6rem;
	font-size: clamp(1.45rem, 2.25vw, 2.25rem);
}
.address-card-copy > p:not(.eyebrow) {
	margin: 0 0 .8rem;
	color: var(--muted);
	font-family: var(--sans);
	font-size: .76rem;
	line-height: 1.55;
}

.article-layout.is-single-column {
	grid-template-columns: minmax(0, 760px);
	justify-content: center;
}
.article-layout.is-single-column .article-content { grid-column: 1; }

.article-process {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin: 2.5rem 0 3rem;
	border-top: 1px solid var(--ink);
	border-left: 1px solid rgba(25,25,22,.28);
	font-family: var(--sans);
}
.article-process > div {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: .8rem;
	padding: 1.15rem;
	border-right: 1px solid rgba(25,25,22,.28);
	border-bottom: 1px solid rgba(25,25,22,.28);
}
.article-process b {
	color: var(--accent);
	font-size: .62rem;
	letter-spacing: .08em;
}
.article-process span,
.article-process strong { display: block; }
.article-process span {
	color: var(--muted);
	font-size: .74rem;
	line-height: 1.4;
}
.article-process strong {
	margin-bottom: .15rem;
	color: var(--ink);
	font-family: var(--serif);
	font-size: 1.05rem;
	font-weight: 600;
}

.cost-table-wrap {
	width: 100%;
	margin: 2rem 0 2.4rem;
	overflow-x: auto;
	border-top: 2px solid var(--ink);
	-webkit-overflow-scrolling: touch;
}
.cost-table {
	width: 100%;
	min-width: 650px;
	border-collapse: collapse;
	font-family: var(--sans);
	font-size: .76rem;
	line-height: 1.45;
}
.cost-table th,
.cost-table td {
	padding: .85rem .7rem;
	border-bottom: 1px solid rgba(25,25,22,.2);
	text-align: left;
	vertical-align: top;
}
.cost-table th {
	font-size: .59rem;
	letter-spacing: .08em;
	text-transform: uppercase;
}
.cost-table th:last-child,
.cost-table td:last-child {
	white-space: nowrap;
	text-align: right;
}
.cost-table .subtotal {
	background: #eee9df;
	font-weight: 650;
}
.cost-table .total {
	background: var(--ink);
	color: var(--paper);
	font-weight: 700;
}
.cost-table .total-with-work { background: var(--accent); }

.article-inline-figure { margin: 2.8rem 0 3rem; }
.article-inline-figure img,
.district-section figure img { margin: 0; }
.article-inline-figure figcaption,
.district-section figcaption {
	margin-top: .65rem;
	color: var(--muted);
	font-family: var(--sans);
	font-size: .62rem;
	line-height: 1.45;
}

.district-section {
	display: grid;
	grid-template-columns: minmax(0, 1.08fr) minmax(220px, .92fr);
	gap: clamp(1.5rem, 4vw, 3rem);
	align-items: center;
	margin: 3rem -7vw;
	padding: 2rem 0;
	border-top: 1px solid rgba(25,25,22,.24);
}
.district-section figure { margin: 0; }
.district-section figure img {
	aspect-ratio: 4 / 3;
	object-fit: cover;
}
.district-section.is-reversed > div { order: 2; }
.district-section.is-reversed > figure { order: 1; }

.footer-instagram {
	display: inline-flex;
	align-items: center;
	gap: .55rem;
	margin-top: .25rem;
	color: #d9d5cc;
}
.footer-instagram svg {
	width: 17px;
	height: 17px;
	flex: 0 0 auto;
	fill: currentColor;
}
.footer-instagram:hover { color: #fff; }

@media (min-width: 700px) {
	.article-content > p,
	.district-section p {
		text-align: justify;
		text-justify: inter-word;
		hyphens: auto;
	}
}

@media (max-width: 700px) {
	body.tba-home-edition .address-card {
		grid-template-columns: 1fr;
		gap: .85rem;
		margin-top: 1.35rem;
		padding-top: 1rem;
	}
	.address-card-copy > p:not(.eyebrow) { display: none; }
	.address-card-copy h3 { font-size: 1.25rem; }
	.article-process { grid-template-columns: 1fr; }
	.district-section,
	.district-section.is-reversed {
		grid-template-columns: 1fr;
		margin: 2.4rem 0;
		padding: 1.5rem 0;
	}
	.district-section.is-reversed > div,
	.district-section.is-reversed > figure { order: initial; }
}

/* Phone homepage: compact lead across the full width, then balanced story pairs. */
@media (max-width: 560px) {
	body.tba-home-edition .edition-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		grid-template-areas:
			"lead lead"
			"second third"
			"fourth fifth";
	}
	body.tba-home-edition .edition-lead {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		grid-template-areas:
			"lead-copy lead-image"
			"coast coast";
		column-gap: .7rem;
		padding: 1rem 0;
		border-right: 0;
		border-bottom: 1px solid rgba(25,25,22,.28);
	}
	body.tba-home-edition .edition-lead .edition-copy {
		grid-area: lead-copy;
		align-self: start;
		min-width: 0;
		padding-right: .15rem;
	}
	body.tba-home-edition .edition-lead .edition-image {
		grid-area: lead-image;
		align-self: start;
		margin-top: 0;
		aspect-ratio: 4 / 3;
	}
	body.tba-home-edition .edition-lead .address-card {
		grid-area: coast;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: .7rem;
		margin-top: 1rem;
		padding-top: 1rem;
	}
	body.tba-home-edition .edition-story:nth-child(2),
	body.tba-home-edition .edition-story:nth-child(4) {
		padding-right: .7rem;
		padding-left: 0;
		border-right: 1px solid rgba(25,25,22,.28);
	}
	body.tba-home-edition .edition-story:nth-child(3),
	body.tba-home-edition .edition-story:nth-child(5) {
		padding-right: 0;
		padding-left: .7rem;
		border-right: 0;
	}
	body.tba-home-edition .edition-story:nth-child(2),
	body.tba-home-edition .edition-story:nth-child(3) {
		border-top: 0;
	}
	body.tba-home-edition .edition-story:nth-child(4),
	body.tba-home-edition .edition-story:nth-child(5) {
		border-top: 1px solid rgba(25,25,22,.28);
	}
}
