:root {
  --night: #090b0a;
  --night-soft: #121512;
  --ivory: #f1ebdd;
  --ivory-deep: #e3dbc9;
  --gold: #c69a58;
  --green: #3e5748;
  --ember: #9e4f34;
  --mist: #b9c2bc;
  --ink: #1b1b18;
  --handoff: #1f1a17;
  --serif: "Newsreader", "Iowan Old Style", "Baskerville", Georgia, serif;
  --sans: "Manrope", "Avenir Next", Helvetica, Arial, sans-serif;
  --mono: "DM Mono", "SFMono-Regular", Consolas, monospace;
  --shell: min(92vw, 1420px);
  --header-h: 82px;
  --ease: cubic-bezier(.22, 1, .36, 1);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--night); }
body {
  margin: 0;
  background: var(--night);
  color: var(--ivory);
  font-family: var(--sans);
  font-size: 16px;
  line-height: 1.6;
  overflow-x: clip;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}
body.menu-open { overflow: hidden; }
::selection { background: var(--gold); color: var(--night); }
a { color: inherit; text-decoration: none; }
button, input, textarea { font: inherit; }
button { color: inherit; }
img, svg, canvas, video { display: block; max-width: 100%; }
fieldset { border: 0; margin: 0; padding: 0; min-inline-size: 0; }
legend { padding: 0; }
.sr-only {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
}
.skip-link {
  position: fixed; z-index: 5000; left: 16px; top: 16px; padding: 10px 14px;
  background: var(--ivory); color: var(--night); transform: translateY(-150%);
  transition: transform .2s ease;
}
.skip-link:focus { transform: translateY(0); }
:focus-visible { outline: 2px solid var(--gold); outline-offset: 4px; }

/* Loader */
.loader {
  position: fixed; inset: 0; z-index: 4000; display: grid; place-items: center;
  background: var(--night); color: var(--ivory); transition: opacity .8s var(--ease), visibility .8s;
}
.loader.is-complete { opacity: 0; visibility: hidden; pointer-events: none; }
.loader__inner { width: min(320px, 76vw); text-align: center; }
.brand-mark--loader { width: 82px; height: 82px; margin: 0 auto 30px; }
.brand-mark {
  border: 1px solid rgba(241,235,221,.5); border-radius: 50%; display: flex;
  align-items: center; justify-content: center; gap: 7px; font-family: var(--serif);
  font-size: 27px; font-weight: 300;
}
.brand-mark i { display: block; width: 1px; height: 34px; background: var(--gold); transform: rotate(27deg); }
.loader p { margin: 0 0 18px; font-family: var(--mono); font-size: 10px; letter-spacing: .2em; text-transform: uppercase; }
.loader__track { width: 100%; height: 1px; background: rgba(241,235,221,.18); overflow: hidden; }
.loader__track span { display: block; width: 0; height: 100%; background: var(--gold); transition: width .15s linear; }
.loader output { display: block; margin-top: 10px; color: rgba(241,235,221,.5); font: 10px var(--mono); }

/* Header */
.site-header {
  position: fixed; z-index: 1000; inset: 0 0 auto 0; height: var(--header-h);
  display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 28px;
  padding: 0 4vw; color: var(--ivory); transition: color .5s ease, background .5s ease, border-color .5s ease, transform .5s var(--ease);
  border-bottom: 1px solid transparent;
}
.site-header.is-scrolled { backdrop-filter: blur(16px); background: rgba(9,11,10,.5); border-bottom-color: rgba(241,235,221,.12); }
.site-header.on-light { color: var(--ink); background: rgba(241,235,221,.8); border-bottom-color: rgba(27,27,24,.12); }
.site-header.is-hidden { transform: translateY(-100%); }
.wordmark { display: inline-flex; align-items: center; gap: 12px; width: max-content; font-family: var(--serif); font-size: 21px; line-height: 1; letter-spacing: -.02em; }
.wordmark > span > span, .footer-wordmark span { color: var(--gold); font-style: italic; }
.wordmark__glyph { width: 34px; height: 34px; overflow: visible; }
.wordmark__glyph circle, .wordmark__glyph path { fill: none; stroke: currentColor; stroke-width: 1.15; }
.desktop-nav { display: flex; align-items: center; gap: 28px; }
.desktop-nav a { position: relative; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; }
.desktop-nav a::after { content: ""; position: absolute; left: 0; right: 100%; bottom: -7px; height: 1px; background: currentColor; transition: right .4s var(--ease); }
.desktop-nav a:hover::after { right: 0; }
.header-cta { justify-self: end; display: inline-flex; align-items: center; gap: 16px; font-size: 11px; letter-spacing: .1em; text-transform: uppercase; }
.header-cta i { display: grid; place-items: center; width: 37px; height: 37px; border: 1px solid currentColor; border-radius: 50%; font-style: normal; transition: transform .4s var(--ease), background .4s ease, color .4s ease; }
.header-cta:hover i { transform: rotate(45deg); background: currentColor; color: var(--night); }
.site-header.on-light .header-cta:hover i { color: var(--ivory); }
.menu-button { display: none; justify-self: end; width: 46px; height: 46px; border: 0; background: transparent; padding: 13px 8px; cursor: pointer; }
.menu-button span:not(.sr-only) { display: block; width: 27px; height: 1px; background: currentColor; margin: 6px auto; transition: transform .35s var(--ease); }
.menu-button[aria-expanded="true"] span:first-child { transform: translateY(3.5px) rotate(45deg); }
.menu-button[aria-expanded="true"] span:nth-child(2) { transform: translateY(-3.5px) rotate(-45deg); }
.mobile-menu {
  position: fixed; z-index: 980; inset: 0; display: flex; flex-direction: column; justify-content: center;
  gap: 20px; padding: 100px 9vw 60px; background: var(--night); color: var(--ivory);
}
.mobile-menu[hidden] { display: none; }
.mobile-menu a { font: 400 clamp(40px, 12vw, 72px)/1 var(--serif); border-bottom: 1px solid rgba(241,235,221,.15); padding: 16px 0; }

