.exploration-page {
  position: relative;
  overflow: clip;
}

.exploration-page::before {
  position: absolute;
  z-index: -1;
  inset: 26rem 0 auto;
  height: 130rem;
  background: radial-gradient(circle at 82% 18%, rgba(103, 214, 209, 0.055), transparent 28rem);
  content: "";
  pointer-events: none;
}

.exploration-hero {
  position: relative;
  display: grid;
  min-height: 40rem;
  overflow: hidden;
  isolation: isolate;
}

.exploration-hero__media,
.exploration-hero__veil,
.exploration-hero__container {
  grid-area: 1 / 1;
}

.exploration-hero__media {
  width: 100%;
  min-width: 0;
  height: 100%;
}

.exploration-hero__media img {
  width: 100%;
  max-width: none;
  height: 100%;
  object-fit: cover;
  object-position: right center;
}

.exploration-hero__veil {
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(8, 24, 39, 0.99) 0%, rgba(8, 24, 39, 0.91) 35%, rgba(8, 24, 39, 0.43) 67%, rgba(8, 24, 39, 0.26) 100%),
    linear-gradient(0deg, rgba(8, 24, 39, 0.77), transparent 43%);
}

.exploration-hero__container {
  position: relative;
  z-index: 2;
  display: flex;
  min-width: 0;
  align-items: center;
  padding-block: var(--space-10);
}

.exploration-hero__copy {
  display: flex;
  width: min(100%, 32rem);
  min-width: 0;
  flex: 0 1 41.6667%;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-5);
}

.exploration-hero__copy > * {
  margin: 0;
}

.exploration-hero__copy h1 {
  max-width: 12ch;
  font-size: var(--text-display);
  line-height: var(--line-tight);
}

.exploration-hero__copy .lead {
  max-width: 32rem;
}

.exploration-hero__button {
  width: auto;
}

.exploration-hero__note {
  max-width: 29rem;
  color: var(--text-secondary);
  font-size: var(--text-14);
  line-height: 1.43;
}

.exploration-hero__route {
  position: absolute;
  z-index: 2;
  right: max(var(--container-padding), calc((100vw - var(--container-max)) / 2));
  bottom: var(--space-7);
  left: max(var(--container-padding), calc((100vw - var(--container-max)) / 2));
  height: 1.5rem;
  border-bottom: 1px solid rgba(103, 214, 209, 0.56);
  opacity: 0.75;
}

.exploration-hero__route::before,
.exploration-hero__route::after {
  position: absolute;
  bottom: -0.2rem;
  width: 0.4rem;
  height: 0.4rem;
  border: 1px solid var(--color-ice-turquoise);
  border-radius: 50%;
  background: var(--color-arctic-navy);
  content: "";
}

.exploration-hero__route::before { left: 18%; }
.exploration-hero__route::after { right: 12%; }
.exploration-hero__route span,
.exploration-hero__route i,
.exploration-hero__route b {
  position: absolute;
  bottom: -0.2rem;
  width: 0.4rem;
  height: 0.4rem;
  border-radius: 50%;
  background: var(--color-ice-turquoise);
}
.exploration-hero__route span { left: 47%; }
.exploration-hero__route i { left: 66%; }
.exploration-hero__route b { right: 28%; }

.exploration-section__intro {
  min-width: 0;
}

.exploration-section__intro .lead {
  margin-bottom: 0;
}

.exploration-foundation__intro,
.exploration-map__intro,
.exploration-fishing__intro,
.exploration-treasures__intro,
.exploration-notebook__intro,
.exploration-links__intro {
  width: min(100%, 39rem);
}

.exploration-foundation__cards,
.exploration-links__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
  margin-top: var(--space-7);
}

.exploration-foundation__cards > *,
.exploration-links__grid > * {
  min-width: 0;
  width: 100%;
}

.exploration-principle,
.exploration-fishing-card,
.exploration-note-card {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  padding: var(--space-6);
  border: var(--border-default);
  border-radius: var(--radius-lg);
  background: var(--surface-panel);
  box-shadow: var(--shadow-panel);
  transition: border-color var(--transition-base), transform var(--transition-base), background-color var(--transition-base);
}

.exploration-principle > *,
.exploration-fishing-card > *,
.exploration-note-card > * {
  margin: 0;
}

