.directory-hero{gap:24px;min-height:0}
.built-hero-art{flex:none;width:clamp(240px,32vw,360px);margin:-34px -30px -34px auto;opacity:0;animation:built-art-in 1.2s cubic-bezier(.22,.7,.2,1) .1s forwards}
.built-hero-art__tilt{transform:perspective(900px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .5s ease-out;will-change:transform}
.built-hero-art__piece{position:relative;animation:built-art-float 10s ease-in-out infinite}
.built-hero-art img{display:block;width:100%;height:auto;aspect-ratio:3/2;pointer-events:none;-webkit-user-drag:none}
.built-hero-art__sheen{position:absolute;inset:0;overflow:hidden;pointer-events:none;-webkit-mask:url(SVG11.PNG) center/100% 100% no-repeat;mask:url(SVG11.PNG) center/100% 100% no-repeat}
.built-hero-art__sheen::after{content:"";position:absolute;top:0;bottom:0;left:-40%;width:30%;background:linear-gradient(100deg,transparent,#ffffff59 50%,transparent);transform:translateX(0) skewX(-12deg);opacity:0;animation:built-art-sheen 12s ease-in-out 2s infinite}
.built-hero-art:not(.is-active) *,.built-hero-art:not(.is-active) *::after{animation-play-state:paused}
@keyframes built-art-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes built-art-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@keyframes built-art-sheen{0%,82%{opacity:0;transform:translateX(0) skewX(-12deg)}86%{opacity:1}96%{opacity:1}100%{opacity:0;transform:translateX(560%) skewX(-12deg)}}
@media(prefers-reduced-motion:reduce){.built-hero-art{opacity:1;animation:none}.built-hero-art__tilt{transform:none;transition:none}.built-hero-art__piece,.built-hero-art__sheen::after{animation:none}.built-hero-art__sheen{display:none}}
.directory-breadcrumb{display:flex;gap:10px;margin:20px 2px;color:#71869a;font-size:13px}
.directory-breadcrumb a{color:#176b9d;font-weight:600}
.directory-breadcrumb a:hover{text-decoration:underline}
.directory-section{padding:clamp(16px,3vw,28px);border:1px solid #dce8f2;border-radius:22px;background:linear-gradient(145deg,#f8fbfe,#edf5fb)}
.directory-heading{display:flex;align-items:end;justify-content:space-between;gap:20px}
.directory-heading h2{margin:6px 0 4px;color:#172c44;font-size:clamp(23px,3vw,30px);letter-spacing:-.04em}
.directory-heading p{margin:0;color:#536b80}
.directory-search{display:flex;align-items:center;gap:8px;width:min(280px,100%);min-height:46px;padding:0 12px;border:1px solid #d6e5f1;border-radius:12px;background:#fff;color:#4382ac}
.directory-search:focus-within{border-color:#388fc0;outline:2px solid #388fc033}
.directory-search span{font-size:23px}
.directory-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#172c44;font:inherit;font-size:13px}
.directory-count{margin:22px 0 10px;color:#60758a;font-size:12px;font-weight:600}
.directory-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.directory-card{display:flex;flex-direction:column;min-width:0;padding:8px 8px 12px;border:1px solid #d6e3ef;border-radius:16px;background:#fff;box-shadow:0 4px 14px #163a5a0d;transition:border-color .2s,box-shadow .2s,transform .2s}
.directory-card:hover,.directory-card:focus-within{border-color:#a9cce3;box-shadow:0 8px 20px #163a5a1a;transform:translateY(-2px)}
.directory-preview{display:grid;place-items:center;overflow:hidden;width:100%;aspect-ratio:16/9;border:1px solid #e3ebf2;border-radius:10px;background:#edf3f8}
.directory-preview img{display:block;width:100%;height:100%;object-fit:cover;object-position:top}
.directory-preview-error{padding:10px;color:#60758a;font-size:12px;text-align:center}
.directory-card h3{margin:15px 8px;overflow-wrap:anywhere;color:#172c44;font-size:16px;line-height:1.3}
.directory-card h3 span{color:#2587be}
.directory-card a{align-self:flex-end;margin:auto 4px 0;padding:7px 11px;border-radius:8px;background:#18344e;color:#fff;font-size:12px;font-weight:600}
.directory-card a:hover{background:#24577c}
.directory-card a:focus-visible{outline:2px solid #247fb8;outline-offset:3px}
.directory-empty,.directory-source{color:#60758a;font-size:13px}
.directory-source{margin:24px 0 0;line-height:1.6}
.directory-source a{color:#176b9d;text-decoration:underline}
@media(max-width:900px){.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.directory-heading{align-items:stretch;flex-direction:column}.directory-search{width:100%}.built-hero-art{width:min(260px,78%);margin:-4px -34px -30px auto}.directory-hero{align-items:stretch;gap:0}}
@media(max-width:480px){.directory-grid{gap:8px}.directory-card{padding:6px 6px 10px}.directory-card h3{margin:12px 4px;font-size:14px}.directory-section{padding:14px}}
@media(prefers-reduced-motion:reduce){.directory-card{transition:none}.directory-card:hover,.directory-card:focus-within{transform:none}}
