/* Editorial revision: shared typography, distinct page structures, original red identity. */
:root{--gutter:clamp(24px,5vw,76px);--muted:#595d62;--grey:#f3f3f2}
.wrap,.header-inner{max-width:1440px}
.header-inner{min-height:94px}
.site-header nav{gap:26px}
.editorial-kicker{font-size:12px!important;line-height:1.5!important;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--red)!important;margin-bottom:18px}
.page-intro.editorial-head{padding-top:66px;padding-bottom:52px;margin-bottom:0}
.editorial-head h1,.view-leadership .editorial-head h1{font-size:clamp(43px,4.9vw,70px);line-height:1.08;max-width:1080px;margin-bottom:24px;letter-spacing:-.045em;overflow-wrap:normal}
.editorial-head-copy>.editorial-kicker{margin-bottom:21px;max-width:none}
.editorial-head-copy>.page-deck{font-size:21px;line-height:1.6;max-width:820px;color:var(--muted)}
.editorial-section{padding-block:76px}
.section-heading{align-items:center;gap:32px;margin-bottom:34px}
.section-heading h2{font-size:40px;line-height:1.15;margin:0}
.text-link{font-size:16px;gap:13px}
.text-link:hover{gap:13px;color:var(--deep)}
.button{font-size:16px;padding:16px 23px;gap:18px}
.story-hero{min-height:710px;max-height:850px}
.story-hero h1{font-size:clamp(48px,5.4vw,78px);max-width:1000px}
.story-hero .hero-copy{padding-top:130px;padding-bottom:100px}
.story-hero .hero-copy>p:not(.hero-eyebrow){font-size:22px;max-width:745px}
.home-introduction{display:grid;grid-template-columns:1fr 2fr;gap:70px;padding-top:74px;padding-bottom:76px;border-bottom:1px solid var(--rule)}
.home-introduction h2{font-size:38px;max-width:710px;margin-bottom:24px}
.home-introduction p:not(.editorial-kicker){font-size:20px;line-height:1.7;color:var(--muted);max-width:780px;margin:0}
.portfolio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:62px 44px}
.portfolio-image{display:block;overflow:hidden;background:var(--grey)}
.portfolio-image img{width:100%;aspect-ratio:1.65;object-fit:cover;transition:transform .45s}
.portfolio-image:hover img{transform:scale(1.025)}
.portfolio-meta{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin-top:21px;font-size:11px;letter-spacing:.06em;text-transform:uppercase}
.portfolio-meta span:first-child{font-weight:700;color:var(--red)}
.portfolio-meta span:last-child{color:var(--muted);text-align:right}
.portfolio-card h3{font-size:31px;line-height:1.17;max-width:530px;margin-top:12px;margin-bottom:16px}
.portfolio-card h3 a:hover,.story-card h3 a:hover{color:var(--red)}
.portfolio-card>p{font-size:17px;line-height:1.65;color:var(--muted);max-width:540px;margin-bottom:22px}
.portfolio-index{padding-top:0;padding-bottom:76px}
.event-highlight{background:var(--grey);padding:68px 0 72px}
.editorial-feature{display:grid;grid-template-columns:1.18fr 1fr;gap:60px;align-items:center}
.editorial-feature>img,.editorial-feature>video{width:100%;aspect-ratio:1.6;object-fit:cover;background:var(--black)}
.editorial-feature>video{aspect-ratio:16/9}
.editorial-feature h2{font-size:38px;line-height:1.15;margin-bottom:22px}
.editorial-feature p:not(.editorial-kicker){font-size:18px;line-height:1.65;color:var(--muted)}
.story-grid{gap:36px}
.story-card{min-width:0}
.story-image{display:block;overflow:hidden}
.story-card img{height:auto;aspect-ratio:1.65;object-fit:cover;border:0;margin-bottom:22px}
.story-card .editorial-kicker{font-size:11px!important;margin-bottom:12px}
.story-card h3{font-size:26px;line-height:1.2;margin-bottom:14px}
.story-card p{font-size:16px;line-height:1.65}
.original-film{padding-bottom:52px;margin-bottom:0}
.original-film details{border-top:1px solid var(--rule);padding-top:24px}
.original-film summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer;font-size:18px;list-style:none}
.original-film summary::-webkit-details-marker{display:none}
.original-film summary span{font-size:26px;color:var(--red)}
.about-editorial{display:grid;grid-template-columns:1.14fr 1fr;gap:84px;padding-bottom:70px;align-items:start}
.about-body{border-top:2px solid var(--red);padding-top:26px}
.about-body h2{font-size:35px;line-height:1.2;margin-bottom:25px}
.about-body>p:not(.editorial-kicker){font-size:18px;line-height:1.75;color:var(--muted)}
.about-editorial figure{margin:0;min-width:0}
.about-editorial figure img{width:100%;aspect-ratio:.83;object-fit:cover}
figcaption{font-size:12px;line-height:1.55;color:var(--muted);margin-top:13px}
.about-priorities{padding-bottom:75px}
.about-priorities dl{margin:0}
.about-priorities dl>div{display:grid;grid-template-columns:1fr 1.2fr;gap:70px;border-top:1px solid var(--rule);padding:28px 0}
.about-priorities dl>div:last-child{border-bottom:1px solid var(--rule)}
.about-priorities dt{font-size:24px;line-height:1.3;letter-spacing:-.02em;font-weight:500}
.about-priorities dd{font-size:18px;line-height:1.65;color:var(--muted);margin:0;max-width:580px}
.about-history{background:var(--grey);padding:70px 0}
.about-history-grid,.about-name{display:grid;grid-template-columns:1fr 1.2fr;gap:90px}
.about-history h2,.about-name h2{font-size:38px;line-height:1.17}
.about-history-grid>div>p:not(.editorial-kicker),.about-name>p{font-size:18px;line-height:1.75;color:var(--muted)}
.about-name{padding-top:68px;padding-bottom:70px}
.about-name>p{margin:0}
.editorial-link-row{display:grid;grid-template-columns:1fr 1.2fr auto;gap:45px;align-items:center;border-top:1px solid var(--rule);padding-top:34px;padding-bottom:65px}
.editorial-link-row h2{font-size:28px}
.editorial-link-row p{font-size:17px;line-height:1.6;color:var(--muted);margin:0}
.event-lead{display:grid;grid-template-columns:1.15fr 1fr;background:var(--grey)}
.event-lead-image{display:block;min-width:0}
.event-lead-image img{width:100%;height:100%;min-height:450px;object-fit:cover}
.event-lead-body{padding:40px 43px}
.event-lead h2{font-size:39px;line-height:1.12;margin-bottom:24px}
.event-lead-body>p:not(.editorial-kicker){font-size:17px;line-height:1.65;color:var(--muted)}
.event-lead .event-place{color:var(--ink)!important;font-weight:500;margin-bottom:18px}
.event-resources{display:flex;flex-wrap:wrap;gap:9px 18px;border-top:1px solid var(--rule);padding-top:17px;margin-bottom:26px;font-size:12px;color:var(--muted)}
.event-archive-heading{margin-top:68px}
.event-archive-list{display:grid;grid-template-columns:1fr 1fr;gap:44px}
.event-archive-list article{border-top:1px solid var(--rule);padding-top:25px;display:grid;grid-template-columns:150px 1fr;gap:26px;align-items:start}
.event-archive-list img{width:100%;aspect-ratio:1;object-fit:cover}
.event-archive-list h3{font-size:26px;line-height:1.2;margin-bottom:15px}
.event-archive-list p:not(.editorial-kicker){font-size:16px;line-height:1.65;color:var(--muted)}
.event-archive-list .editorial-kicker{font-size:10px!important;margin-bottom:12px}
.archive-notice{border-top:1px solid var(--rule);padding-top:25px;margin-top:45px;margin-bottom:65px;font-size:15px;color:var(--muted)}
.archive-notice a{color:var(--red);text-decoration:underline;text-underline-offset:4px}
.media-index{padding-bottom:72px}
.media-lead-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px;padding-bottom:55px}
.media-lead-grid .story-card h3{font-size:33px;max-width:570px}
.media-lead-grid .story-card>p:not(.editorial-kicker){max-width:565px;font-size:17px}
.archive-toolbar{border-top:1px solid var(--rule);padding-top:30px;gap:24px;margin-bottom:38px}
.archive-toolbar h2{font-size:32px}
.archive-grid{row-gap:50px}
.project-cover{margin:0 0 52px}
.project-cover img{width:100%;max-height:610px;aspect-ratio:2.1;object-fit:cover;object-position:center 40%}
.project-detail-grid{display:grid;grid-template-columns:270px minmax(0,780px);gap:85px;align-items:start}
.project-meta{border-top:2px solid var(--red);padding-top:20px}
.project-meta dl{margin:0}
.project-meta dt{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
.project-meta dd{margin:0 0 23px;font-size:17px;line-height:1.5}
.project-detail-grid>.prose h2:first-child{margin-top:0}
.prose{font-size:18px;line-height:1.8;color:#474b50;overflow-wrap:break-word}
.prose h2{font-size:31px;line-height:1.2;margin:36px 0 21px}
.prose h3{font-size:25px;line-height:1.25}
.project-detail .archive-reading{margin-top:40px;margin-bottom:15px}
.project-detail .back-link{margin-top:35px}
.project-detail{padding-bottom:15px}
.view-post .editorial-head h1,.view-event .editorial-head h1{max-width:1050px;font-size:clamp(39px,4.3vw,62px)}
.article-hero{height:auto;aspect-ratio:2.1;max-height:630px;border:0;margin-bottom:50px}
.article-body .prose{max-width:790px}
.article-body .prose h2{font-size:31px}
.archive-date{text-transform:uppercase;letter-spacing:.08em;color:var(--red);font-size:11px;margin-bottom:25px}
.article-body>.photo-grid{margin-top:45px}
.event-page .event-feature{gap:55px;grid-template-columns:1.2fr 1fr;margin-bottom:38px}
.event-feature h2{font-size:36px;line-height:1.15}
.event-feature p{font-size:18px;line-height:1.65}
.event-feature>img{height:auto;aspect-ratio:1.5}
.event-section>h2{font-size:34px}
.event-section{margin-top:55px;padding-top:35px}
.session-list h3{font-size:20px;line-height:1.35;min-height:55px}
.view-leadership .editorial-head{padding-bottom:45px}
.leadership-section{padding-bottom:58px}
.management-section{padding-top:10px}
.rule-heading h2{font-size:32px}
.board-profile h3{font-size:25px}
.editorial-contact{border-top:1px solid var(--rule);padding-top:42px;gap:100px;padding-bottom:80px}
.editorial-contact h2{font-size:35px}
.editorial-contact>div>p:not(.editorial-kicker){font-size:17px;line-height:1.7;max-width:360px}
.contact-email{font-size:25px;color:var(--red);display:inline-block;margin-bottom:25px;border-bottom:1px solid currentColor}
.editorial-contact form{max-width:610px}
.footer-tagline{font-size:12px;text-transform:none;letter-spacing:0}
.footer-top h2{font-size:28px}
.footer-bottom nav{gap:20px}
.about-vision{background:var(--grey);padding-block:68px}
.about-vision-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:85px}
.about-vision-heading h2{font-size:clamp(34px,3.2vw,46px);line-height:1.15;margin-bottom:25px}
.about-chinese-name{font-size:20px;letter-spacing:.1em;color:var(--muted);margin-bottom:28px}
.about-vision-heading .vision-symbol{width:210px;height:210px;object-fit:contain;mix-blend-mode:multiply}
.about-vision-story p{font-size:18px;line-height:1.8;color:var(--muted);margin-bottom:22px}
.about-vision-story p:last-child{margin-bottom:0}
.about-commitment{display:grid;grid-template-columns:1fr 1.2fr;gap:85px;padding-block:65px}
.about-commitment h2{font-size:35px;line-height:1.2;max-width:410px}
.about-commitment p{font-size:18px;line-height:1.75;color:var(--muted)}
@media(max-width:1100px){
 .site-header nav{gap:17px}.about-editorial{gap:45px}.home-introduction{gap:40px;grid-template-columns:.7fr 2fr}
 .editorial-feature{gap:35px}.editorial-feature h2,.event-lead h2{font-size:33px}.event-lead-body{padding:30px}
 .event-archive-list article{grid-template-columns:110px 1fr;gap:20px}.about-history-grid,.about-name{gap:55px}
 .project-detail-grid{grid-template-columns:220px minmax(0,1fr);gap:50px}.editorial-link-row{grid-template-columns:1fr 1.5fr;gap:20px}
 .editorial-link-row .text-link{grid-column:2;justify-self:start}.portfolio-grid,.media-lead-grid{gap:48px 30px}
}
@media(max-width:750px){
 .header-inner{min-height:82px}.page-intro.editorial-head{padding-top:42px;padding-bottom:35px}
 .editorial-head h1,.view-leadership .editorial-head h1,.view-post .editorial-head h1,.view-event .editorial-head h1{font-size:clamp(35px,9.8vw,49px);line-height:1.1;margin-bottom:21px}
 .editorial-head-copy>.editorial-kicker{font-size:10px!important;margin-bottom:18px}.editorial-head-copy>.page-deck{font-size:18px;line-height:1.65}
 .story-hero{min-height:720px}.story-hero h1{font-size:clamp(40px,10.5vw,65px)}.story-hero .hero-copy{padding-top:142px;padding-bottom:125px}
 .story-hero .hero-copy>p:not(.hero-eyebrow){font-size:19px}.home-introduction{display:block;padding-top:42px;padding-bottom:42px}
 .home-introduction h2{font-size:31px}.home-introduction p:not(.editorial-kicker){font-size:18px}
 .editorial-section{padding-block:46px}.section-heading{display:flex;align-items:baseline;gap:20px;margin-bottom:26px;flex-wrap:wrap}
 .section-heading h2{font-size:32px;margin:0}.section-heading .text-link{font-size:14px}
 .portfolio-grid,.media-lead-grid{grid-template-columns:1fr;gap:42px}.portfolio-card h3{font-size:28px}.portfolio-meta{font-size:10px;gap:12px;margin-top:17px}
 .portfolio-card>p{font-size:17px;margin-bottom:19px}.portfolio-index{padding-top:0;padding-bottom:40px}
 .event-highlight{padding:44px 0}.editorial-feature{grid-template-columns:1fr;gap:27px}.editorial-feature h2{font-size:32px}
 .editorial-feature p:not(.editorial-kicker){font-size:17px}.story-grid{grid-template-columns:1fr;gap:36px}.story-card h3{font-size:26px}
 .original-film{padding-bottom:40px}.original-film summary{font-size:16px;gap:20px}
 .about-editorial{grid-template-columns:1fr;gap:28px;padding-bottom:43px}.about-body h2{font-size:30px}
 .about-editorial figure img{aspect-ratio:1.3}.about-priorities{padding-bottom:42px}.about-priorities dl>div{display:block;padding:24px 0}
 .about-priorities dt{font-size:23px;margin-bottom:15px}.about-priorities dd{font-size:17px}
 .about-history{padding:42px 0}.about-history-grid,.about-name{grid-template-columns:1fr;gap:28px}.about-history h2,.about-name h2{font-size:32px}
 .about-name{padding-top:43px;padding-bottom:43px}.editorial-link-row{display:block;padding-top:27px;padding-bottom:43px}
 .editorial-link-row h2{margin-bottom:18px}.editorial-link-row p{margin-bottom:22px}
 .event-lead{grid-template-columns:1fr}.event-lead-image img{min-height:0;height:auto;aspect-ratio:1.5}.event-lead-body{padding:28px 24px 31px}
 .event-lead h2{font-size:32px}.event-archive-heading{margin-top:43px}.event-archive-list{grid-template-columns:1fr;gap:28px}
 .event-archive-list article{grid-template-columns:95px 1fr;gap:20px}.event-archive-list h3{font-size:24px}.event-archive-list .text-link{font-size:14px}
 .event-archive-list .editorial-kicker{font-size:9px!important}.event-archive-list p:not(.editorial-kicker){font-size:16px}
 .archive-notice{margin-bottom:42px}.media-lead-grid{padding-bottom:40px}.media-lead-grid .story-card h3{font-size:28px}.media-index{padding-bottom:44px}
 .archive-toolbar{display:flex;align-items:start;flex-direction:column}.archive-toolbar label{max-width:none}.archive-toolbar h2{font-size:28px}
 .project-cover{margin-bottom:31px}.project-cover img{aspect-ratio:1.5}.project-detail-grid{grid-template-columns:1fr;gap:22px}
 .project-meta dl{display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.project-meta dt{grid-column:1}.project-meta dd{grid-column:2;margin-bottom:20px;font-size:16px}
 .prose{font-size:17px;line-height:1.8}.prose h2,.article-body .prose h2{font-size:28px}
 .article-hero{aspect-ratio:1.5;margin-bottom:32px}.event-page .event-feature{grid-template-columns:1fr;gap:28px}.event-feature h2{font-size:31px}
 .event-section>h2{font-size:30px}.session-list{grid-template-columns:1fr}.session-list h3{min-height:0}
 .editorial-contact{padding-top:29px;padding-bottom:45px;gap:30px;grid-template-columns:1fr}.contact-email{font-size:23px}
 .board-profile h3{font-size:23px}.leadership-section{padding-bottom:32px}.footer-top h2{font-size:27px}
 .footer-bottom nav{gap:16px 22px}.site-header nav.open{top:100%}
 .about-vision{padding-block:42px}.about-vision-grid,.about-commitment{grid-template-columns:1fr;gap:25px}
 .about-vision-heading h2{font-size:33px}.about-chinese-name{font-size:18px;letter-spacing:.04em}
 .about-vision-heading .vision-symbol{width:130px;height:130px}.about-vision-story p{font-size:17px}
 .about-commitment{padding-block:42px}.about-commitment h2{font-size:30px}.about-commitment p{font-size:17px}
}

.media-index .archive-toolbar{padding-top:0;border-top:0;margin-bottom:35px}.media-index .archive-grid{border-top:1px solid var(--rule);padding-top:35px}.media-lead-grid:not(:has(.story-card:not([hidden]))){display:none}.media-index .archive-grid:not(:has(.story-card:not([hidden]))){display:none}

/* Selected About narrative: Indigenous futures, Canadian roots, global cooperation. */
.about-page-hero{display:grid;grid-template-columns:1.08fr 1fr;gap:56px;align-items:center;padding-top:58px;padding-bottom:64px}
.about-page-hero h1{font-size:clamp(42px,4.3vw,62px);line-height:1.08;letter-spacing:-.045em;margin-bottom:30px}
.about-page-intro{font-size:21px;line-height:1.6;max-width:900px;color:var(--muted);margin:0}
.about-page-vision{background:#f6f2ed;color:var(--ink);padding:60px 0}
.about-page-vision-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:74px;align-items:center}.about-page-mission{display:grid;grid-template-columns:1fr 3fr;gap:60px;align-items:start}
.about-page-vision h2{font-size:12px;line-height:1.5;font-weight:500;letter-spacing:.09em;text-transform:uppercase;color:var(--red);margin:0 0 22px}
.about-page-vision p{font-size:clamp(26px,2.5vw,36px);line-height:1.45;letter-spacing:-.02em;max-width:970px;margin:0}
.about-page-mission{padding-top:50px;padding-bottom:50px;border-bottom:1px solid var(--rule)}
.about-page-mission h2{font-size:29px;line-height:1.3;letter-spacing:-.025em;margin:0}
.about-page-mission p{font-size:22px;line-height:1.7;color:var(--muted);max-width:890px;margin:0}
.about-page-story,.about-page-work-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:80px;align-items:start}
.about-page-story{padding-top:68px;padding-bottom:68px}
.about-page-story h2,.about-page-work h2{font-size:clamp(30px,3vw,42px);line-height:1.2;letter-spacing:-.025em;max-width:460px;margin:0}
.about-page-landscape{width:100%;max-width:460px;aspect-ratio:1.9;object-fit:cover;margin-top:32px}
.about-page-prose p{font-size:19px;line-height:1.8;color:var(--muted);margin:0 0 23px}
.about-page-prose p:last-child{margin-bottom:0}
.about-page-work{background:var(--grey);padding:62px 0}
.about-page-work .text-link{margin-top:6px}
.about-page-cta{display:grid;grid-template-columns:1fr 1.25fr;gap:80px;align-items:start;padding-top:55px;padding-bottom:60px}
.about-page-cta h2{font-size:32px;line-height:1.25;max-width:430px;margin:0}
.about-page-cta p{font-size:18px;line-height:1.75;color:var(--muted);margin:0 0 25px;max-width:650px}
@media(max-width:750px){
 .about-page-hero{grid-template-columns:1fr;gap:30px;padding-top:38px;padding-bottom:37px}
 .about-page-hero h1{font-size:42px;line-height:1.12;margin-bottom:24px}
 .about-page-intro{font-size:18px;line-height:1.7}
 .about-page-vision{padding-block:34px}
 .about-page-vision-grid,.about-page-mission,.about-page-story,.about-page-work-grid,.about-page-cta{grid-template-columns:1fr;gap:21px}
 .about-page-vision h2{margin:0;font-size:11px}
 .about-page-vision p{font-size:27px;line-height:1.5}
 .about-page-mission{padding-block:34px}
 .about-page-mission h2{font-size:26px}
 .about-page-mission p{font-size:19px}
 .about-page-story{padding-block:40px;gap:28px}
 .about-page-story h2,.about-page-work h2{font-size:31px}
 .about-page-landscape{margin-top:25px}
 .about-page-prose p{font-size:17px}
 .about-page-work{padding-block:39px}
 .about-page-cta{padding-top:39px;padding-bottom:42px}
 .about-page-cta h2{font-size:28px}
 .about-page-cta p{font-size:17px}
}

/* Photography gives each interior page a visible setting for its work. */
.editorial-head-with-photo{display:grid;grid-template-columns:1fr 1.05fr;gap:70px;align-items:center}
.editorial-head-with-photo h1{font-size:clamp(43px,4.9vw,70px)}
.editorial-head-with-photo .page-deck{font-size:20px;max-width:520px}
.editorial-head-photo,.about-page-hero-photo,.about-page-community-photo{margin:0;min-width:0}
.editorial-head-photo img{width:100%;aspect-ratio:1.65;object-fit:cover}
.about-page-hero-photo img{width:100%;height:540px;object-fit:cover;object-position:57% center}
.about-page-hero-photo figcaption,.about-page-community-photo figcaption{font-size:11px;line-height:1.5;margin-top:12px;color:var(--muted)}
.about-page-community-photo img{width:100%;aspect-ratio:1.25;object-fit:cover;object-position:center}
.story-hero .hero-shade{background:linear-gradient(90deg,rgba(0,0,0,.65),rgba(0,0,0,.26) 64%,rgba(0,0,0,.13))}
@media(max-width:950px){
 .about-page-hero{gap:32px}
 .about-page-hero h1{font-size:43px}
 .about-page-hero-photo img{height:500px}
 .editorial-head-with-photo{gap:35px}
}
@media(max-width:750px){
 .editorial-head-with-photo{grid-template-columns:1fr;gap:28px}
 .editorial-head-with-photo .page-deck{font-size:18px}
 .editorial-head-photo img{aspect-ratio:1.6}
 .about-page-hero h1{font-size:42px}
 .about-page-hero-photo img{height:auto;aspect-ratio:1.1;object-position:center}
 .about-page-vision-grid{gap:30px}
 .about-page-vision h2{margin-bottom:18px}
 .about-page-community-photo img{aspect-ratio:1.5}
 .story-hero .hero-shade{background:linear-gradient(90deg,rgba(0,0,0,.62),rgba(0,0,0,.28))}
}

/* Footer: one identity, one contact invitation, and a separate newsletter row. */
.site-footer{padding:48px 0 28px}
.site-footer .footer-top{display:grid;grid-template-columns:.9fr 1.2fr;gap:60px;align-items:center;padding-bottom:36px}
.site-footer .footer-brand>a{display:inline-block}
.site-footer .footer-brand img{display:block;width:260px;height:auto;aspect-ratio:2120/485;margin:0 0 15px}
.site-footer .footer-tagline{font-size:13px;line-height:1.5;color:#bdbdbd;margin:0}
.site-footer .footer-contact{display:flex;align-items:center;justify-content:space-between;gap:24px}
.site-footer .footer-contact h2{font-size:clamp(25px,2.1vw,31px);line-height:1.2;letter-spacing:-.025em;margin:0;max-width:350px}
.site-footer .footer-contact .button{margin:0;flex-shrink:0}
.site-footer .footer-middle{display:block;padding:32px 0}
.site-footer .footer-middle form{display:grid;grid-template-columns:.9fr 1.2fr;gap:60px;align-items:start;max-width:none;width:100%}
.site-footer .newsletter-copy label{display:block;font-size:23px;line-height:1.35}
.site-footer .newsletter-copy p{margin:10px 0 0;font-size:14px;line-height:1.6;color:#bdbdbd}
.site-footer .newsletter-entry{min-width:0}
.site-footer .newsletter-fields{display:flex}
.site-footer .newsletter-fields input{flex:1;min-width:0;width:0}
.site-footer .newsletter-fields button{flex-shrink:0;width:auto;margin:0}
.site-footer .newsletter-entry .newsletter-preview{margin:9px 0 0;font-size:11px;line-height:1.5;color:#bdbdbd}
.site-footer .footer-bottom{padding-top:24px;align-items:center;gap:30px;color:#bdbdbd}
.site-footer .footer-legal p{margin:0;line-height:1.7}
.site-footer .footer-legal .footer-credit{margin-top:3px}
.site-footer .footer-credit a{color:#e6e6e6;text-decoration:underline;text-decoration-color:#777;text-underline-offset:3px}
.site-footer .footer-credit a:hover{text-decoration-color:#fff;color:#fff}
.site-footer .footer-bottom nav{flex-wrap:wrap;gap:10px 20px;justify-content:flex-end}
.site-footer .footer-bottom nav a{display:inline-flex;align-items:center;min-height:24px}
.footer-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-footer a:focus-visible,.site-footer button:focus-visible,.site-footer input:focus-visible{outline:2px solid #fff;outline-offset:5px}
@media(max-width:1100px){
 .site-footer .footer-top,.site-footer .footer-middle form{grid-template-columns:.8fr 1.2fr;gap:35px}
 .site-footer .footer-contact h2{max-width:240px;font-size:25px}
 .site-footer .footer-contact .button{padding:15px 18px;font-size:15px}
}
@media(max-width:850px){
 .site-footer .footer-contact{align-items:flex-start;flex-direction:column;gap:18px}
 .site-footer .footer-bottom{display:flex;align-items:flex-start;flex-direction:column;gap:18px}
 .site-footer .footer-bottom nav{justify-content:flex-start}
}
@media(max-width:700px){
 .site-footer{padding:35px 0 24px}
 .site-footer .footer-top{grid-template-columns:1fr;gap:30px;padding-bottom:30px}
 .site-footer .footer-top>div{margin:0}
 .site-footer .footer-brand img{width:230px;margin-bottom:13px}
 .site-footer .footer-contact h2{max-width:none;font-size:27px}
 .site-footer .footer-middle{padding:28px 0}
 .site-footer .footer-middle form{grid-template-columns:1fr;gap:22px}
 .site-footer .newsletter-copy label{font-size:22px}
 .site-footer .newsletter-fields button{padding-inline:17px}
 .site-footer .newsletter-fields input{padding-inline:13px;font-size:15px}
 .site-footer .footer-bottom{padding-top:21px}
 .site-footer .footer-bottom nav{gap:8px 22px}
}

/* Interior page banners are full-width brand compositions, distinct from story cards. */
.page-banner{position:relative;isolation:isolate;overflow:hidden;background:#fefdfc;border-bottom:1px solid #eee9e4}
.page-banner-art{position:absolute;inset:0;z-index:-1;display:block;width:100%;height:100%;object-fit:cover;object-position:left center;pointer-events:none}
.page-banner-inner{display:flex;align-items:center;min-height:410px;padding-top:64px;padding-bottom:64px}
.page-banner-copy{width:100%;max-width:660px}
.page-banner h1{font-size:clamp(54px,5.2vw,76px);line-height:1.05;letter-spacing:-.045em;font-weight:500;margin:0 0 25px}
.page-banner .editorial-kicker{margin-bottom:23px}
.page-banner-intro{font-size:20px;line-height:1.65;max-width:610px;margin:0;color:#45484b}
.page-banner-about .page-banner-inner{min-height:560px;padding-block:62px}
.page-banner-about .page-banner-copy{max-width:660px}
.page-banner-about h1{font-size:clamp(43px,4.25vw,61px);max-width:690px;line-height:1.1}
.page-banner-about .page-banner-intro{max-width:610px}
.page-banner+.impact-sections{padding-top:26px;padding-bottom:26px}
.page-banner+.media-impact-link{padding-top:29px;padding-bottom:34px}
.page-banner+.portfolio-index{padding-top:64px}
.page-banner+.events-index{padding-top:64px}
.about-page-mission h2::before,.view-events .event-archive-heading h2::before,.view-archive .archive-toolbar h2::before{content:'';display:block;width:88px;height:14px;margin-bottom:20px;background:url('brand/trifocal-fold-divider.svg') left center/contain no-repeat}
.view-events .event-lead-body{position:relative}
.view-events .event-lead-body::after{content:'';position:absolute;top:0;right:0;width:84px;height:15px;background:url('brand/trifocal-fold-divider.svg') right top/contain no-repeat;pointer-events:none}
.site-footer .footer-legal .footer-credit{margin:0}
.site-footer .footer-copyright{white-space:nowrap}
@media(max-width:1100px) and (min-width:701px){
 .page-banner-copy{max-width:58%}
 .page-banner-intro{font-size:18px}
 .page-banner h1{font-size:56px}
 .page-banner-about .page-banner-copy{max-width:64%}
 .page-banner-about h1{font-size:43px}
 .page-banner-about{display:flex;flex-direction:column}
 .page-banner-about .page-banner-inner{min-height:0;padding-block:48px}
 .page-banner-about .page-banner-copy{max-width:660px}
 .page-banner-about .page-banner-art{position:relative;inset:auto;order:1;z-index:0;height:230px;object-position:right center}
}
@media(max-width:700px){
 .page-banner{display:flex;flex-direction:column}
 .page-banner-inner,.page-banner-about .page-banner-inner{width:100%;min-height:0;padding-top:36px;padding-bottom:28px}
 .page-banner-copy,.page-banner-about .page-banner-copy{max-width:none}
 .page-banner h1{font-size:45px;line-height:1.08;margin-bottom:20px}
 .page-banner-about h1{font-size:38px;line-height:1.12}
 .page-banner .editorial-kicker{font-size:10px!important;margin-bottom:18px}
 .page-banner-intro{font-size:18px;line-height:1.65;max-width:none}
 .page-banner-art{position:relative;inset:auto;order:1;z-index:0;display:block;width:100%;height:145px;object-fit:cover;object-position:right center}
 .page-banner+.portfolio-index{padding-top:35px}
 .page-banner+.events-index{padding-top:35px}
 .page-banner+.impact-sections{padding-top:23px;padding-bottom:24px;gap:13px 23px}
 .page-banner+.media-impact-link{padding-top:24px;padding-bottom:29px}
 .site-footer .footer-copyright{font-size:clamp(9px,2.65vw,11px)}
}

/* Accessible form status; the spam trap stays outside the visual flow. */
.form-honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
#contact-status{margin:1rem 0;max-width:48ch}
form[aria-busy="true"] button[type="submit"]{opacity:.65;cursor:wait}
