.f9M1Ka_page{background:var(--paper);color:var(--ink);overflow-x:clip}.f9M1Ka_titleHeader{margin-bottom:clamp(1rem,2vw,1.75rem);padding-top:clamp(3rem,5.5vw,5rem)}.f9M1Ka_title{font-family:var(--font-display);letter-spacing:-.04em;color:var(--ink);margin:0 0 .85rem;font-size:clamp(2.4rem,5vw,4rem);font-weight:700;line-height:1.05}.f9M1Ka_description{color:var(--ink-muted);text-wrap:pretty;max-width:680px;margin:0;font-size:clamp(1.05rem,1.35vw,1.2rem);line-height:1.55}.f9M1Ka_directoryWrapper{flex-direction:column;width:100%;display:flex}.f9M1Ka_searchContainer{width:100%;max-width:600px;margin-top:clamp(1.5rem,2.5vw,2.25rem);margin-bottom:clamp(1.75rem,3vw,2.5rem)}.f9M1Ka_searchBar{box-sizing:border-box;border:1px solid var(--line);background:#fff;border-radius:9999px;align-items:center;width:100%;height:50px;min-height:50px;padding:0 1.25rem;transition:border-color .2s,box-shadow .2s;display:flex;position:relative;box-shadow:0 2px 8px #0b1a2908}.f9M1Ka_searchBar:hover{border-color:#0b1a2947;box-shadow:0 4px 18px #0b1a290d}.f9M1Ka_searchBar:focus-within{border-color:var(--ink);box-shadow:0 4px 18px #0b1a290d}.f9M1Ka_searchIcon{color:var(--ink-muted);flex-shrink:0;justify-content:center;align-items:center;margin-right:.85rem;display:flex}.f9M1Ka_searchInput{width:100%;height:100%;font-family:var(--font-sans);color:var(--ink);box-sizing:border-box;background:0 0;border:none;outline:none;padding-right:2.25rem;font-size:.95rem}.f9M1Ka_searchInput::placeholder{color:var(--ink-muted);opacity:.75}.f9M1Ka_searchInput::-webkit-search-decoration{appearance:none;display:none}.f9M1Ka_searchInput::-webkit-search-cancel-button{appearance:none;display:none}.f9M1Ka_searchInput::-webkit-search-results-button{appearance:none;display:none}.f9M1Ka_searchInput::-webkit-search-results-decoration{appearance:none;display:none}.f9M1Ka_searchInput::-ms-clear{width:0;height:0;display:none}.f9M1Ka_searchInput::-ms-reveal{width:0;height:0;display:none}.f9M1Ka_searchClearBtn{background:var(--paper-soft);width:22px;height:22px;color:var(--ink-muted);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:.75rem;line-height:1;transition:background .15s,color .15s;display:flex;position:absolute;top:50%;right:1.15rem;transform:translateY(-50%)}.f9M1Ka_searchClearBtn:hover{background:var(--line);color:var(--ink)}.f9M1Ka_resultMeta{min-height:1.25rem;color:var(--ink-muted);margin-top:.65rem;padding-left:.75rem;font-size:.8125rem;line-height:1.25rem}.f9M1Ka_chaptersStage{width:100%;margin-bottom:clamp(2.5rem,4.5vw,4rem)}.f9M1Ka_chapterGrid{grid-template-columns:repeat(2,1fr);align-items:start;gap:1rem;width:100%;display:grid}@keyframes f9M1Ka_cardFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.f9M1Ka_chapterCardSlot{z-index:1;position:relative}.f9M1Ka_chapterCardSlot[data-animate=true]{animation:.28s cubic-bezier(.22,1,.36,1) both f9M1Ka_cardFadeIn;animation-delay:var(--fade-delay,0s)}.f9M1Ka_chapterCard{z-index:1;border:1px solid var(--line);color:inherit;cursor:pointer;filter:drop-shadow(0 0 #0b1a2900);background:#fff;border-radius:14px;flex-direction:column;padding:1.15rem 1.35rem;text-decoration:none;transition:border-color .2s,box-shadow .2s,filter .2s;display:flex;position:relative;box-shadow:0 2px 6px #0b1a2905}.f9M1Ka_cardHeaderRow{align-items:center;gap:1.15rem;width:100%;display:flex}.f9M1Ka_logoFrame{background:0 0;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.f9M1Ka_schoolLogoImg{object-fit:contain;width:100%;height:100%;display:block}.f9M1Ka_schoolInfo{flex-direction:column;flex:1;justify-content:center;min-width:0;display:flex}.f9M1Ka_schoolTitle{font-family:var(--font-display);color:var(--ink);letter-spacing:-.02em;margin:0;font-size:clamp(1.05rem,1.25vw,1.18rem);font-weight:600;line-height:1.25}.f9M1Ka_cardArrow{font-family:var(--font-sans);color:var(--ink-muted);opacity:0;flex-shrink:0;font-size:1.125rem;line-height:1;transition:opacity .22s,transform .22s cubic-bezier(.22,1,.36,1),color .2s;transform:translate(-6px)}.f9M1Ka_cardExpandWrap{z-index:2;opacity:0;visibility:hidden;pointer-events:none;background:#fff;border:1px solid #0b1a2947;border-top:none;border-radius:0 0 14px 14px;grid-template-rows:0fr;transition:grid-template-rows .24s cubic-bezier(.22,1,.36,1),opacity .18s,visibility 0s linear .24s;display:grid;position:absolute;top:calc(100% - 10px);left:-1px;right:-1px}.f9M1Ka_cardExpandInner{min-height:0;overflow:hidden}.f9M1Ka_cardDetails{padding:.5rem 1.35rem 1.15rem calc(2.5rem + 48px)}.f9M1Ka_cardAbout{font-family:var(--font-sans);color:var(--ink);text-wrap:pretty;margin:0 0 .45rem;font-size:.92rem;line-height:1.5}.f9M1Ka_cardMeta{font-family:var(--font-sans);color:var(--ink-muted);margin:0;font-size:.8125rem;line-height:1.45}@media (hover:hover) and (pointer:fine) and (min-width:769px){:is(.f9M1Ka_chapterCardSlot:has(.f9M1Ka_chapterCard:hover),.f9M1Ka_chapterCardSlot:has(.f9M1Ka_chapterCard:focus-visible)){z-index:30}.f9M1Ka_chapterCard:hover,.f9M1Ka_chapterCard:focus-visible{z-index:30;box-shadow:none;filter:drop-shadow(0 14px 26px #0b1a2929);border-color:#0b1a2947}.f9M1Ka_chapterCard:hover .f9M1Ka_cardArrow,.f9M1Ka_chapterCard:focus-visible .f9M1Ka_cardArrow{opacity:1;color:var(--ink);transform:translate(0)}.f9M1Ka_chapterCard:hover .f9M1Ka_cardExpandWrap,.f9M1Ka_chapterCard:focus-visible .f9M1Ka_cardExpandWrap{opacity:1;visibility:visible;pointer-events:auto;grid-template-rows:1fr;transition:grid-template-rows .26s cubic-bezier(.22,1,.36,1),opacity .2s,visibility linear}}@media (hover:none),(pointer:coarse),(max-width:768px){.f9M1Ka_cardArrow{opacity:1;color:var(--ink);transition:none;transform:none}.f9M1Ka_cardExpandWrap{display:none}.f9M1Ka_chapterCard{transition:none}}@media (prefers-reduced-motion:reduce){.f9M1Ka_chapterCardSlot[data-animate=true]{animation:none!important}.f9M1Ka_chapterCard,.f9M1Ka_cardArrow,.f9M1Ka_cardExpandWrap{transition:none!important}}.f9M1Ka_emptyState{border:1px dashed var(--line);text-align:center;background:#fff;border-radius:14px;flex-direction:column;align-items:center;gap:.5rem;padding:3rem 1.5rem;display:flex}.f9M1Ka_emptyHeading{font-family:var(--font-display);color:var(--ink);margin:0;font-size:1.25rem;font-weight:600}.f9M1Ka_emptyDesc{color:var(--ink-muted);margin:0;font-size:.9375rem}.f9M1Ka_emptyCtaLink{color:var(--ink);text-underline-offset:4px;margin-top:.75rem;font-size:.9375rem;font-weight:600;text-decoration:underline}.f9M1Ka_volunteerSection{width:100%;padding-top:clamp(2rem,3.5vw,3rem);padding-bottom:clamp(1.5rem,2.5vw,2.5rem)}.f9M1Ka_volunteerCard{background:var(--paper-soft);text-align:center;border-radius:16px;flex-direction:column;gap:.75rem;max-width:680px;margin-inline:auto;padding:clamp(1.75rem,3.5vw,2.5rem);display:flex}.f9M1Ka_volunteerTitle{font-family:var(--font-display);letter-spacing:-.03em;color:var(--ink);margin:0;font-size:clamp(1.6rem,2.6vw,2.15rem);font-weight:600}.f9M1Ka_volunteerDesc{color:var(--ink-muted);text-wrap:pretty;margin:0;font-size:.95rem;line-height:1.6}.f9M1Ka_ctaSection{text-align:center;padding-top:clamp(3rem,5vw,4.5rem);padding-bottom:clamp(5rem,8vw,7.5rem)}.f9M1Ka_ctaInner{flex-direction:column;align-items:center;max-width:680px;margin:0 auto;display:flex}.f9M1Ka_ctaHeading{font-family:var(--font-display);letter-spacing:-.035em;color:var(--ink);margin:0 0 1rem;font-size:clamp(2rem,3.8vw,3rem);font-weight:700}.f9M1Ka_ctaLead{color:var(--ink-muted);max-width:540px;margin:0 0 2rem;font-size:1.05rem;line-height:1.6}.f9M1Ka_primaryCtaBtn{font-family:var(--font-sans);letter-spacing:-.01em;background:var(--ink);color:#fff;border:1px solid var(--ink);cursor:pointer;border-radius:9999px;justify-content:center;align-items:center;gap:.5rem;padding:1.05rem 2.25rem;font-size:1rem;font-weight:500;text-decoration:none;transition:background .2s,border-color .2s;display:inline-flex}.f9M1Ka_primaryCtaBtn:hover{background:#142a3e;border-color:#142a3e}@media (max-width:900px){.f9M1Ka_chapterGrid{grid-template-columns:1fr;gap:.85rem}}@media (max-width:680px){.f9M1Ka_primaryCtaBtn{width:100%;padding:.9rem 1.5rem}.f9M1Ka_chapterCard{padding:1rem 1.15rem}.f9M1Ka_cardHeaderRow{gap:.95rem}}