.exploration-principle:hover,
.exploration-fishing-card:hover {
  border-color: var(--color-ice-line-strong);
  background: rgba(16, 43, 64, 0.95);
  transform: translateY(-1px);
}

.exploration-principle__number,
.exploration-map__number,
.exploration-treasure__number,
.exploration-note-card__number {
  color: var(--color-ice-turquoise);
  font-family: var(--font-heading);
  font-size: var(--text-24);
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1;
}

.exploration-principle:first-child .exploration-principle__number {
  color: var(--color-fire-orange);
}

.exploration-preparation__layout {
  display: grid;
  grid-template-columns: minmax(0, 4fr) minmax(0, 7fr);
  gap: min(8.3333%, var(--space-8));
  align-items: start;
}

.exploration-preparation__layout > * {
  min-width: 0;
  width: 100%;
}

.exploration-preparation__intro {
  width: min(100%, 29rem);
}

.exploration-preparation__intro .meta {
  margin-bottom: 0;
}

.exploration-steps {
  display: grid;
  gap: var(--space-5);
  margin: 0;
  padding: 0;
  list-style: none;
}

.exploration-steps > * {
  position: relative;
  display: grid;
  grid-template-columns: 3.25rem minmax(0, 1fr);
  gap: var(--space-4);
  min-width: 0;
  width: 100%;
}

.exploration-step:not(.exploration-step--last)::before {
  position: absolute;
  top: 3.25rem;
  bottom: calc(var(--space-5) * -1);
  left: 1.6rem;
  width: 2px;
  background: rgba(103, 214, 209, 0.5);
  content: "";
}

.exploration-step__marker {
  z-index: 1;
  display: flex;
  width: 3.25rem;
  min-width: 0;
  height: 3.25rem;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--color-ice-turquoise);
  border-radius: 50%;
  background: var(--color-ice-navy-solid);
  color: var(--color-ice-turquoise);
  font-family: var(--font-heading);
  font-size: var(--text-24);
  font-weight: 700;
}

.exploration-step--last .exploration-step__marker {
  border-color: var(--color-fire-orange);
  color: var(--color-fire-orange);
  box-shadow: var(--shadow-furnace);
}

.exploration-step__body {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  padding: var(--space-5);
  border: var(--border-default);
  border-radius: var(--radius-lg);
  background: rgba(16, 43, 64, 0.91);
}

.exploration-step__body > * { margin: 0; }
.exploration-step__body h3 { font-size: clamp(1.375rem, 2.4vw, var(--text-24)); }

.exploration-step__toggle {
  min-height: 2.5rem;
  padding: var(--space-2) var(--space-3);
  border-color: var(--color-ice-line);
  background: transparent;
  color: var(--color-ice-turquoise);
  font-size: var(--text-12);
}

.exploration-step__toggle:hover {
  border-color: var(--color-ice-turquoise);
  background: rgba(103, 214, 209, 0.1);
  color: var(--color-silver-white);
  box-shadow: none;
}

.exploration-step__help {
  width: 100%;
  padding: var(--space-3) var(--space-4);
  border-left: 2px solid var(--color-ice-turquoise);
  background: rgba(185, 230, 242, 0.06);
  color: var(--color-polar-blue);
  font-size: var(--text-14);
}

.exploration-map__board {
  position: relative;
  width: 100%;
  min-width: 0;
  aspect-ratio: 16 / 9;
  margin-top: var(--space-7);
  overflow: hidden;
  border: var(--border-default);
  border-radius: var(--radius-xl);
  background:
    radial-gradient(circle at 24% 78%, rgba(242, 138, 69, 0.3), transparent 5%),
    linear-gradient(145deg, rgba(103, 214, 209, 0.14), transparent 43%),
    var(--surface-panel-solid);
}

.exploration-map__board::after {
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(241, 246, 248, 0.2) 0.6px, transparent 0.8px);
  background-size: 10px 10px;
  content: "";
  opacity: 0.08;
  pointer-events: none;
}

.exploration-map__art {
  width: 100%;
  height: 100%;
  color: var(--color-polar-blue);
}

.exploration-map__art path {
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  opacity: 0.34;
}

.exploration-map__art .exploration-map__river {
  stroke: var(--color-ice-turquoise);
  stroke-width: 6;
  opacity: 0.22;
}

