:root {
  --orange: #f58220;
  --orange-dark: #c4671b;
  --navy: #020b2a;
  --navy-soft: #07163c;
  --ink: #322a22;
  --paper: #fcfcf7;
  --warm: #eff0ea;
  --yellow: #f2de83;
  --sage: #c0c192;
  --teal: #53acbb;
  --earth-sky: #74c2ce;
  --earth-grass: #a9cf8f;
  --earth-soil: #8b4b22;
  --earth-rock: #5b2d19;
  --earth-mantle: #a94118;
  --earth-core: #ffb229;
  --shadow: 9px 12px 0 rgba(33, 16, 4, .15), 0 18px 32px rgba(33, 16, 4, .13);
  --edge: polygon(0 1.2%, 5% 0, 11% 1.3%, 18% .2%, 26% 1.4%, 34% 0, 43% 1.2%, 51% .2%, 60% 1.3%, 69% 0, 78% 1.2%, 87% .2%, 94% 1.1%, 100% .2%, 100% 98.7%, 94% 100%, 87% 98.8%, 78% 100%, 69% 98.7%, 60% 100%, 51% 98.8%, 43% 100%, 34% 98.7%, 26% 100%, 18% 98.8%, 9% 100%, 0 98.7%);
}

* { box-sizing: border-box; }

html {
  scroll-behavior: smooth;
  background: var(--warm);
}

body {
  margin: 0;
  color: var(--ink);
  background-color: var(--warm);
  background-image:
    radial-gradient(circle at 18% 22%, rgba(33, 16, 4, .035) 0 1px, transparent 1.5px),
    radial-gradient(circle at 78% 66%, rgba(33, 16, 4, .025) 0 1px, transparent 1.4px);
  background-size: 19px 23px, 27px 31px;
  font-family: "Noto Sans", sans-serif;
  line-height: 1.6;
}

body.legal-panel-open { overflow: hidden; }

img { max-width: 100%; height: auto; }
a { color: inherit; }
button, input, textarea { font: inherit; }

h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  color: var(--navy);
  font-family: "Urbanist", "Noto Sans", sans-serif;
  line-height: 1.08;
  letter-spacing: -.025em;
}

p { margin-top: 0; }

:focus-visible {
  outline: 3px solid var(--teal);
  outline-offset: 4px;
}

.skip-link {
  position: fixed;
  top: 10px;
  left: 10px;
  z-index: 3000;
  padding: 10px 14px;
  color: #fff;
  background: var(--navy);
  transform: translateY(-160%);
}

.skip-link:focus { transform: translateY(0); }

.shell {
  width: min(1180px, calc(100% - 48px));
  margin-inline: auto;
}

[id] { scroll-margin-top: 92px; }

.site-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  background: var(--navy);
  border-bottom: 4px solid var(--orange);
}

.site-nav {
  min-height: 78px;
  display: flex;
  align-items: center;
  gap: 28px;
}

.brand-link {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
}

.brand-link img { width: 158px; }

.nav-toggle {
  display: none;
  margin-left: auto;
  padding: 10px 12px;
  border: 2px solid rgba(255,255,255,.55);
  color: #fff;
  background: transparent;
  cursor: pointer;
}

.nav-links {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 22px;
}

.nav-links a {
  color: #fff;
  font-size: .82rem;
  font-weight: 800;
  letter-spacing: .05em;
  text-decoration: none;
  text-transform: uppercase;
}

.nav-links a:not(.button-link):hover { color: var(--yellow); }

.button-link {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 12px 20px;
  border: 2px solid var(--orange);
  color: var(--navy);
  background: var(--orange);
  clip-path: polygon(0 8%, 8% 0, 20% 5%, 34% 0, 49% 6%, 65% 0, 80% 5%, 100% 0, 98% 92%, 86% 100%, 69% 95%, 52% 100%, 35% 94%, 18% 100%, 0 94%);
  font-weight: 900;
  line-height: 1.15;
  text-decoration: none;
  transition: background-color .18s ease;
}

