
.rps-location-directory{width:100%}
.rps-location-directory-tools{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:54px;flex-wrap:wrap}
.rps-location-directory-search{position:relative;display:flex;align-items:center;width:360px;max-width:100%;color:#727B87}
.rps-location-directory-search i{position:absolute;left:16px;top:50%;transform:translateY(-50%);font-size:12px;pointer-events:none}
.rps-location-directory-search input{width:100%;height:43px;padding:10px 14px 10px 42px;background:#02060c;border:1px solid rgba(255,255,255,.10);border-radius:8px;color:#d7dade;font-size:12px;outline:none}
.rps-location-directory-search input::placeholder{color:#777f89;opacity:1}
.rps-location-directory-search input:focus{border-color:rgba(214,164,58,.60)}
.rps-location-directory-filters{display:inline-flex;align-items:center;gap:2px;padding:4px;background:#07101a;border:1px solid rgba(255,255,255,.10);border-radius:999px;max-width:100%;overflow-x:auto;white-space:nowrap}
.rps-location-directory-filters button{appearance:none;border:0;background:transparent;color:#8d929a;font-size:12px;font-weight:600;line-height:1;padding:10px 16px;border-radius:999px;white-space:nowrap;cursor:pointer;transition:color .2s ease,background .2s ease}
.rps-location-directory-filters button:hover,.rps-location-directory-filters button:focus-visible{background:#d6a43a!important;color:#070b10!important}
.rps-location-directory-filters button.is-active,.rps-location-directory-filters button.is-active:hover{background:#d6a43a!important;color:#070b10!important}
.rps-location-directory-groups{display:flex;flex-direction:column;gap:48px}
.rps-location-directory-group[hidden]{display:none!important}
.rps-location-directory-group-head{display:flex;align-items:flex-start;gap:12px;margin-bottom:24px}
.rps-location-directory-group-head>div{width:100%}
.rps-location-directory-group-title{font-family:Cinzel,serif;margin:0;color:#f4f1e9;font-size:20px;line-height:1.25;display:inline}
.rps-location-directory-group-count{font-size:12px;color:#707884;white-space:nowrap;margin-top:5px;margin-inline-start:10px;display:inline-block;vertical-align:baseline}
.rps-location-directory-group-head:after{content:"";height:1px;flex:1;min-width:30px;margin-top:13px;background:linear-gradient(90deg,rgba(214,164,58,.34),transparent)}
.rps-location-directory-group-description{margin:8px 0 0;color:#7f8791;font-size:12px;line-height:1.6;max-width:640px}
.rps-location-directory-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.rps-location-directory-card{position:relative;display:flex;flex-direction:column;gap:12px;min-height:106px;text-decoration:none!important;border:1px solid rgba(255,255,255,.08);background:#07101c;border-radius:12px;padding:18px;color:inherit;transition:transform .35s cubic-bezier(.22,1,.36,1),border-color .35s ease,background .35s ease,box-shadow .35s ease}
.rps-location-directory-card:hover{transform:translateY(-3px);border-color:rgba(214,164,58,.75);background:#091421;box-shadow:0 16px 30px rgba(0,0,0,.22)}
.rps-location-directory-card-top{display:flex;align-items:center;gap:12px;min-height:34px}
.rps-location-directory-icon{flex:0 0 36px;width:36px;height:36px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;background:rgba(214,164,58,.10);color:#d6a43a;font-size:14px;transition:.3s ease}
.rps-location-directory-card:hover .rps-location-directory-icon{background:#d6a43a;color:#080d14}
.rps-location-directory-copy{display:flex;flex-direction:column;gap:6px;min-width:0}
.rps-location-directory-meta{font-size:12px;line-height:1.35;color:#7f8793}
.rps-location-directory-title{font-family:Cinzel,serif;font-size:14px;font-weight:600;line-height:1.35;color:#f4f1e9;transition:color .3s ease}
.rps-location-directory-card:hover .rps-location-directory-title{color:#d6a43a}
.rps-location-directory-description{font-size:12px;line-height:1.55;color:#8c939d}
.rps-location-directory-arrow{margin-left:auto;color:#d6a43a;font-size:16px;line-height:1;transition:transform .3s ease}
.rps-location-directory-card:hover .rps-location-directory-arrow{transform:translate(2px,-2px)}
.rps-location-directory-card.is-country{min-height:136px;padding:20px}
.rps-location-directory-country-code{font-size:20px;font-weight:700;line-height:1;color:#f1f2f4;letter-spacing:.02em}
.rps-location-directory-card.is-country .rps-location-directory-title{font-size:14px}
.rps-location-directory-card.is-country .rps-location-directory-description{margin-top:1px}
.rps-location-directory-empty{padding:22px;border:1px dashed rgba(255,255,255,.12);border-radius:10px;color:#7f8793;font-size:12px;text-align:center}
.rps-location-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:12px;line-height:1.4}
.rps-location-breadcrumb a{text-decoration:none!important;transition:color .2s ease}
.rps-location-breadcrumb a:hover{color:#d6a43a!important}
.rps-location-breadcrumb-sep{opacity:.55}
@media(max-width:1024px){
  .rps-location-directory-tools{align-items:stretch}
  .rps-location-directory-search{width:100%}
  .rps-location-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:767px){
  .rps-location-directory-tools{margin-bottom:34px}
  .rps-location-directory-filters{width:100%}
  .rps-location-directory-grid{grid-template-columns:1fr}
  .rps-location-directory--international_main .rps-location-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rps-location-directory-group-head{gap:8px}
  .rps-location-directory-card{min-height:92px;padding:16px}
  .rps-location-directory-card.is-country{min-height:124px;padding:16px}
}

/* 2.19.4 breadcrumb readability */
.rps-location-breadcrumb{color:#c7cdd5}.rps-location-breadcrumb a{color:#d4d9df!important}.rps-location-breadcrumb a:hover{color:#e4b94c!important}.rps-location-breadcrumb-sep{color:#7e8792;opacity:1}.rps-location-breadcrumb .is-current{color:#d6a43a}


/* RPS 2.19.7 — County directory card
   Icon + County title on the same visual row; City count sits below title. */
.rps-location-directory-card.is-county{
  min-height:82px;
  flex-direction:row;
  align-items:center;
  gap:12px;
  padding:16px 18px;
}
.rps-location-directory-card.is-county .rps-location-directory-icon{
  flex:0 0 40px;
  width:40px;
  height:40px;
}
.rps-location-directory-card.is-county .rps-location-directory-copy{
  flex:1 1 auto;
  gap:4px;
  justify-content:center;
}
.rps-location-directory-card.is-county .rps-location-directory-title{
  font-size:14px;
  line-height:1.3;
}
.rps-location-directory-card.is-county .rps-location-directory-meta{
  display:block;
  margin:0;
  font-size:12px;
  line-height:1.3;
}
.rps-location-directory-card.is-county .rps-location-directory-arrow{
  margin-left:auto;
  flex:0 0 auto;
}
@media(max-width:767px){
  .rps-location-directory-card.is-county{
    min-height:76px;
    padding:14px 15px;
  }
  .rps-location-directory-card.is-county .rps-location-directory-icon{
    flex-basis:38px;
    width:38px;
    height:38px;
  }
}

.rps-location-directory-card.is-card-only{cursor:default}
