/* Homepage: practical guides and visible routes for participation. */
.home-learning-surface{background:#edf0e6;border-block:1px solid #d9decd;margin-top:24px;scroll-margin-top:24px}
.home-learning{padding-block:52px 48px}
.home-library-heading{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end;margin-bottom:30px}
.home-library-heading .eyebrow{margin-bottom:15px}
.home-library-heading h2,.home-participation h2{font:400 clamp(1.9rem,2.8vw,2.65rem)/1.25 var(--serif);letter-spacing:-.02em;text-wrap:pretty}
.home-library-heading>p{font-size:1.05rem;max-width:580px}
.home-lesson-shelf{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px}
.home-lesson{display:flex;flex-direction:column;min-width:0;border-bottom:1px solid var(--line);padding-bottom:22px}
.home-lesson-picture{display:block;aspect-ratio:3/2;background:#faf8f3;overflow:hidden}
.home-lesson-art{display:block;width:100%;height:100%;object-fit:cover}
.home-lesson-copy{display:flex;flex-direction:column;flex:1;padding-top:20px}
.home-lesson h3{font:400 1.45rem/1.28 var(--serif);letter-spacing:-.015em;color:var(--ink);margin:0 0 9px}
.home-lesson-description{display:block;font-size:.9375rem;line-height:1.5;color:var(--muted);margin-bottom:18px}
.home-lesson-open{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;font-size:.875rem;color:var(--green);font-weight:600}
.home-lesson:hover h3{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.home-lesson:hover .home-lesson-open{color:var(--rust)}
.home-lesson:focus-visible,.home-pathways summary:focus-visible{outline:3px solid var(--green);outline-offset:5px}
.home-library-links{display:flex;flex-wrap:wrap;gap:16px 30px;align-items:center;margin-top:25px}
.home-library-links>.text-link{font-size:.9375rem;gap:12px;min-height:32px}
.home-library-links>span{margin-left:auto;font-size:.875rem;color:var(--muted)}
.home-agenda{padding-block:38px 44px;display:grid;grid-template-columns:170px 1fr;gap:32px}
.home-agenda>h2{font-family:var(--sans);font-size:.9375rem;font-weight:600;line-height:1.5;letter-spacing:0}
.home-agenda>div{display:grid;grid-template-columns:1fr 1fr;gap:36px}
.home-agenda h3{font:400 1.45rem/1.3 var(--serif);margin:8px 0 10px;color:var(--ink)}
.home-agenda article>p:not(.content-status){font-size:.9375rem;max-width:440px}
.home-agenda .text-link{font-size:.9375rem;margin-top:15px;gap:14px}
.home-participation{border-top:1px solid var(--line);display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:72px;padding-block:52px 64px}
.home-participation{scroll-margin-top:24px}
.home-participation.participation-clear{grid-template-columns:1fr;gap:32px}
.participation-clear .home-participation-intro{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end}
.participation-clear .home-participation-intro>p:last-child{max-width:580px;margin:0}
.participation-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 56px}
.participation-options article{border-top:2px solid var(--olive);padding-top:22px;display:flex;flex-direction:column;min-width:0}
.participation-options article:nth-child(even){border-color:var(--earth)}
.participation-options h3{font:400 1.6rem/1.3 var(--serif);margin:0 0 12px;color:var(--ink)}
.participation-options p{font-size:1rem;max-width:540px;margin-bottom:22px}
.participation-option-links{display:flex;flex-wrap:wrap;gap:10px 25px;margin-top:auto}
.participation-option-links .text-link{font-size:.9375rem;min-height:44px;gap:12px}
.participation-option-links .text-link:first-child{font-weight:600}
.participation-option-links .text-link:last-child{font-weight:400;color:var(--muted)}
.participation-membership{display:flex;align-items:center;justify-content:space-between;gap:24px;border-block:1px solid var(--line);padding:24px 0}
.participation-membership h3{font:400 1.45rem/1.3 var(--serif);margin-bottom:8px}
.participation-membership p{font-size:.9375rem;max-width:650px}
.participation-membership .text-link{font-size:.9375rem;flex:none;gap:12px}
@media(max-width:800px){
 .participation-clear .home-participation-intro{grid-template-columns:1fr;gap:16px}
 .participation-options{gap:26px}
 .participation-membership{align-items:start;flex-direction:column;gap:16px}
}
@media(max-width:540px){
 .participation-options{grid-template-columns:1fr;gap:26px}
 .participation-options h3{font-size:1.4rem}
 .participation-options article{padding-top:18px}
 .participation-options p{margin-bottom:12px}
 .participation-option-links{gap:4px 20px}
 .home-participation.participation-clear{gap:26px}
}
.home-participation-intro>.eyebrow{margin-bottom:16px}
.home-participation-intro>p:last-child{font-size:1.05rem;margin-top:22px;max-width:420px}
.home-pathways details{border-bottom:1px solid var(--line)}
.home-pathways details:first-child{border-top:1px solid var(--line)}
.home-pathways summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:74px;cursor:pointer;list-style:none;font:400 1.65rem/1.3 var(--serif);color:var(--ink);padding:18px 0}
.home-pathways summary::-webkit-details-marker{display:none}
.home-pathways summary:hover{color:var(--green)}
.home-pathways details[open] summary{color:var(--green)}
.home-pathway-toggle{position:relative;display:block;width:24px;height:24px;flex:none}
.home-pathway-toggle:before,.home-pathway-toggle:after{content:'';position:absolute;left:4px;top:11px;width:16px;height:1px;background:currentColor}
.home-pathway-toggle:after{transform:rotate(90deg)}
.home-pathways details[open] .home-pathway-toggle:after{display:none}
.home-pathway-content{padding:0 0 26px 22px;margin-bottom:3px;border-left:2px solid var(--olive)}
.home-pathway-content h3{font:600 1rem/1.5 var(--sans);color:var(--ink);margin:0 0 10px}
.home-pathway-content>p{font-size:1rem;max-width:600px}
.home-pathway-links{display:flex;flex-wrap:wrap;gap:16px 26px;margin-top:20px;align-items:start}
.home-pathway-links .text-link{font-size:.9375rem;gap:14px;min-height:32px}
.route-home .footer-conversation .footer-home-intro{font-size:1rem;line-height:1.6;color:#d9ddcf;max-width:620px;margin:-4px 0 22px}
@media(max-width:1000px){
 .home-lesson-shelf{gap:20px}.home-lesson h3{font-size:1.3rem}
 .home-library-heading{gap:32px}.home-agenda{grid-template-columns:1fr;gap:20px}
 .home-participation{gap:38px}
}
@media(max-width:800px){
 .home-lesson-shelf{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
 .home-lesson h3{font-size:1.5rem}
 .home-library-heading{grid-template-columns:1fr;gap:20px}.home-library-heading>p{max-width:680px}
 .home-participation{grid-template-columns:1fr;gap:30px}
 .home-participation-intro>p:last-child{max-width:650px}
}
@media(max-width:540px){
 .route-home .hero{padding-block:21px 24px}
 .route-home .hero.has-image{gap:20px}
 .route-home .hero .eyebrow{margin-bottom:11px}
 .route-home .hero h1{font-size:clamp(1.8rem,7.7vw,2.05rem);line-height:1.17;letter-spacing:-.025em}
 .route-home .hero-sub{font-size:1rem;line-height:1.5;margin-top:14px}
 .route-home .hero-actions{margin-top:17px;gap:16px 20px}
 .route-home .hero-actions .button{min-height:46px;padding:11px 15px}
 .route-home .hero-actions .text-link{min-height:44px}
 .home-learning-surface{margin-top:12px}
 .home-learning{padding-block:32px 34px}
 .home-library-heading{gap:17px;margin-bottom:24px}
 .home-library-heading>p{font-size:1rem}.home-library-heading h2,.home-participation h2{font-size:1.9rem}
 .home-lesson-shelf{grid-template-columns:1fr;gap:0}
 .home-lesson{display:grid;grid-template-columns:100px minmax(0,1fr);gap:18px;padding:20px 0;align-items:center}
 .home-lesson:first-child{padding-top:0}
 .home-lesson-picture{aspect-ratio:1;align-self:center}
 .home-lesson-art{object-position:center}
 .home-lesson-copy{padding:0}.home-lesson h3{font-size:1.24rem;line-height:1.32;margin-bottom:7px}
 .home-lesson-description{font-size:.9375rem;margin-bottom:11px;line-height:1.5}
 .home-lesson-open{font-size:.875rem}
 .home-library-links{gap:15px 22px;margin-top:23px}.home-library-links>span{width:100%;margin:0}
 .home-agenda{padding-block:30px 34px;gap:20px}
 .home-agenda>div{grid-template-columns:1fr;gap:24px}
 .home-agenda article+article{border-top:1px solid var(--line);padding-top:23px}
 .home-agenda h3{font-size:1.45rem}
 .home-participation{padding-block:36px 44px;gap:26px}
 .home-participation-intro>p:last-child{font-size:1rem;margin-top:18px}
 .home-pathways summary{font-size:1.45rem;min-height:66px;padding-block:16px}
 .home-pathway-content{padding-left:16px;padding-bottom:23px}
 .home-pathway-links{gap:16px;margin-top:18px}
 .route-home .footer-conversation .footer-home-intro{font-size:.9375rem;margin-bottom:20px}
}

/* A larger film and an editorial three-part composition, with readable copy on paper. */
.route-home .hero{padding-block:30px 38px;align-items:start;column-gap:52px;row-gap:0}
.route-home .hero.has-image{grid-template-columns:minmax(0,1fr) minmax(0,1.07fr)}
.route-home .hero-copy{grid-column:1;grid-row:1;padding-top:10px}
.route-home .hero .eyebrow{margin-bottom:16px}
.route-home .hero h1{font-size:clamp(2.25rem,3.25vw,3.25rem);line-height:1.18;letter-spacing:-.035em;text-wrap:pretty}
.route-home .hero-summary{grid-column:1;grid-row:2;padding-bottom:8px}
.route-home .hero-sub{font-size:1.05rem;line-height:1.6;margin-top:21px;max-width:540px}
.route-home .hero-actions{margin-top:24px;gap:18px 26px}
.route-home .hero-actions .text-link{gap:20px}
.hero-stage{grid-column:2;grid-row:1/3;min-width:0;position:relative;padding-left:16px;padding-top:14px}
.hero-stage:before{content:'';position:absolute;left:0;top:0;width:calc(100% - 30px);height:calc(100% - 54px);background:#e6eadf;z-index:-1}
.hero-stage:after{content:'';position:absolute;left:0;bottom:33px;width:16px;height:2px;background:var(--earth)}
.route-home .hero-image.hero-film{width:100%;aspect-ratio:3/2;height:auto;min-height:0;max-height:none;border-radius:0;margin:0;align-self:auto;background:#e6eadf;overflow:hidden}
.route-home .hero-film .hero-film-poster,.route-home .hero-film video{object-fit:cover;object-position:50% 50%}
.route-home .hero-film-toggle{left:auto;right:13px;bottom:13px;border:1px solid #ffffff90;background:#faf8f3f2;min-height:40px;padding:9px 12px;box-shadow:none;font-size:.8125rem;border-radius:0}
.hero-film-caption{display:flex;justify-content:space-between;gap:16px;margin:12px 0 0;font-size:.8125rem;line-height:1.5;color:var(--muted)}
.hero-film-caption>span:last-child{white-space:nowrap;color:#6b705f}
@media(max-width:1150px){
 .route-home .hero.has-image{column-gap:32px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .route-home .hero h1{font-size:clamp(2rem,3.65vw,2.6rem)}
 .route-home .hero-image.hero-film{aspect-ratio:4/3}
 .route-home .hero-sub{font-size:1rem}.route-home .hero-actions{gap:16px 20px}
}
@media(min-width:701px) and (max-width:900px){
 .route-home .hero.has-image{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);row-gap:24px;padding-block:28px 32px}
 .route-home .hero-copy{grid-column:1/-1;grid-row:1;padding-top:0;max-width:750px}
 .route-home .hero h1{font-size:2.35rem}
 .route-home .hero-summary{grid-column:1;grid-row:2;padding:0}
 .route-home .hero-sub{margin-top:4px}
 .hero-stage{grid-column:2;grid-row:2;padding-top:10px;padding-left:12px}
 .route-home .hero-image.hero-film{aspect-ratio:4/3}
 .hero-film-caption{font-size:.75rem}
}
@media(max-width:700px){
 .route-home .hero.has-image{grid-template-columns:minmax(0,1fr);row-gap:20px;padding-block:26px 30px}
 .route-home .hero-copy{grid-column:1;grid-row:1;padding:0}
 .hero-stage{grid-column:1;grid-row:2;padding-top:10px;padding-left:12px}
 .route-home .hero-summary{grid-column:1;grid-row:3;padding:0;max-width:650px}
 .route-home .hero-image.hero-film{aspect-ratio:16/9}
 .route-home .hero h1{font-size:2.65rem;max-width:700px}
 .route-home .hero-sub{margin:0;max-width:650px}
 .route-home .hero-actions{margin-top:18px}
 .hero-stage:before{height:calc(100% - 47px);width:calc(100% - 24px)}
 .hero-stage:after{width:12px;bottom:30px}
}
@media(max-width:540px){
 .route-home .hero.has-image{row-gap:17px;padding-block:21px 27px}
 .route-home .hero .eyebrow{margin-bottom:10px}
 .route-home .hero h1{font-size:clamp(1.84rem,7.8vw,2.15rem);line-height:1.17;letter-spacing:-.028em}
 .route-home .hero-sub{font-size:1rem;line-height:1.5}
 .route-home .hero-actions{margin-top:17px;gap:16px 21px}
 .route-home .hero-actions .button{min-height:46px;padding:11px 15px}
 .route-home .hero-actions .text-link{gap:14px;min-height:44px}
 .hero-film-caption{font-size:.72rem;gap:10px;margin-top:9px}
 .route-home .hero-film-toggle{right:9px;bottom:9px;min-height:40px;padding:8px 10px}
}
