/* Brand story sections */
.story-chapter {
  display: grid;
  gap: 2rem;
  align-items: center;
}
@media (min-width: 900px) {
  .story-chapter {
    grid-template-columns: 1.05fr 0.95fr;
    gap: 3.5rem;
  }
  .story-chapter.is-reverse { direction: rtl; }
  .story-chapter.is-reverse > * { direction: ltr; }
}
.story-media {
  position: relative;
  overflow: hidden;
  min-height: 320px;
}
.story-media img {
  width: 100%; height: 100%; object-fit: cover;
  transition: transform 1.2s cubic-bezier(.22,1,.36,1);
}
.story-chapter:hover .story-media img { transform: scale(1.06); }
.story-num {
  font-size: clamp(3rem, 8vw, 5rem);
  line-height: .85;
  opacity: .18;
  font-weight: 600;
}
.story-tag {
  display: inline-flex;
  font-size: .7rem;
  letter-spacing: .2em;
  text-transform: uppercase;
  padding: .35rem .75rem;
  border-radius: 999px;
}

body.is-dark .story-media {
  border: 1px solid rgba(255,255,255,.1);
}
body.is-dark .story-num { color: #c4a574; }
body.is-dark .story-tag {
  border: 1px solid rgba(196,165,116,.35);
  color: #c4a574;
}

body.theme-home2 .story-media {
  border-radius: 2rem;
  box-shadow: 0 24px 50px rgba(15,23,42,.1);
  border: 1px solid rgba(15,23,42,.05);
}
body.theme-home2 .story-num { color: #d4b896; font-family: Fraunces, Georgia, serif; }
body.theme-home2 .story-tag {
  background: #f7f1e8; color: #8b7355; border: 1px solid rgba(184,149,106,.25);
}

body.theme-home3 .story-media {
  border-radius: 1.75rem;
  box-shadow: 0 22px 45px rgba(15,23,42,.1);
}
body.theme-home3 .story-num { color: #2f6b4f; font-family: Syne, sans-serif; }
body.theme-home3 .story-tag {
  background: #e6f4ec; color: #2f6b4f; font-weight: 700;
}

.story-timeline {
  display: grid;
  gap: 1rem;
}
@media (min-width: 768px) {
  .story-timeline { grid-template-columns: repeat(4, 1fr); }
}
.story-timeline article {
  position: relative;
  padding-top: 1.25rem;
}
.story-timeline article::before {
  content: '';
  position: absolute; top: 0; left: 0;
  width: 2rem; height: 2px;
}

body.is-dark .story-timeline article::before { background: #c4a574; }
body.theme-home2 .story-timeline article {
  background: #fff; border-radius: 1.5rem; padding: 1.5rem;
  box-shadow: 0 14px 36px rgba(15,23,42,.06);
  border: 1px solid rgba(15,23,42,.05);
}
body.theme-home2 .story-timeline article::before { background: #d4b896; top: 1.5rem; left: 1.5rem; }
body.theme-home2 .story-timeline article { padding-top: 2.25rem; }
body.theme-home3 .story-timeline article {
  background: #fff; border-radius: 1.5rem; padding: 1.4rem;
  box-shadow: 0 14px 36px rgba(15,23,42,.07);
}
body.theme-home3 .story-timeline article::before { background: #2f6b4f; top: 1.4rem; left: 1.4rem; }
body.theme-home3 .story-timeline article { padding-top: 2.2rem; }

.hero-photo-stack {
  position: absolute; inset: 0;
  opacity: .28; pointer-events: none;
}
.hero-photo-stack img {
  position: absolute; object-fit: cover;
  border: 1px solid rgba(255,255,255,.12);
}
body.is-light .hero-photo-stack { opacity: .9; }
