/* Keep readable text independent of the cedar texture and decorative effects. */
.reference-home {
  --readable-ink: #101d14;
  background: #c4d5c1;
  --serif: Georgia, "Times New Roman", serif;
  font-size: 18px;
  line-height: 1.7;
  color: var(--readable-ink);
}
.reference-home :is(.intro, .map-section, .retreat-spaces, .hosting, .people, .vision, .connect, .treehouse-experience) {
  --readable-ink: #101d14;
  color: var(--readable-ink);
}
.reference-home :is(.explore, .mushrooms, .quote-section, footer) {
  --readable-ink: #101d14;
  color: var(--readable-ink);
}
.reference-home :is(h1, h2, h3, p, li, figcaption, blockquote, cite, .eyebrow, .panel-kicker, .hosting-note, .map-detail > span, .vision-grid article > span, .bio-content h3 span) {
  color: var(--readable-ink) !important;
  -webkit-text-fill-color: currentColor !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
  opacity: 1 !important;
}
.reference-home :is(h1, h2, h3, blockquote) {
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 700;
  line-height: 1.15;
}
.reference-home :is(p, li) { font-size: max(18px, 1rem); line-height: 1.7; }
.reference-home :is(figcaption, cite, .hosting-note, .map-caption, .bio-content h3 span, .vision-grid article > span) {
  font-family: var(--sans); font-size: 16px; line-height: 1.6; font-weight: 500;
}
.reference-home :is(.eyebrow, .panel-kicker, .bio-role, .map-detail > span) {
  font-family: var(--sans); font-weight: 700; letter-spacing: .08em;
}
.reference-home :is(.panel-kicker, .bio-role, .map-detail > span) { font-size: 16px; }
.reference-home .hero-content .hero-message {
  --readable-ink: #101d14;
  position: relative; z-index: 4;
  padding: clamp(22px, 3vw, 42px);
  background: #f6edda;
  border: 1px solid #725632;
  border-radius: 18px;
  box-shadow: 0 8px 28px #24180e33;
}
.reference-home .hero-content { padding-inline: clamp(24px, 8vw, 100px); }
.reference-home .hero-content h1 { font-size: clamp(34px, 5.8vw, 68px); font-weight: 700; letter-spacing: -.025em; }
.reference-home .hero-content .hero-copy { font-size: clamp(18px, 2vw, 22px); font-weight: 500; line-height: 1.7; }
.reference-home .hero .hero-note {
  --readable-ink: #101d14;
  width: fit-content; max-width: calc(100% - 48px);
  margin: 0 auto 24px; padding: 9px 18px;
  position: relative; z-index: 4;
  background: #f6edda; border-radius: 8px; font-size: 16px;
}
.reference-home :is(.text-link, .map-jump, .experience-source a, .forest-sources a) {
  color: var(--readable-ink) !important; opacity: 1;
  font-size: 18px; font-weight: 700;
  text-decoration: underline; text-underline-offset: 5px; text-decoration-thickness: 1.5px;
}
.reference-home .hero-content .text-link span { color: inherit; }
.reference-home .button {
  font-size: 18px; font-weight: 700;
  color: #101d14 !important; background: #c6d8c0 !important;
  border: 1px solid #536c4e; line-height: 1.4; text-align: center;
}
.reference-home .values span, .reference-home .treehouse-badge, .reference-home .treehouse-badge > span {
  color: #101d14; font-size: 16px; opacity: 1;
}
.reference-home .values span { background: #f6edda; }
.reference-home .explore { background: linear-gradient(140deg, #dde8d5, #b8ccb3 75%); }
.reference-home .experience-card { background: #e0ead8; border-color: #758a6e; }
.reference-home .mushrooms { background: #c4d5bd; }
.reference-home .mushroom-varieties article > span { color: #614619; font-size: 16px; font-weight: 700; }
.reference-home .foraging-note { background: #e5ecdc; }
.reference-home .experience-tab {
  color: #101d14; font-size: 18px; font-weight: 700; opacity: 1;
}
.reference-home .experience-tab.active { border-bottom: 3px solid #51406e; }
.reference-home .experience-shell, .reference-home .experience-panel li { border-color: #758a6e; }
.reference-home .experience-shortcuts a {
  color: #101d14; font-size: 16px; font-weight: 600; background: #e0ead8; border-color: #758a6e;
}
.reference-home .experience-shortcuts a:is(:hover, :focus-visible) { background: #f3f6ec; border-color: #536c4e; }
.reference-home .treehouse-experience { background: #f5f3e9; }
.reference-home .quote-section {
  background: linear-gradient(90deg, #d4e2cdef, #c4d5bdeb), url('./assets/woodland-path.webp') center 48%/cover;
}
.reference-home .quote-section blockquote { background: #e5ecdc; padding: 24px; border-radius: 14px; }
.reference-home .accordion summary { color: #101d14 !important; font-size: clamp(22px, 2.5vw, 30px); font-weight: 700; line-height: 1.4; }
.reference-home .map-point { color: #101d14; background: #faf5e8; font-size: 15px; font-weight: 700; line-height: 1.4; }
.reference-home .map-point span { color: #614619; }
.reference-home .map-point:is(.active, :hover) { color: #101d14; background: #c6d8c0; border-color: #536c4e; }
.reference-home .map-point:is(.active, :hover) span { color: #614619; }
.reference-home .map-caption { background: #faf5e8; border-radius: 4px; padding: 5px 10px; }
.reference-home .nav .brand-menu > summary .stump-menu-label {
  color: #101d14; background: #f6edda; font: 700 14px/1.4 var(--sans); padding: 4px 6px;
}
.reference-home .nav .page-menu-links { background: #f5f3e9; }
.reference-home .nav nav .page-menu-links .section-menu-links { grid-template-columns: minmax(0, 1fr); }
.reference-home .nav nav .page-menu-links :is(.section-menu-links a, .experience-submenu-links a) {
  color: #101d14 !important; background: #dce7d4 !important;
  font-family: var(--sans); font-size: 18px; font-weight: 700; line-height: 1.45;
  opacity: 1; text-shadow: none; min-height: 48px;
}
.reference-home .nav nav .page-menu-links .experience-submenu > summary {
  color: #fffaf1 !important; background: #39244d !important;
  font-family: var(--sans); font-size: 18px; font-weight: 700;
  line-height: 1.45; opacity: 1; text-shadow: none;
}
.reference-home .nav nav .page-menu-links a:is(:hover, :focus-visible, [aria-current]) { outline: 2px solid #614619; outline-offset: 1px; }
.reference-home footer { background: #c4d5c1; }
.reference-home .footer-brand .brand-wordmark { color: #101d14; }
.reference-home .footer-brand .brand-retreat { color: #101d14; }
.reference-home footer .badge-established { color: #101d14; font-size: 14px; }
/* Raise written content above the stream while retaining its path and motion. */
.reference-home main > section > :not(.cedar-stone-backdrop, .hero-shade, .ripple),
.reference-home .quote-section > blockquote { position: relative; z-index: 4; }
@media (max-width: 620px) {
  .reference-home .hero-content { padding: 10px 24px 36px; }
  .reference-home .hero-content .hero-message { padding: 22px 18px; }
  .reference-home .hero-content h1 { font-size: clamp(32px, 8.5vw, 48px); }
  .reference-home .hero-content .hero-actions { gap: 18px; }
  .reference-home .hero-content .button { font-size: 18px; padding-inline: 18px; }
  .reference-home .hero-content .text-link { font-size: 18px; }
}
@media (forced-colors: active) {
  .reference-home { --readable-ink: CanvasText; }
  .reference-home :is(section, article, footer, .hero-message, .hero-note) { --readable-ink: CanvasText; background: Canvas !important; }
  .reference-home :is(.button, .map-point, .experience-tab, .experience-shortcuts a),
  .reference-home .nav nav .page-menu-links :is(a, summary) { color: ButtonText !important; background: ButtonFace !important; }
}
