/* Neutral SuissePsy surfaces. Original provider logos retain their own colors. */
:root{--paper:#fff;--surface:#fff;--ink:#262832;--muted:#6c6e7b;--line:#e5e5eb;--green:#f1f1f6;--accent:#b52f2c}
body{color:#262832;background:#fff}.footer{background:#f5f5f8;color:#555763;border-color:#e5e5eb}.footer p,.footer small,.footer h2,.footer a,.footer-column h2,.footer-bottom p{color:#646672}.resource-tags span,.resource-tags .approach-tag,.view-toggle button[aria-pressed=true],.directory-view button[aria-pressed=true]{background:#f2f2f7;color:#656775}.sponsored-reservations,.sponsorship-reservation,.newsletter-panel,.guide-offer{background:#f8f8fb;color:#4c4e5a;border-color:#e5e5eb}.resource-description,.resource-org,.resource-bottom{color:#686a77}.directory-card{border:1px solid #e5e5ed!important;border-radius:14px!important;overflow:hidden;padding:0!important;gap:0!important;display:flex!important;flex-direction:column;box-shadow:0 4px 15px #24253304;transition:box-shadow .2s,transform .2s;background:#fff!important}.directory-card:hover{box-shadow:0 10px 28px #24253310;transform:translateY(-2px)}.directory-media{height:152px;flex:none;position:relative;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--profile-accent) 5%,white);overflow:hidden}.directory-photo{width:100%;height:100%;object-fit:cover}.directory-logo{max-width:62%;max-height:70px;object-fit:contain}.directory-logo-overlay{position:absolute;bottom:12px;left:16px;background:#fff;border-radius:8px;padding:8px 12px;box-shadow:0 2px 10px #0000000c}.directory-logo-overlay img{width:82px;height:34px;object-fit:contain}.directory-monogram{font-size:38px;font-weight:750;color:var(--profile-accent)}.directory-copy{padding:18px;display:flex;flex-direction:column;flex:1;min-width:0}.directory-kind{font-size:10px!important;color:var(--profile-accent)!important;font-weight:650;margin:0 0 8px!important}.directory-card h3{font-size:19px;line-height:1.25;margin:0 0 6px}.directory-card h3 a{color:#292b35}.directory-card .resource-org{font-size:11px;margin:0 0 10px;line-height:1.5}.directory-card .resource-description{font-size:12px;line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin:0 0 14px;min-height:0}.directory-card .resource-tags{margin-top:auto;gap:5px;min-height:0;padding:0 0 14px}.directory-card .resource-tags span{font-size:10px;padding:4px 7px;line-height:1.4;border-radius:5px}.directory-card .resource-bottom{margin-top:0;padding-top:12px;gap:12px;border-top:1px solid #ededf2;font-size:11px}.directory-card .resource-bottom>a{background:none!important;border:0!important;padding:0!important;font-size:12px;color:var(--profile-accent);white-space:nowrap;text-decoration:underline}.resource-list .directory-card{display:grid!important;grid-template-columns:190px minmax(0,1fr)}.resource-list .directory-media{height:100%;min-height:190px}.resource-list .directory-copy{padding:18px 22px}.resource-list .resource-description{-webkit-line-clamp:2}.resource-list .resource-tags{padding-bottom:10px}.preview-directory{padding-top:30px;padding-bottom:45px}.preview-directory h1{font-family:Manrope,system-ui,sans-serif;font-size:34px;font-weight:750;letter-spacing:-1px}.preview-toolbar{display:flex;gap:10px;align-items:center;justify-content:space-between;margin:20px 0}.preview-toolbar input{min-width:0;flex:1;padding:12px;border:1px solid #dddde6;border-radius:8px}.preview-toolbar select,.preview-toolbar button{padding:11px;border:1px solid #dddde6;border-radius:8px;background:white;font-size:12px}.preview-toolbar button[aria-pressed=true]{background:#292b35;color:#fff}.preview-count{font-size:12px;color:#777986}.preview-directory .resource-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.preview-directory .resource-grid.resource-list{grid-template-columns:1fr}
@media(max-width:700px){.preview-directory .resource-grid{grid-template-columns:1fr}.preview-directory{padding-inline:20px}.preview-toolbar{flex-wrap:wrap}.preview-toolbar input{flex-basis:100%}.directory-media{height:150px}.resource-list .directory-card{grid-template-columns:100px minmax(0,1fr)}.resource-list .directory-copy{padding:14px}.resource-list .directory-media{min-height:170px}.resource-list .directory-logo{max-width:85%}.directory-logo-overlay{padding:5px;left:8px}.directory-logo-overlay img{width:62px}.directory-card:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.directory-card{transition:none;transform:none}}

.directory-card[hidden]{display:none!important}

.directory-photo-contain{object-fit:contain;background:#fafafa}

.directory-media-dark{background:#262934}

/* One action color across SuissePsy; provider color belongs to presentation. */
.directory-card{align-self:start;border-radius:10px!important;box-shadow:none}
.directory-media{height:136px}.directory-logo-overlay{left:50%;bottom:10px;transform:translateX(-50%);width:112px;height:52px;padding:8px;display:grid;place-items:center}
.directory-logo-overlay img{display:block;width:92px;height:34px;object-fit:contain;object-position:center}
.directory-copy{padding:14px;gap:0;flex:none}.directory-identity{display:flex;align-items:baseline;gap:6px 10px;flex-wrap:wrap;margin-bottom:8px}
.directory-card h3{font-size:17px;margin:0;line-height:1.3}.directory-card .directory-kind{font-size:10px!important;margin:0!important;line-height:1.3}
.directory-card .resource-description{margin:0 0 10px;min-height:0;line-height:1.5;-webkit-line-clamp:2}
.directory-card .resource-tags{margin:0;padding:0;min-height:0;gap:4px}.directory-card .resource-tags span{font-size:10px;padding:3px 6px}
.directory-card .resource-bottom{margin:12px 0 0;padding:8px 0 0;min-height:0;align-items:center;gap:8px}
.directory-card .resource-bottom>a{color:#b52f2c;min-height:32px;display:flex;align-items:center;font-size:11px}
.directory-card.without-photo{position:relative}.directory-card.without-photo .directory-media{height:48px;width:64px;margin:14px 14px 0;border-radius:7px;align-self:flex-start}
.directory-card.without-photo .directory-logo{max-width:54px;max-height:36px}.directory-card.without-photo .directory-monogram{font-size:22px}
.directory-card.without-photo .directory-copy{padding-top:10px}
.resource-list .directory-card{grid-template-columns:136px minmax(0,1fr)}.resource-list .directory-media{min-height:0;height:100%}
.resource-list .directory-card.without-photo{grid-template-columns:78px minmax(0,1fr)}.resource-list .directory-copy{padding:14px}
.resource-list .directory-card.without-photo .directory-media{margin-top:14px;margin-right:0}
@media(max-width:700px){.directory-card .resource-bottom>a{min-height:40px}.resource-list .directory-card{grid-template-columns:94px minmax(0,1fr)}.resource-list .directory-logo-overlay{width:76px;height:44px;left:50%;padding:5px}.resource-list .directory-logo-overlay img{width:64px;height:30px}}

/* Homepage 2026-10-11: flowing paths, unified controls and compact exploration. */
.directory-modern{padding-top:10px}
.directory-modern .directory-search-panel{position:relative;isolation:isolate;overflow:hidden;background:#faf7f5;border-color:#eee5e0;padding:30px;margin-bottom:14px}
.search-relief{position:absolute;z-index:-1;inset:0 0 0 auto;width:53%;height:100%;fill:none;stroke:#bd3a35;stroke-width:1.3;opacity:.19;pointer-events:none;animation:search-relief-enter 4s ease-out both;mask-image:linear-gradient(to right,transparent,#000 48%)}
.search-relief path:nth-child(3n){stroke-width:5;opacity:.45}
@keyframes search-relief-enter{from{transform:translate(35px,20px) scale(1.1);opacity:0}to{transform:none;opacity:.19}}
.directory-modern .search-intro h1{font-size:clamp(30px,3.3vw,44px);max-width:840px;margin-bottom:10px}
.directory-modern .search-intro .eyebrow{color:#a42f2c;margin-bottom:12px;font-size:9px}
.directory-modern .search-intro>p:not(.eyebrow){margin-bottom:22px;font-size:14px;color:#525360}
.directory-modern .searchbar{margin:0;box-shadow:0 5px 16px #35212809;border-color:#d7cdca}
.directory-modern .result-toolbar{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px 12px;align-items:center;margin:0 0 18px;font-size:12px}
.directory-modern .result-toolbar .topics{display:flex;flex-wrap:wrap;gap:2px;margin:0}
.directory-modern .result-toolbar .chip{padding:8px 10px;min-height:44px;border-radius:6px;font-size:11px}
.directory-modern .result-toolbar .chip[aria-pressed=true]{background:#f9e9e7;border-color:#ecd1cd;color:#a62b28;box-shadow:none}
.directory-modern .advanced-filters{margin:0;padding:0;border:0}
.directory-modern .advanced-filters summary{display:flex;align-items:center;justify-content:flex-start;gap:8px;min-height:44px;padding:8px 10px;margin:0;white-space:nowrap;font-size:11px;border:1px solid #dedee5;border-radius:6px;list-style:none;cursor:pointer}
.directory-modern .advanced-filters summary::-webkit-details-marker{display:none}
.directory-modern .advanced-filters[open]{grid-column:1/-1;grid-row:2;background:#f7f7fa;border-radius:8px;padding:10px 14px}
.directory-modern .advanced-filters[open] summary{width:max-content;margin-bottom:12px;background:#fff}
.directory-modern .advanced-filters summary span{font-size:18px;line-height:1}
.directory-modern .advanced-filters[open] summary span{transform:rotate(45deg)}
.directory-modern .catalogue-filters{margin:0;gap:12px}
.directory-modern .filter-help{margin:10px 0 0;font-size:11px}
.directory-modern .directory-options{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.directory-modern .directory-sort select{font-size:11px;padding-left:8px;max-width:130px}
.directory-modern .directory-view-switch{background:#f3f3f6}
.directory-modern .directory-view-switch button{min-height:44px;padding:8px;font-size:11px}
.directory-modern .catalogue-note.sr-only{margin:-1px;padding:0}
/* A banner on every card, using verified photos or a logo/monogram fallback. */
.directory-card.without-photo .directory-media{position:relative;isolation:isolate;overflow:hidden;width:100%;height:136px;margin:0;border-radius:0;align-self:stretch;background:#f1eff4;color:var(--profile-accent)}
.directory-card.without-photo .directory-media::before,.directory-card.without-photo .directory-media::after{content:'';position:absolute;z-index:-1;width:270px;height:270px;border:1px solid currentColor;border-radius:50%;opacity:.10;right:-65px;top:-175px;box-shadow:0 0 0 18px #ffffff55,0 0 0 19px currentColor,0 0 0 38px #ffffff55,0 0 0 39px currentColor}
.directory-card.without-photo .directory-media::after{right:auto;left:-130px;top:50px}
.directory-card.without-photo .directory-logo{max-width:150px;max-height:62px;padding:10px 16px;box-sizing:content-box;background:#fff;border-radius:8px;box-shadow:0 3px 12px #2424360a}
.directory-card.without-photo .directory-media-dark{background:#2a2932}
.directory-card.without-photo .directory-media-dark .directory-logo{background:#2a2932}
.directory-card.without-photo .directory-monogram{display:grid;place-items:center;width:64px;height:64px;background:#fff;border-radius:12px;font-size:28px;box-shadow:0 3px 12px #2424360a}
.directory-card.without-photo .directory-copy{padding-top:14px}
.directory-modern .resource-tags span{background:#f4f3f7;color:#575765}
.resource-list .directory-card.without-photo{grid-template-columns:136px minmax(0,1fr)}
.resource-list .directory-card.without-photo .directory-media{height:100%;min-height:136px}
.resource-list .directory-card.without-photo .directory-logo{max-width:88px;max-height:50px;padding:8px}
/* Place names become direct, compact choices instead of an oversized editorial grid. */
.location-directory,.search-answers{max-width:1260px;padding:26px 40px;display:block}
.location-directory>div,.search-answers .answer-intro{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.location-directory h2,.search-answers h2{font-size:23px;max-width:none;line-height:1.25;margin:0}
.location-directory>div>p,.search-answers .answer-intro p{font-size:12px;max-width:none;margin:0}
.location-directory nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.location-directory nav>a{min-height:48px;border:1px solid #e4e2e8;border-radius:8px;background:#faf9fb;padding:10px 12px;font-size:12px;gap:8px}
.location-directory nav>a:hover{border-color:#b52f2c;background:#fff8f7;text-decoration:none}
.location-directory nav>a>span{font-size:10px;white-space:nowrap}
.location-approaches{gap:6px 14px;margin:14px 0 0;font-size:11px}
.location-approaches a{min-height:36px}
.search-answers{padding-top:16px;padding-bottom:28px}
.search-answers>div:last-child{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}
.search-answers details{align-self:start;border-color:#e4e2e8}
.search-answers summary{font-size:13px;min-height:58px;gap:12px;padding:12px 0;line-height:1.5}
.search-answers summary:after{flex:none}
.search-answers details p{font-size:12px;line-height:1.7;margin:0 20px 16px 0}
@media(max-width:1100px){.directory-modern .result-toolbar{grid-template-columns:1fr auto}.directory-modern .result-toolbar .topics{grid-column:1/-1}.directory-modern .directory-options{justify-self:end}.directory-modern .advanced-filters[open]{grid-row:3}.location-directory nav{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){.directory-modern{padding-top:8px}.directory-modern .directory-search-panel{padding:22px 18px;margin-bottom:10px}.search-relief{width:95%;opacity:.12}.directory-modern .search-intro h1{font-size:31px}.directory-modern .search-intro>p:not(.eyebrow){font-size:13px}.directory-modern .result-toolbar{gap:8px 4px}.directory-modern .result-toolbar .topics{flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding:2px 0}.directory-modern .result-toolbar .chip{font-size:11px;padding:8px}.directory-modern .directory-options{gap:4px}.directory-modern .directory-view-switch button{font-size:10px;padding:7px}.directory-modern .directory-view-switch svg{display:none}.directory-modern .directory-sort select{max-width:116px;font-size:10px}.directory-modern .advanced-filters summary{padding:8px;font-size:10px}.directory-modern #reset{font-size:11px}.location-directory,.search-answers{padding:20px 18px}.location-directory h2,.search-answers h2{font-size:21px}.location-directory nav{grid-template-columns:1fr 1fr}.location-directory>div>p,.search-answers .answer-intro p{line-height:1.6}.search-answers>div:last-child{display:block}.directory-card .directory-media,.directory-card.without-photo .directory-media{height:136px}.resource-list .directory-card.without-photo{grid-template-columns:90px minmax(0,1fr)}.resource-list .directory-card.without-photo .directory-logo{max-width:60px;padding:6px}}
@media(prefers-reduced-motion:reduce){.search-relief{animation:none}}

/* Square grid cards; list mode retains its horizontal reading layout. */
.resource-grid:not(.resource-list) .directory-card{width:100%;min-width:0;box-sizing:border-box;justify-self:stretch;aspect-ratio:1;display:grid!important;grid-template-rows:42% minmax(0,1fr);align-self:stretch;overflow:hidden;container-type:inline-size}
.resource-grid:not(.resource-list) .directory-card .directory-media{height:100%;min-height:0;width:100%;margin:0}
.resource-grid:not(.resource-list) .directory-card .directory-copy{min-height:0;display:flex;flex-direction:column;padding:12px 14px}
.resource-grid:not(.resource-list) .directory-card .directory-identity{margin-bottom:6px;gap:3px 8px}
.resource-grid:not(.resource-list) .directory-card h3{font-size:17px;line-height:1.2}
.resource-grid:not(.resource-list) .directory-card .resource-description{flex:none;font-size:12px;line-height:1.5;margin-bottom:8px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.resource-grid:not(.resource-list) .directory-card .resource-tags{max-height:48px;overflow:hidden;margin:0;padding:0}
.resource-grid:not(.resource-list) .directory-card .resource-bottom{margin-top:auto;padding-top:6px;min-height:40px;flex-shrink:0}
.resource-grid:not(.resource-list) .directory-card .resource-bottom>a{min-height:36px}
@container(max-width:330px){.resource-grid:not(.resource-list) .directory-card h3{font-size:15px}.resource-grid:not(.resource-list) .directory-card .directory-kind{font-size:9px!important}.resource-grid:not(.resource-list) .directory-card .directory-copy{padding:10px}.resource-grid:not(.resource-list) .directory-card .resource-description{font-size:11px;line-height:1.4}.resource-grid:not(.resource-list) .directory-card .resource-tags{max-height:24px}.resource-grid:not(.resource-list) .directory-card .resource-bottom{font-size:10px}}
@media(max-width:360px){.resource-grid:not(.resource-list) .directory-card{grid-template-rows:28% minmax(0,1fr)}}

/* Original illustrated landscapes for profiles without a usable site image. */
.directory-card.without-photo .directory-media::before,.directory-card.without-photo .directory-media::after{content:none}
.directory-card .directory-illustration{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.directory-card.without-photo .directory-logo,.directory-card.without-photo .directory-monogram{position:relative;z-index:1;box-shadow:0 5px 18px #26203122}
.directory-card.without-photo .directory-media{align-items:flex-end;padding-bottom:12px;box-sizing:border-box}
.resource-list .directory-card.without-photo .directory-media{align-items:center;padding-bottom:0}
