/* Finca Akila. Grammar: Further. Each ride has its own ground, hard cut. */
:root {
  --sc-canvas: #E8EBE1;  --sc-surface: #F3F4EE;
  --sc-ink: #17211A;     --sc-ink-soft: #46524A;
  --sc-accent: #A2391C;  --sc-accent-ink: #F6F0E6;
  --sc-font-display: "Familjen Grotesk", "Figtree", system-ui, sans-serif;
  --sc-font-text: "Figtree", system-ui, sans-serif;
  --sc-shadow-color: 140 30% 8%;

  --forest: #13211A; --bone: #EEE9DD; --bone-soft: #B7C0B2; --ember: #F0946C;
  --earth: #2A1912;  --earth-ink: #F3E8DA; --earth-soft: #CDB8A6;
  --dusk: #1C1714;   --dusk-ink: #F2E9DD; --dusk-soft: #BFB2A4;

  --ears-w: 172px;
}
html { background: var(--sc-canvas); }
body { background: var(--sc-canvas); color: var(--sc-ink); font-family: var(--sc-font-text); }
img { display: block; }

.skip { position: absolute; left: 1rem; top: -4rem; z-index: 100; background: var(--sc-ink); color: var(--sc-canvas); padding: .6rem 1rem; border-radius: 8px; }
.skip:focus { top: 1rem; }

:focus-visible { outline: 2px solid var(--sc-accent); outline-offset: 3px; }

/* ------------------------------------------------------------ the saddle -- */
.saddle { position: fixed; inset: auto 0 0 0; z-index: 60; pointer-events: none;
  display: flex; align-items: flex-end; justify-content: space-between;
  padding: 0 clamp(.9rem, 2.4vw, 2rem) max(1rem, env(safe-area-inset-bottom)); }
