@import url('https://fonts.googleapis.com/css2?family=Instrument+Serif:ital@0;1&family=Manrope:wght@300;400;500;600&display=swap');

:root {
  --paper: #f3f0e8;
  --paper-soft: #f8f6f0;
  --sand: #e8e1d3;
  --forest: #16221c;
  --forest-deep: #0f1713;
  --ink: #1c211d;
  --muted: #686d67;
  --muted-light: rgba(244, 241, 233, .7);
  --cream: #f4f1e9;
  --brass: #a7895f;
  --brass-soft: #c4ad87;
  --line: rgba(28, 33, 29, .16);
  --line-light: rgba(244, 241, 233, .22);
  --display: 'Instrument Serif', Georgia, serif;
  --body: 'Manrope', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --edge: clamp(22px, 5.6vw, 88px);
  --max: 1480px;
  --bar-h: 34px;
  --nav-h: 96px;
  --ease: cubic-bezier(.2,.72,.2,1);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font-family: var(--body);
  font-size: 16px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  overflow-x: hidden;
}
body.menu-open { overflow: hidden; }
img { width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }
button { color: inherit; }
::selection { background: var(--brass-soft); color: var(--forest-deep); }
:focus-visible { outline: 1px solid var(--brass); outline-offset: 4px; }

h1, h2, h3, p, figure, blockquote { margin: 0; }
h1, h2, h3, blockquote { font-family: var(--display); font-weight: 400; }

.wrap { width: min(100%, var(--max)); margin: 0 auto; padding-inline: var(--edge); }
.section-paper { background: var(--paper); }
.section-sand { background: var(--sand); }
.section-forest { background: var(--forest); color: var(--cream); }

.private-bar {
  height: var(--bar-h);
  position: fixed;
  inset: 0 0 auto 0;
  z-index: 200;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 0 var(--edge);
  background: var(--forest-deep);
  color: rgba(244,241,233,.8);
  border-bottom: 1px solid rgba(255,255,255,.06);
  font-size: 9.5px;
  font-weight: 500;
  letter-spacing: .18em;
  text-transform: uppercase;
}
.private-bar i { width: 2px; height: 2px; border-radius: 50%; background: var(--brass-soft); }

.site-nav {
  position: fixed;
  top: var(--bar-h);
  left: 0;
  right: 0;
  z-index: 180;
  min-height: var(--nav-h);
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  padding: 0 var(--edge);
  color: var(--cream);
  transition: background .45s var(--ease), min-height .45s var(--ease), color .35s var(--ease), box-shadow .35s var(--ease);
}
.site-nav.is-scrolled {
  min-height: 72px;
  background: rgba(243,240,232,.96);
  color: var(--ink);
  box-shadow: 0 1px 0 rgba(28,33,29,.12);
  backdrop-filter: blur(16px);
}
.site-nav .nav-left,
.site-nav .nav-right { display: flex; align-items: center; gap: clamp(20px, 2.8vw, 42px); }
.site-nav .nav-right { justify-content: flex-end; }
.site-nav a:not(.brand):not(.nav-cta) {
  position: relative;
  font-size: 10.5px;
  font-weight: 500;
  letter-spacing: .15em;
  text-transform: uppercase;
}
.site-nav a:not(.brand):not(.nav-cta)::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -6px;
  width: 100%;
  height: 1px;
  background: currentColor;
  transform: scaleX(0);
  transform-origin: right;
  transition: transform .35s var(--ease);
}
.site-nav a:hover::after,
.site-nav a[aria-current="page"]::after { transform: scaleX(1); transform-origin: left; }
.brand { justify-self: center; position: relative; width: 116px; height: 64px; display: grid; place-items: center; }
.brand .logo { position: absolute; height: 64px; width: auto; object-fit: contain; transition: opacity .3s var(--ease), transform .45s var(--ease); }
.brand .logo-dark { opacity: 0; }
.site-nav.is-scrolled .brand .logo-white { opacity: 0; }
.site-nav.is-scrolled .brand .logo-dark { opacity: 1; }
.site-nav.is-scrolled .brand .logo { transform: scale(.87); }
.nav-cta {
  border: 1px solid rgba(244,241,233,.55);
  padding: 12px 17px;
  font-size: 9.5px;
  font-weight: 600;
  letter-spacing: .16em;
  text-transform: uppercase;
  transition: background .3s var(--ease), color .3s var(--ease), border-color .3s var(--ease);
}
.nav-cta:hover { background: var(--cream); color: var(--forest-deep); border-color: var(--cream); }
.site-nav.is-scrolled .nav-cta { border-color: rgba(28,33,29,.35); }
.site-nav.is-scrolled .nav-cta:hover { background: var(--forest); color: var(--cream); border-color: var(--forest); }

.nav-toggle { display: none; background: transparent; border: 0; padding: 0; width: 28px; height: 20px; position: relative; z-index: 220; cursor: pointer; }
.nav-toggle span { position: absolute; left: 0; width: 28px; height: 1px; background: currentColor; transition: transform .35s var(--ease), top .35s var(--ease), opacity .25s; }
.nav-toggle span:nth-child(1) { top: 1px; }
.nav-toggle span:nth-child(2) { top: 9px; }
.nav-toggle span:nth-child(3) { top: 17px; }
.menu-open .nav-toggle span:nth-child(1) { top: 9px; transform: rotate(45deg); }
.menu-open .nav-toggle span:nth-child(2) { opacity: 0; }
.menu-open .nav-toggle span:nth-child(3) { top: 9px; transform: rotate(-45deg); }
.mobile-menu { display: none; }

.kicker {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--brass);
}
.kicker.light { color: var(--brass-soft); }
.text-link {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  padding-bottom: 5px;
  border-bottom: 1px solid rgba(28,33,29,.45);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .17em;
  text-transform: uppercase;
}
.text-link.light { color: var(--cream); border-color: rgba(244,241,233,.45); }
.text-link span { transition: transform .3s var(--ease); }
.text-link:hover span { transform: translateX(5px); }
.button {
  min-height: 50px;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  padding: 0 20px;
  border: 1px solid currentColor;
  background: transparent;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .16em;
  text-transform: uppercase;
  cursor: pointer;
  transition: background .3s var(--ease), color .3s var(--ease), border-color .3s var(--ease);
}
.button span { font-size: 14px; transition: transform .3s var(--ease); }
.button:hover span { transform: translate(3px,-3px); }
.button-light { color: var(--cream); border-color: rgba(244,241,233,.6); }
.button-light:hover { background: var(--cream); color: var(--forest-deep); border-color: var(--cream); }
.button-dark { color: var(--ink); border-color: var(--ink); }
.button-dark:hover { background: var(--forest); color: var(--cream); border-color: var(--forest); }

.hero-home { min-height: 100svh; position: relative; color: var(--cream); display: flex; align-items: flex-end; overflow: hidden; }
.hero-media, .story-hero-media, .contact-hero-media { position: absolute; inset: 0; }
.hero-media img, .story-hero-media img, .contact-hero-media img { width: 100%; height: 100%; object-fit: cover; }
.hero-media img { object-position: 50% 52%; }
.hero-wash { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(8,13,10,.74) 0%, rgba(8,13,10,.35) 47%, rgba(8,13,10,.12) 72%), linear-gradient(0deg, rgba(8,13,10,.65) 0%, transparent 44%); }
.hero-grid { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0, 1fr) auto; width: 100%; padding-top: calc(var(--bar-h) + var(--nav-h) + 70px); padding-bottom: clamp(72px, 10vh, 120px); }
.hero-copy { max-width: 840px; }
.hero-copy h1 { max-width: 10.5ch; margin-top: 18px; font-size: clamp(58px, 8.8vw, 132px); line-height: .88; letter-spacing: -.025em; }
.hero-lede { max-width: 610px; margin-top: 28px; color: rgba(244,241,233,.78); font-size: clamp(15px, 1.25vw, 18px); line-height: 1.65; }
.hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 28px; margin-top: 38px; }
.hero-note { align-self: end; display: flex; flex-direction: column; text-align: right; gap: 3px; padding-bottom: 2px; color: rgba(244,241,233,.55); font-size: 8.5px; letter-spacing: .18em; text-transform: uppercase; }
.scroll-cue { position: absolute; z-index: 4; right: var(--edge); bottom: 31px; display: flex; gap: 12px; align-items: center; color: rgba(244,241,233,.68); font-size: 8.5px; letter-spacing: .18em; text-transform: uppercase; }
.scroll-cue i { width: 44px; height: 1px; background: rgba(244,241,233,.45); position: relative; overflow: hidden; }
.scroll-cue i::after { content: ''; position: absolute; inset: 0; background: var(--cream); transform: translateX(-100%); animation: cue 2.4s ease-in-out infinite; }
@keyframes cue { 55%,100% { transform: translateX(100%); } }

.manifesto { padding: clamp(100px, 12vw, 190px) 0 clamp(90px, 11vw, 170px); }
.manifesto-grid { display: grid; grid-template-columns: 1fr 3fr; gap: 60px; }
.manifesto-copy { max-width: 1040px; }
.manifesto-copy h2 { font-size: clamp(46px, 6vw, 88px); line-height: 1.01; letter-spacing: -.02em; }
.manifesto-copy > p { max-width: 610px; margin: 34px 0 0 auto; color: var(--muted); font-size: 16px; }

.principles { padding: 0 0 clamp(110px, 13vw, 190px); }
.section-heading { margin-bottom: clamp(46px, 6vw, 82px); }
.section-heading h2 { max-width: 12ch; margin-top: 13px; font-size: clamp(44px, 5.2vw, 76px); line-height: 1.02; letter-spacing: -.02em; }
.split-heading { display: grid; grid-template-columns: 1.4fr .6fr; gap: 70px; align-items: end; }
.split-heading > p { max-width: 450px; justify-self: end; color: var(--muted); }
.principle-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.principle-card { min-height: 390px; padding: clamp(30px, 3.5vw, 52px); border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); display: flex; flex-direction: column; }
.card-number { color: var(--brass); font-size: 10px; letter-spacing: .16em; }
.principle-card h3 { margin-top: auto; font-size: clamp(32px, 3vw, 48px); line-height: 1.02; }
.principle-card p { margin-top: 20px; color: var(--muted); max-width: 34ch; font-size: 14px; }

.landscape-feature { padding: clamp(110px, 13vw, 190px) 0; }
.landscape-layout { display: grid; grid-template-columns: .72fr 1.28fr; gap: clamp(50px, 8vw, 120px); align-items: center; }
.landscape-copy { max-width: 470px; }
.landscape-copy h2 { margin-top: 16px; font-size: clamp(50px, 6.4vw, 90px); line-height: .96; }
.landscape-copy > p:not(.kicker) { margin-top: 28px; color: var(--muted-light); }
.landscape-copy .text-link { margin-top: 34px; }
.landscape-collage { display: grid; grid-template-columns: 1.35fr .65fr; gap: 16px; align-items: end; }
.image-box { position: relative; overflow: hidden; background: #d8d2c7; }
.image-box img { width: 100%; height: 100%; object-fit: cover; transition: transform 1.2s var(--ease); }
.image-box:hover img { transform: scale(1.015); }
.image-box figcaption { position: absolute; left: 16px; bottom: 12px; z-index: 2; color: rgba(255,255,255,.8); font-size: 8px; letter-spacing: .14em; text-transform: uppercase; text-shadow: 0 1px 8px rgba(0,0,0,.5); }
.image-wide { aspect-ratio: 1.18 / 1; }
.image-tall { aspect-ratio: .73 / 1; margin-bottom: -42px; }

.land-notes { padding: clamp(110px, 12vw, 180px) 0; }
.land-note-grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(28px, 5vw, 80px); }
.ratio-landscape { aspect-ratio: 1.5 / 1; }
.note-copy { display: grid; grid-template-columns: .6fr 1fr; column-gap: 30px; row-gap: 10px; padding-top: 24px; }
.note-copy span { color: var(--brass); font-size: 9px; letter-spacing: .16em; text-transform: uppercase; }
.note-copy h3 { font-size: clamp(30px, 3vw, 44px); }
.note-copy p { grid-column: 2; color: var(--muted); font-size: 14px; max-width: 40ch; }

.palette-section { padding: clamp(100px, 12vw, 170px) 0; }
.palette-grid { display: grid; grid-template-columns: .72fr 1.28fr; gap: clamp(50px, 7vw, 110px); align-items: center; }
.palette-copy h2 { margin-top: 14px; font-size: clamp(44px, 5vw, 72px); line-height: 1; }
.palette-copy > p:not(.kicker):not(.credit-line) { margin-top: 25px; color: #555b55; }
.credit-line { margin-top: 34px; padding-top: 16px; border-top: 1px solid rgba(28,33,29,.18); color: #65675f; font-size: 9px; letter-spacing: .16em; text-transform: uppercase; }
.palette-figure { aspect-ratio: 2.4 / 1; background: #ddd5c6; }
.palette-figure img { object-fit: cover; }

.collaborators { padding: clamp(110px, 12vw, 180px) 0; }
.collab-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.collab-grid > div { min-height: 210px; padding: 32px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); display: flex; flex-direction: column; justify-content: space-between; }
.collab-grid span { color: var(--brass); font-size: 9px; letter-spacing: .17em; text-transform: uppercase; }
.collab-grid strong { font-family: var(--display); font-size: clamp(29px, 2.7vw, 42px); font-weight: 400; }

.private-release { min-height: 76svh; position: relative; color: var(--cream); display: flex; align-items: center; overflow: hidden; }
.private-release-media { position: absolute; inset: 0; }
.private-release-media img { height: 100%; object-fit: cover; object-position: center 58%; }
.private-release-media div { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(10,15,12,.82) 0%, rgba(10,15,12,.5) 50%, rgba(10,15,12,.18) 80%); }
.private-release-copy { position: relative; z-index: 2; padding-block: 110px; }
.private-release-copy h2 { max-width: 10ch; margin-top: 14px; font-size: clamp(54px, 7vw, 104px); line-height: .93; }
.private-release-copy > p:not(.kicker) { max-width: 500px; margin-top: 26px; color: var(--muted-light); }
.private-release-copy .button { margin-top: 34px; }

.story-hero, .contact-hero { min-height: 82svh; position: relative; color: var(--cream); display: flex; align-items: flex-end; overflow: hidden; }
.story-hero-media div, .contact-hero-media div { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(7,12,9,.72) 0%, rgba(7,12,9,.38) 52%, rgba(7,12,9,.12)), linear-gradient(0deg, rgba(7,12,9,.55), transparent 50%); }
.story-hero-copy, .contact-hero-copy { position: relative; z-index: 2; padding-top: calc(var(--bar-h) + var(--nav-h) + 80px); padding-bottom: clamp(76px, 10vw, 130px); }
.story-hero-copy h1, .contact-hero-copy h1 { max-width: 10.5ch; margin-top: 16px; font-size: clamp(60px, 8vw, 118px); line-height: .9; }
.story-hero-copy > p:last-child, .contact-hero-copy > p:last-child { max-width: 620px; margin-top: 28px; color: rgba(244,241,233,.77); font-size: 17px; }

