.page-photo { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; background: var(--color-surface-warm); }
.page-hero .hero-grid { gap: 3rem; }
.page-hero { padding-block: clamp(3.5rem, 6vw, 6rem); }
.page-hero .hero-copy { min-width: 0; }
.page-hero h1 { font-size: clamp(2.6rem, 4vw, 4.5rem); }
.hero-support { min-width: 0; }
.page-hero-image { overflow: hidden; border: 1px solid var(--color-line); }
.page-hero-image .page-photo { aspect-ratio: 4 / 3; }
.page-hero .standard-panel { margin: 0; }
.page-hero .home-icon, .standard-section .home-icon, .page-section-icon { width: 40px; height: 40px; color: var(--color-accent-dark); flex-shrink: 0; }
.page-standard-compact { padding: 1.4rem 1.5rem; border-top: 0; }
.page-standard-compact::before, .page-standard-compact .panel-title { display: none; }
.page-standard-compact .eyebrow { margin-bottom: .6rem; }
.page-standard-compact ol { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .65rem 1rem; margin: 0 0 1rem; }
.page-standard-compact li { border: 0; padding: 0; display: flex; align-items: center; gap: .4rem; font-size: .76rem; }
.page-standard-compact li::before { display: none; }
.page-standard-compact .home-icon { width: 25px; height: 25px; }
.page-standard-compact .text-link { font-size: .77rem; gap: .75rem; }
.page-standard-illustrated ol { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.page-standard-illustrated li { display: grid; gap: .7rem; padding-bottom: 1rem; }
.page-standard-illustrated li::before { display: none; }
.page-service-image { overflow: hidden; margin: 0 0 1.6rem; }
.page-service-image .page-photo { aspect-ratio: 16 / 10; transition: transform .3s ease; }
.hub-service:focus-within .page-photo { transform: scale(1.02); }
.standard-section .home-icon { display: block; margin: 0 0 1.25rem; }
.page-context-section { max-width: var(--content-max); display: grid; gap: 2.5rem; align-items: center; }
.page-context-copy { min-width: 0; }
.page-context-copy h2, .page-context-copy p { max-width: 44rem; }
.page-context-copy .button { margin-top: 1rem; }
.page-context-section .page-context-photo { margin: 0; min-width: 0; }
.page-context-photo .page-photo { border: 1px solid var(--color-line); }
.quote-aside .page-aside-photo { margin: -2rem -2rem 1.75rem; }
.quote-aside .page-photo { aspect-ratio: 16 / 10; }
.page-coverage { position: relative; color: var(--color-accent-dark); background: #eeeadf; border: 1px solid #d7d0c0; margin: 0; }
.page-coverage svg { display: block; width: 100%; height: auto; }
.page-coverage text { fill: currentColor; font: 500 16px var(--font-body); }
.page-coverage figcaption { border-top: 1px solid #d7d0c0; padding: 1.3rem 1.5rem; }
.page-coverage .eyebrow { display: block; margin: 0 0 .7rem; }
.page-coverage ul { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: .2rem 1.25rem; }
.page-coverage a { display: inline-flex; align-items: center; gap: .5rem; min-height: 44px; font-size: .82rem; text-decoration: none; }
.page-coverage a:hover, .page-coverage a[aria-current="page"] { text-decoration: underline; }
.page-coverage a[aria-current="page"] { font-weight: 700; }
.page-question-paths { display: grid; gap: 1rem; }
.page-question-paths a { display: flex; align-items: center; gap: 1.25rem; padding: 2rem 1.5rem; border: 1px solid var(--color-line); background: #eeeadf; text-decoration: none; }
.page-question-paths a > span:last-child { margin-left: auto; color: var(--color-accent-dark); }
.page-question-paths a:hover { background: #e8e2d5; }
.page-stage-heading { display: flex; align-items: center; gap: 1rem; margin-bottom: 1.5rem; }
.page-stage-heading .eyebrow { margin: 0; }
.page-stage-heading .home-icon { width: 40px; height: 40px; color: var(--color-accent-dark); }
.page-quality-visual { max-width: 38rem; padding: 2rem; margin: 2.5rem 0 0; border: 1px solid var(--color-line); background: var(--color-surface-warm); color: var(--color-accent-dark); }
.page-quality-visual svg { display: block; width: 100%; height: auto; }
.page-quality-visual figcaption { color: var(--color-ink-soft); font-size: .82rem; padding-top: 1rem; }
@media (hover: hover) { .hub-service:hover .page-photo { transform: scale(1.02); } }
@media (min-width: 60rem) {
    .page-hero .hero-grid { grid-template-columns: minmax(0, 1.2fr) minmax(0, .95fr); align-items: center; gap: clamp(2.5rem, 5vw, 5rem); }
    .page-context-section { grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 4.5rem; }
    .page-context-section .page-context-photo { align-self: center; }
    .quote-aside { position: static; }
}
@media (prefers-reduced-motion: reduce) {
    .page-service-image .page-photo { transition: none; }
    .hub-service:hover .page-photo, .hub-service:focus-within .page-photo { transform: none; }
}
