.directory-page{background:#f5f5f7;color:#1d1d1f;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.directory{--ink:#1d1d1f;--muted:#6e6e73;--accent:#654397;max-width:1320px;margin:auto;padding:0 40px 80px}
.directory-header{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;padding:76px 0 60px}
.directory-eyebrow{font-size:11px;font-weight:650;letter-spacing:.15em;color:var(--accent);margin-bottom:22px}
.directory h1{font-size:clamp(40px,5vw,68px);line-height:1.04;font-weight:650;letter-spacing:-.055em;margin:0 0 22px}
.directory-intro{font-size:25px;line-height:1.35;letter-spacing:-.025em;color:var(--muted)}
.directory-verify{display:flex;flex-direction:column;gap:9px;padding:0 0 7px;text-decoration:none;color:var(--muted);font-size:13px;line-height:1.6;white-space:nowrap}
.directory-verify strong{color:var(--accent);font-size:15px;font-weight:550}.directory-verify strong span{margin-left:16px}
.directory-toolbar{display:flex;align-items:flex-end;gap:20px;padding:26px 0 20px;border-top:1px solid #d8d8dc}
.directory-toolbar label{display:block;color:#515157;font-size:12px;margin-bottom:9px;font-weight:550}
.directory-search-wrap{flex:1}.directory-sort-wrap{width:218px}
.directory input,.directory select{width:100%;height:48px;font:inherit;font-size:14px;border:1px solid #d6d6dc;border-radius:12px;background:#fff;color:var(--ink);padding:0 16px;box-shadow:0 1px 2px #00000003}
.directory input::placeholder{color:#76767d}.directory select{cursor:pointer;padding-right:30px}
.directory :is(a,button,input,select):focus-visible{outline:3px solid #8e68c1;outline-offset:4px}
#directory-count{font-size:12px;color:var(--muted);margin:0 0 24px}
.directory-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;align-items:stretch}
.directory-card{background:#fff;border:1px solid #ebebee;border-radius:22px;overflow:hidden;display:flex;flex-direction:column;text-decoration:none;color:var(--ink);box-shadow:0 3px 14px #00000003;transition:transform .25s,box-shadow .25s}
.directory-card:hover{transform:translateY(-4px);box-shadow:0 10px 26px #2113360c}.directory-card[hidden]{display:none}
.directory-image{aspect-ratio:1;background:#f8f8f8;overflow:hidden}.directory-image img{width:100%;height:100%;object-fit:contain;display:block;transition:transform .4s}.directory-card:hover img{transform:scale(1.035)}
.directory-card-copy{padding:23px 22px 22px;display:flex;flex-direction:column;flex:1;gap:12px}
.directory-card h2{font-family:inherit;font-size:17px;line-height:1.35;font-weight:600;letter-spacing:-.025em;margin:0;min-height:46px}
.directory-price{font-size:16px;font-weight:500;letter-spacing:-.02em}.directory-description{font-size:12px;line-height:1.6;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.directory-card-link{font-size:13px;color:var(--accent);display:flex;align-items:center;justify-content:space-between;padding-top:20px;margin-top:auto}.directory-card-link span{font-size:19px}
#directory-empty{padding:70px 24px;text-align:center;border:1px solid #ddd;border-radius:20px;background:#fff}#directory-empty h2{font-size:24px;margin-bottom:12px}#directory-empty p{font-size:14px;color:var(--muted)}#directory-clear{border:0;background:#654397;color:white;padding:13px 23px;border-radius:24px;font:inherit;font-size:14px;margin-top:22px;cursor:pointer}
.directory-page footer{margin-top:0!important}.directory-page nav a{min-height:40px;display:inline-flex;align-items:center}.directory-page #nav-burger{min-width:44px;min-height:44px}
@media(max-width:1100px){.directory-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.directory-page #nav-links{display:none!important}.directory-page #nav-burger{display:flex!important;align-items:center;justify-content:center}.directory-page #nav-drawer.open{display:flex!important}}
@media(max-width:800px){.directory{padding:0 24px 56px}.directory-header{padding:48px 0 38px;gap:28px;align-items:flex-start;flex-direction:column}.directory-intro{font-size:22px}.directory-verify{gap:3px}.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.directory-card-copy{padding:18px}.directory-card h2{font-size:16px}}
@media(max-width:440px){.directory{padding-left:16px;padding-right:16px}.directory-toolbar{gap:14px;flex-direction:column;align-items:stretch}.directory-sort-wrap{width:100%}.directory-grid{gap:12px}.directory-card{border-radius:17px}.directory-card-copy{padding:14px 12px}.directory-card h2{font-size:14px;min-height:57px}.directory-description{font-size:11px}.directory-card-link{font-size:12px}.directory-price{font-size:15px}}
@media(prefers-reduced-motion:reduce){.directory-card,.directory-image img{transition:none}.directory-card:hover,.directory-card:hover img{transform:none}}
