/* Short service and benefit summaries, using the site's existing typography. */
.copy-section h2 { margin-bottom: 1.5rem; }
.copy-intro { max-width: 65ch; margin-bottom: 1.75rem; font-size: 1.125rem; line-height: 1.7; }
.copy-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.75rem; }
.copy-card { border-top: 2px solid var(--line-soft, #ccc); padding-top: 1.25rem; }
.copy-card h3 { font-size: 1.35rem; line-height: 1.35; margin-bottom: .8rem; }
.copy-card p { line-height: 1.65; margin-bottom: .8rem; }
.copy-card .eyebrow { margin-bottom: .6rem; }
.copy-note { font-size: .875rem; }
@media(max-width: 850px) { .copy-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width: 560px) { .copy-grid { grid-template-columns: 1fr; gap: 1.5rem; } }
.copy-hero-benefits { padding: 2.5rem; border-left: 2px solid var(--accent); }
.copy-hero-benefits > p:not(.eyebrow) { font-family: var(--font-display, Georgia, serif); font-size: clamp(1.6rem, 2.5vw, 2.4rem); line-height: 1.35; margin-top: 1.1rem; }

/* Fuller supporting pages: readable narrative alongside a short summary. */
.substance-layout { display: grid; grid-template-columns: minmax(0, 2fr) minmax(15rem, 1fr); gap: clamp(2rem, 5vw, 5rem); align-items: start; }
.substance-prose { max-width: 68ch; }
.substance-prose section + section { margin-top: 2.75rem; }
.substance-prose h2 { margin-bottom: 1rem; }
.substance-prose h3 { margin-bottom: 1rem; }
.substance-prose p, .substance-prose li { line-height: 1.75; }
.substance-prose p + p, .substance-prose ul + p { margin-top: 1.15rem; }
.substance-prose ul { padding-left: 1.3rem; }
.substance-prose li + li { margin-top: .65rem; }
.substance-aside { background: var(--mist, #edf1ef); border-top: 3px solid var(--accent); padding: clamp(1.25rem, 3vw, 2rem); }
.substance-aside h2 { margin-top: .7rem; }
.substance-aside p, .substance-aside dl { margin-top: 1.2rem; line-height: 1.65; }
.substance-aside dt { font-weight: 600; margin-top: 1.25rem; }
.substance-aside dd { margin: .25rem 0 0; }
.substance-faq { max-width: 76ch; }
.substance-faq details { border-bottom: 1px solid var(--line-soft, #ccc); padding: 1.15rem 0; }
.substance-faq summary { cursor: pointer; font-weight: 600; line-height: 1.6; }
.substance-faq p { margin-top: .85rem; line-height: 1.75; }
.substance-more { margin-top: 1.75rem; }
@media(max-width: 760px) { .substance-layout { grid-template-columns: 1fr; } .substance-aside { max-width: 68ch; } }
