/* Shared header, navigation and footer. Extracted from the accepted homepage. */
.bs-page .bh-header, .bs-page .bh-footer {
 --bf-color-canvas: #f4eddd; --bf-color-surface: #fbf6eb;
 --bf-color-ink: #242619; --bf-color-ink-secondary: #3d4336;
 --bf-color-line: #e3d8c4; --bf-color-brass: #5c3e1c;
 font-size:14px; line-height:1.45; color:var(--bf-color-ink);
}
.bs-page[data-bf-theme="dark"] .bh-header, .bs-page[data-bf-theme="dark"] .bh-footer {
 --bf-color-canvas:#061b15; --bf-color-surface:#0b251d;
 --bf-color-ink:#eee4cb; --bf-color-ink-secondary:#d5ccb8;
 --bf-color-line:#1d3b31; --bf-color-brass:#d0a555;
}
.bs-page .bh-header .bh-wrap, .bs-page .bh-footer .bh-wrap {
 width:min(100% - 4rem,1120px); margin-inline:auto; min-width:0;
}
@media(max-width:640px) {
 .bs-page .bh-header .bh-wrap, .bs-page .bh-footer .bh-wrap {width:min(100% - 1.5rem,1120px);}
}
.bh-header {
  position: sticky;
  top: 0;
  z-index: 4;
  background: var(--bf-color-canvas);
  border-bottom: 1px solid var(--bf-color-line);
}

.bh-bar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem 0.75rem;
  min-height: 4.25rem;
  padding-block: 0.4rem;
}

.bs-page .bf-brand {
  min-width: 0;
  margin-right: auto;
}

.bs-page .bh-brand-morel {
  display: block;
  width: 32px;
  height: 40px;
  flex: 0 0 auto;
  object-fit: contain;
  background: transparent;
  border-radius: 0;
}

.bh-tools {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-left: auto;
}

.bh-menu-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: var(--bf-control-size);
  min-height: var(--bf-control-size);
  padding: 0.4rem 0.8rem;
  border: 1px solid var(--bf-color-control);
  border-radius: 999px;
  background: var(--bf-color-surface);
  color: var(--bf-color-ink);
  font: inherit;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.2;
  cursor: pointer;
}

.bh-menu-button {
  display: none;
}

.bh-nav {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.15rem;
}

.bs-page a.bh-nav-link {
  display: inline-flex;
  align-items: center;
  min-height: var(--bf-control-size);
  padding: 0.35rem 0.7rem;
  border-radius: 999px;
  color: var(--bf-color-ink);
  font-weight: 600;
  text-decoration: none;
}

.bs-page .bh-menu-button .bh-press {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
}

.bh-footer {
  padding-block: 1.75rem 2.5rem;
  border-top: 1px solid var(--bf-color-line);
  background: var(--bf-color-surface-sunken);
  color: var(--bf-color-ink);
}

.bh-footer-brand {
  margin: 0 0 1rem;
  color: var(--bf-color-ink);
  font-family: var(--bf-font-serif);
  font-size: 1.35rem;
}

.bh-footer-groups {
  display: grid;
  gap: 0.5rem 2rem;
}

.bh-footer-label {
  margin: 0;
  color: var(--bf-color-brass);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.4;
  text-transform: uppercase;
}

.bh-footer-links {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0;
  margin: 0.15rem 0 0;
  padding: 0;
  list-style: none;
}

.bh-footer-links a,
.bh-footer-meta a {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  min-height: var(--bf-control-size);
  color: var(--bf-color-brass);
  font-weight: 600;
  overflow-wrap: anywhere;
}

.bh-footer-note {
  max-width: 46rem;
  margin: 1.25rem 0 0;
  color: var(--bf-color-ink);
  font-size: 0.95rem;
  line-height: 1.55;
}

.bh-footer-meta {
  max-width: 46rem;
  margin: 0.35rem 0 0;
  color: var(--bf-color-ink);
  font-size: 0.92rem;
  line-height: 1.5;
}

@media (max-width: 767px) {
.bh-menu-button {
    display: inline-flex;
  }

.bs-page .bh-brand-morel {
    width: 30px;
    height: 38px;
  }

.bs-page:not([data-bs-ready]) .bh-nav {
    flex-basis: 100%;
    flex-direction: column;
    align-items: stretch;
  }

.bs-page[data-bs-ready] .bh-nav {
    position: absolute;
    z-index: 5;
    top: 100%;
    left: 0;
    right: 0;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    padding: 0.4rem 1rem 0.8rem;
    border-bottom: 1px solid var(--bf-color-line);
    background: var(--bf-color-surface);
  }

.bs-page a.bh-nav-link {
    justify-content: flex-start;
  }

.bs-page[data-bs-ready]:not([data-bh-menu="open"]) .bh-nav {
    display: none;
  }

}