/* Chapter rail */
.chapter-rail {
  position: fixed; z-index: 900; right: 22px; top: 50%; transform: translateY(-50%);
  display: flex; flex-direction: column; align-items: center; gap: 12px; color: rgba(241,235,221,.7);
  mix-blend-mode: difference; pointer-events: none;
}
.chapter-rail__number, .chapter-rail__label { font: 9px var(--mono); letter-spacing: .13em; text-transform: uppercase; writing-mode: vertical-rl; }
.chapter-rail__line { width: 1px; height: 92px; background: rgba(241,235,221,.25); position: relative; overflow: hidden; }
.chapter-rail__line i { position: absolute; left: 0; top: 0; width: 100%; height: 0; background: var(--ivory); }

/* Shared typography */
.section-shell { width: var(--shell); margin: 0 auto; position: relative; }
.section-index, .eyebrow {
  margin: 0 0 24px; font: 400 10px/1.4 var(--mono); letter-spacing: .18em; text-transform: uppercase;
}
.section-index { color: var(--ember); }
h1, h2, h3, p { text-wrap: pretty; }
h1, h2, h3 { margin-top: 0; }
h1, h2 { font-family: var(--serif); font-weight: 300; letter-spacing: -.04em; }
h2 { font-size: clamp(54px, 7.2vw, 120px); line-height: .91; }
h2 em { color: var(--ember); font-style: italic; font-weight: 300; }
.lede { font: 300 clamp(20px, 2vw, 30px)/1.45 var(--sans); letter-spacing: -.025em; }
.text-link { display: inline-flex; align-items: center; gap: 26px; margin-top: 28px; padding-bottom: 7px; border-bottom: 1px solid currentColor; font-size: 12px; letter-spacing: .1em; text-transform: uppercase; }
.text-link span { transition: transform .35s var(--ease); }
.text-link:hover span { transform: translate(4px, 4px); }
.reveal-on-scroll { opacity: 0; transform: translateY(44px); transition: opacity 1.1s var(--ease), transform 1.1s var(--ease); }
.reveal-on-scroll.is-visible { opacity: 1; transform: none; }