.story-intro { padding: clamp(100px, 11vw, 160px) 0; }
.story-intro-grid { display: grid; grid-template-columns: .55fr 2fr .65fr; gap: 50px; align-items: start; }
.story-intro blockquote { max-width: 16ch; font-size: clamp(46px, 6vw, 82px); line-height: 1; }
.story-intro-note { color: var(--muted); align-self: end; padding-bottom: 8px; }

.story-chapters { padding: 0 0 clamp(110px, 13vw, 190px); }
.story-chapter { display: grid; grid-template-columns: .38fr .72fr 1.15fr; gap: clamp(28px, 5vw, 70px); align-items: center; padding-block: clamp(70px, 8vw, 110px); border-top: 1px solid var(--line); }
.story-chapter:last-child { border-bottom: 1px solid var(--line); }
.chapter-index { align-self: start; display: flex; flex-direction: column; gap: 5px; padding-top: 7px; }
.chapter-index span { font-family: var(--display); font-size: 42px; color: var(--brass); }
.chapter-index small { font-size: 8.5px; letter-spacing: .18em; text-transform: uppercase; color: var(--muted); }
.chapter-copy h2 { font-size: clamp(42px, 4.6vw, 68px); line-height: 1; }
.chapter-copy p { margin-top: 25px; color: var(--muted); font-size: 14px; }
.chapter-image { aspect-ratio: 1.25 / 1; }
.story-chapter-reverse .chapter-image { order: -1; grid-column: 2; }
.story-chapter-reverse .chapter-index { grid-column: 1; grid-row: 1; }
.story-chapter-reverse .chapter-copy { grid-column: 3; grid-row: 1; }

