.gsf{
  --gsf-border:rgba(31,31,31,.15);
  --gsf-text:#252525;
  --gsf-muted:#737373;
  --gsf-accent:#a45134;
  --gsf-accent-soft:rgba(164,81,52,.07);
  --gsf-chip:#f6f3f1;
  --gsf-ease:cubic-bezier(.2,.7,.2,1);
  max-width:100%;
  color:var(--gsf-text);
}
.gsf a{color:var(--gsf-text);text-decoration:none;transition:color .18s var(--gsf-ease),background-color .18s var(--gsf-ease),border-color .18s var(--gsf-ease)}
.gsf a:hover{color:var(--gsf-accent);text-decoration:none}

/* Search */
.gsf__search{margin:0 0 1.8rem}
.gsf__search form{position:relative;width:100%;max-width:460px}
.gsf__search input[type="search"]{
  -webkit-appearance:none;appearance:none;box-sizing:border-box;width:100%;min-width:0;height:50px;
  padding:.8rem 3.2rem .8rem 1rem;border:1px solid var(--gsf-border);border-radius:3px;
  background:#fff;color:var(--gsf-text);font:inherit;font-size:16px;line-height:1.2;box-shadow:none;
  transition:border-color .18s var(--gsf-ease),box-shadow .18s var(--gsf-ease),background-color .18s var(--gsf-ease)
}
.gsf__search input[type="search"]::placeholder{color:#9a9a9a;opacity:1}
.gsf__search input[type="search"]:hover{border-color:rgba(31,31,31,.28)}
.gsf__search input[type="search"]:focus{outline:0;border-color:var(--gsf-accent);box-shadow:0 0 0 3px rgba(164,81,52,.10)}
.gsf__search button{
  position:absolute!important;top:3px!important;right:3px!important;display:grid!important;place-items:center!important;
  width:44px!important;height:44px!important;margin:0!important;padding:0!important;border:0!important;border-radius:3px!important;
  background:transparent!important;color:var(--gsf-text)!important;box-shadow:none!important;cursor:pointer!important;
  transition:color .18s var(--gsf-ease),background-color .18s var(--gsf-ease)!important
}
.gsf__search button::before,.gsf__search button::after{content:none!important;display:none!important}
.gsf__search button:hover{color:var(--gsf-accent)!important;background:var(--gsf-accent-soft)!important}
.gsf__search button svg{display:block!important;width:20px!important;height:20px!important;fill:currentColor!important}

/* Full finder: main content first in the DOM, browse rail second. */
.gsf__finder-layout{display:grid;grid-template-columns:minmax(0,3fr) minmax(250px,1fr);gap:2rem;align-items:start}
.gsf__main{min-width:0}.gsf__browse{min-width:0}
.gsf__tabs{display:flex;overflow-x:auto;gap:.3rem;border-bottom:1px solid var(--gsf-border);scrollbar-width:thin;padding:7px 4px 0;margin-top:-7px}
.gsf__tab{
  appearance:none!important;background:transparent!important;border:0!important;outline:0;color:var(--gsf-text);cursor:pointer;
  font:inherit;font-weight:650;padding:.8rem .95rem;white-space:nowrap;border-radius:5px 5px 0 0;box-shadow:none!important;
  transform:translateY(0);
  transition:color .2s var(--gsf-ease),background-color .2s var(--gsf-ease),box-shadow .2s var(--gsf-ease),transform .2s var(--gsf-ease)
}
.gsf__tab:hover{color:var(--gsf-accent)!important;background:rgba(164,81,52,.065)!important;box-shadow:0 5px 14px rgba(31,31,31,.08)!important;transform:translateY(-2px)}
.gsf__tab.is-active{color:var(--gsf-text)!important;background:rgba(164,81,52,.04)!important;box-shadow:inset 0 -3px 0 var(--gsf-accent)!important}
.gsf__tab.is-active:hover{box-shadow:inset 0 -3px 0 var(--gsf-accent),0 5px 14px rgba(31,31,31,.08)!important}
.gsf__tab:focus{outline:0!important}
.gsf__tab:focus-visible{outline:2px solid rgba(164,81,52,.30)!important;outline-offset:2px}
.gsf__panel{padding:1.35rem 0 1.75rem}.gsf__panel[hidden]{display:none}.gsf__panel>h2{margin:.1rem 0 1.15rem;font-size:clamp(1.45rem,2.1vw,2rem)}

.gsf__letters{display:flex;flex-wrap:wrap;gap:.25rem .45rem;align-items:center}.gsf__letters a,.gsf__letters span{display:inline-flex;justify-content:center;min-width:1.4rem;padding:.2rem .1rem;border-radius:3px}.gsf__letters a{color:var(--gsf-accent)}.gsf__letters a:hover{background:var(--gsf-accent-soft)}.gsf__letters .is-empty{opacity:.28}.gsf__letters--full{margin:0 0 1.35rem}
.gsf__az-groups{column-count:3;column-gap:2.2rem}.gsf__az-group{break-inside:avoid;margin:0 0 1.35rem}.gsf__az-group h3{font-size:1rem;margin:0 0 .45rem}.gsf__az-group ul,.gsf__link-list{list-style:none;padding:0;margin:0}.gsf__az-group li,.gsf__link-list li{margin:.25rem 0}.gsf__az-group a,.gsf__link-list a{color:var(--gsf-text);border-radius:3px}.gsf__az-group a{display:inline-block;padding:.2rem .35rem;margin-left:-.35rem}.gsf__az-group a:hover{color:var(--gsf-accent);background:var(--gsf-accent-soft)}.gsf__meta{display:block;font-size:.82em;color:var(--gsf-muted);margin-top:.05rem}
.gsf__link-list{columns:2;column-gap:2rem}.gsf__link-list li{break-inside:avoid;position:relative;padding-left:1rem}.gsf__link-list li::before{content:'›';position:absolute;left:0;top:.2rem;color:var(--gsf-muted);font-weight:700;transition:color .18s var(--gsf-ease),transform .18s var(--gsf-ease)}.gsf__link-list a{display:inline-block;padding:.2rem .35rem;margin-left:-.35rem}.gsf__link-list li:hover::before{color:var(--gsf-accent);transform:translateX(1px)}.gsf__link-list a:hover{color:var(--gsf-accent);background:var(--gsf-accent-soft)}

/* Browse rail */
.gsf__browse>h2{font-size:12px;margin:0 0 .6rem;color:var(--gsf-muted);text-transform:uppercase;letter-spacing:.08em}
.gsf__browse-group{border-top:1px solid var(--gsf-border)}.gsf__browse-group:last-child{border-bottom:1px solid var(--gsf-border)}
.gsf__browse-group>summary{cursor:pointer;font-weight:650;padding:.9rem .15rem;list-style-position:inside;border-radius:3px;transition:color .18s var(--gsf-ease),background-color .18s var(--gsf-ease)}
.gsf__browse-group>summary:hover{background:var(--gsf-accent-soft)}.gsf__browse-group[open]>summary{color:var(--gsf-accent)}
.gsf__browse-body{overflow:hidden;padding:3px .05rem .95rem}
.gsf__browse-group[open] .gsf__browse-body{animation:gsfBrowseIn .18s var(--gsf-ease)}
@keyframes gsfBrowseIn{from{opacity:.25;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
.gsf__chips{display:flex;flex-wrap:wrap;gap:7px;padding:2px 1px 1px}
.gsf__chips a{
  display:inline-flex;align-items:center;min-height:30px;background:var(--gsf-chip);border:1px solid rgba(31,31,31,.09);border-radius:999px;
  padding:6px 10px;font-size:12px!important;line-height:1.15;color:#555
}
.gsf__chips a:hover{border-color:rgba(164,81,52,.35);background:rgba(164,81,52,.085);color:var(--gsf-accent);transform:translateY(-1px)}
.gsf__show-more{
  appearance:none;border:0!important;background:transparent!important;box-shadow:none!important;color:var(--gsf-accent)!important;
  display:inline-flex;align-items:center;gap:.4rem;margin:.7rem 0 0;padding:.25rem .1rem!important;font:inherit;font-size:12px!important;font-weight:650!important;cursor:pointer
}
.gsf__show-more::before,.gsf__show-more::after{content:none!important;display:none!important}
.gsf__show-more:hover{background:transparent!important;color:var(--gsf-text)!important}
.gsf__show-more-icon{display:inline-block;transition:transform .2s var(--gsf-ease)}
.gsf__show-more:not(.is-loading):hover .gsf__show-more-icon{transform:translateY(2px)}
.gsf__show-more.is-loading{opacity:.62;cursor:wait}
.gsf__chip--new{opacity:0;transform:translateY(4px)}
.gsf__chip--new.is-visible{opacity:1;transform:translateY(0)}
.gsf__browse-group--tags{margin-top:.55rem}

/* Archive CTA */
.gsf__panel-cta{clear:both;padding-top:2.1rem;margin-top:1.4rem;border-top:1px solid var(--gsf-border)}
.gsf__cta-button{display:inline-flex;align-items:center;gap:.45rem;padding:.74rem 1rem;border:1px solid var(--gsf-text);border-radius:4px;font-weight:650;line-height:1.2;background:#fff}
.gsf__cta-button:hover{border-color:var(--gsf-accent);color:var(--gsf-accent);background:var(--gsf-accent-soft)}
.gsf__cta-button span{transition:transform .18s var(--gsf-ease)}.gsf__cta-button:hover span{transform:translateX(3px)}

/* Compact / 404 */
.gsf--compact{max-width:920px;margin-inline:auto;text-align:center}
.gsf--compact .gsf__search{margin-bottom:1.6rem}
.gsf--compact .gsf__search form{margin-inline:auto}
.gsf--compact .gsf__letters,.gsf--compact .gsf__quick-links,.gsf--compact .gsf__useful>div{justify-content:center}
.gsf--compact .gsf__compact-block{padding:1.1rem 0;text-align:center}
.gsf--compact .gsf__compact-block h2{margin-top:0}.gsf--compact .gsf__compact-az{margin:1rem 0}.gsf--compact .gsf__compact-az strong{display:block;margin-bottom:.45rem}.gsf--compact .gsf__quick-links{display:flex;flex-wrap:wrap;gap:.35rem .6rem;margin-top:1rem}.gsf--compact .gsf__quick-links span{opacity:.35}.gsf--compact .gsf__full-index-link{margin-top:1rem;text-align:center}.gsf--compact .gsf__useful{margin-top:1rem}.gsf--compact .gsf__useful strong{display:block;margin-bottom:.35rem}.gsf--compact .gsf__useful>div{display:flex;flex-wrap:wrap;gap:.35rem .6rem}.gsf--compact .gsf__useful span{opacity:.35}

.gsf--compact .gsf__letter-button{
  appearance:none;border:0!important;background:transparent!important;box-shadow:none!important;color:var(--gsf-accent)!important;
  display:inline-flex;align-items:center;justify-content:center;min-width:1.55rem;padding:.25rem .18rem!important;border-radius:4px!important;
  font:inherit!important;line-height:1.2!important;cursor:pointer;transition:color .18s var(--gsf-ease),background-color .18s var(--gsf-ease),transform .18s var(--gsf-ease)!important
}
.gsf--compact .gsf__letter-button::before,.gsf--compact .gsf__letter-button::after{content:none!important;display:none!important}
.gsf--compact .gsf__letter-button:hover{background:var(--gsf-accent-soft)!important;transform:translateY(-1px)}
.gsf--compact .gsf__letter-button.is-active{background:var(--gsf-accent)!important;color:#fff!important}
.gsf--compact .gsf__letter-button:focus-visible{outline:2px solid rgba(164,81,52,.30)!important;outline-offset:2px}
.gsf__compact-results{max-width:820px;margin:1.2rem auto .35rem;padding:1.05rem 0 0;border-top:1px solid var(--gsf-border);text-align:left}
.gsf__compact-results-head{display:block;margin-bottom:.85rem}
.gsf__compact-results-title-row{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:.7rem}
.gsf__compact-results-status{font-size:1.6rem;color:#4f4f4f;line-height:1.35;font-weight:500}
.gsf__compact-type-filters{display:flex;flex-wrap:wrap;gap:.38rem;align-items:center}
.gsf__compact-type-filter{appearance:none!important;border:1px solid rgba(31,31,31,.09)!important;background:#f6f3f1!important;color:#555!important;box-shadow:none!important;border-radius:999px!important;padding:.32rem .65rem!important;margin:0!important;font:inherit!important;font-size:.9rem!important;line-height:1.2!important;font-weight:600!important;cursor:pointer;transition:background-color .18s var(--gsf-ease),color .18s var(--gsf-ease),border-color .18s var(--gsf-ease),transform .18s var(--gsf-ease),box-shadow .18s var(--gsf-ease)!important}
.gsf__compact-type-filter::before,.gsf__compact-type-filter::after{content:none!important;display:none!important}
.gsf__compact-type-filter:hover{background:#fff!important;color:var(--gsf-text)!important;border-color:rgba(164,81,52,.22)!important;transform:translateY(-1px);box-shadow:0 4px 10px rgba(31,31,31,.05)!important}
.gsf__compact-type-filter.is-active{background:var(--gsf-text)!important;color:#fff!important;border-color:var(--gsf-text)!important}
.gsf__compact-type-filter:focus-visible{outline:2px solid rgba(164,81,52,.28)!important;outline-offset:2px}
.gsf__compact-results-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem .8rem}
.gsf__compact-results-list li{min-width:0}
.gsf__compact-results-list a{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:.68rem .72rem;border:1px solid rgba(31,31,31,.055);border-radius:6px;background:rgba(255,255,255,.32);transition:background-color .18s var(--gsf-ease),border-color .18s var(--gsf-ease),transform .18s var(--gsf-ease),box-shadow .18s var(--gsf-ease)}
.gsf__compact-results-list a:hover{background:#fff;border-color:rgba(164,81,52,.15);transform:translateY(-1px);box-shadow:0 5px 14px rgba(31,31,31,.055)}
.gsf__compact-result-title{min-width:0;overflow-wrap:anywhere;line-height:1.35;font-size:1.5rem}
.gsf__compact-result-type{flex:0 0 auto;font-size:.9rem;line-height:1.15;color:#555;font-weight:700;text-transform:uppercase;letter-spacing:.04em;background:#f3f0ee;border:1px solid rgba(31,31,31,.12);border-radius:999px;padding:.22rem .42rem;margin-top:.08rem}
.gsf__compact-more{appearance:none;border:0!important;background:transparent!important;box-shadow:none!important;color:var(--gsf-accent)!important;padding:.55rem .1rem!important;margin:.7rem 0 0!important;font:inherit!important;font-size:1rem!important;font-weight:600!important;letter-spacing:.01em;cursor:pointer}
.gsf__compact-more:hover{color:var(--gsf-text)!important;background:transparent!important}
.gsf__compact-more:disabled{opacity:.55;cursor:wait}

@media(max-width:980px){.gsf__finder-layout{grid-template-columns:minmax(0,2.2fr) minmax(220px,1fr)}.gsf__az-groups{column-count:2}}
@media(max-width:760px){
  .gsf__finder-layout{grid-template-columns:1fr}.gsf__main{order:1}.gsf__browse{order:2;margin-top:.75rem}.gsf__tabs{margin-inline:-.25rem;padding-inline:.25rem}
  .gsf__az-groups{column-count:1}.gsf__link-list{columns:1}.gsf__panel{padding-top:1rem}.gsf__search form{max-width:100%}
  .gsf__compact-results-list{grid-template-columns:1fr}.gsf__compact-results-title-row{display:block}.gsf__compact-results-status{display:block;margin-top:.2rem}.gsf__compact-type-filters{gap:.32rem}.gsf__compact-type-filter{font-size:.86rem!important;padding:.34rem .66rem!important}
}
@media(prefers-reduced-motion:reduce){.gsf *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
