/* Editable publication modules. No third-party visual dependencies. */
.hero-carousel .hero-slides{display:grid;flex:1;min-height:0;touch-action:pan-y pinch-zoom}
.hero-carousel .hero-slide{grid-area:1/1;display:flex;min-width:0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .5s ease,visibility .5s}
.hero-carousel .hero-slide.is-active{opacity:1;visibility:visible;pointer-events:auto}
.home-publication .hero-carousel .hero-content h1,.home-publication .hero-carousel .hero-content h2{font-family:var(--display-font);font-size:clamp(34px,3.5vw,52px);font-weight:600;line-height:1.5;color:#fff;white-space:normal;margin:0 0 20px;overflow-wrap:anywhere}
.home-publication .hero-carousel .hero-content{padding-top:36px;padding-bottom:36px}
.home-publication .hero-carousel .hero-picture{min-height:400px}
.hero-carousel-controls{display:flex;align-items:center;gap:24px;min-height:66px;padding:10px max(var(--space),calc((100vw - var(--width))/2));background:#11693b;border-top:1px solid #ffffff20}
.hero-carousel-count{font-size:12px;color:#fff;white-space:nowrap}.hero-carousel-count strong{font-size:22px;font-weight:500;color:#fff;margin-right:6px;font-variant-numeric:tabular-nums}
.hero-dots{display:flex;align-items:center;flex-wrap:wrap;gap:4px;flex:1}.hero-dots button{border:0;border-radius:0;background:none;min-width:34px;height:44px;position:relative;cursor:pointer;padding:12px 4px}.hero-dots button:before{content:"";display:block;height:3px;width:100%;background:#ffffff4a}.hero-dots button[aria-current=true]:before{background:#f3da84}
.hero-carousel-buttons{display:flex;gap:8px}.hero-carousel-buttons button{min-width:40px;min-height:40px;border:1px solid #ffffff55;background:transparent;color:#fff;font:inherit;font-size:16px;cursor:pointer;border-radius:3px}.hero-carousel-buttons button:last-child{font-size:12px;min-width:54px}.hero-carousel-buttons button:hover{background:#ffffff16}.hero-carousel-buttons button:disabled{opacity:.5;cursor:default}.hero-carousel button:focus-visible{outline:2px solid #f4dc8a;outline-offset:2px}
.publication-organizations,.publication-profiles{display:flex;flex-direction:column;justify-content:center}
.organization-group+.organization-group{margin-top:28px}.organization-label{font-size:15px;font-weight:600;margin:0 0 14px;color:var(--public-ink)}.branch-grid,.directory-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.partner-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.directory-card{min-width:0;border:1px solid #dce7da;background:#fff;border-radius:4px;overflow:hidden}.directory-card-image{display:block;aspect-ratio:4/3;background:#f1f1f1}.directory-card-image img{width:100%;height:100%;object-fit:cover;display:block}.directory-monogram{display:flex;align-items:center;justify-content:center;height:100%;color:var(--public-ink);font-family:var(--display-font);font-size:30px;letter-spacing:.08em}.directory-card-copy{padding:20px}.directory-kind{display:inline-block;color:var(--public-ink);font-size:12px;margin-bottom:10px}.directory-card h3{font-size:18px;line-height:1.6;font-weight:600;margin:0 0 12px;overflow-wrap:anywhere}.directory-card p{font-size:13px;line-height:1.85;color:var(--public-ink);margin:0 0 8px}.directory-card small{color:var(--public-ink);font-size:12px}.directory-card a:hover,.partner-tile:hover strong{color:var(--public-ink)}
.directory-card--org{display:grid;grid-template-columns:1fr}.directory-card--org .directory-card-image{height:72px;aspect-ratio:auto;background:#f5f5f5;padding:12px}.directory-card--org .directory-card-image img{object-fit:contain}.directory-card--org .directory-monogram{font-size:20px;font-weight:600;letter-spacing:.16em}.directory-card--org .directory-card-copy{padding:16px}.directory-card--org .directory-kind{display:none}.directory-card--org h3{font-size:16px;margin-bottom:8px}.directory-card--org p{margin-bottom:0}
@media (min-width:481px) {
  .directory-card--partner { grid-template-rows:72px 1fr; }
}
@media (min-width:1051px) {
  .directory-grid--branches { grid-template-columns:repeat(3, minmax(0, 1fr)); }
}
.directory-card--org.directory-card--branch { display:block; align-self:start; }
.directory-card--org .directory-card-copy {
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:8px 12px;
  min-width:0;
  min-height:68px;
  box-sizing:border-box;
}
.directory-card--org .directory-card-copy h3 { min-width:0; margin:0; }
.directory-card--org .directory-card-copy .directory-card-cta { flex:none; margin:0; }
.directory-card--org .directory-card-cta::after { content:none; }
.partner-tile{border:1px solid #dce7da;border-left:3px solid #83b35e;padding:19px 22px;background:#f5f5f5;display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-width:0}.partner-tile strong{font-size:20px;line-height:1.5;font-weight:600}.partner-tile span{font-size:13px;line-height:1.75;color:var(--public-ink)}.partner-tile img{width:auto;max-width:100%;height:48px;object-fit:contain}
.directory-page,.directory-detail{padding-top:40px;padding-bottom:70px}.directory-heading{max-width:900px;margin:30px 0}.directory-heading h1{font-family:var(--display-font);font-size:clamp(28px,4vw,42px);line-height:1.55;margin:8px 0 18px;overflow-wrap:anywhere}.directory-filters{display:flex;gap:12px;flex-wrap:wrap;border-bottom:1px solid #d9e5d9;margin:28px 0;padding-bottom:20px}.directory-filters a{border:1px solid #d9e5d9;padding:10px 20px;border-radius:3px;font-size:14px}.directory-filters a[aria-current]{background:var(--public-selected);color:#fff;border-color:#167b45}.directory-empty{padding:60px 24px;background:#f3f3f3;text-align:center}.directory-facts{display:flex;flex-wrap:wrap;gap:12px 28px;font-size:14px;color:var(--public-ink);margin-bottom:26px}.directory-detail{max-width:960px}.directory-detail-image img{display:block;width:100%;max-height:600px;object-fit:contain;margin:0 auto 28px;background:#f5f5f5}.directory-detail-image--logo img{max-width:360px;max-height:160px;object-fit:contain}.directory-external{margin-block:25px}.directory-detail>.entry-content{max-width:100%}
.follow-channels{display:grid;grid-template-columns:1fr 2fr;gap:28px;padding-bottom:36px;margin-bottom:36px;border-bottom:1px solid #ffffff33}.follow-heading h2{font-size:24px;font-weight:600;margin:0 0 12px}.follow-heading p{font-size:13px;line-height:1.8;color:inherit;opacity:.8}.follow-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.follow-card{display:flex;gap:18px;align-items:center;min-width:0}.follow-card>div:last-child{min-width:0}.follow-card h3{font-size:16px;margin:0 0 8px;overflow-wrap:anywhere}.follow-card p,.follow-card a{font-size:12px;line-height:1.8;margin:0}.follow-qr,.follow-placeholder{width:112px;height:112px;flex:0 0 112px;border:9px solid #fff;background:#fff;object-fit:contain}.follow-placeholder{position:relative;background:repeating-conic-gradient(#c8c8c8 0% 25%,#fff 0% 50%) 0 0/12px 12px}.follow-placeholder strong{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:13px;letter-spacing:0;background:#fff;color:var(--public-ink);padding:7px 8px;white-space:nowrap}.qr-corner{position:absolute;border:4px solid #809c88;width:26px;height:26px;background:#fff}.qr-corner:after{content:"";position:absolute;inset:4px;background:#809c88}.qr-corner-a{left:0;top:0}.qr-corner-b{right:0;top:0}.qr-corner-c{left:0;bottom:0}
@media(min-width:1024px){html.csapa-home-paging .publication-organizations,html.csapa-home-paging .publication-profiles{padding-block:28px}.publication-organizations .section-heading h2{font-size:30px}.publication-organizations .section-heading{margin-bottom:24px}}
@media(max-width:1050px){.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.follow-channels{grid-template-columns:1fr}.follow-heading{display:flex;align-items:baseline;gap:20px}.follow-heading h2{margin:0}.home-publication .hero-carousel .hero-content{padding-right:24px}}
@media(max-width:900px){.branch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.home-publication .hero-carousel .hero-layout{grid-template-columns:1fr}.home-publication .hero-carousel .hero-picture{order:-1;min-height:240px;height:260px}.home-publication .hero-carousel .hero-content{padding:28px var(--space)}.home-publication .hero-carousel .hero-content h1,.home-publication .hero-carousel .hero-content h2{font-size:31px;margin-bottom:14px}.home-publication .hero-carousel .hero-eyebrow{margin-bottom:16px}.home-publication .hero-carousel .hero-description{margin-bottom:20px}.hero-carousel-controls{padding:10px var(--space);gap:12px}.hero-dots button{min-width:20px;width:24px}.hero-carousel-buttons{gap:5px}.hero-carousel-buttons button{min-width:34px}.hero-carousel-buttons button:last-child{min-width:46px}.partner-grid{grid-template-columns:1fr}.follow-grid{grid-template-columns:1fr}.follow-heading{display:block}.follow-heading h2{margin-bottom:10px}.directory-card h3{font-size:17px}.directory-heading{margin-top:22px}.directory-card-copy{padding:16px}.home-publication .publication-organizations .section-heading h2{font-size:26px}.publication-organizations .section-heading,.publication-profiles .section-heading{align-items:flex-start;flex-wrap:wrap}.organization-group+.organization-group{margin-top:24px}.directory-detail,.directory-page{padding-block:24px 48px}}
@media(max-width:480px){.branch-grid,.directory-grid{grid-template-columns:1fr}.directory-card--org{grid-template-columns:72px minmax(0,1fr)}.directory-card--org .directory-card-image{height:100%;min-height:82px;padding:10px}.directory-card--org .directory-monogram{font-size:12px;letter-spacing:0}.directory-card--org h3{font-size:16px}.hero-carousel-count strong{font-size:18px}.hero-carousel-controls{gap:8px}.hero-carousel-buttons button{min-width:32px}.hero-carousel-buttons button:last-child{min-width:40px}.hero-dots{gap:1px}}
@media(prefers-reduced-motion:reduce){.hero-carousel .hero-slide{transition:none}}
@media print{.hero-carousel-controls,.follow-channels{display:none}.hero-slide:not(.is-active){display:none}}

.directory-org-group + .directory-org-group{margin-top:clamp(28px,4vw,48px)}
.directory-org-group>h2{display:flex;align-items:center;gap:10px;margin:0 0 14px;font-size:clamp(18px,2vw,22px);line-height:1.45}
.directory-org-group>h2::before{content:"";width:3px;height:1em;background:#316343}
.directory-org-group .directory-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.directory-card.directory-card--partner{display:flex;align-items:stretch;min-height:78px}
.directory-card--partner .directory-card-image{flex:0 0 clamp(74px,7vw,100px);display:grid;align-items:center;min-height:0;height:auto;padding:10px;box-sizing:border-box}
.directory-card--partner .directory-card-image img{height:48px;width:100%;object-fit:contain}
.directory-card--partner .directory-card-copy{flex:1;min-width:0;flex-wrap:wrap;gap:6px 12px}
.directory-card--name-only .directory-card-copy{padding-inline:18px}
@media(max-width:1050px){.directory-org-group .directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.directory-org-group .directory-grid{grid-template-columns:1fr}.directory-org-group .directory-card-copy{min-height:56px}}
