.sfx-band--page.sfx-halftone{--halftone-opacity:.16;--halftone-cell:14px}
.page-open{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--grid-gutter);row-gap:clamp(1.5rem,3vw,2.5rem)}
.page-open__title{grid-column:1 / span 8;font-family:var(--font-display);font-weight:var(--weight-medium);font-size:var(--type-display-lg);line-height:var(--leading-display);letter-spacing:var(--tracking-display-lg);color:var(--text-primary);max-width:20ch}
.page-open__lead{grid-column:1 / span 6;font-size:var(--type-body-lg);line-height:var(--leading-body);color:var(--text-secondary);max-width:var(--measure-body)}
@media (max-width:960px){.page-open__title,.page-open__lead{grid-column:1 / -1}}

.firm{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--grid-gutter);row-gap:clamp(2rem,4vw,3rem);margin-top:clamp(2.5rem,5vw,4rem)}
.firm__statement{grid-column:1 / span 5;font-family:var(--font-display);font-weight:var(--weight-medium);font-size:var(--type-display-sm);line-height:var(--leading-display-loose);letter-spacing:var(--tracking-display);color:var(--text-primary);max-width:18ch;align-self:start;position:sticky;top:calc(var(--header-height) + var(--space-8))}
.firm__body{grid-column:7 / span 6;display:flex;flex-direction:column;gap:var(--space-7)}
.firm__body p{font-size:var(--type-body-md);line-height:var(--leading-body);color:var(--text-secondary);max-width:var(--measure-body)}

.firm__lead{background:var(--surface-page);border:1px solid var(--border-hairline);padding:clamp(1.5rem,2.8vw,2.25rem)}
.firm__lead p{font-size:var(--type-body-lg);line-height:var(--leading-body);color:var(--text-primary);max-width:none}
.firm__body > p{font-size:var(--type-body-md);line-height:var(--leading-body);color:var(--text-secondary);max-width:var(--measure-body)}
@media (max-width:960px){.firm__statement,.firm__body{grid-column:1 / -1}.firm__statement{position:static}}

.firm__media{margin-bottom:clamp(1.5rem,2.8vw,2.25rem)}

.principles{margin-top:clamp(2.5rem,5vw,4rem);border-bottom:1px solid var(--border-hairline-inverse);list-style:none}
.principles .sfx-principle{padding:clamp(1.75rem,3vw,2.5rem) 0}

.causes{margin-top:clamp(2rem,4vw,3rem);display:grid;grid-template-columns:repeat(3,1fr);gap:var(--grid-gutter)}
.causes a{display:flex;flex-direction:column;justify-content:center;gap:var(--space-5);padding:var(--space-7) var(--space-6);min-height:9rem;border:1px solid var(--border-hairline-inverse);color:var(--text-on-inverse);text-decoration:none;transition:var(--transition-hover)}
.causes a:hover{border-color:var(--coral-500);background:var(--surface-inverse-raised);color:var(--text-on-inverse)}
.causes__logo{height:2.25rem;width:auto;max-width:80%;object-fit:contain;object-position:left center}
.causes span{font-size:var(--type-body-xs);color:var(--text-on-inverse-tertiary);display:flex;align-items:center;gap:.4rem}
.causes a:hover span{color:var(--coral-400)}
@media (max-width:860px){.causes{grid-template-columns:1fr}}