.exploration-map__art .exploration-map__route-line {
  stroke: var(--color-ice-turquoise);
  stroke-dasharray: 8 12;
  stroke-width: 3;
  opacity: 0.78;
}

.exploration-map__art .exploration-map__point {
  fill: var(--color-ice-navy-solid);
  stroke: var(--color-ice-turquoise);
  stroke-width: 3;
  transition: fill var(--transition-fast), filter var(--transition-fast);
}

.exploration-map__art .exploration-map__camp {
  fill: var(--color-fire-orange);
  filter: drop-shadow(0 0 9px rgba(242, 138, 69, 0.7));
}

.exploration-map__art text {
  fill: var(--color-silver-white);
  font-family: var(--font-body);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-anchor: middle;
}

.exploration-map__desktop-callouts {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.exploration-map__callout {
  position: absolute;
  color: var(--color-polar-blue);
  font-family: var(--font-heading);
  font-size: var(--text-24);
  font-weight: 700;
  letter-spacing: 0.08em;
}

.exploration-map__callout--one { top: 62%; left: 36%; }
.exploration-map__callout--two { top: 31%; left: 61%; }
.exploration-map__callout--three { top: 12%; right: 11%; }

.exploration-map__notes {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
  margin-top: var(--space-5);
}

.exploration-map__notes > * {
  min-width: 0;
  width: 100%;
}

.exploration-map__note {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  padding: var(--space-5);
  border-top: 1px solid var(--color-ice-line);
  transition: border-color var(--transition-fast), background-color var(--transition-fast);
}

.exploration-map__note > * { margin: 0; }
.exploration-map__note h3 { font-size: clamp(1.375rem, 2.2vw, var(--text-24)); }
.exploration-map__note.is-highlighted { border-color: var(--color-ice-turquoise); background: rgba(103, 214, 209, 0.06); }

.exploration-winter__heading {
  width: min(100%, 39rem);
}

.exploration-winter__heading .lead { margin-bottom: 0; }

.exploration-winter__layout {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  gap: var(--space-6);
  align-items: start;
  margin-top: var(--space-7);
}

.exploration-winter__layout > * {
  min-width: 0;
  width: 100%;
}

.exploration-winter__figure,
.exploration-fishing__figure {
  overflow: hidden;
  border: var(--border-default);
  border-radius: var(--radius-lg);
  background: var(--surface-panel-solid);
}

.exploration-winter__figure {
  aspect-ratio: 4 / 5;
}

.exploration-winter__figure img,
.exploration-fishing__figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.exploration-winter__figure img { object-position: 62% center; }

.exploration-winter__figure figcaption,
.exploration-fishing__figure figcaption {
  padding: var(--space-3) var(--space-4);
  background: rgba(8, 24, 39, 0.91);
}

.exploration-winter__copy {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-6);
  width: min(100%, 34rem);
}

.exploration-narrative {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  padding-left: var(--space-5);
  border-left: 2px solid var(--color-ice-turquoise);
}

.exploration-narrative > * { margin: 0; }
.exploration-narrative .eyebrow { color: var(--color-polar-blue); }

.exploration-fishing__layout {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: var(--space-6);
  align-items: start;
  margin-top: var(--space-7);
}

.exploration-fishing__layout > * {
  min-width: 0;
  width: 100%;
}

.exploration-fishing__figure { aspect-ratio: 4 / 5; }
.exploration-fishing__figure img { object-position: center; }

.exploration-fishing__cards {
  display: grid;
  gap: var(--space-4);
}

.exploration-fishing__cards > * { min-width: 0; width: 100%; }
.exploration-fishing-card--decision { border-color: rgba(242, 138, 69, 0.45); }
.exploration-fishing-card--decision .eyebrow { color: var(--color-fire-orange); }

.exploration-treasures__panel {
  position: relative;
  overflow: hidden;
  padding-block: var(--space-8);
  border-block: var(--border-default);
}

.exploration-treasures__panel::before {
  position: absolute;
  top: 42%;
  left: 50%;
  width: 10rem;
  height: 10rem;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(242, 138, 69, 0.24), transparent 68%);
  content: "";
  filter: blur(10px);
  pointer-events: none;
  transform: translate(-50%, -50%);
}