.saddle > * { pointer-events: auto; }
.saddle__menu, .saddle__cta {
  font: 600 var(--sc-t-sm)/1 var(--sc-font-text); letter-spacing: .01em;
  min-height: 46px; padding: 0 1.15rem; border-radius: 999px; border: 0;
  display: inline-flex; align-items: center; gap: .5rem; cursor: pointer; text-decoration: none;
  box-shadow: 0 6px 18px -6px hsl(140 30% 6% / .45), inset 0 1px 0 hsl(0 0% 100% / .12);
  transition: transform 140ms var(--sc-ease-out), background-color 160ms var(--sc-ease-out), opacity 300ms var(--sc-ease-out), translate 420ms var(--sc-ease-out);
}
.saddle__menu { background: var(--forest); color: var(--bone); }
.saddle__menu::after { content: ""; width: .5rem; height: .5rem; border: solid currentColor; border-width: 2px 2px 0 0; transform: translateY(2px) rotate(-45deg); transition: transform 200ms var(--sc-ease-out); }
.saddle__menu[aria-expanded="true"]::after { transform: translateY(-2px) rotate(135deg); }
.saddle__cta { background: var(--sc-accent); color: var(--sc-accent-ink); }
@media (hover: hover) and (pointer: fine) {
  .saddle__menu:hover { background: #1d3226; }
  .saddle__cta:hover { background: #8d2f15; }
}
.saddle__menu:active, .saddle__cta:active { transform: scale(.97); }

.saddle__horse { position: fixed; left: 50%; bottom: 0; width: var(--ears-w); z-index: -1;
  transform-origin: 50% 100%;
  transform: translateX(-50%) translateY(var(--dismount, 0%)) scale(var(--ears-s, 1));
  transition: none; pointer-events: none; }
.ears { display: block; width: 100%; height: auto; overflow: visible;
  transform-origin: 50% 100%;
  transform: translateY(var(--bob-y, 0px)) rotate(var(--bob-r, 0deg));
  filter: drop-shadow(0 -2px 10px hsl(30 40% 4% / .25)); }
.ears__ear { transform-box: fill-box; transform-origin: 50% 100%; }
.ears__ear--l { transform: rotate(var(--flick-l, 0deg)); }
.ears__ear--r { transform: rotate(var(--flick-r, 0deg)); }
.saddle__gait { position: absolute; left: 50%; bottom: calc(100% - 4px); translate: -50% 0;
  margin: 0; white-space: nowrap; display: inline-flex; align-items: center; gap: .4rem;
  font: 600 .72rem/1 var(--sc-font-text); letter-spacing: .12em; text-transform: uppercase;
  color: var(--bone); background: hsl(140 28% 9% / .78); padding: .4rem .6rem; border-radius: 999px;
  opacity: var(--gait-o, 0); transition: opacity 300ms var(--sc-ease-out);
  -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.saddle__beat { width: 6px; height: 6px; border-radius: 50%; background: var(--ember); transform: scale(var(--beat, 1)); }

.ride-list { position: fixed; left: clamp(.9rem, 2.4vw, 2rem); bottom: calc(46px + 1.6rem + env(safe-area-inset-bottom));
  background: var(--forest); color: var(--bone); border-radius: 18px; padding: .6rem; min-width: 15rem;
  box-shadow: 0 18px 40px -12px hsl(140 30% 4% / .55), inset 0 1px 0 hsl(0 0% 100% / .08); }
.ride-list ol { list-style: none; margin: 0; padding: 0; }
.ride-list a { display: block; padding: .7rem .9rem; border-radius: 10px; color: inherit; text-decoration: none; font-weight: 500; }
.ride-list a:hover, .ride-list a:focus-visible { background: hsl(140 20% 100% / .08); }
.ride-list a:focus-visible { outline-color: var(--ember); }

body.is-home .saddle__horse { --dismount: 115%; transition: transform 700ms var(--sc-ease-out); }
body.is-home .saddle__menu, body.is-home .saddle__cta { opacity: 0; translate: 0 140%; pointer-events: none; }

/* ------------------------------------------------------------------ hero -- */
.hero { background: #DCE3E2; }
.hero__stage { background: #DCE3E2; }
.hero__plane { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 78%; max-width: none; }
.hero__far  { transform-origin: 50% 62%; transform: scale(calc(1.02 + var(--sc-p, 0) * .07)); }
.hero__mist { object-position: 50% 50%; opacity: calc(.95 - var(--sc-p, 0) * .35);
  transform: translate3d(calc(var(--sc-p, 0) * -5%), calc(var(--sc-p, 0) * 3vh), 0) scale(calc(1.05 + var(--sc-p, 0) * .2)); }
.hero__mid  { transform-origin: 50% 100%; transform: scale(calc(1 + var(--sc-p, 0) * .34)); }
.hero__near { transform-origin: 50% 100%; transform: scale(calc(1 + var(--sc-p, 0) * .75)); }
.hero__scrim { position: absolute; inset: 0; z-index: 1; pointer-events: none;
  background: radial-gradient(70% 62% at 18% 30%, hsl(90 30% 96% / .72), hsl(90 30% 96% / .38) 55%, transparent 80%);
  opacity: calc(1 - var(--sc-p, 0)); }
.hero__copy { position: absolute; z-index: 1; left: var(--sc-gutter); top: clamp(1.4rem, 5vh, 3rem); max-width: min(44rem, 58vw);
  transform: translate3d(0, calc(var(--sc-p, 0) * 9vh), 0); }
.hero__mark { width: clamp(7.5rem, 11vw, 10rem); height: auto; margin-bottom: clamp(1.4rem, 5vh, 3.2rem); }
.hero__title { font: 700 clamp(2.5rem, 1.4rem + 4.3vw, 5.4rem)/.98 var(--sc-font-display); letter-spacing: -.035em; margin: 0; text-wrap: balance; max-width: 13ch; color: #121B15; }
.hero__sub { margin: 1.1rem 0 0; max-width: 36ch; font-size: var(--sc-t-lg); line-height: 1.45; color: #22302A; text-wrap: pretty; }

/* ------------------------------------------------------------------ farm -- */
.farm { background: var(--sc-canvas); color: var(--sc-ink); padding-block: clamp(3rem, 6vw, 6rem) clamp(3.5rem, 7vw, 7rem); }
.farm__grid { display: grid; grid-template-columns: 1.35fr 1fr; gap: clamp(2rem, 5vw, 5.5rem); align-items: start; }
.farm__photo { margin: 0; }
.farm__frame { overflow: hidden; border-radius: 4px; aspect-ratio: 4 / 3.3; box-shadow: var(--sc-e2); }
.farm__frame img { width: 100%; height: 118%; object-fit: cover; margin-top: -9%; }
.farm__photo figcaption, .home__photo figcaption { margin-top: .7rem; font-size: var(--sc-t-xs); color: var(--sc-ink-soft); letter-spacing: .01em; }
.farm__copy { padding-top: clamp(0rem, 3vw, 3rem); position: relative; }
.farm__title { font: 700 var(--sc-t-2xl)/1.02 var(--sc-font-display); letter-spacing: -.03em; margin: 0 0 var(--sc-5); text-wrap: balance; }
.farm__inset { width: 40%; height: auto; margin-top: var(--sc-6); margin-left: -22%; border: 6px solid var(--sc-surface); box-shadow: var(--sc-e3); rotate: -2deg; position: relative; }

/* ------------------------------------------------------------- day ride -- */
.day { background: var(--forest); color: var(--bone); --sc-ink: var(--bone); --sc-ink-soft: var(--bone-soft); --sc-accent: var(--ember); }
.day__stage { background: var(--forest); display: flex; align-items: center; }
.day__rail { gap: clamp(1.5rem, 3vw, 3rem); padding-inline: var(--sc-gutter) 12vw; align-items: center; }
.day__lead { flex: 0 0 min(26rem, 78vw); }
.day__title { font: 700 var(--sc-t-3xl)/.96 var(--sc-font-display); letter-spacing: -.04em; margin: 0 0 1.1rem; }
.day__lead p, .day__end p { margin: 0; font-size: var(--sc-t-lg); line-height: 1.45; color: var(--bone-soft); max-width: 30ch; }
.stop { margin: 0; flex: 0 0 auto; width: clamp(18rem, 36vw, 36rem); }
.stop img { width: 100%; height: auto; aspect-ratio: 16 / 10.5; object-fit: cover; border-radius: 3px; box-shadow: 0 24px 50px -24px hsl(140 40% 2% / .8); }
.stop--tall { width: clamp(15rem, 25vw, 23rem); }
.stop--tall img { aspect-ratio: 4 / 4.6; }
.stop--low { translate: 0 6vh; }
.stop figcaption { display: grid; gap: .2rem; margin-top: .9rem; }
.stop b { font: 700 var(--sc-t-xl)/1 var(--sc-font-display); letter-spacing: -.02em; color: var(--bone); }
.stop span { font-size: var(--sc-t-sm); color: var(--bone-soft); }
.day__end { flex: 0 0 min(22rem, 76vw); }
.day__end .day__lunch { font: 700 var(--sc-t-xl)/1.1 var(--sc-font-display); color: var(--bone); margin-bottom: .8rem; letter-spacing: -.02em; }
@media (prefers-reduced-motion: no-preference) {
  .day .stop { opacity: clamp(.55, calc(var(--sc-p, 0) * 4 - var(--i, 0) * .7 + .9), 1); }
}

/* ------------------------------------------------------------- how long -- */
.long { background: var(--sc-canvas); color: var(--sc-ink); padding-top: clamp(4rem, 8vw, 8rem); }
.long__wrap { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.5fr); gap: var(--sc-6) clamp(2rem, 6vw, 6rem); }
.long__title { font: 700 var(--sc-t-2xl)/1.02 var(--sc-font-display); letter-spacing: -.03em; margin: 0; text-wrap: balance; grid-row: span 2; }
.long__list { margin: 0; }
.long__row { display: grid; grid-template-columns: 12rem 1fr; gap: 1.5rem; padding: 1.3rem 0; border-top: 1px solid var(--sc-hairline-strong); }
.long__row:last-child { border-bottom: 1px solid var(--sc-hairline-strong); }
.long__row dt { font: 700 var(--sc-t-lg)/1.15 var(--sc-font-display); letter-spacing: -.01em; }
.long__row dd { margin: 0; color: var(--sc-ink-soft); line-height: 1.55; max-width: 52ch; }
.long__note { grid-column: 2; margin: 0; font-size: var(--sc-t-lg); line-height: 1.4; max-width: 40ch; }
.long__band { margin: clamp(3rem, 6vw, 5rem) 0 0; height: clamp(14rem, 44vh, 30rem); overflow: hidden; }
.long__band img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 55%; }

/* ---------------------------------------------------------------- ranch -- */
.ranch { background: var(--earth); color: var(--earth-ink); --sc-canvas: var(--earth); --sc-ink: var(--earth-ink); --sc-ink-soft: var(--earth-soft); }
.ranch__stage { background: var(--earth); display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr); align-items: center; gap: clamp(2rem, 5vw, 5rem); padding-inline: var(--sc-gutter); }
.ranch__film { position: relative; height: min(82svh, 46rem); aspect-ratio: 608 / 1080; justify-self: end; overflow: hidden; border-radius: 6px; box-shadow: 0 30px 60px -28px hsl(15 60% 2% / .9); background: #120b08; }
.ranch__inset { position: absolute; z-index: 2; width: clamp(12rem, 20vw, 19rem); height: auto; left: calc(50% - clamp(1rem, 4vw, 4rem) - clamp(15rem, 22vw, 20rem)); bottom: 6vh; border: 5px solid var(--earth-ink); box-shadow: var(--sc-e3); rotate: 2.5deg; }
.ranch__copy { position: relative; z-index: 3; max-width: 34rem; padding-bottom: 8vh; }
.ranch__title { font: 700 var(--sc-t-2xl)/1.02 var(--sc-font-display); letter-spacing: -.03em; margin: 0 0 1.6rem; text-wrap: balance; }
.ranch__days { list-style: none; margin: 0; padding: 0; display: grid; gap: .9rem; }
.ranch__days li { color: var(--earth-soft); line-height: 1.5; max-width: 46ch; }
.ranch__days b { display: inline-block; min-width: 4rem; color: var(--ember); font-family: var(--sc-font-display); }
.ranch__credit { margin: 1.5rem 0 0; font-size: var(--sc-t-xs); color: var(--earth-soft); }

/* ----------------------------------------------------------------- peak -- */
.peak { background: #F1F2EE; }
.peak__stage { background: #F1F2EE; --open: clamp(0, calc((var(--sc-p, 0) - .44) / .3), 1); }
.peak__photo { position: absolute; inset: 0; overflow: hidden; background: #8c99a3; }
.peak__blur { position: absolute; inset: -18%; width: 136%; height: 136%; object-fit: cover; filter: blur(28px) saturate(1.05) brightness(.82); max-width: none; }
.peak__print { position: absolute; top: 0; left: 50%; height: 100%; width: auto; max-width: none; aspect-ratio: 960 / 958;
  transform: translateX(-50%) scale(calc(1.14 - var(--open) * .14)); transform-origin: 50% 60%;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 9%, #000 91%, transparent); mask-image: linear-gradient(90deg, transparent, #000 9%, #000 91%, transparent); }
.peak__scrim { position: absolute; inset: 0; z-index: 1; opacity: var(--open);
  background: linear-gradient(90deg, hsl(205 30% 8% / .88) 0%, hsl(205 30% 8% / .7) 32%, hsl(205 30% 8% / 0) 55%); }
.peak__veil, .peak__cloud { position: absolute; z-index: 2; inset: 0; width: 100%; height: 100%; object-fit: cover; max-width: none; pointer-events: none; }
.peak__veil { opacity: calc(1 - var(--open) * 1.15); transform: scale(calc(1.05 + var(--sc-p, 0) * .08)); }
.peak__cloud--l { width: 80%; transform: translate3d(calc(var(--sc-p, 0) * 3% - var(--open) * 140%), 0, 0) scale(1.15); transform-origin: 0 50%; }
.peak__cloud--r { left: auto; right: 0; width: 80%; transform: translate3d(calc(var(--sc-p, 0) * -3% + var(--open) * 140%), 0, 0) scale(1.15); transform-origin: 100% 50%; }
.peak__hush { position: absolute; z-index: 3; left: 50%; top: 50%; translate: -50% -50%; margin: 0;
  font: 500 var(--sc-t-xl)/1.2 var(--sc-font-display); letter-spacing: -.01em; color: #4b5a60; }
.peak__copy { position: absolute; z-index: 3; left: var(--sc-gutter); bottom: clamp(6rem, 16vh, 10rem); max-width: min(34rem, 44vw); color: #F5F3EE; }
.peak__alt { margin: 0 0 .6rem; display: flex; align-items: baseline; gap: .7rem; }
.peak__alt .sc-nums { font: 700 clamp(4rem, 2rem + 8vw, 9.5rem)/.9 var(--sc-font-display); letter-spacing: -.05em; font-variant-numeric: tabular-nums; }
.peak__unit { font: 600 var(--sc-t-lg)/1 var(--sc-font-text); color: #DCE3E6; }
.peak__title { font: 700 var(--sc-t-2xl)/1.02 var(--sc-font-display); letter-spacing: -.03em; margin: 0 0 .9rem; text-wrap: balance; }
.peak__sub { margin: 0; font-size: var(--sc-t-lg); line-height: 1.45; color: #E2E6E6; max-width: 34ch; }

/* --------------------------------------------------------------- riders -- */
.riders { background: var(--sc-canvas); color: var(--sc-ink); padding-block: clamp(3.5rem, 7vw, 7rem) clamp(3rem, 6vw, 5.5rem); }
.riders__wrap { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--sc-6) var(--sc-6); }
.riders__title { grid-column: 1 / span 5; font: 600 var(--sc-t-lg)/1.2 var(--sc-font-text); margin: 0; color: var(--sc-ink-soft); }
.quote { margin: 0; }
.quote blockquote { margin: 0; }
.quote p { margin: 0; text-wrap: pretty; }
.quote figcaption { margin-top: .9rem; font-size: var(--sc-t-sm); color: var(--sc-ink-soft); }
.quote--lead { grid-column: 1 / span 9; }
.quote--lead p { font: 600 clamp(1.7rem, 1.1rem + 2.1vw, 3rem)/1.12 var(--sc-font-display); letter-spacing: -.025em; }
.riders__more { grid-column: 2 / -1; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--sc-7) var(--sc-6); margin-top: var(--sc-5); }
.riders__more .quote:nth-child(2) { margin-top: var(--sc-8); }
.riders__more .quote p { font-size: var(--sc-t-base); line-height: 1.55; }
.riders__link { grid-column: 2 / -1; margin: var(--sc-4) 0 0; }
.riders__link a, .more a, .foot a { color: var(--sc-accent); text-underline-offset: .22em; text-decoration-thickness: 1px; }

/* ----------------------------------------------------------------- home -- */
.home { background: var(--dusk); color: var(--dusk-ink); --sc-canvas: var(--dusk); --sc-ink: var(--dusk-ink); --sc-ink-soft: var(--dusk-soft); --sc-accent: var(--ember); --sc-hairline-strong: hsl(30 20% 90% / .2);
  padding-top: clamp(4rem, 8vw, 8rem); }
.home__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: clamp(2rem, 5vw, 5.5rem); align-items: start; }
.home__photo { margin: 0; position: sticky; top: 2rem; }
.home__photo img { width: 100%; height: auto; border-radius: 4px; filter: sepia(.18) saturate(1.08) brightness(.96); box-shadow: 0 30px 60px -30px #000; }
.home__photo figcaption { color: var(--dusk-soft); }
.home__title { font: 700 var(--sc-t-3xl)/.98 var(--sc-font-display); letter-spacing: -.04em; margin: 0 0 1rem; text-wrap: balance; }
.home__lede { margin: 0 0 2rem; color: var(--dusk-soft); font-size: var(--sc-t-lg); line-height: 1.45; max-width: 40ch; }
.plan { display: grid; gap: 1.4rem; }
.plan__group { border: 0; margin: 0; padding: 0; }
.plan__group legend, .plan__field > span, .plan__note-label { font: 600 var(--sc-t-xs)/1 var(--sc-font-text); letter-spacing: .1em; text-transform: uppercase; color: var(--dusk-soft); margin-bottom: .7rem; padding: 0; }
.plan__chips { display: flex; flex-wrap: wrap; gap: .5rem; }
.plan__chips label { position: relative; }
.plan__chips input { position: absolute; opacity: 0; inset: 0; margin: 0; cursor: pointer; }
.plan__chips span { display: inline-flex; align-items: center; min-height: 44px; padding: 0 1rem; border-radius: 999px; border: 1px solid hsl(30 20% 90% / .26); color: var(--dusk-ink); font-weight: 500; transition: background-color 160ms var(--sc-ease-out), border-color 160ms var(--sc-ease-out), color 160ms var(--sc-ease-out); }
.plan__chips input:checked + span { background: var(--dusk-ink); color: var(--dusk); border-color: var(--dusk-ink); }
.plan__chips input:focus-visible + span { outline: 2px solid var(--ember); outline-offset: 3px; }
@media (hover: hover) and (pointer: fine) { .plan__chips label:hover span { border-color: hsl(30 20% 90% / .6); } }
.plan__pace { margin: .8rem 0 0; font-size: var(--sc-t-sm); color: var(--ember); min-height: 1.2em; }
.plan__row { display: grid; grid-template-columns: 8rem 1fr; gap: 1rem; }
.plan__field { display: grid; }
.plan__field input { font: 500 var(--sc-t-base)/1.2 var(--sc-font-text); color: var(--dusk-ink); background: hsl(30 20% 100% / .05); border: 1px solid hsl(30 20% 90% / .24); border-radius: 10px; min-height: 48px; padding: 0 .9rem; caret-color: var(--ember); }
.plan__field input::placeholder { color: hsl(30 15% 80% / .5); }
.plan__field input:focus-visible { outline: 2px solid var(--ember); outline-offset: 2px; border-color: transparent; }
.plan__note { background: hsl(30 20% 100% / .05); border-radius: 12px; padding: 1rem 1.1rem; border: 1px solid hsl(30 20% 90% / .12); }
.plan__msg { margin: 0; white-space: pre-wrap; font: 400 var(--sc-t-sm)/1.55 var(--sc-font-text); color: var(--dusk-ink); }
.plan__actions { display: flex; align-items: center; gap: 1rem; flex-wrap: wrap; }
.plan__send { display: inline-flex; align-items: center; min-height: 52px; padding: 0 1.6rem; border-radius: 999px; background: var(--ember); color: #1C1714; font-weight: 600; text-decoration: none; transition: transform 140ms var(--sc-ease-out), background-color 160ms var(--sc-ease-out); }
@media (hover: hover) and (pointer: fine) { .plan__send:hover { background: #F6A985; } }
.plan__send:active { transform: scale(.97); }
.plan__status { margin: 0; font-size: var(--sc-t-sm); color: var(--dusk-ink); }
.plan__fine { margin: 0; font-size: var(--sc-t-xs); color: var(--dusk-soft); max-width: 52ch; line-height: 1.5; }
.home__more { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; margin-top: clamp(3.5rem, 7vw, 6rem); }
.more { border-top: 1px solid var(--sc-hairline-strong); padding-top: 1rem; }
.more summary { cursor: pointer; font: 700 var(--sc-t-lg)/1.2 var(--sc-font-display); letter-spacing: -.01em; list-style: none; display: flex; justify-content: space-between; gap: 1rem; min-height: 44px; align-items: center; }
.more summary::-webkit-details-marker { display: none; }
.more summary::after { content: "+"; font-weight: 500; color: var(--ember); }
.more[open] summary::after { content: "–"; }
.more p, .more li { color: var(--dusk-soft); line-height: 1.55; font-size: var(--sc-t-sm); }
.more ol { padding-left: 0; list-style: none; display: grid; gap: .6rem; }
.more b { color: var(--dusk-ink); margin-right: .3rem; }
.foot { margin-top: clamp(4rem, 8vw, 7rem); padding-block: 2.5rem 7rem; border-top: 1px solid var(--sc-hairline-strong); display: grid; gap: .5rem; font-size: var(--sc-t-sm); color: var(--dusk-soft); }
.foot p { margin: 0; }
.foot__mark { width: 4.5rem; height: auto; margin-bottom: .8rem; }
.foot__fine { font-size: var(--sc-t-xs); max-width: 60ch; margin-top: .6rem !important; }

/* --------------------------------------------------------------- phones -- */
@media (max-width: 860px) {
  :root { --ears-w: 118px; }
  .saddle__menu, .saddle__cta { min-height: 44px; padding: 0 .95rem; }
  .saddle__gait { font-size: .64rem; padding: .32rem .5rem; }
  .hero__plane { object-position: 46% 100%; }
  .hero__copy { max-width: none; right: var(--sc-gutter); top: 1.2rem; }
  .hero__title { font-size: clamp(2.2rem, 9.6vw, 3.1rem); max-width: 11ch; }
  .hero__sub { font-size: var(--sc-t-base); max-width: 30ch; }
  .hero__mark { width: 6.4rem; margin-bottom: 1.4rem; }
  .farm__grid { grid-template-columns: 1fr; }
  .farm__inset { width: 52%; margin-left: auto; margin-top: var(--sc-6); }
  .stop { width: 78vw; }
  .stop--tall { width: 62vw; }
  .stop--low { translate: 0 3vh; }
  .long__wrap { grid-template-columns: 1fr; }
  .long__title { grid-row: auto; }
  .long__note { grid-column: 1; }
  .long__row { grid-template-columns: 1fr; gap: .4rem; }
  .ranch__stage { grid-template-columns: 1fr; align-content: start; padding-top: 1.2rem; gap: 1rem; }
  .ranch__film { justify-self: start; height: 46svh; }
  .ranch__inset { width: 42vw; left: auto; right: var(--sc-gutter); top: 14svh; bottom: auto; }
  .ranch__copy { padding-bottom: 0; }
  .ranch__title { font-size: var(--sc-t-xl); margin-bottom: .8rem; }
  .ranch__days { gap: .45rem; }
  .ranch__days li { font-size: var(--sc-t-sm); line-height: 1.4; }
  .ranch__credit { display: none; }
  .peak__print { top: 0; height: 62%; }
  .peak__blur { inset: -10%; }
  .peak__scrim { background: linear-gradient(0deg, hsl(205 30% 8% / .92) 0%, hsl(205 30% 8% / .75) 38%, hsl(205 30% 8% / 0) 62%); }
  .peak__copy { max-width: none; right: var(--sc-gutter); bottom: 6.5rem; }
  .peak__cloud--l, .peak__cloud--r { width: 120%; }
  .riders__wrap { grid-template-columns: 1fr; }
  .riders__title, .quote--lead, .riders__more, .riders__link { grid-column: 1; }
  .riders__more { grid-template-columns: 1fr; gap: var(--sc-6); }
  .riders__more .quote:nth-child(2) { margin-top: 0; }
  .home__grid { grid-template-columns: 1fr; }
  .home__photo { position: static; }
  .plan__row { grid-template-columns: 6.5rem 1fr; }
  .home__more { grid-template-columns: 1fr; gap: .5rem; }
}

/* --------------------------------------------------------- reduced motion -- */
@media (prefers-reduced-motion: reduce) {
  .hero__far, .hero__mist, .hero__mid, .hero__near, .hero__copy { transform: none; }
  .ears { transform: none; }
  .ears__ear { transform: none; }
  .saddle__beat { transform: none; }
}