.palette-story { padding: clamp(100px, 12vw, 170px) 0; }
.palette-story-head { display: grid; grid-template-columns: 1.15fr .85fr; gap: 70px; align-items: end; margin-bottom: 52px; }
.palette-story-head h2 { max-width: 13ch; margin-top: 13px; font-size: clamp(48px, 5.5vw, 78px); line-height: 1; }
.palette-story-head > p { color: #555b55; max-width: 520px; justify-self: end; }
.palette-story-image { aspect-ratio: 2.6 / 1; }

.credits { padding: clamp(110px, 12vw, 180px) 0; }
.credits-table { border-top: 1px solid var(--line); }
.credits-table > div { display: grid; grid-template-columns: .25fr .55fr .9fr 1fr; gap: 30px; align-items: baseline; padding: 30px 0; border-bottom: 1px solid var(--line); }
.credits-table span { font-family: var(--display); color: var(--brass); font-size: 30px; }
.credits-table small { font-size: 9px; letter-spacing: .16em; text-transform: uppercase; color: var(--muted); }
.credits-table strong { font-family: var(--display); font-size: 31px; font-weight: 400; }
.credits-table p { color: var(--muted); font-size: 13px; }

.story-closing { padding: clamp(110px, 13vw, 190px) 0; }
.story-closing-grid { display: grid; grid-template-columns: 1.4fr .6fr; gap: 90px; align-items: end; }
.story-closing h2 { max-width: 10ch; margin-top: 14px; font-size: clamp(52px, 6.5vw, 92px); line-height: .97; }
.story-closing-grid > div:last-child > p { color: var(--muted-light); }
.story-closing .button { margin-top: 30px; }

.contact-hero-media img { object-position: center 52%; }
.contact-section { padding: clamp(100px, 12vw, 175px) 0; }
.contact-layout { display: grid; grid-template-columns: 1.15fr .65fr; gap: clamp(55px, 8vw, 120px); align-items: start; }
.enquiry-panel { border-top: 1px solid var(--line); padding-top: 28px; }
.enquiry-head { margin-bottom: 48px; }
.enquiry-head h2 { margin-top: 10px; font-size: clamp(46px, 5vw, 72px); line-height: 1; }
.enquiry-head > p:last-child { margin-top: 18px; color: var(--muted); max-width: 500px; }
.field-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; }
.field { display: block; margin-bottom: 30px; }
.field > span { display: block; margin-bottom: 9px; color: #5e625d; font-size: 9px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; }
.field input, .field select, .field textarea { width: 100%; border: 0; border-bottom: 1px solid rgba(28,33,29,.28); border-radius: 0; outline: 0; background: transparent; color: var(--ink); padding: 10px 0 13px; font-size: 15px; transition: border-color .25s; }
.field textarea { resize: vertical; min-height: 100px; }
.field input:focus, .field select:focus, .field textarea:focus { border-color: var(--brass); }
.form-actions { display: flex; align-items: center; gap: 24px; flex-wrap: wrap; }
.form-actions p { color: var(--muted); font-size: 12px; }
.form-actions p a { border-bottom: 1px solid rgba(28,33,29,.35); }
.form-status { display: none; margin-top: 16px; color: var(--muted); font-size: 12px; }
.form-status.is-visible { display: block; }
.contact-aside { border-top: 1px solid var(--line); }
.contact-card { padding: 28px 0 30px; border-bottom: 1px solid var(--line); }
.contact-card h3 { margin-top: 8px; font-size: 32px; }
.contact-card > a:not(.large-link) { display: inline-block; margin-top: 11px; color: var(--muted); font-size: 12px; border-bottom: 1px solid rgba(28,33,29,.25); }
.contact-card.compact .large-link { display: inline-block; margin-top: 10px; font-family: var(--display); font-size: 29px; }
.contact-card.compact > p:last-child { margin-top: 8px; color: var(--muted); font-size: 12px; }
.contact-image { margin-top: 32px; aspect-ratio: 1.12 / 1; }
.contact-closing { padding: clamp(90px, 10vw, 140px) 0; }
.contact-closing-grid { display: grid; grid-template-columns: .45fr 1.35fr .7fr auto; gap: 40px; align-items: end; }
.contact-closing h2 { font-size: clamp(44px, 5vw, 72px); line-height: 1; }
.contact-closing-grid > p:not(.kicker) { color: #555b55; }

.site-footer { background: var(--forest-deep); color: var(--cream); padding: clamp(80px, 9vw, 130px) 0 28px; }
.footer-grid { display: grid; grid-template-columns: 1.5fr .65fr .85fr; gap: clamp(40px, 8vw, 110px); }
.footer-brand img { width: 150px; height: auto; }
.footer-brand p { max-width: 370px; margin-top: 22px; color: rgba(244,241,233,.5); font-size: 13px; }
.footer-links { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; }
.footer-links > span { margin-bottom: 6px; color: var(--brass-soft); font-size: 8.5px; letter-spacing: .18em; text-transform: uppercase; }
.footer-links a { color: rgba(244,241,233,.62); font-size: 12px; }
.footer-links a:hover { color: var(--cream); }
.footer-bottom { display: flex; justify-content: space-between; gap: 20px; flex-wrap: wrap; margin-top: 74px; padding-top: 20px; border-top: 1px solid rgba(244,241,233,.12); color: rgba(244,241,233,.34); font-size: 8.5px; letter-spacing: .12em; text-transform: uppercase; }

[data-reveal] { opacity: 0; transform: translateY(24px); transition: opacity .9s var(--ease), transform .9s var(--ease); }
[data-reveal].is-visible { opacity: 1; transform: translateY(0); }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

@media (max-width: 1050px) {
  .site-nav .nav-left, .site-nav .nav-right { display: none; }
  .site-nav { grid-template-columns: 1fr auto; justify-content: space-between; }
  .site-nav .brand { justify-self: start; }
  .nav-toggle { display: block; justify-self: end; }
  .mobile-menu { position: fixed; inset: calc(var(--bar-h)) 0 0 0; z-index: 190; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; gap: 22px; padding: 110px var(--edge) 60px; background: var(--forest-deep); color: var(--cream); transform: translateY(-105%); visibility: hidden; transition: transform .55s var(--ease), visibility .55s; }
  .mobile-menu a { font-family: var(--display); font-size: clamp(38px, 6vw, 62px); font-weight: 400; line-height: 1; letter-spacing: 0; text-transform: none; }
  .mobile-menu a::after { display: none; }
  .mobile-menu .mobile-enquiry { margin-top: 20px; font-family: var(--body); font-size: 10px; letter-spacing: .16em; text-transform: uppercase; border: 1px solid rgba(244,241,233,.5); padding: 16px 20px; }
  .menu-open .mobile-menu { transform: translateY(0); visibility: visible; }
  .menu-open .site-nav { color: var(--cream); background: transparent; box-shadow: none; }
  .menu-open .site-nav.is-scrolled .brand .logo-white,
  .menu-open .site-nav .brand .logo-white { opacity: 1; }
  .menu-open .site-nav.is-scrolled .brand .logo-dark,
  .menu-open .site-nav .brand .logo-dark { opacity: 0; }

  .manifesto-grid { grid-template-columns: 1fr; gap: 24px; }
  .manifesto-copy > p { margin-left: 0; }
  .landscape-layout, .palette-grid { grid-template-columns: 1fr; }
  .landscape-copy { max-width: 650px; }
  .landscape-collage { margin-top: 18px; }
  .story-intro-grid { grid-template-columns: 1fr; }
  .story-intro blockquote { max-width: 19ch; }
  .story-intro-note { max-width: 480px; }
  .story-chapter { grid-template-columns: .28fr .72fr; }
  .chapter-image { grid-column: 1 / -1; margin-top: 20px; }
  .story-chapter-reverse .chapter-image { order: 0; grid-column: 1 / -1; grid-row: auto; }
  .story-chapter-reverse .chapter-index { grid-column: 1; grid-row: auto; }
  .story-chapter-reverse .chapter-copy { grid-column: 2; grid-row: auto; }
  .contact-layout { grid-template-columns: 1fr; }
  .contact-aside { display: grid; grid-template-columns: 1fr 1fr; column-gap: 30px; }
  .contact-image { grid-column: 1 / -1; aspect-ratio: 1.8 / 1; }
  .contact-closing-grid { grid-template-columns: 1fr 2fr; }
  .contact-closing-grid > p:not(.kicker), .contact-closing-grid .text-link { grid-column: 2; }
}

@media (max-width: 760px) {
  :root { --bar-h: 32px; --nav-h: 76px; }
  .hide-mobile { display: none; }
  .private-bar { font-size: 8.5px; gap: 9px; }
  .brand { width: 96px; height: 54px; }
  .brand .logo { height: 54px; }
  .site-nav { min-height: var(--nav-h); }
  .site-nav.is-scrolled { min-height: 64px; }

  .hero-grid { grid-template-columns: 1fr; padding-bottom: 76px; }
  .hero-copy h1 { font-size: clamp(58px, 18vw, 88px); max-width: 9.5ch; }
  .hero-lede { font-size: 14px; }
  .hero-note, .scroll-cue { display: none; }
  .hero-actions { align-items: flex-start; flex-direction: column; gap: 20px; }

  .manifesto { padding: 90px 0; }
  .manifesto-copy h2 { font-size: clamp(45px, 13vw, 66px); }
  .split-heading { grid-template-columns: 1fr; gap: 25px; }
  .split-heading > p { justify-self: start; }
  .principle-grid, .collab-grid { grid-template-columns: 1fr; }
  .principle-card { min-height: 310px; }
  .landscape-feature, .land-notes, .palette-section, .collaborators { padding: 90px 0; }
  .landscape-collage { grid-template-columns: 1fr; }
  .image-tall { aspect-ratio: 1.1 / 1; margin: 0; }
  .image-wide { aspect-ratio: 1.3 / 1; }
  .land-note-grid { grid-template-columns: 1fr; gap: 56px; }
  .note-copy { grid-template-columns: .45fr 1fr; }
  .palette-figure, .palette-story-image { aspect-ratio: 1.45 / 1; }
  .private-release { min-height: 70svh; }
  .private-release-copy h2 { font-size: clamp(52px, 15vw, 82px); }

  .story-hero, .contact-hero { min-height: 76svh; }
  .story-hero-copy h1, .contact-hero-copy h1 { font-size: clamp(58px, 17vw, 86px); }
  .story-hero-copy > p:last-child, .contact-hero-copy > p:last-child { font-size: 14px; }
  .story-intro { padding: 90px 0; }
  .story-intro blockquote { font-size: clamp(46px, 13vw, 64px); }
  .story-chapter { grid-template-columns: 1fr; gap: 24px; }
  .story-chapter-reverse .chapter-image,
  .story-chapter-reverse .chapter-index,
  .story-chapter-reverse .chapter-copy { grid-column: auto; grid-row: auto; }
  .chapter-index { flex-direction: row; align-items: baseline; gap: 14px; }
  .chapter-image { grid-column: auto; }
  .palette-story { padding: 90px 0; }
  .palette-story-head { grid-template-columns: 1fr; gap: 24px; }
  .palette-story-head > p { justify-self: start; }
  .credits { padding: 90px 0; }
  .credits-table > div { grid-template-columns: .25fr 1fr; }
  .credits-table strong, .credits-table p { grid-column: 2; }
  .story-closing { padding: 90px 0; }
  .story-closing-grid { grid-template-columns: 1fr; gap: 38px; }

  .contact-section { padding: 90px 0; }
  .field-grid { grid-template-columns: 1fr; gap: 0; }
  .contact-aside { grid-template-columns: 1fr; }
  .contact-image { grid-column: auto; aspect-ratio: 1.25 / 1; }
  .contact-closing-grid { grid-template-columns: 1fr; gap: 18px; }
  .contact-closing-grid > p:not(.kicker), .contact-closing-grid .text-link { grid-column: auto; }

  .footer-grid { grid-template-columns: 1fr; gap: 42px; }
  .footer-bottom { margin-top: 55px; }
}

/* ========================================================================== 
   COMPACT EDITORIAL REVISION — shorter page, tighter grouping, fewer breaks
   ========================================================================== */
.compact-hero { min-height: 88svh; }
.compact-hero .hero-grid { padding-bottom: clamp(54px, 7vh, 84px); }
.compact-hero .hero-copy h1 { font-size: clamp(56px, 8.1vw, 116px); max-width: 10ch; }
.compact-hero .hero-lede { margin-top: 22px; max-width: 570px; }
.compact-hero .hero-actions { margin-top: 30px; }

.home-overview { padding: clamp(76px, 8vw, 112px) 0; }
.home-overview-grid { display: grid; grid-template-columns: .92fr 1.08fr; gap: clamp(48px, 8vw, 118px); align-items: start; }
.overview-statement h2 { margin-top: 14px; max-width: 10.5ch; font-size: clamp(46px, 5.5vw, 76px); line-height: .98; }
.overview-detail { padding-top: 1px; }
.overview-lede { max-width: 590px; color: var(--muted); font-size: 15px; }
.compact-principles { margin-top: 34px; border-top: 1px solid var(--line); }
.compact-principles > div { display: grid; grid-template-columns: 42px .8fr 1.2fr; gap: 20px; align-items: baseline; padding: 19px 0; border-bottom: 1px solid var(--line); }
.compact-principles span { color: var(--brass); font-size: 9px; letter-spacing: .14em; }
.compact-principles strong { font-family: var(--display); font-weight: 400; font-size: 24px; line-height: 1.05; }
.compact-principles p { color: var(--muted); font-size: 12.5px; line-height: 1.55; }

.home-land { padding: clamp(82px, 8vw, 118px) 0 0; overflow: hidden; }
.home-land-grid { display: grid; grid-template-columns: .66fr 1.34fr; gap: clamp(46px, 7vw, 100px); align-items: center; }
.home-land-copy { max-width: 430px; }
.home-land-copy h2 { margin-top: 14px; font-size: clamp(48px, 5.6vw, 80px); line-height: .96; }
.home-land-copy > p:not(.kicker) { margin-top: 22px; color: var(--muted-light); font-size: 14.5px; }
.home-land-copy .text-link { margin-top: 26px; }
.home-land-images { display: grid; grid-template-columns: 1.3fr .7fr; gap: 12px; align-items: end; }
.land-main-image { aspect-ratio: 1.42 / 1; }
.land-side-image { aspect-ratio: .78 / 1; }
.land-facts { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: clamp(48px, 6vw, 78px); border-top: 1px solid var(--line-light); }
.land-facts > div { min-height: 118px; padding: 24px 28px 26px 0; border-right: 1px solid var(--line-light); }
.land-facts > div + div { padding-left: 28px; }
.land-facts > div:last-child { border-right: 0; }
.land-facts span { display: block; color: var(--brass-soft); font-size: 8.5px; letter-spacing: .17em; text-transform: uppercase; }
.land-facts strong { display: block; margin-top: 12px; max-width: 28ch; font-family: var(--display); font-size: 24px; font-weight: 400; line-height: 1.08; }

.home-landscape { padding: clamp(78px, 8vw, 116px) 0; }
.home-landscape-grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: clamp(46px, 7vw, 100px); align-items: center; }
.compact-palette-image { aspect-ratio: 1.85 / 1; }
.landscape-summary h2 { margin-top: 12px; max-width: 11ch; font-size: clamp(44px, 4.9vw, 68px); line-height: .98; }
.landscape-summary > p:not(.kicker) { margin-top: 21px; color: #555b55; font-size: 14px; }
.team-compact { margin-top: 30px; border-top: 1px solid rgba(28,33,29,.18); }
.team-compact > div { display: grid; grid-template-columns: .55fr 1fr; gap: 18px; align-items: baseline; padding: 13px 0; border-bottom: 1px solid rgba(28,33,29,.18); }
.team-compact span { color: #777268; font-size: 8px; letter-spacing: .16em; text-transform: uppercase; }
.team-compact strong { font-family: var(--display); font-size: 21px; font-weight: 400; }

.compact-release { min-height: 58svh; }
.compact-release .private-release-copy { padding-block: clamp(70px, 8vw, 104px); }
.compact-release .private-release-copy h2 { max-width: 8.8ch; font-size: clamp(50px, 6vw, 86px); }
.compact-release .private-release-copy > p:not(.kicker) { margin-top: 18px; }
.compact-release .private-release-copy .button { margin-top: 26px; }

.compact-inner-hero { min-height: 64svh; }
.compact-inner-hero .story-hero-copy { padding-bottom: clamp(58px, 7vw, 86px); }
.compact-inner-hero .story-hero-copy h1 { font-size: clamp(54px, 7vw, 96px); max-width: 11ch; }

.story-editorial { padding: clamp(72px, 7vw, 104px) 0; }
.story-editorial-intro { display: grid; grid-template-columns: .36fr 1.35fr .55fr; gap: 36px; align-items: end; padding-bottom: clamp(58px, 6vw, 84px); }
.story-editorial-intro blockquote { font-size: clamp(38px, 4.8vw, 66px); line-height: 1; max-width: 16ch; }
.story-editorial-intro > p:last-child { color: var(--muted); font-size: 13px; }
.compact-story-chapters { border-top: 1px solid var(--line); }
.compact-story-row { display: grid; grid-template-columns: .82fr 1.18fr; gap: clamp(42px, 7vw, 98px); align-items: center; padding: clamp(46px, 5vw, 68px) 0; border-bottom: 1px solid var(--line); }
.compact-story-row.reverse .compact-story-copy { order: 2; }
.compact-story-row.reverse figure { order: 1; }
.compact-story-copy span { color: var(--brass); font-size: 8.5px; letter-spacing: .17em; text-transform: uppercase; }
.compact-story-copy h2 { margin-top: 11px; font-size: clamp(38px, 4.2vw, 60px); line-height: .98; max-width: 12ch; }
.compact-story-copy p { margin-top: 18px; color: var(--muted); font-size: 13.5px; max-width: 48ch; }
.compact-story-row figure { aspect-ratio: 1.65 / 1; }

.story-combined { padding: clamp(76px, 8vw, 112px) 0; }
.story-combined-grid { display: grid; grid-template-columns: 1.12fr .88fr; gap: clamp(48px, 7vw, 96px); align-items: center; }
.story-palette-image { aspect-ratio: 1.75 / 1; }
.story-combined-copy h2 { margin-top: 12px; max-width: 11ch; font-size: clamp(42px, 4.8vw, 66px); line-height: .98; }
.story-combined-copy > p:not(.kicker) { margin-top: 20px; color: #555b55; font-size: 14px; }
.story-team { margin-top: 28px; }
.compact-story-closing { padding: clamp(72px, 8vw, 108px) 0; }
.compact-story-closing .story-closing-grid { gap: clamp(48px, 7vw, 90px); }
.compact-story-closing h2 { font-size: clamp(46px, 5.4vw, 74px); max-width: 9ch; }

.compact-contact-hero { min-height: 58svh; }
.compact-contact-hero .contact-hero-copy { padding-bottom: clamp(54px, 6vw, 78px); }
.compact-contact-hero .contact-hero-copy h1 { font-size: clamp(52px, 6.5vw, 90px); max-width: 11ch; }
.contact-section { padding: clamp(74px, 8vw, 112px) 0; }
.enquiry-head { margin-bottom: 32px; }
.field { margin-bottom: 22px; }
.contact-card { padding: 22px 0 24px; }
.contact-image { margin-top: 24px; aspect-ratio: 1.35 / 1; }

.compact-footer { padding-top: clamp(58px, 6vw, 88px); }
.compact-footer .footer-bottom { margin-top: 48px; }

@media (max-width: 1050px) {
  .home-overview-grid, .home-land-grid, .home-landscape-grid, .story-combined-grid { grid-template-columns: 1fr; }
  .overview-statement h2, .home-land-copy, .landscape-summary, .story-combined-copy { max-width: 680px; }
  .home-land-images { margin-top: 4px; }
  .story-editorial-intro { grid-template-columns: 1fr 2fr; }
  .story-editorial-intro > p:last-child { grid-column: 2; }
}

@media (max-width: 760px) {
  .compact-hero { min-height: 82svh; }
  .home-overview, .home-landscape, .story-editorial, .story-combined, .contact-section { padding: 70px 0; }
  .home-overview-grid { gap: 34px; }
  .compact-principles > div { grid-template-columns: 30px 1fr; gap: 12px; }
  .compact-principles p { grid-column: 2; }
  .home-land { padding-top: 70px; }
  .home-land-grid { gap: 36px; }
  .home-land-images { grid-template-columns: 1fr; }
  .land-main-image, .land-side-image { aspect-ratio: 1.35 / 1; }
  .land-facts { grid-template-columns: 1fr; margin-top: 44px; }
  .land-facts > div, .land-facts > div + div { min-height: auto; padding: 18px 0; border-right: 0; border-bottom: 1px solid var(--line-light); }
  .land-facts > div:last-child { border-bottom: 0; }
  .compact-palette-image, .story-palette-image { aspect-ratio: 1.35 / 1; }
  .team-compact > div { grid-template-columns: .7fr 1fr; }
  .compact-release { min-height: 52svh; }
  .compact-inner-hero, .compact-contact-hero { min-height: 60svh; }
  .story-editorial-intro { grid-template-columns: 1fr; gap: 18px; padding-bottom: 46px; }
  .story-editorial-intro > p:last-child { grid-column: auto; }
  .compact-story-row, .compact-story-row.reverse { grid-template-columns: 1fr; gap: 26px; padding: 42px 0; }
  .compact-story-row.reverse .compact-story-copy, .compact-story-row.reverse figure { order: initial; }
  .compact-story-row figure { aspect-ratio: 1.4 / 1; }
  .compact-story-closing .story-closing-grid { grid-template-columns: 1fr; gap: 26px; }
}

/* ========================================================================== 
   SCENIC INTEGRATION REVISION — Midori landscape artwork, subtle motion
   ========================================================================== */

:root {
  --sage: #90ab83;
  --sage-soft: rgba(144,171,131,.28);
  --sage-deep: rgba(63,95,75,.36);
  --mist: rgba(244,241,233,.55);
  --ink-faint: rgba(28,33,29,.08);
}

.site-decorated {
  position: relative;
  background-image:
    radial-gradient(circle at 14% 11%, rgba(255,255,255,.5) 0, rgba(255,255,255,0) 28%),
    radial-gradient(circle at 83% 28%, rgba(169,184,149,.11) 0, rgba(169,184,149,0) 24%),
    linear-gradient(180deg, rgba(250,248,243,.32) 0, rgba(250,248,243,0) 30%);
}

.site-decorated::before {
  content: '';
  position: fixed;
  inset: auto -8vw 7vh auto;
  width: min(34vw, 420px);
  height: min(34vw, 420px);
  z-index: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 50% 50%, transparent 50%, rgba(167,137,95,.12) 50.8%, transparent 51.8%),
    radial-gradient(circle at 50% 50%, transparent 61%, rgba(167,137,95,.08) 61.8%, transparent 62.8%),
    radial-gradient(circle at 50% 50%, transparent 72%, rgba(167,137,95,.06) 72.8%, transparent 73.8%);
  opacity: .75;
}

main, .site-footer { position: relative; z-index: 1; }
.hero-home, .story-hero, .contact-hero, .private-release, .artful-shell, .site-footer { position: relative; isolation: isolate; }

.hero-ornaments,
.release-ornaments {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
}

.hero-grid, .story-hero-copy, .contact-hero-copy, .private-release-copy { position: relative; z-index: 3; }
.hero-note { position: relative; z-index: 3; }

.hero-hillscape {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: clamp(145px, 22vw, 260px);
  opacity: .96;
}
.inner-hills { height: clamp(120px, 18vw, 210px); opacity: .92; }

.ornament-birds,
.ornament-butterfly {
  position: absolute;
  color: rgba(247,242,232,.74);
  overflow: visible;
}

.ornament-birds {
  width: clamp(60px, 9vw, 124px);
  height: auto;
  opacity: .75;
  animation: glide 13s ease-in-out infinite;
}

.ornament-butterfly {
  width: clamp(36px, 4vw, 54px);
  height: auto;
  filter: drop-shadow(0 8px 20px rgba(0,0,0,.14));
  animation: flutter 7.5s ease-in-out infinite;
}

.birds-one { top: 16%; right: 16%; }
.birds-two { top: 28%; right: 8%; animation-duration: 16s; animation-delay: -3s; opacity: .58; }
.birds-inner { top: 22%; right: 9%; }
.birds-release { top: 22%; right: 10%; color: rgba(244,241,233,.62); }
.ornament-butterfly { left: 60%; top: 57%; }
.butterfly-inner { left: auto; right: 26%; top: 45%; }

.bush-cluster {
  position: absolute;
  width: clamp(200px, 24vw, 340px);
  height: clamp(120px, 15vw, 190px);
  filter: blur(.2px);
  opacity: .88;
}

.bush-cluster::before,
.bush-cluster::after {
  content: '';
  position: absolute;
  inset: auto 0 0 0;
  border-radius: 50% 50% 0 0;
}

.bush-cluster::before {
  height: 65%;
  background:
    radial-gradient(circle at 10% 70%, rgba(73,112,82,.85) 0 14%, transparent 15%),
    radial-gradient(circle at 26% 48%, rgba(98,138,93,.9) 0 16%, transparent 17%),
    radial-gradient(circle at 42% 67%, rgba(79,118,82,.9) 0 15%, transparent 16%),
    radial-gradient(circle at 58% 42%, rgba(121,161,112,.92) 0 16%, transparent 17%),
    radial-gradient(circle at 76% 68%, rgba(76,110,76,.9) 0 14%, transparent 15%),
    radial-gradient(circle at 91% 48%, rgba(124,171,119,.9) 0 14%, transparent 15%);
}

.bush-cluster::after {
  inset: auto 5% 0 5%;
  height: 78%;
  background:
    radial-gradient(circle at 12% 58%, rgba(169,195,145,.32) 0 12%, transparent 13%),
    radial-gradient(circle at 34% 34%, rgba(169,195,145,.24) 0 10%, transparent 11%),
    radial-gradient(circle at 66% 36%, rgba(169,195,145,.27) 0 10%, transparent 11%),
    radial-gradient(circle at 82% 58%, rgba(169,195,145,.25) 0 11%, transparent 12%);
}

.bush-left { left: -2%; bottom: 0; transform: scale(1.02); }
.bush-right { right: -4%; bottom: 0; transform: scale(.92); }
.bush-inner-left { left: -2%; bottom: 0; transform: scale(.82); opacity: .72; }
.bush-inner-right { right: -3%; bottom: 0; transform: scale(.76); opacity: .72; }
.bush-release { right: -2%; bottom: 0; transform: scale(.98); opacity: .76; }

@keyframes glide {
  0%, 100% { transform: translate3d(0,0,0); }
  50% { transform: translate3d(12px,-8px,0); }
}

@keyframes flutter {
  0%, 100% { transform: translate3d(0,0,0) rotate(-2deg); }
  30% { transform: translate3d(8px,-12px,0) rotate(5deg); }
  60% { transform: translate3d(-4px,-18px,0) rotate(-6deg); }
}

.artful-shell::before,
.artful-shell::after {
  content: '';
  position: absolute;
  pointer-events: none;
  z-index: 0;
}

.artful-shell > .wrap,
.story-closing .wrap,
.site-footer .wrap,
.contact-hero .wrap,
.story-hero .wrap { position: relative; z-index: 1; }

.overview-shell::before {
  right: 0;
  top: 0;
  width: min(42vw, 560px);
  height: 100%;
  background:
    radial-gradient(circle at 70% 14%, rgba(144,171,131,.18) 0 12%, transparent 13%),
    radial-gradient(circle at 62% 48%, rgba(144,171,131,.09) 0 14%, transparent 15%),
    radial-gradient(circle at 78% 74%, rgba(167,137,95,.08) 0 16%, transparent 17%),
    radial-gradient(circle at 82% 26%, transparent 57%, rgba(167,137,95,.14) 57.8%, transparent 58.8%),
    radial-gradient(circle at 82% 26%, transparent 70%, rgba(167,137,95,.08) 70.8%, transparent 71.8%);
  opacity: .9;
}

.overview-shell::after {
  left: calc(var(--edge) * 1.05);
  bottom: 28px;
  width: 58px;
  height: 58px;
  background: radial-gradient(circle at 50% 50%, rgba(144,171,131,.2) 0 42%, transparent 43%);
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60'%3E%3Cpath d='M30 29c-6-11-17-16-25-13-4 2-4 10 2 16 5 4 11 5 16 4-4 6-6 12-4 16 2 5 11 3 16-4 4-5 6-12 6-17 0 5 2 12 6 17 5 7 14 9 16 4 2-4 0-10-4-16 5 1 11 0 16-4 6-6 6-14 2-16-8-3-19 2-25 13 0-6-2-20-4-24-1-2-3-2-5 0-2 4-4 18-4 24z' fill='%23000'/%3E%3C/svg%3E") center / contain no-repeat;
  opacity: .5;
}

.land-shell::before {
  inset: 0 auto auto 0;
  width: min(48vw, 620px);
  height: 180px;
  background: linear-gradient(180deg, rgba(244,241,233,.04), transparent), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 700 220'%3E%3Cpath d='M-20 122c74-36 141-54 201-52 73 2 131 33 200 34 67 1 117-29 185-29 51 0 96 16 148 41' fill='none' stroke='rgba(243,239,227,0.24)' stroke-width='1.2'/%3E%3Cpath d='M-10 152c87-42 151-57 223-57 84 0 134 32 203 33 76 1 135-31 211-31 47 0 92 11 141 30' fill='none' stroke='rgba(243,239,227,0.18)' stroke-width='1.2'/%3E%3Cpath d='M0 183c79-37 152-49 221-47 76 2 128 28 198 30 67 1 126-23 194-22 41 0 82 8 127 21' fill='none' stroke='rgba(243,239,227,0.14)' stroke-width='1.2'/%3E%3C/svg%3E") left top / cover no-repeat;
  opacity: .85;
}

.land-shell::after {
  right: 4%;
  top: 12%;
  width: 48px;
  height: 48px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 60'%3E%3Cpath d='M6 34c8-9 16-12 24-8 8-9 16-12 24-8 8-9 16-12 24-8 8-8 16-10 24-6' fill='none' stroke='rgba(244,241,233,0.5)' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat;
  opacity: .7;
}

.landscape-shell::before {
  left: -2%;
  bottom: -10px;
  width: min(24vw, 280px);
  height: min(20vw, 220px);
  background:
    radial-gradient(circle at 20% 78%, rgba(102,135,95,.24) 0 18%, transparent 19%),
    radial-gradient(circle at 34% 58%, rgba(93,126,88,.3) 0 20%, transparent 21%),
    radial-gradient(circle at 54% 72%, rgba(124,160,111,.28) 0 18%, transparent 19%),
    radial-gradient(circle at 72% 45%, rgba(114,156,108,.26) 0 19%, transparent 20%),
    radial-gradient(circle at 90% 71%, rgba(85,118,82,.22) 0 17%, transparent 18%);
  opacity: .9;
}

.landscape-shell::after {
  right: 4%;
  top: 24px;
  width: 160px;
  height: 74px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 74'%3E%3Cpath d='M6 43c9-11 23-13 33-4' fill='none' stroke='rgba(114,136,103,0.44)' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M39 39c10-11 23-13 33-4' fill='none' stroke='rgba(114,136,103,0.44)' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M76 30c8-9 18-10 27-3' fill='none' stroke='rgba(114,136,103,0.36)' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M103 28c8-8 17-9 26-2' fill='none' stroke='rgba(114,136,103,0.36)' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat;
  opacity: .5;
}

.story-shell::before {
  left: 0;
  top: 22px;
  width: min(40vw, 460px);
  height: 120px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 580 140'%3E%3Cpath d='M-10 82c68-32 125-45 188-41 66 4 124 28 188 28 56 0 113-19 185-18' fill='none' stroke='rgba(167,137,95,0.18)' stroke-width='1.2'/%3E%3Cpath d='M-10 108c68-32 125-45 188-41 66 4 124 28 188 28 56 0 113-19 185-18' fill='none' stroke='rgba(167,137,95,0.11)' stroke-width='1.2'/%3E%3C/svg%3E") left top / cover no-repeat;
  opacity: .9;
}

.story-shell::after {
  right: 5%;
  bottom: 36px;
  width: 64px;
  height: 64px;
  background: radial-gradient(circle at 50% 50%, rgba(144,171,131,.14) 0 44%, transparent 45%);
  border-radius: 50%;
  opacity: .65;
}

.release-shell::before {
  content: '';
  position: absolute;
  inset: auto auto 0 0;
  width: min(38vw, 460px);
  height: min(16vw, 180px);
  background:
    radial-gradient(circle at 22% 82%, rgba(78,111,77,.3) 0 18%, transparent 19%),
    radial-gradient(circle at 42% 58%, rgba(103,135,96,.32) 0 18%, transparent 19%),
    radial-gradient(circle at 65% 76%, rgba(124,163,116,.34) 0 17%, transparent 18%),
    radial-gradient(circle at 86% 56%, rgba(84,120,82,.28) 0 16%, transparent 17%);
  opacity: .7;
  z-index: 1;
  pointer-events: none;
}

.contact-shell::before {
  right: 0;
  top: 0;
  width: min(42vw, 520px);
  height: 100%;
  background:
    radial-gradient(circle at 70% 14%, rgba(144,171,131,.13) 0 12%, transparent 13%),
    radial-gradient(circle at 58% 54%, rgba(167,137,95,.08) 0 14%, transparent 15%),
    radial-gradient(circle at 80% 70%, rgba(144,171,131,.14) 0 17%, transparent 18%),
    radial-gradient(circle at 81% 32%, transparent 61%, rgba(167,137,95,.11) 61.8%, transparent 62.8%);
  opacity: .9;
}

.contact-shell::after {
  left: 6%;
  bottom: 24px;
  width: 84px;
  height: 56px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 86 70'%3E%3Cpath d='M42 35C33 18 17 9 6 16C0 20 1 30 10 37C16 41 23 41 29 39' fill='rgba(167,137,95,0.18)'/%3E%3Cpath d='M44 35C53 18 69 9 80 16C86 20 85 30 76 37C70 41 63 41 57 39' fill='rgba(167,137,95,0.18)'/%3E%3Cpath d='M43 37C37 49 30 57 25 59C18 62 15 57 20 50C23 46 29 42 35 40' fill='rgba(114,156,108,0.22)'/%3E%3Cpath d='M43 37C49 49 56 57 61 59C68 62 71 57 66 50C63 46 57 42 51 40' fill='rgba(114,156,108,0.22)'/%3E%3C/svg%3E") center / contain no-repeat;
  opacity: .8;
}

.scenic-footer::before {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 140px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1600 160'%3E%3Cpath d='M0 109c108-16 208-46 316-46 100 0 190 31 289 31 112 0 196-38 303-37 98 1 190 31 286 31 148 0 271-48 406-40v72H0z' fill='rgba(59,80,65,0.74)'/%3E%3Cpath d='M0 128c101-17 190-33 291-33 103 0 196 26 297 26 106 0 187-27 290-27 113 0 201 28 302 28 145 0 263-35 420-29v67H0z' fill='rgba(96,120,98,0.46)'/%3E%3C/svg%3E") center bottom / cover no-repeat;
  opacity: .52;
  pointer-events: none;
}

.image-box {
  border-radius: 2px;
  box-shadow: 0 18px 48px rgba(24,30,25,.08);
}

.image-box::before {
  content: '';
  position: absolute;
  inset: 12px;
  border: 1px solid rgba(244,241,233,.24);
  z-index: 1;
  pointer-events: none;
}

.image-box::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(7,12,9,0) 50%, rgba(7,12,9,.22) 100%);
  z-index: 0;
  pointer-events: none;
}

.image-box img { position: relative; z-index: -1; }
.image-box figcaption { z-index: 2; }

.enquiry-panel,
.contact-aside,
.story-editorial-intro,
.compact-story-chapters,
.story-combined-grid,
.home-overview-grid,
.home-land-grid,
.home-landscape-grid,
.footer-grid { position: relative; z-index: 1; }

@media (max-width: 1050px) {
  .site-decorated::before { width: 280px; height: 280px; opacity: .55; }
  .overview-shell::before,
  .contact-shell::before { width: 48vw; }
  .landscape-shell::after { top: 12px; right: 10px; width: 110px; }
}

@media (max-width: 760px) {
  .site-decorated::before {
    right: -72px;
    bottom: 12vh;
    width: 210px;
    height: 210px;
    opacity: .45;
  }

  .hero-hillscape { height: 126px; }
  .inner-hills { height: 108px; }
  .birds-one { top: 18%; right: 11%; }
  .birds-two,
  .birds-inner,
  .land-shell::after,
  .landscape-shell::after,
  .story-shell::after,
  .contact-shell::after,
  .overview-shell::after { display: none; }
  .ornament-butterfly,
  .butterfly-inner { width: 34px; top: 61%; left: auto; right: 16%; }
  .bush-cluster { width: 180px; height: 100px; }
  .bush-left { left: -8%; }
  .bush-right, .bush-release { right: -10%; }
  .overview-shell::before,
  .contact-shell::before {
    width: 100%;
    height: 130px;
    top: auto;
    bottom: 0;
    opacity: .5;
  }
  .land-shell::before,
  .story-shell::before {
    width: 100%;
    opacity: .5;
  }
  .landscape-shell::before {
    width: 180px;
    height: 150px;
    opacity: .6;
  }
  .release-shell::before { width: 280px; height: 110px; opacity: .56; }
  .scenic-footer::before { height: 92px; opacity: .38; }
  .image-box { box-shadow: 0 10px 30px rgba(24,30,25,.08); }
  .image-box::before { inset: 10px; }
}
.image-box::after { z-index: 1; }
.image-box img { position: relative; z-index: 0; }

/* ========================================================================== 
   PROFESSIONAL BOTANICAL REFINEMENT — realistic tree, leaves, quieter details
   ========================================================================== */

/* Remove the earlier abstract scenic motifs and keep the decorative system cleaner. */
.site-decorated::before,
.overview-shell::before,
.overview-shell::after,
.land-shell::before,
.land-shell::after,
.landscape-shell::before,
.landscape-shell::after,
.story-shell::before,
.story-shell::after,
.contact-shell::before,
.contact-shell::after,
.release-shell::before,
.scenic-footer::before,
.bush-cluster {
  content: none !important;
  display: none !important;
  background: none !important;
}

.scenic-hero,
.scenic-hero-inner,
.release-shell,
.scenic-footer {
  overflow: hidden;
}

.tree-silhouette {
  position: absolute;
  left: -2vw;
  bottom: 0;
  width: min(32vw, 430px);
  height: min(82vh, 760px);
  z-index: 1;
  pointer-events: none;
  opacity: .62;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 420 760'%3E%3Cdefs%3E%3ClinearGradient id='t' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%231e3429' stop-opacity='.9'/%3E%3Cstop offset='1' stop-color='%230e1714' stop-opacity='.96'/%3E%3C/linearGradient%3E%3ClinearGradient id='c' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%23486e53' stop-opacity='.82'/%3E%3Cstop offset='1' stop-color='%23273d31' stop-opacity='.94'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg fill='url(%23c)'%3E%3Ccircle cx='152' cy='130' r='72'/%3E%3Ccircle cx='211' cy='108' r='88'/%3E%3Ccircle cx='280' cy='138' r='78'/%3E%3Ccircle cx='118' cy='206' r='82'/%3E%3Ccircle cx='205' cy='195' r='106'/%3E%3Ccircle cx='306' cy='222' r='95'/%3E%3Ccircle cx='168' cy='286' r='96'/%3E%3Ccircle cx='272' cy='312' r='110'/%3E%3Ccircle cx='118' cy='356' r='74'/%3E%3Ccircle cx='220' cy='382' r='86'/%3E%3C/g%3E%3Cg fill='url(%23t)'%3E%3Cpath d='M186 760c7-120 22-210 40-304 11-56 30-101 41-160 4-19 7-43 5-67-1-14 19-18 24-5 8 23 19 53 18 84-1 30-10 59-20 90-17 56-42 107-53 165-14 73-22 131-29 197H186z'/%3E%3Cpath d='M228 340c20-32 49-66 79-82 10-5 19 8 11 16-23 23-48 46-67 74l-23-8z'/%3E%3Cpath d='M214 315c-22-36-56-74-92-90-10-4-18 9-9 17 27 24 55 52 79 86l22-13z'/%3E%3Cpath d='M225 415c26-29 54-50 83-66 10-5 18 8 10 15-22 18-46 38-69 62l-24-11z'/%3E%3Cpath d='M215 466c-24-28-53-48-82-60-10-4-17 9-8 16 22 17 44 34 67 57l23-13z'/%3E%3C/g%3E%3C/svg%3E") left bottom / contain no-repeat;
  filter: drop-shadow(0 24px 50px rgba(0,0,0,.18));
}

.tree-hero-left { opacity: .72; }
.tree-inner-left {
  width: min(24vw, 300px);
  height: min(66vh, 520px);
  opacity: .42;
}

.scenic-hero .hero-copy,
.scenic-hero-inner .story-hero-copy,
.scenic-hero-inner .contact-hero-copy {
  margin-left: clamp(42px, 5vw, 88px);
}

.hero-hillscape {
  opacity: .88;
}

.ornament-birds {
  opacity: .7;
}

.ornament-butterfly,
.butterfly-one,
.butterfly-two,
.butterfly-release,
.butterfly-story,
.butterfly-contact,
.butterfly-inner {
  width: clamp(34px, 3.6vw, 48px);
  height: auto;
  animation: flutter 8s ease-in-out infinite;
}

.butterfly-one { left: 57%; top: 53%; }
.butterfly-two { left: 68%; top: 45%; animation-duration: 9.4s; animation-delay: -2s; opacity: .76; }
.butterfly-release { left: auto; right: 18%; top: 34%; animation-duration: 10s; opacity: .72; }
.butterfly-story { left: auto; right: 22%; top: 47%; animation-duration: 8.6s; opacity: .72; }
.butterfly-inner { left: auto; right: 26%; top: 43%; opacity: .7; }
.butterfly-contact { left: auto; right: 16%; top: 32%; animation-duration: 9.2s; opacity: .68; }

.leaf-swarm {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
}

.leaf {
  position: absolute;
  width: 22px;
  height: 28px;
  opacity: .7;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 52'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%23b8c992'/%3E%3Cstop offset='.55' stop-color='%2383a869'/%3E%3Cstop offset='1' stop-color='%23496f50'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M33 4C20 8 8 18 6 31c-2 10 4 16 12 16 15 0 21-18 20-43-1-1-3-1-5 0z' fill='url(%23g)'/%3E%3Cpath d='M12 38c7-9 13-18 18-28' stroke='rgba(244,241,233,0.55)' stroke-width='1.7' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat;
  filter: drop-shadow(0 8px 16px rgba(17,24,20,.14));
  animation: leafDrift 12s linear infinite;
}

.leaf::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 80%;
  width: 1px;
  height: 12px;
  background: rgba(244,241,233,.25);
  transform: translateX(-50%) rotate(12deg);
}

