/* Plus Directory Card Enhancements v1.1
 * Updated: 2026-09-28
 */
.directory-card{position:relative}
.directory-card-decorated{border-color:#e1c878!important;box-shadow:0 8px 22px rgba(144,111,28,.08)}
.directory-card-plus{background-image:linear-gradient(180deg,rgba(255,251,239,.58),rgba(255,255,255,0))}
.directory-plus-supporter{position:absolute;top:10px;right:10px;z-index:2;display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;background:#fff8e5;border:1px solid #ead9a6;color:#7a6426;font-size:.68rem;font-weight:800;line-height:1}
.directory-detail-row{margin-top:10px}
.directory-detail-row .directory-detail{display:inline-flex;align-items:center;justify-content:center;border-radius:10px;padding:8px 11px;background:#eaf3ed;color:#285d45;text-decoration:none;font-weight:800}
.directory-detail-pending{display:inline-flex;padding:7px 0;color:#7d857f;font-size:.92rem}


/* Regional directory simple UI v1.0
 * Directory pages are search tools: mode -> search -> results.
 */
[data-plus-directory] .directory-standard-hero,
[data-plus-directory] .directory-standard-note,
[data-plus-directory] .directory-common-intro,
[data-plus-directory] .directory-common-note,
[data-plus-directory] .directory-section-kicker,
[data-plus-directory] .directory-section-lead,
[data-plus-directory] .directory-section > .eyebrow,
[data-plus-directory] .directory-facility-link,
[data-plus-directory] .directory-partner-cta,
[data-plus-directory] .related-nav{
  display:none!important;
}

[data-plus-directory]{
  padding-top:18px!important;
}

[data-plus-directory] .directory-mode{
  margin:0 0 16px!important;
  padding:0!important;
}

[data-plus-directory] .directory-mode > h2{
  margin:0 0 10px!important;
  font-size:1.12rem!important;
  line-height:1.35!important;
  text-align:left!important;
}

[data-plus-directory] .directory-mode-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
  margin:0!important;
}

[data-plus-directory] .directory-mode-button{
  min-width:0!important;
  min-height:72px!important;
  padding:9px 7px!important;
  border-radius:14px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
}

[data-plus-directory] .directory-mode-button > span{
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:10px!important;
  font-size:1rem!important;
  line-height:1!important;
}

[data-plus-directory] .directory-mode-button > strong{
  font-size:.76rem!important;
  line-height:1.25!important;
  text-align:center!important;
}

[data-plus-directory] .directory-section{
  margin:0!important;
  padding:14px 0 0!important;
}

[data-plus-directory] .directory-section > h2{
  margin:0 0 9px!important;
  font-size:1.2rem!important;
  line-height:1.35!important;
}

[data-plus-directory] .directory-simple-search{
  margin:0 0 10px!important;
}

[data-plus-directory] .directory-simple-search label{
  display:block!important;
  margin:0 0 5px!important;
  font-size:.82rem!important;
  font-weight:800!important;
}

[data-plus-directory] .directory-simple-search input,
[data-plus-directory] .directory-simple-search .search-input{
  min-height:44px!important;
  padding:0 12px!important;
  border-radius:12px!important;
  font-size:16px!important;
}

[data-plus-directory] .directory-chip-list{
  margin:0 0 10px!important;
  gap:6px!important;
}

[data-plus-directory] .directory-chip{
  min-height:34px!important;
  padding:5px 10px!important;
  font-size:.78rem!important;
}

[data-plus-directory] .directory-list-controls{
  margin:0 0 10px!important;
}

[data-plus-directory] .directory-count{
  margin:6px 0 10px!important;
}

[data-plus-directory] .directory-company-grid{
  margin-top:0!important;
}

@media(max-width:640px){
  main > .page-hero,
  main > .directory-page-hero,
  main > .directory-hero{
    padding-top:22px!important;
    padding-bottom:22px!important;
  }

  main > .page-hero .section-kicker,
  main > .page-hero .kicker,
  main > .page-hero .eyebrow,
  main > .directory-page-hero .section-kicker,
  main > .directory-page-hero .kicker,
  main > .directory-page-hero .eyebrow,
  main > .directory-hero .section-kicker,
  main > .directory-hero .kicker,
  main > .directory-hero .eyebrow{
    display:none!important;
  }

  main > .page-hero h1,
  main > .directory-page-hero h1,
  main > .directory-hero h1{
    margin-bottom:5px!important;
    font-size:1.55rem!important;
    line-height:1.3!important;
  }

  main > .page-hero h1 + p,
  main > .directory-page-hero h1 + p,
  main > .directory-hero h1 + p{
    margin:0!important;
    font-size:.88rem!important;
    line-height:1.5!important;
  }

  [data-plus-directory]{
    padding-top:12px!important;
  }

  [data-plus-directory] .directory-mode{
    margin-bottom:10px!important;
  }

  [data-plus-directory] .directory-mode > h2{
    font-size:1rem!important;
    margin-bottom:8px!important;
  }

  [data-plus-directory] .directory-mode-grid{
    gap:6px!important;
  }

  [data-plus-directory] .directory-mode-button{
    min-height:62px!important;
    padding:7px 5px!important;
    border-radius:12px!important;
  }

  [data-plus-directory] .directory-mode-button > span{
    width:30px!important;
    height:30px!important;
    min-width:30px!important;
    font-size:.92rem!important;
  }

  [data-plus-directory] .directory-mode-button > strong{
    font-size:.68rem!important;
  }

  [data-plus-directory] .directory-section{
    padding-top:10px!important;
  }

  [data-plus-directory] .directory-section > h2{
    font-size:1.05rem!important;
    margin-bottom:7px!important;
  }

  [data-plus-directory] .directory-simple-search{
    margin-bottom:8px!important;
  }

  [data-plus-directory] .directory-simple-search label{
    font-size:.75rem!important;
  }

  [data-plus-directory] .directory-chip-list{
    margin-bottom:8px!important;
  }

  [data-plus-directory] .directory-list-controls{
    margin-bottom:8px!important;
  }
}


/* Regional directory Nara-style search UI v1.0
 * Updated: 2026-09-28
 */
[data-plus-directory].directory-nara-style > .directory-mode,
[data-plus-directory].directory-nara-style > .directory-section,
[data-plus-directory].directory-nara-style > .directory-standard-hero,
[data-plus-directory].directory-nara-style > .directory-standard-note,
[data-plus-directory].directory-nara-style > .directory-common-intro,
[data-plus-directory].directory-nara-style > .directory-common-note,
[data-plus-directory].directory-nara-style > .directory-partner-cta,
[data-plus-directory].directory-nara-style > .related-nav{
  display:none!important;
}

.regional-directory-unified{
  display:grid;
  gap:16px;
  margin:0 0 24px;
}

.regional-directory-search-panel{
  display:grid;
  gap:14px;
  padding:18px;
  border:1px solid rgba(83,112,91,.22);
  border-radius:20px;
  background:#fff;
  box-shadow:0 8px 24px rgba(35,55,43,.04);
}

.regional-directory-search-form{
  display:grid;
  gap:7px;
  margin:0;
}

.regional-directory-search-label{
  font-size:.9rem;
  font-weight:800;
}

.regional-directory-search-control{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px;
}

.regional-directory-search-input{
  width:100%;
  min-width:0;
  min-height:48px;
  padding:0 14px;
  border:1px solid rgba(83,112,91,.34);
  border-radius:13px;
  background:#fff;
  color:inherit;
  font:inherit;
  font-size:16px;
}

.regional-directory-search-button{
  min-width:76px;
  min-height:48px;
  padding:0 16px;
  border:0;
  border-radius:13px;
  background:#2f7656;
  color:#fff;
  font:inherit;
  font-weight:800;
}

.regional-directory-filters{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}

.regional-directory-filters label,
.regional-directory-list-controls label{
  display:grid;
  gap:5px;
  min-width:0;
  font-size:.76rem;
  font-weight:800;
}

.regional-directory-region-fixed,
.regional-directory-select{
  display:flex;
  align-items:center;
  width:100%;
  min-width:0;
  min-height:42px;
  padding:0 12px;
  border:1px solid rgba(83,112,91,.26);
  border-radius:12px;
  background:#fff;
  color:inherit;
  font:inherit;
  font-size:.9rem;
  font-weight:700;
}

.regional-directory-groups{
  display:flex;
  gap:7px;
  overflow-x:auto;
  padding:1px 0 2px;
  scrollbar-width:none;
}

.regional-directory-groups::-webkit-scrollbar{display:none}

.regional-directory-chip{
  flex:0 0 auto;
  min-height:38px;
  padding:0 14px;
  border:1px solid rgba(83,112,91,.26);
  border-radius:999px;
  background:#fff;
  color:inherit;
  font:inherit;
  font-size:.82rem;
  font-weight:800;
}

.regional-directory-chip.is-active{
  background:#2f7656;
  border-color:#2f7656;
  color:#fff;
}

.regional-directory-list-controls{
  display:grid;
  grid-template-columns:minmax(130px,180px) minmax(130px,180px) minmax(150px,1fr);
  gap:10px;
  align-items:end;
}

.regional-directory-reset{
  min-height:42px;
  padding:0 14px;
  border:1px solid rgba(83,112,91,.26);
  border-radius:12px;
  background:#fff;
  color:inherit;
  font:inherit;
  font-weight:800;
}

.regional-directory-summary{
  margin:0;
  font-size:1rem;
  font-weight:800;
}

.regional-directory-results{
  margin-top:0!important;
}

.regional-directory-more-wrap{
  display:flex;
  justify-content:center;
}

.regional-directory-more{
  min-width:min(320px,100%);
}

.regional-directory-empty{
  grid-column:1/-1;
  display:grid;
  gap:5px;
  padding:24px 16px;
  border:1px dashed rgba(83,112,91,.28);
  border-radius:16px;
  text-align:center;
}

.regional-directory-empty strong{font-size:1rem}
.regional-directory-empty span{font-size:.86rem;color:#6b756f}

@media(max-width:640px){
  [data-plus-directory].directory-nara-style{
    padding-top:14px!important;
  }

  .regional-directory-unified{
    gap:13px;
    margin-bottom:18px;
  }

  .regional-directory-search-panel{
    gap:11px;
    padding:13px;
    border-radius:17px;
  }

  .regional-directory-search-label{
    font-size:.78rem;
  }

  .regional-directory-search-input{
    min-height:44px;
    padding:0 12px;
    border-radius:12px;
  }

  .regional-directory-search-button{
    min-width:68px;
    min-height:44px;
    padding:0 12px;
    border-radius:12px;
    font-size:.85rem;
  }

  .regional-directory-filters{
    grid-template-columns:1fr 1fr;
    gap:7px;
  }
  .regional-directory-filters label:first-child{
    grid-column:1/-1;
  }

  .regional-directory-filters label,
  .regional-directory-list-controls label{
    gap:4px;
    font-size:.68rem;
  }

  .regional-directory-region-fixed,
  .regional-directory-select{
    min-height:39px;
    padding:0 10px;
    border-radius:10px;
    font-size:.8rem;
  }

  .regional-directory-chip{
    min-height:34px;
    padding:0 11px;
    font-size:.72rem;
  }

  .regional-directory-list-controls{
    grid-template-columns:1fr 1fr;
    gap:7px;
  }

  .regional-directory-reset{
    grid-column:1/-1;
    min-height:39px;
    font-size:.76rem;
  }

  .regional-directory-summary{
    font-size:.9rem;
  }

  .regional-directory-results{
    gap:10px!important;
  }
}