.exploration-treasures__panel > * { position: relative; z-index: 1; }

.exploration-treasures__columns {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin-top: var(--space-7);
}

.exploration-treasures__columns > * {
  min-width: 0;
  width: 100%;
}

.exploration-treasure {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
  padding: var(--space-5) var(--space-6);
}

.exploration-treasure > * { margin: 0; }
.exploration-treasure + .exploration-treasure { border-left: var(--border-default); }

.exploration-notebook__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-5);
  margin-top: var(--space-7);
}

.exploration-notebook__grid > * {
  min-width: 0;
  width: 100%;
}

.exploration-note-card--next .exploration-note-card__number { color: var(--color-fire-orange); }

.exploration-link-card {
  display: flex;
  min-width: 0;
  min-height: 100%;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  padding: var(--space-6);
  border: var(--border-default);
  border-radius: var(--radius-lg);
  background:
    linear-gradient(145deg, rgba(185, 230, 242, 0.06), transparent 45%),
    var(--surface-panel);
  box-shadow: var(--shadow-panel);
  color: var(--text-primary);
  text-decoration: none;
  transition: border-color var(--transition-base), transform var(--transition-base), background-color var(--transition-base);
}

.exploration-link-card:hover {
  border-color: var(--color-ice-turquoise);
  background-color: rgba(16, 43, 64, 0.97);
  color: var(--text-primary);
  transform: translateY(-1px);
}

.exploration-link-card__title {
  color: var(--text-primary);
  font-family: var(--font-heading);
  font-size: var(--text-32);
  font-weight: 700;
  line-height: var(--line-heading);
}

.exploration-link-card__copy { color: var(--text-secondary); }
.exploration-link-card__action { margin-top: auto; color: var(--color-ice-turquoise); font-size: var(--text-14); font-weight: 600; }

.exploration-next__panel {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  gap: var(--space-6);
  align-items: center;
  overflow: hidden;
  padding: clamp(var(--space-6), 5vw, var(--space-8));
  border: var(--border-default);
  border-radius: var(--radius-xl);
  background:
    radial-gradient(circle at 76% 110%, rgba(242, 138, 69, 0.31), transparent 34%),
    var(--surface-panel);
  box-shadow: var(--shadow-panel);
}

.exploration-next__panel::after {
  position: absolute;
  right: 4%;
  bottom: 1.15rem;
  left: 44%;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--color-ice-turquoise));
  content: "";
  opacity: 0.7;
}

.exploration-next__copy,
.exploration-next__actions {
  position: relative;
  z-index: 1;
  min-width: 0;
  width: 100%;
}

.exploration-next__copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  max-width: 33rem;
}

.exploration-next__copy > * { margin: 0; }

.exploration-next__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: var(--space-3);
}

.exploration-next__actions > * {
  min-width: 0;
  width: auto;
}

@supports ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
  .exploration-principle,
  .exploration-fishing-card,
  .exploration-note-card,
  .exploration-link-card,
  .exploration-next__panel {
    -webkit-backdrop-filter: blur(16px) saturate(120%);
    backdrop-filter: blur(16px) saturate(120%);
  }
}