@media (min-width: 768px) {
.bh-footer-groups {
    grid-template-columns: 1.3fr 0.7fr 1fr;
  }

}

@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
.bs-page a.bh-nav-link:hover {
    background: var(--bf-color-surface-sunken);
  }

}

@media (prefers-reduced-motion: no-preference) {
.bs-page:not([data-bh-paused="true"]) .bh-menu-button:active .bh-press {
    transform: scale(0.98);
    transition: transform 140ms cubic-bezier(0.2, 0.9, 0.3, 1);
  }

}

.bs-page .bf-theme {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
}

.bs-page .bf-theme-switch {
  width: 48px;
  height: 48px;
  min-width: 48px;
  min-height: 48px;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.bs-page .bf-theme-switch::before {
  content: "";
  position: absolute;
  inset: 6px;
  border: 1px solid var(--bf-color-line);
  border-radius: 999px;
  background: var(--bf-color-surface);
}

.bs-page .bf-theme-icon {
  inset: 15px;
  width: 18px;
  height: 18px;
}

.bs-page .bh-header {
  position: absolute;
  top: 0;
  left: 56px;
  right: 56px;
  z-index: 5;
  height: 64px;
  background: rgba(244, 237, 221, 0.92);
  border: 0;
  border-radius: 0 0 16px 16px;
}

.bs-page[data-bf-theme="dark"] .bh-header {
  background: rgba(6, 27, 21, 0.78);
}

.bs-page .bh-bar {
  min-height: 64px;
  padding-block: 0;
}

.bs-page .bh-footer {
  padding: 1.1rem 0 0.9rem;
}

.bs-page .bh-footer .bh-wrap {
  display: grid;
  grid-template-columns: minmax(8rem, 0.7fr) minmax(0, 2fr);
  gap: 0.35rem 1.5rem;
  align-items: start;
}

.bs-page .bh-footer-brand {
  display: flex;
  align-items: center;
  gap: 0.55rem;
  margin: 0;
  font-size: 1.35rem;
}

.bs-page .bh-footer-groups {
  grid-column: 2;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.5rem 1rem;
}

.bs-page .bh-footer-note,
.bs-page .bh-footer-meta {
  grid-column: 1 / -1;
  margin: 0.2rem 0 0;
}

.bs-page .bh-footer-label {
  margin-bottom: 0.15rem;
}

.bs-page .bh-footer-links a,
.bs-page .bh-footer-meta a {
  min-height: 32px;
  padding: 0 0.35rem;
  color: var(--bf-color-ink-secondary);
  font-size: 14px;
  font-weight: 500;
  line-height: 1.2;
  text-decoration: none;
}

.bs-page .bh-footer-links a:hover,
.bs-page .bh-footer-meta a:hover {
  text-decoration: underline;
}

.bs-page .bh-footer-note,
.bs-page .bh-footer-meta {
  max-width: none;
  font-size: 12px;
  line-height: 1.35;
}

@media (max-width: 899px) {
.bs-page .bh-header {
    position: sticky;
    left: 0;
    right: 0;
    border-radius: 0;
  }

.bs-page .bh-footer .bh-wrap {
    display: block;
  }

}

@media (max-width: 640px) {
.bs-page .bh-footer-groups {
    grid-template-columns: 1fr;
  }

.bs-page .bh-footer-links a {
    min-height: 48px;
  }

}

/* Keep the shared header on one row on small phones. */
@media (max-width: 360px) {
  .bs-page .bh-bar { flex-wrap: nowrap; gap: .35rem; }
  .bs-page .bf-brand { font-size: 1.2rem; gap: .35rem; }
  .bs-page .bh-brand-morel { width: 24px; height: 34px; }
  .bs-page .bh-tools { gap: .3rem; flex-shrink: 0; }
  .bs-page .bh-menu-button { padding-inline: .6rem; }
}

/* Shared navigation polish: identical on home, recognition and species cards. */
.bs-page .bh-header{height:72px;background:rgba(251,246,235,.96);box-shadow:0 8px 30px #1d33280a;border:1px solid #e3d8c4;border-top:0;backdrop-filter:blur(16px)}
.bs-page[data-bf-theme="dark"] .bh-header{background:rgba(6,27,21,.94);border-color:#345344;box-shadow:0 8px 30px #0002}
.bs-page .bh-bar{min-height:72px;gap:.6rem 1rem;flex-wrap:nowrap}
.bs-page .bh-header .bf-brand{display:flex;align-items:center;gap:.6rem;text-decoration:none;white-space:nowrap;letter-spacing:-.02em;font-size:1.55rem;line-height:1}
.bs-page .bh-header .bh-brand-morel{width:34px;height:46px}
.bs-page .bh-nav{gap:.25rem}
.bs-page .bh-nav-link{font-size:.9rem;line-height:1.2;border:1px solid transparent}
.bs-page .bh-nav-link[aria-current]{background:var(--bf-color-surface);border-color:var(--bf-color-line);color:var(--bf-color-brass)}
.bs-page .bh-tools{gap:.6rem}
.bs-page .bf-theme-switch{width:42px;height:42px;border:1px solid var(--bf-color-line);background:var(--bf-color-surface)}
.bs-page .bh-menu-button{min-height:44px;min-width:44px;background:transparent;border-color:var(--bf-color-line);font-size:.85rem}
.bs-page .bh-menu-glyph{flex-shrink:0}
.bs-page{--knowledge-header-offset:72px}
@media(max-width:899px){.bs-page .bh-header{height:64px;border-radius:0;border-left:0;border-right:0}.bs-page .bh-bar{min-height:64px}.bs-page{--knowledge-header-offset:64px}}
@media(max-width:767px){
 .bs-page .bh-header .bf-brand{font-size:1.4rem;gap:.4rem}.bs-page .bh-header .bh-brand-morel{width:28px;height:38px}
 .bs-page .bh-tools{gap:.4rem}.bs-page .bf-theme-switch{width:38px;height:38px}
 .bs-page[data-bs-ready] .bh-nav{margin:.35rem .5rem 0;padding:.5rem;border:1px solid var(--bf-color-line);border-radius:16px;box-shadow:0 14px 30px #0002;background:var(--bf-color-surface)}
 .bs-page .bh-nav-link{min-height:48px;padding:.7rem .9rem;font-size:1rem}
}
@media(max-width:360px){.bs-page .bh-header .bf-brand{font-size:1.2rem;gap:.25rem}.bs-page .bh-header .bh-brand-morel{width:23px;height:34px}.bs-page .bh-menu-label{display:none}.bs-page .bh-menu-button{padding:.5rem}.bs-page .bh-bar{gap:.3rem}}
/* Shared product terms and FAQ; sourced by the site-schema build. */
.bs-page .bp-main,.bs-page .bp-faq{max-width:1120px;margin:0 auto;padding:36px 24px}.bs-page .bp-main{padding-top:120px}.bs-page .bp-main h1{font:500 clamp(2.6rem,6vw,4.7rem)/1.08 var(--bf-font-serif);margin:12px 0 24px}.bs-page .bp-kicker{font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;color:var(--bf-color-brass)}.bs-page .bp-options{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:32px}.bs-page .bp-options article{padding:28px;border:1px solid var(--bf-color-line);border-radius:20px;background:var(--bf-color-surface)}.bs-page .bp-options h2,.bs-page .bp-faq h2{font:500 1.8rem/1.2 var(--bf-font-serif)}.bs-page .bp-link{display:inline-block;color:var(--bf-color-brass);padding:12px 0}.bs-page .bp-faq details{border-bottom:1px solid var(--bf-color-line);padding:18px 0}.bs-page .bp-faq summary{cursor:pointer;font-weight:600}.bs-page .bp-faq p{color:var(--bf-color-ink-secondary)}.bs-page .bp-access{border:1px solid var(--bf-color-line);border-radius:12px;padding:12px 16px;font-size:.85rem;background:var(--bf-color-surface);color:var(--bf-color-ink-secondary);margin:0 0 20px}@media(max-width:800px){.bs-page .bp-main{padding-top:28px}.bs-page .bp-options{grid-template-columns:1fr}.bs-page .bp-faq{padding:24px 20px}.br-page .bp-faq{padding-bottom:100px}}
.bh-footer .bh-ad-privacy{display:inline-flex;align-items:center;min-height:44px;margin:12px 0 0;padding:8px 0;border:0;background:transparent;color:var(--bf-color-ink-secondary);font:inherit;font-size:.85rem;text-decoration:underline;text-underline-offset:.2em;cursor:pointer}
.bh-footer .bh-ad-privacy[hidden]{display:none}
.bh-footer .bh-ad-privacy:focus-visible{outline:3px solid var(--bf-color-focus);outline-offset:3px}
