:root{font-synthesis:none;color-scheme:light;--ink:#182b3a;--muted:#596873;--teal:#126b61;--teal-soft:#edf5f2;--surface:#fffefa;--wash:#f4f3ee;--line:#dde2e5;background:var(--surface);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=dark]{color-scheme:dark;--ink:#e5eaf0;--muted:#a4afb9;--teal:#80cbbd;--teal-soft:#1c3331;--surface:#141c24;--wash:#1a242d;--line:#33404b}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}a:hover{color:var(--teal)}button,input,select,textarea{font:inherit}button{cursor:pointer}svg{vertical-align:middle;flex-shrink:0}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--teal);outline-offset:4px}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:650}h1{letter-spacing:-.035em;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.4rem,4vw,3.5rem);font-weight:400;line-height:1.1}h2{letter-spacing:-.025em;font-size:1.45rem;line-height:1.3}h3{font-size:1rem;line-height:1.4}p{line-height:1.65}fieldset{border:0;margin:0;padding:0}.container{width:min(1120px,100% - 64px);margin-inline:auto}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip{background:var(--surface);z-index:50;padding:12px;position:absolute;top:-80px;left:16px}.skip:focus{top:10px}.site-header{border-bottom:1px solid var(--line)}.header-inner{align-items:center;gap:30px;min-height:84px;display:flex}.brand{letter-spacing:-.025em;white-space:nowrap;font-family:Georgia,Times New Roman,serif;font-size:1.2rem;line-height:1.2}.brand-sub{color:var(--teal);letter-spacing:.18em;text-transform:uppercase;margin-top:5px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.65rem;font-weight:600;display:block}.header-inner nav{gap:28px;margin-left:auto;font-size:.85rem;display:flex}.header-inner nav a{padding-block:12px}.header-inner nav [aria-current=page]{color:var(--teal);text-underline-offset:7px;text-decoration:underline}.theme-button{border:0;border-left:1px solid var(--line);width:48px;height:40px;color:var(--muted);background:0 0;place-items:center;display:grid}.theme-sun,[data-theme=dark] .theme-moon{display:none}[data-theme=dark] .theme-sun{display:inline}.hero{border-bottom:1px solid var(--line)}.hero-content{padding-block:58px 32px}.hero h1{max-width:850px;font-size:clamp(3rem,6vw,5rem)}.directory-label{text-transform:uppercase;letter-spacing:.13em;color:var(--teal);margin-bottom:22px;font-size:.7rem}.hero-description{color:var(--muted);margin:24px 0 32px;font-size:1rem}.search-panel{text-align:left;padding:0}.search-fields{align-items:stretch;gap:14px;display:flex}.search-field{flex:1.2;min-width:0}.search-field>span{margin-bottom:8px;font-size:.8rem;font-weight:600;display:block}.search-field>div{height:50px;color:var(--muted);border:1px solid #9ba8b1;border-radius:4px;align-items:center;gap:10px;padding:0 13px;display:flex}.search-field input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;padding-block:10px;font-size:.95rem}.search-field:focus-within>div{border-color:var(--teal)}.search-field input::placeholder{color:var(--muted);opacity:1}.button{white-space:nowrap;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;gap:9px;min-height:46px;padding:12px 20px;font-size:.85rem;font-weight:600;display:inline-flex}.button.primary{color:#fff;background:#126b61}.button.primary:hover{color:#fff;background:#0c5149}.button.secondary{background:var(--surface);border-color:var(--line);color:var(--ink)}.button.secondary:hover{border-color:var(--muted)}.search-fields .button{align-self:flex-end;height:50px}.popular{flex-wrap:wrap;align-items:center;gap:8px 20px;margin-top:17px;font-size:.78rem;display:flex}.popular>span{color:var(--muted)}.popular a{text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:4px;padding-block:5px}.popular a:hover{text-decoration-color:var(--teal)}.section{padding-block:36px}.section-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;display:flex}.section-heading p{color:var(--muted);margin-top:8px;font-size:.86rem}.text-link{color:var(--teal);align-items:center;gap:8px;font-size:.82rem;font-weight:550;display:inline-flex}.text-link:hover{text-underline-offset:4px;text-decoration:underline}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:60px;display:grid}.category-card{border-top:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:24px;padding:22px 0;display:flex}.category-card:hover{color:var(--ink)}.category-card:hover h3{color:var(--teal);text-underline-offset:4px;text-decoration:underline}.category-card h3{font-size:1rem;font-weight:550}.category-card p{color:var(--muted);margin-top:5px;font-size:.8rem;line-height:1.5}.directory-notes{border-top:1px solid var(--line);grid-template-columns:1.7fr 1fr;gap:70px;padding-block:28px 42px;display:grid}.directory-notes h2{letter-spacing:-.01em;font-size:1rem}.directory-notes p{color:var(--muted);margin:10px 0 13px;font-size:.82rem}.directory-contribute{border-left:1px solid var(--line);padding-left:32px}footer{border-top:1px solid var(--line);color:var(--muted);background:var(--wash);font-size:.75rem}.footer-top,.footer-bottom{justify-content:space-between;align-items:center;gap:24px;padding-block:22px;display:flex}.footer-top p{max-width:420px}footer nav{flex-wrap:wrap;gap:10px 24px;display:flex}footer nav a{padding-block:6px}.footer-bottom{border-top:1px solid var(--line);font-size:.7rem}.search-header{border-bottom:1px solid var(--line);padding:28px 0 32px}.breadcrumb{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:22px;font-size:.78rem;display:flex}.search-header h1{margin-bottom:28px;font-size:2.6rem}.results-section{min-height:430px}.results-grid{grid-template-columns:minmax(0,1fr);display:grid}.supplier-card{border-top:1px solid var(--line);grid-template-columns:152px minmax(0,1fr) 245px;gap:32px;min-width:0;padding:32px 0;display:grid}.supplier-top{padding-top:4px}.supplier-title{min-width:0}.supplier-title h3{letter-spacing:-.025em;overflow-wrap:anywhere;font-size:1.35rem;font-weight:600}.supplier-title h3 a:hover{text-underline-offset:4px;text-decoration:underline}.supplier-description{color:var(--muted);max-width:800px;margin:12px 0;font-size:.88rem}.tags{flex-wrap:wrap;gap:8px 16px;margin-top:12px;display:flex}.tags a{text-underline-offset:4px;text-decoration:underline;text-decoration-color:var(--line);font-size:.76rem}.match-note{color:var(--muted);align-items:center;gap:6px;margin-top:14px;font-size:.76rem;display:flex}.supplier-bottom{flex-wrap:wrap;align-items:center;gap:22px;margin-top:20px;display:flex}.external-link{color:var(--muted);align-items:center;gap:7px;font-size:.8rem;display:inline-flex}.notice{background:var(--wash);border-left:3px solid var(--line);color:var(--muted);margin-bottom:25px;padding:14px 18px;font-size:.82rem;line-height:1.65}.muted{color:var(--muted);font-size:.8rem}.empty-state{border-top:1px solid var(--line);padding:45px 0}.empty-state p{max-width:620px;color:var(--muted);margin:15px 0;font-size:.9rem}.empty-state p a{text-decoration:underline}.empty-symbol{color:var(--muted);margin-bottom:18px;display:block}.empty-actions{flex-wrap:wrap;gap:12px;margin-top:20px;display:flex}.pagination{justify-content:center;align-items:center;gap:25px;margin-top:35px;font-size:.8rem;display:flex}.page-heading{padding-top:36px;padding-bottom:32px}.page-heading h1{font-size:clamp(2.3rem,4vw,3.5rem)}.page-heading>p{color:var(--muted);max-width:770px;margin-top:18px;font-size:.94rem}.eyebrow{color:var(--muted);margin-bottom:12px;font-size:.75rem;display:block}.prose{max-width:780px;padding-bottom:55px}.prose h2{margin:28px 0 12px;font-size:1.35rem}.prose p,.prose li{color:var(--muted);font-size:.94rem;line-height:1.85}.prose p+p{margin-top:16px}.prose a{color:var(--teal);text-decoration:underline}.prose ul{padding-left:22px}.profile-grid{grid-template-columns:minmax(0,1fr) 280px;gap:72px;padding-bottom:45px;display:grid}.detail-panel{border-top:1px solid var(--line);margin-bottom:14px;padding:26px 0}.detail-panel h2{margin-bottom:20px;font-size:1.2rem}.detail-panel p{color:var(--muted);font-size:.86rem}.detail-panel a:not(.button){color:var(--teal)}.detail-panel .button{margin:0 0 20px}.detail-panel .provenance{overflow-wrap:anywhere;font-size:.76rem}.error-page{text-align:center;padding:90px 20px}.error-page p{color:var(--muted);margin:20px}.supplier-logo{background:#fff;flex-shrink:0;justify-content:center;align-items:center;width:152px;height:76px;padding:12px;display:flex}.supplier-logo.logo-dark{background:#193c36;border-color:#193c36}.supplier-logo img{object-fit:contain;width:100%;min-width:0;height:100%;min-height:0}.supplier-nameplate{color:#182b3a;text-align:center;font-size:1.05rem;font-weight:700;line-height:1.25}.supplier-logo.logo-text{background:0 0;justify-content:flex-start;padding-left:0}.logo-text .supplier-nameplate{color:var(--muted);text-align:left;font-family:Georgia,Times New Roman,serif;font-weight:400}.supplier-facts{flex-direction:column;gap:12px;margin:0;display:flex}.supplier-facts dt{color:var(--muted);margin-bottom:3px;font-size:.7rem}.supplier-facts dd{margin:0;font-size:.78rem;line-height:1.5}.supplier-shelf{padding-block:32px 10px}.supplier-shelf h2{font-size:1.1rem}.brand-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:24px;padding-block:12px 24px;display:grid}.brand-tile{align-items:center;min-width:0;display:flex}.brand-tile:hover{opacity:.75}.brand-tile .supplier-logo{width:100%;height:72px;padding:12px}.profile-header{border-bottom:1px solid var(--line)}.profile-intro{grid-template-columns:180px 1fr;align-items:center;gap:42px;padding-block:16px;display:grid}.profile-intro .supplier-logo{width:180px;height:100px;padding:16px}.profile-intro p{color:var(--muted);max-width:740px;margin-top:14px;font-size:.94rem}.ordering-section{padding-block:40px}.ordering-grid{display:grid}.ordering-card{border-top:1px solid var(--line);grid-template-columns:180px minmax(0,1fr) 145px;align-items:baseline;gap:32px;padding:24px 0;display:grid}.ordering-card h3{font-size:.8rem;font-weight:550}.ordering-card .policy-summary{color:var(--ink);margin-bottom:8px;font-size:1rem;font-weight:600}.ordering-card p{color:var(--muted);font-size:.85rem}.source-link{color:var(--teal);margin-top:12px;font-size:.73rem;line-height:1.65;display:block}.source-link:hover{text-underline-offset:3px;text-decoration:underline}.ordering-card .source-link{margin:0}.source-link span{color:var(--muted);font-size:.68rem;display:block}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px;margin-top:20px;display:grid}.product-link{border-top:1px solid var(--line);align-items:center;gap:10px;padding:16px 0;display:flex}.product-link>span{flex:1}.product-link:hover strong{text-underline-offset:4px;text-decoration:underline}.product-link strong{font-size:.85rem;font-weight:550;display:block}.product-link small{color:var(--muted);margin-top:5px;font-size:.65rem;line-height:1.6;display:block}.buying-notes>div+div{border-top:1px solid var(--line);margin-top:18px;padding-top:18px}.buying-notes h3{margin-bottom:8px}.visit-panel{border-top:2px solid var(--teal)}.visit-panel p+p{margin-top:14px}@media (width<=950px){.supplier-card{grid-template-columns:152px minmax(0,1fr);gap:24px}.supplier-facts{grid-column:2;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.profile-grid{grid-template-columns:minmax(0,1fr) 240px;gap:36px}.ordering-card{grid-template-columns:145px minmax(0,1fr);gap:16px 24px}.ordering-card .source-link{grid-column:2}.category-grid{grid-template-columns:repeat(2,1fr)}.header-inner{gap:20px}.header-inner nav{gap:18px}.search-fields .button{padding-inline:15px}.directory-notes{gap:30px}.footer-top{align-items:flex-start}.footer-top nav{justify-content:flex-end}.brand-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.product-grid{grid-template-columns:1fr}}@media (width<=650px){.container{width:calc(100% - 36px)}.header-inner{flex-wrap:wrap;gap:0;padding-top:18px}.brand{font-size:1.1rem}.brand-sub{font-size:.6rem}.theme-button{margin-left:auto}.header-inner nav{border-top:1px solid var(--line);order:3;justify-content:space-between;gap:12px;width:100%;margin-top:15px;padding-block:2px;font-size:.8rem}.hero-content{padding-block:30px 22px}.directory-label{margin-bottom:14px;font-size:.75rem}.hero h1{font-size:clamp(2.65rem,10vw,3.8rem)}.hero-description{margin:18px 0 24px;font-size:.9rem}.desktop-break{display:none}.search-panel{padding:0}.search-fields{flex-direction:column;gap:16px}.search-field input{font-size:1rem}.search-fields .button{width:100%}.popular{gap:4px 14px;margin-top:14px;font-size:.75rem}.section{padding-block:28px}.section-heading{flex-wrap:wrap;align-items:baseline;gap:12px}.section-heading h2{font-size:1.2rem}.section-heading .text-link{font-size:.75rem}.category-grid{grid-template-columns:1fr}.category-card{align-items:center;padding-block:17px}.category-card p{font-size:.78rem}.directory-notes{grid-template-columns:1fr;gap:25px;padding-bottom:30px}.directory-contribute{border-left:0;padding-left:0}.footer-top,.footer-bottom{flex-direction:column;align-items:flex-start;gap:12px;padding-block:20px}.footer-top nav{justify-content:flex-start}footer nav{gap:8px 20px}.profile-grid{grid-template-columns:1fr;gap:0}.detail-panel{padding:24px 0}.page-heading{padding-top:26px}.pagination{gap:12px;font-size:.75rem}.pagination .button{padding:10px 12px}.supplier-title h3{font-size:1.1rem}.results-grid{grid-template-columns:1fr}.supplier-card{grid-template-columns:minmax(0,1fr);gap:18px;padding:28px 0}.supplier-facts{grid-column:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.supplier-facts .delivery-fact{grid-column:1/-1}.supplier-top{gap:10px}.supplier-logo{width:156px;height:72px}.supplier-bottom{gap:10px}.brand-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-intro{grid-template-columns:1fr;gap:22px}.profile-intro .supplier-logo{width:190px;height:104px;padding:20px}.ordering-grid{grid-template-columns:1fr}.ordering-card{grid-template-columns:1fr;gap:12px;padding:24px 0}.ordering-section{padding-block:24px}.ordering-card .source-link{grid-column:auto}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}[hidden]{display:none!important}.static-search{padding-top:0}.category-field{flex:.8}.category-field select{background:var(--surface);width:100%;height:50px;color:var(--ink);border:1px solid #9ba8b1;border-radius:4px;padding:0 12px}.catalog-size{color:var(--muted);margin-top:14px;font-size:.78rem}button:disabled{opacity:.5;cursor:default}.category-count{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.75rem}.supplier-overview{min-width:0}.detail-panel .provenance{margin-top:16px}