@media (max-width: 63.99rem) {
  .exploration-hero { min-height: 35rem; }
  .exploration-hero__copy { flex-basis: 58.3333%; }
  .exploration-hero__veil { background: linear-gradient(90deg, rgba(8, 24, 39, 0.98), rgba(8, 24, 39, 0.78) 54%, rgba(8, 24, 39, 0.32)), linear-gradient(0deg, rgba(8, 24, 39, 0.72), transparent 47%); }

  .exploration-foundation__cards,
  .exploration-links__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .exploration-foundation__cards > :last-child,
  .exploration-links__grid > :last-child { grid-column: 1 / -1; }

  .exploration-preparation__layout,
  .exploration-winter__layout,
  .exploration-fishing__layout { grid-template-columns: minmax(0, 1fr); }
  .exploration-preparation__intro,
  .exploration-winter__heading,
  .exploration-winter__copy,
  .exploration-fishing__intro { width: min(100%, 42rem); }

  .exploration-winter__figure,
  .exploration-fishing__figure { aspect-ratio: 16 / 10; }
  .exploration-winter__figure img { object-position: center 58%; }

  .exploration-map__notes { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .exploration-next__panel { grid-template-columns: minmax(0, 1fr); }
  .exploration-next__actions { justify-content: flex-start; }
  .exploration-next__panel::after { left: 5%; }
}

@media (max-width: 61.24rem) {
  .exploration-treasures__columns { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .exploration-treasures__columns > :last-child { grid-column: 1 / -1; }
  .exploration-treasure:nth-child(3) { border-top: var(--border-default); border-left: 0; }
}

@media (max-width: 47.99rem) {
  .exploration-hero { min-height: clamp(32.5rem, 145vw, 38.75rem); }
  .exploration-hero__media img { object-position: 71% 24%; }
  .exploration-hero__veil { background: linear-gradient(90deg, rgba(8, 24, 39, 0.98) 0%, rgba(8, 24, 39, 0.83) 66%, rgba(8, 24, 39, 0.56)), linear-gradient(0deg, rgba(8, 24, 39, 0.95), rgba(8, 24, 39, 0.08) 70%); }
  .exploration-hero__container { align-items: end; padding-block: var(--space-8) var(--space-7); }
  .exploration-hero__copy { width: 100%; flex-basis: 100%; gap: var(--space-4); }
  .exploration-hero__copy h1 { max-width: 11ch; font-size: clamp(3rem, 13vw, 4rem); }
  .exploration-hero__copy .lead { max-width: 39ch; font-size: 1.0625rem; line-height: 1.59; }
  .exploration-hero__button { width: auto; }
  .exploration-hero__route { display: none; }

  .exploration-foundation__cards,
  .exploration-links__grid,
  .exploration-map__notes,
  .exploration-treasures__columns,
  .exploration-notebook__grid { grid-template-columns: minmax(0, 1fr); }
  .exploration-foundation__cards > :last-child,
  .exploration-links__grid > :last-child,
  .exploration-treasures__columns > :last-child { grid-column: auto; }

  .exploration-principle,
  .exploration-fishing-card,
  .exploration-note-card,
  .exploration-link-card { padding: var(--space-5); }

  .exploration-preparation__layout { gap: var(--space-6); }
  .exploration-steps { gap: var(--space-4); }
  .exploration-steps > * { grid-template-columns: 2.75rem minmax(0, 1fr); gap: var(--space-3); }
  .exploration-step__marker { width: 2.75rem; height: 2.75rem; font-size: var(--text-18); }
  .exploration-step:not(.exploration-step--last)::before { top: 2.75rem; bottom: calc(var(--space-4) * -1); left: 1.35rem; }
  .exploration-step__body { padding: var(--space-4); }
  .exploration-step__toggle { width: auto; }

  .exploration-map__board { aspect-ratio: 4 / 3; margin-top: var(--space-6); }
  .exploration-map__desktop-callouts { display: none; }
  .exploration-map__notes { gap: var(--space-4); margin-top: var(--space-4); }
  .exploration-map__note { padding: var(--space-4); border: var(--border-default); border-radius: var(--radius-md); }

  .exploration-winter__layout,
  .exploration-fishing__layout { margin-top: var(--space-6); gap: var(--space-5); }
  .exploration-winter__figure,
  .exploration-fishing__figure { aspect-ratio: 4 / 3; }
  .exploration-winter__copy { gap: var(--space-5); }
  .exploration-narrative { padding-left: var(--space-4); }

  .exploration-treasures__panel { padding-block: var(--space-6); }
  .exploration-treasure { padding: var(--space-5) 0; }
  .exploration-treasure + .exploration-treasure,
  .exploration-treasure:nth-child(3) { border-top: var(--border-default); border-left: 0; }

  .exploration-next__panel { gap: var(--space-5); padding: var(--space-5); }
  .exploration-next__actions { flex-direction: column; flex-wrap: nowrap; }
  .exploration-next__actions > * { width: 100%; }
  .exploration-next__panel::after { display: none; }
}

@media (max-width: 39.99rem) {
  .exploration-foundation__cards,
  .exploration-links__grid,
  .exploration-notebook__grid { gap: var(--space-4); }
  .exploration-hero__button { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .exploration-principle,
  .exploration-fishing-card,
  .exploration-link-card,
  .exploration-map__art .exploration-map__point { transition: none; }
}
