@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=IBM+Plex+Mono:wght@400;500&display=swap');
:root{--ink:#191c1e;--muted:#666d73;--paper:#f4f5f5;--line:#dfe2e3;--orange:#ff6b3a;--dark:#151819;--mono:'IBM Plex Mono',monospace;--sans:'Manrope',Arial,sans-serif;color-scheme:light;font-family:var(--sans);color:var(--ink);font-size:16px;font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper)}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a,select{touch-action:manipulation}button,a{transition:background .18s,color .18s,border-color .18s,transform .18s}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #ed652f;outline-offset:4px}button:disabled{cursor:default}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-100px;left:16px;z-index:10;background:var(--orange);padding:12px}.skip-link:focus{top:12px}
.site-header{background:var(--dark);color:#e9eceb;border-bottom:1px solid #343737}.header-inner{max-width:1440px;margin:auto;min-height:88px;padding:16px 52px;display:flex;align-items:center;gap:72px}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.brand-symbol{height:43px;width:43px;background:var(--orange);color:var(--dark);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:29px;position:relative;border-radius:3px}.brand-symbol span{font-size:17px;position:absolute;right:2px;top:0}.brand-name{font-weight:700;font-size:13px;line-height:1.5;letter-spacing:.03em}.brand-name>span{display:block;letter-spacing:.22em;font-size:14px}.site-header nav{display:flex;gap:29px;height:56px;align-items:center;font-size:14px}.site-header nav a{position:relative;color:#a7acad;padding:16px 0}.site-header nav a:hover{color:white}.site-header nav .nav-active{color:white}.nav-active:after{position:absolute;content:'';height:3px;background:var(--orange);bottom:-8px;left:0;right:0}.edition{margin-left:auto;font:12px var(--mono);color:#a6adae;display:flex;align-items:center;gap:12px}.edition-line{width:20px;height:1px;background:var(--orange)}
.intro{background:var(--dark);color:white;padding:32px max(52px,calc((100vw - 1336px)/2)) 24px}.intro-inner{display:flex;justify-content:space-between;align-items:center;gap:48px;max-width:1336px;margin:auto}.eyebrow{font:12px var(--mono);letter-spacing:.09em;display:flex;align-items:center;gap:12px;color:#bbc1c2}.tiny-cross{font-size:22px;color:var(--orange);line-height:1}h1{font-size:clamp(2.25rem,3.35vw,3.3rem);line-height:1.15;letter-spacing:-.055em;font-weight:600;margin:18px 0 13px}h1>span{color:#aeb5b6}.intro-copy>p{font-size:16px;color:#abb2b3;margin:0 0 24px}.intro-index{width:285px;align-self:stretch;flex-shrink:0;padding:10px 18px 8px;position:relative;border-left:1px solid #3a4041;border-right:1px solid #3a4041;background-image:linear-gradient(#333a3b80 1px,transparent 1px),linear-gradient(90deg,#333a3b80 1px,transparent 1px);background-size:29px 29px;overflow:hidden}.intro-index>span,.index-bottom{font:10px var(--mono);letter-spacing:.05em;color:#a3adae}.index-art{padding:10px 0 12px;line-height:.98;font-size:57px;font-weight:800;letter-spacing:-.05em;display:flex;flex-direction:column}.art-arrow{display:inline-block;font-size:53px;font-weight:400;color:var(--orange);margin-left:16px}.art-outline{color:transparent;-webkit-text-stroke:1px #889394}.index-bottom{display:flex;justify-content:space-between;font-size:10px}.index-bottom>span:last-child{color:var(--orange);font-size:14px}.search-form{display:flex;align-items:center;max-width:1336px;margin:25px auto 0;background:#252a2b;border:1px solid #444b4c;border-radius:5px;padding:7px;gap:16px}.search-input-wrap{display:flex;align-items:center;gap:14px;flex:1;min-width:0;padding-left:17px;color:#bec4c5}.search-input-wrap input{background:none;border:0;color:#fff;outline-offset:0;width:100%;min-width:0;padding:10px 0;font-size:16px}.search-input-wrap input::placeholder{color:#aab2b3}.search-input-wrap:focus-within{color:var(--orange)}kbd{padding:3px 7px;border:1px solid #555d5d;border-radius:3px;font:12px var(--mono);color:#b6bcbd}.search-scope{font:11px var(--mono);color:#aab2b3;border-left:1px solid #515858;padding:10px 16px;white-space:nowrap}.search-button{border:0;background:var(--orange);color:#181b1c;display:flex;align-items:center;gap:32px;padding:15px 20px;font-size:14px;font-weight:800;border-radius:3px;white-space:nowrap}.search-button span{font-size:22px;line-height:1}.search-button:hover{background:#ff895d}.popular{display:flex;align-items:center;gap:13px;color:#aeb5b6;font-size:12px;margin:14px auto 0;max-width:1336px}.popular>button{font-size:12px;border:0;background:none;color:#c5cbcb;padding:2px 0}.popular>button:hover{color:var(--orange)}.popular>span{color:#5c6566}
.directory{max-width:1440px;margin:auto;padding:36px 52px 48px}.directory-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:28px}.dark-eyebrow{color:#6a7478;font-size:11px;letter-spacing:.08em}h2{font-size:27px;font-weight:700;letter-spacing:-.045em;margin:9px 0 0;line-height:1.25}.demo-label{font-size:12px;color:#687176;display:flex;gap:9px;align-items:center}.demo-label>span{color:#c2c7c9}.directory-layout{display:grid;grid-template-columns:224px 1fr;gap:34px}.filters{padding-top:7px;scroll-margin-top:24px}.filter-title{display:flex;justify-content:space-between;align-items:center;padding:0 2px 16px;border-bottom:1px solid var(--line);margin-bottom:9px}.filter-title h3{font-size:14px;font-weight:800;margin:0}.filter-title>span{font:11px var(--mono);color:#677378}.category-list{display:flex;flex-direction:column;gap:5px}.category-button{display:flex;align-items:center;gap:10px;padding:12px 10px;border:1px solid transparent;border-radius:4px;background:transparent;text-align:left;color:#596166;font-size:14px;width:100%;line-height:1.4}.category-button svg{width:19px;height:19px;stroke-width:1.5}.category-button .category-count{margin-left:auto;font:11px var(--mono);color:#667175;padding-left:3px}.category-button:hover{background:#e7eaea}.category-button[aria-pressed=true]{background:#fff0e9;border-color:#ffd6c4;color:#983709;font-weight:700}.category-button[aria-pressed=true] .category-count{color:#a74116}.category-button .category-name{min-width:0}.filter-note{margin-top:28px;border-top:1px solid #cdd2d4;padding:18px 10px;color:#697378}.note-plus{font:24px var(--mono);color:#a65335}.filter-note p{font-size:19px;line-height:1.5;letter-spacing:-.03em;margin:13px 0 16px}.filter-note>span:last-child{font:9px var(--mono);letter-spacing:.05em}.results{min-width:0}.results-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:41px;margin-bottom:14px}.results-toolbar p{margin:0;font-size:14px;color:#657074}.results-toolbar p strong{color:var(--ink);font-weight:800}.results-toolbar label{display:flex;align-items:center;gap:9px;font-size:12px;color:#6b7478}.results-toolbar select{background:none;border:0;color:#252b2d;max-width:185px;font-size:12px;font-weight:600;cursor:pointer;padding:8px 3px}.active-filters:empty{display:none}.active-filters{display:flex;align-items:center;gap:8px;margin:0 0 15px;font-size:13px;color:#566267}.clear-button{background:white;color:#8d3414;border:1px solid #edc9b9;padding:6px 10px;border-radius:4px;font-size:12px}.supplier-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.supplier-card{background:white;border:1px solid #dee3e4;border-radius:6px;overflow:hidden;display:flex;flex-direction:column;position:relative;transition:transform .2s,border-color .2s,box-shadow .2s;animation:enter .35s ease both}.supplier-card:hover{border-color:#aeb9bc;transform:translateY(-3px);box-shadow:0 8px 18px #14232d08}.card-main{padding:21px 21px 17px;display:flex;flex-direction:column;flex:1}.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:19px}.monogram{width:47px;height:47px;display:grid;place-items:center;background:var(--logo-bg,#eef0f2);color:var(--logo-ink,#394c5c);font-size:18px;letter-spacing:-.06em;font-weight:800;border-radius:4px;border:1px solid #17232a08}.card-index{font:11px var(--mono);color:#949ea2;align-self:flex-start;padding-top:4px}.card-category{font:10px var(--mono);letter-spacing:.015em;color:#667477;text-transform:uppercase;line-height:1.5;margin:0 0 8px}.supplier-card h3{font-size:19px;line-height:1.28;letter-spacing:-.035em;margin:0 0 9px;font-weight:800}.supplier-card h3 button{padding:0;border:0;background:none;text-align:left;font:inherit;color:inherit}.supplier-card h3 button:hover{color:#bd4b22}.card-description{font-size:14px;color:#6d767a;line-height:1.65;margin:0 0 17px}.tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:auto}.tag{background:#f3f5f5;border:1px solid #e5e9e9;padding:4px 6px;font-size:11px;color:#59656a;border-radius:3px;line-height:1.3}.card-bottom{padding:13px 20px;border-top:1px solid #edf0f0;display:flex;justify-content:space-between;align-items:center;gap:8px}.network-label{font-size:10px;color:#7a858a;font-family:var(--mono)}.view-button{border:0;background:transparent;display:flex;align-items:center;gap:10px;padding:5px 0;font-size:12px;font-weight:800;white-space:nowrap}.view-button>span{font-size:19px;font-weight:500;color:#b24b26}.view-button:hover{color:#bb4d28}.empty-state{grid-column:1/-1;text-align:center;padding:65px 30px;border:1px dashed #b7c1c4;border-radius:6px;background:#fff}.empty-state>svg{width:32px;height:32px;color:#ca5e36}.empty-state h3{font-size:22px;margin:17px 0 8px}.empty-state p{color:#6a7478;font-size:16px}.empty-state button{background:var(--ink);color:white;border:0;border-radius:4px;padding:12px 20px;margin-top:12px}.sample-note{margin:28px 0 0 258px;padding-top:18px;border-top:1px solid var(--line);color:#738087;font-size:12px;line-height:1.7}
footer{background:var(--dark);color:#a9b1b2;display:flex;align-items:center;gap:24px;padding:34px max(52px,calc((100vw - 1336px)/2));border-top:1px solid #353b3c}.footer-wordmark{font-size:38px;color:#e5e9e9;font-weight:800;letter-spacing:-.055em}.footer-wordmark span{color:var(--orange);font-size:25px;margin-left:4px}footer>p{font-size:13px;line-height:1.8;margin:0;color:#e0e5e5}footer>p span{display:block;font-size:12px;color:#939d9e}footer>span:last-child{margin-left:auto;font:10px/1.9 var(--mono);text-align:right}
dialog{padding:0;border:1px solid #c3cbce;border-radius:9px;width:min(620px,calc(100% - 30px));max-height:90dvh;color:var(--ink);background:#fff;box-shadow:0 24px 80px #0004}dialog::backdrop{background:#081012b3;backdrop-filter:blur(5px)}.close-dialog{position:absolute;top:16px;right:16px;border:1px solid #dfe4e5;background:#fff;height:36px;width:36px;border-radius:4px;font-size:25px;line-height:1;z-index:1}.close-dialog:hover{background:#f5f5f5}.dialog-header{padding:32px 32px 22px;background:#f3f5f5;border-bottom:1px solid var(--line)}.dialog-header>.monogram{height:58px;width:58px;font-size:24px;margin-bottom:23px}.dialog-header h2{font-size:29px;line-height:1.2;margin:9px 30px 8px 0}.legal-name{font-size:12px;color:#758187;line-height:1.6}.dialog-body{padding:25px 32px 30px}.dialog-body>p{font-size:16px;line-height:1.75;color:#59676d;margin:0 0 21px}.dialog-body h3{font-size:14px;margin:26px 0 12px}.dialog-body ul{padding-left:20px;font-size:14px;line-height:1.9;color:#637178}.contact-block{border-top:1px solid var(--line);margin-top:24px;padding-top:3px}.contact-name{font-weight:700;font-size:17px;margin:0 0 14px}.contact-link{display:flex;align-items:center;gap:10px;font-size:14px;padding:12px 0;border-top:1px solid #edf0f0;overflow-wrap:anywhere}.contact-link svg{color:#66777d;width:18px;flex-shrink:0}.contact-link:hover{color:#b54920}.contact-link span{min-width:0}.missing-data{font-size:12px!important;color:#8b543b!important;line-height:1.6!important;background:#fff6ee;padding:10px 12px;margin:6px 0 12px!important;border-radius:4px}.source-note{font-size:12px;color:#7b8589;line-height:1.7;border-top:1px solid #e8ebeb;margin:20px 0 0;padding:14px 0 0}.dialog-body .tags{margin-top:20px}.reference-note{font-size:13px!important;background:#f6f7f7;padding:12px 14px;border-left:2px solid #acb6b9;line-height:1.7!important}
@keyframes enter{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1500px){.intro{padding-left:max(52px,calc((100vw - 1336px)/2));padding-right:max(52px,calc((100vw - 1336px)/2))}}
@media(max-width:1180px){.header-inner{gap:40px;padding-left:32px;padding-right:32px}.edition{font-size:10px}.intro{padding-left:32px;padding-right:32px}.intro-index{width:260px}.index-art{font-size:52px}.search-scope{display:none}.directory{padding-left:32px;padding-right:32px}.directory-layout{grid-template-columns:200px 1fr;gap:25px}.supplier-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sample-note{margin-left:225px}.card-main{padding:22px}.demo-label{font-size:11px}footer{padding-left:32px;padding-right:32px}}
@media(max-width:850px){.edition{display:none}.header-inner{justify-content:space-between}.intro-index{width:220px}.index-art{font-size:43px}.art-arrow{font-size:40px;margin-left:10px}.intro-index>span,.index-bottom{font-size:9px}.intro-inner{gap:24px}h1{font-size:36px}.directory-heading{align-items:flex-start}.demo-label{flex-direction:column;align-items:flex-end;gap:4px}.demo-label>span{display:none}.directory-layout{grid-template-columns:1fr;gap:18px}.filter-title,.filter-note{display:none}.category-list{display:flex;flex-direction:row;gap:7px;overflow-x:auto;padding:3px 3px 10px}.category-button{width:auto;flex-shrink:0;border:1px solid #d8dfe0;background:white;padding:10px 12px;font-size:12px}.category-button svg{width:16px}.category-name{white-space:nowrap}.results-toolbar{margin-bottom:13px}.sample-note{margin-left:0}.filters{min-width:0;padding:0}.directory-heading{margin-bottom:20px}.supplier-card h3{font-size:20px}}
@media(max-width:600px){.header-inner{padding:13px 20px;min-height:75px;gap:18px}.brand-symbol{height:38px;width:38px;font-size:25px}.brand-name{font-size:10px}.brand-name>span{font-size:12px;letter-spacing:.14em}.site-header nav{gap:0;height:45px}.site-header nav a{font-size:12px}.site-header nav a:last-child{display:none}.nav-active:after{bottom:-4px}.intro{padding:28px 20px 21px}.intro-index{display:none}.eyebrow{font-size:9px;letter-spacing:.065em;gap:9px}.tiny-cross{font-size:18px}h1{font-size:clamp(1.9rem,7.1vw,2.65rem);letter-spacing:-.05em;line-height:1.2;margin:15px 0 13px}.intro-copy>p{font-size:14px;line-height:1.6;margin:0}.search-form{margin-top:25px;flex-wrap:wrap;gap:4px;padding:6px}.search-input-wrap{flex-basis:100%;padding-left:10px;padding-right:7px;gap:10px}.search-input-wrap input{font-size:14px;padding:12px 0}.search-input-wrap>svg{width:19px}kbd{display:none}.search-button{width:100%;justify-content:space-between;padding:13px 14px}.popular{font-size:10px;gap:8px;flex-wrap:wrap;line-height:1.6}.popular>button{font-size:10px}.directory{padding:27px 20px 34px}.directory-heading{display:block;margin-bottom:17px}h2{font-size:24px;margin-top:8px}.dark-eyebrow{font-size:9px}.demo-label{flex-direction:row;align-items:center;font-size:10px;margin-top:13px;gap:8px}.demo-label>span{display:inline}.results-toolbar{gap:5px;align-items:center;min-height:35px}.results-toolbar p{font-size:12px}.results-toolbar label{font-size:10px;gap:0}.results-toolbar select{font-size:10px;max-width:140px}.supplier-grid{grid-template-columns:1fr;gap:13px}.card-main{padding:20px}.card-top{margin-bottom:14px}.supplier-card h3{font-size:22px}.card-description{font-size:14px}.card-bottom{padding:12px 20px}.card-category{font-size:10px}.sample-note{font-size:11px;margin-top:23px}footer{padding:28px 20px;flex-wrap:wrap;gap:14px}.footer-wordmark{font-size:32px}footer>p{font-size:11px}footer>p span{font-size:10px}footer>span:last-child{font-size:9px;flex-basis:100%;text-align:left;border-top:1px solid #384142;padding-top:14px;margin-top:8px}.dialog-header{padding:26px 23px 20px}.dialog-header h2{font-size:27px}.dialog-body{padding:22px 23px}.contact-link{font-size:13px}.intro-copy{width:100%}}
.card-capsystems{border-top:3px solid var(--orange)}.card-capsystems .card-main{padding-top:19px}.card-capsystems .card-index{color:#ac4b29}.card-capsystems .monogram{background:#252e34;color:#fff}.card-description{font-size:16px;line-height:1.6}.card-category,.card-index,.tag,.network-label,.search-scope,.dark-eyebrow,.demo-label,.sample-note{font-size:12px}.category-button,.results-toolbar label,.results-toolbar select,.view-button,.popular,.popular>button{font-size:14px}.filter-note>span:last-child,.intro-index>span,.index-bottom,footer>span:last-child{font-size:12px}.index-bottom{line-height:1.5}.intro-index{min-height:220px}.search-scope{padding-left:14px;padding-right:8px}.card-bottom{flex-wrap:wrap}.search-button{font-size:14px}.active-filters{flex-wrap:wrap}.brand-name{font-size:12px}.intro-index>span{font-size:11px}.results-toolbar select{max-width:175px}.source-note{font-size:12px}.card-category{min-height:36px}.category-button svg{flex-shrink:0}
@media(max-width:1180px){.intro-index{width:275px}.index-art{font-size:53px}}
@media(max-width:850px){.intro-index{display:none}.category-button{font-size:14px}.category-list{scrollbar-width:thin}.demo-label{font-size:12px}.intro-copy>p{font-size:16px}}
@media(max-width:600px){.brand-name{font-size:10px}.brand-name>span{font-size:12px}.results-toolbar{flex-wrap:wrap}.results-toolbar p,.results-toolbar label,.results-toolbar select{font-size:14px}.results-toolbar label{margin-left:auto}.popular,.popular>button{font-size:12px}.eyebrow,.dark-eyebrow{font-size:12px;letter-spacing:0}.search-input-wrap input{font-size:16px}.directory-heading h2{font-size:25px}.card-category{min-height:0}.card-description{font-size:16px}.sample-note{font-size:12px}.site-header nav a{font-size:14px}footer>p{font-size:12px}footer>p span{font-size:12px}footer>span:last-child{font-size:12px}.contact-link{font-size:14px}.card-bottom{gap:14px}.demo-label{font-size:12px}.search-scope{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
