.gni-directory .gni-nav .pb-nav__item:first-child>.pb-nav__link:after{display:none}
.gni-directory .gni-nav .pb-nav__item:nth-child(3)>.pb-nav__link:after{content:"";position:absolute;left:0;right:0;bottom:5px;height:2px;background:#b62b3d}
.gni-dir-hero{position:relative;isolation:isolate;min-height:435px;display:flex;align-items:center;background:#100e0e;color:#fff}
.gni-dir-photo{position:absolute!important;inset:0;z-index:-2;width:100%;height:100%;overflow:hidden}
.gni-dir-photo img{width:100%;height:100%;object-fit:cover;object-position:center 40%}
.gni-dir-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#090807fa 0%,#090807ed 30%,#09080799 55%,#09080724 100%)}
.gni-dir-hero-inner{width:100%;max-width:1320px;margin:auto;padding:48px 44px}
.gni-dir-eyebrow{font-size:11px;letter-spacing:2.5px;text-transform:uppercase;margin-bottom:18px!important;font-weight:600}
.gni-dir-hero-title{font:400 56px/1.03 Georgia,serif;color:#fff;letter-spacing:-1px;margin:0 0 22px;max-width:850px;text-transform:uppercase}
.gni-dir-hero-title span{color:#bd3042;font-size:.77em;letter-spacing:-.3px}
.gni-dir-hero-description{max-width:540px;font-size:16px;line-height:1.6;color:#f2eded}
.gni-dir-benefits{background:#fff;padding:28px 44px}
.gni-dir-benefits-inner{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));max-width:1232px;margin:auto}
.gni-dir-benefit{text-align:center;padding:4px 24px}
.gni-dir-benefit+.gni-dir-benefit{border-left:1px solid #e4dcd6}
.gni-dir-benefit-icon{width:37px;height:37px;margin:0 auto 12px;color:#8d1c2a}.gni-dir-benefit-icon svg{width:100%;height:100%}
.gni-dir-benefit-title{font-family:var(--gni-font-body);font-size:11px;font-weight:600;line-height:1.5;text-transform:uppercase;letter-spacing:.4px;margin:0 0 8px}
.gni-dir-benefit-text{font-size:12px;line-height:1.7;color:#6d5d59;max-width:210px;margin:auto!important}
.gni-dir-filter-panel{background:linear-gradient(110deg,#651b25,#260d0c);color:#fff;padding:30px 44px}
.gni-dir-filter-inner{max-width:1232px;margin:auto;display:grid;grid-template-columns:200px minmax(0,1fr);gap:30px;align-items:center}
.gni-dir-filter-title{font:400 37px/1.02 Georgia,serif;color:white;text-transform:uppercase;margin:0}
.gni-dir-filter-title:after{content:"";display:block;margin-top:15px;width:110px;height:1px;background:#b18a7c}
.gni-dir-filter-controls{min-width:0;display:grid;gap:14px}
.gni-dir-search-row{display:grid;grid-template-columns:minmax(0,1fr) 126px;gap:0}
.gni-dir-submit button{width:100%;min-height:50px;border:1px solid #e3c6c4;border-radius:0;background:#8d1c2a;color:white;padding:12px 18px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:1px}
.gni-directory .gni-dir-benefits .gni-benefit{padding:4px 24px}
.gni-directory .gni-dir-benefits .gni-benefit-icon{width:37px;height:37px;margin:0 auto 12px}
.gni-directory .gni-dir-benefits .gni-benefit-title{font-family:var(--gni-font-body);font-size:11px;font-weight:600;line-height:1.5;letter-spacing:.4px;margin:0 0 8px}
.gni-directory .gni-dir-benefits .gni-benefit-description{font-size:12px;line-height:1.7;color:#6d5d59;max-width:210px}
.gni-dir-sort .jet-sorting-label{white-space:nowrap}
.gni-dir-search .jet-search-filter{display:flex;width:100%}
.gni-dir-search .jet-search-filter__input{border:1px solid #d6c4bd;background:#fff;color:#251719;width:100%;min-width:0;min-height:50px;border-radius:0;padding:12px 18px;font-size:14px}
.gni-dir-search .jet-search-filter__submit{min-height:50px;padding:12px 28px;border:1px solid #e4c9c8;background:#8d1c2a;color:#fff;border-radius:0;font-size:11px;letter-spacing:1px;text-transform:uppercase}
.gni-dir-filter-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) 150px;gap:12px;align-items:end}
.gni-dir-filter-row select{width:100%;min-height:43px;border:1px solid #d2bfb6;background:#fff;color:#332624;border-radius:0;padding:9px 12px;font-size:12px}
.gni-dir-filter-row select:disabled{opacity:.72;cursor:not-allowed}
.gni-dir-filter-row .jet-filter-label{color:#e8d2ce;font-size:10px;letter-spacing:.4px;margin-bottom:5px}
.gni-dir-clear button{width:100%;min-height:43px;padding:9px 12px;border:1px solid #d1b5b0;background:transparent;color:#fff;font-size:10px;text-transform:uppercase;letter-spacing:.6px;border-radius:0}
.gni-dir-main{padding:28px 44px 54px;background:#faf9f7}
.gni-dir-main-inner{max-width:1232px;margin:auto}
.gni-dir-preview-note{padding:12px 16px;border-left:3px solid #8d1c2a;background:#f1e8e3;color:#704e49;font-size:12px;line-height:1.7;margin-bottom:24px!important}
.gni-dir-toolbar{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;margin-bottom:24px}
.gni-dir-count{font-size:14px;font-weight:500}
.gni-dir-tools{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.gni-dir-sort select{border:1px solid #d8cfc7;background:#fff;color:#332624;padding:10px 14px;font-size:12px;min-height:42px;min-width:180px;border-radius:3px}
.gni-dir-sort .jet-sorting-label{font-size:12px;color:#685651;margin-right:12px}
.gni-dir-view-buttons{display:flex;gap:8px}
.gni-dir-view-buttons button{min-height:42px;border:1px solid #d7cac3;border-radius:3px;background:#fff;color:#42322f;padding:10px 16px;font-size:11px}
.gni-dir-view-buttons button[aria-pressed="true"]{background:#8d1c2a;border-color:#8d1c2a;color:#fff}
.gni-directory-results .cb-collection__items{align-items:stretch}
.gni-directory-results[data-view="list"] .cb-collection__items{grid-template-columns:1fr!important}
.gni-member-card{height:100%;background:#fff;border:1px solid #e6ddd6;display:flex;flex-direction:column;overflow:hidden}
.gni-member-photo{position:relative;aspect-ratio:1.45;overflow:hidden;background:#e9e3de;display:grid;place-items:center}
.gni-member-photo img{width:100%;height:100%;object-fit:cover}
.gni-member-photo:has(img) .gni-member-avatar{display:none}
.gni-member-avatar{width:72px;height:72px;color:#aa8b84}.gni-member-avatar svg{width:100%;height:100%}
.gni-member-copy{padding:20px;display:flex;flex-direction:column;gap:10px;flex:1}
.gni-member-category{font-size:10px;line-height:1.5;color:#8d1c2a;letter-spacing:.5px;text-transform:uppercase}
.gni-member-name{font-family:var(--gni-font-body);font-size:16px;font-weight:600;line-height:1.4;margin:0}
.gni-member-business{font-size:14px;line-height:1.6}.gni-member-intro{font-size:13px;line-height:1.7;color:#725e57;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.gni-member-location{font-size:12px;color:#755a52}.gni-member-profile{margin-top:auto!important;min-height:40px;padding:10px 16px;background:#8d1c2a;color:#fff!important;text-transform:uppercase;font-size:10px;font-weight:600;letter-spacing:.6px;display:flex;align-items:center;justify-content:center}
.gni-directory-results[data-view="list"] .gni-member-card{display:grid;grid-template-columns:190px minmax(0,1fr)}
.gni-directory-results[data-view="list"] .gni-member-photo{aspect-ratio:auto;height:100%}
.gni-directory-results[data-view="list"] .gni-member-profile{align-self:flex-start;min-width:140px}
.gni-dir-empty{padding:55px 24px 60px;text-align:center;border:1px solid #e6dcd3;background:#fff;min-height:280px}
.gni-dir-empty[hidden]{display:none}.gni-dir-empty-icon{height:52px;width:52px;color:#8d1c2a;margin:0 auto 20px}.gni-dir-empty-icon svg{width:100%;height:100%}
.gni-dir-empty-title{font:400 29px/1.25 Georgia,serif;color:#4e2027;margin:0 0 15px}
.gni-dir-empty-description{max-width:580px;font-size:16px;line-height:1.6;color:#7a625c;margin:auto!important}
.gni-dir-pagination{margin-top:25px;display:flex;justify-content:center}
.gni-dir-invitation{padding:48px 44px;background:linear-gradient(100deg,#4e101c,#210d13);color:#fff}
.gni-dir-invitation-inner{max-width:1232px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}
.gni-dir-invitation-title{font:400 39px/1.12 Georgia,serif;text-transform:uppercase;color:#fff;margin:0}
.gni-dir-invitation-copy{display:grid;gap:24px;justify-items:start;font-size:16px;line-height:1.6;color:#eadbd5}
@media(max-width:1024px){.gni-dir-hero-inner{padding:42px 32px}.gni-dir-hero-title{font-size:46px}.gni-dir-hero{min-height:390px}.gni-dir-benefits{padding:26px 32px}.gni-dir-benefit{padding:4px 15px}.gni-dir-benefit-title{font-size:10px}.gni-dir-benefit-text{font-size:11px}.gni-dir-filter-panel{padding:28px 32px}.gni-dir-filter-inner{grid-template-columns:1fr;gap:20px}.gni-dir-filter-title{font-size:29px}.gni-dir-filter-title br{display:none}.gni-dir-filter-title:after{display:none}.gni-dir-filter-row{grid-template-columns:repeat(3,minmax(0,1fr))}.gni-dir-clear{grid-column:1/-1;max-width:160px}.gni-dir-main{padding:26px 32px 44px}.gni-dir-invitation{padding:42px 32px}.gni-dir-invitation-title{font-size:32px}.gni-dir-invitation-inner{gap:30px}}
@media(max-width:640px){.gni-dir-hero-inner{padding:36px 24px}.gni-dir-hero-title{font-size:33px;letter-spacing:-.8px}.gni-dir-hero-title span{font-size:.8em;line-height:1.2}.gni-dir-hero{min-height:380px}.gni-dir-hero-description{font-size:16px}.gni-dir-hero:before{background:#080605c9}.gni-dir-benefits{padding:20px 24px}.gni-dir-benefits-inner{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 0}.gni-dir-benefit{padding:8px 12px}.gni-dir-benefit:nth-child(3){border-left:0}.gni-dir-benefit-text{font-size:12px}.gni-dir-benefit-title{font-size:10px}.gni-dir-filter-panel{padding:28px 24px}.gni-dir-filter-row{grid-template-columns:1fr}.gni-dir-clear{max-width:none}.gni-dir-search .jet-search-filter__submit{padding:10px 15px;font-size:10px}.gni-dir-search .jet-search-filter__input{font-size:13px;padding:12px}.gni-dir-main{padding:24px}.gni-dir-tools{width:100%;gap:12px}.gni-dir-sort{width:100%}.gni-dir-sort select{width:100%}.gni-dir-view-buttons{width:100%}.gni-dir-view-buttons button{flex:1}.gni-dir-empty{padding:36px 20px}.gni-dir-empty-title{font-size:25px}.gni-directory-results[data-view="list"] .gni-member-card{grid-template-columns:110px minmax(0,1fr)}.gni-member-copy{padding:16px}.gni-directory-results[data-view="list"] .gni-member-intro{display:none}.gni-dir-invitation{padding:36px 24px}.gni-dir-invitation-inner{grid-template-columns:1fr;gap:25px}.gni-dir-invitation-title{font-size:32px}}
/* Keep the reset action discoverable, including the initial empty preview. */
.gni-dir-clear .jet-remove-all-filters.hide{display:block!important}
.gni-dir-submit .apply-filters{margin:0}
@media(max-width:640px){.gni-dir-search-row{grid-template-columns:minmax(0,1fr) 100px}.gni-dir-submit button{padding:12px 10px;font-size:10px}.gni-directory .gni-dir-benefits .gni-benefit{padding:4px 12px}}
.gni-dir-submit .apply-filters__button{margin-top:0}
/* Preserve the complete source photographs, including portraits with off-center faces. */
.gni-member-photo img{object-fit:contain;background:#eee9e4}
.gni-members-loop .cb-collection-item__content{display:flex;height:100%;min-width:0}
.gni-member-card{width:100%}
.gni-dir-pagination .jet-filters-pagination{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}
.gni-dir-pagination .jet-filters-pagination__item{min-width:38px;min-height:40px;border:1px solid #d9cbc5;background:#fff;color:#462a2e;display:flex;align-items:center;justify-content:center;border-radius:3px;font-size:13px;padding:8px 12px}
.gni-dir-pagination .jet-filters-pagination__current{background:#8d1c2a;color:#fff;border-color:#8d1c2a}
/* One reusable native CrocoBuilder single template, assigned only to GNI Members. */
.gni-profile-main{max-width:1232px;margin:auto;padding:40px 44px 64px}
.gni-profile-back{font-size:14px;color:#8d1c2a;display:inline-block;margin-bottom:30px}
.gni-profile-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:48px;align-items:start}
.gni-profile-photo{width:100%;max-height:540px;object-fit:contain;background:#eee9e4}
.gni-profile-copy{display:grid;gap:18px;min-width:0}
.gni-profile-category{font-size:12px;text-transform:uppercase;letter-spacing:1px;color:#8d1c2a}
.gni-profile-title{font:400 clamp(32px,4vw,48px)/1.15 Georgia,serif;margin:0}
.gni-profile-business{font:600 20px/1.5 Poppins,sans-serif;margin:0;color:#56252d}
.gni-profile-bio{font-size:16px;line-height:1.65}.gni-profile-contact{color:#8d1c2a;overflow-wrap:anywhere;font-size:16px}
@media(max-width:640px){.gni-profile-main{padding:28px 24px 44px}.gni-profile-grid{grid-template-columns:1fr;gap:28px}.gni-profile-photo{max-height:360px}}
.gni-member-photo img{position:absolute;inset:0;width:100%;height:100%}
