.organizations-archive-page { background:var(--color-background); }
.organizations-archive-page main { overflow:clip; }
.organizations-archive-page [hidden] { display:none!important; }
.organizations-archive-page .site-menu>li.is-current>.menu-item__row>a { color:var(--color-primary); }
.organizations-shell { width:min(calc(100% - 12vw),76rem); margin-inline:auto; }
.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; }

.organizations-hero { position:relative; padding:clamp(10rem,16vh,12rem) 0 clamp(5rem,8vw,7rem); overflow:hidden; background:radial-gradient(circle at 86% 20%,rgba(52,42,255,.1),transparent 30%),radial-gradient(circle at 10% 92%,rgba(235,221,47,.25),transparent 26%),#fbfbfe; }
.organizations-hero::after { position:absolute; right:-9rem; bottom:-14rem; width:30rem; height:30rem; content:""; border:1px solid rgba(52,42,255,.13); border-radius:50%; pointer-events:none; }
.organizations-hero__shape { position:absolute; pointer-events:none; }
.organizations-hero__shape--one { top:32%; right:10%; width:8rem; height:8rem; background:rgba(52,42,255,.06); border:1px solid rgba(52,42,255,.1); border-radius:50% 30% 55% 35%; transform:rotate(20deg); }
.organizations-hero__shape--two { bottom:-3rem; left:5%; width:10rem; height:10rem; background:rgba(235,221,47,.24); border-radius:3rem 5rem 4rem 6rem; transform:rotate(-15deg); }
.organizations-hero__inner { position:relative; z-index:1; }
.organizations-hero .visual-label { margin-bottom:1.4rem; }
.organizations-hero h1 { max-width:12ch; font-size:clamp(3.8rem,7vw,6.8rem); line-height:.92; letter-spacing:-.06em; }
.organizations-hero h1+p { max-width:51rem; margin-top:1.5rem; color:rgba(23,23,74,.72); font-size:clamp(1.08rem,1.6vw,1.35rem); line-height:1.65; }
.organizations-hero__inner>a { display:inline-flex; align-items:center; gap:.55rem; margin-top:1.6rem; color:var(--color-primary); font-weight:600; text-decoration:none; }
.organizations-hero__inner>a span { transition:transform .2s; }
.organizations-hero__inner>a:hover span { transform:translateX(3px); }

.organizations-browser { padding:clamp(4.5rem,8vw,7rem) 0 clamp(7rem,11vw,10rem); background:linear-gradient(180deg,#fff,rgba(52,42,255,.025)); }
.organizations-controls { margin-bottom:2.5rem; }
.organizations-search { display:flex; align-items:center; gap:.9rem; width:100%; height:4.2rem; padding:0 1.25rem; background:#fff; border:1px solid rgba(52,42,255,.16); border-radius:1.25rem; box-shadow:0 .8rem 2.6rem rgba(23,23,74,.05); transition:border-color .2s,box-shadow .2s; }
.organizations-search:focus-within { border-color:var(--color-primary); box-shadow:0 0 0 4px rgba(52,42,255,.09); }
.organizations-search svg { flex:0 0 1.35rem; width:1.35rem; fill:none; stroke:var(--color-primary); stroke-width:1.8; }
.organizations-search input { width:100%; color:var(--color-text); background:transparent; border:0; outline:0; font-size:1.05rem; }
.organizations-filter-bar { display:flex; align-items:flex-start; justify-content:space-between; gap:1.5rem; margin-top:1rem; padding:1rem 1.15rem; background:rgba(255,255,255,.84); border:1px solid rgba(52,42,255,.12); border-radius:1.25rem; backdrop-filter:blur(8px); }
.organizations-filter-groups { display:flex; flex:1; flex-wrap:wrap; gap:.6rem; }
.organizations-filter { position:relative; }
.organizations-filter summary { display:flex; min-height:2.65rem; align-items:center; gap:.6rem; padding:.6rem .85rem; color:var(--color-text); background:rgba(52,42,255,.04); border:1px solid rgba(52,42,255,.12); border-radius:999px; font-size:.78rem; font-weight:600; list-style:none; cursor:pointer; }
.organizations-filter summary::-webkit-details-marker { display:none; }
.organizations-filter summary::after { content:"+"; color:var(--color-primary); font-size:1rem; }
.organizations-filter[open] summary,.organizations-filter.has-selection summary { color:#fff; background:var(--color-primary); border-color:var(--color-primary); }
.organizations-filter[open] summary::after,.organizations-filter.has-selection summary::after { color:#fff; }
.organizations-filter__options { position:absolute; z-index:5; top:calc(100% + .55rem); left:0; display:flex; width:min(22rem,80vw); flex-wrap:wrap; gap:.45rem; padding:.8rem; background:#fff; border:1px solid rgba(52,42,255,.13); border-radius:1rem; box-shadow:0 1rem 2.5rem rgba(23,23,74,.1); }
.organizations-filter-chip { position:relative; }
.organizations-filter-chip input { position:absolute; opacity:0; pointer-events:none; }
.organizations-filter-chip span { display:block; padding:.48rem .65rem; color:var(--color-text); background:rgba(52,42,255,.035); border:1px solid rgba(52,42,255,.12); border-radius:999px; font-size:.72rem; cursor:pointer; }
.organizations-filter-chip input:checked+span { color:#fff; background:var(--color-primary); border-color:var(--color-primary); }
.organizations-filter-chip input:focus-visible+span { outline:3px solid rgba(52,42,255,.22); outline-offset:2px; }
.organizations-clear { min-height:2.65rem; flex:0 0 auto; padding:.5rem .7rem; color:var(--color-primary); background:transparent; border:0; font-size:.76rem; font-weight:600; cursor:pointer; }
.organizations-results-head { display:flex; align-items:center; justify-content:space-between; gap:2rem; margin-bottom:2rem; padding-bottom:1rem; border-bottom:1px solid rgba(52,42,255,.12); }
.organizations-results-head p { font-weight:600; }
.organizations-results-head span { color:rgba(23,23,74,.55); font-size:.78rem; }

.organizations-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.organization-list-card { display:flex; min-width:0; min-height:25rem; flex-direction:column; padding:1.35rem; background:rgba(255,255,255,.78); border:1px solid rgba(52,42,255,.11); border-radius:1.4rem; transition:border-color .2s,transform .2s,background-color .2s; }
.organization-list-card:hover { background:#fff; border-color:rgba(52,42,255,.24); transform:translateY(-3px); }
.organization-list-card__top { display:flex; min-height:5rem; align-items:center; justify-content:space-between; gap:1rem; }
.organization-list-card__logo { display:grid; width:7rem; height:4.5rem; place-items:center; padding:.7rem; background:#fff; border:1px solid rgba(52,42,255,.1); border-radius:1rem; color:var(--color-primary); font-weight:700; }
.organization-list-card__logo img { width:100%; height:100%; object-fit:contain; }
.organization-list-card__demo { padding:.35rem .55rem; color:#746d00; background:rgba(235,221,47,.24); border-radius:999px; font-size:.65rem; font-weight:600; }
.organization-list-card__type { margin-top:1.3rem; color:var(--color-primary); font-size:.7rem; font-weight:600; letter-spacing:.09em; text-transform:uppercase; }
.organization-list-card h2 { margin-top:.45rem; font-size:clamp(1.45rem,2.1vw,2rem); line-height:1.05; }
.organization-list-card h2 a { color:var(--color-text); text-decoration:none; }
.organization-list-card__description { margin-top:.8rem; color:rgba(23,23,74,.68); font-size:.88rem; line-height:1.55; }
.organization-list-card__topics { display:flex; flex-wrap:wrap; gap:.35rem; margin-top:1rem; list-style:none; }
.organization-list-card__topics li { padding:.34rem .52rem; color:var(--color-primary); background:rgba(52,42,255,.06); border-radius:999px; font-size:.66rem; font-weight:600; }
.organization-list-card__footer { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-top:auto; padding-top:1.3rem; }
.organization-list-card__location { display:flex; align-items:center; gap:.35rem; color:rgba(23,23,74,.58); font-size:.72rem; }
.organization-list-card__location svg { width:.9rem; fill:none; stroke:var(--color-primary); stroke-width:1.8; }
.organization-list-card__link { display:inline-flex; align-items:center; gap:.4rem; color:var(--color-primary); font-size:.77rem; font-weight:600; text-decoration:none; }
.organization-list-card__link span { transition:transform .2s; }
.organization-list-card__link:hover span { transform:translateX(3px); }
.organizations-empty { padding:5rem 1rem; text-align:center; }
.organizations-empty h2 { font-size:clamp(2rem,4vw,3.2rem); }
.organizations-empty p { margin:.8rem 0 1.4rem; color:rgba(23,23,74,.65); }
.organizations-empty button { padding:.85rem 1.1rem; color:#fff; background:var(--color-primary); border:0; border-radius:999px; font-weight:600; cursor:pointer; }

.organizations-map-cta { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:1.5rem; margin-top:clamp(5rem,8vw,7rem); padding:clamp(1.5rem,3vw,2.5rem); background:radial-gradient(circle at 10% 50%,rgba(235,221,47,.28),transparent 25%),rgba(52,42,255,.055); border:1px solid rgba(52,42,255,.13); border-radius:1.8rem; }
.organizations-map-cta>span { display:grid; width:4rem; height:4rem; place-items:center; color:var(--color-primary); background:#fff; border-radius:1.2rem; }
.organizations-map-cta svg { width:2rem; fill:none; stroke:currentColor; stroke-width:2; }
.organizations-map-cta p { color:var(--color-primary); font-size:.75rem; font-weight:600; letter-spacing:.07em; text-transform:uppercase; }
.organizations-map-cta h2 { max-width:30rem; margin-top:.35rem; font-size:clamp(1.6rem,2.7vw,2.6rem); line-height:1; }
.organizations-map-cta>a { display:inline-flex; align-items:center; gap:.5rem; padding:.85rem 1rem; color:#fff; background:var(--color-primary); border-radius:999px; font-size:.8rem; font-weight:600; text-decoration:none; }

@media(max-width:1024px){
  .organizations-shell{width:min(calc(100% - 3rem),76rem)}
  .organizations-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .organizations-map-cta{grid-template-columns:auto minmax(0,1fr)}
  .organizations-map-cta>a{grid-column:2}
}
@media(max-width:700px){
  .organizations-shell{width:calc(100% - 2.5rem)}
  .organizations-hero{padding:8rem 0 4.5rem}
  .organizations-hero h1{font-size:clamp(3.2rem,14vw,4.6rem)}
  .organizations-hero__shape--one{right:-3rem}
  .organizations-search{height:3.6rem}
  .organizations-filter-bar{display:block;padding:.8rem}
  .organizations-filter-groups{display:grid;gap:.45rem}
  .organizations-filter summary{justify-content:space-between;width:100%;border-radius:.85rem}
  .organizations-filter__options{position:static;width:100%;margin-top:.4rem;box-shadow:none}
  .organizations-clear{width:100%;margin-top:.5rem}
  .organizations-results-head{align-items:flex-start}
  .organizations-results-head span{max-width:10rem;text-align:right}
  .organizations-grid{grid-template-columns:1fr}
  .organization-list-card{min-height:23rem;padding:1.2rem}
  .organization-list-card__footer{align-items:flex-end}
  .organizations-map-cta{grid-template-columns:1fr;gap:1rem}
  .organizations-map-cta>a{grid-column:auto;justify-content:center;width:100%}
}
@media(prefers-reduced-motion:reduce){
  .organization-list-card,.organization-list-card__link span,.organizations-hero__inner>a span{transition:none}
  .organization-list-card:hover,.organization-list-card__link:hover span,.organizations-hero__inner>a:hover span{transform:none}
}
