/* Entomofauna uses the site's typography, palette and rounded cards. */
.resource-site { -webkit-font-smoothing:antialiased; }
.resource-site .r-body > .r-prose { width:100%; max-width:100%; }
.resource-site .r-prose { font-size:1rem; line-height:1.75; }
.resource-site .r-prose section { margin-bottom:56px; }
.resource-site .r-prose section > h2 { max-width:30ch; margin-bottom:24px; font-size:clamp(1.65rem,2.8vw,2.25rem); line-height:1.2; }
.resource-site .r-prose section > h2::before { display:block; width:36px; height:3px; margin-bottom:18px; border-radius:3px; background:var(--orange); content:""; }
.resource-site .r-prose p { margin-bottom:22px; }
.resource-site .r-aside { border:1px solid #e4dfd3; border-radius:20px; }
.resource-site .r-prose .r-table-region { max-width:100%; overflow-x:auto; margin:28px 0; border:1px solid #deded3; border-radius:20px; background:#fff; }
.resource-site .r-prose .r-table-region:focus-visible { outline:3px solid var(--orange); outline-offset:4px; }
.resource-site .r-prose .r-table-region table { width:100%; border-collapse:collapse; font-size:.875rem; line-height:1.65; }
.resource-site .r-prose .r-table-region caption { text-align:left; padding:24px; font-family:'Libre Franklin',sans-serif; font-size:1.05rem; font-weight:600; line-height:1.5; color:var(--forest); background:var(--cream); }
.resource-site .r-prose .r-table-region th,
.resource-site .r-prose .r-table-region td { padding:18px 16px; vertical-align:top; text-align:left; border-top:1px solid #e3e5dc; overflow-wrap:anywhere; }
.resource-site .r-prose .r-table-region thead th { background:var(--forest); color:#fff; font-size:.78rem; font-weight:600; }
.resource-site .r-prose .r-table-region tbody th { width:23%; color:var(--forest); font-weight:600; }
.resource-site .r-prose .r-table-region tbody tr:nth-child(even) { background:#faf9f5; }
.resource-site .r-prose .r-cell-label { display:none; }
.resource-site .r-prose .r-cell-value { display:block; }
.resource-site .r-prose .r-table-cite { display:inline-block; margin-left:2px; white-space:nowrap; font-size:.75rem; }
.resource-site .r-prose .r-table-compact { table-layout:fixed; }
.resource-site .r-prose .r-table-compact th:first-child { width:42%; }
.resource-site .r-prose .r-table-compact td,
.resource-site .r-prose .r-table-compact thead th:not(:first-child) { text-align:center; font-variant-numeric:tabular-nums; }
.resource-site .r-prose .r-table-compact tbody td { color:var(--forest); font-weight:600; }
.resource-site .r-prose .r-table-compact tbody tr:last-child { background:var(--cream); }
.resource-site .r-prose .r-table-compact tbody tr:last-child td { font-size:1.5rem; line-height:1.2; }
.resource-site .r-prose .r-service { padding:30px; border:0; border-radius:20px; color:#fff; background:var(--forest); }
.resource-site .r-prose .r-service h2 { color:#fff; }
.resource-site .r-prose .r-service a { display:inline-block; padding:12px 20px; border-radius:999px; color:var(--forest); background:#fff; font-size:.875rem; font-weight:600; text-decoration:none; }
.resource-site .r-prose .r-service a:hover { background:var(--cream); }
.resource-site .r-prose .r-person { padding:28px; border-radius:20px; background:var(--cream); }
@media (min-width:851px) {
  .resource-site .r-aside { position:sticky; top:28px; }
}
@media (max-width:720px) {
  .resource-site .r-wrap { width:calc(100% - 40px); }
  .resource-site .r-prose { font-size:1rem; line-height:1.7; }
  .resource-site .r-prose section { margin-bottom:44px; }
  .resource-site .r-prose section > h2 { margin-bottom:22px; font-size:1.65rem; }
  .resource-site .r-prose .r-table-region { overflow:visible; border:0; border-radius:0; background:transparent; }
  .resource-site .r-prose .r-table-region caption { padding:20px; font-size:.95rem; }
  .resource-site .r-prose .r-table-wide { display:block; }
  .resource-site .r-prose .r-table-wide caption { display:block; margin-bottom:14px; border:1px solid #e4dfd3; border-radius:16px; }
  .resource-site .r-prose .r-table-wide thead { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
  .resource-site .r-prose .r-table-wide tbody { display:grid; gap:14px; }
  .resource-site .r-prose .r-table-wide tbody tr { display:block; overflow:hidden; border:1px solid #deded3; border-radius:16px; background:#fff; }
  .resource-site .r-prose .r-table-wide tbody th { display:block; width:100%; padding:18px 20px; border:0; color:#fff; background:var(--forest); font-family:'Libre Franklin',sans-serif; font-size:.95rem; line-height:1.5; }
  .resource-site .r-prose .r-table-wide .r-table-cite { color:#fff; }
  .resource-site .r-prose .r-table-wide tbody td { display:block; padding:16px 20px; }
  .resource-site .r-prose .r-table-wide .r-cell-label { display:block; margin-bottom:6px; color:var(--orange); font-size:.73rem; font-weight:700; letter-spacing:.015em; }
  .resource-site .r-prose .r-table-region:has(.r-table-compact) { overflow:hidden; border:1px solid #deded3; border-radius:16px; background:#fff; }
  .resource-site .r-prose .r-table-compact th,
  .resource-site .r-prose .r-table-compact td { padding:16px 10px; font-size:.8rem; line-height:1.6; }
  .resource-site .r-prose .r-table-compact td { white-space:nowrap; }
  .resource-site .r-prose .r-table-compact thead th { padding:14px 10px; font-size:.74rem; }
  .resource-site .r-prose .r-service,
  .resource-site .r-prose .r-person { padding:24px; }
}
@media print {
  .resource-site .r-prose .r-table-region { overflow:visible; }
  .resource-site .r-prose .r-table-region table { font-size:10pt; }
  .resource-site .r-prose .r-table-region tr { break-inside:avoid; }
}
