/* A page's own contents, placed below its introduction. */
body.ethera-front-page.ethera-has-wayfinding .ethera-reading-progress {
  display: none !important;
}
body.ethera-front-page .ethera-wayfinding {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 8;
  margin: 0;
  border-top: 1px solid #ddbd7526;
  border-bottom: 1px solid #ddbd7533;
  background: #0b182af5;
  color: var(--ethera-ivory, #f0e7d2);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}
body.ethera-front-page .ethera-wayfinding-spacer {
  display: block;
  height: 59px;
  margin: 0 0 28px;
  pointer-events: none;
}
body.ethera-front-page .ethera-wayfinding-inner {
  display: flex;
  align-items: center;
  gap: 22px;
  max-width: 1200px;
  min-height: 55px;
  margin-inline: auto;
  padding-inline: 18px;
}
body.ethera-front-page .ethera-wayfinding-label {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  text-decoration: none;
  border-radius: 4px;
  font-size: 10px;
  font-weight: 650;
  letter-spacing: .075em;
  text-transform: uppercase;
  color: var(--ethera-gold, #ddbd75);
}
body.ethera-front-page .ethera-wayfinding-links {
  display: flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scrollbar-width: thin;
  scrollbar-color: #c89d5066 transparent;
  padding-block: 6px;
}
body.ethera-front-page .ethera-wayfinding-links a {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  padding: 8px 12px;
  border-radius: 5px;
  color: #bec8d5;
  font-family: var(--ethera-body, system-ui, sans-serif);
  font-size: 12px;
  line-height: 1.4;
  white-space: nowrap;
  text-decoration: none;
  transition: color 160ms ease, background-color 160ms ease;
}
body.ethera-front-page .ethera-wayfinding-links a:hover {
  color: var(--ethera-ivory, #f0e7d2);
  background: #ffffff08;
}
body.ethera-front-page .ethera-wayfinding-links a[aria-current="location"] {
  color: var(--ethera-gold, #ddbd75);
  background: #ddbd7510;
  box-shadow: inset 0 -2px var(--ethera-wordmark-gold, #c89d50);
}
body.ethera-front-page .ethera-wayfinding-links a:focus-visible {
  outline: 2px solid var(--ethera-gold, #ddbd75);
  outline-offset: -2px;
}
body.ethera-front-page .ethera-wayfinding-progress {
  height: 2px;
  background: linear-gradient(to right, var(--ethera-wordmark-gold, #c89d50) var(--ethera-page-progress, 0%), transparent 0);
}
body.ethera-front-page .ethera-section-anchor {
  position: absolute;
  display: block;
  height: 0;
  width: 0;
  overflow: hidden;
  pointer-events: none;
  scroll-margin-top: var(--ethera-section-offset, 20px);
}
body.ethera-front-page .ethera-section-target {
  scroll-margin-top: var(--ethera-section-offset, 20px);
}
body.ethera-front-page .guide-checklist {
  top: var(--ethera-section-offset, 24px);
}
/* Budget and readiness have separate destinations within this sidebar.
   Keep those anchors in document flow when page navigation is available. */
body.ethera-front-page.ethera-has-wayfinding .planner-sidebar {
  position: static;
}
body.ethera-front-page .ethera-section-target:focus-visible,
body.ethera-front-page .ethera-section-target > :is(h1, h2, h3):focus-visible {
  outline: 2px solid var(--ethera-gold, #ddbd75);
  outline-offset: 7px;
}
@media (max-width: 700px) {
  body.ethera-front-page .ethera-wayfinding-spacer { margin-bottom: 20px; }
  body.ethera-front-page .ethera-wayfinding-inner { gap: 12px; padding-inline: 10px; min-height: 52px; }
  body.ethera-front-page .ethera-wayfinding-label { font-size: 9px; max-width: 42px; line-height: 1.4; }
  body.ethera-front-page .ethera-wayfinding-links a { font-size: 11px; padding-inline: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  body.ethera-front-page .ethera-wayfinding-links a { transition: none; }
}

body.ethera-front-page .ethera-wayfinding-label:hover { color: #fff0bf; text-decoration: underline; text-underline-offset: 4px; }
body.ethera-front-page .ethera-wayfinding-label:focus-visible { outline: 2px solid #e9bf5b; outline-offset: 4px; }