.leaf-a { left: 10%; top: 16%; transform: rotate(-18deg) scale(1.02); animation-delay: -1s; }
.leaf-b { left: 17%; top: 22%; transform: rotate(14deg) scale(.92); animation-delay: -4s; }
.leaf-c { left: 22%; top: 9%; transform: rotate(22deg) scale(.84); animation-delay: -6.5s; }
.leaf-d { left: 28%; top: 17%; transform: rotate(-10deg) scale(.76); animation-delay: -2.4s; }
.leaf-e { left: 73%; top: 18%; transform: rotate(18deg) scale(.86); animation-delay: -3.6s; }
.leaf-f { left: 78%; top: 11%; transform: rotate(-16deg) scale(1); animation-delay: -7.4s; }
.leaf-g { left: 84%; top: 24%; transform: rotate(9deg) scale(.72); animation-delay: -5.2s; }
.leaf-h { left: 12%; top: 28%; transform: rotate(-26deg) scale(.88); animation-delay: -4.8s; }
.leaf-i { left: 64%; top: 16%; transform: rotate(24deg) scale(.82); animation-delay: -5.4s; }
.leaf-j { left: 71%; top: 27%; transform: rotate(-8deg) scale(.68); animation-delay: -2.8s; }
.leaf-k { left: 88%; top: 18%; transform: rotate(15deg) scale(.72); animation-delay: -8.1s; }