/* Film */
.film-scroll { height: 420vh; position: relative; background: var(--handoff); }
.film-stage { position: sticky; top: 0; height: 100svh; overflow: hidden; background: #080d10; }
#filmCanvas, .film-fallback { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
#filmCanvas { z-index: 1; }
.film-fallback { z-index: 0; opacity: 0; }
.no-js #filmCanvas { display: none; }
.no-js .film-fallback { opacity: 1; }
.film-stage__wash {
  position: absolute; z-index: 2; inset: auto 0 0; height: 30%;
  background: linear-gradient(to bottom, transparent, var(--handoff)); opacity: 0; pointer-events: none;
}
.film-stage__grain {
  position: absolute; z-index: 3; inset: -50%; opacity: .065; pointer-events: none;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.92' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E");
  animation: grain .25s steps(2) infinite;
}
@keyframes grain { 0% { transform: translate(0,0) } 25% { transform: translate(2%, -3%) } 50% { transform: translate(-4%, 2%) } 75% { transform: translate(3%, 4%) } 100% { transform: translate(-2%, -2%) } }
.film-stage__vignette { position: absolute; z-index: 4; inset: 0; pointer-events: none; background: radial-gradient(circle at 50% 45%, transparent 30%, rgba(3,5,5,.22) 75%, rgba(3,5,5,.56) 120%); }
.film-beat { position: absolute; z-index: 10; inset: 0; padding: calc(var(--header-h) + 9vh) 8vw 9vh; display: flex; flex-direction: column; justify-content: center; pointer-events: none; opacity: 0; }
.film-beat--hero { opacity: 1; align-items: flex-start; }
.film-beat--hero h1 { margin: 0; font-size: clamp(64px, 10.8vw, 174px); line-height: .78; max-width: 1280px; text-shadow: 0 2px 30px rgba(0,0,0,.25); }
.film-beat--hero h1 span { display: block; }
.film-beat--hero .eyebrow { margin-bottom: 30px; color: rgba(241,235,221,.78); }
.hero-reveal { margin: 28px 0 0 51%; font: italic 300 clamp(22px, 2.4vw, 40px)/1 var(--serif); color: var(--gold); }
.film-beat--middle { align-items: flex-end; text-align: right; }
.film-beat--middle h2, .film-beat--final h2 { margin: 0; font-size: clamp(58px, 8vw, 128px); line-height: .85; text-shadow: 0 2px 28px rgba(0,0,0,.28); }
.film-beat--middle .eyebrow, .film-beat--final .eyebrow { color: rgba(241,235,221,.74); }
.film-beat--final { justify-content: flex-end; align-items: flex-start; padding-bottom: 12vh; }
.film-scroll-cue { position: absolute; z-index: 11; left: 4vw; bottom: 32px; display: flex; align-items: center; gap: 14px; font: 9px var(--mono); letter-spacing: .15em; text-transform: uppercase; color: rgba(241,235,221,.7); }
.film-scroll-cue i { width: 42px; height: 1px; background: rgba(241,235,221,.38); position: relative; overflow: hidden; }
.film-scroll-cue i::after { content: ""; position: absolute; inset: 0; background: var(--ivory); transform: translateX(-100%); animation: cue 2s ease-in-out infinite; }
@keyframes cue { 55%,100% { transform: translateX(100%); } }

/* Atlas threshold */
.atlas-threshold { min-height: 185vh; position: relative; overflow: hidden; background: var(--ivory); color: var(--ink); padding: 39vh 0 18vh; }
.atlas-threshold__image { position: absolute; inset: 0 0 auto; height: 46vh; background: var(--handoff) url("assets/media/atlas-handoff.jpg") center/cover no-repeat; }
.atlas-threshold__image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to bottom, transparent 15%, rgba(31,26,23,.32) 55%, var(--ivory) 100%); }
.atlas-threshold__paper { position: absolute; inset: 35vh 0 0; opacity: .38; pointer-events: none; background-image: radial-gradient(circle at 50% 0, rgba(158,79,52,.08), transparent 38%), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='f'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.12' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23f)' opacity='.12'/%3E%3C/svg%3E"); }
.route-river { position: absolute; z-index: 1; left: 0; top: 30vh; width: 100%; height: 58vh; overflow: visible; }
.route-river__shadow { stroke: rgba(42,35,29,.18); stroke-width: 18; }
.route-river__gold { stroke: var(--gold); stroke-width: 2; stroke-linecap: round; stroke-dasharray: 1900; stroke-dashoffset: 1900; }
.threshold-copy { z-index: 2; }
.threshold-copy > h2 { max-width: 1150px; margin-bottom: 52px; }
.threshold-copy > .lede { max-width: 860px; margin-left: auto; }
.threshold-facts { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; margin-top: 110px; background: rgba(27,27,24,.14); border: 1px solid rgba(27,27,24,.14); }
.threshold-facts article { padding: 38px 34px 44px; background: rgba(241,235,221,.86); min-height: 260px; }
.threshold-facts article span { font: 10px var(--mono); color: var(--ember); }
.threshold-facts h3 { margin: 62px 0 14px; font: 400 28px/1.05 var(--serif); }
.threshold-facts p { margin: 0; color: rgba(27,27,24,.68); font-size: 14px; }

/* Map */
.atlas-map-section { background: var(--ivory); color: var(--ink); padding: 8vh 0 22vh; }
.atlas-map-grid { display: grid; grid-template-columns: minmax(300px,.8fr) minmax(440px,1.2fr); gap: 7vw; align-items: center; }
.atlas-map-copy h2 { font-size: clamp(58px, 7vw, 106px); }
.atlas-map-copy > p:not(.section-index) { max-width: 510px; color: rgba(27,27,24,.66); }
.africa-map-wrap { position: relative; width: min(100%, 650px); max-width: 650px; justify-self: end; }
.africa-map-wrap img { width: 100%; height: auto; filter: drop-shadow(0 18px 30px rgba(80,61,38,.15)); }
.map-coordinate { position: absolute; display: flex; align-items: center; gap: 10px; font: 9px var(--mono); letter-spacing: .12em; text-transform: uppercase; color: var(--ember); }
.map-coordinate i { width: 7px; height: 7px; border: 1px solid var(--ember); border-radius: 50%; position: relative; }
.map-coordinate i::after { content: ""; position: absolute; inset: -6px; border: 1px solid rgba(158,79,52,.3); border-radius: 50%; animation: pulse 2.4s ease-out infinite; }
.map-coordinate--kenya { top: 47%; right: 6%; }
.map-coordinate--south { bottom: 11%; right: 9%; }
@keyframes pulse { to { transform: scale(2.2); opacity: 0; } }
.map-orbit { position: absolute; width: 70%; aspect-ratio: 1; border: 1px solid rgba(158,79,52,.14); border-radius: 50%; left: 14%; top: 18%; transform: rotate(-13deg) scaleY(.43); }

/* Destination run */
.destination-run { height: 700vh; background: var(--night); color: var(--ivory); position: relative; }
.destination-sticky { position: sticky; top: 0; height: 100svh; overflow: hidden; }
.destination-heading { position: absolute; z-index: 20; left: 4vw; right: 4vw; top: calc(var(--header-h) + 18px); display: flex; align-items: center; justify-content: space-between; pointer-events: none; }
.destination-heading .section-index { color: rgba(241,235,221,.65); margin: 0; }
.destination-counter { display: flex; align-items: center; gap: 10px; font: 9px var(--mono); letter-spacing: .1em; }
.destination-counter i { width: 68px; height: 1px; background: rgba(241,235,221,.35); }
.destination-track { display: flex; width: max-content; height: 100%; will-change: transform; }
.destination-card { position: relative; width: 100vw; height: 100%; flex: 0 0 100vw; overflow: hidden; outline: 0; }
.destination-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(5,7,6,.84) 0%, rgba(5,7,6,.46) 42%, rgba(5,7,6,.06) 75%), linear-gradient(to top, rgba(5,7,6,.65), transparent 44%); }
.destination-art { width: 100%; height: 100%; object-fit: cover; transform: scale(1.05); will-change: transform; }
.destination-card__wash { position: absolute; inset: 0; z-index: 1; mix-blend-mode: color; opacity: .18; }
.destination-card__wash--sa { background: #6c3e2e; }
.destination-card__wash--bw { background: #345b55; }
.destination-card__wash--ke { background: #825f31; }
.destination-card__wash--na { background: #a15a3a; }
.destination-card__wash--zw { background: #2d4c52; }
.destination-card__wash--zm { background: #4a5d3b; }
.destination-card__content { position: absolute; z-index: 4; left: 8vw; bottom: 9vh; width: min(540px, 42vw); }
.destination-card__number { margin: 0 0 25px; color: var(--gold); font: 10px var(--mono); letter-spacing: .16em; }
.destination-card h3 { margin: 0; font: 300 clamp(74px, 10vw, 160px)/.78 var(--serif); letter-spacing: -.06em; }
.destination-card__line { margin: 30px 0 20px; font: italic 300 clamp(23px, 2.2vw, 36px)/1.15 var(--serif); }
.destination-card ul { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; margin: 0 0 34px; padding: 0; }
.destination-card li { border: 1px solid rgba(241,235,221,.28); border-radius: 999px; padding: 8px 12px; font-size: 10px; letter-spacing: .08em; text-transform: uppercase; backdrop-filter: blur(8px); }
.destination-open { display: inline-flex; align-items: center; gap: 22px; border: 0; border-bottom: 1px solid rgba(241,235,221,.65); background: transparent; padding: 0 0 8px; cursor: pointer; font-size: 11px; letter-spacing: .1em; text-transform: uppercase; }
.destination-open span { transition: transform .35s var(--ease); }
.destination-open:hover span { transform: translate(4px,-4px); }

/* Experiences */
.experiences { background: var(--ivory); color: var(--ink); padding: 20vh 0; }
.experiences-heading { display: grid; grid-template-columns: .35fr 1fr .52fr; gap: 5vw; align-items: end; margin-bottom: 80px; }
.experiences-heading .section-index { align-self: start; }
.experiences-heading h2 { margin: 0; font-size: clamp(60px, 7vw, 110px); }
.experiences-heading > p:last-child { color: rgba(27,27,24,.63); margin: 0 0 8px; }
.experience-panels { display: flex; width: 100%; height: min(72vh,760px); gap: 8px; }
.experience-panel { position: relative; flex: .65; min-width: 90px; overflow: hidden; color: var(--ivory); cursor: pointer; transition: flex 1s var(--ease); background: var(--night); }
.experience-panel.is-active { flex: 3.6; }
.experience-panel::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to top, rgba(5,7,6,.88), transparent 64%); }
.experience-panel__art { position: absolute; inset: 0; overflow: hidden; transform: scale(1.04); transition: transform 1.2s var(--ease); }
.experience-panel.is-active .experience-panel__art { transform: scale(1); }
.experience-panel__art img { width: 100%; height: 100%; object-fit: cover; }
.experience-panel__content { position: absolute; z-index: 3; inset: auto 28px 28px; }
.experience-panel__content > span { font: 9px var(--mono); color: var(--gold); }
.experience-panel h3 { margin: 14px 0 10px; font: 300 clamp(26px, 3vw, 50px)/.95 var(--serif); writing-mode: vertical-rl; transform: rotate(180deg); transition: all .65s var(--ease); white-space: nowrap; }
.experience-panel p { max-width: 390px; margin: 0; opacity: 0; transform: translateY(12px); transition: opacity .5s ease .2s, transform .5s var(--ease) .2s; }
.experience-panel.is-active h3 { writing-mode: horizontal-tb; transform: none; white-space: normal; }
.experience-panel.is-active p { opacity: .76; transform: none; }
.art-private { background: linear-gradient(165deg,#555844,#1d251d 48%,#0b100c); }
.art-air { background: linear-gradient(150deg,#8fa4a2,#b99b78 57%,#3b2f26); }
.art-culture { background: linear-gradient(135deg,#733f2e,#bd815d 52%,#352825); }
.art-conservation { background: linear-gradient(160deg,#879685,#3c5849 55%,#17231c); }
.art-legacy { background: radial-gradient(circle at 50% 35%,#c59d5c 0 2%,transparent 3%), linear-gradient(180deg,#141817,#171a17 58%,#61412c); }

/* Approach */
.approach { background: #d9cfbd; color: var(--ink); padding: 21vh 0; position: relative; overflow: hidden; }
.approach::before { content:""; position:absolute; inset:0; opacity:.22; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.09' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.18'/%3E%3C/svg%3E"); }
.approach-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: 9vw; }
.approach-copy { position: sticky; top: 17vh; align-self: start; }
.approach-copy h2 { font-size: clamp(59px,6.5vw,104px); }
.approach-copy .lede { max-width: 700px; font-size: clamp(18px,1.6vw,25px); color: rgba(27,27,24,.68); }
.field-notes { display: grid; grid-template-columns: repeat(2,1fr); gap: 26px; padding-top: 14vh; }
.field-note { position: relative; min-height: 430px; padding: 24px; background: #eee6d5; box-shadow: 0 24px 50px rgba(61,43,26,.14); transform: rotate(-1.2deg); }
.field-note:nth-child(2) { margin-top: 120px; transform: rotate(1.7deg); }
.field-note:nth-child(3) { grid-column: 1/3; min-height: 340px; margin: 12px 9% 0; transform: rotate(-.5deg); display: flex; flex-direction: column; justify-content: center; }
.field-note__photo { height: 260px; background: linear-gradient(160deg,#3f4d45,#a18a6c); overflow:hidden; position:relative; }
.field-note__photo img { width:100%; height:100%; object-fit:cover; object-position: 50% 25%; }
.field-note__meta { margin: 22px 0 16px; color: var(--ember); font: 9px var(--mono); letter-spacing:.14em; text-transform:uppercase; }
.field-note h3 { font: 400 35px/1 var(--serif); margin-bottom: 16px; }
.field-note > p:last-child { color: rgba(27,27,24,.63); font-size: 14px; }
.field-note--route svg { margin: 44px 0 54px; }
.field-note--route svg path { fill:none;stroke:var(--ember);stroke-width:2;stroke-dasharray:6 8; }
.field-note--route svg circle { fill:var(--ember); }
.field-note blockquote { margin:0; font:italic 300 clamp(38px,4.5vw,68px)/1.05 var(--serif); }

/* Stewardship */
.stewardship { height: 330vh; background: var(--green); color: var(--ivory); position:relative; }
.stewardship-sticky { position:sticky;top:0;height:100svh;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:5vw;padding:11vh 7vw 7vh;overflow:hidden; }
.stewardship-copy { max-width:690px; }
.stewardship-copy .section-index { color:#dcc28d; }
.stewardship-copy h2 { font-size:clamp(58px,6.4vw,102px); }
.stewardship-copy h2 em { color:#dcc28d; }
.stewardship-copy > p:last-child { max-width:590px;color:rgba(241,235,221,.72); }
.ecosystem { position:relative;aspect-ratio:1;max-width:680px;width:100%;justify-self:center; }
.ecosystem svg { position:absolute;inset:0;width:100%;height:100%; }
.ecosystem svg path,.ecosystem svg circle { fill:none;stroke:rgba(241,235,221,.22);stroke-width:1.2;stroke-dasharray:5 8; }
.ecosystem__layer { position:absolute;left:50%;top:50%;border:1px solid rgba(241,235,221,.32);border-radius:50%;display:grid;place-items:center;transform:translate(-50%,-50%);transition:transform .2s linear; }
.ecosystem__layer span { font:10px var(--mono);letter-spacing:.12em;text-transform:uppercase; }
.ecosystem__layer--wildlife { width:28%;aspect-ratio:1;background:rgba(198,154,88,.22); }
.ecosystem__layer--community { width:54%;aspect-ratio:1;background:rgba(158,79,52,.12); }
.ecosystem__layer--land { width:82%;aspect-ratio:1;background:rgba(9,11,10,.08); }

/* Desk */
.expedition-desk { position:relative;overflow:hidden;background:#17130f;color:var(--ivory);padding:20vh 0 18vh; }
.desk-texture { position:absolute;inset:0;background:radial-gradient(circle at 68% 20%,rgba(198,154,88,.14),transparent 30%),radial-gradient(circle at 15% 75%,rgba(62,87,72,.18),transparent 31%),linear-gradient(125deg,#1d1813,#100e0c 70%); }
.desk-texture::after { content:"";position:absolute;inset:0;opacity:.14;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.08' numOctaves='4'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.25'/%3E%3C/svg%3E"); }
.desk-route { position:absolute;inset:0;pointer-events:none;opacity:.35; }
.desk-route i { position:absolute;border:1px solid rgba(198,154,88,.3);border-radius:50%; }
.desk-route i:nth-child(1){width:520px;height:520px;right:-180px;top:80px}.desk-route i:nth-child(2){width:250px;height:250px;left:-80px;top:45%}.desk-route i:nth-child(3){width:9px;height:9px;right:18%;top:32%;background:var(--gold);box-shadow:0 0 0 12px rgba(198,154,88,.08)}
.desk-shell { z-index:1; }
.desk-intro { max-width:1080px;margin-bottom:90px; }
.desk-intro .section-index { color:var(--gold); }
.desk-intro h2 { margin-bottom:28px; }
.desk-intro h2 em { color:var(--gold); }
.desk-intro > p:last-child { color:rgba(241,235,221,.65); }
.journey-form { position:relative;max-width:1180px;margin-left:auto;background:rgba(241,235,221,.96);color:var(--ink);padding:26px 48px 44px;box-shadow:0 40px 110px rgba(0,0,0,.35); }
.journey-form::before { content:"";position:absolute;inset:0;pointer-events:none;opacity:.16;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='100'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.17' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.18'/%3E%3C/svg%3E"); }
.journey-form__top { position:relative;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;padding-bottom:22px;border-bottom:1px solid rgba(27,27,24,.17);font:9px var(--mono);letter-spacing:.14em;text-transform:uppercase; }
.form-progress { height:1px;background:rgba(27,27,24,.15); }
.form-progress i { display:block;height:100%;width:20%;background:var(--ember);transition:width .45s var(--ease); }
.journey-steps { position:relative;min-height:560px;overflow:hidden; }
.journey-step { position:absolute;inset:0;padding:58px 0 38px;opacity:0;visibility:hidden;transform:translateX(40px);transition:opacity .5s ease,transform .65s var(--ease),visibility .5s; }
.journey-step.is-active { position:relative;opacity:1;visibility:visible;transform:none; }
.journey-step legend { display:block;font:300 clamp(48px,6vw,88px)/.94 var(--serif);letter-spacing:-.045em; }
.journey-step legend small { display:block;margin-bottom:14px;color:var(--ember);font:9px var(--mono);letter-spacing:.14em;text-transform:uppercase; }
.journey-step > p { margin:18px 0 42px;color:rgba(27,27,24,.6); }
.choice-grid { display:grid;gap:10px; }
.choice-grid--feelings { grid-template-columns:repeat(4,1fr); }
.choice-grid label,.choice-list label { cursor:pointer; }
.choice-grid input,.choice-list input { position:absolute;opacity:0;pointer-events:none; }
.choice-grid label span { min-height:105px;border:1px solid rgba(27,27,24,.18);display:flex;align-items:flex-end;padding:18px;transition:background .35s ease,color .35s ease,border-color .35s ease,transform .35s var(--ease); }
.choice-grid label:hover span { transform:translateY(-3px);border-color:rgba(27,27,24,.5); }
.choice-grid input:checked + span { background:var(--green);border-color:var(--green);color:var(--ivory); }
.choice-grid input:focus-visible + span,.choice-list input:focus-visible + span { outline:2px solid var(--ember);outline-offset:3px; }
.choice-grid--landscape { grid-template-columns:repeat(4,1fr); }
.choice-grid--landscape label span { min-height:150px;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:20px; }
.landscape-icon { display:block;width:100%;height:48px;position:relative; }
.landscape-icon::before,.landscape-icon::after { content:"";position:absolute; }
.icon-savannah::before { left:54%;bottom:0;width:2px;height:40px;background:currentColor; }.icon-savannah::after { left:29%;top:2px;width:52%;height:18px;border-radius:50%;background:currentColor; }
.icon-delta::before { inset:7px 0 0;background:repeating-radial-gradient(ellipse at 30% 100%,transparent 0 8px,currentColor 9px 10px,transparent 11px 17px); }
.icon-desert::before { left:0;right:0;bottom:0;height:40px;border-radius:50% 50% 0 0;background:linear-gradient(160deg,transparent 49%,currentColor 50% 53%,transparent 54%); }
.icon-mountain::before { left:8%;right:8%;bottom:0;height:42px;clip-path:polygon(0 100%,28% 28%,46% 72%,65% 0,100% 100%);background:currentColor; }
.icon-coast::before { left:0;right:0;bottom:6px;height:28px;background:repeating-radial-gradient(ellipse at 50% 100%,transparent 0 9px,currentColor 10px 11px,transparent 12px 19px); }
.icon-city::before { left:12%;right:12%;bottom:0;height:43px;background:linear-gradient(90deg,currentColor 0 12%,transparent 12% 16%,currentColor 16% 34%,transparent 34% 39%,currentColor 39% 48%,transparent 48% 54%,currentColor 54% 75%,transparent 75% 80%,currentColor 80%); }
.icon-guidance::before { left:50%;top:3px;width:1px;height:42px;background:currentColor;transform:rotate(27deg); }.icon-guidance::after { left:calc(50% - 7px);top:0;width:14px;height:14px;border:1px solid currentColor;border-radius:50%; }
.choice-list { display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(27,27,24,.15);border:1px solid rgba(27,27,24,.15); }
.choice-list label span { background:var(--ivory);min-height:76px;padding:20px;display:flex;align-items:center;justify-content:space-between;transition:background .3s ease,color .3s ease; }
.choice-list label span i { font:9px var(--mono);font-style:normal;color:var(--ember); }
.choice-list label:hover span,.choice-list input:checked + span { background:var(--ember);color:var(--ivory); }
.choice-list input:checked + span i { color:var(--ivory); }
.rhythm-control { padding:75px 5% 30px; }
.rhythm-control input { width:100%;appearance:none;height:1px;background:linear-gradient(90deg,var(--green),var(--gold),var(--ember));outline:0; }
.rhythm-control input::-webkit-slider-thumb { appearance:none;width:30px;height:30px;border:1px solid var(--ink);background:var(--ivory);border-radius:50%;cursor:grab;box-shadow:0 0 0 8px rgba(27,27,24,.08); }
.rhythm-control input::-moz-range-thumb { width:30px;height:30px;border:1px solid var(--ink);background:var(--ivory);border-radius:50%;cursor:grab; }
.rhythm-labels { display:grid;grid-template-columns:repeat(4,1fr);margin-top:28px;font:9px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:rgba(27,27,24,.56); }
.rhythm-labels span:nth-child(2),.rhythm-labels span:nth-child(3){text-align:center}.rhythm-labels span:last-child{text-align:right}
.rhythm-control output { display:block;margin-top:72px;text-align:center;font:italic 300 clamp(36px,5vw,70px)/1 var(--serif);color:var(--ember); }
.contact-grid { display:grid;grid-template-columns:1fr 1fr;gap:24px 28px; }
.contact-grid label { display:block; }
.contact-grid label span { display:block;margin-bottom:8px;font:9px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:rgba(27,27,24,.58); }
.contact-grid input,.contact-grid textarea { width:100%;border:0;border-bottom:1px solid rgba(27,27,24,.28);background:transparent;padding:12px 0;color:var(--ink);border-radius:0; }
.contact-grid textarea { border:1px solid rgba(27,27,24,.22);padding:16px;resize:vertical; }
.contact-grid__wide { grid-column:1/-1; }
.journey-form__actions { position:relative;display:flex;align-items:center;justify-content:space-between;border-top:1px solid rgba(27,27,24,.16);padding-top:24px; }
.form-back,.form-next,.form-submit { border:0;background:transparent;cursor:pointer;text-transform:uppercase;letter-spacing:.1em;font-size:10px;padding:13px 0; }
.form-back:disabled { opacity:.25;cursor:not-allowed; }
.form-next,.form-submit { margin-left:auto;display:flex;align-items:center;gap:20px;border-bottom:1px solid var(--ink); }
.form-next span,.form-submit span { transition:transform .3s var(--ease); }.form-next:hover span{transform:translateX(5px)}.form-submit:hover span{transform:translate(4px,-4px)}
.journey-result { position:relative;max-width:900px;margin-left:auto;background:var(--ivory);color:var(--ink);padding:62px;box-shadow:0 40px 110px rgba(0,0,0,.35); }
.journey-result[hidden]{display:none}.journey-result .section-index{color:var(--ember)}.journey-result h3{font:300 clamp(55px,7vw,98px)/.9 var(--serif);letter-spacing:-.045em}.journey-result>p{color:rgba(27,27,24,.64)}
.journey-result__summary { display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:rgba(27,27,24,.14);border:1px solid rgba(27,27,24,.14);margin:42px 0 24px; }
.journey-result__summary div { background:var(--ivory);padding:20px; }.journey-result__summary span{display:block;color:var(--ember);font:9px var(--mono);letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px}.journey-result__summary strong{font-weight:400}
.journey-result__note { font-size:12px!important;border-left:2px solid var(--gold);padding-left:14px; }
.journey-result button { margin-top:24px;border:0;border-bottom:1px solid var(--ink);background:transparent;padding:8px 0;cursor:pointer;font-size:10px;letter-spacing:.1em;text-transform:uppercase; }

/* Closing/footer */
.closing { min-height:100svh;display:grid;place-items:center;position:relative;background:linear-gradient(#17130f,#090b0a);overflow:hidden; }
.closing__sky { position:absolute;inset:0;background:radial-gradient(circle at 70% 64%,rgba(198,154,88,.12),transparent 22%); }
.closing__sky i { position:absolute;width:2px;height:2px;background:var(--ivory);border-radius:50%;box-shadow:0 0 8px rgba(241,235,221,.7);animation:twinkle 3s ease-in-out infinite; }.closing__sky i:nth-child(1){left:16%;top:22%}.closing__sky i:nth-child(2){left:74%;top:18%;animation-delay:1.1s}.closing__sky i:nth-child(3){left:62%;top:58%;animation-delay:2s}
@keyframes twinkle{50%{opacity:.2;transform:scale(.4)}}
.closing__content { text-align:center; }.closing__content .section-index{color:var(--gold)}.closing__content h2{font-size:clamp(60px,8.3vw,134px);margin-bottom:70px}.closing-cta{display:inline-flex;align-items:center;gap:35px;text-transform:uppercase;letter-spacing:.12em;font-size:11px}.closing-cta i{font-style:normal;display:grid;place-items:center;width:54px;height:54px;border:1px solid rgba(241,235,221,.6);border-radius:50%;transition:.4s var(--ease)}.closing-cta:hover i{background:var(--ivory);color:var(--night);transform:rotate(45deg)}
.site-footer { background:#070807;color:rgba(241,235,221,.75);padding:80px 4vw 30px;border-top:1px solid rgba(241,235,221,.1); }
.site-footer__top { display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start;padding-bottom:70px;border-bottom:1px solid rgba(241,235,221,.12); }
.footer-wordmark { font:300 clamp(45px,6vw,86px)/1 var(--serif);letter-spacing:-.04em;color:var(--ivory); }.site-footer__top p{max-width:430px;margin:15px 0 0;justify-self:end}
.site-footer__grid { display:grid;grid-template-columns:repeat(3,1fr);gap:40px;padding:65px 0; }.site-footer__grid>div{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.site-footer__grid span{margin-bottom:12px;color:var(--gold);font:9px var(--mono);letter-spacing:.15em;text-transform:uppercase}.site-footer__grid a{font-size:14px}.site-footer__grid a:hover{color:var(--ivory)}
.site-footer__bottom { border-top:1px solid rgba(241,235,221,.12);padding-top:24px;display:flex;justify-content:space-between;gap:20px;font:9px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:rgba(241,235,221,.4); }

/* Dialog */
.destination-dialog { width:min(1180px,92vw);height:min(780px,88vh);padding:0;border:0;background:var(--ivory);color:var(--ink);box-shadow:0 30px 120px rgba(0,0,0,.6);overflow:hidden; }
.destination-dialog::backdrop { background:rgba(4,5,4,.82);backdrop-filter:blur(10px); }
.destination-dialog[open] { display:grid;grid-template-columns:1.1fr .9fr;animation:dialogIn .65s var(--ease); }
@keyframes dialogIn { from{opacity:0;transform:scale(.96) translateY(20px)} }
.dialog-close { position:absolute;z-index:4;right:18px;top:18px;width:42px;height:42px;border:1px solid currentColor;border-radius:50%;background:rgba(241,235,221,.85);cursor:pointer;font-size:25px;line-height:1; }
.destination-dialog__visual { min-height:100%;background:#42372f;position:relative;overflow:hidden; }
.destination-dialog__visual::before,.destination-dialog__visual::after { content:"";position:absolute;border:1px solid rgba(241,235,221,.35);border-radius:50%; }.destination-dialog__visual::before{width:88%;aspect-ratio:1;left:6%;top:10%}.destination-dialog__visual::after{width:52%;aspect-ratio:1;left:24%;top:28%}
.destination-dialog__visual[data-theme="south-africa"]{background:linear-gradient(155deg,#a66c52,#282824)}.destination-dialog__visual[data-theme="botswana"]{background:linear-gradient(155deg,#78918c,#1d302e)}.destination-dialog__visual[data-theme="kenya"]{background:linear-gradient(155deg,#c09c70,#40382b)}.destination-dialog__visual[data-theme="namibia"]{background:linear-gradient(155deg,#c17a55,#4a2f29)}.destination-dialog__visual[data-theme="zimbabwe"]{background:linear-gradient(155deg,#779198,#26343a)}.destination-dialog__visual[data-theme="zambia"]{background:linear-gradient(155deg,#929172,#33402f)}
.dialog-visual__photo{position:absolute;z-index:2;object-fit:cover;border:3px solid rgba(241,235,221,.9);box-shadow:0 18px 40px rgba(0,0,0,.35);border-radius:2px}
.dialog-visual__photo:nth-child(1){width:62%;aspect-ratio:4/5;left:6%;top:8%;transform:rotate(-3deg)}
.dialog-visual__photo:nth-child(2){width:46%;aspect-ratio:4/5;right:6%;top:14%;transform:rotate(2.5deg)}
.dialog-visual__photo:nth-child(3){width:44%;aspect-ratio:1/1;left:14%;bottom:8%;transform:rotate(2deg)}
.dialog-visual__photo:nth-child(4){width:40%;aspect-ratio:1/1;right:10%;bottom:6%;transform:rotate(-2.5deg)}
.destination-dialog__content { padding:75px 58px 50px;overflow:auto; }.destination-dialog__content h2{font-size:clamp(56px,7vw,100px);margin-bottom:20px}.destination-dialog__line{font:italic 300 28px/1.2 var(--serif);color:var(--ember)}.destination-dialog__content>p:not(.section-index,.destination-dialog__line){color:rgba(27,27,24,.65)}
.dialog-details { display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(27,27,24,.15);border:1px solid rgba(27,27,24,.15);margin:35px 0; }.dialog-details div{padding:18px;background:var(--ivory)}.dialog-details span{display:block;font:9px var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--ember);margin-bottom:6px}.dialog-details strong{font-weight:400}
#dialogJourneyLink { display:inline-flex;gap:20px;border-bottom:1px solid var(--ink);padding-bottom:7px;font-size:10px;text-transform:uppercase;letter-spacing:.1em; }

/* Cursor */
.cursor { position:fixed;z-index:3000;left:0;top:0;width:76px;height:76px;border:1px solid rgba(241,235,221,.65);border-radius:50%;display:grid;place-items:center;pointer-events:none;opacity:0;transform:translate(-50%,-50%) scale(.6);transition:opacity .25s ease,transform .25s var(--ease),background .25s ease,color .25s ease;mix-blend-mode:difference; }
.cursor.is-visible { opacity:1;transform:translate(-50%,-50%) scale(1); }.cursor.is-active{background:var(--ivory);color:var(--night);transform:translate(-50%,-50%) scale(.86)}.cursor span{font:8px var(--mono);letter-spacing:.1em;text-transform:uppercase}

/* responsive */
@media (max-width: 1080px) {
  :root { --header-h: 72px; }
  .desktop-nav { display:none; }.menu-button{display:block}.site-header{grid-template-columns:1fr auto}.header-cta{display:none}
  .chapter-rail{display:none}
  .threshold-facts{grid-template-columns:1fr}.threshold-facts article{min-height:auto}.threshold-facts h3{margin-top:30px}
  .atlas-map-grid{grid-template-columns:1fr}.africa-map-wrap{justify-self:center;max-width:560px}.atlas-map-copy{max-width:700px}
  .experiences-heading{grid-template-columns:1fr}.experiences-heading .section-index{margin-bottom:0}.experiences-heading>p:last-child{max-width:560px}
  .approach-grid{grid-template-columns:1fr}.approach-copy{position:relative;top:auto}.field-notes{padding-top:4vh}
  .stewardship-sticky{grid-template-columns:1fr;padding-top:12vh}.stewardship-copy{max-width:850px}.ecosystem{max-width:48vh}
  .choice-grid--feelings,.choice-grid--landscape{grid-template-columns:repeat(3,1fr)}
}

@media (max-width: 720px) {
  :root { --shell: 88vw; }
  .site-header{padding:0 6vw}.wordmark{font-size:18px}.wordmark__glyph{width:30px;height:30px}
  .loader__inner{width:72vw}
  h2{font-size:clamp(49px,15vw,76px)}
  .film-scroll{height:330vh}.film-beat{padding:calc(var(--header-h) + 8vh) 7vw 10vh}.film-beat--hero{justify-content:flex-end;padding-bottom:18vh}.film-beat--hero h1{font-size:clamp(61px,18vw,92px);line-height:.83}.hero-reveal{margin:22px 0 0}.film-beat--middle{align-items:flex-start;text-align:left;justify-content:flex-end;padding-bottom:15vh}.film-beat--middle h2,.film-beat--final h2{font-size:clamp(55px,16vw,84px)}.film-beat--final{padding-bottom:14vh}.film-scroll-cue{left:7vw}
  .atlas-threshold{padding-top:34vh;min-height:auto;padding-bottom:15vh}.atlas-threshold__image{height:37vh}.route-river{top:27vh;height:42vh}.threshold-copy>h2{margin-bottom:38px}.threshold-copy>.lede{font-size:19px}.threshold-facts{margin-top:70px}
  .atlas-map-section{padding:5vh 0 16vh}.map-coordinate{display:none}
  .destination-run{height:auto}.destination-sticky{position:relative;height:auto;overflow:visible}.destination-heading{position:sticky;top:var(--header-h);z-index:30;padding:14px 0;background:rgba(9,11,10,.72);backdrop-filter:blur(15px)}.destination-track{display:block;width:100%;height:auto;transform:none!important}.destination-card{width:100%;height:100svh;min-height:680px;flex:none}.destination-card__content{left:7vw;bottom:8vh;width:86vw}.destination-card h3{font-size:clamp(66px,20vw,104px)}.destination-card ul{max-width:90%}.destination-art{transform:none!important}
  .experiences{padding:15vh 0}.experience-panels{display:grid;height:auto;gap:8px}.experience-panel,.experience-panel.is-active{height:56vh;min-height:430px;flex:none}.experience-panel h3,.experience-panel.is-active h3{writing-mode:horizontal-tb;transform:none;white-space:normal;font-size:40px}.experience-panel p{opacity:.76;transform:none}.experience-panel__content{inset:auto 24px 24px}
  .approach{padding:15vh 0}.field-notes{grid-template-columns:1fr}.field-note:nth-child(2){margin-top:0}.field-note:nth-child(3){grid-column:auto;margin:0}.field-note{min-height:390px}.field-note blockquote{font-size:42px}
  .stewardship{height:260vh}.stewardship-sticky{padding:13vh 6vw 5vh;align-content:center;gap:3vh}.stewardship-copy h2{font-size:clamp(48px,14vw,72px)}.ecosystem{max-width:42vh}
  .expedition-desk{padding:15vh 0}.desk-intro{margin-bottom:60px}.journey-form{padding:22px 22px 30px}.journey-form__top{grid-template-columns:auto auto}.form-progress{grid-column:1/-1;grid-row:2}.journey-steps{min-height:680px}.journey-step{padding-top:42px}.journey-step legend{font-size:clamp(46px,13vw,68px)}.choice-grid--feelings,.choice-grid--landscape{grid-template-columns:repeat(2,1fr)}.choice-grid label span{min-height:86px}.choice-grid--landscape label span{min-height:130px}.choice-list{grid-template-columns:1fr}.rhythm-control{padding:62px 0 20px}.rhythm-labels{grid-template-columns:1fr 1fr;gap:12px}.rhythm-labels span:nth-child(2),.rhythm-labels span:nth-child(3){text-align:right}.rhythm-labels span:nth-child(3){text-align:left}.contact-grid{grid-template-columns:1fr}.journey-result{padding:38px 28px}.journey-result__summary{grid-template-columns:1fr}
  .closing__content h2{font-size:clamp(52px,15vw,80px)}.closing-cta{gap:20px}
  .site-footer{padding-left:6vw;padding-right:6vw}.site-footer__top{grid-template-columns:1fr}.site-footer__top p{justify-self:start}.site-footer__grid{grid-template-columns:1fr 1fr}.site-footer__bottom{flex-direction:column}
  .destination-dialog[open]{grid-template-columns:1fr;height:92vh}.destination-dialog__visual{min-height:32vh}.destination-dialog__content{padding:42px 28px}.destination-dialog__content h2{font-size:60px}.dialog-details{grid-template-columns:1fr}
  .cursor{display:none}
}

@media (prefers-reduced-motion: reduce) {
  html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .film-scroll{height:100svh}.film-stage{position:relative}.film-fallback{opacity:1}.film-fallback{display:block}#filmCanvas{display:none}.film-beat:not(.film-beat--hero){display:none}.film-beat--hero{opacity:1}.film-stage__grain{display:none}
  .destination-run{height:auto}.destination-sticky{position:relative;height:auto}.destination-track{display:block;width:100%;transform:none!important}.destination-card{width:100%;height:85svh}.reveal-on-scroll{opacity:1;transform:none}.stewardship{height:auto;padding:14vh 0}.stewardship-sticky{position:relative;height:auto}.ecosystem__layer{transform:translate(-50%,-50%)!important}
}
