:root{color-scheme:light;--ink:#233e31;--muted:#607362;--paper:#f6f5ed;--line:#d8dfd2;--green:#365a42}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select{font:inherit}a{color:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #bc8138;outline-offset:4px}button:disabled{cursor:wait;opacity:.65}[hidden]{display:none!important}.site-header{max-width:1240px;margin:auto;padding:22px max(24px,env(safe-area-inset-right)) 22px max(24px,env(safe-area-inset-left));display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;gap:9px;text-decoration:none;align-items:center;font-size:36px}.brand>span{font-size:23px;font-family:Georgia,serif;line-height:1.3}.brand small{display:block;font:10px/1.8 system-ui;letter-spacing:1px}.site-header nav{display:flex;align-items:center;gap:24px;font-size:13px}.site-header nav a{text-decoration:none}.site-header button{border:1px solid var(--line);border-radius:25px;background:transparent;padding:8px 15px;min-height:44px}main{max-width:1192px;margin:auto;padding:0 24px}.intro{padding:65px 0 48px;display:grid;grid-template-columns:1fr 240px;gap:65px;align-items:end}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:650;margin:0 0 16px}h1{font:normal clamp(36px,4.6vw,64px)/1.13 Georgia,"Noto Serif SC",serif;letter-spacing:-1.5px;max-width:760px;margin:0 0 23px}.lead{max-width:620px;color:var(--muted);font-size:18px;margin:0}.intro-note{border-left:1px solid var(--line);padding-left:25px;color:var(--muted);font-size:13px}.intro-note>span{font-size:65px;font-weight:200;color:#8d9b79;line-height:1}.filters{display:flex;gap:14px;align-items:end;border-top:1px solid var(--line);padding:25px 0 12px;flex-wrap:wrap}.filters label{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:550}.filters .search-label{flex:1;min-width:180px}.filters input,.filters select{background:#fffdf7;border:1px solid #cbd5c4;padding:11px 13px;border-radius:10px;color:var(--ink);min-height:48px;max-width:100%;font-size:14px}.filters input{width:100%}.filters select{min-width:190px}.filters button,.result-heading button{border:1px solid #cbd5c4;background:transparent;color:var(--ink);padding:11px 14px;border-radius:10px;min-height:48px;font-size:13px;display:inline-flex;align-items:center;justify-content:center;gap:8px}.view-toggle{display:flex;background:#e7ebdf;border-radius:10px;padding:3px}.filters .view-toggle button{border:0;min-height:42px;padding:9px 12px}.view-toggle [aria-pressed=true]{background:var(--green);color:#fff}.icon{width:19px;height:19px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.location-status{font-size:13px;color:var(--muted);margin:0 0 18px;max-width:800px}.result-heading{display:flex;justify-content:space-between;align-items:center;min-height:45px;margin-bottom:18px;font-size:13px;color:var(--muted)}.result-heading p{margin:0}.result-heading button{min-height:36px;padding:5px 10px}.directory-content{display:grid;grid-template-columns:1fr;align-items:start;gap:24px}.directory-content.is-map{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.results{min-width:0;display:grid;gap:24px}.therapist-card{border:1px solid var(--line);border-radius:22px;background:#fffdf7;overflow:hidden;box-shadow:0 4px 22px #243b2b06}.card-top{display:grid;grid-template-columns:210px 1fr;min-height:220px}.profile-photo{width:100%;height:100%;min-height:220px;object-fit:cover;object-position:center 35%;background:#e5e8dc}.profile-intro{padding:26px 28px}.region{font-size:12px;display:flex;align-items:center;gap:5px;color:var(--muted);margin:0 0 10px}h2{font: 30px/1.2 Georgia,"Noto Serif SC",serif;margin:0 0 12px}.description{font-size:14px;line-height:1.75;color:var(--muted);margin:0}.card-body{padding:0 28px 25px}.tags{list-style:none;padding:21px 0 16px;margin:0;display:flex;gap:7px;flex-wrap:wrap}.tags li{font-size:11px;padding:5px 10px;background:#eef1e6;border-radius:20px;color:#496044}.location-note{border-top:1px solid var(--line);padding-top:15px;font-size:12px;color:var(--muted);margin:0}.distance{display:block;font-size:12px;color:var(--green);font-weight:600;margin-top:9px}.actions{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0 18px}.actions a{display:inline-flex;justify-content:center;align-items:center;gap:9px;min-height:48px;padding:11px 17px;text-decoration:none;border-radius:25px;font-size:13px;border:1px solid #aebb9f}.actions a:first-child{background:var(--green);color:#fff;border-color:var(--green)}.channels{display:flex;gap:10px;flex-wrap:wrap}.channels a{font-size:12px;text-decoration:none;display:inline-flex;align-items:center;gap:6px;padding:7px 0;margin-right:12px;min-height:40px}.card-foot{font-size:11px;color:var(--muted);margin:15px 0 0;display:flex;gap:15px;flex-wrap:wrap}.card-foot a{text-underline-offset:3px}.map-panel{border:1px solid var(--line);border-radius:20px;overflow:hidden;position:sticky;top:18px;background:#fffdf7}#map{height:440px;isolation:isolate;background:#e4eadf;z-index:0}.map-caption,#mapStatus{font-size:12px;color:var(--muted);padding:0 18px;margin:12px 0}.map-caption{padding-bottom:7px}.area-marker{background:var(--green);color:#fff;border:3px solid #fff;border-radius:50%;box-shadow:0 2px 9px #173b2940;display:grid;place-items:center;font-size:16px}.leaflet-container{font-family:inherit}.leaflet-popup-content a{display:inline-block;margin-top:5px;color:var(--green)}.empty{padding:35px;border:1px dashed #bdcbb6;border-radius:20px;text-align:center;color:var(--muted)}.empty button{border:1px solid #aebb9f;color:var(--ink);background:transparent;border-radius:25px;min-height:44px;padding:8px 20px}.how{margin:70px 0 60px;border-top:1px solid var(--line);padding-top:35px}.how h2{font-size:37px;margin-bottom:30px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.steps span{font:20px Georgia;color:#8c9c79}.steps h3{font-size:16px;font-weight:550;margin:10px 0 8px}.steps p{font-size:13px;color:var(--muted);margin:0}footer{max-width:1192px;margin:auto;padding:25px 24px max(25px,env(safe-area-inset-bottom));border-top:1px solid var(--line);display:flex;align-items:start;gap:25px;color:var(--muted);font-size:12px}footer>a{font-family:Georgia;text-decoration:none;white-space:nowrap}footer p{max-width:600px;margin:0}footer small{margin-left:auto;white-space:nowrap;font-size:10px}.is-map .card-top{grid-template-columns:125px 1fr}.is-map .profile-intro{padding:22px}.is-map h2{font-size:26px}.is-map .card-body{padding-inline:22px}@media(max-width:900px){.intro{grid-template-columns:1fr;gap:0;padding:42px 0 35px}.intro-note{display:none}.filters{gap:10px}.filters label{flex:1}.filters select{min-width:160px;width:100%}.directory-content.is-map{grid-template-columns:1fr}.map-panel{position:relative;top:0}#map{height:330px}.is-map .card-top{grid-template-columns:210px 1fr}.steps{gap:24px}footer{flex-wrap:wrap}footer small{margin-left:0}}@media(max-width:560px){.site-header{padding:15px 18px;gap:8px}.brand>span{font-size:19px}.brand{font-size:29px}.brand small{font-size:8px;letter-spacing:.1px}.site-header nav{gap:10px;font-size:11px}.site-header nav a{max-width:85px;line-height:1.4}.site-header button{padding:8px 12px}main{padding:0 18px}.intro{padding:32px 0 30px}h1{font-size:39px;letter-spacing:-.8px}.lead{font-size:15px}.filters .search-label,.filters label{flex-basis:100%}.filters .locate{flex:1}.view-toggle{flex-shrink:0}.card-top,.is-map .card-top{grid-template-columns:1fr}.profile-photo{height:235px;min-height:0;object-position:center 35%}.profile-intro,.is-map .profile-intro{padding:22px 21px 10px}.card-body,.is-map .card-body{padding:0 21px 22px}h2,.is-map h2{font-size:30px}.actions{flex-direction:column}.actions a{width:100%}.steps{grid-template-columns:1fr;gap:25px}.how{margin-top:45px}.how h2{font-size:30px}#map{height:300px}.channels{gap:6px}.channels a{margin-right:8px}footer{padding-inline:18px;gap:12px}.eyebrow{font-size:10px;letter-spacing:1.5px}}@media(orientation:landscape)and (max-height:500px){.intro{padding-top:20px;padding-bottom:25px}.intro h1{font-size:38px}.site-header{padding-block:10px}.profile-photo{min-height:200px}#map{height:270px}.how{margin-top:40px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}.connection-story{border-top:1px solid var(--line);padding:35px 0 38px;max-width:100%}.connection-story>p:not(.eyebrow){max-width:850px;color:var(--muted);font-size:15px}.connection-story h2{font-size:34px}.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin:25px 0}.benefits h3{font-size:16px;font-weight:550}.benefits p{font-size:13px;color:var(--muted)}.network-note{border-left:2px solid #b3c19c;padding-left:18px}.coverage-note{font-size:12px;margin-top:10px;color:var(--green)}.get-listed{margin:48px 0;border:1px solid var(--line);border-radius:22px;padding:32px;background:#eaf0e2}.listing-intro{max-width:730px}.listing-intro>p{font-size:14px;color:var(--muted)}.review-note{font-weight:550}#listingForm{display:grid;gap:18px;margin-top:28px}#listingForm label{display:flex;flex-direction:column;font-size:12px;gap:7px}#listingForm input:not([type=checkbox]),#listingForm textarea{font:inherit;font-size:15px;padding:11px 12px;background:#fffdf7;border:1px solid #b9c8af;border-radius:8px;color:var(--ink);width:100%;min-height:46px}#listingForm small{color:var(--muted);font-size:11px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}#listingForm fieldset{border:0;margin:0;padding:0}#listingForm legend{font-size:12px;margin-bottom:10px}.service-options{display:flex;gap:10px 18px;flex-wrap:wrap}#listingForm .service-options label{flex-direction:row;align-items:center;font-size:12px;min-height:32px}#listingForm input[type=checkbox]{width:19px;height:19px;accent-color:var(--green);flex-shrink:0}#listingForm .consent{display:flex;flex-direction:row;align-items:flex-start;gap:10px;max-width:850px;line-height:1.7}.form-trap{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.form-privacy{font-size:12px;color:var(--muted);margin:0}#submitApplication{justify-self:start;border:0;border-radius:28px;padding:13px 24px;background:var(--green);color:#fff;min-height:48px;font-size:14px}#applicationStatus{font-size:14px;margin:0}.get-listed:target{scroll-margin-top:20px}@media(max-width:700px){.benefits{grid-template-columns:1fr;gap:5px}.get-listed{padding:24px 20px}.form-grid{grid-template-columns:1fr}.connection-story h2{font-size:29px}}.profile-placeholder{display:grid;place-items:center;min-height:200px;color:#6b8058;background:#e4eadb;font:85px Georgia}@media(max-width:560px){.site-header{align-items:flex-start}.site-header nav{flex-wrap:wrap;justify-content:flex-end;gap:4px 10px;max-width:145px}.site-header nav a{font-size:10px;max-width:85px}}.profile-photo,.profile-placeholder{width:100%;height:auto;min-height:0;aspect-ratio:1;object-fit:contain;object-position:center;align-self:start;background:#e5e8dc}.therapist-card{box-shadow:0 5px 20px #243b2b12;transition:box-shadow .22s ease,transform .22s ease,border-color .22s ease}.therapist-card:focus-within{box-shadow:0 12px 32px #243b2b24;border-color:#9cac8e}@media(hover:hover){.therapist-card:hover{transform:translateY(-4px);box-shadow:0 16px 38px #243b2b26;border-color:#9cac8e}.actions a:hover{box-shadow:0 4px 12px #243b2b22}}.application-button{border:0;border-radius:28px;padding:13px 24px;background:var(--green);color:#fff;min-height:48px;font:inherit}#applicationDialog{border:1px solid var(--line);border-radius:22px;background:var(--paper);color:var(--ink);width:min(820px,calc(100% - 28px));max-height:calc(100dvh - 40px);padding:28px;box-shadow:0 24px 80px #14291f55;overscroll-behavior:contain}#applicationDialog::backdrop{background:#14291f88;backdrop-filter:blur(4px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.dialog-heading h2{margin:0;font-size:28px}#closeApplication{flex-shrink:0;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--ink);font-size:28px}body:has(#applicationDialog[open]){overflow:hidden}@media(max-width:560px){.profile-photo,.profile-placeholder{width:min(100%,280px);justify-self:center;margin-top:20px}#applicationDialog{padding:20px}}@media(prefers-reduced-motion:reduce){.therapist-card{transition:none}.therapist-card:hover{transform:none}}
