.agro-directory{--agro-dark:#092711;--agro-lime:#bde766;--agro-pale:#f2f6ed;--agro-border:#dce5d6;color:var(--agro-dark);font:inherit;line-height:1.6;width:100%;text-align:left}
.agro-directory *{box-sizing:border-box}.agro-directory a{color:inherit}.agro-directory button,.agro-directory input,.agro-directory select{font:inherit}.agro-directory h2,.agro-directory h3{color:var(--agro-dark);line-height:1.25;margin:0 0 16px;padding:0}.agro-directory p{padding:0;margin:0 0 16px}.agro-directory .agro-filters{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:18px;background:var(--agro-pale);border:1px solid var(--agro-border);border-radius:24px;padding:28px;margin:0 0 24px}.agro-directory .agro-field{min-width:0}.agro-directory label{display:block;font-weight:600;font-size:14px;margin-bottom:8px}.agro-directory input,.agro-directory select{background:#fff;color:var(--agro-dark);border:1px solid #c8d3c3;border-radius:12px;min-height:48px;padding:11px 12px;width:100%;max-width:100%;font-size:15px;line-height:1.5}.agro-directory :is(input,select,button,a):focus-visible{outline:3px solid #47752d;outline-offset:4px}.agro-directory .agro-filter-buttons{grid-column:1/-1;display:flex;align-items:center;gap:20px;flex-wrap:wrap}.agro-directory .agro-button{display:inline-flex;justify-content:center;align-items:center;gap:14px;background:var(--agro-lime);color:var(--agro-dark);border:1px solid transparent;border-radius:999px;padding:12px 23px;text-decoration:none;font-size:15px;font-weight:600;line-height:1.5;cursor:pointer;transition:background .15s ease,transform .15s ease}.agro-directory .agro-button:hover{background:#a9d653;color:var(--agro-dark);transform:translateY(-1px)}.agro-directory .agro-reset{font-size:14px;text-decoration:underline;text-underline-offset:4px}.agro-directory .agro-count{font-size:14px;margin:0 0 20px}.agro-directory .agro-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.agro-directory .agro-card{display:flex;flex-direction:column;padding:28px;border:1px solid var(--agro-border);background:var(--agro-pale);border-radius:24px;min-width:0;overflow:hidden}.agro-directory .agro-card-featured{background:#e6f2cb;border-color:#b4d78a}.agro-directory .agro-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:22px}.agro-directory .agro-logo{display:flex;align-items:center;justify-content:center;width:104px;height:80px;background:#fff;border-radius:12px;padding:10px;text-decoration:none;flex-shrink:0}.agro-directory .agro-logo img{width:100%;height:100%;object-fit:contain;display:block}.agro-directory .agro-logo-placeholder{font-size:25px;font-weight:700;color:#476637}.agro-directory .agro-badge{display:inline-block;border-radius:999px;background:var(--agro-dark);color:#fff;padding:5px 11px;font-size:12px;white-space:nowrap}.agro-directory .agro-card-categories{font-size:12px;line-height:1.5;color:#4a643e;margin:0 0 12px;overflow-wrap:anywhere}.agro-directory .agro-card h3{font-size:23px;overflow-wrap:anywhere;margin:0 0 12px}.agro-directory .agro-card h3 a{text-decoration:none}.agro-directory .agro-card h3 a:hover{text-decoration:underline}.agro-directory .agro-tagline{font-weight:600;font-size:15px}.agro-directory .agro-excerpt{font-size:14px;color:#52604d}.agro-directory .agro-location{font-size:14px;margin-top:auto;padding-top:12px}.agro-directory .agro-card-link{margin-top:auto;align-self:flex-start}.agro-directory .agro-location+.agro-card-link{margin-top:0}.agro-directory .agro-empty{padding:40px;background:var(--agro-pale);border-radius:24px}.agro-directory .agro-empty h3{font-size:24px}.agro-directory .agro-pagination{margin-top:32px}.agro-directory .agro-pagination ul{display:flex;gap:8px;flex-wrap:wrap;list-style:none!important;padding:0!important;margin:0!important}.agro-directory .agro-pagination li{padding:0}.agro-directory .agro-pagination a,.agro-directory .agro-pagination span{display:block;padding:8px 15px;border:1px solid var(--agro-border);border-radius:10px;text-decoration:none}.agro-directory .agro-pagination .current{background:var(--agro-dark);color:#fff}.agro-directory .agro-profile-header{display:flex;align-items:center;gap:28px;padding:32px;border-radius:24px;background:var(--agro-pale);margin-bottom:32px}.agro-directory .agro-profile-header h2{font-size:clamp(26px,3vw,38px)}.agro-directory .agro-profile-logo{background:#fff;border-radius:16px;padding:18px;flex:0 0 150px}.agro-directory .agro-profile-logo img{width:100%;height:110px;object-fit:contain;display:block}.agro-directory .agro-eyebrow{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.08em}.agro-directory .agro-profile-tagline{font-size:20px}.agro-directory .agro-profile-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:36px}.agro-directory .agro-profile-layout h3{font-size:24px}.agro-directory .agro-description{margin-bottom:32px;overflow-wrap:anywhere}.agro-directory .agro-contact{border:1px solid var(--agro-border);background:var(--agro-pale);border-radius:24px;padding:28px;align-self:start;min-width:0}.agro-directory dl{margin:0}.agro-directory dt{font-size:13px;font-weight:600;color:#52604d;margin:16px 0 4px}.agro-directory dd{margin:0;overflow-wrap:anywhere}.agro-directory dd a{text-decoration:underline;text-underline-offset:3px}.agro-directory .agro-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.agro-directory .agro-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px;display:block}.agro-directory .agro-banner{margin-top:32px}.agro-directory .agro-banner img{width:100%;height:auto;display:block;border-radius:18px}
@media(max-width:980px){.agro-directory .agro-filters{grid-template-columns:1fr 1fr}.agro-directory .agro-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.agro-directory .agro-profile-layout{grid-template-columns:1fr}}
@media(max-width:600px){.agro-directory .agro-filters{grid-template-columns:1fr;padding:20px;border-radius:18px}.agro-directory .agro-grid{grid-template-columns:1fr;gap:18px}.agro-directory .agro-card{padding:24px}.agro-directory .agro-profile-header{flex-direction:column;align-items:flex-start;padding:24px}.agro-directory .agro-profile-logo{flex-basis:auto;width:150px}.agro-directory .agro-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.agro-directory .agro-contact{padding:22px}}
@media(prefers-reduced-motion:reduce){.agro-directory .agro-button{transition:none;transform:none}}
