.directory { padding-block: clamp(1rem, 4vw, 3rem) 5rem; }
.directory-cover { display: grid; grid-template-columns: 1fr .85fr; background: var(--pilates-petrol-dark); color: var(--pilates-paper); border-radius: 4px; overflow: hidden; }
.directory-lead { padding: clamp(1.6rem, 5vw, 5rem); align-self: center; }
.directory-lead .eyebrow { color: #ead6ba; }
.directory-lead h1 { color: inherit; line-height: .98; margin: 1.4rem 0; }
.directory-lead h1 em { color: #edcfab; }
.directory-lead > p:not(.eyebrow) { max-width: 39ch; line-height: 1.6; }
.directory-lead a { display: inline-block; padding: .5rem 0; color: white; text-underline-offset: .4em; }
.directory-cover img { width: 100%; height: 100%; min-height: 0; object-fit: cover; }
#directorio { padding-top: clamp(2.5rem, 6vw, 5rem); scroll-margin-top: 4rem; }
.directory-guide summary { color: var(--pilates-petrol-dark); padding: .6rem 0; }
.directory-guide > p { max-width: 75ch; }
.directory-filters { display: grid; grid-template-columns: minmax(0,1.3fr) minmax(0,1fr) minmax(0,1fr) auto; gap: 1rem; align-items: end; padding: 1.3rem; margin: 1rem 0; background: var(--pilates-paper); border: 1px solid var(--pilates-line); }
.directory-filters label { font-size: .87rem; font-weight: 600; }
.directory-filters :is(input, select, button) { min-height: 46px; margin-top: .35rem; }
.directory #result-count { color: var(--pilates-muted); font-size: .95rem; }
.directory .training-grid { align-items: start; }
.directory .training-card { border-radius: 4px; border-top: 3px solid var(--pilates-petrol); }
.profile-rank { display: flex; align-items: center; gap: .65rem; color: var(--pilates-terracotta); font-size: .8rem; font-weight: 600; }
.profile-rank b { font: 2rem Georgia, serif; }
.directory .training-heading { align-items: start; margin-bottom: 1rem; }
.directory .training-heading h3 { font: 400 clamp(1.5rem, 3vw, 2.1rem)/1.12 Georgia, serif; margin: 0 0 .3rem; }
.directory .training-heading p { margin: 0; color: var(--pilates-muted); }
.profile-metrics { display: grid; grid-template-columns: 1fr 1fr; border-block: 1px solid var(--pilates-line); margin: 1rem 0; }
.profile-metrics div { padding: .85rem .5rem .85rem 0; display: flex; flex-direction: column-reverse; }
.profile-metrics dt { font-size: .8rem; color: var(--pilates-muted); font-weight: normal; }
.profile-metrics dd { font: 1.65rem Georgia, serif; color: var(--pilates-petrol-dark); margin: 0; }
.directory #pagination:not([hidden]) { display: flex; justify-content: center; align-items: center; gap: 1rem; margin-top: 2rem; }
.directory .training-card summary { color: var(--pilates-petrol-dark); }
@media (max-width: 767px) {
  .directory-cover { grid-template-columns: 1fr; }
  .directory-cover img { height: clamp(8rem, 34vw, 14rem); }
  .directory-filters { grid-template-columns: 1fr; gap: .65rem; }
}
.directory-studies { display:flex; gap:.4rem; flex-wrap:wrap; list-style:none; padding:0; }
.directory-studies li { background:#eaf1ec; color:#244b3c; padding:.3rem .7rem; border-radius:1rem; font-size:.88rem; overflow-wrap:anywhere; }
.directory-filters select { max-width:100%; }
