@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Fraunces:opsz,wght@9..144,600;9..144,700&display=swap";:root{color:#18332f;background:#fbf7ed;font-family:DM Sans,sans-serif;font-synthesis:none;--green:#183f3a;--mint:#cddfd2;--cream:#fbf7ed;--orange:#e97045;--yellow:#f4c95d;--ink:#18332f}*{box-sizing:border-box}body{margin:0;min-width:320px;background:var(--cream);color:var(--ink)}a{color:inherit}button,input{font:inherit}button,a{touch-action:manipulation}svg{width:1.25rem;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.skip-link{position:absolute;left:1rem;top:-5rem;background:#fff;padding:.8rem;z-index:20}.skip-link:focus{top:1rem}.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}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.76rem;font-weight:700;color:#b54e2b;margin:0 0 1rem}.site-header{min-height:78px;padding:1rem clamp(1.25rem,5vw,5rem);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #cfc9ba;background:#fffaf1}.brand{display:inline-flex;align-items:center;gap:.65rem;text-decoration:none}.brand>span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--orange);color:#fff;font:700 1.7rem/1 Fraunces,serif}.brand strong{font-size:1.15rem}.site-header nav,.site-header nav a{display:flex;gap:1.25rem}.site-header nav a{font-weight:600;text-decoration:none}.site-header nav a:hover{text-decoration:underline}.home-hero{min-height:620px;background:var(--green);color:#fffaf0;display:grid;grid-template-columns:minmax(260px,.7fr) minmax(360px,1.3fr);gap:clamp(2rem,8vw,9rem);align-items:center;padding:clamp(4rem,8vw,8rem) clamp(1.5rem,8vw,9rem);overflow:hidden}.home-hero h1{font:600 clamp(3.2rem,7vw,7.3rem)/.92 "Fraunces",serif;letter-spacing:-.04em;margin:0;max-width:1050px}.home-hero h1 em{font-style:normal;color:var(--yellow)}.home-hero .eyebrow{color:#f2aa8c}.hero-copy{font-size:clamp(1.05rem,2vw,1.3rem);line-height:1.6;max-width:660px;color:#dbe7df}.hero-link{display:inline-flex;align-items:center;gap:.7rem;margin-top:1rem;background:var(--orange);color:#fff;padding:1rem 1.3rem;border-radius:999px;text-decoration:none;font-weight:700}.hero-orbit{aspect-ratio:1;border:1px solid #5f7c76;border-radius:50%;position:relative;display:grid;place-items:center}.hero-orbit:before,.hero-orbit:after{content:"";position:absolute;border:1px solid #5f7c76;border-radius:50%;inset:12%}.hero-orbit:after{inset:27%}.hero-orbit span{width:42%;aspect-ratio:1;border-radius:50%;background:var(--orange);display:grid;place-items:center;font:700 clamp(5rem,12vw,10rem)/1 "Fraunces",serif;z-index:1}.hero-orbit i{position:absolute;width:18px;height:18px;border-radius:50%;background:var(--yellow)}.hero-orbit i:nth-of-type(1){left:7%;top:35%}.hero-orbit i:nth-of-type(2){right:13%;top:16%}.hero-orbit i:nth-of-type(3){right:3%;bottom:30%;background:var(--mint)}.directory,.program-section,.gallery{padding:clamp(4rem,8vw,8rem) clamp(1.25rem,7vw,8rem)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:2rem}.section-heading h2,.mission h2,.contact-grid h2,.growing h2{font:600 clamp(2.3rem,5vw,4.6rem)/1.05 "Fraunces",serif;margin:0}.section-heading>p{color:#6f766f}.search-box{max-width:720px;background:#fff;border:1px solid #b7b3a7;border-radius:14px;display:flex;align-items:center;gap:.7rem;padding:0 1rem;box-shadow:0 8px 25px #1e30230e}.search-box input{width:100%;padding:1rem 0;border:0;background:none;color:var(--ink);outline:none}.search-box:focus-within{outline:3px solid #f1b195}.category-filters{display:flex;gap:.6rem;flex-wrap:wrap;margin:2rem 0}.category-filters button{border:1px solid #a9afa4;background:transparent;color:var(--ink);border-radius:999px;padding:.65rem .9rem;cursor:pointer}.category-filters button span{opacity:.6}.category-filters button.active{background:var(--green);color:#fff;border-color:var(--green)}.result-count{color:#6c746e;font-size:.9rem}.organization-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.4rem}.organization-card{background:#fff;border:1px solid #d8d1c3;border-radius:20px;overflow:hidden;box-shadow:0 14px 40px #283d3210}.organization-card[hidden]{display:none}.card-image{height:245px;display:grid;place-items:center;position:relative;background:#dce9de;overflow:hidden}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.card-image:hover img{transform:scale(1.025)}.card-image>span{font:700 6rem Fraunces,serif;color:var(--green)}.card-image small{position:absolute;left:1rem;top:1rem;background:#fffaf0;padding:.45rem .7rem;border-radius:999px;text-transform:uppercase;letter-spacing:.1em;font-size:.68rem;font-weight:700}.card-body{padding:1.5rem;display:flex;flex-direction:column;align-items:flex-start;min-height:315px}.card-body>p{font-size:.75rem;text-transform:uppercase;letter-spacing:.09em;color:#a54f31;font-weight:700}.card-body h3{font:600 1.8rem/1.05 Fraunces,serif;margin:.25rem 0 .6rem}.card-body h3 a{text-decoration:none}.card-body>strong{font-size:.9rem}.card-body>span{color:#687069;line-height:1.55;margin:.8rem 0}.card-action{display:inline-flex;gap:.6rem;align-items:center;font-weight:700;margin-top:auto;text-decoration:none;color:#b54827}.empty-state{text-align:center;padding:4rem 1rem}.empty-state>span,.error-state>span{display:grid;place-items:center;margin:auto;width:72px;height:72px;border-radius:50%;background:var(--orange);color:#fff;font:700 3rem Fraunces}.growing{background:var(--mint);padding:clamp(4rem,8vw,7rem) clamp(1.25rem,14vw,15rem);text-align:center}.growing p:last-child{font-size:1.15rem;line-height:1.7;max-width:780px;margin:1.5rem auto}.profile-page{padding:2rem clamp(1.25rem,6vw,6rem) 6rem}.back{display:inline-block;margin:.5rem 0 2rem;color:#445d57}.profile-hero{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(400px,1.1fr);background:var(--green);border-radius:26px;overflow:hidden;color:#fff}.profile-image{min-height:560px;background:#cfdfd2}.profile-image img{width:100%;height:100%;object-fit:cover}.profile-image>span{height:100%;display:grid;place-items:center;color:var(--green);font:700 9rem Fraunces}.profile-intro{padding:clamp(2.2rem,6vw,6rem);align-self:center}.profile-intro .eyebrow{color:#f2aa8c}.profile-intro h1{font:600 clamp(3.3rem,6vw,6.5rem)/.95 "Fraunces",serif;margin:0}.tagline{font-size:clamp(1.1rem,2vw,1.35rem);line-height:1.5;color:#dce8df}.status{display:inline-flex;align-items:center;gap:.5rem;border-radius:999px;padding:.5rem .8rem;background:#fff;color:var(--green);font-weight:700;font-size:.85rem}.status i{width:8px;height:8px;border-radius:50%;background:#338746}.status.is-closed i{background:#c64f36}.actions{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:2rem}.actions a,.actions button{display:inline-flex;align-items:center;gap:.5rem;padding:.85rem 1rem;border:1px solid #8ea49e;border-radius:10px;background:transparent;color:#fff;text-decoration:none;cursor:pointer;font-weight:700}.actions .primary{background:var(--orange);border-color:var(--orange)}.mission{padding:clamp(4rem,8vw,8rem) clamp(0rem,7vw,8rem);max-width:1250px}.mission>p:last-child{max-width:850px;font-size:1.2rem;line-height:1.75;color:#55625c}.program-section{margin:0 calc(-1*clamp(1.25rem,6vw,6rem));background:#e7efe6}.program-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.program-grid article{background:#fff;padding:2rem;border-radius:16px;border-top:5px solid var(--orange)}.program-grid small{color:#a74c2d;font-weight:700}.program-grid h3{font:600 1.8rem Fraunces;margin:.5rem 0}.program-grid strong,.program-grid span{display:block}.program-grid span{color:#53645d;margin:.35rem 0}.program-grid p{line-height:1.6}.service-list{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.55rem;margin:2rem 0}.service-list li{background:#fff;border:1px solid #b9c9bc;border-radius:999px;padding:.6rem .9rem}.served{background:var(--green);color:#fff;padding:1.5rem 2rem;border-radius:16px;max-width:850px}.served p{margin:.5rem 0 0;color:#dce8df}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;padding:clamp(4rem,8vw,8rem) clamp(0rem,4vw,4rem)}.contact-grid>article{background:#fff;border:1px solid #d8d1c3;border-radius:20px;padding:clamp(1.5rem,4vw,3.5rem)}.contact-row{display:flex;gap:1rem;margin:1.6rem 0}.contact-row span,.contact-row strong{display:block}.contact-row span{color:#6d766f;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em}.contact-row a{font-weight:700}.contact-actions{display:flex;flex-wrap:wrap;gap:.6rem}.contact-actions a{background:var(--green);color:#fff;text-decoration:none;padding:.75rem 1rem;border-radius:9px}.hour-row{display:flex;justify-content:space-between;padding:.7rem 0;border-bottom:1px solid #e1ddd3}.hour-row.closed strong{color:#a65f4c}.hours-card>p:last-child{color:#6d766f;line-height:1.5;margin-top:1.5rem}.gallery{margin:0 calc(-1*clamp(1.25rem,6vw,6rem));background:#f0d8cc}.gallery>div:last-child{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:1rem}.gallery img{width:100%;height:330px;object-fit:cover;border-radius:16px}.gallery img:first-child{height:100%}.verification{max-width:900px;margin:4rem auto 0;text-align:center;padding:1.5rem;border-top:1px solid #bbb4a8;color:#68706b}.share-dialog{border:0;border-radius:20px;padding:2rem;max-width:480px;color:var(--ink);box-shadow:0 20px 70px #0005}.share-dialog::backdrop{background:#142f2a99}.share-dialog form{position:absolute;right:1rem;top:1rem}.share-dialog form button{border:0;background:none;font-size:2rem;cursor:pointer}.share-dialog>div{display:flex;gap:.7rem}.share-dialog>div a,.share-dialog>div button{border:0;border-radius:9px;padding:.8rem 1rem;background:var(--green);color:#fff;text-decoration:none;cursor:pointer}.loading,.error-state{min-height:80vh;display:grid;place-content:center;text-align:center;gap:1rem;padding:2rem}.error-state h1{font:600 2.5rem Fraunces}.error-state a{justify-self:center;background:var(--orange);color:#fff;padding:.8rem 1rem;border-radius:9px;text-decoration:none}footer{background:#112d29;color:#e7eee9;padding:3rem clamp(1.25rem,6vw,6rem);display:grid;grid-template-columns:1fr 2fr auto;gap:1.5rem;align-items:center}footer .brand>span{width:34px;height:34px;font-size:1.3rem}footer p{color:#b8c9c2}footer nav{display:flex;gap:1rem}footer small{grid-column:1/-1;color:#90aaa0}@media(max-width:900px){.home-hero{grid-template-columns:1fr}.hero-orbit{max-width:360px}.organization-grid,.program-grid{grid-template-columns:1fr 1fr}.profile-hero{grid-template-columns:1fr}.profile-image{min-height:360px}.contact-grid{grid-template-columns:1fr}.gallery>div:last-child{grid-template-columns:1fr 1fr}.gallery img:first-child{grid-column:1/-1;height:380px}footer{grid-template-columns:1fr 1fr}}@media(max-width:620px){.site-header{padding:.8rem 1rem}.site-header nav{gap:.7rem}.site-header nav a{font-size:.85rem}.brand strong{font-size:1rem}.home-hero{min-height:auto;padding-top:3rem}.home-hero h1{font-size:3.4rem}.hero-orbit{order:2}.organization-grid,.program-grid{grid-template-columns:1fr}.section-heading{align-items:start;flex-direction:column}.category-filters{flex-wrap:nowrap;overflow:auto;padding-bottom:.4rem}.category-filters button{white-space:nowrap}.profile-page{padding-inline:1rem}.profile-hero{border-radius:18px}.profile-intro h1{font-size:3.2rem}.profile-intro{padding:2rem 1.4rem}.program-section,.gallery{margin-inline:-1rem}.contact-grid{padding-inline:0}.gallery>div:last-child{grid-template-columns:1fr}.gallery img,.gallery img:first-child{grid-column:auto;height:280px}.share-dialog{width:calc(100% - 2rem)}footer{grid-template-columns:1fr}footer small{grid-column:auto}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.profile-qr-dialog{width:min(480px,calc(100vw - 32px));max-height:90dvh;overflow:auto;padding:24px;border:1px solid #c9c3ba;border-radius:20px;background:#fff;color:#201c17;text-align:center;box-sizing:border-box}.profile-qr-dialog::backdrop{background:#000000a6}.profile-qr-dialog h2{font:700 clamp(24px,5vw,34px)/1.2 system-ui,sans-serif;margin:12px 0;overflow-wrap:anywhere}.profile-qr-dialog p{font:16px/1.5 system-ui,sans-serif;color:#302b24}.profile-qr-dialog .qr-brand{font-size:13px;letter-spacing:.05em;font-weight:700}.profile-qr-dialog .profile-qr-image{display:block;width:min(100%,320px);height:auto;margin:12px auto;background:#fff}.profile-qr-dialog .qr-url{overflow-wrap:anywhere;font-size:13px}.profile-qr-dialog .qr-hint{font-size:13px}.qr-controls{display:flex;justify-content:flex-end}.qr-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.profile-qr-dialog button,.profile-qr-dialog .qr-actions a{padding:11px 16px;border:1px solid #aaa;border-radius:9px;background:#fff;color:#201c17;font:600 15px/1.3 system-ui,sans-serif;cursor:pointer;text-decoration:none}.profile-qr-dialog [data-qr-print]{background:#201c17;color:#fff}.profile-qr-dialog button:disabled{opacity:.5;cursor:wait}.profile-qr-dialog :focus-visible{outline:3px solid #1679b9;outline-offset:3px}@media print{body.printing-qr>*:not(#profile-qr-dialog){display:none!important}body.printing-qr{background:#fff!important;margin:0!important}body.printing-qr #profile-qr-dialog{display:block!important;position:static!important;width:150mm;max-width:100%;max-height:none;margin:15mm auto;padding:10mm;overflow:visible;border:1px solid #aaa;box-shadow:none;break-inside:avoid}body.printing-qr #profile-qr-dialog::backdrop{display:none}body.printing-qr .qr-controls,body.printing-qr .qr-actions,body.printing-qr .qr-hint{display:none!important}body.printing-qr .profile-qr-image{width:85mm;height:85mm}}.directory-submit{--submission-accent: #74324e;max-width:1000px;margin:auto;padding:2rem 1.25rem 5rem;color:#29241f}.directory-submit.community{--submission-accent: #244e43}.submission-back{color:inherit}.submission-intro{max-width:760px;margin:3rem 0 2rem}.submission-intro h1{font:600 clamp(2.7rem,6vw,4.6rem)/1.06 "Fraunces",Georgia,serif;letter-spacing:-.035em;margin:1rem 0}.submission-intro p,.submission-card p{line-height:1.65}.submission-card{background:#fffdf7;border:1px solid #d6cec0;border-radius:22px;padding:clamp(1.25rem,4vw,3rem)}.submission-card h2{font:600 clamp(1.6rem,4vw,2.3rem)/1.2 "Fraunces",Georgia,serif}.submission-steps{display:flex;flex-wrap:wrap;gap:.6rem;padding:0;margin:0 0 2rem;list-style:none}.submission-steps li{padding:.5rem .9rem;border-radius:999px;background:#e9e4db;font-weight:600}.submission-steps [aria-current]{background:var(--submission-accent);color:#fff}.submission-card label{display:block;font-weight:650;margin-bottom:1.25rem}.submission-card small{font-weight:400;color:#665c52}.submission-card input,.submission-card textarea{display:block;box-sizing:border-box;width:100%;margin-top:.5rem;padding:.95rem 1rem;border:1px solid #b6ab9c;border-radius:10px;background:#fff;color:#29241f;font:inherit}.submission-card textarea{resize:vertical}.submission-card :focus-visible,.submission-cta:focus-visible,.site-header .submit-link:focus-visible{outline:3px solid #1679b9;outline-offset:3px}.submission-card button,.submission-cta,.site-header .submit-link{display:inline-flex;justify-content:center;padding:.9rem 1.2rem;border:1px solid transparent;border-radius:10px;background:var(--submission-accent,#244e43);color:#fff;font:inherit;font-weight:700;cursor:pointer;text-decoration:none}.submission-card button.secondary{background:transparent;border-color:#b6ab9c;color:#29241f;margin:.5rem 0 .5rem .5rem}.submission-card button:disabled{opacity:.6;cursor:wait}.submission-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}.submission-fields .wide{grid-column:1 / -1}.submission-privacy{font-size:.9rem;color:#665c52}.submission-message{padding:1rem;margin-top:1rem;border-radius:10px;background:#e9efe7;overflow-wrap:anywhere}.submission-message[data-error=true]{background:#fae3dc;color:#812c20}.submission-card [hidden]{display:none!important}.site-header .submission-nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.8rem}.site-header .submit-link{padding:.6rem .9rem;font-size:.9rem}.coming .submission-cta,.growing .submission-cta{margin-top:1rem}@media(max-width:620px){.submission-fields{grid-template-columns:1fr}.submission-card button{width:100%}.submission-card button.secondary{margin:.6rem 0 0}.site-header{flex-wrap:wrap;gap:.8rem}.site-header .submission-nav{gap:.6rem}}
