:root{--ink:#070908;--panel:#11130f;--bone:#f1eee3;--muted:#aaa99f;--olive:#d7ddaa;--clay:#965333;--line:rgba(241,238,227,.15);font-family:Inter,Arial,sans-serif;color:var(--bone);background:var(--ink);font-synthesis:none}
*{box-sizing:border-box}
html{background:var(--ink);scroll-behavior:smooth}
body{margin:0;min-width:320px;background:var(--ink)}
button,input{font:inherit}
a{color:inherit}
[hidden]{display:none!important}
.directory-page{min-height:100vh;overflow:hidden;background:linear-gradient(rgba(215,221,170,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(215,221,170,.025) 1px,transparent 1px),radial-gradient(circle at 84% 8%,rgba(215,221,170,.11),transparent 28rem),radial-gradient(circle at 12% 28%,rgba(150,83,51,.1),transparent 24rem),var(--ink);background-size:64px 64px,64px 64px,auto,auto,auto}
.directory-header,.directory-hero,.directory-tools,.result-heading,.directory-layout,.directory-pagination,.directory-footer,.empty-state{width:min(1420px,calc(100% - 72px));margin-inline:auto}
.directory-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;min-height:68px;border-bottom:1px solid var(--line)}
.wordmark{display:inline-flex;align-items:center;justify-self:start;gap:11px;text-decoration:none;font-size:17px;font-weight:900;letter-spacing:-.04em}
.wordmark i{width:9px;height:9px;border-radius:50%;background:var(--olive);box-shadow:0 0 20px rgba(215,221,170,.45)}
.directory-header>p,.eyebrow,.company,.result-heading,.directory-stats,.directory-footer{font-family:"Courier New",monospace;text-transform:uppercase}
.directory-header>p{margin:0;color:var(--muted);font-size:11px;font-weight:750;letter-spacing:.18em}
.header-action{justify-self:end;border:1px solid rgba(241,238,227,.28);border-radius:999px;padding:13px 20px;text-decoration:none;font:800 11px/1 "Courier New",monospace;letter-spacing:.1em;text-transform:uppercase;transition:.2s}
.header-action:hover{border-color:var(--olive);background:var(--olive);color:var(--ink)}
.directory-hero{padding-block:clamp(38px,4vw,58px) 28px}
.eyebrow{margin:0 0 16px;color:var(--olive);font-size:10px;font-weight:850;letter-spacing:.18em}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.55fr);align-items:end;gap:clamp(48px,8vw,130px)}
.hero-grid h1{margin:0;max-width:850px;font-size:clamp(46px,5.3vw,76px);font-weight:900;letter-spacing:-.075em;line-height:.86}
.hero-grid h1 em{color:var(--olive);font-style:normal}
.hero-copy p{margin:0;color:var(--bone);font-size:16px;line-height:1.55}
.hero-copy span{display:block;margin-top:18px;color:#85887e;font:700 11px/1.55 "Courier New",monospace;letter-spacing:.07em;text-transform:uppercase}
.directory-stats{display:flex;gap:34px;margin-top:28px;padding-top:14px;border-top:1px solid var(--line);color:#85877f;font-size:9px;letter-spacing:.12em}
.directory-stats strong{margin-right:7px;color:var(--bone);font-size:15px}
.directory-tools{position:sticky;z-index:10;top:0;display:grid;gap:12px;padding-block:13px;border-block:1px solid var(--line);background:rgba(7,9,8,.91);backdrop-filter:blur(18px)}
.directory-search{display:grid;grid-template-columns:150px 1fr;align-items:center}
.directory-search>span{color:#898b83;font:800 10px/1 "Courier New",monospace;letter-spacing:.15em;text-transform:uppercase}
.directory-search input{width:100%;border:0;outline:0;background:transparent;color:var(--bone);font-size:20px}
.directory-search input::placeholder{color:#666860}
.filter-row{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none}
.filter-row::-webkit-scrollbar{display:none}
.filter-row button{flex:0 0 auto;border:1px solid var(--line);border-radius:999px;padding:9px 14px;background:rgba(255,255,255,.015);color:#a9aba1;cursor:pointer;font-size:11px;transition:.2s}
.filter-row button:hover,.filter-row button.is-active{border-color:var(--olive);background:var(--olive);color:var(--ink)}
.result-heading{display:flex;justify-content:space-between;gap:24px;padding-block:18px 12px;color:#898b83;font-size:9px;letter-spacing:.12em}
.result-heading p{margin:0;color:var(--bone)}
.directory-layout{display:grid;grid-template-columns:minmax(0,3fr) minmax(250px,1fr);align-items:start;gap:18px;padding-bottom:28px}
.directory-grid{display:grid;min-width:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.directory-card,.listing-invitation{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:linear-gradient(145deg,rgba(215,221,170,.07),transparent 38%),rgba(17,19,15,.86);box-shadow:0 18px 44px rgba(0,0,0,.22);transition:border-color .18s,transform .18s}
.directory-card:hover,.listing-invitation:hover{border-color:rgba(215,221,170,.46);transform:translateY(-4px)}
.portrait{position:relative;aspect-ratio:4/5;overflow:hidden;background:#171a16}
.portrait:after{position:absolute;inset:0;content:"";background:linear-gradient(180deg,transparent 52%,rgba(7,9,8,.84) 100%)}
.portrait img{width:100%;height:100%;object-fit:cover;object-position:center top;filter:saturate(.78) contrast(1.03);transition:filter .22s,transform .6s}
.directory-card:hover .portrait img{filter:saturate(1) contrast(1.03);transform:scale(1.025)}
.portrait>span{position:absolute;z-index:1;right:12px;bottom:11px;border:1px solid rgba(241,238,227,.24);border-radius:999px;padding:8px 10px;background:rgba(7,9,8,.72);font:700 9px/1 "Courier New",monospace;letter-spacing:.05em;text-transform:uppercase;backdrop-filter:blur(9px)}
.card-body{display:flex;min-height:0;flex-direction:column;padding:22px}
.company{margin:0 0 8px;color:var(--olive);font-size:9px;font-weight:850;letter-spacing:.13em}
.card-body h2,.listing-invitation h2{margin:0;font-size:26px;font-weight:760;letter-spacing:-.045em;line-height:1.05}
.card-flip{position:relative;height:142px;perspective:1100px;transition:height .42s cubic-bezier(.2,.72,.2,1)}
.card-flip.is-flipped{height:292px}
.card-flip-inner{position:relative;height:100%;transform-style:preserve-3d;transition:transform .48s cubic-bezier(.2,.72,.2,1)}
.card-flip.is-flipped .card-flip-inner{transform:rotateY(180deg)}
.card-face{position:absolute;inset:0;display:flex;min-width:0;flex-direction:column;backface-visibility:hidden;-webkit-backface-visibility:hidden}
.card-face-back{transform:rotateY(180deg)}
.card-face-front .tags{margin-top:14px}
.card-face-back .tags{margin-top:10px}
.profile-location{display:flex;align-items:center;gap:6px;margin:8px 0 0;color:#aeb0a5;font-size:11px;line-height:1.25}
.profile-location i{color:var(--olive);font-size:14px}
.bio{margin:11px 0 0;color:#c3c2b8;font-size:13px;line-height:1.45}
.bio-toggle{display:flex;width:100%;min-height:38px;align-items:center;justify-content:center;gap:8px;margin-top:14px;border:1px solid rgba(241,238,227,.26);border-radius:999px;background:transparent;color:var(--bone);font:850 10px/1 "Courier New",monospace;letter-spacing:.07em;text-transform:uppercase;cursor:pointer;transition:border-color .18s,background .18s,color .18s}
.bio-toggle i{color:var(--olive);font-size:15px}
.bio-toggle:hover,.bio-toggle:focus-visible{border-color:var(--olive);background:rgba(215,221,170,.09);outline:none}
.card-face-back .bio-toggle{margin-top:auto}
.tags{display:flex;flex-wrap:wrap;gap:5px}
.tags span{border:1px solid rgba(215,221,170,.17);border-radius:999px;padding:6px 9px;color:#b8baa5;font-size:9px}
.card-body>a,.website-pending{display:flex;align-items:center;justify-content:center;min-height:48px;margin-top:12px;border-radius:999px;font:850 10px/1 "Courier New",monospace;letter-spacing:.07em;text-align:center;text-decoration:none;text-transform:uppercase}
.card-body>a{background:var(--bone);color:var(--ink)}
.card-body>a:hover{background:var(--olive)}
.card-body>a span{margin-left:8px;font-size:16px}
.website-pending{border:1px solid var(--line);color:#777a70}
.listing-invitation{display:flex;min-height:100%;flex-direction:column;justify-content:space-between;padding:32px;background:radial-gradient(circle at 86% 4%,rgba(215,221,170,.1),transparent 34%),rgba(15,17,14,.97)}
.directory-side-cta{position:sticky;top:112px;min-height:540px;max-height:calc(100vh - 136px);border-left:5px solid #fff;border-radius:0 18px 18px 0}
.listing-invitation h2{max-width:280px;font-size:38px;line-height:.98}
.side-cta-content>.eyebrow{margin-bottom:22px;font-size:10px}
.side-cta-content h2:after{display:block;width:48px;margin-top:24px;border-top:3px solid #fff;content:""}
.side-cta-promise{display:grid;grid-template-columns:36px 1fr;align-items:start;gap:14px;margin:22px 0 18px;color:#deded6;font-size:15px;line-height:1.5}
.side-cta-promise i{color:#fff;font-size:31px;line-height:1}
.side-cta-description{margin:0;color:#c4c4bc;font-size:14px;line-height:1.55}
.side-cta-includes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:24px;padding-top:8px}
.side-cta-includes span{display:grid;justify-items:center;gap:9px;color:#d0d1c7;font-size:10.5px;line-height:1.25;text-align:center}
.side-cta-includes i{color:#d6c5a6;font-size:25px}
.side-cta-action{margin-top:28px}
.side-cta-action>a{display:flex;align-items:center;justify-content:center;gap:10px;min-height:62px;border-radius:8px;background:#7f873e;color:#fff;font:850 12px/1 "Courier New",monospace;letter-spacing:.05em;text-align:center;text-decoration:none;text-transform:uppercase;box-shadow:0 15px 28px rgba(0,0,0,.24);transition:background .18s,transform .18s}
.side-cta-action>a:hover{background:#9aa354;transform:translateY(-2px)}
.side-cta-action>a i{font-size:17px}
.side-cta-action p{margin:15px 0 0;color:#aeb0a7;font-size:11.5px;text-align:center}
.empty-state{margin-bottom:80px;border:1px solid var(--line);border-radius:28px;padding:90px;text-align:center}
.empty-state h2{margin:0;font-size:34px}
.empty-state button{margin-top:26px;border:1px solid var(--line);border-radius:999px;padding:12px 18px;background:transparent;color:var(--bone);cursor:pointer}
.directory-pagination{display:flex;align-items:center;justify-content:center;gap:9px;padding:4px 0 54px}
.directory-pagination button{min-width:44px;min-height:44px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.02);color:var(--muted);cursor:pointer;font:800 10px/1 "Courier New",monospace;letter-spacing:.08em;text-transform:uppercase}
.directory-pagination>button{padding-inline:16px}
.directory-pagination button:hover,.directory-pagination button.is-active{border-color:var(--olive);background:var(--olive);color:var(--ink)}
.directory-pagination button:disabled{cursor:not-allowed;opacity:.35}
.page-numbers{display:flex;gap:7px}
.directory-pagination>span{position:absolute;overflow:hidden;width:1px;height:1px;clip:rect(0 0 0 0)}
.directory-footer{display:flex;justify-content:space-between;gap:30px;padding-block:28px 38px;border-top:1px solid var(--line);color:#85877f;font-size:10px;letter-spacing:.11em}
.directory-footer strong{color:var(--bone)}
@media(max-width:1120px){.directory-layout{grid-template-columns:minmax(0,2fr) minmax(250px,1fr)}.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.hero-grid{grid-template-columns:1fr}.hero-copy{max-width:620px}.directory-layout{grid-template-columns:1fr}.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.directory-side-cta{position:static;order:-1;max-height:none}}
@media(max-width:560px){.directory-header,.directory-hero,.directory-tools,.result-heading,.directory-layout,.directory-pagination,.directory-footer,.empty-state{width:min(100% - 34px,1420px)}.directory-header{grid-template-columns:1fr auto;min-height:72px}.directory-header>p{display:none}.header-action{padding:12px 15px;font-size:10px}.directory-hero{padding-block:50px 34px}.hero-grid{gap:30px}.hero-grid h1{font-size:clamp(50px,15vw,72px);line-height:.9}.hero-copy p{font-size:17px}.hero-copy span{font-size:11px}.directory-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;font-size:9px;white-space:normal}.directory-stats span{display:grid;gap:4px;line-height:1.35}.directory-stats strong{margin-right:0}.directory-search{grid-template-columns:1fr;gap:10px}.directory-search input{font-size:18px}.filter-row button{font-size:11px}.result-heading{font-size:9px}.result-heading span{display:none}.directory-grid{grid-template-columns:1fr}.directory-card,.listing-invitation{border-radius:20px}.directory-side-cta{border-left-width:4px;border-radius:0 20px 20px 0}.portrait{aspect-ratio:4/5}.card-body{min-height:0;padding:23px}.company{font-size:9px}.card-body h2{font-size:29px}.card-flip{height:152px}.card-flip.is-flipped{height:316px}.bio{font-size:14px}.bio-toggle{min-height:44px;font-size:10px}.tags span{font-size:10px}.card-body>a,.website-pending{min-height:56px;font-size:11px}.listing-invitation{min-height:540px;padding:26px}.listing-invitation h2{font-size:38px}.side-cta-promise{font-size:15px}.side-cta-description{font-size:14px}.side-cta-includes span{font-size:10.5px}.side-cta-action>a{min-height:60px;font-size:12px}.directory-pagination{flex-wrap:wrap}.directory-pagination>button{padding-inline:13px}.directory-footer{display:grid;font-size:10px;line-height:1.55}.empty-state{padding:54px 24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.directory-card,.listing-invitation,.portrait img,.card-flip-inner{transition:none}}