.button-link:hover { background: #ff9a43; }
.button-link-secondary { color: #fff; background: transparent; border-color: rgba(255,255,255,.78); clip-path: none; }
.button-link-secondary:hover { color: var(--navy); background: var(--paper); }

.nav-links .button-link,
.form-actions .button-link {
  min-height: 44px;
  padding: 10px 18px;
  border: 2px solid #fff;
  border-radius: 5px;
  background: var(--orange);
  box-shadow: 0 3px 0 #a6480f;
  clip-path: none;
}

.nav-links > .button-link { margin-left: 22px; }

.nav-links .button-link:hover,
.form-actions .button-link:hover {
  background: #ff9a43;
  box-shadow: 0 4px 0 #a6480f;
}

.nav-links .button-link:focus-visible,
.form-actions .button-link:focus-visible {
  outline: 3px solid var(--yellow);
  outline-offset: 3px;
}

.hero {
  position: relative;
  overflow: hidden;
  padding: 66px 0 82px;
  color: #fff;
  background-color: var(--navy);
  background-image:
    radial-gradient(circle at 17% 30%, rgba(255,255,255,.16) 0 1px, transparent 1.5px),
    radial-gradient(circle at 76% 18%, rgba(245,130,32,.18) 0 1px, transparent 1.6px),
    linear-gradient(155deg, #0d2254 0%, var(--navy) 64%, #020b2a 100%);
  background-size: 47px 53px, 71px 79px, 100% 100%;
}

.hero > .shell { position: relative; z-index: 2; }

.journey-stage {
  position: relative;
  isolation: isolate;
  overflow: hidden;
}

.journey-stage > .shell { position: relative; z-index: 2; }

.journey-stage-space::before {
  content: "";
  position: absolute;
  top: 5%;
  right: -8vw;
  z-index: 0;
  width: clamp(240px, 34vw, 580px);
  aspect-ratio: 1;
  border: 1px solid rgba(116,194,206,.18);
  border-radius: 50%;
  box-shadow: 0 0 0 42px rgba(116,194,206,.035), 0 0 0 100px rgba(245,130,32,.025);
  animation: journey-orbit-breathe 8s ease-in-out infinite alternate;
}

.journey-space-station {
  position: relative;
  z-index: 2;
  width: min(100%, 520px);
  height: auto;
  filter: drop-shadow(6px 8px 5px rgba(2,11,42,.32)) drop-shadow(0 0 14px rgba(116,194,206,.24));
  pointer-events: none;
}

.hero::after {
  content: "";
  position: absolute;
  inset: auto 0 -1px;
  height: 44px;
  background: #0d2254;
  clip-path: polygon(0 40%, 7% 55%, 15% 36%, 24% 53%, 34% 31%, 45% 50%, 55% 29%, 66% 48%, 77% 32%, 88% 51%, 100% 34%, 100% 100%, 0 100%);
}

.journey-space-to-mountains {
  position: absolute;
  inset: 0;
  z-index: 0;
  height: auto;
  overflow: hidden;
  background:
    radial-gradient(circle at 12% 18%, rgba(255,255,255,.2) 0 1px, transparent 1.6px) 0 0 / 53px 59px,
    radial-gradient(circle at 72% 34%, rgba(242,222,131,.22) 0 1.5px, transparent 2px) 0 0 / 97px 89px,
    linear-gradient(to bottom, #0d2254 0%, #173b70 26%, var(--earth-sky) 68%, #dce9bd 100%);
}

.journey-space-to-mountains::before {
  content: "";
  position: absolute;
  top: -42%;
  left: -18%;
  width: 78%;
  height: 88%;
  border: 2px solid rgba(116,194,206,.18);
  border-radius: 50%;
  box-shadow: 0 0 0 44px rgba(116,194,206,.025), 0 0 0 92px rgba(255,255,255,.018);
  transform: rotate(-12deg);
}

.journey-airplane {
  position: absolute;
  top: 24%;
  left: 0;
  z-index: 3;
  width: clamp(72px, 8vw, 116px);
  filter: drop-shadow(5px 6px 0 rgba(252,252,247,.5)) drop-shadow(9px 12px 6px rgba(2,11,42,.24));
  transform: translate3d(calc(100vw + 40px), 0, 0) rotate(-7deg);
  animation: journey-plane-crossing 64s linear infinite;
  pointer-events: none;
  will-change: transform;
}

.journey-cloud {
  position: absolute;
  left: 0;
  z-index: 2;
  width: clamp(110px, 14vw, 190px);
  filter: drop-shadow(8px 8px 0 rgba(2,11,42,.12));
  pointer-events: none;
  will-change: transform;
}

.journey-cloud-one {
  top: 40%;
  animation: journey-cloud-eastbound 136s linear infinite;
  animation-delay: -20s;
}

.journey-cloud-two {
  top: 47%;
  width: clamp(90px, 11vw, 150px);
  opacity: .88;
  animation: journey-cloud-westbound 168s linear infinite;
  animation-delay: -76s;
}

.journey-cloud-three {
  top: 66%;
  width: clamp(78px, 9vw, 126px);
  opacity: .76;
  animation: journey-cloud-eastbound 192s linear infinite;
  animation-delay: -124s;
}

.journey-mountain-range {
  position: absolute;
  right: -6%;
  bottom: -2px;
  left: -6%;
  display: flex;
  align-items: flex-end;
  justify-content: center;
}

.journey-mountain-range img {
  display: block;
  min-width: 34%;
  max-width: none;
  height: auto;
  filter: drop-shadow(0 -3px 0 rgba(252,252,247,.32)) drop-shadow(9px 10px 0 rgba(2,11,42,.1));
}
.journey-mountain-range-back { bottom: 9%; opacity: .82; }
.journey-mountain-range-back img {
  width: 100%;
  min-width: 100%;
  filter: none;
}

.journey-mountain-range-back::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    url("/images/scene/pine-cluster.svg") 7% 72% / 74px auto no-repeat,
    url("/images/scene/pine-tree.svg") 20% 60% / 34px auto no-repeat,
    url("/images/scene/pine-cluster.svg") 34% 78% / 82px auto no-repeat,
    url("/images/scene/pine-tree.svg") 49% 56% / 38px auto no-repeat,
    url("/images/scene/pine-cluster.svg") 63% 73% / 76px auto no-repeat,
    url("/images/scene/pine-tree.svg") 78% 59% / 36px auto no-repeat,
    url("/images/scene/pine-cluster.svg") 91% 76% / 84px auto no-repeat;
  opacity: .84;
  pointer-events: none;
}

.journey-snowcap {
  position: absolute;
  z-index: 4;
  width: clamp(48px, 7vw, 100px);
  height: clamp(24px, 3.4vw, 50px);
  background: #eff3f4;
  clip-path: polygon(50% 0, 100% 100%, 72% 70%, 61% 92%, 49% 62%, 34% 88%, 0 100%);
  filter: drop-shadow(4px 5px 0 rgba(60,84,111,.24));
}

.journey-snowcap-one { left: 39.7%; bottom: clamp(112px, 12vw, 172px); transform: rotate(-2deg); }
.journey-snowcap-two { left: 61.5%; bottom: clamp(102px, 10vw, 148px); width: clamp(42px, 5.5vw, 78px); }
.journey-snowcap-three { right: 7%; bottom: clamp(94px, 9vw, 134px); width: clamp(38px, 5vw, 68px); transform: rotate(3deg); }

.content-section.journey-stage-mountains {
  padding-top: 104px;
  padding-bottom: 190px;
  background:
    linear-gradient(rgba(252,252,247,.78), rgba(252,252,247,.9)),
    linear-gradient(to bottom, #dce9bd 0%, var(--earth-grass) 68%, #7faa72 100%);
}

.journey-stage-mountains .section-heading h2 { color: #fff; }
.journey-stage-mountains .section-heading .eyebrow { color: var(--yellow); }
.journey-stage-mountains .section-heading .section-lead { color: rgba(255,255,255,.88); }

.journey-stage-mountains::before,
.journey-stage-plains::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background-image:
    radial-gradient(circle at 18% 22%, rgba(33,16,4,.055) 0 1px, transparent 1.5px),
    radial-gradient(circle at 78% 66%, rgba(33,16,4,.04) 0 1px, transparent 1.4px);
  background-size: 19px 23px, 27px 31px;
}

.journey-stage-mountains::after {
  content: "";
  position: absolute;
  right: -4%;
  bottom: -5px;
  left: -4%;
  z-index: 1;
  height: 165px;
  background:
    url("/images/scene/pine-cluster.svg") 91% 92% / 180px auto no-repeat,
    url("/images/scene/rolling-hills.svg") center bottom / 100% 100% no-repeat;
}

.content-section.journey-stage-forest {
  padding-bottom: 110px;
  background: linear-gradient(to bottom, #476d43 0%, #5f8757 20%, #a9cf8f 62%, #dce9bd 100%);
}

.journey-stage-forest .section-heading h2 { color: #fff; }
.journey-stage-forest .section-heading .eyebrow { color: var(--yellow); }
.journey-stage-forest .section-heading .section-lead { color: rgba(255,255,255,.9); }

.journey-grazing-deer {
  position: absolute;
  top: clamp(152px, 14vw, 205px);
  right: 7%;
  z-index: 1;
  width: clamp(120px, 13vw, 175px);
  height: auto;
  filter: drop-shadow(0 8px 5px rgba(7, 22, 52, .18));
  pointer-events: none;
}

.journey-stage-forest::before {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  left: 0;
  z-index: 0;
  height: 150px;
  opacity: .78;
  background:
    url("/images/scene/pine-tree.svg") 4% 8px / 58px 98px no-repeat,
    url("/images/scene/pine-cluster.svg") 16% 2px / 144px 119px no-repeat,
    url("/images/scene/pine-tree.svg") 31% 10px / 64px 108px no-repeat,
    url("/images/scene/pine-cluster.svg") 46% 0 / 144px 119px no-repeat,
    url("/images/scene/pine-tree.svg") 62% 8px / 60px 102px no-repeat,
    url("/images/scene/pine-cluster.svg") 77% 2px / 144px 119px no-repeat,
    url("/images/scene/pine-tree.svg") 94% 6px / 66px 112px no-repeat;
  pointer-events: none;
}

.journey-stage-forest::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  height: 138px;
  pointer-events: none;
  background:
    url("/images/scene/maple-tree.svg") 7% bottom / 68px auto no-repeat,
    url("/images/scene/maple-tree.svg") 28% 24px / 54px auto no-repeat,
    url("/images/scene/maple-tree.svg") 69% 18px / 62px auto no-repeat,
    url("/images/scene/maple-tree.svg") 91% bottom / 72px auto no-repeat;
}

.content-section.journey-stage-plains {
  background:
    radial-gradient(ellipse at 24% 105%, transparent 0 44%, #d7c476 44% 49%, transparent 49%),
    linear-gradient(171deg, transparent 0 22%, rgba(239,240,234,.22) 22% 28%, transparent 28%),
    linear-gradient(to bottom, #dce9bd 0 16%, #b4d795 16% 55%, #8fbd78 55% 100%);
}

.journey-farm-vehicle {
  position: absolute;
  top: clamp(118px, 12vw, 170px);
  right: 8%;
  z-index: 1;
  width: clamp(180px, 19vw, 290px);
  pointer-events: none;
  animation: journey-tractor-field 18s ease-in-out infinite;
  transform-origin: center;
  transform-style: preserve-3d;
  will-change: transform;
}

.journey-farm-vehicle img {
  display: block;
  width: 100%;
  height: auto;
  filter: drop-shadow(5px 7px 0 rgba(79,70,44,.18));
}

.journey-stage-plains::before {
  opacity: .72;
  background:
    url("/images/scene/maple-tree.svg") 5% 84% / 74px auto no-repeat,
    url("/images/scene/maple-tree.svg") 22% 91% / 50px auto no-repeat,
    url("/images/scene/maple-tree.svg") 76% 88% / 56px auto no-repeat,
    url("/images/scene/maple-tree.svg") 94% 82% / 76px auto no-repeat,
    radial-gradient(circle at 18% 22%, rgba(50,42,34,.12) 0 1px, transparent 1px) 0 0 / 19px 23px repeat,
    radial-gradient(circle at 78% 66%, rgba(50,42,34,.09) 0 1px, transparent 1px) 0 0 / 27px 31px repeat;
}

.journey-stage-plains::after {
  content: "";
  position: absolute;
  right: -5%;
  bottom: -2px;
  left: -5%;
  height: 72px;
  z-index: 1;
  background: #b9944e;
  clip-path: polygon(0 61%, 10% 48%, 20% 58%, 31% 42%, 42% 55%, 54% 40%, 66% 57%, 78% 44%, 89% 59%, 100% 46%, 100% 100%, 0 100%);
}

.content-section.journey-stage-plains-deep {
  background:
    linear-gradient(rgba(245,130,32,.92), rgba(196,103,27,.94)),
    radial-gradient(circle at 20% 30%, rgba(255,255,255,.15) 0 1px, transparent 1.5px);
  background-size: auto, 23px 27px;
}

.content-section.journey-stage-badlands {
  color: #fff;
  background:
    repeating-linear-gradient(174deg, transparent 0 72px, rgba(242,222,131,.08) 74px 80px),
    linear-gradient(to bottom, #b85b25 0%, #8b351c 56%, #632215 100%);
}

.journey-stage-badlands::before,
.journey-stage-badlands::after {
  content: "";
  position: absolute;
  bottom: -2px;
  z-index: 0;
  pointer-events: none;
}

.journey-stage-badlands::before {
  right: -3%;
  width: 48%;
  height: 72%;
  opacity: .64;
  background: repeating-linear-gradient(to bottom, #d6a05a 0 12%, #b85b25 12% 22%, #f0c675 22% 30%, #8b351c 30% 42%);
  clip-path: polygon(10% 100%, 10% 72%, 21% 65%, 24% 36%, 33% 31%, 37% 8%, 51% 8%, 55% 37%, 65% 42%, 69% 17%, 83% 17%, 87% 59%, 100% 67%, 100% 100%);
}

.journey-stage-badlands::after {
  left: -3%;
  width: 60%;
  height: 38%;
  opacity: .5;
  background: repeating-linear-gradient(to bottom, #ca7634 0 18%, #8b351c 18% 34%, #e3af62 34% 46%);
  clip-path: polygon(0 44%, 13% 36%, 19% 20%, 31% 16%, 38% 34%, 49% 28%, 57% 8%, 69% 12%, 75% 38%, 87% 30%, 100% 46%, 100% 100%, 0 100%);
}

.journey-dinosaur-chase {
  position: absolute;
  top: clamp(88px, 8vw, 112px);
  right: 7%;
  z-index: 1;
  width: clamp(270px, 31vw, 470px);
  pointer-events: none;
  transform-origin: center;
  transform-style: preserve-3d;
  will-change: transform;
  animation: journey-dinosaur-route 34s ease-in-out infinite;
}

.journey-dinosaur-chase img {
  display: block;
  width: 100%;
  height: auto;
  filter: drop-shadow(4px 6px 4px rgba(49,23,19,.24));
  animation: journey-dinosaur-run .96s ease-in-out infinite alternate;
}

.journey-stage-badlands h2 { color: #fff; }
.journey-stage-badlands .eyebrow { color: var(--yellow); }
.journey-stage-badlands .paper-card { color: var(--ink); }
.journey-stage-badlands .paper-card h3 { color: var(--navy); }

.content-section.journey-stage-semi-arid {
  color: var(--ink);
  background:
    radial-gradient(ellipse at 86% 14%, #d99a4a 0 4%, transparent 4%),
    linear-gradient(to bottom, #ead99e 0 24%, #d9b86c 24% 68%, #b87537 100%);
}

.journey-stage-semi-arid::before {
  content: "";
  position: absolute;
  right: -5%;
  bottom: -2px;
  left: -5%;
  z-index: 0;
  height: 42%;
  background: #c78d48;
  clip-path: polygon(0 58%, 12% 42%, 24% 54%, 36% 34%, 48% 53%, 61% 37%, 73% 56%, 86% 40%, 100% 55%, 100% 100%, 0 100%);
  pointer-events: none;
}

.journey-stage-semi-arid::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 28px;
  left: 0;
  z-index: 1;
  height: 125px;
  opacity: .6;
  background:
    url("/images/scene/cactus.svg") 9% 100% / 48px 82px no-repeat,
    url("/images/scene/cactus.svg") 39% 100% / 44px 75px no-repeat,
    url("/images/scene/cactus-cluster.svg") 72% 100% / 112px 92px no-repeat,
    url("/images/scene/cactus.svg") 94% 100% / 42px 72px no-repeat;
  pointer-events: none;
}

.journey-stage-semi-arid h2 { color: var(--navy); }
.journey-stage-semi-arid .eyebrow { color: var(--orange-dark); }
.journey-stage-semi-arid .section-lead { color: var(--ink); }

.journey-dig-transition {
  position: absolute;
  inset: 0;
  z-index: 0;
  height: auto;
  overflow: hidden;
  pointer-events: none;
  background:
    repeating-linear-gradient(to bottom, transparent 0 52px, rgba(242,222,131,.1) 53px 56px),
    radial-gradient(ellipse at 18% 55%, rgba(242,222,131,.1) 0 5%, transparent 5.5%),
    radial-gradient(ellipse at 84% 76%, rgba(2,11,42,.13) 0 6%, transparent 6.5%),
    linear-gradient(to bottom, var(--earth-soil) 0 18%, #75401f 18% 52%, var(--earth-rock) 52% 100%);
}

.journey-dig-transition::before {
  content: "";
  position: absolute;
  inset: 45px 0 auto;
  height: 126px;
  z-index: 1;
  opacity: .42;
  background:
    linear-gradient(72deg, transparent 0 47%, #d7b66f 48% 50%, transparent 51%) 7% 0 / 150px 110px no-repeat,
    linear-gradient(108deg, transparent 0 48%, #d7b66f 49% 51%, transparent 52%) 18% 0 / 120px 96px no-repeat,
    linear-gradient(68deg, transparent 0 48%, #d7b66f 49% 51%, transparent 52%) 82% 0 / 135px 105px no-repeat,
    linear-gradient(112deg, transparent 0 48%, #d7b66f 49% 51%, transparent 52%) 94% 0 / 145px 118px no-repeat;
}

.journey-dig-surface {
  position: absolute;
  inset: 0 0 auto;
  height: 74px;
  border-top: 14px solid var(--orange-dark);
  background: #a85d2e;
  clip-path: polygon(0 0, 100% 0, 100% 58%, 92% 76%, 83% 55%, 73% 77%, 63% 54%, 52% 75%, 42% 56%, 31% 79%, 20% 55%, 10% 74%, 0 57%);
}

.journey-miner {
  position: absolute;
  right: 20%;
  bottom: 17px;
  width: 58px;
  height: 52px;
}

.journey-miner i {
  position: absolute;
  inset: 0 auto auto 0;
  z-index: 2;
  color: var(--navy);
  font-size: 3rem;
  line-height: 1;
  transform-origin: 58% 82%;
  animation: journey-miner-dig 1.25s cubic-bezier(.52,.02,.48,.98) infinite;
}

.journey-miner-dust {
  position: absolute;
  right: -5px;
  bottom: 2px;
  z-index: 1;
  width: 35px;
  height: 18px;
  opacity: 0;
  background:
    radial-gradient(circle at 12% 64%, #d7b66f 0 2px, transparent 2.5px),
    radial-gradient(circle at 43% 28%, #e3c681 0 3px, transparent 3.5px),
    radial-gradient(circle at 72% 72%, #c89b58 0 2px, transparent 2.5px),
    radial-gradient(circle at 92% 38%, #ead394 0 2px, transparent 2.5px);
  transform-origin: 50% 100%;
  animation: journey-miner-dust 1.25s ease-out infinite;
}

@keyframes journey-miner-dig {
  0%, 14%, 100% { transform: translateY(0) rotate(-4deg); }
  42% { transform: translate(-2px, -4px) rotate(-18deg); }
  67% { transform: translate(3px, 2px) rotate(9deg); }
  77% { transform: translate(2px, 1px) rotate(5deg); }
}

@keyframes journey-miner-dust {
  0%, 58%, 100% { opacity: 0; transform: translate(0, 2px) scale(.35); }
  68% { opacity: .9; transform: translate(7px, -4px) scale(1); }
  82% { opacity: 0; transform: translate(15px, -10px) scale(1.35); }
}

.journey-mineral-field {
  position: absolute;
  z-index: 1;
  width: 190px;
  height: 270px;
  pointer-events: none;
}

.journey-mineral-field-right {
  top: 5%;
  right: 10%;
  transform: rotate(-4deg);
}

.journey-mineral-vein,
.journey-mineral-crystal,
.journey-mineral-nugget { position: absolute; display: block; }

.journey-mineral-vein {
  height: 10px;
  border: 2px solid rgba(255,202,77,.34);
  border-right: 0;
  border-left: 0;
  background: linear-gradient(90deg, transparent, #c97c32 18%, #f1c75b 52%, #aa5c2a 80%, transparent);
  clip-path: polygon(0 35%, 16% 5%, 30% 42%, 48% 12%, 62% 55%, 78% 20%, 100% 48%, 100% 86%, 82% 64%, 64% 100%, 48% 55%, 31% 92%, 14% 54%, 0 82%);
  filter: drop-shadow(0 0 5px rgba(245,174,45,.36));
}

.journey-mineral-vein-one { top: 42px; right: 2px; width: 172px; transform: rotate(-24deg); }
.journey-mineral-vein-two { top: 165px; right: -14px; width: 150px; transform: rotate(31deg); }

.journey-mineral-crystal {
  width: 19px;
  height: 34px;
  opacity: .84;
  background: linear-gradient(105deg, #f7e4b0 0 24%, #d7b66f 25% 55%, #fff1c9 56% 74%, #9a7044 75%);
  clip-path: polygon(50% 0, 100% 32%, 84% 100%, 17% 100%, 0 32%);
  filter: drop-shadow(0 0 4px rgba(247,228,176,.28));
}

.journey-mineral-crystal-one { top: 70px; right: 92px; transform: rotate(18deg); }
.journey-mineral-crystal-two { top: 96px; right: 43px; width: 14px; height: 26px; transform: rotate(-14deg); }
.journey-mineral-crystal-three { top: 191px; right: 92px; width: 16px; height: 29px; transform: rotate(31deg); }
.journey-mineral-crystal-four { top: 211px; right: 38px; width: 12px; height: 22px; transform: rotate(-25deg); }

.journey-mineral-nugget {
  width: 15px;
  height: 12px;
  border: 2px solid rgba(92,49,24,.38);
  background: #d99b34;
  clip-path: polygon(18% 0, 81% 8%, 100% 48%, 72% 100%, 12% 84%, 0 35%);
  box-shadow: 0 0 8px rgba(242,199,91,.28);
}

.journey-mineral-nugget-one { top: 132px; right: 118px; }
.journey-mineral-nugget-two { top: 150px; right: 69px; width: 11px; height: 9px; }
.journey-mineral-nugget-three { top: 235px; right: 114px; width: 13px; height: 10px; }

.journey-oil-reserve {
  position: absolute;
  z-index: 1;
  opacity: .72;
  border: 3px solid rgba(196,103,27,.45);
  background:
    radial-gradient(ellipse at 35% 28%, rgba(245,130,32,.15) 0 8%, transparent 9%),
    #170d0a;
  box-shadow: inset 0 8px 20px rgba(0,0,0,.45), 0 0 0 8px rgba(91,45,25,.22);
  pointer-events: none;
}

.journey-oil-reserve::before,
.journey-oil-reserve::after {
  content: "";
  position: absolute;
  border-radius: 50%;
  background: #170d0a;
}

.journey-oil-reserve::before { width: 24px; height: 16px; top: -13px; left: 28%; }
.journey-oil-reserve::after { width: 18px; height: 12px; right: 19%; bottom: -9px; }

.journey-oil-reserve-one {
  top: 43%;
  left: 5%;
  width: 250px;
  height: 78px;
  border-radius: 43% 57% 49% 51% / 58% 45% 55% 42%;
  transform: rotate(-5deg);
}

.journey-oil-reserve-two {
  right: 7%;
  bottom: 16%;
  width: 190px;
  height: 58px;
  border-radius: 58% 42% 61% 39% / 46% 62% 38% 54%;
  transform: rotate(7deg);
}

.journey-fossil {
  position: absolute;
  right: 12%;
  bottom: 3%;
  z-index: 1;
  width: 330px;
  height: 165px;
  opacity: .5;
  transform: rotate(-7deg);
  pointer-events: none;
}

.journey-fossil-two {
  top: 38%;
  right: 18%;
  bottom: auto;
  opacity: .42;
  transform: rotate(8deg) scaleX(-1) scale(.62);
  transform-origin: center;
}

.journey-fossil span { position: absolute; display: block; }

.journey-fossil-skull {
  top: 47px;
  right: 1px;
  width: 62px;
  height: 42px;
  background: #d7b66f;
  clip-path: polygon(5% 18%, 32% 0, 76% 8%, 100% 37%, 83% 68%, 58% 63%, 52% 100%, 37% 78%, 12% 74%, 0 46%);
  box-shadow: inset -10px -7px 0 rgba(117,64,31,.2);
}

.journey-fossil-skull::before {
  content: "";
  position: absolute;
  top: 11px;
  right: 13px;
  width: 10px;
  aspect-ratio: 1;
  border-radius: 50%;
  background: #75401f;
}

.journey-fossil-spine {
  top: 76px;
  left: 20px;
  width: 260px;
  height: 17px;
  border-radius: 50%;
  background: repeating-radial-gradient(circle at 8px 50%, #d7b66f 0 5px, transparent 5.5px 19px);
  transform: rotate(2deg);
}

.journey-fossil-rib {
  width: 72px;
  height: 50px;
  border: 5px solid #d7b66f;
  border-top: 0;
  border-radius: 0 0 50% 50%;
}

.journey-fossil-rib-one { top: 79px; left: 75px; transform: rotate(8deg); }
.journey-fossil-rib-two { top: 82px; left: 117px; width: 66px; transform: rotate(4deg); }
.journey-fossil-rib-three { top: 83px; left: 157px; width: 58px; transform: rotate(-1deg); }

.journey-fossil-leg {
  width: 82px;
  height: 8px;
  border-radius: 8px;
  background: #d7b66f;
  transform-origin: left center;
}

.journey-fossil-leg::after {
  content: "";
  position: absolute;
  right: -34px;
  bottom: -21px;
  width: 48px;
  height: 8px;
  border-radius: 8px;
  background: #d7b66f;
  transform: rotate(42deg);
  transform-origin: left center;
}

.journey-fossil-leg-one { top: 111px; left: 99px; transform: rotate(111deg); }
.journey-fossil-leg-two { top: 112px; left: 174px; transform: rotate(72deg); }

.journey-rocks {
  position: absolute;
  inset: auto 0 0;
  z-index: 2;
  height: 100%;
  pointer-events: none;
}

.journey-rocks span {
  position: absolute;
  width: 34px;
  height: 25px;
  background: #a96a3d;
  clip-path: polygon(14% 18%, 62% 0, 100% 34%, 84% 88%, 31% 100%, 0 68%);
  box-shadow: 5px 6px 0 rgba(33,16,4,.2);
}

.journey-rocks span:nth-child(1) { left: 8%; bottom: 22%; transform: rotate(-11deg) scale(.78); }
.journey-rocks span:nth-child(2) { left: 25%; bottom: 8%; transform: rotate(19deg) scale(1.2); }
.journey-rocks span:nth-child(3) { right: 29%; bottom: 34%; transform: rotate(8deg) scale(.62); }
.journey-rocks span:nth-child(4) { right: 12%; bottom: 12%; transform: rotate(-18deg) scale(1.4); }
.journey-rocks span:nth-child(5) { right: 5%; bottom: 54%; transform: rotate(21deg) scale(.72); }

.content-section.journey-stage-dig {
  color: #fff;
  background:
    repeating-linear-gradient(168deg, transparent 0 76px, rgba(242,222,131,.07) 77px 81px),
    linear-gradient(to bottom, var(--earth-rock), #3c1c12);
}

.journey-stage-dig h2 { color: #fff; }
.journey-stage-dig .eyebrow { color: var(--yellow); }
.journey-stage-dig .step-card { color: var(--ink); }
.journey-stage-dig .step-card h3 { color: var(--navy); }

.journey-stage-underground {
  background-image:
    radial-gradient(circle at 14% 34%, rgba(245,130,32,.16) 0 2px, transparent 2.5px),
    radial-gradient(circle at 84% 68%, rgba(242,222,131,.1) 0 2px, transparent 2.5px),
    repeating-linear-gradient(172deg, transparent 0 92px, rgba(242,222,131,.075) 93px 98px);
  background-size: 43px 47px, 61px 67px, auto;
}

.journey-stage-underground::before,
.journey-stage-underground::after {
  content: "";
  position: absolute;
  z-index: 0;
  width: clamp(110px, 16vw, 260px);
  height: 72%;
  opacity: .38;
  background: #1f0c08;
  pointer-events: none;
}

.journey-stage-underground::before {
  top: 8%;
  left: -5%;
  clip-path: polygon(0 0, 62% 6%, 45% 18%, 78% 27%, 52% 40%, 83% 54%, 50% 68%, 70% 82%, 42% 100%, 0 94%);
}

.journey-stage-underground::after {
  right: -5%;
  bottom: 5%;
  clip-path: polygon(38% 0, 100% 7%, 100% 96%, 52% 100%, 70% 83%, 40% 69%, 69% 54%, 36% 41%, 63% 27%, 30% 15%);
}

.content-section.journey-stage-underground-upper {
  padding-top: 150px;
  color: #fff;
  background-color: #32170f;
}

.journey-stage-underground-upper h2 { color: #fff; }
.journey-stage-underground-upper .eyebrow { color: var(--yellow); }
.journey-stage-underground-upper .section-lead { color: rgba(255,255,255,.84); }
.journey-stage-underground-upper .fit-panel,
.journey-stage-underground-upper .fit-note { color: var(--ink); }
.journey-stage-underground-upper .paper-card { color: var(--ink); }
.journey-stage-underground-upper .paper-card h3 { color: var(--navy); }

.content-section.journey-stage-underground-lower {
  color: #fff;
  background-color: #471b11;
}

.journey-stage-underground-lower h2 { color: #fff; }
.journey-stage-underground-lower .eyebrow { color: var(--yellow); }
.journey-stage-underground-lower .section-lead { color: rgba(255,255,255,.82); }

.content-section.journey-stage-mantle {
  background:
    radial-gradient(ellipse at 15% 25%, rgba(255,178,41,.48) 0 1.5%, transparent 1.8%),
    radial-gradient(ellipse at 78% 72%, rgba(255,178,41,.34) 0 2%, transparent 2.3%),
    repeating-linear-gradient(162deg, transparent 0 105px, rgba(255,178,41,.2) 107px 116px),
    linear-gradient(to bottom, #a94118, #7f2513);
  color: #fff;
}

.journey-stage-mantle::before,
.journey-stage-mantle::after {
  content: "";
  position: absolute;
  z-index: 0;
  width: 78%;
  height: 20px;
  border-radius: 50%;
  background: rgba(255,207,78,.38);
  box-shadow: 0 0 30px rgba(255,178,41,.4);
  filter: blur(2px);
  pointer-events: none;
}

.journey-stage-mantle::before { top: 24%; left: -18%; transform: rotate(-10deg); }
.journey-stage-mantle::after { right: -20%; bottom: 22%; transform: rotate(9deg); }

.journey-stage-mantle h2 { color: #fff; }
.journey-stage-mantle .eyebrow { color: var(--yellow); }
.journey-stage-mantle .fit-panel,
.journey-stage-mantle .fit-note { color: var(--ink); }

.content-section.journey-stage-outer-core {
  color: #fff;
  background:
    repeating-linear-gradient(170deg, transparent 0 80px, rgba(196,103,27,.58) 80px 84px, transparent 84px 126px, rgba(92,31,18,.72) 126px 132px),
    linear-gradient(to bottom, #7f2513, #42150e);
}

.journey-stage-outer-core::before {
  content: "";
  position: absolute;
  right: -8%;
  bottom: -12%;
  left: -8%;
  z-index: 0;
  height: 72%;
  background:
    linear-gradient(104deg, transparent 0 18%, #c4671b 18% 19%, transparent 19%),
    linear-gradient(78deg, transparent 0 49%, #9a411b 49% 50%, transparent 50%),
    linear-gradient(116deg, transparent 0 77%, #bd5a1f 77% 78%, transparent 78%);
  pointer-events: none;
}

.journey-stage-outer-core h2 { color: #fff; }
.journey-stage-outer-core .eyebrow { color: var(--yellow); }
.journey-stage-outer-core .section-lead { color: rgba(255,255,255,.84); }

footer.journey-stage-core {
  min-height: 160px;
  display: flex;
  align-items: flex-end;
  background: #170905;
}

.journey-stage-core::before,
.journey-stage-core::after { display: none; }

@keyframes journey-orbit-breathe {
  to { opacity: .72; transform: scale(1.035); }
}

@keyframes journey-plane-crossing {
  0%, 8% { transform: translate3d(calc(100vw + 40px), 0, 0) rotate(-7deg); }
  92%, 100% { transform: translate3d(calc(-100% - 40px), 0, 0) rotate(-7deg); }
}

@keyframes journey-cloud-eastbound {
  0%, 8% { transform: translate3d(calc(-100% - 60px), 0, 0); }
  92%, 100% { transform: translate3d(calc(100vw + 60px), -14px, 0); }
}

@keyframes journey-cloud-westbound {
  0%, 8% { transform: translate3d(calc(100vw + 60px), 0, 0); }
  92%, 100% { transform: translate3d(calc(-100% - 60px), 18px, 0); }
}

@keyframes journey-tractor-field {
  0%, 5% { transform: translate3d(-115px, 0, 0) rotateY(180deg); }
  44% { transform: translate3d(115px, 0, 0) rotateY(180deg); }
  48%, 52% { transform: translate3d(115px, 0, 0) rotateY(0deg); }
  91% { transform: translate3d(-115px, 0, 0) rotateY(0deg); }
  95%, 100% { transform: translate3d(-115px, 0, 0) rotateY(180deg); }
}

@keyframes journey-dinosaur-route {
  0%, 5% { transform: translate3d(-135px, 0, 0) rotateY(0deg); }
  44% { transform: translate3d(135px, 0, 0) rotateY(0deg); }
  48%, 52% { transform: translate3d(135px, 0, 0) rotateY(180deg); }
  91% { transform: translate3d(-135px, 0, 0) rotateY(180deg); }
  95%, 100% { transform: translate3d(-135px, 0, 0) rotateY(0deg); }
}

@keyframes journey-dinosaur-run {
  from { transform: translate3d(0, 2px, 0) rotate(-.7deg); }
  to { transform: translate3d(0, -4px, 0) rotate(.7deg); }
}

.hero-grid {
  display: block;
}

.hero-copy {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(380px, .85fr);
  align-items: center;
  gap: 54px;
}

.hero-aside {
  position: relative;
  display: grid;
  min-height: 360px;
  place-items: center;
}

.eyebrow {
  margin-bottom: 16px;
  color: var(--orange-dark);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.hero .eyebrow { color: var(--yellow); }

.hero h1 {
  max-width: 780px;
  margin-bottom: 24px;
  color: #fff;
  font-size: clamp(3rem, 4.8vw, 5.1rem);
}

.hero-title-final-line { display: block; }

.hero-body {
  max-width: 770px;
  margin-bottom: 24px;
  color: rgba(255,255,255,.9);
  font-size: clamp(1.05rem, 1.4vw, 1.3rem);
}

.hero-story-cards {
  display: grid;
  max-width: 770px;
  margin-bottom: 12px;
  cursor: grab;
  touch-action: pan-y;
  user-select: none;
}

.hero-story-cards:focus-visible {
  outline: 2px solid var(--yellow);
  outline-offset: 6px;
}

.hero-story-cards.is-dragging {
  cursor: grabbing;
}

.hero-story-card {
  grid-area: 1 / 1;
  margin-bottom: 0;
  background: transparent;
  opacity: 0;
  pointer-events: none;
  transform: translateX(0);
  transition: opacity .55s ease, transform .55s ease;
}

.hero-story-card.is-active {
  opacity: 1;
  pointer-events: auto;
}

.hero-story-cards.is-dragging .hero-story-card.is-active {
  transition: none;
}

.hero-story-dots {
  display: flex;
  justify-content: flex-start;
  gap: 2px;
  max-width: 770px;
  margin-bottom: 24px;
}

.hero-story-dot {
  position: relative;
  display: block;
  width: 24px;
  height: 24px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  cursor: pointer;
}

.hero-story-dot::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: rgba(255,255,255,.32);
  transform: translate(-50%, -50%);
  transition: background-color .25s ease, transform .25s ease;
}

.hero-story-dot:hover::before,
.hero-story-dot:focus-visible::before {
  background: rgba(255,255,255,.72);
  transform: translate(-50%, -50%) scale(1.15);
}

.hero-story-dot:focus-visible {
  outline: 2px solid var(--yellow);
  outline-offset: 0;
}

.hero-story-dot.is-active::before {
  background: #fff;
  transform: translate(-50%, -50%) scale(1.25);
}

.equity-statement {
  max-width: 780px;
  margin-bottom: 30px;
  padding: 20px 24px;
  color: var(--navy);
  background: var(--yellow);
  clip-path: var(--edge);
  font-weight: 750;
}

.hero .equity-statement { max-width: none; }

.hero-actions { display: flex; align-items: flex-start; flex-direction: column; gap: 8px; width: fit-content; margin-bottom: 24px; }
.hero-action-hint {
  align-self: stretch;
  padding: 0;
  border: 0;
  color: rgba(255,255,255,.72);
  background: transparent;
  font: inherit;
  font-size: .78rem;
  line-height: 1;
  text-align: center;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}
.hero-action-hint:hover,
.hero-action-hint:focus-visible {
  color: var(--yellow);
  outline: none;
}
.hero-actions .button-link-secondary {
  color: var(--navy);
  background: var(--yellow);
  border-color: var(--yellow);
  box-shadow: none;
  transition: background-color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.hero-actions .button-link-secondary:hover,
.hero-actions .button-link-secondary:focus-visible {
  color: var(--navy);
  background: var(--yellow);
  border-color: var(--yellow);
  box-shadow: 0 12px 24px rgba(2,11,42,.48), 0 0 0 3px rgba(242,222,131,.22);
  transform: translateY(-2px);
}
.hero-fit-line { max-width: 760px; margin-bottom: 0; color: rgba(255,255,255,.76); font-size: .95rem; }

.content-section { padding: 96px 0; }
.content-section-paper { background: var(--paper); }
.content-section-orange { background: var(--orange); }
.content-section-navy { color: #fff; background: var(--navy); }
.content-section-navy h2, .content-section-navy h3 { color: #fff; }
.content-section-navy .eyebrow { color: var(--yellow); }

.section-heading { max-width: 900px; margin-bottom: 48px; }
.section-heading h2 { margin-bottom: 20px; font-size: clamp(2.5rem, 4.5vw, 4.6rem); letter-spacing: .01em; }
.section-lead { max-width: 820px; margin-bottom: 0; font-size: clamp(1.05rem, 1.5vw, 1.3rem); }

.card-grid { display: grid; gap: 24px; }
.card-grid-three { grid-template-columns: repeat(3, minmax(0, 1fr)); }

.paper-card {
  min-width: 0;
  padding: 30px 28px;
  background: var(--paper);
  clip-path: var(--edge);
  box-shadow: var(--shadow);
}

.paper-card h3 { margin-bottom: 12px; font-size: 1.55rem; letter-spacing: .012em; }
.paper-card p:last-child { margin-bottom: 0; }
.paper-card .card-icon { margin-bottom: 18px; color: var(--orange); font-size: 2rem; }

.recognition {
  margin-top: 52px;
  padding: 38px;
  color: var(--ink);
  background: var(--paper);
  clip-path: var(--edge);
  box-shadow: var(--shadow);
}

.recognition h3 { margin-bottom: 22px; color: var(--navy); font-size: 2rem; }
.recognition ul, .fit-list, .callout-points { margin: 0; padding: 0; list-style: none; }
.recognition-columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; align-items: start; }
.recognition-columns ul { display: grid; gap: 14px; align-content: start; }
.recognition li, .fit-list li, .callout-points li { position: relative; padding-left: 28px; }
.recognition li::before, .fit-list li::before, .callout-points li::before { content: ""; position: absolute; top: .65em; left: 0; width: 12px; height: 12px; background: var(--orange); clip-path: polygon(50% 0, 100% 50%, 50% 100%, 0 50%); }

.capability-card { border-top: 8px solid var(--orange); }

.execution-callout {
  padding: 54px;
  color: var(--ink);
  background: #fff;
  clip-path: var(--edge);
  box-shadow: var(--shadow);
}

.journey-stage-forest .execution-callout { margin-top: 64px; }
.execution-callout h3 { margin-bottom: 18px; color: var(--navy); font-size: clamp(2.4rem, 4vw, 4rem); }
.execution-callout > p { max-width: 900px; font-size: 1.2rem; }
.callout-points { margin-top: 28px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 30px; }
.callout-points li::before { background: var(--orange); }

.steps { display: grid; gap: 20px; counter-reset: playbook-step; }
.step-card {
  counter-increment: playbook-step;
  display: grid;
  grid-template-columns: 90px minmax(0, 1fr) minmax(260px, .6fr);
  align-items: center;
  gap: 28px;
  padding: 28px 32px;
  background: var(--paper);
  clip-path: var(--edge);
  box-shadow: 6px 8px 0 rgba(33,16,4,.12);
}

.step-card::before {
  content: counter(playbook-step, decimal-leading-zero);
  color: var(--orange);
  font-family: "Urbanist", sans-serif;
  font-size: 2.4rem;
  font-weight: 900;
}

.step-card h3 { margin-bottom: 8px; font-size: 1.7rem; }
.step-card p { margin-bottom: 0; }
.step-output {
  padding: 8px 0 8px 14px;
  border: 0;
  border-left: 3px solid var(--orange);
  color: var(--navy);
  background: transparent;
  font-size: .95rem;
}
.step-output strong { display: block; margin-bottom: 4px; text-transform: uppercase; }

.equity-intro { max-width: 860px; margin-bottom: 28px; font-size: 1.18rem; }
.equity-copy { max-width: 860px; }
.equity-model-statement { max-width: 860px; background: var(--paper); font-weight: 400; }
.equity-model-statement p { margin: 0; }
.equity-model-statement p + p { margin-top: 16px; }
.equity-model-statement .equity-statement-emphasis { font-weight: 750; }
.equity-benefits {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  max-width: 780px;
  margin-top: 42px;
}

.team-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.team-card { padding: 22px 18px 26px; text-align: center; }
.team-card img { width: 150px; aspect-ratio: 1 / 1; object-fit: cover; margin-bottom: 18px; border: 7px solid var(--yellow); border-radius: 50%; background: var(--orange); }
.team-card h3 { margin-bottom: 6px; font-size: 1.35rem; }
.team-function { margin-bottom: 6px; color: var(--orange-dark); font-size: .86rem; font-weight: 900; text-transform: uppercase; }
.team-role { margin-bottom: 0; color: var(--navy); font-weight: 800; }

.fit-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }
.fit-panel { padding: 38px; background: var(--paper); clip-path: var(--edge); box-shadow: var(--shadow); }
.fit-panel h3 { margin-bottom: 24px; font-size: 2rem; }
.fit-list { display: grid; gap: 15px; }
.fit-panel-not { display: flex; flex-direction: column; }
.fit-panel-not .fit-list li::before { background: var(--navy); }
.fit-note { margin-top: 28px; padding: 20px; background: var(--yellow); }
.fit-revisit-note { margin-top: auto; padding: 20px; border-left: 6px solid #bd5b4e; background: #f5d7d2; }
.fit-revisit-note strong { display: block; margin-bottom: 7px; color: #7f3029; font-size: 1.08rem; }
.fit-revisit-note p { margin: 0; }
.contact-grid { display: grid; grid-template-columns: minmax(0, .72fr) minmax(0, 1.28fr); gap: 54px; align-items: start; }
.contact-copy h2 { font-size: clamp(2.5rem, 4.2vw, 4.3rem); }
.contact-copy .contact-summary-card {
  max-width: 520px;
  margin-top: 34px;
  padding: 24px 26px;
  color: var(--ink);
  background: var(--yellow);
  clip-path: var(--edge);
  box-shadow: 6px 8px 0 rgba(33,16,4,.16);
}
.contact-form-card { padding: 58px 38px 38px; background: var(--paper); clip-path: var(--edge); box-shadow: var(--shadow); }
.contact-form-title { margin-bottom: 28px; font-size: clamp(2.25rem, 3.4vw, 3.4rem); }
.contact-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.form-field { margin: 0; }
.form-field-wide, .form-actions, .form-status { grid-column: 1 / -1; }
.contact-form label { display: block; margin-bottom: 7px; color: var(--navy); font-size: .82rem; font-weight: 900; }
.contact-form input, .contact-form textarea {
  width: 100%;
  border: 2px solid #c8c5bc;
  border-radius: 0;
  color: var(--ink);
  background: #fff;
  padding: 13px 14px;
}
.contact-form textarea { min-height: 130px; resize: vertical; }
.contact-form input:focus, .contact-form textarea:focus { border-color: var(--orange-dark); outline: 3px solid rgba(83,172,187,.35); outline-offset: 1px; }
.contact-form button { border: 0; cursor: pointer; }
.contact-form button:disabled { cursor: wait; opacity: .65; }
.contact-form-note { margin: 18px 0 0; color: #656057; font-size: .82rem; }
.form-status { min-height: 1.6em; margin: 0; font-weight: 800; }
.form-status.is-success { color: #246526; }
.form-status.is-error { color: #a33120; }

.site-footer { padding: 28px 0 34px; color: #fff; background: var(--navy); }
.footer-grid { display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.footer-brand { display: grid; gap: 12px; }
.footer-brand p { margin: 0; color: var(--yellow); font-size: .78rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.footer-logo { width: 150px; }
.footer-links { display: flex; flex-wrap: wrap; gap: 20px; justify-content: flex-end; }
.footer-links a { color: #fff; font-weight: 400; text-decoration: none; }
.footer-links a:hover { color: var(--yellow); }
.footer-copyright { margin: 12px 0 0; color: rgba(255,255,255,.68); font-size: .86rem; text-align: right; }

body.has-saas-journey-modal { overflow: hidden; }
.saas-journey-modal[hidden] { display: none; }
.saas-journey-modal { position: fixed; inset: 0; z-index: 2600; display: grid; place-items: center; padding: 24px; }
.saas-journey-modal-backdrop { position: absolute; inset: 0; background: rgba(2,11,42,.88); backdrop-filter: blur(8px); cursor: pointer; }
.saas-journey-modal-dialog { position: relative; z-index: 1; display: flex; width: min(88vw, 1500px); height: min(960px, calc(100vh - 48px)); height: min(960px, calc(100dvh - 48px)); max-height: calc(100vh - 48px); max-height: calc(100dvh - 48px); flex-direction: column; overflow: hidden; border: 3px solid var(--paper); border-radius: 12px; background: var(--navy); box-shadow: 0 30px 100px rgba(0,0,0,.58); }
.saas-journey-modal-header { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 16px 20px; border-bottom: 3px solid var(--orange); background: var(--navy); }
.saas-journey-modal-header .eyebrow { margin: 0 0 2px; color: var(--yellow); }
.saas-journey-modal-header h2 { margin: 0; color: #fff; font-size: clamp(1.65rem, 2.6vw, 2.7rem); }
.saas-journey-modal-close { display: grid; flex: 0 0 auto; width: 46px; aspect-ratio: 1; place-items: center; border: 2px solid var(--paper); border-radius: 50%; color: var(--navy); background: var(--paper); font-size: 1.35rem; cursor: pointer; }
.saas-journey-modal-close:hover, .saas-journey-modal-close:focus-visible { color: #fff; background: var(--orange); outline: 3px solid var(--yellow); outline-offset: 2px; }
.saas-journey-modal-frame { width: 100%; min-height: 0; flex: 1 1 auto; background: var(--navy); }
.saas-journey-modal-frame iframe { display: block; width: 100%; height: 100%; border: 0; background: var(--navy); }

.legal-panel-overlay { position: fixed; inset: 0; z-index: 1900; visibility: hidden; opacity: 0; background: rgba(0,0,0,.52); transition: opacity .2s linear; }
.legal-panel-overlay.is-visible { visibility: visible; opacity: 1; }
.legal-side-panel { position: fixed; top: 0; right: 0; z-index: 2000; width: min(560px, 100%); height: 100vh; padding: 28px 30px 44px; overflow-y: auto; color: var(--ink); background: var(--paper); transform: translateX(100%); transition: transform .25s ease; }
.legal-side-panel.is-open { transform: translateX(0); }
.legal-side-panel h2 { margin: 18px 0; color: var(--orange-dark); font-size: 2.2rem; }
.legal-side-panel h4 { margin: 24px 0 8px; font-size: 1.15rem; }
.legal-side-panel p, .legal-side-panel li { font-size: .94rem; }
.legal-side-panel ul { padding-left: 22px; }
.legal-side-close { position: sticky; top: 0; float: right; border: 0; padding: 10px 14px; color: #fff; background: var(--orange-dark); font-weight: 900; cursor: pointer; }

.back-top { position: fixed; right: 22px; bottom: 22px; z-index: 900; }
.back-top a { width: 48px; height: 48px; display: grid; place-items: center; color: var(--navy); background: var(--paper); border: 3px solid var(--orange); border-radius: 50%; text-decoration: none; }

.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; }

@media (max-width: 1080px) {
  .site-nav { flex-wrap: wrap; padding-block: 13px; }
  .nav-toggle { display: inline-flex; }
  .nav-links { width: 100%; display: none; flex-direction: column; align-items: stretch; gap: 0; padding: 8px 0 16px; }
  .nav-links.is-open { display: flex; }
  .nav-links a { padding: 13px 4px; }
  .nav-links .button-link { margin-top: 10px; margin-left: 0; }
  .hero-grid { grid-template-columns: 1fr; }
  .hero-copy { max-width: 900px; grid-template-columns: 1fr; gap: 38px; }
  .hero-aside { min-height: 220px; }
  .journey-space-station { width: min(100%, 440px); }
  .team-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .contact-grid { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
  .shell { width: min(100% - 30px, 1180px); }
  [id] { scroll-margin-top: 76px; }
  .brand-link img { width: 138px; }
  .hero { padding: 62px 0 80px; }
  .journey-space-to-mountains { height: auto; }
  .hero-aside { min-height: 170px; }
  .journey-space-station { width: min(100%, 330px); }
  .journey-airplane { display: none; }
  .journey-snowcap-three { display: none; }
  .journey-mountain-range { right: -22%; left: -22%; }
  .journey-mountain-range img { min-width: 54%; }
  .content-section.journey-stage-mountains { padding-bottom: 145px; }
  .journey-stage-mountains::after { height: 125px; }
  .content-section.journey-stage-forest { padding-bottom: 96px; }
  .journey-stage-forest::before { height: 120px; opacity: .66; }
  .journey-stage-forest .section-heading { margin-bottom: 135px; }
  .journey-grazing-deer { top: 485px; right: 4%; width: 108px; }
  .journey-stage-badlands::before { right: -18%; width: 70%; opacity: .48; }
  .journey-stage-badlands::after { width: 74%; opacity: .38; }
  .journey-dinosaur-chase { top: 118px; right: -12%; width: 300px; opacity: .72; }
  .journey-stage-semi-arid::after { opacity: .42; }
  .journey-dig-transition { height: auto; }
  .journey-miner { right: 10%; bottom: 17px; transform: scale(.82); transform-origin: bottom right; }
  .journey-mineral-field-right { top: 13%; right: 64px; transform: rotate(-4deg) scale(.78); }
  .content-section.journey-stage-underground-upper { padding-top: 125px; }
  .journey-oil-reserve-one { left: -6%; width: 175px; height: 58px; }
  .journey-oil-reserve-two { right: -5%; width: 140px; height: 48px; }
  .journey-fossil { right: -8%; bottom: 2%; opacity: .38; transform: rotate(-7deg) scale(.72); transform-origin: center; }
  .journey-fossil-two { display: none; }
  footer.journey-stage-core { min-height: 150px; }
  .hero h1 { font-size: clamp(2.65rem, 13vw, 4rem); }
  .hero-body { font-size: 1rem; }
  .equity-statement { padding: 17px 18px; }
  .hero-actions { align-items: stretch; flex-direction: column; width: 100%; }
  .hero-actions .button-link { width: 100%; }
  .content-section { padding: 70px 0; }
  .section-heading { margin-bottom: 34px; }
  .card-grid-three, .equity-benefits, .recognition-columns, .callout-points, .fit-grid, .contact-form { grid-template-columns: 1fr; }
  .recognition, .execution-callout, .fit-panel { padding: 28px 22px; }
  .contact-form-card { padding: 42px 22px 28px; }
  .journey-stage-forest .execution-callout { margin-top: 44px; }
  .step-card { grid-template-columns: 58px minmax(0, 1fr); gap: 18px; padding: 24px 20px; }
  .step-output { grid-column: 1 / -1; }
  .team-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .saas-journey-modal { padding: 8px; }
  .saas-journey-modal-dialog { width: calc(100vw - 16px); height: calc(100vh - 16px); height: calc(100dvh - 16px); max-height: none; border-radius: 8px; }
  .saas-journey-modal-header { padding: 10px 12px; }
  .saas-journey-modal-header .eyebrow { display: none; }
  .saas-journey-modal-close { width: 38px; }
  .footer-grid { align-items: flex-start; flex-direction: column; }
  .footer-links { justify-content: flex-start; }
  .footer-copyright { text-align: left; }
  .legal-side-panel { padding: 22px 18px 34px; }
}

@media (max-width: 420px) {
  .team-grid { grid-template-columns: 1fr; }
  .team-card { max-width: 310px; margin-inline: auto; }
  .step-card { grid-template-columns: 1fr; }
  .step-card::before { font-size: 2rem; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
  .hero-story-card { transition: none !important; }
  .hero-story-dot { transition: none !important; }
  .journey-airplane { right: 8%; left: auto; transform: rotate(-7deg); animation: none !important; }
  .journey-cloud { transform: none; animation: none !important; }
  .journey-cloud-one { left: 10%; }
  .journey-cloud-two { right: 22%; left: auto; }
  .journey-cloud-three { left: 56%; }
  .journey-farm-vehicle { transform: none; animation: none !important; }
  .journey-dinosaur-chase { transform: none; animation: none !important; }
  .journey-dinosaur-chase img { animation: none !important; }
  .journey-miner i { transform: none; animation: none !important; }
  .journey-miner-dust { display: none; animation: none !important; }
}
