:root{--dir-bg:#080818;--dir-surface:#111125;--dir-surface-2:#15152d;--dir-gold:#10b981;--dir-gold-light:#34d399;--dir-text:#f0f0f5;--dir-muted:#9292ad;--dir-dim:#64647f;--dir-line:#ffffff17}*{box-sizing:border-box}body{background:var(--dir-bg);color:var(--dir-text);margin:0;font-family:Inter,sans-serif}.container{width:min(1200px,92%);margin-inline:auto}.skip-link{z-index:99;background:var(--dir-gold);color:#000;border-radius:4px;padding:.5rem 1rem;font-weight:700;text-decoration:none;position:absolute;top:1rem;left:-999px}.skip-link:focus{left:1rem}.site-header{z-index:50;backdrop-filter:blur(14px);border-bottom:1px solid var(--dir-line);background:#080818e0;position:sticky;top:0}.nav-inner{justify-content:space-between;align-items:center;height:68px;display:flex}.nav-logo{color:#fff;align-items:center;gap:.6rem;font-size:1.05rem;text-decoration:none;display:inline-flex}.nav-logo span{background:linear-gradient(135deg, var(--dir-gold), var(--dir-gold-light));color:#080818;border-radius:6px;place-items:center;width:34px;height:34px;font-size:.88rem;font-weight:800;display:grid}.nav-logo b{color:var(--dir-gold-light)}.nav-links{align-items:center;gap:1.25rem;display:flex}.nav-links a{color:var(--dir-muted);font-size:.84rem;font-weight:600;text-decoration:none;transition:color .2s}.nav-links a:hover,.nav-links a.active{color:#fff}.nav-cta{border-radius:5px;padding:.45rem .85rem;background:linear-gradient(135deg, var(--dir-gold), var(--dir-gold-light))!important;color:#080818!important;font-weight:700!important}.nav-toggle{cursor:pointer;background:0 0;border:0;padding:.5rem;display:none}.nav-toggle span{background:#fff;border-radius:1px;width:22px;height:2px;margin:4px 0;display:block}.page-hero{border-bottom:1px solid var(--dir-line);text-align:center;background:#101024;padding:72px 0 56px}.breadcrumb{color:var(--dir-dim);flex-wrap:wrap;justify-content:center;gap:.48rem;margin-bottom:1.25rem;font-size:.72rem;display:flex}.breadcrumb a{color:var(--dir-dim);text-decoration:none}.breadcrumb a:hover{color:var(--dir-gold-light)}.page-hero h1{color:#fff;letter-spacing:-.03em;max-width:900px;margin:0 auto;font-size:clamp(2rem,4.7vw,3.2rem);font-weight:800;line-height:1.15}.page-hero p{max-width:620px;color:var(--dir-muted);margin:1rem auto 0;font-size:.92rem;line-height:1.6}.directory-section{padding:64px 0 88px}.directory-toolbar{grid-template-columns:1fr auto;align-items:end;gap:2.5rem;margin-bottom:1.5rem;display:grid}.section-kicker{color:var(--dir-gold);letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:.6rem;margin:0 0 .75rem;font-size:.64rem;font-weight:800;display:flex}.section-kicker>span{background:var(--dir-gold);width:28px;height:2px}.directory-toolbar h2,.sector-callout h2,.link-section h2{color:#fff;margin:0;font-size:1.25rem;font-weight:800}.directory-toolbar>div>p:last-child{color:var(--dir-muted);margin:.35rem 0 0;font-size:.78rem}.directory-controls{grid-template-columns:230px 145px;gap:.7rem;display:grid}.directory-controls label{color:var(--dir-dim);text-transform:uppercase;letter-spacing:.04em;font-size:.58rem;font-weight:800}.directory-controls input,.directory-controls select{border:1px solid var(--dir-line);background:var(--dir-surface);width:100%;height:42px;color:var(--dir-text);font:inherit;border-radius:6px;outline:none;margin-top:.35rem;padding:0 .75rem;font-size:.72rem;display:block}.directory-controls input:focus,.directory-controls select:focus{border-color:var(--dir-gold)}.business-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:1rem;display:grid}.business-card{border:1px solid var(--dir-line);background:var(--dir-surface);border-radius:10px;transition:transform .25s,border-color .25s;overflow:hidden;box-shadow:0 18px 45px -35px #000}.business-card:hover{border-color:#d4a8444d;transform:translateY(-2px)}.business-card[hidden]{display:none}.business-photo{aspect-ratio:16/10;background:#1a1a31;display:block;position:relative;overflow:hidden}.business-photo img{object-fit:cover;width:100%;height:100%;transition:transform .35s}.business-card:hover .business-photo img{transform:scale(1.03)}.business-photo>span{color:#fff;background:#080818d1;border-radius:4px;padding:.24rem .42rem;font-size:.55rem;position:absolute;bottom:.55rem;right:.55rem}.business-body{padding:1rem}.business-tags,.business-chips{flex-wrap:wrap;gap:.35rem;display:flex}.business-tags span,.business-chips span{color:var(--dir-gold);border:1px solid #d4a84438;border-radius:999px;padding:.22rem .45rem;font-size:.55rem;font-weight:600}.business-card h3{margin:.62rem 0 .35rem;font-size:1.05rem;font-weight:700}.business-card h3 a{color:#fff;text-decoration:none}.business-card h3 a:hover{color:var(--dir-gold-light)}.business-rating{align-items:center;gap:.3rem;font-size:.68rem;display:flex}.business-rating>span{color:var(--dir-gold)}.business-rating small{color:var(--dir-dim)}.business-card address{min-height:2.6em;color:var(--dir-muted);margin:.55rem 0;font-size:.68rem;font-style:normal;line-height:1.5}.business-chips{margin:.75rem 0}.business-actions{border-top:1px solid #ffffff0f;grid-template-columns:1fr 1.35fr;gap:.5rem;margin-top:.9rem;padding-top:.75rem;display:grid}.business-primary,.gold-button{background:linear-gradient(135deg, var(--dir-gold), var(--dir-gold-light));color:#090918;text-align:center;white-space:nowrap;border-radius:5px;justify-content:center;align-items:center;padding:.52rem .55rem;font-size:.63rem;font-weight:800;text-decoration:none;display:inline-flex}.business-directions{color:#3498db;text-align:center;white-space:nowrap;background:#3498db1f;border:1px solid #3498db4d;border-radius:5px;justify-content:center;align-items:center;padding:.52rem .55rem;font-size:.63rem;font-weight:800;text-decoration:none;display:inline-flex}.business-directions:hover{background:#3498db40;border-color:#3498db}.empty-state,.no-results{border:1px solid var(--dir-line);background:var(--dir-surface);text-align:center;border-radius:10px;padding:2.5rem}.empty-state p,.no-results{color:var(--dir-muted);margin:0 0 1rem;font-size:.9rem}.empty-state a{color:var(--dir-gold);font-weight:800;text-decoration:none}.sector-callout{border:1px solid var(--dir-line);background:var(--dir-surface);border-radius:9px;margin-top:2.5rem;padding:1.8rem}.sector-callout>p:not(.section-kicker){color:var(--dir-muted);margin:.65rem 0 1rem;font-size:.75rem}.sector-callout>div{flex-wrap:wrap;gap:.65rem;display:flex}.outline-button{border:1px solid var(--dir-line);color:#fff;border-radius:5px;padding:.58rem .78rem;font-size:.64rem;font-weight:800;text-decoration:none}.link-section{margin-top:2rem}.link-section h2{margin-bottom:.8rem}.link-section>div{flex-wrap:wrap;gap:.4rem;display:flex}.link-section a{border:1px solid var(--dir-line);background:var(--dir-surface);color:var(--dir-muted);border-radius:5px;padding:.42rem .62rem;font-size:.62rem;text-decoration:none}.link-section a:hover{color:var(--dir-gold-light);border-color:#d4a84459}.publication{border-top:1px solid var(--dir-line);border-bottom:1px solid var(--dir-line);color:var(--dir-dim);background:#0d0d21;padding:.8rem 0;font-size:.58rem}.publication .container{flex-wrap:wrap;justify-content:space-between;gap:1rem;display:flex}.site-footer{border-top:1px solid var(--dir-line);background:#060613;padding:48px 0 28px}.footer-grid{grid-template-columns:1.8fr 1fr 1fr 1fr;gap:2rem;margin-bottom:2rem;display:grid}.footer-brand p{color:var(--dir-dim);max-width:320px;font-size:.74rem;line-height:1.6}.footer-grid h2{color:#fff;text-transform:uppercase;letter-spacing:.08em;margin:0 0 .8rem;font-size:.74rem}.footer-grid a{color:var(--dir-muted);margin-bottom:.45rem;font-size:.72rem;text-decoration:none;display:block}.footer-grid a:hover{color:#fff}.footer-bottom{color:var(--dir-dim);border-top:1px solid var(--dir-line);padding-top:1.2rem;font-size:.65rem}.back-top{background:var(--dir-surface-2);border:1px solid var(--dir-line);color:#fff;z-index:40;border-radius:50%;place-items:center;width:34px;height:34px;font-size:.9rem;text-decoration:none;display:grid;position:fixed;bottom:1.2rem;right:1.2rem}@media (width<=900px){.directory-toolbar{grid-template-columns:1fr}.business-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid{grid-template-columns:1fr 1fr}}@media (width<=620px){.page-hero{padding:48px 0 36px}.directory-section{padding:40px 0 60px}.directory-controls,.business-grid,.footer-grid{grid-template-columns:1fr}.publication .container{flex-direction:column}.nav-links{display:none}.nav-toggle{display:block}}