.hero-leaf-swarm .leaf { opacity: .72; }
.inner-leaf-swarm .leaf,
.release-leaf-swarm .leaf { opacity: .56; width: 18px; height: 24px; }
.contact-leaf-swarm .leaf { opacity: .6; }

@keyframes leafDrift {
  0% { transform: translate3d(0,0,0) rotate(0deg); }
  25% { transform: translate3d(10px,12px,0) rotate(8deg); }
  50% { transform: translate3d(-4px,26px,0) rotate(-6deg); }
  75% { transform: translate3d(8px,40px,0) rotate(12deg); }
  100% { transform: translate3d(-2px,58px,0) rotate(-4deg); }
}

@keyframes flutter {
  0%, 100% { transform: translate3d(0,0,0) rotate(-2deg) scale(1); }
  30% { transform: translate3d(8px,-10px,0) rotate(5deg) scale(1.03); }
  60% { transform: translate3d(-4px,-16px,0) rotate(-6deg) scale(.98); }
}

.hero-wash {
  background: linear-gradient(90deg, rgba(8,13,10,.74) 0%, rgba(8,13,10,.38) 47%, rgba(8,13,10,.12) 72%), linear-gradient(0deg, rgba(8,13,10,.6) 0%, transparent 42%);
}

.home-overview,
.story-editorial,
.contact-section,
.home-landscape {
  position: relative;
}

.home-overview::before,
.story-editorial::before,
.contact-section::before,
.home-landscape::before {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(255,255,255,.18), transparent 18%, transparent 82%, rgba(93,126,88,.04));
}

.image-box {
  box-shadow: 0 16px 42px rgba(22,28,24,.08);
}

.image-box::before {
  border-color: rgba(244,241,233,.26);
}

