/* The NNA palette, clear navigation, and substantive pages. */
:root { --paper:#fcfaf6; --rule:#e1d9df; }
h1,h2,h3 { text-wrap:balance; }
p,li { text-wrap:pretty; }
h1 em,h2 em,h3 em { font-family:var(--head); font-weight:750; font-style:normal; }
.container { width:min(1220px,calc(100% - 96px)); }
.section { padding-block:82px; }
.section-tint { background:var(--paper); }
.eyebrow { font-size:12px; margin-bottom:18px; }
.button { font-size:14px; border-radius:3px; gap:18px; }
.button:hover { transform:translateY(-2px); }
.button.outline-light { border:1px solid #ffffffa6; color:#fff; background:transparent; }
.text-link { font-size:14px; }
.section-heading { display:grid; grid-template-columns:1.15fr 1fr; align-items:end; gap:60px; margin-bottom:42px; }
.section-heading > p { max-width:540px; font-size:17px; margin-top:0; }
.section-heading h2 { font-size:clamp(34px,3.7vw,53px); }
.lead { max-width:800px; font-size:18px; }
.align-start { align-items:start; }
.two-column { gap:58px; }
.two-column p:not(.eyebrow) { font-size:17px; }
.page-hero { padding-block:66px 72px; }
.page-hero h1 { font-size:clamp(43px,5.5vw,76px); max-width:1100px; }
.page-hero p:not(.eyebrow) { max-width:760px; line-height:1.65; }
.page-hero .button-row .button { margin-top:0; }
.hero-purple,.band-purple,.hero-intro-band,.home-support { background:var(--purple); color:#fff; }
.hero-purple h1,.hero-purple h2,.hero-purple h3,.hero-purple p,.band-purple h2,.band-purple h3,.band-purple p,.hero-intro-band h1,.hero-intro-band p,.home-support h2,.home-support h3,.home-support p { color:#fff; }
.hero-purple .eyebrow,.band-purple .eyebrow,.hero-intro-band .eyebrow,.home-support .eyebrow { color:var(--light-teal); }
.hero-teal,.band-teal { background:var(--light-teal); }
.hero-teal p,.band-teal p { color:var(--ink); }
.hero-orange,.band-orange { background:var(--orange); color:#fff; }
.hero-orange h1,.hero-orange h2,.hero-orange p,.band-orange h2,.band-orange p { color:#fff; }
.hero-art { position:relative; background:var(--purple); }
.hero-art > img { width:100%; height:clamp(300px,31vw,400px); object-fit:cover; object-position:center 53%; }
.hero-art figcaption { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; padding:0; background:transparent; border:0; box-shadow:none; pointer-events:none; }
/* Center the visible lettering, excluding transparent export margins. */
.hero-art .hero-wordmark { display:block; position:relative; width:min(78%,850px); aspect-ratio:2461 / 518; overflow:hidden; }
.hero-art .hero-wordmark > img { position:absolute; width:111.82446%; max-width:none; height:auto; left:-6.29825%; top:-105.98456%; filter:brightness(0) invert(1) drop-shadow(0 2px 3px #360735b3); }
.hero-intro-band { padding-block:45px 51px; }
.intro-grid { display:grid; grid-template-columns:1.15fr 1fr; gap:58px; align-items:center; }
.intro-grid h1 { font-size:clamp(39px,4.5vw,64px); line-height:1.08; }
.intro-grid h1 span { color:var(--light-teal); }
.intro-grid > div > p:not(.eyebrow) { margin-top:0; font-size:17px; }
.intro-grid .button-row { margin-top:25px; gap:14px; }
.intro-grid > div > .button,.page-hero .container > .button { margin-top:25px; }
.quick-links { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:14px 24px; padding-block:23px; border-bottom:1px solid var(--rule); }
.quick-links > span { font-weight:700; font-size:14px; color:var(--purple); }
.quick-links .text-link { font-size:13px; }
.program-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:22px; }
.resource-card { display:flex; flex-direction:column; align-items:flex-start; padding:31px 33px; background:#fff; border:1px solid var(--rule); }
.resource-card h3 { font-size:30px; line-height:1.12; }
.resource-card p:not(.eyebrow) { font-size:16px; line-height:1.65; margin-top:17px; margin-bottom:25px; }
.resource-card .text-link { margin-top:auto; }
.program-grid .resource-card { padding:37px 38px; border:0; min-height:310px; }
.program-grid .resource-card h3 { font-size:clamp(30px,2.8vw,39px); }
.program-purple { background:var(--purple); }
.program-teal { background:var(--light-teal); }
.program-orange { background:var(--orange); }
.program-lavender { background:#e8dbe9; }
.program-purple h3,.program-purple p,.program-purple .text-link,.program-orange h3,.program-orange p,.program-orange .text-link { color:#fff; }
.program-purple .eyebrow { color:var(--light-teal); }
.program-purple .text-link,.program-orange .text-link { border-bottom-color:#ffffff8c; }
.program-teal p:not(.eyebrow),.program-lavender p:not(.eyebrow) { color:var(--ink); }
.home-evidence { background:var(--paper); }
.evidence-grid { display:grid; grid-template-columns:1.3fr 1fr; gap:50px; align-items:center; }
.evidence-copy h3 { font-size:32px; }
.evidence-copy > p { font-size:16px; }
.stack-links { display:flex; flex-direction:column; align-items:flex-start; gap:16px; margin-top:25px; }
.document-photo { margin:0; }
.document-photo > img { width:100%; height:auto; }
.document-photo figcaption { font-size:12px; line-height:1.5; margin-top:11px; color:var(--gray); }
.band-purple .document-photo figcaption { color:#f2def0; }
.wide-photo { max-width:1000px; margin-inline:auto; }
.press-strip { display:flex; align-items:center; flex-wrap:wrap; gap:18px 36px; border-top:1px solid var(--rule); margin-top:38px; padding-top:25px; }
.press-strip > span { font-size:12px; color:var(--gray); }
.press-strip a { color:var(--purple); font-family:var(--head); font-size:23px; font-weight:800; text-decoration:underline; text-underline-offset:5px; text-decoration-thickness:1px; }
.home-joy { background:var(--light-teal); }
.joy-grid { display:grid; grid-template-columns:1.1fr 1fr; gap:64px; align-items:center; }
.joy-grid h2 { font-size:clamp(36px,3.5vw,50px); }
.joy-grid h2 span { display:block; margin-top:10px; }
.joy-grid p { color:var(--ink); }
.joy-photo-stack { display:grid; grid-template-columns:1fr 1fr; gap:15px; align-items:start; }
.joy-photo-stack figure + figure { padding-top:64px; }
.joy-photo-stack img { width:100%; height:300px; object-fit:cover; }
.joy-photo-stack figure:first-child img { object-position:28% center; }
.joy-photo-stack figure:last-child img { object-position:80% center; }
.joy-photo-stack figcaption { color:var(--purple); }
.home-support h2 { font-size:clamp(41px,4.5vw,65px); }
.home-support .lead { color:#f4e5f2; max-width:820px; }
.join-grid { display:grid; grid-template-columns:1fr 1fr; gap:64px; margin-top:42px; }
.join-grid > div { border-top:2px solid var(--light-teal); padding-top:26px; }
.join-grid h3 { font-size:30px; }
.join-grid p { color:#f4e5f2; font-size:16px; margin-bottom:25px; }
.resource-grid { display:grid; gap:24px; margin-top:36px; }
.resource-grid.two-up { grid-template-columns:repeat(2,1fr); }
.resource-grid.three-up { grid-template-columns:repeat(3,1fr); }
.resource-grid.three-up .resource-card { padding:29px 25px; }
.resource-grid.three-up h3 { font-size:28px; }
.feature-panel { padding:42px; background:var(--pale-purple); border-left:7px solid var(--purple); }
.feature-panel h3 { font-size:36px; }
.feature-panel p { color:var(--ink); }
.feature-panel > .text-link { margin-top:23px; margin-right:16px; }
.solar-panel { background:var(--light-teal); border-color:var(--orange); }
.big-symbol { display:block; color:var(--purple); font-size:100px; line-height:1; margin-bottom:27px; }
.boundary-panel { background:var(--light-teal); padding:36px; border-left:7px solid var(--purple); }
.boundary-panel h3 { line-height:1.3; font-size:29px; }
.boundary-panel p { color:var(--ink); }
.boundary-panel .text-link { margin-top:23px; }
.report-section { background:var(--pale-purple); }
.report-stat-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:30px; margin-top:38px; }
.report-stat-grid article { padding:27px 0 18px; border-top:3px solid var(--purple); }
.report-stat-grid strong { display:block; font-size:clamp(43px,5vw,67px); font-family:var(--head); font-weight:800; line-height:1; color:var(--purple); }
.report-stat-grid span { display:block; font-size:16px; margin-top:12px; color:var(--ink); }
.source-note { font-size:13px !important; line-height:1.6; max-width:950px; margin-top:21px; }
.source-note .text-link { font-size:13px; display:inline; }
.report-detail { margin-top:45px; }
.plain-list { padding-left:21px; color:var(--gray); }
.plain-list li + li { margin-top:11px; }
.help-note { margin-top:45px; padding:28px 32px; background:var(--pale-purple); }
.help-note h3 { font-size:26px; }
.help-note p { font-size:15px; }
.help-note a,.volunteer-help a { color:var(--purple); text-decoration:underline; text-underline-offset:3px; }
.history-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:35px; margin-top:37px; }
.history-grid article { border-top:3px solid var(--teal); padding-top:22px; }
.history-grid article > span { color:var(--orange); font-family:var(--head); font-size:19px; font-weight:800; display:block; margin-bottom:17px; }
.history-grid h3 { font-size:28px; line-height:1.18; }
.history-grid p { font-size:16px; }
.history-grid .text-link { margin-top:20px; }
.leadership-copy { display:grid; grid-template-columns:1fr 1.2fr; gap:60px; }
.leadership-copy .role { color:var(--purple); font-weight:700; }
.collaborative-mark { width:min(100%,330px); height:auto; margin-bottom:30px; }
.podcast-logo { width:min(100%,480px); height:auto; margin-bottom:29px; }
.podcast-intro { display:grid; grid-template-columns:1fr 1fr; gap:58px; align-items:center; }
.podcast-intro p { font-size:17px; }
.access-layout { display:grid; grid-template-columns:1.4fr 1fr; gap:60px; align-items:center; }
.access-layout h3 { font-size:33px; }
.access-layout > div + div { border-left:1px solid #ffffff66; padding-left:42px; }
.access-layout p { color:#f4e5f2; }
.access-layout .light-link { margin-top:25px; }
.step-list { counter-reset:steps; list-style:none; padding:0; }
.step-list li { display:grid; grid-template-columns:70px 1fr; gap:25px; border-top:1px solid var(--rule); padding-block:30px; }
.step-list li::before { counter-increment:steps; content:'0' counter(steps); color:var(--orange); font-family:var(--head); font-size:32px; font-weight:800; }
.step-list h3 { font-size:30px; }
.step-list p { max-width:900px; margin-top:14px; }
.step-list .text-link { margin-top:17px; }
.closing-band { padding-block:53px; }
.closing-band .container { display:flex; align-items:center; justify-content:space-between; gap:40px; }
.closing-band h2 { font-size:clamp(31px,3vw,44px); max-width:850px; }
.closing-band p { font-size:16px; max-width:760px; margin-top:14px; }
.closing-band .button { flex:none; }
.archive-toolbar { padding-bottom:28px; }
.filter-buttons { display:flex; flex-wrap:wrap; gap:10px; }
.filter-buttons button { padding:11px 17px; background:#fff; border:1px solid #ccb8cc; border-radius:3px; color:var(--purple); font-size:13px; font-weight:700; min-height:44px; }
.filter-buttons button.active { color:#fff; background:var(--purple); border-color:var(--purple); }
.media-entry { grid-template-columns:190px 1fr; gap:45px; }
.media-source-links { display:flex; flex-wrap:wrap; gap:12px 24px; align-items:baseline; }
.media-entry-copy h3 { font-size:29px; }
.media-entry-meta strong { font-size:14px; }
.media-entry-copy .text-link { font-size:14px; }
.media-entry:target { background:var(--pale-teal); padding-inline:22px; outline:2px solid var(--teal); }
.archive-gallery img { height:auto; object-fit:initial; }
.archive-gallery figcaption { color:var(--gray); font-family:var(--body); font-size:13px; }
.volunteer-layout { gap:58px; }
.volunteer-photo img { height:auto; }
.contact-card h2 { font-size:clamp(23px,3.3vw,40px); overflow-wrap:anywhere; }
.donation-note { font-size:13px !important; color:#f4e5f2 !important; }
.breadcrumbs { font-size:12px; padding-block:17px; }
.site-footer { background:#360735; }
.footer-top { grid-template-columns:1.1fr 1fr 1fr 1.1fr; gap:36px; }
.footer-links { font-size:13px; gap:10px; }
.footer-brand p,.footer-support { font-size:13px; }
/* Keep the parent organization clear on programme pages. */
.page-hero p.program-affiliation { font-size:14px; line-height:1.6; margin-top:20px; }
.program-affiliation a { text-decoration:underline; text-underline-offset:3px; }
@media(max-width:960px) {
 #main-nav { max-height:calc(100dvh - 105px); overflow:auto; }
}
@media(max-width:1100px) {
 .container { width:calc(100% - 64px); }
 .intro-grid,.two-column,.podcast-intro,.joy-grid { gap:36px; }
 .section-heading { gap:40px; }
 .joy-photo-stack { gap:12px; }
 .joy-photo-stack img { height:250px; }
 .resource-grid.three-up { grid-template-columns:repeat(2,1fr); }
 .footer-top { grid-template-columns:1fr 1fr; gap:36px 55px; }
 .program-grid .resource-card { padding:31px; }
}
@media(max-width:780px) {
 .container { width:calc(100% - 44px); }
 .section { padding-block:57px; }
 .page-hero { padding-block:43px 49px; }
 .page-hero h1 { font-size:clamp(37px,7vw,56px); }
 .page-hero p:not(.eyebrow) { font-size:17px; }
 .section-heading,.intro-grid,.two-column,.evidence-grid,.joy-grid,.podcast-intro,.leadership-copy,.access-layout { grid-template-columns:1fr; gap:29px; }
 .section-heading { margin-bottom:30px; }
 .section-heading h2 { font-size:clamp(33px,6vw,43px); }
 .hero-art > img { height:320px; object-position:55% center; }
 .hero-art .hero-wordmark { width:84%; }
 .hero-intro-band { padding-block:32px 39px; }
 .intro-grid { gap:23px; }
 .intro-grid h1 { font-size:clamp(36px,7vw,52px); }
 .intro-grid .button-row { gap:12px; }
 .intro-grid .button { font-size:13px; padding-inline:17px; }
 .quick-links { justify-content:flex-start; gap:14px 24px; padding-block:21px; }
 .quick-links > span { width:100%; }
 .program-grid { gap:17px; }
 .program-grid .resource-card { min-height:0; padding:27px; }
 .program-grid .resource-card h3 { font-size:30px; }
 .program-grid .eyebrow { font-size:11px; }
 .joy-photo-stack { max-width:540px; gap:18px; }
 .joy-photo-stack img { height:290px; }
 .joy-photo-stack figure + figure { padding-top:35px; }
 .home-support h2 { font-size:45px; }
 .join-grid { gap:29px; }
 .join-grid h3 { font-size:27px; }
 .history-grid { gap:25px; }
 .history-grid h3 { font-size:24px; }
 .history-grid p { font-size:15px; }
 .feature-panel { padding:30px; }
 .feature-panel h3 { font-size:31px; }
 .access-layout > div + div { border-left:0; border-top:1px solid #ffffff66; padding-left:0; padding-top:27px; }
 .closing-band .container { align-items:flex-start; flex-direction:column; gap:27px; }
 .media-entry { grid-template-columns:150px 1fr; gap:25px; }
 .media-entry-copy h3 { font-size:26px; }
}
@media(max-width:580px) {
 .hero-art > img { height:310px; object-position:52% center; }
 .program-grid,.resource-grid.two-up,.resource-grid.three-up,.history-grid,.join-grid { grid-template-columns:1fr; }
 .program-grid .resource-card { padding:30px 27px; }
 .program-grid .resource-card h3 { font-size:33px; }
 .resource-card { padding:29px 25px; }
 .resource-card h3 { font-size:28px; }
 .resource-grid { margin-top:29px; gap:18px; }
 .evidence-copy h3 { font-size:30px; }
 .press-strip { gap:15px 25px; }
 .press-strip > span { width:100%; }
 .press-strip a { font-size:23px; }
 .joy-photo-stack img { height:230px; }
 .joy-photo-stack figcaption { font-size:11px; }
 .home-support h2 { font-size:42px; }
 .report-stat-grid { grid-template-columns:1fr; gap:10px; }
 .report-stat-grid article { display:grid; grid-template-columns:125px 1fr; align-items:center; gap:18px; padding-block:21px; }
 .report-stat-grid strong { font-size:45px; }
 .report-stat-grid span { margin-top:0; font-size:15px; }
 .boundary-panel { padding:29px 25px; }
 .boundary-panel h3 { font-size:26px; }
 .step-list li { grid-template-columns:43px 1fr; gap:15px; }
 .step-list h3,.step-list li::before { font-size:26px; }
 .help-note { padding:25px; }
 .source-note { font-size:12px !important; }
 .media-entry { grid-template-columns:1fr; gap:18px; }
 .media-entry-meta { flex-direction:row; flex-wrap:wrap; gap:7px 14px; }
 .media-entry-meta strong { width:100%; }
 .media-entry-copy h3 { font-size:25px; }
 .media-entry:target { padding-inline:15px; }
 .footer-top { grid-template-columns:1fr; gap:33px; }
 .footer-brand img { width:205px; }
 .footer-links strong,.footer-support > strong { margin-bottom:6px; }
 .contact-grid { padding-block:50px; }
 .contact-card { padding:28px 23px; }
 .contact-card h2 { font-size:29px; }
}
@media(prefers-reduced-motion:reduce) {
 *,*::before,*::after { transition:none !important; animation:none !important; }
 .button:hover { transform:none; }
}

/* A connected home story, with a shorter introduction to the Collaborative. */
.home-story { background:#fff; }
.collaborative-teaser { display:grid; grid-template-columns:240px minmax(0,1fr); gap:48px; align-items:center; background:#fff; padding:28px 38px; }
.collaborative-logo-home { display:block; width:240px; max-width:100%; height:auto; }
.collaborative-teaser .eyebrow { margin:0 0 14px; }
.collaborative-teaser h3 { font-size:clamp(30px,3vw,40px); }
.collaborative-teaser p:not(.eyebrow) { font-size:17px; max-width:720px; margin:16px 0 22px; }
.home-programs { margin-top:24px; }
/* The dedicated Collaborative page introduces itself through the authentic logo. */
.collaborative-page-hero { background:#fff; padding-block:20px 42px; }
.collaborative-intro { display:flex; flex-direction:column; align-items:center; text-align:center; }
.collaborative-logo-primary { display:block; width:min(100%,560px); height:auto; margin:0 auto 14px; }
.collaborative-intro .eyebrow { margin:0 0 16px; }
.collaborative-intro p { max-width:810px; color:var(--ink); font-size:17px; line-height:1.7; }
.collaborative-welcome { padding-block:44px 50px; }
.collaborative-welcome-grid { grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); gap:52px; align-items:center; }
.collaborative-welcome .collaborative-definition { font-family:var(--head); font-size:clamp(30px,3vw,42px); line-height:1.25; font-weight:650; color:var(--purple); margin:0; }
.collaborative-welcome p { max-width:630px; font-size:17px; line-height:1.65; margin:20px 0 0; }
.collaborative-welcome-photo { margin:0; width:min(100%,460px); justify-self:end; }
.collaborative-welcome-photo img { display:block; width:100%; height:auto; border-radius:3px; }
.collaborative-welcome-photo figcaption { color:var(--purple); font-size:13px; line-height:1.5; margin-top:12px; }
.collaborative-intro .button { margin-top:25px; }
.home-work { background:var(--light-teal); }
.home-work .section-heading { align-items:center; }
.home-work .section-heading > p { margin-block:0; }
.home-work .home-collaborative-band { background:#fff; }
.home-evidence { background:var(--paper); }
.home-primary-action { margin-top:24px; max-width:100%; white-space:normal; }
.home-secondary-links { display:flex; flex-wrap:wrap; gap:0 24px; margin-top:12px; }
.home-quiet-link { display:inline-flex; align-items:center; min-height:44px; color:var(--purple); font-size:14px; font-weight:600; line-height:1.5; text-decoration:underline; text-underline-offset:4px; text-decoration-thickness:1px; }
.home-quiet-link:hover { text-decoration-thickness:2px; }
.home-work .home-collaborative-feature { grid-template-columns:minmax(0,1.12fr) minmax(0,1fr); gap:38px; padding:32px; }
.home-collaborative-copy { min-width:0; }
.home-collaborative-heading { display:grid; grid-template-columns:180px minmax(0,1fr); gap:24px; align-items:center; }
.home-collaborative-heading .collaborative-logo-home { width:180px; }
.home-collaborative-heading h3 { font-size:clamp(28px,2.7vw,36px); }
.home-organizing-video { width:min(100%,480px); margin:0 auto; }
.home-video-player { position:relative; width:100%; aspect-ratio:16 / 9; background:var(--purple); overflow:hidden; border-radius:3px; }
.home-video-player iframe { position:absolute; inset:0; display:block; width:100%; height:100%; border:0; }
.home-organizing-video figcaption { color:var(--purple); font-size:14px; line-height:1.5; margin-top:12px; }
.home-program-bridge { color:var(--ink); font-size:17px; margin:34px 0 0; }
.home-program-bridge + .home-programs { margin-top:20px; }
.home-evidence .evidence-copy h2 { font-size:clamp(34px,3.6vw,49px); }
.home-evidence .evidence-copy > p:not(.eyebrow) { margin-top:20px; }
.home-evidence .evidence-copy .eyebrow { font-size:12px; }
.home-support .join-grid { grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); gap:72px; align-items:start; }
.home-support .home-giving h3 { font-size:32px; }
.home-support .home-volunteering { border-top:1px solid #ffffff66; }
.home-support .home-volunteering h3 { font-size:26px; }
.home-support .home-quiet-link { color:#fff; }
.past-work-note { display:flex; align-items:center; justify-content:space-between; gap:35px; padding-top:30px; margin-top:32px; border-top:1px solid #5d0a5a45; }
.past-work-note .eyebrow { margin-bottom:10px; }
.past-work-note h3 { font-size:25px; }
.past-work-note p:not(.eyebrow) { font-size:15px; margin-top:12px; max-width:700px; }
.past-work-note > a { flex:none; }
.qlp-plan .two-column { gap:64px; }
.qlp-plan h2 { max-width:590px; }
.qlp-themes { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px 24px; list-style:none; margin:27px 0 0; padding:0; }
.qlp-themes li { border-left:3px solid var(--light-teal); padding-left:12px; font-size:16px; line-height:1.5; }
.qlp-themes li:nth-child(even) { border-color:var(--orange); }
.qlp-role { border-top:4px solid var(--orange); padding-top:25px; }
.qlp-role h3 { font-size:31px; }
.qlp-role .source-note { font-size:14px; line-height:1.55; margin-top:22px; }
.qlp-housing .resource-card { border-top:5px solid var(--purple); }
.qlp-housing .resource-card:nth-child(2) { border-color:var(--teal); }
.qlp-housing .resource-card:nth-child(3) { border-color:var(--orange); }
.qlp-housing-role { max-width:850px; font-size:17px; }
@media(max-width:780px) {
 .qlp-plan .two-column { grid-template-columns:1fr; gap:36px; }
 .qlp-themes { gap:13px 20px; }
}
@media(max-width:420px) {
 .qlp-themes { grid-template-columns:1fr; }
}
.collaborative-method { background:var(--purple); color:#fff; padding-block:58px 66px; }
.collaborative-method .eyebrow { color:var(--light-teal); }
.collaborative-method h2 { color:#fff; font-size:clamp(36px,4vw,54px); }
.method-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:27px; margin-top:36px; }
.method-card { padding-top:25px; border-top:5px solid var(--teal); }
.method-convene { border-color:var(--orange); }
.method-collaborate { border-color:#d3abe0; }
.method-number { display:block; font-size:17px; font-weight:750; margin-bottom:17px; color:var(--light-teal); }
.method-card h3 { font-size:35px; color:#fff; }
.method-card p { font-size:16px; color:#fff; margin-top:17px; }
.method-card .method-result { border-top:1px solid #ffffff40; padding-top:17px; margin-top:23px; color:#f7eaf5; }
.collaborative-value { max-width:930px; border-top:1px solid #ffffff40; padding-top:27px; margin:36px 0 0; font-size:18px; color:#fff; }
.leadership-framework { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px 45px; list-style:none; margin:0; padding:0; }
.leadership-framework li { display:grid; grid-template-columns:36px minmax(0,1fr); gap:16px; border-top:1px solid #5d0a5a40; padding-top:25px; }
.leadership-framework li > span { font-family:var(--head); font-weight:750; color:var(--orange); font-size:23px; line-height:1.3; }
.leadership-framework h3 { font-size:27px; }
.leadership-framework p { font-size:16px; margin-top:12px; }
.participation-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:35px; }
.participation-grid > article { border-top:3px solid var(--teal); padding-top:23px; }
.participation-grid h3 { font-size:26px; }
.participation-grid p { font-size:16px; margin-top:13px; }
.collaborative-participation { background:var(--light-teal); padding-block:62px 70px; }
.participation-intro { max-width:860px; margin-bottom:34px; }
.participation-intro h2 { font-size:clamp(36px,4vw,54px); color:var(--purple); }
.participation-intro > p:not(.eyebrow) { max-width:790px; font-size:17px; line-height:1.65; margin:20px 0 0; }
.collaborative-participation .participation-grid { gap:24px; }
.collaborative-participation .participation-grid > article { background:#fff; border-top:5px solid var(--teal); padding:28px 29px 30px; }
.collaborative-participation .participation-grid > article:nth-child(2) { border-color:var(--orange); }
.collaborative-participation .participation-grid > article:nth-child(3) { border-color:var(--purple); }
.participation-next { display:flex; align-items:center; justify-content:space-between; gap:32px; background:var(--pale-purple); padding:31px; margin-top:36px; }
.collaborative-participation .participation-next { background:transparent; border-top:1px solid #5d0a5a40; padding:28px 0 0; margin-top:30px; }
.participation-next h3 { font-size:27px; }
.participation-next p { font-size:16px; max-width:750px; margin-top:12px; }
.participation-next .button { flex:none; max-width:100%; }
.collaborative-page-hero + .section-nav { border-top:1px solid var(--rule); }
/* Keep housing criteria and solar choices readable on the page. */
.homegrown-section { background:var(--pale-purple); }
.purchase-next h3 { font-size:28px; }
.purchase-next .button { max-width:100%; white-space:normal; }
.solar-options { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; }
.solar-option { border-top:6px solid var(--purple); padding-top:25px; }
.option-community { border-color:var(--teal); }
.option-facilities { border-color:var(--orange); }
.solar-option h3 { font-size:31px; }
.solar-option .eyebrow { line-height:1.7; min-height:42px; }
.solar-option p:not(.eyebrow) { font-size:17px; line-height:1.7; margin-top:19px; }
.solar-questions { border-left:1px solid #ffffff60; padding-left:40px; }
.solar-questions h3 { color:#fff; font-size:31px; }
.solar-questions .plain-list { color:#fff; }
.solar-next { display:grid; grid-template-columns:1fr 1fr; gap:48px; padding:34px; background:var(--paper); border:1px solid var(--rule); }
.solar-next .button { max-width:100%; white-space:normal; }
.solar-next h3 { font-size:27px; }
.solar-next p { font-size:17px; line-height:1.7; }
.solar-next + .source-note { margin-top:20px; }
@media(max-width:960px) {
 .participation-next { flex-direction:column; align-items:flex-start; gap:24px; }
 .method-grid { gap:23px; }
 .collaborative-teaser { grid-template-columns:210px minmax(0,1fr); gap:30px; padding:27px; }
 .home-work .home-collaborative-feature { grid-template-columns:1fr; gap:26px; padding:27px; }
 .solar-options { gap:24px; }
 .solar-option h3 { font-size:28px; }
}
@media(max-width:780px) {
 .home-support .join-grid { grid-template-columns:1fr; gap:32px; margin-top:32px; }
 .home-support .home-giving h3 { font-size:29px; }
 .collaborative-teaser { grid-template-columns:1fr; gap:20px; padding:27px; }
 .collaborative-logo-home { width:230px; margin-inline:auto; }
 .home-collaborative-heading { grid-template-columns:128px minmax(0,1fr); gap:18px; }
 .home-collaborative-heading .collaborative-logo-home { width:128px; margin:0; }
 .home-collaborative-heading h3 { font-size:clamp(26px,5vw,32px); }
 .solar-options,.solar-next { grid-template-columns:1fr; gap:31px; }
 .solar-option .eyebrow { min-height:0; }
 .solar-questions { border-left:0; border-top:1px solid #ffffff60; padding-left:0; padding-top:26px; }
 .solar-next { padding:26px; }
 .collaborative-page-hero { padding-block:12px 35px; }
 .collaborative-logo-primary { width:min(100%,420px); margin-bottom:12px; }
 .collaborative-welcome { padding-block:32px 38px; }
 .collaborative-welcome-grid { grid-template-columns:1fr; gap:28px; }
 .collaborative-welcome .collaborative-definition { font-size:30px; }
 .collaborative-welcome-photo { width:min(100%,420px); justify-self:start; }
 .collaborative-participation { padding-block:45px 50px; }
 .participation-intro { margin-bottom:27px; }
 .participation-intro h2 { font-size:clamp(34px,6vw,43px); }
 .collaborative-participation .participation-grid { gap:20px; }
 .collaborative-participation .participation-grid > article { padding:25px; }
 .collaborative-intro p { font-size:16px; }
 .past-work-note { flex-direction:column; align-items:flex-start; gap:20px; }
 .method-grid,.participation-grid { grid-template-columns:1fr; gap:31px; }
 .method-card { padding-top:21px; }
 .method-card p { max-width:650px; }
 .method-card .method-result { margin-top:17px; padding-top:14px; }
 .collaborative-method { padding-block:45px 50px; }
 .leadership-framework { gap:28px; }
 .leadership-framework li { grid-template-columns:28px minmax(0,1fr); gap:12px; }
 .leadership-framework h3 { font-size:24px; }
 .participation-next { padding:26px; }
}
@media(max-width:580px) {
 .collaborative-logo-primary { width:min(100%,380px); }
 .collaborative-welcome .collaborative-definition { font-size:28px; }
 .leadership-framework { grid-template-columns:1fr; }
 .participation-next .button { padding-inline:17px; font-size:13px; gap:12px; }
}

@media(max-width:360px) {
 .home-collaborative-heading { grid-template-columns:1fr; gap:14px; }
}

/* Housing is available directly; its disclosure gives each topic a short route. */
.site-header { position:sticky; top:0; }
html { scroll-padding-top:108px; }
#main-nav { gap:21px; }
#main-nav > a:not(.button) { min-height:44px; display:flex; align-items:center; }
.nav-group { display:flex; align-items:center; gap:2px; position:relative; }
.nav-group > a { display:flex; align-items:center; min-height:44px; color:var(--purple); font-size:12px; font-weight:700; line-height:1.4; white-space:nowrap; }
.nav-group > a:hover,.nav-group > a[aria-current] { text-decoration:underline; text-underline-offset:7px; text-decoration-thickness:2px; }
.nav-submenu-toggle { display:flex; align-items:center; justify-content:center; width:44px; min-height:44px; border:0; border-radius:3px; background:transparent; color:var(--purple); padding:0; }
.nav-submenu-toggle:hover,.nav-submenu-toggle[aria-expanded="true"] { background:var(--pale-purple); }
.nav-submenu-toggle svg { transition:transform .15s; }
.nav-submenu-toggle[aria-expanded="true"] svg { transform:rotate(180deg); }
.nav-submenu { position:absolute; top:calc(100% + 12px); left:-18px; width:330px; padding:9px; border:1px solid var(--rule); background:#fff; box-shadow:0 12px 26px #36073521; border-radius:4px; }
.nav-submenu > a { display:block; color:var(--purple); font-size:14px; font-weight:650; line-height:1.5; padding:12px 13px; border-radius:2px; }
.nav-submenu > a:hover,.nav-submenu > a[aria-current="page"] { background:var(--pale-purple); }
/* Use the original NNA bungalow artwork; the tint is presentation only. */
.program-visual-hero { display:grid; grid-template-columns:1.08fr 1fr; align-items:center; gap:46px; }
.program-visual-hero h1 { font-size:clamp(39px,4.4vw,62px); }
.program-hero-copy { min-width:0; }
.program-art { position:relative; isolation:isolate; overflow:hidden; border-radius:3px; box-shadow:0 5px 0 #36073524; }
.program-art img { width:100%; height:auto; }
.program-art::after { content:''; position:absolute; inset:0; background:#8c329e; mix-blend-mode:color; opacity:.18; pointer-events:none; }
.solar-program-art { width:min(100%,530px); justify-self:center; }
.solar-program-art::after { display:none; }
.solar-program-art figcaption { background:#fff; color:var(--purple); padding:12px 16px; font-size:14px; line-height:1.5; }
.section-nav { gap:17px 30px; }
.section-nav a { font-size:13px; min-height:36px; display:inline-flex; align-items:center; }
.cnrp-overview { display:grid; grid-template-columns:1.08fr 1fr; align-items:center; gap:48px; }
.cnrp-overview p:not(.eyebrow) { font-size:17px; }
.cnrp-overview .button { margin-top:25px; max-width:100%; white-space:normal; }
.cnrp-area-figure img { width:100%; height:auto; }
.cnrp-area-figure figcaption { color:var(--gray); font-size:13px; line-height:1.55; margin-top:14px; }
.cnrp-local-role { margin-top:48px; padding-top:32px; border-top:1px solid var(--rule); }
.cnrp-local-role > .eyebrow { margin-bottom:25px; }
.cnrp-role-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:34px; }
.program-icon { display:block; width:64px; height:64px; color:var(--purple); margin-bottom:18px; }
.cnrp-role-grid h3 { font-size:26px; }
.cnrp-role-grid p { font-size:16px; margin-top:14px; }
.cnrp-role-grid > article:nth-child(2) .program-icon,.option-community .program-icon { color:#007b74; }
.cnrp-role-grid > article:nth-child(3) .program-icon,.option-facilities .program-icon { color:var(--orange); }
.solar-option > .program-icon { margin-bottom:23px; }
.page .city-update-date { display:inline-block; color:var(--purple); font-size:12px; line-height:1.5; font-weight:700; background:#fff; padding:7px 11px; margin:0 0 19px; }
.city-news-link { margin-top:24px; }
.housing-resident-voice { background:var(--light-teal); padding-top:0; }
.housing-collaborative-banner { background:#fff; padding-block:24px; border-bottom:4px solid var(--teal); }
.housing-collaborative-banner > .container { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); gap:44px; align-items:center; }
.housing-collaborative-banner-logo { display:block; width:min(100%,506px); height:auto; justify-self:center; }
.housing-collaborative-photo { margin:0; min-width:0; width:min(100%,420px); justify-self:center; }
.housing-collaborative-photo img { display:block; width:100%; height:auto; border-radius:3px; }
.housing-collaborative-photo figcaption { color:var(--gray); font-size:13px; line-height:1.5; margin-top:12px; }
.housing-collaborative-copy { display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr); gap:48px; padding-top:38px; }
.housing-collaborative-copy .eyebrow { margin:0 0 14px; }
.housing-collaborative-copy p:not(.eyebrow) { font-size:17px; max-width:720px; margin:0 0 17px; }
.housing-contact-copy { max-width:810px; }
.housing-meeting-content { max-width:960px; }
.housing-meeting-intro { max-width:720px; margin:0 auto 36px; }
.housing-meeting-intro > p:not(.eyebrow) { font-size:17px; }
.housing-meeting-content .wide-photo { width:min(100%,720px); margin-inline:auto; }
.housing-resident-voice h2 { font-size:clamp(31px,3.5vw,45px); }
.housing-history-note { display:grid; grid-template-columns:170px minmax(0,1fr); gap:30px; padding:30px; background:#fff; border-left:6px solid var(--teal); margin-bottom:48px; }
.housing-history-note .eyebrow { margin-bottom:14px; }
.history-date { display:block; font-family:var(--head); font-size:52px; line-height:1; color:var(--purple); }
.housing-history-note h2,.housing-history-note h3 { font-size:29px; }
.housing-history-note p:not(.eyebrow) { font-size:16px; margin-top:14px; }
@media(max-width:1100px) {
 .site-header { padding:16px 32px; }
 .menu-toggle { display:flex; align-items:center; gap:10px; min-height:44px; padding:8px 11px; border:1px solid var(--rule); border-radius:3px; background:#fff; color:var(--purple); font-size:13px; font-weight:700; }
 .menu-lines { display:block; position:relative; width:19px; height:2px; background:currentColor; }
 .menu-lines::before,.menu-lines::after { content:''; position:absolute; left:0; width:19px; height:2px; background:currentColor; }
 .menu-lines::before { top:-6px; }
 .menu-lines::after { top:6px; }
 #main-nav { display:none; position:absolute; inset:100% 0 auto; padding:19px 32px 25px; background:#fff; border-bottom:1px solid var(--rule); box-shadow:0 10px 18px #36073518; align-items:stretch; gap:8px; max-height:calc(100dvh - 106px); overflow:auto; }
 #main-nav.open { display:flex; flex-direction:column; }
 #main-nav > a:not(.button),.nav-group > a { padding:13px 8px; min-height:44px; font-size:15px; }
 #main-nav > a.button { align-self:flex-start; margin-top:7px; }
 .nav-group { width:100%; flex-wrap:wrap; }
 .nav-group > a { flex:1; }
 .nav-submenu-toggle { margin-left:auto; }
 .nav-submenu { position:static; width:100%; flex-basis:100%; margin:0 0 7px; padding:7px; box-shadow:none; background:var(--paper); }
 .nav-submenu > a { padding:11px 14px; }
 .program-visual-hero,.cnrp-overview { gap:30px; }
 .program-visual-hero h1 { font-size:clamp(36px,4.6vw,51px); }
 .cnrp-role-grid { gap:26px; }
}
@media(max-width:780px) {
 .site-header { padding:14px 22px; }
 html { scroll-padding-top:91px; }
 #main-nav { padding-inline:22px; max-height:calc(100dvh - 91px); }
 .program-visual-hero,.cnrp-overview { grid-template-columns:1fr; gap:30px; }
 .program-visual-hero h1 { font-size:clamp(38px,7vw,55px); }
 .program-art { width:min(100%,600px); }
 .cnrp-area-figure { width:min(100%,580px); }
 .cnrp-local-role { margin-top:34px; padding-top:27px; }
 .cnrp-role-grid { grid-template-columns:1fr; gap:28px; }
 .cnrp-role-grid > article { display:grid; grid-template-columns:64px minmax(0,1fr); column-gap:20px; }
 .cnrp-role-grid .program-icon { grid-row:1 / 3; margin-bottom:0; }
 .cnrp-role-grid h3 { font-size:25px; }
 .cnrp-role-grid p { margin-top:10px; }
 .housing-collaborative-banner { padding-block:18px; }
 .housing-collaborative-banner > .container { grid-template-columns:1fr; gap:22px; }
 .housing-collaborative-banner-logo { width:min(100%,396px); }
 .housing-collaborative-photo { width:min(100%,300px); }
 .housing-collaborative-copy { grid-template-columns:1fr; gap:23px; padding-top:28px; }
 .housing-history-note { grid-template-columns:1fr; gap:21px; padding:26px; margin-bottom:35px; }
 .housing-history-note h3 { font-size:27px; }
}
@media print {
 html { scroll-padding-top:0; }
}
/* Website search lives with the menu; content pages keep their existing flow. */
.mission-heading { display:block; }
.site-header { gap:24px; }
#main-nav { gap:clamp(12px,1.25vw,20px); }
.site-search { display:flex; flex:0 0 190px; align-items:stretch; width:190px; min-width:0; margin:0; border:1px solid #5d0a5a65; border-radius:3px; background:#fff; }
.site-search input { min-width:0; width:100%; border:0; padding:10px 11px; border-radius:3px 0 0 3px; color:var(--ink); background:transparent; font:inherit; font-size:16px; line-height:1.4; }
.site-search input::placeholder { color:#655062; opacity:1; }
.site-search button { display:flex; align-items:center; justify-content:center; flex:0 0 42px; padding:0; min-height:44px; border:0; border-radius:0 2px 2px 0; background:var(--purple); color:#fff; }
.site-search input:focus-visible { outline:3px solid var(--teal); outline-offset:2px; }
.site-search button:focus-visible { outline:3px solid var(--orange); outline-offset:3px; }
.site-search button:hover { background:#440740; }
@media(min-width:1201px) {
 .site-header { justify-content:flex-start; }
 #main-nav { flex:1; min-width:0; justify-content:space-between; align-items:center; }
 #main-nav .nav-give { margin-left:0; }
}
.search-main { max-width:1000px; padding-block:42px 70px; min-height:55vh; }
.search-main h1 { font-size:clamp(36px,4vw,54px); }
.search-intro { max-width:680px; margin-top:16px; font-size:16px; }
.search-status { margin-top:26px; padding-block:14px; border-top:1px solid var(--rule); border-bottom:1px solid var(--rule); color:var(--ink); font-size:16px; }
.search-results { margin:0; padding:0; list-style:none; }
.search-results > li { padding-block:26px; border-bottom:1px solid var(--rule); }
.search-results .search-result-label { margin:0 0 10px; color:var(--gray); font-size:14px; line-height:1.6; }
.search-results h2 { font-size:clamp(24px,2.5vw,31px); line-height:1.3; }
.search-results h2 a { text-decoration:underline; text-underline-offset:5px; text-decoration-thickness:1px; }
.search-results h2 a:hover { color:#85246f; }
.search-results h2 + p { margin-top:12px; max-width:850px; color:var(--gray); font-size:16px; line-height:1.7; }
#search-more { margin-top:26px; }
.search-help { margin-top:32px; padding:27px; background:var(--pale-teal); border-left:4px solid var(--teal); }
.search-help h2 { font-size:27px; }
.search-help ul { display:grid; grid-template-columns:1fr 1fr; gap:14px 24px; padding:0; margin:23px 0 0; list-style:none; }
.search-help a { color:var(--purple); font-size:16px; font-weight:700; text-decoration:underline; text-underline-offset:4px; }
[id^="find-"] { scroll-margin-top:28px; }
@media(min-width:1201px) and (max-width:1500px) {
 .site-header { padding-inline:24px; gap:24px; }
 .site-header .brand { width:180px; }
 #main-nav { gap:clamp(20px,1.65vw,25px); }
}
@media(min-width:1201px) and (max-width:1280px) {
 .site-header { padding-inline:20px; gap:18px; }
 .site-header .brand { width:168px; }
 #main-nav { gap:18px; }
}
@media(max-width:1200px) {
 .menu-toggle { display:flex; align-items:center; gap:10px; border:1px solid #5D0A5A30; border-radius:3px; background:white; color:var(--purple); padding:10px 14px; font-size:14px; font-weight:700; }
 #main-nav { display:none; position:absolute; top:100%; left:0; right:0; background:white; box-shadow:0 15px 20px #41083F15; align-items:stretch; flex-direction:column; padding:23px 28px; gap:0; max-height:calc(100dvh - 140px); overflow:auto; }
 #main-nav.open { display:flex; }
 #main-nav > a { font-size:14px; padding:12px 0; }
 #main-nav > a.button { margin-top:12px; align-self:flex-start; padding:13px 23px; }
 #main-nav .nav-group { width:100%; flex-wrap:wrap; }
 #main-nav .nav-group > a { flex:1; padding:13px 8px; min-height:44px; font-size:15px; }
 #main-nav .nav-submenu-toggle { margin-left:auto; }
 #main-nav .nav-submenu { position:static; width:100%; min-width:0; flex-basis:100%; box-shadow:none; margin-top:5px; }
 .site-search { flex:0 0 auto; width:100%; max-width:480px; margin-top:20px; }
 .site-search input { padding-block:12px; }
 .site-search button { flex-basis:48px; min-height:48px; }
}
@media(max-width:580px) {
 .search-main { padding-block:32px 48px; }
 .search-help { padding:23px; }
 .search-help ul { grid-template-columns:1fr; }
}
/* A neighborhood companion to the introduction, rather than another full-width feature. */
.home-intro-grid { grid-template-columns:1.2fr 1fr; gap:56px; }
.home-intro-grid .home-intro-copy > p:not(.eyebrow) { margin-top:22px; max-width:580px; }
.home-intro-grid h1 { font-size:clamp(39px,4.2vw,60px); }
.home-neighborhood { width:100%; max-width:520px; justify-self:end; }
.neighborhood-map { margin:0; background:#fff; overflow:hidden; border:1px solid #e3d4e3; border-radius:6px; }
.neighborhood-map picture { display:block; }
.neighborhood-map img { display:block; width:100%; height:auto; }
.neighborhood-map figcaption { padding:12px 18px; font-size:14px; font-weight:700; line-height:1.5; color:var(--purple); border-top:1px solid #eee4ee; }
.neighborhood-map figcaption span { display:block; font-size:12px; font-weight:400; }
/* Impact tells the story on this page; original sources remain optional next steps. */
.impact-story-row { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; }
.impact-story-row h2,.impact-section-intro h2,.impact-next-grid h2 { font-size:clamp(34px,3.5vw,48px); }
.impact-story-row p:not(.eyebrow) { font-size:16px; }
.impact-story-row .stack-links { gap:13px; }
.impact-housing { background:var(--pale-purple); }
.impact-section-intro { max-width:850px; margin-bottom:36px; }
.impact-section-intro > p:not(.eyebrow) { max-width:650px; font-size:17px; }
.impact-housing-grid { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:start; }
.impact-housing-grid h3 { font-size:clamp(28px,2.8vw,36px); }
.impact-housing-grid p:not(.eyebrow) { font-size:16px; }
.impact-research { padding-top:25px; border-top:5px solid var(--purple); }
.impact-housing-grid .text-link { margin-top:24px; }
.impact-research .impact-history-note { margin-top:30px; padding-top:22px; border-top:1px solid #5d0a5a30; font-size:14px; }
.impact-resident-voice > .eyebrow { margin-top:26px; }
.impact-next-grid { display:grid; grid-template-columns:1.1fr 1fr; gap:65px; align-items:start; }
.impact-next-grid p:not(.eyebrow) { font-size:16px; }
.impact-archive { padding:27px 30px; background:var(--pale-teal); border-left:5px solid var(--teal); }
.impact-archive h3 { font-size:28px; }
.impact-archive .text-link { margin-top:24px; }
@media(max-width:780px){
 .home-intro-grid { grid-template-columns:1fr; gap:30px; }
 .home-neighborhood { max-width:480px; justify-self:center; }
 .impact-story-row,.impact-housing-grid,.impact-next-grid { grid-template-columns:1fr; gap:35px; }
 .impact-story-row > figure { order:2; }
 .impact-section-intro { margin-bottom:30px; }
}
@media(max-width:600px){
 .home-neighborhood { max-width:340px; }
 .neighborhood-map figcaption { padding:10px 13px; font-size:13px; }
 .neighborhood-map figcaption span { font-size:11px; }
 .impact-archive { padding:24px; }
}
/* Display the user-selected NNA artwork in its supplied colors. */
.site-header .brand img { height:auto; object-fit:contain; }
.footer-logo-panel { display:inline-block; max-width:100%; padding:12px; background:white; border-radius:4px; }
.footer-logo-panel img { height:auto; object-fit:contain; }
/* Residents and archival photographs lead the Local Market impact story. */
.local-market-feature { display:grid; grid-template-columns:1fr 1.08fr; gap:50px; align-items:start; }
.local-market-feature h2 { font-size:clamp(34px,3.3vw,48px); max-width:560px; }
.local-market-feature p:not(.eyebrow) { font-size:17px; }
.local-market-feature .text-link { margin-top:26px; font-size:15px; }
.local-market-story .document-photo img { width:100%; height:auto; border-radius:5px; }
.local-market-story .document-photo figcaption { margin-top:12px; font-size:14px; line-height:1.55; }
.local-market-lead-photo { background:var(--pale-teal); padding:18px; border-radius:7px; }
.local-market-journey { margin-top:65px; padding:38px; background:var(--pale-teal); border-top:5px solid var(--teal); }
.local-market-journey > h3 { font-size:32px; }
.local-market-timeline { margin:28px 0 0; padding:0; list-style:none; }
.local-market-timeline li { display:grid; grid-template-columns:210px 1fr; gap:38px; padding:25px 0; border-top:1px solid #5d0a5a25; }
.local-market-timeline li:last-child { padding-bottom:0; }
.local-market-date time { display:block; font-family:var(--head); font-size:40px; font-weight:800; line-height:1.1; color:var(--purple); }
.local-market-date span { display:block; margin-top:9px; font-weight:700; font-size:16px; color:var(--purple); line-height:1.4; }
.local-market-timeline p { margin-top:0; font-size:17px; }
.local-market-timeline .text-link { margin-top:15px; font-size:14px; }
.local-market-photo-grid { display:grid; grid-template-columns:1fr 1fr; gap:30px; margin-top:45px; }
.local-market-coverage { margin-top:65px; }
.local-market-coverage .section-heading { align-items:start; gap:35px; margin-bottom:28px; }
.local-market-coverage .section-heading p:not(.eyebrow) { font-size:17px; max-width:480px; }
.local-market-coverage h3 { font-size:clamp(27px,2.6vw,34px); }
.local-market-coverage .resource-card { border-top:5px solid var(--orange); }
.local-market-coverage .resource-card p:not(.eyebrow) { font-size:17px; }
.local-market-coverage .text-link { font-size:15px; }
.local-market-history-link { display:flex; flex-wrap:wrap; gap:18px 30px; margin-top:35px; padding-top:28px; border-top:1px solid #5d0a5a25; }
.local-market-history-link p { margin:0; flex-basis:100%; max-width:850px; font-size:17px; }
.local-market-history-link .text-link { font-size:15px; }
@media(max-width:900px){
 .local-market-feature { grid-template-columns:1fr; gap:30px; }
 .local-market-feature h2 { max-width:700px; }
 .local-market-lead-photo { max-width:800px; }
 .local-market-timeline li { grid-template-columns:175px 1fr; gap:25px; }
}
@media(max-width:600px){
 .local-market-journey { margin-top:40px; padding:25px 20px; }
 .local-market-timeline li { grid-template-columns:1fr; gap:14px; }
 .local-market-date { display:flex; align-items:center; gap:18px; }
 .local-market-date time { font-size:34px; }
 .local-market-date span { margin-top:0; }
 .local-market-photo-grid { grid-template-columns:1fr; gap:28px; margin-top:30px; }
 .local-market-lead-photo { padding:12px; }
 .local-market-coverage { margin-top:40px; }
}
/* Review fixes retain the established artwork and brand palette. */
.embedded-video { width:100%; aspect-ratio:16/9; overflow:hidden; background:#261225; }
.embedded-video iframe { display:block; width:100%; height:100%; border:0; }
.resource-card .embedded-video { margin-block:20px; }
.podcast-playlist { width:100%; max-width:560px; margin:0; justify-self:end; }
.podcast-playlist figcaption { font-size:13px; line-height:1.6; margin-top:12px; }
.podcast-audio-option { font-size:14px; margin-top:24px; }
.podcast-audio-option .text-link { font-size:inherit; }
.framework-example { margin-top:30px; padding:25px 28px; border-left:5px solid var(--teal); background:#fff; }
.framework-example h3 { font-size:26px; }
.framework-example p { max-width:870px; line-height:1.7; }
.media-featured-grid { margin-top:28px; }
.media-featured-grid h3 { font-size:clamp(23px,2.5vw,29px); }
.media-full-archive > summary { cursor:pointer; font-size:clamp(22px,2.7vw,32px); font-weight:700; color:var(--purple); padding:25px 0; border-block:2px solid var(--purple); }
.media-full-archive > summary:focus-visible { outline:3px solid var(--orange); outline-offset:6px; }
.media-full-archive[open] > summary { margin-bottom:28px; }
.quiet-link { color:var(--purple); font-size:14px; text-decoration:underline; text-underline-offset:4px; }
.housing-resident-voice { padding-block:64px; }
@media(max-width:780px) {
 .podcast-playlist { justify-self:start; }
 .framework-example { padding:23px; }
 .housing-resident-voice { padding-block:48px; }
}

/* Dedicated, branded Google Forms open within the relevant page. */
.collaborative-participation .participation-next { display:block; }
.nna-form-panel { max-width:760px; margin-top:26px; border:1px solid #5d0a5a30; border-top:5px solid var(--teal); border-radius:5px; background:#fff; overflow:hidden; }
.nna-form-panel > summary { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:20px 24px; color:var(--purple); font-size:1rem; font-weight:700; line-height:1.5; list-style:none; cursor:pointer; }
.nna-form-panel > summary::-webkit-details-marker { display:none; }
.nna-form-panel > summary::after { content:'+'; flex:none; font-size:1.5rem; line-height:1; }
.nna-form-panel[open] > summary::after { content:'−'; }
.nna-form-panel > summary:hover { background:var(--pale-purple); }
.nna-form-panel > summary:focus-visible { outline:3px solid var(--orange); outline-offset:-5px; }
.nna-form-panel[open] > summary { border-bottom:1px solid #5d0a5a30; }
.nna-form-contents { padding:20px; background:#f7f3f7; }
.nna-form-fallback { margin:0 0 18px; padding:14px 16px; border-left:4px solid var(--teal); background:#fff; font-size:1rem; line-height:1.6; }
.nna-form-fallback .quiet-link { font-size:inherit; }
.nna-form-embed { display:block; width:100%; max-width:640px; height:var(--nna-form-height); margin-inline:auto; border:0; background:#f7f3f7; }
.media-contact.has-request-form > .container { display:block; }
.media-contact.has-request-form .nna-form-fallback { max-width:none; margin:0 0 18px; font-size:1rem; }
#collaborative-interest-form,#media-request { scroll-margin-top:120px; }
@media(max-width:600px) {
 .nna-form-panel > summary { padding:18px; }
 .nna-form-contents { padding:14px 0 0; }
 .nna-form-fallback,.media-contact.has-request-form .nna-form-fallback { margin-inline:14px; }
 .nna-form-embed { height:calc(var(--nna-form-height) + 400px); }
}

/* Media banner: white press and broadcast symbols with transparent backgrounds. */
.media-banner-grid { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,1fr); align-items:center; gap:54px; }
.media-banner-copy { min-width:0; }
.media-banner-copy > p:not(.eyebrow) { max-width:620px; }
.media-banner-graphic { display:grid; grid-template-columns:minmax(0,1.28fr) minmax(0,1fr); grid-template-rows:repeat(2,minmax(0,1fr)); gap:22px 24px; align-items:center; justify-items:center; width:100%; max-width:480px; aspect-ratio:1.3; justify-self:end; color:#fff; background:transparent; }
.media-banner-graphic > div { display:grid; place-items:center; background:transparent; }
.media-banner-news { grid-column:1; grid-row:1 / 3; width:100%; aspect-ratio:1; }
.media-banner-video,.media-banner-mic { grid-column:2; width:min(100%,164px); aspect-ratio:1; border:2px solid #ffffff80; border-radius:50%; }
.media-banner-video { grid-row:1; }
.media-banner-mic { grid-row:2; }
.media-banner-symbol { display:block; width:94%; height:94%; background:currentColor; -webkit-mask-position:center; mask-position:center; -webkit-mask-size:contain; mask-size:contain; -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat; }
.media-symbol-news { -webkit-mask-image:url('assets/media-newspaper.svg'); mask-image:url('assets/media-newspaper.svg'); }
.media-symbol-video { -webkit-mask-image:url('assets/media-video.svg'); mask-image:url('assets/media-video.svg'); width:78%; height:78%; }
.media-symbol-mic { -webkit-mask-image:url('assets/media-mic.svg'); mask-image:url('assets/media-mic.svg'); width:74%; height:74%; }
@media(max-width:1100px) {
 .media-banner-grid { gap:36px; }
}
@media(max-width:780px) {
 .media-banner-grid { grid-template-columns:1fr; gap:24px; }
 .media-banner-graphic { width:min(320px,80%); gap:18px 20px; }
}
@media(max-width:580px) {
 .media-banner-grid { gap:18px; }
 .media-banner-graphic { width:min(250px,78%); gap:14px 16px; }
}

/* The full search bar stays visible above the main navigation. */
.preview-note { align-items:center; justify-content:flex-end; padding-block:7px; }
.preview-note .site-search { flex:0 1 240px; width:240px; min-width:130px; max-width:none; margin:0; border-color:#ffffff80; }
.preview-note .site-search input { padding:6px 10px; font-size:14px; line-height:1.4; letter-spacing:0; }
.preview-note .site-search button { flex-basis:38px; min-height:34px; background:#fff; color:var(--purple); border-left:1px solid #5d0a5a30; }
.preview-note .site-search button:hover { background:var(--pale-purple); }
@media(max-width:580px) {
 .preview-note { gap:12px; padding-inline:20px; }
 .preview-note .site-search { flex-basis:180px; width:180px; }
}

/* Distinct white housing outlines on the CNRP and research banners. */
.housing-banner-grid { display:grid; grid-template-columns:minmax(0,1.8fr) minmax(0,.8fr); align-items:center; gap:60px; }
.housing-banner-copy { min-width:0; }
.housing-banner-copy h1 { max-width:820px; }
.housing-banner-graphic { width:100%; max-width:310px; justify-self:center; }
.housing-banner-graphic img { display:block; width:100%; height:auto; }
@media(max-width:1050px) {
 .housing-banner-grid { gap:32px; }
 .housing-banner-graphic { max-width:250px; }
}
@media(max-width:780px) {
 .housing-banner-grid { grid-template-columns:1fr; gap:28px; }
 .housing-banner-graphic { width:min(45%,200px); }
}

/* People and helping hands connect the Get Involved introduction to participation. */
.involved-banner-grid { display:grid; grid-template-columns:minmax(0,1.9fr) minmax(0,.8fr); gap:56px; align-items:center; }
.involved-banner-copy { min-width:0; }
.involved-banner-copy h1 { font-size:clamp(43px,4.6vw,68px); }
.involved-banner-graphic { display:grid; grid-template-columns:1.3fr .9fr; align-items:end; gap:24px; width:100%; max-width:360px; justify-self:end; }
.involved-banner-graphic img { display:block; width:100%; height:auto; }
@media(max-width:1050px) {
 .involved-banner-grid { gap:32px; }
}
@media(max-width:780px) {
 .involved-banner-grid { grid-template-columns:1fr; gap:28px; }
 .involved-banner-graphic { width:min(66%,245px); justify-self:center; }
}


/* About NNA: white neighbors and leaves mark. */
.about-banner-grid { display:grid; grid-template-columns:minmax(0,1.8fr) minmax(0,.8fr); gap:56px; align-items:center; }
.about-banner-copy { min-width:0; }
.about-banner-copy h1 { font-size:clamp(43px,4.6vw,68px); }
.about-banner-graphic { width:100%; max-width:220px; justify-self:center; }
.about-banner-graphic img { display:block; width:100%; height:auto; filter:brightness(0) invert(1); }
@media(max-width:1050px) { .about-banner-grid { gap:32px; } }
@media(max-width:780px) {
 .about-banner-grid { grid-template-columns:1fr; gap:28px; }
 .about-banner-graphic { width:min(45%,160px); }
 .about-banner-copy h1 { font-size:clamp(37px,7vw,56px); }
}

.housing-history-note.housing-history-earlier { margin-top:64px; margin-bottom:0; }
