/* About IFR: isolated page styles using the shared type and spacing system. */
.about-page :is(h1,h2,h3,p,figure) { margin:0; }
.about-page :is(h1,h2) { text-wrap:balance; }
.about-page a { text-decoration:none; }
.about-page .button { white-space:normal; }
.about-section { padding-block:var(--section-padding); }
.about-page svg { width:22px; height:22px; }
.about-hero { padding-block:48px; color:#fff; background:var(--navy); }
.about-hero-grid { display:grid; grid-template-columns:1fr 1.1fr; gap:var(--layout-gap); align-items:center; }
.about-hero-copy { min-width:0; }
.about-hero h1 { font-size:clamp(64px,5.6vw,92px); line-height:1.01; letter-spacing:-.055em; }
.about-hero h1 span { color:var(--yellow); }
.about-hero-copy > p { margin-top:24px; max-width:490px; color:#c7ccd6; }
.about-actions { display:flex; align-items:center; flex-wrap:wrap; gap:8px 24px; margin-top:28px; }
.about-text-link { display:inline-flex; align-items:center; gap:12px; min-height:48px; padding-block:12px; font-weight:800; font-size:.9375rem; }
.about-text-link:hover { text-decoration:underline; text-underline-offset:5px; }
.about-text-link svg { width:18px; height:18px; }
.about-hero-photo { overflow:hidden; min-width:0; }
.about-hero-photo img { display:block; width:100%; height:auto; aspect-ratio:16/9; max-height:360px; object-fit:cover; object-position:50% 40%; }
.about-hero :focus-visible,.about-closing :focus-visible { outline-color:var(--yellow); }
.about-story-grid,.about-section-heading { display:grid; grid-template-columns:1fr 1fr; gap:var(--layout-gap); align-items:start; }
.about-story-copy { display:grid; gap:20px; }
.about-story-copy p,.about-section-heading p { color:var(--muted); }
.about-story-copy .about-story-note { color:var(--navy); font-weight:800; padding-left:20px; border-left:3px solid var(--yellow); }
.about-chapters { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; padding:0; margin:40px 0 0; list-style:none; }
.about-chapters li { padding-top:24px; border-top:1px solid var(--border); }
.about-chapters h3 { margin-bottom:16px; }
.about-chapters p { color:var(--muted); }
.about-purpose { background:#e9eceb; }
.about-section-heading { align-items:center; margin-bottom:var(--heading-gap); }
.about-purpose-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.about-purpose-card { min-width:0; padding:32px; background:var(--canvas); }
.about-purpose-card > svg { width:32px; height:32px; margin-bottom:24px; }
.about-purpose-card h3 { margin-bottom:16px; }
.about-purpose-card p { color:var(--muted); }
.about-purpose-card:nth-child(2) { color:#fff; background:var(--navy); }
.about-purpose-card:nth-child(2) > svg { color:var(--yellow); }
.about-purpose-card:nth-child(2) p { color:#c7ccd6; }
.about-impact-grid { display:grid; grid-template-columns:1.05fr 1fr; gap:var(--layout-gap); align-items:center; }
.about-community-photo { min-width:0; }
.about-community-photo img { display:block; width:100%; height:auto; }
.about-community-photo figcaption { font-size:var(--type-label); color:var(--muted); margin-top:12px; }
.about-impact-copy h2 { font-size:var(--type-feature-title); }
.about-impact-copy > p { margin-top:24px; color:var(--muted); }
.about-charity { margin-top:28px; padding-top:24px; border-top:1px solid var(--border); }
.about-charity h3 { margin-bottom:12px; }
.about-charity p { color:var(--muted); }
.about-impact-copy > a { margin-top:16px; }
.about-next { background:#e9eceb; }
.about-event-links { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.about-event-links a { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:80px; padding:20px; background:var(--canvas); font-weight:800; font-size:var(--type-label); }
.about-event-links a:hover { background:#dde2df; }
.about-event-links svg { width:18px; height:18px; }
.about-closing { display:grid; grid-template-columns:1fr auto; align-items:center; gap:32px; padding:40px; margin-top:40px; color:#fff; background:var(--navy); }
.about-closing h3 { font-size:var(--type-feature-title); max-width:700px; }
.about-closing p { margin-top:16px; color:#c7ccd6; }
@media(max-width:1100px) { .about-purpose-card { padding:28px; } .about-event-links { grid-template-columns:repeat(2,minmax(0,1fr)); } .about-closing { grid-template-columns:1fr; } .about-closing > a { justify-self:start; } }
@media(max-width:900px) {
 .about-hero-grid,.about-story-grid,.about-section-heading,.about-impact-grid { grid-template-columns:1fr; }
 .about-hero-copy { text-align:center; } .about-hero-copy > p { margin-inline:auto; } .about-actions { justify-content:center; }
 .about-hero-photo img { max-height:none; } .about-story-grid,.about-section-heading { gap:24px; }
 .about-chapters { gap:24px; } .about-purpose-grid { grid-template-columns:1fr; gap:16px; }
 .about-purpose-card { display:grid; grid-template-columns:40px 1fr; column-gap:20px; }
 .about-purpose-card > svg { grid-row:1/3; margin-bottom:0; } .about-purpose-card p { grid-column:2; }
}
@media(max-width:640px) {
 .about-hero { padding-block:32px; } .about-hero-grid { gap:32px; }
 .about-hero h1 { font-size:clamp(42px,11.8vw,56px); }
 .about-hero-copy > p { margin-top:20px; } .about-actions { margin-top:24px; gap:8px 20px; }
 .about-chapters { grid-template-columns:1fr; margin-top:32px; gap:24px; }
 .about-chapters li { padding-top:24px; } .about-chapters h3 { margin-bottom:12px; }
 .about-story-copy { gap:20px; } .about-purpose-card { padding:28px 22px; column-gap:16px; }
 .about-impact-grid { gap:32px; } .about-impact-copy > p { margin-top:20px; }
 .about-event-links { gap:8px; } .about-event-links a { padding:18px 14px; align-items:flex-start; line-height:1.4; }
 .about-event-links svg { width:16px; height:16px; margin-top:2px; }
 .about-closing { margin-top:32px; padding:28px 22px; gap:24px; }
 .about-closing > a { width:100%; justify-content:center; }
}
@media(forced-colors:active) { .about-purpose-card,.about-event-links a,.about-closing { border:1px solid CanvasText; } }