.site-footer {
  background: linear-gradient(180deg, #121c17 0%, #0e1512 100%);
}

@media (max-width: 1050px) {
  .tree-silhouette {
    width: min(34vw, 320px);
    height: min(64vh, 520px);
    left: -4vw;
    opacity: .5;
  }
  .scenic-hero .hero-copy,
  .scenic-hero-inner .story-hero-copy,
  .scenic-hero-inner .contact-hero-copy {
    margin-left: clamp(18px, 3vw, 36px);
  }
  .leaf-e, .leaf-f, .leaf-g, .leaf-k { display: none; }
}

@media (max-width: 760px) {
  .tree-silhouette {
    width: 180px;
    height: 280px;
    left: -28px;
    opacity: .35;
  }
  .scenic-hero .hero-copy,
  .scenic-hero-inner .story-hero-copy,
  .scenic-hero-inner .contact-hero-copy {
    margin-left: 0;
  }
  .ornament-birds,
  .leaf-swarm .leaf-d,
  .leaf-swarm .leaf-f,
  .leaf-swarm .leaf-g,
  .leaf-swarm .leaf-j,
  .leaf-swarm .leaf-k {
    display: none;
  }
  .leaf { width: 16px; height: 22px; }
  .leaf-a { left: 18%; top: 19%; }
  .leaf-b { left: 12%; top: 27%; }
  .leaf-c { left: 72%; top: 14%; }
  .leaf-e { left: 80%; top: 22%; display: block; }
  .butterfly-one { left: auto; right: 18%; top: 60%; }
  .butterfly-two { left: auto; right: 9%; top: 48%; display: block; }
  .butterfly-story,
  .butterfly-contact,
  .butterfly-release,
  .butterfly-inner { right: 12%; }
}


/* ========================================================================== 
   MOBILE + MOTION OPTIMIZATION REVISION
   ========================================================================== */

.tree-silhouette {
  left: max(-56px, -4vw);
  bottom: 0;
  width: min(30vw, 410px);
  height: min(80vh, 720px);
  opacity: .78;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%20440%20760%27%3E%0A%20%20%3Cdefs%3E%0A%20%20%20%20%3ClinearGradient%20id%3D%27canopy%27%20x1%3D%270%27%20y1%3D%270%27%20x2%3D%271%27%20y2%3D%271%27%3E%0A%20%20%20%20%20%20%3Cstop%20offset%3D%270%27%20stop-color%3D%27%23678a67%27/%3E%0A%20%20%20%20%20%20%3Cstop%20offset%3D%270.55%27%20stop-color%3D%27%233f5d45%27/%3E%0A%20%20%20%20%20%20%3Cstop%20offset%3D%271%27%20stop-color%3D%27%23223228%27/%3E%0A%20%20%20%20%3C/linearGradient%3E%0A%20%20%20%20%3ClinearGradient%20id%3D%27trunk%27%20x1%3D%270%27%20y1%3D%270%27%20x2%3D%270%27%20y2%3D%271%27%3E%0A%20%20%20%20%20%20%3Cstop%20offset%3D%270%27%20stop-color%3D%27%232b2f24%27/%3E%0A%20%20%20%20%20%20%3Cstop%20offset%3D%271%27%20stop-color%3D%27%23171712%27/%3E%0A%20%20%20%20%3C/linearGradient%3E%0A%20%20%3C/defs%3E%0A%20%20%3Cellipse%20cx%3D%27215%27%20cy%3D%27738%27%20rx%3D%27105%27%20ry%3D%2718%27%20fill%3D%27rgba%280%2C0%2C0%2C0.12%29%27/%3E%0A%20%20%3Cg%20fill%3D%27url%28%23canopy%29%27%3E%0A%20%20%20%20%3Ccircle%20cx%3D%27132%27%20cy%3D%27145%27%20r%3D%2778%27/%3E%0A%20%20%20%20%3Ccircle%20cx%3D%27212%27%20cy%3D%27110%27%20r%3D%27100%27/%3E%0A%20%20%20%20%3Ccircle%20cx%3D%27298%27%20cy%3D%27146%27%20r%3D%2782%27/%3E%0A%20%20%20%20%3Ccircle%20cx%3D%27106%27%20cy%3D%27238%27%20r%3D%2788%27/%3E%0A%20%20%20%20%3Ccircle%20cx%3D%27210%27%20cy%3D%27225%27%20r%3D%27120%27/%3E%0A%20%20%20%20%3Ccircle%20cx%3D%27323%27%20cy%3D%27248%27%20r%3D%2790%27/%3E%0A%20%20%20%20%3Ccircle%20cx%3D%27146%27%20cy%3D%27338%27%20r%3D%2784%27/%3E%0A%20%20%20%20%3Ccircle%20cx%3D%27248%27%20cy%3D%27348%27%20r%3D%27108%27/%3E%0A%20%20%20%20%3Ccircle%20cx%3D%27324%27%20cy%3D%27386%27%20r%3D%2776%27/%3E%0A%20%20%20%20%3Ccircle%20cx%3D%27184%27%20cy%3D%27430%27%20r%3D%2782%27/%3E%0A%20%20%3C/g%3E%0A%20%20%3Cg%20fill%3D%27url%28%23trunk%29%27%3E%0A%20%20%20%20%3Cpath%20d%3D%27M191%20760c7-96%2018-164%2034-257%2013-75%2030-137%2042-205%208-47%2010-98-5-137-4-12%2013-18%2021-7%2015%2021%2022%2064%2021%20109-2%2056-16%20103-31%20151-20%2068-38%20140-48%20218-13%20102-16%20112-20%20128H191z%27/%3E%0A%20%20%20%20%3Cpath%20d%3D%27M217%20324c16-34%2044-73%2076-96%2010-8%2024%204%2017%2015-20%2032-43%2059-68%2087l-25-6z%27/%3E%0A%20%20%20%20%3Cpath%20d%3D%27M201%20300c-20-38-48-72-82-96-10-7-22%204-14%2015%2024%2031%2048%2060%2072%2090l24-9z%27/%3E%0A%20%20%20%20%3Cpath%20d%3D%27M222%20418c22-28%2054-53%2088-71%2011-6%2021%207%2012%2016-24%2024-51%2046-76%2068l-24-13z%27/%3E%0A%20%20%20%20%3Cpath%20d%3D%27M207%20458c-22-27-51-49-82-64-11-5-19%209-9%2017%2022%2018%2046%2038%2067%2062l24-15z%27/%3E%0A%20%20%3C/g%3E%0A%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: contain;
  filter: drop-shadow(0 18px 44px rgba(0,0,0,.16));
}

.tree-silhouette::after {
  content: '';
  position: absolute;
  left: 52px;
  right: 34px;
  bottom: 8px;
  height: 24px;
  border-radius: 999px;
  background: radial-gradient(circle at center, rgba(0,0,0,.28) 0, rgba(0,0,0,.08) 52%, transparent 74%);
  filter: blur(12px);
  opacity: .35;
}

.tree-hero-left { opacity: .82; }
.tree-inner-left { width: min(20vw, 250px); height: min(56vh, 430px); opacity: .52; }

.ornament-birds,
.ornament-butterfly,
.leaf {
  will-change: transform, opacity;
  backface-visibility: hidden;
  transform-style: preserve-3d;
}

.ornament-butterfly,
.butterfly-one,
.butterfly-two,
.butterfly-release,
.butterfly-story,
.butterfly-contact,
.butterfly-inner {
  animation-timing-function: cubic-bezier(.34,.03,.2,.99);
}

.butterfly-one { animation-name: butterflyFloatOne; animation-duration: 11s; }
.butterfly-two { animation-name: butterflyFloatTwo; animation-duration: 13s; }
.butterfly-release { animation-name: butterflyFloatThree; animation-duration: 12s; }
.butterfly-story { animation-name: butterflyFloatFour; animation-duration: 11.5s; }
.butterfly-contact { animation-name: butterflyFloatFive; animation-duration: 12.6s; }
.butterfly-inner { animation-name: butterflyFloatSix; animation-duration: 10.8s; }

@keyframes butterflyFloatOne {
  0%   { transform: translate3d(0,0,0) rotate(-8deg) scale(.98); opacity: .72; }
  18%  { transform: translate3d(10px,-12px,0) rotate(4deg) scale(1.02); opacity: .88; }
  42%  { transform: translate3d(24px,-2px,0) rotate(-3deg) scale(1); }
  68%  { transform: translate3d(16px,9px,0) rotate(6deg) scale(.98); }
  100% { transform: translate3d(0,0,0) rotate(-8deg) scale(.98); opacity: .72; }
}
@keyframes butterflyFloatTwo {
  0%   { transform: translate3d(0,0,0) rotate(6deg) scale(.96); opacity: .62; }
  25%  { transform: translate3d(-8px,-14px,0) rotate(-5deg) scale(1.02); opacity: .82; }
  52%  { transform: translate3d(8px,-20px,0) rotate(4deg) scale(.99); }
  76%  { transform: translate3d(18px,-6px,0) rotate(-3deg) scale(1.01); }
  100% { transform: translate3d(0,0,0) rotate(6deg) scale(.96); opacity: .62; }
}
@keyframes butterflyFloatThree {
  0%   { transform: translate3d(0,0,0) rotate(-4deg) scale(.97); opacity: .66; }
  20%  { transform: translate3d(12px,-10px,0) rotate(5deg) scale(1.01); opacity: .82; }
  48%  { transform: translate3d(4px,-22px,0) rotate(-6deg) scale(.99); }
  74%  { transform: translate3d(-8px,-6px,0) rotate(3deg) scale(1); }
  100% { transform: translate3d(0,0,0) rotate(-4deg) scale(.97); opacity: .66; }
}
@keyframes butterflyFloatFour {
  0%   { transform: translate3d(0,0,0) rotate(5deg) scale(.98); opacity: .66; }
  24%  { transform: translate3d(-6px,-12px,0) rotate(-4deg) scale(1.02); opacity: .8; }
  54%  { transform: translate3d(14px,-18px,0) rotate(6deg) scale(1); }
  80%  { transform: translate3d(18px,-4px,0) rotate(-2deg) scale(.98); }
  100% { transform: translate3d(0,0,0) rotate(5deg) scale(.98); opacity: .66; }
}
@keyframes butterflyFloatFive {
  0%   { transform: translate3d(0,0,0) rotate(-6deg) scale(.95); opacity: .6; }
  22%  { transform: translate3d(7px,-10px,0) rotate(5deg) scale(1.01); opacity: .78; }
  46%  { transform: translate3d(-6px,-24px,0) rotate(-3deg) scale(1); }
  72%  { transform: translate3d(10px,-14px,0) rotate(4deg) scale(.98); }
  100% { transform: translate3d(0,0,0) rotate(-6deg) scale(.95); opacity: .6; }
}
@keyframes butterflyFloatSix {
  0%   { transform: translate3d(0,0,0) rotate(4deg) scale(.98); opacity: .64; }
  20%  { transform: translate3d(10px,-8px,0) rotate(-5deg) scale(1.01); opacity: .8; }
  44%  { transform: translate3d(22px,-16px,0) rotate(4deg) scale(1); }
  72%  { transform: translate3d(6px,-26px,0) rotate(-4deg) scale(.98); }
  100% { transform: translate3d(0,0,0) rotate(4deg) scale(.98); opacity: .64; }
}

.leaf {
  --rot: -12deg;
  --scale: 1;
  --dur: 15s;
  --x1: 8px;
  --y1: 14px;
  --x2: 18px;
  --y2: 32px;
  --x3: 4px;
  --y3: 48px;
  --x4: -10px;
  --y4: 72px;
  --alpha: .72;
  opacity: 0;
  transform-origin: 50% 20%;
  animation: leafNatural var(--dur) cubic-bezier(.32,.08,.22,.98) infinite;
}

@keyframes leafNatural {
  0%   { transform: translate3d(0,0,0) rotate(var(--rot)) scale(var(--scale)); opacity: 0; }
  8%   { opacity: var(--alpha); }
  28%  { transform: translate3d(var(--x1), var(--y1), 0) rotate(calc(var(--rot) + 10deg)) scale(var(--scale)); }
  54%  { transform: translate3d(var(--x2), var(--y2), 0) rotate(calc(var(--rot) - 8deg)) scale(var(--scale)); }
  78%  { transform: translate3d(var(--x3), var(--y3), 0) rotate(calc(var(--rot) + 4deg)) scale(var(--scale)); opacity: calc(var(--alpha) * .92); }
  100% { transform: translate3d(var(--x4), var(--y4), 0) rotate(calc(var(--rot) + 12deg)) scale(var(--scale)); opacity: 0; }
}

.leaf-a { left: 7%; top: 5%; --rot: -26deg; --scale: 1.02; --dur: 17.2s; --x1: 14px; --y1: 18px; --x2: 26px; --y2: 38px; --x3: 10px; --y3: 58px; --x4: -8px; --y4: 84px; }
.leaf-b { left: 12%; top: 13%; --rot: 12deg; --scale: .92; --dur: 15.8s; --x1: 10px; --y1: 14px; --x2: 22px; --y2: 30px; --x3: 8px; --y3: 44px; --x4: -12px; --y4: 68px; }
.leaf-c { left: 18%; top: 3%; --rot: 20deg; --scale: .86; --dur: 18.4s; --x1: 14px; --y1: 16px; --x2: 30px; --y2: 36px; --x3: 14px; --y3: 50px; --x4: -6px; --y4: 74px; }
.leaf-d { left: 24%; top: 10%; --rot: -8deg; --scale: .78; --dur: 16.6s; --x1: 8px; --y1: 12px; --x2: 18px; --y2: 26px; --x3: 6px; --y3: 42px; --x4: -10px; --y4: 62px; }
.leaf-e { left: 69%; top: 10%; --rot: 18deg; --scale: .86; --dur: 16.8s; --x1: -6px; --y1: 12px; --x2: 8px; --y2: 28px; --x3: 18px; --y3: 46px; --x4: 4px; --y4: 66px; }
.leaf-f { left: 76%; top: 4%; --rot: -16deg; --scale: 1; --dur: 19.2s; --x1: -8px; --y1: 18px; --x2: 10px; --y2: 40px; --x3: 20px; --y3: 58px; --x4: 8px; --y4: 78px; }
.leaf-g { left: 83%; top: 14%; --rot: 10deg; --scale: .74; --dur: 14.6s; --x1: -10px; --y1: 14px; --x2: 4px; --y2: 28px; --x3: 12px; --y3: 40px; --x4: -4px; --y4: 60px; }
.leaf-h { left: 11%; top: 21%; --rot: -22deg; --scale: .88; --dur: 16.2s; --x1: 12px; --y1: 12px; --x2: 20px; --y2: 26px; --x3: 6px; --y3: 42px; --x4: -8px; --y4: 64px; }
.leaf-i { left: 62%; top: 9%; --rot: 24deg; --scale: .82; --dur: 17s; --x1: -8px; --y1: 14px; --x2: 14px; --y2: 32px; --x3: 20px; --y3: 52px; --x4: 4px; --y4: 72px; }
.leaf-j { left: 70%; top: 18%; --rot: -6deg; --scale: .68; --dur: 15.2s; --x1: -4px; --y1: 10px; --x2: 8px; --y2: 24px; --x3: 16px; --y3: 38px; --x4: 0px; --y4: 56px; }
.leaf-k { left: 87%; top: 11%; --rot: 14deg; --scale: .72; --dur: 18.8s; --x1: -10px; --y1: 16px; --x2: 4px; --y2: 34px; --x3: 12px; --y3: 54px; --x4: -2px; --y4: 76px; }

.hero-leaf-swarm .leaf { --alpha: .72; }
.inner-leaf-swarm .leaf,
.release-leaf-swarm .leaf { width: 18px; height: 24px; --alpha: .52; }
.contact-leaf-swarm .leaf { --alpha: .58; }

@media (prefers-reduced-motion: reduce) {
  .ornament-birds,
  .ornament-butterfly,
  .leaf { animation: none !important; opacity: .78; }
}

@media (max-width: 900px) {
  .private-bar {
    padding-inline: 14px;
    gap: 8px;
    letter-spacing: .14em;
  }

  .hero-copy,
  .story-hero-copy,
  .contact-hero-copy {
    max-width: min(100%, 88vw);
  }

  .home-overview-grid,
  .home-land-grid,
  .home-landscape-grid,
  .story-combined-grid,
  .contact-layout {
    gap: 32px;
  }
}

@media (max-width: 760px) {
  .private-bar {
    height: 30px;
    padding-inline: 10px;
    gap: 6px;
    font-size: 7.8px;
    letter-spacing: .1em;
  }

  .site-nav { padding-inline: 16px; }
  .mobile-menu { padding: 92px 20px 42px; gap: 18px; }
  .mobile-menu a { font-size: clamp(32px, 9vw, 48px); }

  .hero-grid,
  .story-hero-copy,
  .contact-hero-copy {
    padding-top: calc(var(--bar-h) + var(--nav-h) + 44px);
  }

  .hero-copy,
  .story-hero-copy,
  .contact-hero-copy {
    max-width: 100%;
  }

  .hero-copy h1,
  .story-hero-copy h1,
  .contact-hero-copy h1 {
    max-width: 9.5ch;
    line-height: .92;
  }

  .hero-actions { width: 100%; }
  .button { width: 100%; max-width: 320px; min-height: 48px; }
  .text-link { font-size: 9px; }

  .tree-silhouette {
    width: 124px;
    height: 236px;
    left: -30px;
    opacity: .26;
  }
  .tree-silhouette::after { left: 22px; right: 18px; bottom: 2px; height: 16px; opacity: .2; }

  .ornament-birds { display: none; }
  .hero-leaf-swarm .leaf:nth-child(n+5),
  .inner-leaf-swarm .leaf:nth-child(n+4),
  .release-leaf-swarm .leaf:nth-child(n+3) { display: none; }

  .leaf { width: 16px; height: 22px; }
  .leaf-a { left: 14%; top: 14%; }
  .leaf-b { left: 18%; top: 22%; }
  .leaf-c { left: 72%; top: 12%; }
  .leaf-e { left: 84%; top: 18%; display: block; }

  .butterfly-one { left: auto; right: 18%; top: 58%; }
  .butterfly-two { left: auto; right: 10%; top: 42%; display: block; }
  .butterfly-story,
  .butterfly-contact,
  .butterfly-release,
  .butterfly-inner { right: 10%; }

  .home-overview, .home-landscape, .story-editorial, .story-combined, .contact-section { padding: 64px 0; }
  .home-land { padding-top: 64px; }
  .land-facts > div { padding: 16px 0; }

  .field input, .field select, .field textarea { font-size: 16px; }
  .contact-card h3 { font-size: 26px; }
}

@media (max-width: 420px) {
  .private-bar .hide-mobile { display: none; }
  .site-nav { min-height: 70px; }
  .brand { width: 90px; }
  .button { max-width: 100%; }
  .hero-copy h1,
  .story-hero-copy h1,
  .contact-hero-copy h1 { font-size: clamp(48px, 15vw, 72px); }
  .hero-lede,
  .story-hero-copy > p:last-child,
  .contact-hero-copy > p:last-child { font-size: 13.5px; line-height: 1.6; }
}


/* ========================================================================== 
   PROFESSIONAL NATURE CONTINUATION REVISION
   ========================================================================== */

/* Remove previous decorative system that felt confusing. */
.hero-ornaments .tree-silhouette,
.hero-ornaments .leaf-swarm,
.hero-ornaments .ornament-butterfly,
.release-ornaments .leaf-swarm,
.release-ornaments .ornament-butterfly,
.scenic-footer::before,
.tree-silhouette,
.leaf-swarm,
.ornament-butterfly {
  display: none !important;
}

.hero-hillscape { opacity: .56; }
.inner-hills { opacity: .48; }
.site-footer { background: linear-gradient(180deg, #121c17 0%, #0f1713 100%); }

.scroll-tree-ribbon {
  position: fixed;
  left: -20px;
  bottom: -8px;
  width: min(27vw, 320px);
  height: 100vh;
  z-index: 0;
  pointer-events: none;
  opacity: .46;
  background: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%20420%201160%22%3E%0A%3Cdefs%3E%0A%3ClinearGradient%20id%3D%22leaf%22%20x1%3D%220%22%20y1%3D%220%22%20x2%3D%221%22%20y2%3D%221%22%3E%0A%3Cstop%20offset%3D%220%22%20stop-color%3D%22%23769a72%22/%3E%0A%3Cstop%20offset%3D%220.55%22%20stop-color%3D%22%234e7252%22/%3E%0A%3Cstop%20offset%3D%221%22%20stop-color%3D%22%232b3f31%22/%3E%0A%3C/linearGradient%3E%0A%3ClinearGradient%20id%3D%22bark%22%20x1%3D%220%22%20y1%3D%220%22%20x2%3D%220%22%20y2%3D%221%22%3E%0A%3Cstop%20offset%3D%220%22%20stop-color%3D%22%233a352a%22/%3E%0A%3Cstop%20offset%3D%221%22%20stop-color%3D%22%231d1a15%22/%3E%0A%3C/linearGradient%3E%0A%3C/defs%3E%0A%3Cg%20opacity%3D%220.95%22%3E%0A%3Cellipse%20cx%3D%22165%22%20cy%3D%221128%22%20rx%3D%2288%22%20ry%3D%2216%22%20fill%3D%22rgba%280%2C0%2C0%2C0.10%29%22/%3E%0A%3Cpath%20d%3D%22M155%201160c2-110%208-205%2018-298%2014-136%2025-222%2040-340%2014-108%2010-158-8-211-4-12%209-19%2018-12%2029%2024%2048%2083%2048%20158%200%2059-13%20123-30%20197-26%20111-47%20219-57%20337-8%2091-10%20121-11%20169H155z%22%20fill%3D%22url%28%23bark%29%22/%3E%0A%3Cpath%20d%3D%22M196%20530c18-42%2049-95%2090-140%209-10%2023%202%2017%2013-24%2048-57%2088-83%20132l-24-5z%22%20fill%3D%22url%28%23bark%29%22/%3E%0A%3Cpath%20d%3D%22M182%20480c-17-39-43-78-84-126-9-10-24%200-17%2013%2025%2049%2053%2088%2077%20129l24-16z%22%20fill%3D%22url%28%23bark%29%22/%3E%0A%3Cpath%20d%3D%22M205%20704c18-34%2045-72%2081-103%2010-8%2023%204%2016%2014-24%2035-49%2065-73%2097l-24-8z%22%20fill%3D%22url%28%23bark%29%22/%3E%0A%3Cpath%20d%3D%22M189%20752c-20-33-47-65-77-90-10-9-24%202-17%2013%2020%2031%2046%2060%2070%2087l24-10z%22%20fill%3D%22url%28%23bark%29%22/%3E%0A%3Cg%20fill%3D%22url%28%23leaf%29%22%3E%0A%3Ccircle%20cx%3D%22134%22%20cy%3D%22165%22%20r%3D%2272%22/%3E%0A%3Ccircle%20cx%3D%22214%22%20cy%3D%22126%22%20r%3D%2292%22/%3E%0A%3Ccircle%20cx%3D%22289%22%20cy%3D%22167%22%20r%3D%2276%22/%3E%0A%3Ccircle%20cx%3D%22105%22%20cy%3D%22262%22%20r%3D%2286%22/%3E%0A%3Ccircle%20cx%3D%22207%22%20cy%3D%22247%22%20r%3D%22114%22/%3E%0A%3Ccircle%20cx%3D%22311%22%20cy%3D%22278%22%20r%3D%2288%22/%3E%0A%3Ccircle%20cx%3D%22139%22%20cy%3D%22374%22%20r%3D%2288%22/%3E%0A%3Ccircle%20cx%3D%22241%22%20cy%3D%22387%22%20r%3D%22110%22/%3E%0A%3Ccircle%20cx%3D%22312%22%20cy%3D%22430%22%20r%3D%2270%22/%3E%0A%3Ccircle%20cx%3D%22171%22%20cy%3D%22482%22%20r%3D%2280%22/%3E%0A%3Ccircle%20cx%3D%22271%22%20cy%3D%22496%22%20r%3D%2292%22/%3E%0A%3Ccircle%20cx%3D%22119%22%20cy%3D%22520%22%20r%3D%2258%22/%3E%0A%3C/g%3E%0A%3C/g%3E%0A%3C/svg%3E") left bottom / contain no-repeat;
  filter: drop-shadow(0 20px 40px rgba(0,0,0,.08));
}

.nature-layer {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  overflow: hidden;
}

.nature-butterfly,
.nature-leaf {
  position: absolute;
  display: block;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  will-change: transform, opacity;
  backface-visibility: hidden;
  transform-style: preserve-3d;
}

.nature-butterfly {
  width: 46px;
  height: 36px;
  opacity: .78;
  filter: drop-shadow(0 10px 18px rgba(15,20,16,.14));
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%20120%2096%22%3E%0A%3Cdefs%3E%0A%3ClinearGradient%20id%3D%22u%22%20x1%3D%220%22%20y1%3D%220%22%20x2%3D%221%22%20y2%3D%221%22%3E%0A%3Cstop%20offset%3D%220%22%20stop-color%3D%22%23d9d0ad%22/%3E%0A%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23b5a170%22/%3E%0A%3C/linearGradient%3E%0A%3ClinearGradient%20id%3D%22l%22%20x1%3D%220%22%20y1%3D%220%22%20x2%3D%221%22%20y2%3D%221%22%3E%0A%3Cstop%20offset%3D%220%22%20stop-color%3D%22%239eb88f%22/%3E%0A%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23678a67%22/%3E%0A%3C/linearGradient%3E%0A%3C/defs%3E%0A%3Cg%20opacity%3D%220.95%22%3E%0A%3Cpath%20d%3D%22M56%2044C46%2023%2028%2012%2015%2017C8%2020%208%2033%2017%2042C25%2049%2037%2049%2046%2045%22%20fill%3D%22url%28%23u%29%22/%3E%0A%3Cpath%20d%3D%22M64%2044C74%2023%2092%2012%20105%2017C112%2020%20112%2033%20103%2042C95%2049%2083%2049%2074%2045%22%20fill%3D%22url%28%23u%29%22/%3E%0A%3Cpath%20d%3D%22M57%2049C48%2064%2039%2075%2030%2079C22%2083%2018%2078%2022%2070C27%2061%2038%2054%2049%2049%22%20fill%3D%22url%28%23l%29%22/%3E%0A%3Cpath%20d%3D%22M63%2049C72%2064%2081%2075%2090%2079C98%2083%20102%2078%2098%2070C93%2061%2082%2054%2071%2049%22%20fill%3D%22url%28%23l%29%22/%3E%0A%3Cpath%20d%3D%22M60%2018V77%22%20stroke%3D%22%23efe8d3%22%20stroke-width%3D%224%22%20stroke-linecap%3D%22round%22/%3E%0A%3Cpath%20d%3D%22M59%2021C55%2010%2049%204%2043%201%22%20stroke%3D%22%23efe8d3%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%20fill%3D%22none%22/%3E%0A%3Cpath%20d%3D%22M61%2021C65%2010%2071%204%2077%201%22%20stroke%3D%22%23efe8d3%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%20fill%3D%22none%22/%3E%0A%3C/g%3E%0A%3C/svg%3E");
}

.nature-leaf {
  width: 18px;
  height: 26px;
  opacity: 0;
  filter: drop-shadow(0 8px 16px rgba(15,20,16,.12));
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2044%2064%22%3E%0A%3Cdefs%3E%0A%3ClinearGradient%20id%3D%22g%22%20x1%3D%220%22%20y1%3D%220%22%20x2%3D%221%22%20y2%3D%221%22%3E%0A%3Cstop%20offset%3D%220%22%20stop-color%3D%22%23b7cb93%22/%3E%0A%3Cstop%20offset%3D%220.55%22%20stop-color%3D%22%2386aa6d%22/%3E%0A%3Cstop%20offset%3D%221%22%20stop-color%3D%22%234b7250%22/%3E%0A%3C/linearGradient%3E%0A%3C/defs%3E%0A%3Cpath%20d%3D%22M35%206C20%2011%208%2025%208%2039c0%2011%206%2018%2015%2018%2014%200%2022-18%2019-49-1-2-3-3-7-2z%22%20fill%3D%22url%28%23g%29%22/%3E%0A%3Cpath%20d%3D%22M14%2046c7-11%2013-22%2018-34%22%20stroke%3D%22rgba%28245%2C241%2C229%2C0.62%29%22%20stroke-width%3D%222.2%22%20stroke-linecap%3D%22round%22%20fill%3D%22none%22/%3E%0A%3C/svg%3E");
}

/* Butterfly paths */
@keyframes butterflyPathA {
  0%   { transform: translate3d(0,0,0) rotate(-10deg) scale(.98); opacity: .62; }
  20%  { transform: translate3d(10px,-12px,0) rotate(8deg) scale(1.02); opacity: .85; }
  42%  { transform: translate3d(26px,-3px,0) rotate(-6deg) scale(1); }
  66%  { transform: translate3d(8px,12px,0) rotate(5deg) scale(.98); }
  100% { transform: translate3d(0,0,0) rotate(-10deg) scale(.98); opacity: .62; }
}
@keyframes butterflyPathB {
  0%   { transform: translate3d(0,0,0) rotate(8deg) scale(.95); opacity: .58; }
  24%  { transform: translate3d(-14px,-16px,0) rotate(-8deg) scale(1.02); opacity: .82; }
  50%  { transform: translate3d(8px,-24px,0) rotate(6deg) scale(.99); }
  76%  { transform: translate3d(18px,-8px,0) rotate(-4deg) scale(1); }
  100% { transform: translate3d(0,0,0) rotate(8deg) scale(.95); opacity: .58; }
}
@keyframes butterflyPathC {
  0%   { transform: translate3d(0,0,0) rotate(-5deg) scale(.97); opacity: .56; }
  18%  { transform: translate3d(8px,-10px,0) rotate(6deg) scale(1.01); opacity: .8; }
  38%  { transform: translate3d(-10px,-20px,0) rotate(-7deg) scale(1); }
  62%  { transform: translate3d(12px,-28px,0) rotate(4deg) scale(1.02); }
  100% { transform: translate3d(0,0,0) rotate(-5deg) scale(.97); opacity: .56; }
}

/* Leaf falling paths */
@keyframes leafFallA {
  0%   { transform: translate3d(0,0,0) rotate(-18deg) scale(1); opacity: 0; }
  10%  { opacity: .72; }
  35%  { transform: translate3d(18px,24px,0) rotate(2deg) scale(1); }
  62%  { transform: translate3d(-10px,56px,0) rotate(18deg) scale(.98); }
  100% { transform: translate3d(6px,92px,0) rotate(34deg) scale(.95); opacity: 0; }
}
@keyframes leafFallB {
  0%   { transform: translate3d(0,0,0) rotate(16deg) scale(.9); opacity: 0; }
  8%   { opacity: .65; }
  30%  { transform: translate3d(-12px,18px,0) rotate(-6deg) scale(.92); }
  58%  { transform: translate3d(16px,52px,0) rotate(22deg) scale(.9); }
  100% { transform: translate3d(-8px,88px,0) rotate(6deg) scale(.88); opacity: 0; }
}
@keyframes leafFallC {
  0%   { transform: translate3d(0,0,0) rotate(-6deg) scale(.86); opacity: 0; }
  12%  { opacity: .58; }
  36%  { transform: translate3d(10px,22px,0) rotate(12deg) scale(.86); }
  64%  { transform: translate3d(22px,48px,0) rotate(-10deg) scale(.84); }
  100% { transform: translate3d(4px,80px,0) rotate(20deg) scale(.82); opacity: 0; }
}

.nature-layer .bf-a { animation: butterflyPathA 11.5s cubic-bezier(.35,.02,.22,.98) infinite; }
.nature-layer .bf-b { animation: butterflyPathB 13.2s cubic-bezier(.35,.02,.22,.98) infinite -3s; }
.nature-layer .bf-c { animation: butterflyPathC 12.4s cubic-bezier(.35,.02,.22,.98) infinite -6s; }

.nature-layer .lf-a { animation: leafFallA 15.8s linear infinite -.8s; }
.nature-layer .lf-b { animation: leafFallB 13.6s linear infinite -4s; }
.nature-layer .lf-c { animation: leafFallC 16.4s linear infinite -8s; }
.nature-layer .lf-d { animation: leafFallB 14.8s linear infinite -2s; }
.nature-layer .lf-e { animation: leafFallA 17.2s linear infinite -10s; }

/* Positioning by section */
.nature-layer-hero .bf-a { right: 13%; top: 26%; }
.nature-layer-hero .bf-b { right: 8%; top: 38%; width: 40px; height: 32px; }
.nature-layer-hero .bf-c { right: 20%; top: 48%; width: 38px; height: 30px; }
.nature-layer-hero .lf-a { left: 12%; top: 8%; }
.nature-layer-hero .lf-b { left: 18%; top: 16%; }
.nature-layer-hero .lf-c { right: 15%; top: 12%; }
.nature-layer-hero .lf-d { right: 10%; top: 8%; }
.nature-layer-hero .lf-e { left: 24%; top: 4%; }

.nature-layer-overview .bf-a { right: 9%; top: 18%; width: 34px; height: 28px; }
.nature-layer-overview .bf-b { right: 4%; top: 54%; width: 38px; height: 30px; }
.nature-layer-overview .bf-c { left: 7%; top: 64%; width: 30px; height: 24px; opacity: .5; }
.nature-layer-overview .lf-a { left: 8%; top: 10%; }
.nature-layer-overview .lf-b { right: 16%; top: 12%; }
.nature-layer-overview .lf-c { right: 10%; top: 26%; }
.nature-layer-overview .lf-d { left: 14%; top: 54%; }
.nature-layer-overview .lf-e { right: 6%; top: 62%; }

.nature-layer-landscape .bf-a { left: 6%; top: 18%; width: 36px; height: 28px; }
.nature-layer-landscape .bf-b { right: 7%; top: 24%; width: 34px; height: 28px; }
.nature-layer-landscape .bf-c { right: 11%; bottom: 18%; width: 28px; height: 22px; opacity: .54; }
.nature-layer-landscape .lf-a { left: 12%; top: 8%; }
.nature-layer-landscape .lf-b { left: 4%; top: 42%; }
.nature-layer-landscape .lf-c { right: 12%; top: 10%; }
.nature-layer-landscape .lf-d { right: 6%; top: 52%; }
.nature-layer-landscape .lf-e { left: 16%; top: 60%; }

.nature-layer-release .bf-a { right: 12%; top: 24%; }
.nature-layer-release .bf-b { right: 5%; top: 42%; width: 38px; height: 30px; }
.nature-layer-release .bf-c { left: 10%; top: 38%; width: 30px; height: 24px; opacity: .48; }
.nature-layer-release .lf-a { left: 8%; top: 14%; }
.nature-layer-release .lf-b { left: 15%; top: 22%; }
.nature-layer-release .lf-c { right: 14%; top: 10%; }
.nature-layer-release .lf-d { right: 10%; top: 22%; }
.nature-layer-release .lf-e { left: 20%; top: 30%; }

.nature-layer-story-hero .bf-a { right: 12%; top: 22%; }
.nature-layer-story-hero .bf-b { right: 6%; top: 34%; width: 38px; height: 30px; }
.nature-layer-story-hero .bf-c { right: 18%; top: 46%; width: 34px; height: 28px; }
.nature-layer-story-hero .lf-a { left: 9%; top: 12%; }
.nature-layer-story-hero .lf-b { left: 14%; top: 22%; }
.nature-layer-story-hero .lf-c { right: 16%; top: 8%; }
.nature-layer-story-hero .lf-d { right: 10%; top: 16%; }
.nature-layer-story-hero .lf-e { left: 19%; top: 4%; }

.nature-layer-story-editorial .bf-a { right: 8%; top: 14%; width: 34px; height: 28px; }
.nature-layer-story-editorial .bf-b { left: 6%; top: 70%; width: 30px; height: 24px; opacity: .5; }
.nature-layer-story-editorial .bf-c { right: 4%; top: 68%; width: 36px; height: 28px; }
.nature-layer-story-editorial .lf-a { left: 8%; top: 16%; }
.nature-layer-story-editorial .lf-b { right: 14%; top: 12%; }
.nature-layer-story-editorial .lf-c { right: 10%; top: 30%; }
.nature-layer-story-editorial .lf-d { left: 12%; top: 60%; }
.nature-layer-story-editorial .lf-e { right: 6%; top: 58%; }

.nature-layer-story-combined .bf-a { left: 5%; top: 18%; width: 34px; height: 28px; }
.nature-layer-story-combined .bf-b { right: 6%; top: 20%; width: 34px; height: 28px; }
.nature-layer-story-combined .bf-c { right: 12%; bottom: 18%; width: 30px; height: 24px; opacity: .5; }
.nature-layer-story-combined .lf-a { left: 10%; top: 10%; }
.nature-layer-story-combined .lf-b { right: 12%; top: 12%; }
.nature-layer-story-combined .lf-c { left: 4%; top: 56%; }
.nature-layer-story-combined .lf-d { right: 5%; top: 52%; }
.nature-layer-story-combined .lf-e { left: 16%; top: 68%; }

.nature-layer-story-closing .bf-a { right: 10%; top: 22%; }
.nature-layer-story-closing .bf-b { right: 4%; top: 38%; width: 38px; height: 30px; }
.nature-layer-story-closing .bf-c { left: 11%; top: 28%; width: 30px; height: 24px; opacity: .45; }
.nature-layer-story-closing .lf-a { left: 9%; top: 12%; }
.nature-layer-story-closing .lf-b { left: 16%; top: 20%; }
.nature-layer-story-closing .lf-c { right: 14%; top: 10%; }
.nature-layer-story-closing .lf-d { right: 8%; top: 20%; }
.nature-layer-story-closing .lf-e { left: 22%; top: 34%; }

.nature-layer-contact-hero .bf-a { right: 11%; top: 24%; }
.nature-layer-contact-hero .bf-b { right: 5%; top: 40%; width: 38px; height: 30px; }
.nature-layer-contact-hero .bf-c { right: 18%; top: 52%; width: 34px; height: 28px; }
.nature-layer-contact-hero .lf-a { left: 10%; top: 10%; }
.nature-layer-contact-hero .lf-b { left: 15%; top: 18%; }
.nature-layer-contact-hero .lf-c { right: 16%; top: 9%; }
.nature-layer-contact-hero .lf-d { right: 10%; top: 18%; }
.nature-layer-contact-hero .lf-e { left: 19%; top: 4%; }

.nature-layer-contact-section .bf-a { right: 8%; top: 16%; width: 34px; height: 28px; }
.nature-layer-contact-section .bf-b { right: 4%; bottom: 20%; width: 36px; height: 28px; }
.nature-layer-contact-section .bf-c { left: 7%; top: 72%; width: 30px; height: 24px; opacity: .48; }
.nature-layer-contact-section .lf-a { left: 8%; top: 12%; }
.nature-layer-contact-section .lf-b { right: 14%; top: 10%; }
.nature-layer-contact-section .lf-c { right: 10%; top: 30%; }
.nature-layer-contact-section .lf-d { left: 14%; top: 60%; }
.nature-layer-contact-section .lf-e { right: 7%; top: 58%; }

/* Keep content above the moving ornament layer */
.hero-grid,
.wrap,
.story-hero-copy,
.contact-hero-copy,
.private-release-copy,
.site-footer .wrap { position: relative; z-index: 2; }

@media (prefers-reduced-motion: reduce) {
  .nature-butterfly,
  .nature-leaf { animation: none !important; opacity: .68; }
}

@media (max-width: 1050px) {
  .scroll-tree-ribbon { width: min(24vw, 220px); opacity: .34; }
  .nature-layer .bf-c { display: none; }
}

@media (max-width: 760px) {
  .scroll-tree-ribbon {
    width: 102px;
    left: -28px;
    opacity: .18;
  }

  .nature-layer .nature-butterfly { width: 34px; height: 28px; }
  .nature-layer .nature-leaf { width: 14px; height: 20px; }
  .nature-layer .bf-c,
  .nature-layer .lf-d,
  .nature-layer .lf-e { display: none; }

  .nature-layer-hero .bf-a, .nature-layer-story-hero .bf-a, .nature-layer-contact-hero .bf-a { right: 12%; top: 18%; }
  .nature-layer-hero .bf-b, .nature-layer-story-hero .bf-b, .nature-layer-contact-hero .bf-b { right: 6%; top: 34%; }
  .nature-layer-overview .bf-a, .nature-layer-story-editorial .bf-a, .nature-layer-contact-section .bf-a { right: 5%; top: 10%; }
  .nature-layer-landscape .bf-a, .nature-layer-story-combined .bf-a { left: 4%; top: 12%; }
  .nature-layer-release .bf-a, .nature-layer-story-closing .bf-a { right: 8%; top: 16%; }

  .nature-layer-hero .lf-a, .nature-layer-story-hero .lf-a, .nature-layer-contact-hero .lf-a { left: 10%; top: 6%; }
  .nature-layer-hero .lf-b, .nature-layer-story-hero .lf-b, .nature-layer-contact-hero .lf-b { left: 16%; top: 12%; }
  .nature-layer-overview .lf-a, .nature-layer-story-editorial .lf-a, .nature-layer-contact-section .lf-a { left: 6%; top: 8%; }
  .nature-layer-landscape .lf-a, .nature-layer-story-combined .lf-a { left: 10%; top: 6%; }
  .nature-layer-release .lf-a, .nature-layer-story-closing .lf-a { left: 8%; top: 8%; }
}


/* ========================================================================== 
   FINAL POLISH PASS — realism, motion and mobile finish
   ========================================================================== */

/* Remove the wave-like illustrated horizon that felt confusing. */
.hero-hillscape,
.inner-hills,
.hero-ornaments .ornament-birds,
.release-ornaments .ornament-birds {
  display: none !important;
}

/* Stronger, more readable tree ribbon that continues through the scroll. */
.scroll-tree-ribbon {
  width: min(24vw, 280px) !important;
  left: max(-24px, -1.2vw) !important;
  bottom: -10px !important;
  height: 100vh !important;
  opacity: .54 !important;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%20520%201600%22%3E%0A%3Cdefs%3E%0A%3ClinearGradient%20id%3D%22leaf%22%20x1%3D%220%22%20y1%3D%220%22%20x2%3D%221%22%20y2%3D%221%22%3E%0A%3Cstop%20offset%3D%220%22%20stop-color%3D%22%237ea37c%22/%3E%0A%3Cstop%20offset%3D%220.5%22%20stop-color%3D%22%23527554%22/%3E%0A%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23304635%22/%3E%0A%3C/linearGradient%3E%0A%3ClinearGradient%20id%3D%22bark%22%20x1%3D%220%22%20y1%3D%220%22%20x2%3D%220%22%20y2%3D%221%22%3E%0A%3Cstop%20offset%3D%220%22%20stop-color%3D%22%234b4131%22/%3E%0A%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23241e17%22/%3E%0A%3C/linearGradient%3E%0A%3C/defs%3E%0A%3Cg%20opacity%3D%220.96%22%3E%0A%3Cellipse%20cx%3D%22190%22%20cy%3D%221564%22%20rx%3D%22100%22%20ry%3D%2218%22%20fill%3D%22rgba%280%2C0%2C0%2C0.08%29%22/%3E%0A%3Cpath%20d%3D%22M186%201600c1-135%206-250%2018-381%2012-138%2029-270%2043-399%2018-165%2012-239-18-330-6-18%2013-28%2026-17%2044%2039%2070%20112%2070%20217%200%2087-17%20178-39%20279-30%20136-52%20274-65%20423-8%2099-11%20147-13%20208H186z%22%20fill%3D%22url%28%23bark%29%22/%3E%0A%3Cpath%20d%3D%22M228%20616c27-58%2073-132%20134-193%2014-14%2033%202%2024%2018-34%2061-80%20121-124%20182l-34-7z%22%20fill%3D%22url%28%23bark%29%22/%3E%0A%3Cpath%20d%3D%22M199%20568c-24-58-64-120-124-182-14-14-36%202-24%2018%2039%2054%2080%20113%20115%20174l33-10z%22%20fill%3D%22url%28%23bark%29%22/%3E%0A%3Cpath%20d%3D%22M236%20866c27-44%2068-96%20122-137%2016-12%2034%206%2021%2020-36%2037-74%2074-109%20125l-34-8z%22%20fill%3D%22url%28%23bark%29%22/%3E%0A%3Cpath%20d%3D%22M208%20932c-25-43-63-87-111-122-16-12-34%206-21%2020%2033%2035%2070%2069%2099%20116l33-14z%22%20fill%3D%22url%28%23bark%29%22/%3E%0A%3Cpath%20d%3D%22M183%20268c-18%2055-33%20112-38%20174-2%2018%2020%2020%2025%205%2017-51%2031-103%2044-158l-31-21z%22%20fill%3D%22url%28%23bark%29%22/%3E%0A%3Cg%20fill%3D%22url%28%23leaf%29%22%3E%0A%3Ccircle%20cx%3D%22150%22%20cy%3D%22206%22%20r%3D%2292%22/%3E%0A%3Ccircle%20cx%3D%22242%22%20cy%3D%22156%22%20r%3D%22114%22/%3E%0A%3Ccircle%20cx%3D%22336%22%20cy%3D%22214%22%20r%3D%2292%22/%3E%0A%3Ccircle%20cx%3D%22120%22%20cy%3D%22326%22%20r%3D%22104%22/%3E%0A%3Ccircle%20cx%3D%22244%22%20cy%3D%22312%22%20r%3D%22132%22/%3E%0A%3Ccircle%20cx%3D%22370%22%20cy%3D%22350%22%20r%3D%22104%22/%3E%0A%3Ccircle%20cx%3D%22144%22%20cy%3D%22466%22%20r%3D%22106%22/%3E%0A%3Ccircle%20cx%3D%22266%22%20cy%3D%22486%22%20r%3D%22132%22/%3E%0A%3Ccircle%20cx%3D%22382%22%20cy%3D%22522%22%20r%3D%2290%22/%3E%0A%3Ccircle%20cx%3D%22176%22%20cy%3D%22626%22%20r%3D%2296%22/%3E%0A%3Ccircle%20cx%3D%22292%22%20cy%3D%22642%22%20r%3D%22120%22/%3E%0A%3Ccircle%20cx%3D%22394%22%20cy%3D%22676%22%20r%3D%2280%22/%3E%0A%3C/g%3E%0A%3C/g%3E%0A%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: left bottom !important;
  background-size: contain !important;
  filter: drop-shadow(0 16px 28px rgba(0,0,0,.08)) !important;
}

body.home-page .scroll-tree-ribbon,
body.story-page .scroll-tree-ribbon,
body.contact-page .scroll-tree-ribbon {
  z-index: 0;
}

/* Smooth motion is now handled in JS rather than stepped CSS keyframes. */
.nature-butterfly,
.nature-leaf {
  animation: none !important;
  transition: opacity .25s linear;
}

.nature-layer {
  z-index: 1;
}

.nature-butterfly {
  width: 42px;
  height: 34px;
  opacity: .65;
}

.nature-layer .bf-d {
  right: 22%;
  top: 14%;
  width: 30px;
  height: 24px;
  opacity: .44;
}

.nature-leaf {
  width: 16px;
  height: 24px;
  opacity: 0;
}

.nature-layer .lf-f {
  left: 26%;
  top: 12%;
}

/* More polished placement per area */
.nature-layer-hero .bf-d { right: 28%; top: 18%; }
.nature-layer-overview .bf-d { left: 9%; top: 18%; }
.nature-layer-landscape .bf-d { right: 18%; top: 68%; }
.nature-layer-release .bf-d { left: 20%; top: 16%; }
.nature-layer-story-hero .bf-d { right: 26%; top: 18%; }
.nature-layer-story-editorial .bf-d { left: 8%; top: 22%; }
.nature-layer-story-combined .bf-d { right: 18%; top: 64%; }
.nature-layer-story-closing .bf-d { left: 16%; top: 16%; }
.nature-layer-contact-hero .bf-d { right: 24%; top: 18%; }
.nature-layer-contact-section .bf-d { left: 10%; top: 18%; }

/* Subtle depth refinement */
.hero-media img,
.story-hero-media img,
.contact-hero-media img,
.private-release-media img {
  transform: scale(1.015);
}

.image-box {
  box-shadow: 0 18px 42px rgba(22,28,24,.07);
}

.site-footer .footer-grid,
.site-footer .footer-bottom {
  position: relative;
  z-index: 2;
}

@media (max-width: 1100px) {
  .scroll-tree-ribbon {
    width: min(22vw, 210px) !important;
    opacity: .40 !important;
  }
}

@media (max-width: 760px) {
  .scroll-tree-ribbon {
    width: 86px !important;
    left: -30px !important;
    opacity: .16 !important;
  }

  .nature-butterfly { width: 28px; height: 22px; }
  .nature-layer .bf-c,
  .nature-layer .bf-d,
  .nature-layer .lf-e,
  .nature-layer .lf-f { display: none !important; }

  .hero-copy,
  .story-hero-copy,
  .contact-hero-copy {
    padding-inline-end: 10px;
  }

  .hero-copy h1,
  .story-hero-copy h1,
  .contact-hero-copy h1 {
    max-width: 10.2ch;
  }

  .hero-actions {
    gap: 10px;
  }

  .button,
  .nav-cta,
  .mobile-enquiry {
    min-height: 46px;
  }

  .contact-layout,
  .home-overview-grid,
  .home-land-grid,
  .home-landscape-grid,
  .story-combined-grid {
    gap: 24px;
  }
}

@media (max-width: 420px) {
  .scroll-tree-ribbon { opacity: .12 !important; }
  .private-bar { font-size: 7px; }
  .mobile-menu a { font-size: clamp(28px, 8.4vw, 42px); }
}

/* ========================================================================== 
   FINAL MICRO-POLISH — type, crop, spacing, CTA finish
   ========================================================================== */

main { z-index: auto !important; }
.site-footer { z-index: 5 !important; }
.scroll-tree-ribbon {
  z-index: 1 !important;
  width: min(20vw, 238px) !important;
  left: -46px !important;
  opacity: .34 !important;
  -webkit-mask-image: linear-gradient(90deg, #000 0%, #000 56%, rgba(0,0,0,.62) 78%, transparent 100%);
  mask-image: linear-gradient(90deg, #000 0%, #000 56%, rgba(0,0,0,.62) 78%, transparent 100%);
}

.hero-grid,
.home-overview .wrap,
.home-land .wrap,
.home-landscape .wrap,
.private-release .wrap,
.story-hero .wrap,
.story-editorial .wrap,
.story-combined .wrap,
.story-closing .wrap,
.contact-hero .wrap,
.contact-section .wrap {
  position: relative;
  z-index: 3;
}

h1, h2, h3, blockquote {
  text-wrap: balance;
  letter-spacing: -.018em;
}

p { text-wrap: pretty; }

.hero-copy h1 {
  letter-spacing: -.028em;
  line-height: .91;
}

.story-hero-copy h1,
.contact-hero-copy h1 {
  letter-spacing: -.026em;
  line-height: .92;
}

.overview-statement h2,
.home-land-copy h2,
.landscape-summary h2,
.compact-story-copy h2,
.story-combined-copy h2,
.story-closing h2,
.enquiry-head h2 {
  letter-spacing: -.02em;
}

.hero-lede,
.story-hero-copy > p:last-child,
.contact-hero-copy > p:last-child {
  max-width: 560px;
  line-height: 1.62;
}

.button {
  padding-inline: 22px;
  letter-spacing: .145em;
}

.nav-cta,
.mobile-enquiry {
  letter-spacing: .145em;
}

/* Image crop refinement */
.hero-media img { object-position: 54% 50%; }
.land-main-image img { object-position: 50% 46%; }
.land-side-image img { object-position: 58% 48%; }
.compact-palette-image img,
.story-palette-image img { object-position: 50% 50%; }
.compact-story-row:nth-child(1) figure img { object-position: 52% 50%; }
.compact-story-row:nth-child(2) figure img { object-position: 54% 46%; }
.compact-story-row:nth-child(3) figure img { object-position: 50% 45%; }
.contact-hero-media img { object-position: 56% 46%; }
.contact-image img { object-position: 52% 48%; }
.private-release-media img { object-position: 50% 54%; }

.image-box figcaption {
  font-size: 7.5px;
  letter-spacing: .13em;
}

.footer-brand p { max-width: 330px; }

@media (max-width: 1050px) {
  .scroll-tree-ribbon {
    width: 170px !important;
    left: -54px !important;
    opacity: .24 !important;
  }
}

@media (max-width: 760px) {
  :root { --edge: 20px; }

  .scroll-tree-ribbon {
    width: 76px !important;
    left: -38px !important;
    opacity: .09 !important;
  }

  .hero-media img { object-position: 60% 50%; }
  .story-hero-media img { object-position: 58% 50%; }
  .contact-hero-media img { object-position: 60% 48%; }
  .private-release-media img { object-position: 54% 54%; }

  .hero-copy h1,
  .story-hero-copy h1,
  .contact-hero-copy h1 {
    letter-spacing: -.022em;
  }

  .hero-lede,
  .story-hero-copy > p:last-child,
  .contact-hero-copy > p:last-child {
    max-width: 34ch;
  }

  .compact-principles strong,
  .land-facts strong,
  .team-compact strong {
    line-height: 1.08;
  }

  .button {
    padding-inline: 18px;
  }

  .image-box figcaption {
    left: 13px;
    bottom: 10px;
    font-size: 7px;
  }

  .footer-brand p { max-width: 30ch; }
}

@media (max-width: 420px) {
  :root { --edge: 18px; }
  .hero-actions { margin-top: 26px; }
  .hero-lede { margin-top: 20px; }
  .button { min-height: 48px; }
}

/* Final hero contrast + illustrated tree asset */
.scroll-tree-ribbon {
  background-image: url('../img/midori-tree.png') !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
  background-position: left bottom !important;
}

.site-nav:not(.is-scrolled) {
  color: var(--cream) !important;
}
.site-nav:not(.is-scrolled) a:not(.brand) {
  color: var(--cream) !important;
}
.site-nav:not(.is-scrolled) .nav-cta {
  border-color: rgba(244,241,233,.58) !important;
}

.hero-home .hero-copy h1,
.story-hero .story-hero-copy h1,
.contact-hero .contact-hero-copy h1 {
  color: var(--cream) !important;
}
.hero-home .hero-copy .hero-lede,
.story-hero .story-hero-copy > p:last-child,
.contact-hero .contact-hero-copy > p:last-child {
  color: rgba(244,241,233,.82) !important;
}
.hero-home .kicker.light,
.story-hero .kicker.light,
.contact-hero .kicker.light,
.private-release .kicker.light,
.story-closing .kicker.light {
  color: var(--brass-soft) !important;
}
.button-light,
.text-link.light {
  color: var(--cream) !important;
}

/* Tree scale tuned after desktop/mobile visual QA */
.scroll-tree-ribbon {
  width: min(21vw, 260px) !important;
  background-size: auto 72vh !important;
  background-position: left bottom !important;
  opacity: .30 !important;
}
@media (max-width: 1050px) {
  .scroll-tree-ribbon {
    width: 170px !important;
    background-size: auto 62vh !important;
    opacity: .20 !important;
  }
}
@media (max-width: 760px) {
  .scroll-tree-ribbon {
    width: 70px !important;
    background-size: auto 44vh !important;
    opacity: .075 !important;
  }
}
