.directory-page{min-height:100vh;background:var(--public-page-background);color:var(--ink)}
.directory-shell{width:min(1320px,var(--public-layout-width));margin-inline:auto}
.directory-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:9px;min-height:48px;padding:9px 0;color:#77736e;font-size:13px;line-height:1.35}
.directory-breadcrumb a{color:inherit;text-decoration:none}.directory-breadcrumb a:hover{color:#a26117;text-decoration:underline}.directory-breadcrumb [aria-current]{color:#28231d;font-weight:700}.directory-breadcrumb-separator{color:#b7a58d;font-size:18px;line-height:1}
.directory-hero{display:flex;justify-content:center;min-height:230px;margin:12px 0 0;overflow:hidden;border-radius:26px;background:var(--pill-selected)}
.directory-hero-copy{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;padding:32px 24px;text-align:center}
.directory-hero h1{margin:0 0 9px;color:#171613;font-size:clamp(32px,4vw,var(--marketing-section-title-size));line-height:1.12;letter-spacing:var(--marketing-section-title-spacing);font-weight:var(--marketing-section-title-weight)}
.directory-hero p{max-width:580px;margin:0 auto;color:#5e5851;font-size:15px;line-height:1.5}
.directory-hero-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:20px}
.directory-filter-link{gap:10px}
.directory-cities,.directory-listing{padding-top:38px}
.directory-cities+.directory-listing{margin-top:28px}
.directory-section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.directory-section-heading h2{margin:0;color:#1f1d1a;font-size:21px;line-height:1.3;letter-spacing:-.35px}.directory-section-heading>span{color:#77716a;font-size:13px;font-weight:600;white-space:nowrap}
.directory-city-list{display:flex;flex-wrap:wrap;gap:9px}.directory-city-link{gap:9px}.directory-city-link strong{font-size:inherit;font-weight:700}.directory-city-link>span{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--pill-language);color:var(--pill-muted);font-size:11px}
.directory-listing{margin-top:24px;padding-bottom:64px}.directory-listing .directory-section-heading{margin-bottom:17px}.directory-salon-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:0;padding:0;overflow:visible}.directory-salon-grid--city{grid-template-columns:repeat(3,minmax(0,1fr))}.directory-salon-grid>.salon-card{min-width:0;flex:none;color:inherit;text-decoration:none}.directory-salon-placeholder{display:grid;place-items:center;width:100%;height:220px;padding:20px;border-radius:14px;background:var(--pill-selected);color:var(--pill-muted);font-size:18px;font-weight:700;text-align:center}
.directory-hero + .directory-listing{margin-top:44px}
.directory-empty{grid-column:1/-1;padding:38px;border-radius:20px;background:var(--pill-surface)}.directory-empty h3{margin:0 0 7px;font-size:21px}.directory-empty p{margin:0 0 18px;color:var(--pill-muted)}.directory-empty a{color:var(--pill-gold-hover);font-weight:700;text-decoration:none}.directory-more{display:flex;width:max-content;margin:18px auto 0}
@media(max-width:1100px){.directory-salon-grid,.directory-salon-grid--city{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.directory-shell{width:min(100% - 36px,var(--public-layout-width))}.directory-hero{min-height:210px;border-radius:22px}.directory-hero-copy{padding:28px 20px}.directory-cities,.directory-listing{padding-top:30px}.directory-listing{margin-top:18px}.directory-hero + .directory-listing{margin-top:30px}.directory-cities + .directory-listing{margin-top:18px}.directory-salon-grid,.directory-salon-grid--city{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}}
@media(max-width:520px){.directory-breadcrumb{min-height:42px;font-size:12px}.directory-hero{min-height:0;margin-top:8px}.directory-hero-copy{padding:25px 18px}.directory-hero h1{font-size:30px}.directory-hero p{font-size:14px}.directory-hero-actions{gap:8px;margin-top:16px}.directory-section-heading h2{font-size:19px}.directory-city-list{gap:7px}.directory-salon-grid,.directory-salon-grid--city{grid-template-columns:1fr;gap:12px}.directory-salon-placeholder{height:220px}.directory-listing{padding-bottom:44px}}
