.resource-section{padding:3rem 0 4rem;background:#f4f7f2;color:#193c2d}
.resource-content{max-width:1100px}
.resource-content a:not(.button){color:#155c3f;text-decoration:underline;text-underline-offset:.2em}
.resource-filter{display:flex;flex-wrap:wrap;align-items:end;gap:1rem;margin:2rem 0;padding:1.5rem;background:#fff;border:1px solid #ccd9cd;border-radius:1rem}
.resource-filter>div{flex:1 1 200px;min-width:0}
.resource-filter label{display:block;font-weight:700;margin-bottom:.5rem}
.resource-filter input,.resource-filter select{width:100%;min-height:48px;padding:.7rem;border:1px solid #617869;border-radius:.4rem;background:#fff;color:#193c2d;font:inherit}
.resource-filter .button{min-height:48px}
.resource-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin:2rem 0}
.resource-heading h2{margin:0}
.classes-table{width:100%;border-collapse:collapse;background:#fff;font-size:1rem}
.classes-table caption{text-align:left;padding:0 0 1rem;color:#304b3c}
.classes-table th,.classes-table td{text-align:left;padding:.85rem;border-bottom:1px solid #ccd9cd;overflow-wrap:anywhere}
.classes-table thead{background:#0a4631;color:#fff}
.classes-table tbody tr:nth-child(even){background:#eaf2e9}
.download-category{margin:3rem 0}
.download-category>p{max-width:75ch}
.download-list{list-style:none;padding:0;display:grid;gap:1rem}
.download-card{background:#fff;border:1px solid #ccd9cd;border-radius:.75rem;padding:1.5rem;display:flex;align-items:start;gap:1rem;justify-content:space-between}
.download-card>div{min-width:0}
.download-card h3{margin:0;font-size:1.15rem;overflow-wrap:anywhere}
.download-card p{margin:.6rem 0 0;overflow-wrap:anywhere}
.download-meta{font-size:.9rem;color:#405849}
.archive-label{padding:.3rem .65rem;border-radius:.3rem;background:#e9eee7;color:#304b3c;font-size:.85rem;font-weight:700;flex-shrink:0}
.resource-back{margin-top:2rem}
.hero-resource-links{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1.5rem;align-items:center}
.hero-resource-links a:not(.button){color:#fff;text-decoration:underline}
@media(max-width:640px){.resource-filter{padding:1rem}.resource-filter>div{flex-basis:100%}.classes-table{font-size:.85rem}.classes-table th,.classes-table td{padding:.65rem .4rem}.download-card{padding:1rem;flex-direction:column}.resource-heading .button{white-space:normal}.resource-section{padding-top:2rem}}
