/* Phase 4 content pages; approved tokens and components remain unchanged. */
.content-page .content-hero { padding-block: var(--ds-space-8); border-block-end: 1px solid var(--ds-line); background: var(--ds-cream); }
.content-page .content-hero h1 { max-inline-size: 22ch; margin-block: var(--ds-space-3); font-size: var(--ds-type-h1); line-height: var(--ds-leading-heading); letter-spacing: var(--ds-tracking-tight); }
.content-page .content-hero .inner-lead { max-inline-size: 68ch; }
.content-page .content-hero-grid, .content-page .content-layout { display: grid; grid-template-columns: minmax(0,1fr) 18rem; gap: var(--ds-space-6); align-items: start; }
.content-page .content-hero-grid { grid-template-columns: minmax(0,1.3fr) minmax(0,.7fr); align-items: center; }
.content-page .content-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: var(--ds-grid-gap); }
.content-page .content-grid--two { grid-template-columns: repeat(2,minmax(0,1fr)); }
.content-page .content-card { padding: var(--ds-space-3); min-inline-size: 0; }
.content-page .content-card h2, .content-page .content-card h3 { margin-block: 0 var(--ds-space-2); }
.content-page .content-card > :last-child { margin-block-end: 0; }
.content-page .content-copy { max-inline-size: 70ch; }
.content-page .content-copy > :first-child { margin-block-start: 0; }
.content-page .content-copy h2 { margin-block: var(--ds-space-6) var(--ds-space-2); font-size: var(--ds-type-h3); line-height: var(--ds-leading-heading); }
.content-page .content-copy h3 { margin-block: var(--ds-space-4) var(--ds-space-2); font-size: var(--ds-type-h4); }
.content-page .content-copy :is(p,li) { line-height: var(--ds-leading-body); }
.content-page .content-stack { display: grid; gap: var(--ds-space-3); }
.content-page .content-sidebar { position: sticky; inset-block-start: 7rem; padding: var(--ds-space-3); border: 1px solid var(--ds-line); border-radius: var(--ds-radius-md); background: var(--ds-white); }
.content-page .content-sidebar h2 { font-size: var(--ds-type-h4); margin-block: 0 var(--ds-space-2); }
.content-page .policy-nav { display: grid; gap: var(--ds-space-1); margin: 0; padding: 0; list-style: none; }
.content-page .policy-nav a { display: flex; align-items: center; min-block-size: var(--ds-touch-target); border-block-end: 1px solid var(--ds-line); text-underline-offset: .25em; }
.content-page .content-note { padding: var(--ds-space-3); border-inline-start: 3px solid var(--ds-primary-500); background: var(--ds-primary-50); color: var(--ds-ink); }
.content-page .brand-timeline { display: grid; gap: var(--ds-space-3); list-style: none; padding: 0 0 0 var(--ds-space-3); margin: 0; border-inline-start: 2px solid var(--ds-primary-500); }
.content-page .brand-timeline li { padding: var(--ds-space-3); background: var(--ds-white); border: 1px solid var(--ds-line); border-radius: var(--ds-radius-md); }
.content-page .brand-timeline li h3 { margin-block: var(--ds-space-1); }
.content-page .content-article { max-inline-size: 70ch; }
.content-page .content-article > img { max-inline-size: 100%; block-size: auto; }
.content-page .content-section-intro { margin-block-end: var(--ds-space-4); max-inline-size: 70ch; }
.content-page .content-section-intro h2 { margin-block: var(--ds-space-1) var(--ds-space-2); font-size: var(--ds-type-h2); }
.content-page .content-facts { margin: 0; }
.content-page .content-facts > div { padding-block: var(--ds-space-2); border-block-end: 1px solid var(--ds-line); }
.content-page .content-facts dt { color: var(--ds-muted); font-size: var(--ds-type-caption); }
.content-page .content-facts dd { margin: var(--ds-space-1) 0 0; font-weight: 600; }
.content-page .content-photo { margin: 0; position: relative; overflow: hidden; border-radius: var(--ds-radius-md); }
.content-page .content-photo img { inline-size: 100%; block-size: auto; display: block; aspect-ratio: 16/11; object-fit: cover; }
.content-page .content-photo figcaption { padding: var(--ds-space-2); background: var(--ds-white); }
.content-page .content-tabs { display: flex; gap: var(--ds-space-1); flex-wrap: wrap; margin-block-end: var(--ds-space-4); }
.content-page .content-tabs [role=tab] { flex: 1 1 13rem; min-block-size: var(--ds-touch-target); padding: var(--ds-space-2); border: 1px solid var(--ds-line); border-radius: var(--ds-radius-sm); background: var(--ds-white); color: var(--ds-ink); font: 600 var(--ds-type-body)/1.4 var(--ds-font); cursor: pointer; }
.content-page .content-tabs [aria-selected=true] { background: var(--ds-ink); color: var(--ds-cream); border-color: var(--ds-ink); }
.content-page .content-price-panel { padding: var(--ds-space-4); border: 1px solid var(--ds-line); border-radius: var(--ds-radius-lg); background: var(--ds-white); scroll-margin-block-start: 8rem; }
.content-page .content-price-panel h2 { margin-block: 0 var(--ds-space-2); }
.content-page .content-price-panel .price-group { margin-block: var(--ds-space-5) 0; padding: 0; border: 0; }
.content-page .content-price-panel .table-wrap { margin-block: var(--ds-space-3); }
.content-page .content-price-note { margin-block: var(--ds-space-2) 0; color: var(--ds-muted); }
.content-page .content-contact-form { border: 1px solid var(--ds-line); background: var(--ds-white); padding: var(--ds-space-4); border-radius: var(--ds-radius-lg); }
.content-page .content-contact-form .contact-form { border: 0; padding: 0; }
.content-page .content-contact-form .field-wide { grid-column: 1/-1; }
.content-page .content-contact-form .form-status { margin: 0; }
.content-page .content-map { margin: var(--ds-space-4) 0 0; }
.content-page .content-map img { display: block; inline-size: 100%; block-size: auto; aspect-ratio: 720/460; }
.content-page .content-map figcaption { background: var(--ds-white); padding: var(--ds-space-3); }
.content-page .content-map figcaption span { display: block; color: var(--ds-muted); }
.content-page .content-filter { display: flex; flex-wrap: wrap; gap: var(--ds-space-1); margin-block: var(--ds-space-3); }
.content-page .content-filter button { padding-inline: var(--ds-space-2); }
.content-page .content-filter [aria-pressed=true] { background: var(--ds-ink); color: var(--ds-cream); }
.content-page .project-card[hidden], .content-page [role=tabpanel][hidden] { display: none!important; }
.content-page .project-card { min-inline-size: 0; }
.content-page .content-project-body { padding: var(--ds-space-3); }
.content-page .content-project-body h2 { font-size: var(--ds-type-h4); margin-block: var(--ds-space-2); }
.content-page .content-project-body p { color: var(--ds-muted); font-size: var(--ds-type-caption); margin-block: var(--ds-space-1); }
.content-page .content-project-body a { min-block-size: var(--ds-touch-target); display: inline-flex; align-items: center; }
.content-page .handover-checklist { display: grid; gap: var(--ds-space-2); list-style: none; padding: 0; }
.content-page .handover-checklist label { display: flex; align-items: flex-start; gap: var(--ds-space-2); min-block-size: var(--ds-touch-target); padding: var(--ds-space-3); border: 1px solid var(--ds-line); border-radius: var(--ds-radius-md); background: var(--ds-white); cursor: pointer; }
.content-page .handover-checklist input { flex: none; margin-block-start: .25rem; inline-size: 1.35rem; block-size: 1.35rem; accent-color: var(--ds-ink); }
.content-page .handover-checklist label:has(input:checked) { border-color: var(--ds-ink); background: var(--ds-primary-50); }
.content-page .handover-progress { padding: var(--ds-space-2) var(--ds-space-3); color: var(--ds-cream); background: var(--ds-ink); border-radius: var(--ds-radius-sm); }
.content-page .search-content { padding-block: var(--ds-space-6); }
.content-page .search-form { max-inline-size: 58rem; }
.content-page .search-form label { display: block; font-weight: 600; margin-block-end: var(--ds-space-1); }
.content-page .search-input-row { display: flex; gap: var(--ds-space-2); }
.content-page .search-input-row input { flex: 1; min-inline-size: 0; inline-size: 100%; padding: var(--ds-space-2); border: 1px solid var(--ds-control-line); border-radius: var(--ds-radius-sm); font: inherit; background: var(--ds-white); color: var(--ds-ink); }
.content-page .search-input-row button { min-block-size: var(--ds-touch-target); }
.content-page .search-hints { display: flex; flex-wrap: wrap; gap: var(--ds-space-2); margin-block: var(--ds-space-2); }
.content-page .search-hints a { min-block-size: var(--ds-touch-target); display: inline-flex; align-items: center; }
.content-page .search-status { color: var(--ds-muted); margin-block: var(--ds-space-4) var(--ds-space-3); }
.content-page .search-results { display: grid; gap: var(--ds-space-3); }
.content-page .search-result { padding: var(--ds-space-3); background: var(--ds-white); border: 1px solid var(--ds-line); border-radius: var(--ds-radius-md); }
.content-page .search-result h2 { font-size: var(--ds-type-h4); margin-block: var(--ds-space-1) var(--ds-space-2); }
.content-page .search-result p { margin-block: var(--ds-space-1); }
.content-page .search-result .result-type { color: var(--ds-muted); font-size: var(--ds-type-caption); }
.content-page :is(.content-card,.content-sidebar,.content-copy,.content-project-body) { overflow-wrap: break-word; }
.content-page :is(.content-card,.content-sidebar) a { text-underline-offset: .25em; }
@media(max-width:960px) {
 .content-page .content-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .content-page .content-layout { grid-template-columns: 1fr; gap: var(--ds-space-4); }
 .content-page .content-sidebar { position: static; }
}
@media(max-width:720px) {
 .content-page .content-hero { padding-block: var(--ds-space-5); }
 .content-page .content-hero-grid,.content-page .content-grid--two { grid-template-columns: 1fr; }
 .content-page .content-contact-form,.content-page .content-price-panel { padding: var(--ds-space-3); }
 .content-page .content-price-panel { border-radius: var(--ds-radius-md); }
}
@media(max-width:480px) {
 .content-page .content-grid { grid-template-columns: 1fr; }
 .content-page .content-tabs { display: grid; grid-template-columns: 1fr 1fr; gap: var(--ds-space-1); }
 .content-page .content-tabs [role=tab] { font-size: var(--ds-type-caption); padding: var(--ds-space-2) var(--ds-space-1); }
 .content-page .content-price-panel { padding: var(--ds-space-2); border: 0; background: transparent; }
 .content-page .content-price-panel .price-card-table { inline-size: 100%; }
 .content-page .search-input-row { flex-direction: column; }
}
@media(prefers-reduced-motion:reduce) {
 .content-page * { scroll-behavior: auto; }
}

.content-page .content-card h2 { font-size: var(--ds-type-h4); line-height: var(--ds-leading-heading); }
.content-page [hidden] { display: none!important; }
.content-page .search-result-type { color: var(--ds-muted); font-size: var(--ds-type-caption); }
.content-page .project-card { padding: 0; overflow: hidden; }
.content-page .content-photo { display: block; }
.content-page .content-article section[id] { scroll-margin-block-start: 7rem; }
.content-page .content-article section > h2 { margin-block: var(--ds-space-5) var(--ds-space-2); }
