.hero {
  position: relative;
  height: 100vh;
  min-height: 700px;
  display: flex;
  align-items: center;
  overflow: hidden;
  background: #07100b;
}
.hero-bg { position: absolute; inset: -24% 0; z-index: 0; transform-origin: center center; will-change: transform; filter: saturate(1.08) contrast(1.04); }
.hero-overlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(7,15,7,0.9) 0%, rgba(7,15,7,0.62) 42%, rgba(7,15,7,0.2) 100%),
    linear-gradient(180deg, rgba(7,15,7,0.1) 0%, rgba(7,15,7,0.88) 100%);
  z-index: 1;
}
.hero-depth {
  position: absolute;
  z-index: 2;
  pointer-events: none;
  will-change: transform;
}
.hero-wordmark {
  position: absolute;
  z-index: 2;
  left: -3vw;
  bottom: 2vh;
  font-family: var(--font-display);
  font-size: clamp(84px, 17vw, 260px);
  line-height: 0.78;
  white-space: nowrap;
  color: rgba(244,231,210,0.08);
  letter-spacing: 0;
  pointer-events: none;
  will-change: transform;
}
.hero-depth-far {
  inset: 10% -8% auto auto;
  width: min(58vw, 760px);
  height: min(58vw, 760px);
  border: 1px solid rgba(232, 185, 99, 0.18);
  border-radius: 50%;
  background:
    repeating-conic-gradient(from 18deg, rgba(245,242,236,0.16) 0 1deg, transparent 1deg 14deg),
    radial-gradient(circle, transparent 54%, rgba(74,222,0,0.08) 55%, transparent 56%);
  opacity: 0.8;
}
.hero-depth-mid {
  right: 8vw;
  bottom: 9vh;
  width: min(44vw, 520px);
  height: min(44vw, 520px);
  border: 1px solid rgba(99, 201, 232, 0.24);
  border-radius: 50%;
  background: radial-gradient(circle, transparent 40%, rgba(99,201,232,0.14) 41%, transparent 42%, transparent 58%, rgba(245,242,236,0.12) 59%, transparent 60%);
  opacity: 0.72;
}
.hero-leaf { position: absolute; z-index: 3; pointer-events: none; opacity: 0.28; filter: blur(2px); will-change: transform; }
.hero-leaf-left {
  left: -80px; bottom: -40px; width: 400px; height: 600px; background: var(--clr-bg-mid);
  clip-path: polygon(20% 0%, 80% 10%, 100% 60%, 60% 100%, 0% 90%);
  border-radius: 40% 60% 70% 30% / 30% 50% 70% 70%;
}
.hero-leaf-right {
  right: -60px; top: -80px; width: 350px; height: 500px; background: var(--clr-bg-mid);
  clip-path: polygon(30% 0%, 100% 20%, 80% 80%, 20% 100%, 0% 40%);
  border-radius: 60% 40% 30% 70% / 60% 30% 70% 40%;
}
.hero-orbit {
  position: absolute;
  z-index: 4;
  overflow: hidden;
  border: 1px solid rgba(245,242,236,0.16);
  box-shadow: 0 28px 90px rgba(0,0,0,0.38);
  pointer-events: none;
  will-change: transform;
}
.hero-orbit img { transform: scale(1.16); }
.hero-orbit-one {
  right: 12vw;
  top: 19vh;
  width: clamp(140px, 18vw, 270px);
  aspect-ratio: 4/5;
  border-radius: 18px;
}
.hero-orbit-two {
  right: 31vw;
  bottom: 13vh;
  width: clamp(105px, 13vw, 190px);
  aspect-ratio: 1;
  border-radius: 50%;
}
.hero-orbit-three {
  right: 4vw;
  bottom: 17vh;
  width: clamp(120px, 15vw, 230px);
  aspect-ratio: 5/4;
  border-radius: 16px;
}
.hero-scan {
  position: absolute;
  inset: 0;
  z-index: 4;
  pointer-events: none;
  opacity: 0.45;
  overflow: hidden;
}
.hero-scan span {
  position: absolute;
  left: 50%;
  width: 42vw;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(99,201,232,0.8), rgba(232,185,99,0.45), transparent);
  transform: translateX(-5vw);
  animation: scanFloat 5.8s ease-in-out infinite;
}
.hero-scan span:nth-child(1) { top: 28%; animation-delay: -1s; }
.hero-scan span:nth-child(2) { top: 48%; width: 34vw; animation-delay: -2.7s; }
.hero-scan span:nth-child(3) { top: 69%; width: 46vw; animation-delay: -4s; }
@keyframes scanFloat { 0%, 100% { transform: translateX(-7vw) scaleX(0.72); opacity: 0.2; } 50% { transform: translateX(7vw) scaleX(1); opacity: 0.78; } }
.hero-content { position: relative; z-index: 5; padding-top: 80px; max-width: 820px; margin-left: 0; }
.hero-tag {
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--clr-ochre);
  margin-bottom: 24px;
}
.hero-title {
  font-family: var(--font-display);
  font-size: clamp(48px, 8vw, 96px);
  line-height: 1.06;
  color: var(--clr-white);
  margin-bottom: 28px;
  display: flex;
  flex-direction: column;
  letter-spacing: 0;
}
.hero-subtitle { font-size: clamp(16px, 2vw, 19px); color: rgba(245,242,236,0.72); max-width: 500px; margin-bottom: 40px; line-height: 1.6; }
.hero-ctas { display: flex; gap: 16px; flex-wrap: wrap; }
.hero-scroll-indicator {
  position: absolute;
  bottom: 32px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 5;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  color: rgba(245,242,236,0.4);
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.1em;
  animation: scrollBob 2s ease-in-out infinite;
}
@keyframes scrollBob { 0%, 100% { transform: translateX(-50%) translateY(0); } 50% { transform: translateX(-50%) translateY(-6px); } }
.scroll-dot { animation: scrollDot 2s ease-in-out infinite; }
@keyframes scrollDot { 0%, 100% { cy: 8; } 50% { cy: 14; } }
.editorial-intro {
  position: relative;
  overflow: hidden;
  padding: 140px 0 120px;
  background: var(--clr-cream);
  color: #221c18;
}
.editorial-intro::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(34,28,24,0.08) 1px, transparent 1px),
    linear-gradient(rgba(34,28,24,0.05) 1px, transparent 1px);
  background-size: 56px 56px;
  mask-image: linear-gradient(to bottom, transparent, black 24%, black 76%, transparent);
  pointer-events: none;
}
.editorial-copy {
  position: relative;
  z-index: 2;
}
.editorial-intro .section-kicker {
  color: var(--clr-red);
}
.editorial-title {
  max-width: 1040px;
  font-family: var(--font-display);
  font-size: clamp(44px, 8vw, 118px);
  line-height: 0.92;
  letter-spacing: 0;
}
.editorial-title > span {
  display: block;
}
.editorial-media-strip {
  position: relative;
  z-index: 1;
  width: 100%;
  margin-top: 86px;
  overflow: hidden;
  transform: rotate(-2deg);
}
.editorial-media-track {
  display: flex;
  width: max-content;
  gap: 18px;
  animation: editorialTrack 30s linear infinite;
}
.editorial-media-track img {
  width: clamp(180px, 21vw, 330px);
  height: clamp(230px, 28vw, 420px);
  border-radius: 8px;
  object-fit: cover;
  box-shadow: 0 22px 70px rgba(34,28,24,0.18);
}
@keyframes editorialTrack {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}
.parallax-showcase {
  position: relative;
  min-height: 220vh;
  background: #07100b;
  overflow: hidden;
}
.showcase-video-bg,
.showcase-video-fallback,
.showcase-video-overlay {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.showcase-video-bg {
  z-index: 0;
  object-fit: cover;
  filter: saturate(0.92) contrast(1.08) brightness(0.72);
}
.showcase-video-bg.video-failed { opacity: 0; }
.showcase-video-fallback {
  z-index: 0;
  background:
    linear-gradient(120deg, rgba(9,50,22,0.76), rgba(4,12,6,0.94)),
    url('../../assets/images/853ba17b4008.jpg') center / cover;
  animation: forestFallbackDrift 12s ease-in-out infinite alternate;
}
.showcase-video-fallback.video-ready { opacity: 0.12; }
.showcase-video-overlay {
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(7,15,7,0.78), rgba(7,15,7,0.28) 48%, rgba(7,15,7,0.8)),
    linear-gradient(180deg, rgba(7,15,7,0.12), rgba(7,15,7,0.82));
}
.parallax-sticky {
  position: sticky;
  top: 0;
  min-height: 100vh;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, 0.92fr);
  align-items: center;
  gap: 24px;
  overflow: hidden;
  padding: 96px 0;
}
.motion-stage {
  position: relative;
  height: min(76vh, 740px);
  min-height: 560px;
  margin-left: clamp(20px, 6vw, 90px);
  perspective: 1200px;
  transform-style: preserve-3d;
  overflow: visible;
  border-radius: 0;
  isolation: isolate;
}
.wind-trail {
  position: absolute;
  will-change: transform;
}
.motion-plant-grid,
.motion-card-stack {
  position: absolute;
  z-index: 9;
}
.motion-plant-grid {
  left: clamp(16px, 3vw, 42px);
  top: 8%;
  bottom: 8%;
  width: 58%;
  display: grid;
  grid-template-columns: 0.86fr 1fr;
  grid-template-rows: minmax(0, 1fr) minmax(0, 0.72fr);
  gap: clamp(16px, 2vw, 28px);
}
.motion-card-stack {
  right: clamp(16px, 3vw, 42px);
  top: 12%;
  bottom: 12%;
  width: 30%;
  display: grid;
  grid-template-rows: repeat(3, minmax(0, 1fr));
  gap: clamp(18px, 3vh, 34px);
}
@keyframes forestFallbackDrift {
  from { transform: scale(1.06) translate3d(-1.5%, -1%, 0); }
  to { transform: scale(1.12) translate3d(1.5%, 1%, 0); }
}
.wind-trail {
  z-index: 8;
  width: 38%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(244,231,210,0.62), transparent);
  filter: blur(0.4px);
  animation: windTrail 6s ease-in-out infinite;
}
.wind-one { top: 22%; left: 6%; animation-delay: -1s; }
.wind-two { top: 43%; right: 4%; width: 48%; animation-delay: -3s; }
.wind-three { bottom: 25%; left: 20%; width: 32%; animation-delay: -4.5s; }
@keyframes windTrail {
  0%, 100% { transform: translateX(-36px) scaleX(0.7); opacity: 0.18; }
  50% { transform: translateX(58px) scaleX(1.08); opacity: 0.78; }
}
.motion-plant {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  object-fit: cover;
  box-shadow: 0 24px 80px rgba(0,0,0,0.36);
  opacity: 1;
  filter: saturate(1.16) contrast(1.16) brightness(1.12);
}
.motion-plant-back {
  grid-column: 1;
  grid-row: 1;
  border-radius: 18px;
  filter: saturate(0.9) brightness(0.78);
}
.motion-plant-main {
  grid-column: 2;
  grid-row: 1 / 3;
  border-radius: 22px;
  z-index: 2;
}
.motion-plant-front {
  grid-column: 1;
  grid-row: 2;
  border-radius: 18px;
  border: 1px solid rgba(245,242,236,0.22);
}
.motion-card {
  position: relative;
  width: 100%;
  padding: 18px;
  border: 1px solid rgba(245,242,236,0.16);
  border-radius: 8px;
  background: rgba(7,15,7,0.92);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  box-shadow: 0 18px 60px rgba(0,0,0,0.42);
  opacity: 1;
}
.motion-card span {
  display: block;
  font-family: var(--font-mono);
  font-size: 10px;
  color: var(--clr-sky);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  margin-bottom: 6px;
}
.motion-card strong {
  display: block;
  color: var(--clr-white);
  font-size: 14px;
  line-height: 1.25;
}
.motion-copy {
  text-shadow: 0 2px 22px rgba(0,0,0,0.55);
  opacity: 1;
}
.motion-copy .section-kicker,
.motion-copy .section-title,
.motion-copy p {
  opacity: 1;
}
.motion-copy p:last-child {
  color: rgba(245,242,236,0.86);
}
.motion-card-one,
.motion-card-two,
.motion-card-three {
  inset: auto;
}
.motion-copy {
  position: relative;
  z-index: 8;
  padding-right: clamp(24px, 7vw, 96px);
}
.motion-copy .section-title {
  margin-bottom: 22px;
  max-width: 560px;
}
.motion-copy p:last-child {
  max-width: 470px;
  color: rgba(245,242,236,0.72);
  font-size: 18px;
}
.section-kicker {
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--clr-sky);
  margin-bottom: 18px;
}
.service-row { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 64px; align-items: center; margin-bottom: 80px; justify-items: start; }
.seasonal-motion {
  overflow: hidden;
}
.forest-video-section {
  background: #07100b;
}
.section-forest-video,
.section-forest-overlay {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.section-forest-video {
  z-index: 0;
  object-fit: cover;
  filter: saturate(0.88) contrast(1.08) brightness(0.5);
}
.section-forest-overlay {
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(7,15,7,0.82), rgba(7,15,7,0.46), rgba(7,15,7,0.84)),
    linear-gradient(180deg, rgba(7,15,7,0.62), rgba(7,15,7,0.76));
}
.seasonal-motion::before,
.seasonal-motion::after {
  content: '';
  position: absolute;
  z-index: 0;
  pointer-events: none;
}
.seasonal-motion::before {
  width: clamp(160px, 22vw, 320px);
  height: clamp(100px, 16vw, 220px);
  top: 12px;
  right: -36px;
  border-top: 8px solid rgba(82, 48, 24, 0.55);
  border-radius: 52% 0 0 0;
  transform: rotate(-8deg);
  filter: drop-shadow(0 14px 24px rgba(0,0,0,0.18));
}
.seasonal-motion::after {
  width: clamp(120px, 18vw, 260px);
  height: clamp(80px, 12vw, 170px);
  left: -34px;
  bottom: 30px;
  border-bottom: 7px solid rgba(71, 43, 24, 0.42);
  border-radius: 0 0 60% 0;
  transform: rotate(7deg);
}
.seasonal-motion .container,
.categories-track-wrapper {
  position: relative;
  z-index: 3;
}
.falling-layer {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  overflow: hidden;
}
.falling-leaf,
.falling-petal {
  position: absolute;
  top: -12%;
  display: block;
  opacity: 0.82;
  animation-name: fallingDrift;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
}
.falling-leaf {
  width: 18px;
  height: 30px;
  border-radius: 80% 0 80% 10%;
  background: linear-gradient(145deg, rgba(123,205,58,0.9), rgba(43,111,32,0.52));
}
.falling-petal {
  width: 14px;
  height: 18px;
  border-radius: 70% 30% 70% 30%;
  background: linear-gradient(145deg, rgba(255,211,221,0.9), rgba(232,105,129,0.5));
  filter: blur(0.1px);
}
@keyframes fallingDrift {
  0% { transform: translate3d(0, -10vh, 0) rotate(0deg); opacity: 0; }
  8% { opacity: 0.85; }
  100% { transform: translate3d(var(--fall-x, 70px), 118vh, 0) rotate(var(--fall-rotate, 260deg)); opacity: 0; }
}
.service-row:nth-of-type(odd) .service-image { order: -1; }
.service-row:last-child { margin-bottom: 0; }
.service-text h3 { font-family: var(--font-display); font-size: clamp(24px, 3vw, 34px); margin-bottom: 16px; color: var(--clr-white); }
.service-text p { font-size: 16px; color: var(--clr-muted); margin-bottom: 24px; max-width: 420px; line-height: 1.7; }
.service-link { font-size: 14px; color: var(--clr-lime); font-weight: 500; transition: color 200ms ease; }
.service-link span { transition: margin-left 200ms ease; }
.service-link:hover span { margin-left: 4px; }
.service-image { width: 100%; aspect-ratio: 16/9; border-radius: var(--radius-lg); overflow: hidden; }
.service-grid-4 { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 12px; aspect-ratio: auto; }
.service-grid-4 img { aspect-ratio: 1; border-radius: var(--radius-md); object-fit: cover; transition: transform 400ms ease, filter 400ms ease; }
.service-grid-4 img:hover { transform: scale(1.04); filter: brightness(1.1); }
.categories-track-wrapper {
  overflow: hidden;
  padding: 8px 0;
  -webkit-mask-image: linear-gradient(to right, transparent, black 10%, black 90%, transparent);
  mask-image: linear-gradient(to right, transparent, black 10%, black 90%, transparent);
}
.categories-track { display: flex; gap: 16px; width: max-content; animation: trackScroll 28s linear infinite; }
.categories-track:hover { animation-play-state: paused; }
@keyframes trackScroll { from { transform: translateX(0); } to { transform: translateX(-50%); } }
.category-tile {
  flex-shrink: 0;
  width: 180px;
  height: 220px;
  border-radius: var(--radius-lg);
  overflow: hidden;
  position: relative;
  cursor: none;
  border: 1.5px solid transparent;
  transition: border-color var(--transition-base), transform var(--transition-base);
}
.category-tile:hover { border-color: var(--clr-lime); transform: scale(1.04); }
.category-tile img { position: absolute; inset: 0; object-fit: cover; transition: transform 400ms ease; }
.category-tile:hover img { transform: scale(1.08); }
.category-tile::after { content: ''; position: absolute; inset: 0; background: linear-gradient(to top, rgba(7,15,7,0.85) 0%, transparent 55%); }
.category-tile span { position: absolute; bottom: 14px; left: 14px; z-index: 2; font-size: 13px; font-weight: 500; color: var(--clr-white); }
.plants-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 20px; justify-items: start; }
.plant-card { position: relative; aspect-ratio: 3/4; border-radius: var(--radius-lg); overflow: hidden; cursor: none; width: 100%; }
.plant-card img { position: absolute; inset: 0; object-fit: cover; transition: transform 500ms ease; }
.plant-card:hover img { transform: scale(1.07); }
.plant-card-info {
  position: absolute;
  bottom: 0; left: 0; right: 0;
  padding: 48px 16px 16px;
  background: linear-gradient(to top, rgba(7,15,7,0.94) 0%, transparent 100%);
  transform: translateY(100%);
  transition: transform 350ms cubic-bezier(0.16,1,0.3,1);
}
.plant-card:hover .plant-card-info { transform: translateY(0); }
.plant-sci { display: block; font-family: var(--font-mono); font-size: 10px; color: var(--clr-lime); opacity: 0.8; font-style: italic; margin-bottom: 4px; }
.plant-card h4 { font-family: var(--font-display); font-size: 20px; color: var(--clr-white); margin-bottom: 4px; }
.plant-card p { font-size: 12px; color: rgba(245,242,236,0.7); line-height: 1.4; }
.community-stories { background: var(--clr-bg-darkest); position: relative; overflow: hidden; }
.stories-season-video,
.stories-season-overlay {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  pointer-events: none;
}
.stories-season-video {
  object-fit: cover;
  filter: saturate(0.9) contrast(1.05) brightness(0.58);
}
.stories-season-overlay {
  z-index: 1;
  background:
    linear-gradient(180deg, rgba(7,15,7,0.42), rgba(7,15,7,0.78)),
    linear-gradient(90deg, rgba(7,15,7,0.72), rgba(7,15,7,0.24), rgba(7,15,7,0.74));
}
.community-stories::before {
  content: '';
  position: absolute;
  top: 50%; left: 50%;
  transform: translate(-50%,-50%);
  width: 600px; height: 600px;
  background: radial-gradient(circle, rgba(74,222,0,0.04) 0%, transparent 70%);
  pointer-events: none;
  z-index: 1;
}
.community-stories .container { position: relative; z-index: 3; }
.story-post {
  max-width: 720px;
  margin: 0 auto 96px;
  position: relative;
  z-index: 2;
  isolation: isolate;
}
.story-post:last-child { margin-bottom: 0; }
.story-meta { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; position: relative; z-index: 3; }
.story-avatar {
  width: 42px; height: 42px;
  border-radius: 50%;
  background: var(--clr-bg-mid);
  border: 2px solid var(--clr-lime-border);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-mono);
  font-size: 13px;
  font-weight: 500;
  color: var(--clr-lime);
  flex-shrink: 0;
}
.story-meta strong { font-size: 15px; font-weight: 600; color: var(--clr-white); display: block; }
.story-time { font-size: 12px; color: var(--clr-muted); font-family: var(--font-mono); }
.story-text { font-size: 15px; color: rgba(245,242,236,0.75); margin-bottom: 18px; line-height: 1.6; position: relative; z-index: 3; }
.story-photo-wrap { width: 100%; height: 420px; border-radius: var(--radius-xl); overflow: hidden; position: relative; z-index: 1; display: block; }
.story-photo { width: 100%; height: 116%; object-fit: cover; }
.join-banner { padding: 120px 0; background: var(--clr-bg-dark); text-align: center; position: relative; overflow: hidden; }
.join-banner::before { content: ''; position: absolute; inset: 0; background: radial-gradient(ellipse at center bottom, rgba(74,222,0,0.07) 0%, transparent 65%); }
.join-banner-inner { position: relative; z-index: 1; }
.join-banner h2 { font-family: var(--font-display); font-size: clamp(32px, 5vw, 60px); margin-bottom: 36px; line-height: 1.15; letter-spacing: 0; }
@media(max-width:1024px) { .plants-grid { grid-template-columns: repeat(3,minmax(0,1fr)); } }
@media(max-width:1100px) {
  .hero-orbit-one { right: 7vw; }
  .hero-orbit-two { right: 24vw; }
  .hero-orbit-three { right: -2vw; }
  .parallax-sticky { grid-template-columns: minmax(0,1fr); padding: 80px 0 96px; }
  .motion-stage { width: 100%; max-width: 820px; margin: 0 auto; }
  .motion-copy { padding: 0 20px; }
}
@media(max-width:768px) {
  .hero { min-height: 660px; }
  .hero-depth-far { width: 480px; height: 480px; right: -210px; top: 16%; }
  .hero-wordmark { font-size: 96px; bottom: 15vh; opacity: 0.7; }
  .hero-depth-mid { width: 340px; height: 340px; right: -150px; bottom: 8%; }
  .hero-orbit { opacity: 0.78; }
  .hero-orbit-one { right: -42px; top: 18vh; }
  .hero-orbit-two { right: 22px; bottom: 17vh; }
  .hero-orbit-three { display: none; }
  .hero-scan span { left: 28%; width: 76vw; }
  .parallax-showcase { min-height: auto; }
  .parallax-sticky { position: relative; min-height: auto; }
  .motion-stage { height: 560px; min-height: 560px; overflow: hidden; }
  .motion-plant-grid {
    left: 18px;
    right: 18px;
    top: 72px;
    bottom: 210px;
    width: auto;
    gap: 12px;
  }
  .motion-card-stack {
    left: 18px;
    right: 18px;
    top: auto;
    bottom: 18px;
    width: auto;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
  }
  .motion-card { padding: 12px; }
  .motion-card strong { font-size: 12px; }
  .motion-card span { font-size: 9px; }
  .hero-scroll-indicator { display: none; }
  .editorial-intro { padding: 88px 0 78px; }
  .editorial-media-strip { margin-top: 52px; }
  .service-row, .service-row:nth-of-type(odd) { grid-template-columns: minmax(0,1fr); gap: 32px; }
  .service-row:nth-of-type(odd) .service-image { order: initial; }
  .story-photo-wrap { height: 320px; }
}
@media(max-width:480px) {
  .plants-grid { grid-template-columns: minmax(0,1fr); }
  .hero-ctas .btn { width: 100%; }
}
