@font-face  {
  font-family: "Archivo";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/fonts/archivo/archivo-latin-400-normal.woff2") format("woff2");
}

@font-face  {
  font-family: "Archivo";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/assets/fonts/archivo/archivo-latin-600-normal.woff2") format("woff2");
}

@font-face  {
  font-family: "Archivo";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/assets/fonts/archivo/archivo-latin-700-normal.woff2") format("woff2");
}

@font-face  {
  font-family: "Source Serif 4";
  font-style: normal;
  font-weight: 200 900;
  font-display: swap;
  src: url("/assets/fonts/source-serif/source-serif-4-latin-wght-normal.woff2") format("woff2-variations");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face  {
  font-family: "Source Serif 4";
  font-style: italic;
  font-weight: 200 900;
  font-display: swap;
  src: url("/assets/fonts/source-serif/source-serif-4-latin-wght-italic.woff2") format("woff2-variations");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
  --ink:#e8e9dc;
  --muted:#b7c7be;
  --pine:#0c2525;
  --deep:#071b1e;
  --gold:#e6c28b;
  --serif:"Source Serif 4",Georgia,serif;
  --sans:"Archivo",Arial,sans-serif;
  --page:76rem;
  --measure:42rem;
  color-scheme:dark
}

*,:before,:after {
  box-sizing:border-box
}

html {
  scroll-behavior:smooth;
  scroll-padding-top:6rem
}

body {
  margin:0;
  background:var(--deep);
  color:var(--ink);
  font:1rem/1.7 var(--sans);
  overflow-wrap:break-word
}

img {
  display:block;
  max-width:100%;
  height:auto
}

a {
  color:inherit;
  text-underline-offset:.25em
}

a:hover {
  color:var(--gold)
}

button {
  font:inherit
}

a,button,summary {
  -webkit-tap-highlight-color:transparent
}

a:focus-visible,button:focus-visible,summary:focus-visible {
  outline:2px solid var(--gold);
  outline-offset:6px
}

h1,h2,h3,p,figure {
  margin-top:0
}

h1,h2 {
  font-family:var(--serif);
  font-weight:400;
  line-height:1.08;
  letter-spacing:-.045em
}

h1 em,h2 em {
  font-weight:400;
  color:var(--gold)
}

::selection {
  background:#b9925b;
  color:#071b1e
}

.skip-link {
  position:fixed;
  top:-8rem;
  left:1rem;
  z-index:50;
  padding:.6rem 1rem;
  background:var(--gold);
  color:var(--deep);
  border-radius:2rem
}

.skip-link:focus {
  top:1rem
}

.site-header {
  position:relative;
  z-index:20;
  background:var(--deep);
  border-bottom:1px solid #b7c7be20
}

.site-header__inner {
  max-width:90rem;
  margin:auto;
  padding:1.4rem 3.5rem;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:2rem
}

.home .site-header {
  position:absolute;
  inset:0 0 auto;
  background:linear-gradient(#06191c88,transparent);
  border:0
}

.wordmark {
  text-decoration:none;
  display:flex;
  flex-direction:column;
  gap:.15rem
}

.wordmark__kicker {
  font-size:.6rem;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:#d5ded5;
  order:2;
  padding-left:3.3rem
}

.wordmark__name {
  display:flex;
  align-items:center;
  gap:.55rem;
  font-family:var(--serif);
  font-size:1.6rem;
  letter-spacing:-.04em
}

.wordmark__name em {
  font-weight:400
}

.wordmark__name svg {
  margin-right:.2rem;
  color:var(--gold)
}

.nav__list {
  display:flex;
  gap:2.5rem;
  list-style:none;
  padding:0;
  margin:0;
  font-size:.75rem;
  letter-spacing:.04em
}

.nav__list a {
  text-decoration:none;
  padding:.6rem 0;
  display:block
}

.nav__list a[aria-current] {
  color:var(--gold)
}

.nav__menu {
  display:none
}

.nav__toggle {
  cursor:pointer;
  list-style:none;
  border:1px solid #ffffff50;
  border-radius:2rem;
  padding:.45rem .9rem;
  font-size:.8rem
}

.nav__toggle::-webkit-details-marker {
  display:none
}

main {
  max-width:var(--page);
  margin:auto;
  padding:0 2.5rem 5rem
}

.home main {
  max-width:none;
  padding:0
}

.section-wrap {
  max-width:var(--page);
  margin:auto;
  padding-left:3.5rem;
  padding-right:3.5rem
}

.eyebrow {
  text-transform:uppercase;
  letter-spacing:.2em;
  font-size:.65rem;
  font-weight:400;
  color:var(--gold);
  margin-bottom:1.4rem
}

.tiny-star {
  font-size:1.1rem;
  margin-right:.65rem;
  vertical-align:middle
}

.pill-link {
  display:inline-flex;
  justify-content:space-between;
  align-items:center;
  gap:2.5rem;
  padding:.95rem 1.5rem;
  border:1px solid #d8e3d56b;
  border-radius:3rem;
  text-decoration:none;
  font-size:.8rem;
  backdrop-filter:blur(8px);
  background:#08232638;
  transition:background .25s,transform .25s
}

.pill-link:hover {
  background:var(--gold);
  color:var(--deep);
  transform:translateY(-3px)
}

.pill-link span,.text-link span {
  font-size:1.2rem
}

.text-link {
  display:inline-flex;
  gap:1.6rem;
  align-items:center;
  text-decoration:none;
  border-bottom:1px solid #d0ddce55;
  padding-bottom:.5rem;
  font-size:.8rem
}

.text-link:hover {
  border-color:var(--gold)
}

.mountain-hero {
  position:relative;
  isolation:isolate;
  min-height:850px;
  height:100svh;
  max-height:1250px;
  overflow:hidden;
  background:#173639
}

.mountain-hero__scenery,.mountain-hero__scenery img,.hero-light {
  position:absolute;
  inset:0;
  width:100%;
  height:100%
}

.mountain-hero__scenery {
  z-index:-2
}

.mountain-hero__scenery img {
  object-fit:cover;
  object-position:center 47%;
  filter:saturate(.7);
  transform:scale(1.04)
}

.hero-light {
  background:linear-gradient(90deg,#061c24b5 0%,#09242b48 60%,#071e2440),linear-gradient(0deg,#071b1e 0%,transparent 40%),linear-gradient(180deg,#091f2555,transparent 35%)
}

.hero-light:after {
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(ellipse at 75% 12%,#edb96732,transparent 60%);
  mix-blend-mode:screen
}

.mountain-hero__content {
  max-width:90rem;
  margin:auto;
  padding:clamp(12rem,23vh,19rem) 6rem 10rem;
  position:relative;
  z-index:2
}

.mountain-hero h1 {
  font-size:clamp(5rem,8.5vw,9rem);
  margin-bottom:1.6rem;
  line-height:.98;
  max-width:12ch
}

.mountain-hero h1 em {
  color:#efcf9e
}

.mountain-hero__content>p:not(.eyebrow) {
  font-size:.95rem;
  color:#e0e7df;
  line-height:1.8;
  margin-bottom:2rem
}

.hero-bottom {
  position:absolute;
  bottom:5rem;
  left:6rem;
  right:6rem;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:2rem;
  font-size:.65rem;
  color:#c9d8d0;
  z-index:3
}

.scroll-cue {
  display:flex;
  align-items:center;
  gap:1rem;
  text-decoration:none
}

.scroll-cue span {
  font-size:1.2rem;
  width:2.5rem;
  height:2.5rem;
  border:1px solid #d5e3d450;
  border-radius:50%;
  display:grid;
  place-items:center
}

.photo-location {
  font-size:.6rem;
  letter-spacing:.06em
}

.hero-ridge {
  position:absolute;
  bottom:-1px;
  width:100%;
  height:5rem;
  fill:var(--deep)
}

.mist {
  position:absolute;
  height:20%;
  width:120%;
  left:-10%;
  top:55%;
  opacity:.18;
  background:radial-gradient(ellipse,#c7d4c9 0,transparent 65%);
  filter:blur(30px);
  animation:mist-drift 24s ease-in-out infinite alternate
}

.mist--two {
  top:72%;
  left:-30%;
  opacity:.12;
  animation-duration:35s;
  animation-direction:alternate-reverse
}

@keyframes mist-drift {
  to {
    transform:translate(12%,-20%)
  }
}

.place-section {
  padding-top:3rem;
  padding-bottom:7rem;
  position:relative
}

.chapter-label {
  display:flex;
  justify-content:space-between;
  gap:2rem;
  border-bottom:1px solid #a9c6b529;
  padding-bottom:1rem;
  font-size:.6rem;
  text-transform:uppercase;
  letter-spacing:.16em;
  color:var(--muted);
  margin-bottom:4rem
}

.place-grid {
  display:grid;
  grid-template-columns:1.3fr 1fr;
  gap:6rem;
  align-items:center
}

.place-grid h2 {
  font-size:clamp(2.6rem,4vw,4.4rem);
  margin-bottom:0
}

.place-copy {
  max-width:26rem;
  color:var(--muted);
  font-size:.95rem;
  line-height:1.9
}

.place-copy .text-link {
  color:var(--ink);
  margin-top:1rem
}

.place-details {
  display:flex;
  gap:3rem;
  margin-top:4rem;
  font-family:var(--serif);
  font-style:italic;
  font-size:1rem;
  color:#acc2b6
}

.place-details span:before {
  content:"✧";
  color:var(--gold);
  font-style:normal;
  margin-right:.7rem
}

.seasons {
  --sky:#354a4a;
  --sky-low:#d5a968;
  --peak:#a99b7d;
  --far:#637575;
  --middle:#3c6262;
  --wood:#244946;
  --near:#0b292b;
  --river:#afc9bb;
  --leaf:#dfae51;
  --trunk:#ad9b79;
  position:relative;
  isolation:isolate;
  min-height:760px;
  overflow:hidden;
  background:var(--sky);
  transition:background 1.1s;
  color:#fbf5e9
}

.seasons[data-season=spring] {
  --sky:#294e61;
  --sky-low:#a0c0ad;
  --peak:#b3c7c5;
  --far:#75939a;
  --middle:#447e7a;
  --wood:#29635a;
  --near:#0c3439;
  --river:#b6dfd9;
  --leaf:#a0c487;
  --trunk:#c4c3a7
}

.seasons[data-season=summer] {
  --sky:#18425b;
  --sky-low:#d6bf98;
  --peak:#b5afb1;
  --far:#698087;
  --middle:#365e66;
  --wood:#264d4a;
  --near:#092d32;
  --river:#a3cdc5;
  --leaf:#6f9b65;
  --trunk:#beb89a
}

.seasons[data-season=winter] {
  --sky:#172d48;
  --sky-low:#7c9ba6;
  --peak:#d9e4e3;
  --far:#9aafb9;
  --middle:#78939f;
  --wood:#496b7b;
  --near:#163340;
  --river:#9fbec9;
  --leaf:#abbfca;
  --trunk:#b4c9cf
}

.seasons__sky {
  position:absolute;
  inset:0;
  z-index:-2;
  background:linear-gradient(var(--sky),var(--sky-low));
  transition:background 1s
}

.seasons__sky:after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,#071b1ec9,transparent 75%),linear-gradient(0deg,#071b1e77,transparent 45%)
}

.season-sun {
  position:absolute;
  right:23%;
  top:18%;
  width:7rem;
  height:7rem;
  border-radius:50%;
  background:#ffe0a29c;
  box-shadow:0 0 100px 35px #eaca8135;
  transition:background 1s,transform 1s
}

.seasons[data-season=winter] .season-sun {
  background:#d9eaf3ae;
  transform:scale(.7);
  box-shadow:0 0 80px 25px #dee8eb20
}

.season-cloud {
  position:absolute;
  top:26%;
  right:-10%;
  width:65%;
  height:8rem;
  background:radial-gradient(ellipse,#dae1d62b,transparent 65%);
  animation:mist-drift 30s infinite alternate
}

.season-landscape {
  position:absolute;
  inset:auto 0 0;
  width:100%;
  height:88%;
  z-index:-1
}

.season-landscape path,.season-landscape ellipse,.season-landscape g {
  transition:fill 1s,opacity 1s
}

.middle-ridge {
  fill:var(--middle)
}

.woodland {
  fill:var(--wood)
}

.tree-cluster,.front-ridge {
  fill:var(--near)
}

.snowcaps {
  fill:#e7e9dc;
  opacity:.65
}

.seasons[data-season=winter] .snowcaps {
  opacity:1
}

.aspen {
  fill:var(--leaf)
}

.seasons__content {
  padding-top:6rem;
  padding-bottom:8rem;
  position:relative
}

.seasons h2 {
  font-size:clamp(3rem,5vw,5.5rem);
  margin-bottom:1.5rem;
  text-shadow:0 2px 30px #09242944
}

.seasons h2 em {
  color:#f4d6a4
}

.season-intro {
  font-size:.85rem;
  color:#e0e8df
}

.season-controls {
  display:flex;
  gap:.3rem;
  padding:.35rem;
  background:#061c2366;
  border:1px solid #d8e5df35;
  backdrop-filter:blur(12px);
  border-radius:3rem;
  width:fit-content;
  margin:2rem 0
}

.season-controls[hidden] {
  display:none
}

.season-controls button {
  cursor:pointer;
  color:#e0e9e3;
  background:transparent;
  border:0;
  padding:.65rem 1rem;
  border-radius:2rem;
  font-size:.75rem;
  transition:background .3s,color .3s
}

.season-controls button[aria-pressed=true] {
  background:#e7d4b4;
  color:#152d30
}

.season-controls button:hover {
  background:#dbe6dc22
}

.season-controls button[aria-pressed=true]:hover {
  background:#f4dec1
}

.season-story {
  max-width:23rem;
  min-height:8rem
}

.season-story h3 {
  font:italic 1.55rem var(--serif);
  margin-bottom:.55rem
}

.season-story p {
  font-size:.85rem;
  color:#e1e7df;
  line-height:1.8
}

.scene-caption {
  position:absolute;
  bottom:1.5rem;
  right:3.5rem;
  font-size:.6rem;
  color:#d2ded5;
  margin:0;
  z-index:2
}

.season-particles {
  position:absolute;
  inset:0;
  pointer-events:none;
  overflow:hidden
}

.season-particles i {
  position:absolute;
  left:var(--x);
  top:-8%;
  width:4px;
  height:4px;
  border-radius:50%;
  background:#ffffffb3;
  animation:fall var(--duration) linear infinite;
  animation-delay:var(--delay);
  opacity:0
}

.seasons[data-season=autumn] .season-particles i {
  width:7px;
  height:11px;
  border-radius:70% 0 70% 0;
  background:#d7ae6e
}

.seasons[data-season=summer] .season-particles i,.seasons[data-season=spring] .season-particles i {
  display:none
}

@keyframes fall {
  0% {
    opacity:0;
    transform:translateY(0) rotate(0)
  }
  15% {
    opacity:.7
  }
  90% {
    opacity:.5
  }
  100% {
    opacity:0;
    transform:translate(100px,850px) rotate(240deg)
  }
}

.river-section {
  position:relative;
  isolation:isolate;
  min-height:780px;
  background:#173c3b;
  overflow:hidden
}

.river-photo,.river-shade {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  z-index:-2
}

.river-photo {
  object-fit:cover;
  object-position:center;
  filter:saturate(.6)
}

.river-shade {
  z-index:-1;
  background:linear-gradient(180deg,#071b1e70,transparent 30%,#071b1ed9),linear-gradient(90deg,#071b1ebd,transparent 85%)
}

.river-content {
  padding-top:7rem;
  padding-bottom:5rem
}

.river-content h2 {
  font-size:clamp(3rem,5vw,5.5rem);
  max-width:14ch
}

.river-note {
  max-width:24rem;
  padding:1.8rem 2rem;
  border:1px solid #d5e3d633;
  background:#092f3270;
  backdrop-filter:blur(16px);
  border-radius:2rem;
  margin-top:3rem;
  font-size:.9rem
}

.river-note__mark {
  font:3rem/1 var(--serif);
  color:var(--gold)
}

.river-note p {
  margin:.8rem 0 1.5rem;
  color:#dee8de
}

.field-guide {
  padding-top:6rem;
  padding-bottom:7rem
}

.guide-heading {
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:3rem;
  margin-bottom:3.5rem
}

.guide-heading h2 {
  font-size:clamp(3rem,5vw,5rem);
  margin-bottom:0
}

.guide-heading>p {
  font-size:.85rem;
  color:var(--muted);
  max-width:22rem;
  margin:0 0 .4rem
}

.guide-grid,.card-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:2rem
}

.card {
  min-width:0;
  border:1px solid #c1d6c61c;
  border-radius:2rem;
  background:#10302f;
  overflow:hidden;
  transition:transform .35s,background .35s
}

.card:hover {
  transform:translateY(-5px);
  background:#173b37
}

.card__link {
  display:block;
  height:100%;
  text-decoration:none;
  color:inherit!important
}

.card__image {
  position:relative;
  overflow:hidden
}

.card img {
  width:100%;
  aspect-ratio:16/10;
  object-fit:cover;
  filter:saturate(.7);
  transition:transform .8s,filter .8s
}

.card:hover img {
  transform:scale(1.04);
  filter:saturate(1)
}

.card__image:after {
  content:"";
  position:absolute;
  inset:50% 0 0;
  background:linear-gradient(transparent,#08252485);
  pointer-events:none
}

.card__number {
  position:absolute;
  left:1.5rem;
  bottom:1.1rem;
  font:italic 1.6rem var(--serif);
  z-index:1;
  color:#fff4e0
}

.card__arrow {
  position:absolute;
  right:1.4rem;
  bottom:1.1rem;
  border:1px solid #e0e7d970;
  border-radius:50%;
  width:2.5rem;
  height:2.5rem;
  display:grid;
  place-items:center;
  z-index:1;
  color:#fff4e0
}

.card__body {
  padding:1.7rem 1.8rem 2rem
}

.card__kicker {
  font-size:.6rem;
  text-transform:uppercase;
  letter-spacing:.13em;
  color:var(--gold);
  margin-bottom:.7rem
}

.card__title {
  font:400 1.75rem/1.2 var(--serif);
  letter-spacing:-.025em;
  margin:0 0 1rem
}

.card__body>p:last-child {
  font-size:.85rem;
  color:var(--muted);
  margin:0;
  line-height:1.8
}

.guide-grid--landscape {
  grid-template-columns:repeat(6,minmax(0,1fr));
  align-items:start;
  gap:2rem
}

.guide-grid--landscape .card {
  grid-column:span 3
}

.guide-grid--landscape .card:nth-child(2) {
  margin-top:4rem
}

.guide-grid--landscape .card:nth-child(n+3) {
  grid-column:span 2
}

.guide-grid--landscape .card:nth-child(n+3) .card__title {
  font-size:1.45rem
}

.guide-grid--landscape .card:nth-child(n+3) img {
  aspect-ratio:1.2
}

.night-section {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:radial-gradient(ellipse at 50% 100%,#1e4c46,transparent 70%),#06151e;
  text-align:center
}

.night-stars,.season-stars {
  position:absolute;
  inset:0;
  z-index:-1;
  opacity:.6;
  background-image:radial-gradient(1px 1px at 15% 20%,#fff 90%,transparent),radial-gradient(1px 1px at 60% 15%,#fff 90%,transparent),radial-gradient(1px 1px at 82% 46%,#fff 90%,transparent),radial-gradient(1.5px 1.5px at 32% 65%,#eadab8 90%,transparent),radial-gradient(1px 1px at 93% 80%,#fff 90%,transparent);
  background-size:370px 320px
}

.season-stars {
  z-index:0;
  opacity:0;
  transition:opacity 1s
}

.seasons[data-season=winter] .season-stars {
  opacity:.5
}

.night-content {
  padding-top:7rem;
  padding-bottom:5rem
}

.night-content h2 {
  font-size:clamp(3.5rem,6vw,6rem)
}

.night-content>p:not(.eyebrow) {
  color:var(--muted);
  font-size:.9rem
}

.night-links {
  display:flex;
  justify-content:center;
  align-items:center;
  gap:2rem;
  margin-top:2.5rem
}

.night-signoff {
  display:block;
  margin-top:5rem;
  font:italic 1.2rem var(--serif);
  color:#9db9a9
}

.site-footer {
  padding:3.5rem;
  background:#071b1e;
  border-top:1px solid #bad4bf1c
}

.site-footer__inner,.disclaimer,.site-footer__legal {
  max-width:69rem;
  margin:auto
}

.site-footer__inner {
  display:flex;
  justify-content:space-between;
  gap:3rem;
  margin-bottom:2rem
}

.site-footer__name {
  font:1.6rem var(--serif);
  margin-bottom:.5rem
}

.site-footer__tag {
  color:var(--muted);
  font-size:.8rem
}

.site-footer__nav ul {
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  gap:2rem;
  font-size:.75rem
}

.site-footer__nav a {
  text-decoration:none
}

.disclaimer {
  font-size:.7rem;
  color:#9eb5aa
}

.site-footer__legal {
  display:flex;
  flex-wrap:wrap;
  gap:1rem;
  justify-content:space-between;
  padding-top:1.5rem;
  font-size:.65rem;
  color:#9eb5aa
}

.guide,.page {
  padding-top:4rem
}

.guide__header,.page__header {
  max-width:var(--measure);
  margin:0 auto 3rem
}

.guide h1,.page h1 {
  font-size:clamp(2.8rem,5vw,4.5rem)
}

.dek,.lede {
  color:var(--muted);
  font:1.2rem/1.65 var(--serif)
}

.byline {
  font-size:.75rem;
  color:var(--muted)
}

.crumbs ol {
  display:flex;
  gap:.6rem;
  flex-wrap:wrap;
  list-style:none;
  padding:0;
  margin:0 0 2rem;
  font-size:.7rem;
  color:var(--muted)
}

.crumbs li:not(:last-child):after {
  content:"/";
  padding-left:.6rem;
  opacity:.5
}

.guide__hero {
  margin:0 0 3rem
}

.guide__hero img,.hero__photo img {
  width:100%;
  aspect-ratio:16/8;
  object-fit:cover;
  border-radius:3rem
}

.guide__hero figcaption,.hero__photo figcaption {
  font-size:.7rem;
  color:var(--muted);
  padding:.8rem 1rem
}

.prose {
  max-width:var(--measure);
  margin:0 auto;
  font-family:var(--serif);
  font-size:1.15rem;
  line-height:1.9;
  color:#dce5da
}

.prose h2 {
  font-size:2rem;
  margin:2.8rem 0 1rem;
  color:var(--ink)
}

.prose h3 {
  font:500 1.25rem/1.4 var(--sans);
  margin:2rem 0 .8rem;
  color:var(--ink)
}

.prose a {
  color:#e7c898
}

.prose p {
  margin-bottom:1.3rem
}

.prose li+li {
  margin-top:.5rem
}

.prose ul,.prose ol {
  padding-left:1.4rem
}

.prose blockquote {
  margin:2rem 0;
  padding:1.5rem 2rem;
  background:#123331;
  border-radius:1.5rem;
  font-style:italic;
  border-left:2px solid var(--gold)
}

.prose table {
  width:100%;
  border-collapse:collapse;
  font:.85rem/1.6 var(--sans);
  margin:2rem 0;
  display:block;
  overflow-x:auto
}

.prose th,.prose td {
  padding:.7rem;
  border-bottom:1px solid #aac4b43b;
  text-align:left;
  vertical-align:top
}

.prose th {
  background:#163734;
  color:var(--gold)
}

.sources {
  border-top:1px solid #aac4b43b;
  margin-top:3rem;
  padding-top:1.5rem
}

.sources li {
  font-size:.95rem;
  overflow-wrap:anywhere
}

.next-guides {
  max-width:var(--measure);
  margin:4rem auto 0
}

.next-guides h2 {
  font-size:1.8rem
}

.next-guides ul {
  padding:0;
  list-style:none;
  display:grid;
  gap:1rem
}

.next-guides a {
  display:block;
  padding:1.5rem;
  border:1px solid #c1d6c62b;
  border-radius:1.5rem;
  text-decoration:none;
  background:#10302f
}

.next-guides__title {
  font:1.3rem var(--serif);
  display:block
}

.next-guides__dek {
  display:block;
  color:var(--muted);
  font-size:.8rem;
  margin-top:.6rem
}

.prose .guide-grid {
  font-family:var(--sans)
}

.prose .card__title {
  font:1.4rem/1.25 var(--serif);
  margin:0 0 1rem
}

.prose .card p {
  font-family:var(--sans)
}

.section-head {
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  margin:3rem 0 1.5rem;
  gap:1rem
}

.section-head h2 {
  font-size:2rem
}

.section-head a {
  font-size:.8rem
}

.note-list {
  list-style:none;
  padding:0
}

.note-list li {
  padding:1.5rem 0;
  border-top:1px solid #aac4b42b
}

.note-list a {
  text-decoration:none
}

.note-list h2 {
  font-size:1.7rem
}

.empty-state,.rule-box {
  padding:2rem;
  background:#10302f;
  border-radius:2rem
}

.intro-split {
  display:grid;
  grid-template-columns:1.2fr 1fr;
  gap:3rem;
  margin:3rem 0
}

.hero {
  padding-top:4rem
}

.hero h1 {
  font-size:4rem
}

.hero__photo {
  margin:0
}

@supports (animation-timeline:scroll()) {
  @media (prefers-reduced-motion:no-preference) {
    .mountain-hero__scenery {
      animation:mountain-travel linear both;
      animation-timeline:scroll(root);
      animation-range:0 100vh
    }
    .mountain-hero__content {
      animation:arrival-fade linear both;
      animation-timeline:scroll(root);
      animation-range:0 80vh
    }
    .season-landscape {
      animation:landscape-rise linear both;
      animation-timeline:view();
      animation-range:entry 0% exit 100%
    }
    .place-grid,.guide-heading {
      animation:soft-arrival linear both;
      animation-timeline:view();
      animation-range:entry 0% entry 100%
    }
  }
}

@keyframes mountain-travel {
  to {
    transform:translateY(15%) scale(1.08)
  }
}

@keyframes arrival-fade {
  to {
    opacity:0;
    transform:translateY(8rem)
  }
}

@keyframes landscape-rise {
  from {
    transform:translateY(2rem)
  }
  to {
    transform:translateY(-1rem)
  }
}

@keyframes soft-arrival {
  from {
    opacity:.4;
    transform:translateY(2rem)
  }
  to {
    opacity:1;
    transform:none
  }
}

@view-transition {
  navigation:auto
}

::view-transition-old(root) {
  animation:page-out .2s ease both
}

::view-transition-new(root) {
  animation:page-in .35s ease both
}

@keyframes page-out {
  to {
    opacity:0
  }
}

@keyframes page-in {
  from {
    opacity:0;
    transform:translateY(8px)
  }
}

@media(min-width:1600px) {
  .season-landscape {
    height:100%
  }
}

@media(max-width:1000px) {
  .site-header__inner {
    padding:1.3rem 2rem
  }
  .section-wrap {
    padding-left:2.5rem;
    padding-right:2.5rem
  }
  .mountain-hero__content {
    padding-left:3.5rem;
    padding-right:3.5rem
  }
  .hero-bottom {
    left:3.5rem;
    right:3.5rem
  }
  .place-grid {
    gap:3rem
  }
  .guide-grid--landscape {
    gap:1.25rem
  }
  .card__body {
    padding:1.5rem
  }
  .scene-caption {
    right:2.5rem
  }
  .guide-grid--landscape .card:nth-child(n+3) {
    grid-column:span 3
  }
  .guide-grid--landscape .card:last-child {
    grid-column:2/span 4
  }
  .guide-grid--landscape .card:nth-child(n+3) img {
    aspect-ratio:16/10
  }
}

@media(max-width:719px) {
  .site-header__inner {
    padding:1.2rem 1.5rem;
    gap:1rem
  }
  .wordmark__name {
    font-size:1.3rem;
    gap:.3rem
  }
  .wordmark__name svg {
    width:30px
  }
  .wordmark__kicker {
    font-size:.5rem;
    padding-left:2.5rem
  }
  .nav__list--desktop {
    display:none
  }
  .nav__menu {
    display:block;
    position:relative
  }
  .nav__menu[open] .nav__list {
    position:absolute;
    top:calc(100% + .8rem);
    right:0;
    display:grid;
    gap:.3rem;
    min-width:13rem;
    padding:1rem 1.5rem;
    border:1px solid #bbd5c34d;
    border-radius:1.5rem;
    background:#0b292bf5;
    box-shadow:0 1rem 3rem #0004
  }
  .section-wrap {
    padding-left:1.5rem;
    padding-right:1.5rem
  }
  .mountain-hero {
    height:100svh;
    min-height:740px;
    max-height:1000px
  }
  .mountain-hero__scenery img {
    object-position:59% center
  }
  .hero-light {
    background:linear-gradient(90deg,#061c24b3,#09242b35),linear-gradient(0deg,#071b1e,transparent 50%)
  }
  .mountain-hero__content {
    padding:11rem 1.5rem 8rem
  }
  .mountain-hero h1 {
    font-size:clamp(4.3rem,14vw,6.8rem)
  }
  .mountain-hero .eyebrow {
    font-size:.56rem;
    letter-spacing:.14em
  }
  .mountain-hero__content>p:not(.eyebrow) {
    font-size:.85rem
  }
  .hero-bottom {
    left:1.5rem;
    right:1.5rem;
    bottom:4rem;
    align-items:start;
    flex-direction:column;
    gap:1rem
  }
  .photo-location {
    padding-left:3.5rem;
    font-size:.5rem
  }
  .chapter-label {
    font-size:.53rem;
    gap:1rem;
    margin-bottom:3rem
  }
  .chapter-label span:last-child {
    text-align:right
  }
  .place-section {
    padding-top:2rem;
    padding-bottom:4rem
  }
  .place-grid {
    grid-template-columns:1fr;
    gap:2rem
  }
  .place-grid h2 {
    font-size:2.8rem
  }
  .place-copy {
    max-width:none;
    font-size:.9rem
  }
  .place-details {
    gap:1rem;
    flex-wrap:wrap;
    font-size:.85rem;
    margin-top:2.5rem
  }
  .seasons {
    min-height:840px
  }
  .seasons__content {
    padding-top:4rem;
    padding-bottom:16rem
  }
  .seasons h2 {
    font-size:3.3rem
  }
  .seasons__sky:after {
    background:linear-gradient(90deg,#071b1ec2,#071b1e30)
  }
  .season-landscape {
    height:60%;
    width:150%;
    left:-25%
  }
  .season-sun {
    right:12%;
    top:10%;
    width:5rem;
    height:5rem
  }
  .season-controls {
    gap:0
  }
  .season-controls button {
    padding:.6rem .85rem;
    font-size:.7rem
  }
  .season-story {
    max-width:21rem
  }
  .scene-caption {
    left:1.5rem;
    right:1.5rem;
    font-size:.53rem;
    text-align:center;
    bottom:1rem
  }
  .river-section {
    min-height:700px
  }
  .river-content {
    padding-top:4rem;
    padding-bottom:4rem
  }
  .river-content h2 {
    font-size:3.4rem
  }
  .river-photo {
    object-position:60% center
  }
  .river-note {
    padding:1.5rem;
    max-width:23rem
  }
  .field-guide {
    padding-top:4rem;
    padding-bottom:4rem
  }
  .guide-heading {
    display:block;
    margin-bottom:2.5rem
  }
  .guide-heading h2 {
    font-size:3.5rem;
    margin-bottom:1.5rem
  }
  .guide-grid,.card-grid,.guide-grid--landscape {
    grid-template-columns:1fr;
    gap:1.5rem
  }
  .guide-grid--landscape .card,.guide-grid--landscape .card:nth-child(n+3),.guide-grid--landscape .card:last-child {
    grid-column:auto;
    margin-top:0
  }
  .card__title,.guide-grid--landscape .card:nth-child(n+3) .card__title {
    font-size:1.65rem
  }
  .night-content {
    padding-top:5rem;
    padding-bottom:4rem
  }
  .night-content h2 {
    font-size:4rem
  }
  .night-links {
    flex-direction:column;
    gap:1.5rem
  }
  .night-signoff {
    margin-top:3rem
  }
  .site-footer {
    padding:2.5rem 1.5rem
  }
  .site-footer__inner {
    flex-direction:column;
    gap:1rem
  }
  .site-footer__nav ul {
    gap:1.5rem
  }
  .site-footer__legal {
    font-size:.6rem
  }
  main {
    padding:0 1.5rem 3rem
  }
  .guide,.page {
    padding-top:2.5rem
  }
  .guide h1,.page h1 {
    font-size:2.7rem
  }
  .guide__hero img,.hero__photo img {
    border-radius:1.5rem;
    aspect-ratio:4/3
  }
  .prose {
    font-size:1.08rem
  }
  .prose h2 {
    font-size:1.8rem
  }
  .intro-split {
    grid-template-columns:1fr
  }
}

@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto
  }
  *,*:before,*:after {
    animation:none!important;
    transition:none!important
  }
  .mountain-hero__scenery,.mountain-hero__content,.season-landscape,.place-grid,.guide-heading {
    transform:none!important;
    opacity:1!important
  }
  .season-particles {
    display:none
  }
  ::view-transition-old(root),::view-transition-new(root) {
    animation:none!important
  }
}

/* Keep the reading plane above the scenery, including the bright winter peaks. */
.seasons:after {
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:linear-gradient(90deg,#061c2ae6 0%,#061c2a99 36%,transparent 74%)
}

.seasons__content {
  z-index:2
}

.season-particles {
  z-index:1
}

.scene-caption {
  z-index:2
}

.seasons[data-season=winter] .aspen ellipse {
  opacity:.15
}

.seasons[data-season=winter] .aspen {
  stroke:var(--trunk);
  stroke-width:1
}

.season-landscape .contour {
  fill:none;
  stroke:#c4dfd026;
  stroke-width:1
}

.season-landscape .haze {
  fill:#d8e4cf;
  opacity:.07
}

@media(max-width:719px) {
  .seasons:after {
    background:linear-gradient(180deg,#061c2abf 0%,#061c2a85 53%,transparent 85%)
  }
}
