@font-face {
  font-family:WLE Display;
  src:url('../fonts/display-bold.woff') format('woff');
  font-weight:700;
  font-display:swap
}

@font-face {
  font-family:WLE Sans;
  src:url('../fonts/body-regular.woff') format('woff');
  font-weight:400;
  font-display:swap
}

@font-face {
  font-family:WLE Sans;
  src:url('../fonts/body-bold.woff') format('woff');
  font-weight:700;
  font-display:swap
}

@font-face {
  font-family:WLE Editorial;
  src:url('../fonts/editorial-italic.woff') format('woff');
  font-style:italic;
  font-display:swap
}

:root {
  --ink:#111513;
  --charcoal:#1c201d;
  --paper:#f1eee6;
  --white:#f8f5ed;
  --gold:#cfb37e;
  --gold-dark:#77602f;
  --muted:#b3b7ae;
  --paper-muted:#62645b;
  --line-dark:#3a3e37;
  --line-light:#cecfc4;
  --body:'WLE Sans',Arial,sans-serif;
  --display:'WLE Display','Arial Narrow',Arial,sans-serif;
  --editorial:'WLE Editorial',Georgia,serif;
  --gutter:clamp(1.5rem,5.2vw,5.5rem);
  --max:1360px;
  --header:88px
}

* {
  box-sizing:border-box
}

html {
  scroll-behavior:smooth;
  scroll-padding-top:110px
}

body {
  margin:0;
  background:var(--ink);
  color:var(--white);
  font-family:var(--body);
  font-size:17px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased
}

h1,h2,h3,p,figure,blockquote {
  margin:0
}

p+p {
  margin-top:1rem
}

h1,h2,h3 {
  line-height:1.02;
  font-family:var(--display);
  font-weight:700;
  letter-spacing:-.01em
}

h2 {
  font-size:clamp(2.7rem,4.6vw,4.8rem)
}

h3 {
  font-size:1.65rem
}

img {
  display:block;
  max-width:100%;
  height:auto
}

a {
  color:inherit;
  text-decoration:none
}

button,input {
  font:inherit
}

button,a,input {
  touch-action:manipulation
}

button {
  color:inherit;
  cursor:pointer
}

button:disabled,input:disabled {
  cursor:not-allowed
}

button {
  border:0
}

a,button,input,summary {
  outline-offset:6px
}

:focus-visible {
  outline:2px solid var(--gold)
}

.section-paper :focus-visible,.join-section :focus-visible {
  outline-color:#725718
}

::selection {
  background:var(--gold);
  color:var(--ink)
}

[hidden] {
  display:none!important
}

svg {
  display:block
}

.svg-sprite {
  position:absolute;
  width:0;
  height:0;
  overflow:hidden
}

.icon {
  width:22px;
  height:22px;
  flex:0 0 22px
}

.sr-only {
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0
}

.skip-link {
  position:fixed;
  z-index:100;
  left:1rem;
  top:1rem;
  padding:.7rem 1rem;
  color:var(--ink);
  background:var(--paper);
  transform:translateY(-200%)
}

.skip-link:focus {
  transform:none
}

.wrap {
  max-width:var(--max);
  width:calc(100% - var(--gutter)*2);
  margin-inline:auto
}

.section-paper {
  background:var(--paper);
  color:var(--ink)
}

.section-dark {
  background:var(--ink);
  color:var(--white)
}

.eyebrow,.micro {
  text-transform:uppercase;
  letter-spacing:.15em;
  font-size:.8125rem;
  line-height:1.5
}

.eyebrow {
  color:var(--gold);
  font-weight:700;
  margin-bottom:1.65rem
}

.section-paper .eyebrow,.join-section .eyebrow {
  color:var(--gold-dark)
}

.small {
  font-size:.875rem;
  line-height:1.6
}

.muted {
  color:var(--muted)
}

.section-paper .muted {
  color:var(--paper-muted)
}

.text-link {
  display:inline-flex;
  gap:1.25rem;
  align-items:center;
  font-size:.9375rem;
  font-weight:700;
  padding:.45rem 0;
  border-bottom:1px solid currentColor;
  line-height:1.6
}

.text-link .icon {
  transition:transform .2s
}

.text-link:hover .icon {
  transform:translateX(5px)
}

.button {
  min-height:56px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:1.5rem;
  padding:.85rem 1.7rem;
  font-size:.875rem;
  font-weight:700;
  letter-spacing:.045em;
  text-transform:uppercase;
  transition:background .2s,border-color .2s
}

.button-gold {
  background:var(--gold);
  color:var(--ink);
  border:1px solid var(--gold)
}

.button-gold:hover {
  background:#e4c998;
  border-color:#e4c998
}

.button-outline {
  background:transparent;
  border:1px solid #c5c3b7;
  color:var(--white)
}

.button-outline:hover {
  background:#ffffff12;
  border-color:var(--white)
}

.serif-phrase {
  font-family:var(--editorial);
  font-style:italic;
  letter-spacing:-.025em;
  font-weight:400;
  text-transform:none
}

.status-label {
  display:inline-block;
  text-transform:uppercase;
  letter-spacing:.13em;
  line-height:1.4;
  font-size:.75rem;
  padding:.48rem .75rem;
  border:1px solid currentColor;
  color:var(--gold)
}

.section-paper .status-label {
  color:var(--gold-dark)
}

.fine-line {
  height:1px;
  background:var(--line-light)
}

.mobile-break {
  display:none
}

.site-header {
  position:relative;
  background:var(--ink);
  z-index:20;
  min-height:var(--header);
  border-bottom:1px solid #ffffff16
}

.header-inner {
  max-width:1600px;
  margin:auto;
  min-height:var(--header);
  padding-inline:clamp(1.5rem,3.5vw,4rem);
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:2rem
}

.brand {
  display:flex;
  align-items:center;
  gap:1.15rem;
  flex-shrink:0;
  line-height:1.2
}

.brand img {
  width:62px;
  height:auto
}

.brand>span {
  font-size:.875rem;
  letter-spacing:.12em;
  font-weight:700;
  white-space:nowrap
}

.trademark {
  font-size:.65em;
  vertical-align:super;
  letter-spacing:0
}

.site-nav {
  display:flex;
  align-items:center;
  gap:clamp(1rem,1.6vw,1.8rem)
}

.site-nav>a {
  font-size:.875rem;
  white-space:nowrap;
  padding:.8rem 0;
  color:#e4e5dc
}

.site-nav>a:hover,.site-nav>a[aria-current=page] {
  color:var(--gold)
}

.site-nav .nav-join {
  display:flex;
  align-items:center;
  gap:1rem;
  border:1px solid #777d6b;
  padding:.7rem 1rem;
  margin-left:.3rem;
  color:var(--gold)
}

.menu-toggle {
  display:none
}

.hero {
  position:relative;
  min-height:720px;
  height:calc(100svh - var(--header));
  max-height:1080px;
  display:flex;
  align-items:flex-end;
  isolation:isolate;
  background:#0b100d;
  --scene-duration:9.6s
}

.hero-media {
  position:absolute;
  inset:0;
  z-index:-3;
  overflow:hidden
}

.hero-media:after {
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,#090e0b18 5%,#090e0b00 32%,#090e0b3d 49%,#090e0bd1 78%,#0b100d 100%);
  z-index:2
}

.hero-stage {
  position:absolute;
  inset:0
}

.hero-landscape {
  height:100%;
  width:100%;
  object-fit:cover;
  object-position:center
}

.hero-scene {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  pointer-events:none
}

.dawn-veil {
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(180deg,#080f19 0%,#090f15 58%,#060c0d 100%);
  opacity:0;
  pointer-events:none
}

.hero-crest {
  opacity:.82
}

.sun-rise {
  transform:translateY(0)
}

.horizon-light {
  opacity:.68
}

.hero.is-revealing .dawn-veil {
  animation:dawn-reveal-v07 var(--scene-duration) linear both
}

.hero.is-revealing .hero-crest {
  animation:crest-reveal-v07 var(--scene-duration) ease both
}

.hero.is-revealing .sun-rise {
  animation:sunrise-v07 var(--scene-duration) cubic-bezier(.22,.3,.32,1) both
}

.hero.is-revealing .horizon-light {
  animation:horizon-v07 var(--scene-duration) ease both
}

.hero.is-revealing .hero-content {
  animation:words-reveal-v07 var(--scene-duration) ease both
}

.hero.is-paused .dawn-veil,.hero.is-paused .hero-crest,
.hero.is-paused .sun-rise,.hero.is-paused .horizon-light,
.hero.is-paused .hero-content {
  animation-play-state:paused
}

.hero-content:focus-within {
  animation:none!important;
  opacity:1!important;
  transform:none!important
}

.scene-fallback .sun-rise,.scene-fallback .horizon-light {
  display:none
}

.hero-utilities {
  position:absolute;
  top:1.65rem;
  left:var(--gutter);
  right:var(--gutter);
  width:auto;
  z-index:3
}

.sound-invitation {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:.35rem
}

.hero-sound {
  display:inline-flex;
  align-items:center;
  gap:.7rem;
  min-height:44px;
  padding:.65rem 1rem;
  border:1px solid #d4c6a95c;
  border-radius:2px;
  background:#0c1311e8;
  color:#f4e8d2;
  font-size:.8125rem;
  letter-spacing:.025em
}

.hero-sound:hover {
  background:#202a21
}

.hero-sound .icon {
  width:17px;
  height:17px;
  flex-basis:17px
}

.sound-caption {
  font-size:.6875rem;
  letter-spacing:.055em;
  color:#e2dfd3;
  background:#0c1311c9;
  padding:.05rem .45rem
}

.hero-audio-message:not(:empty) {
  background:#0c1311;
  max-width:290px;
  padding:.5rem .7rem;
  color:var(--white);
  font-size:.8125rem
}

.hero-content {
  padding-top:12rem;
  padding-bottom:7rem;
  position:relative
}

.hero-content .eyebrow {
  margin-bottom:1.2rem;
  color:#e0c59a
}

.hero h1 {
  font-size:clamp(4.2rem,7.1vw,7.7rem);
  line-height:.97;
  letter-spacing:.005em;
  max-width:960px
}

.hero h1 span {
  color:#eee6d5
}

.hero-support {
  font-size:1.125rem;
  line-height:1.6;
  margin-top:1.4rem;
  color:#e0e1d8;
  max-width:620px
}

.hero-actions {
  display:flex;
  gap:1rem;
  margin-top:1.75rem
}

.hero-bottom {
  position:absolute;
  bottom:1.5rem;
  left:var(--gutter);
  right:var(--gutter);
  width:auto;
  max-width:var(--max);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem
}

.hero-bottom>a {
  display:flex;
  align-items:center;
  gap:1.25rem;
  font-size:.8125rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#d6d8cf
}

.hero-bottom .icon {
  width:18px;
  height:18px;
  flex-basis:18px
}

.motion-control {
  display:flex;
  align-items:center;
  gap:.6rem;
  background:#101a14a6;
  border:1px solid #afb39f66;
  padding:.65rem .85rem;
  font-size:.8125rem;
  line-height:1.4;
  color:var(--white);
  min-height:44px
}

.scene-controls {
  display:flex;
  align-items:center;
  gap:.7rem
}

.scene-skip {
  min-height:44px;
  padding:.5rem .3rem;
  background:transparent;
  font-size:.8125rem;
  color:#ede4d5;
  text-decoration:underline;
  text-underline-offset:4px
}

@keyframes dawn-reveal-v07 {
  0%,6% {opacity:.97}
  24% {opacity:.77}
  49% {opacity:.36}
  77% {opacity:.07}
  100% {opacity:0}
}

@keyframes sunrise-v07 {
  0%,12% {transform:translateY(63px)}
  64%,100% {transform:translateY(0)}
}

@keyframes horizon-v07 {
  0%,8% {opacity:0}
  35% {opacity:.38}
  64%,100% {opacity:.68}
}

@keyframes crest-reveal-v07 {
  0%,34% {opacity:0}
  56% {opacity:.38}
  77%,100% {opacity:.82}
}

@keyframes words-reveal-v07 {
  0%,43% {opacity:0;transform:translateY(10px)}
  72%,100% {opacity:1;transform:translateY(0)}
}

.scripture {
  padding:7.5rem 0 6.5rem;
  text-align:center
}

.scripture-inner {
  max-width:950px
}

.scripture .eyebrow {
  margin-bottom:2.4rem
}

.scripture blockquote p {
  font-family:var(--editorial);
  font-style:italic;
  font-size:clamp(1.85rem,3.3vw,3.25rem);
  line-height:1.32;
  letter-spacing:-.02em
}

.scripture blockquote em {
  font-style:normal
}

.scripture blockquote strong {
  display:inline-block;
  font-family:var(--display);
  font-weight:700;
  font-style:normal;
  font-size:clamp(2.65rem,4.5vw,4.5rem);
  line-height:1.2;
  letter-spacing:0;
  margin-top:.4rem
}

.scripture cite {
  display:block;
  font-family:var(--body);
  font-style:normal;
  font-size:.8125rem;
  letter-spacing:.15em;
  text-transform:uppercase;
  margin-top:1.8rem;
  color:var(--paper-muted)
}

.scripture .fine-line {
  width:70px;
  margin:2.3rem auto 1.8rem
}

.scripture-caption {
  font-size:.9375rem;
  color:var(--paper-muted)
}

.mission-section {
  padding:7rem 0 0
}

.split-heading {
  display:grid;
  grid-template-columns:1fr 2fr;
  gap:4rem
}

.split-heading>.eyebrow {
  padding-top:.7rem
}

.mission-section .lead {
  font-family:var(--editorial);
  font-style:italic;
  font-size:1.8rem;
  line-height:1.45;
  color:#d5d8ce;
  margin-top:1.8rem
}

.mission-bottom {
  display:grid;
  grid-template-columns:1fr 1fr .75fr;
  gap:4rem;
  margin-top:4.5rem;
  padding-top:2.5rem;
  border-top:1px solid var(--line-dark);
  align-items:start;
  color:var(--muted)
}

.mission-bottom p+p {
  margin:0
}

.mission-bottom .text-link {
  justify-self:end;
  color:var(--gold);
  white-space:nowrap
}

.brand-progression {
  display:flex;
  justify-content:space-between;
  padding:3rem 0;
  margin-top:3.5rem;
  border-top:1px solid var(--line-dark);
  font-size:.875rem;
  letter-spacing:.25em;
  color:#c7ccbf
}

.brand-progression span+span:before {
  content:'·';
  margin-right:clamp(1rem,7vw,9rem);
  color:#696f60
}

.collection-section {
  padding:7rem 0
}

.collection-heading {
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:3rem;
  margin-bottom:3.8rem
}

.collection-heading h2 {
  font-size:clamp(5rem,10vw,10rem);
  line-height:.85;
  letter-spacing:-.025em
}

.collection-heading .eyebrow {
  margin-bottom:1.4rem
}

.gold-period,.word-period {
  color:#9b824e
}

.collection-intro {
  max-width:340px;
  font-size:1rem
}

.collection-intro>p:first-child {
  font-size:1.3rem
}

.collection-intro .text-link {
  margin-top:1.2rem
}

.product-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1rem
}

.product-card {
  min-width:0;
  min-height:300px;
  background:linear-gradient(145deg,#11130f,#22251c);
  color:var(--paper);
  padding:1.4rem 1.5rem 1.7rem;
  border:1px solid rgba(228,226,217,.13);
  display:flex;
  flex-direction:column;
  transition:background .25s,border-color .25s
}

.product-card:nth-child(2),.product-card:nth-child(4),.product-card:nth-child(6) {
  background:linear-gradient(145deg,#171913,#292b21)
}

.product-card:hover {
  background:linear-gradient(145deg,#20241a,#303428);
  border-color:#9b824e
}

.product-top {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  color:#b9b8ad
}

.product-status {
  font-size:.75rem;
  line-height:1.4
}

.product-word {
  font-family:var(--editorial);
  font-style:italic;
  letter-spacing:-.05em;
  font-size:clamp(3.8rem,5.5vw,5.7rem);
  line-height:1.1;
  margin:auto 0;
  overflow-wrap:anywhere
}

.product-bottom {
  display:flex;
  justify-content:space-between;
  gap:.75rem;
  align-items:center;
  margin-top:1rem
}

.product-tagline {
  color:#b49a5c;
  font-size:.7rem;
  font-weight:700;
  letter-spacing:.16em;
  line-height:1.4;
  text-transform:uppercase
}

.product-bottom h3 {
  font-family:var(--body);
  font-size:.9375rem;
  line-height:1.45;
  letter-spacing:0
}

.product-bottom .icon {
  width:20px
}

.collection-note {
  color:var(--paper-muted);
  margin-top:1.5rem;
  max-width:700px
}

.story-section {
  padding:7rem 0
}

.story-grid {
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:clamp(3rem,7vw,7rem);
  align-items:center
}

.story-image {
  position:relative;
  align-self:stretch;
  min-height:610px
}

.story-image img {
  width:100%;
  height:100%;
  min-height:610px;
  object-fit:cover;
  object-position:45% center
}

.story-image figcaption {
  position:absolute;
  bottom:0;
  left:0;
  right:0;
  font-size:.75rem;
  color:#e4e7db;
  padding:4rem 1.2rem 1.2rem;
  background:linear-gradient(transparent,#070d0bd6)
}

.image-corner {
  position:absolute;
  left:1.2rem;
  top:1.2rem;
  padding:.25rem .5rem;
  background:#0b120fa6;
  font-size:.75rem;
  letter-spacing:.1em
}

.story-copy h2 {
  font-size:clamp(3.5rem,5.2vw,5.6rem);
  margin-bottom:2rem
}

.story-copy p:not(.eyebrow) {
  color:var(--muted)
}

.story-copy .text-link {
  margin-top:1.8rem;
  color:var(--gold)
}

.story-copy .film-note {
  border-top:1px solid var(--line-dark);
  margin-top:2rem;
  padding-top:1.2rem
}

.stories-section {
  padding:7rem 0 5rem
}

.stories-heading {
  display:grid;
  grid-template-columns:1.4fr 1fr;
  gap:7rem;
  align-items:end
}

.stories-heading h2 {
  font-size:clamp(3rem,4.7vw,4.8rem)
}

.stories-heading h2 .serif-phrase {
  display:block;
  margin-top:.2rem;
  font-size:1.04em;
  line-height:1.12
}

.stories-heading>div {
  max-width:410px
}

.stories-heading .text-link {
  margin-top:1.5rem
}

.story-formats {
  display:flex;
  gap:3rem;
  border-top:1px solid var(--line-light);
  border-bottom:1px solid var(--line-light);
  padding:1.8rem 0;
  margin:3.5rem 0 1.5rem
}

.story-formats span {
  flex:1;
  font-size:1rem
}

.story-formats b {
  font-size:.75rem;
  letter-spacing:.1em;
  margin-right:1rem;
  color:var(--gold-dark)
}

.action-section {
  padding:7rem 0;
  background:#1d241d
}

.action-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:clamp(4rem,10vw,10rem);
  align-items:center
}

.action-grid>div>p:not(.eyebrow) {
  margin-top:2rem;
  color:#c5cbbd;
  max-width:420px
}

.action-grid>div>.text-link {
  color:var(--gold);
  margin-top:2rem
}

.action-grid h2 {
  font-size:clamp(3.4rem,5.5vw,5.8rem)
}

.action-grid h2 .serif-phrase {
  line-height:1.2
}

.initiative-preview {
  border-top:1px solid #65705a;
  padding-top:1.6rem
}

.initiative-top {
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:2.5rem
}

.initiative-top .micro {
  color:#c0c9b4
}

.initiative-preview .eyebrow {
  margin-bottom:1rem
}

.initiative-preview h3 {
  font-size:3.75rem;
  margin-bottom:1.5rem
}

.initiative-preview>p:not(.eyebrow) {
  color:#c5cbbd
}

.initiative-preview>.small {
  color:#b6c0ad
}

.initiative-preview .text-link {
  margin-top:1.8rem;
  color:var(--gold)
}

.transparency-section {
  padding:7rem 0 6rem
}

.transparency-grid {
  display:grid;
  grid-template-columns:1fr 2fr;
  gap:4rem
}

.transparency-grid>.eyebrow {
  padding-top:.7rem
}

.transparency-grid h2 {
  font-size:clamp(3.5rem,6vw,6.25rem)
}

.transparency-grid p:not(.eyebrow) {
  margin-top:1.8rem;
  max-width:620px;
  color:var(--paper-muted)
}

.transparency-grid .text-link {
  margin-top:1.5rem
}

.journey-section {
  padding:1rem 0 7rem
}

.journey-section .wrap {
  border-top:1px solid var(--line-light);
  padding-top:4rem
}

.journey-heading {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:3rem;
  margin-bottom:3rem
}

.journey-heading>p {
  max-width:260px
}

.journey-heading h2 {
  font-size:3.2rem
}

.journey-list {
  padding:0;
  list-style:none;
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:1.7rem;
  margin:0
}

.journey-step {
  border-top:1px solid #a7ab99;
  padding-top:1.4rem
}

.journey-step.is-next {
  border-top:3px solid var(--gold-dark);
  padding-top:calc(1.4rem - 2px)
}

.step-index {
  font-family:var(--editorial);
  font-style:italic;
  font-size:2.2rem;
  color:var(--gold-dark);
  display:block;
  line-height:1
}

.step-status {
  font-size:.75rem;
  letter-spacing:.08em;
  display:block;
  color:var(--paper-muted);
  margin:1.2rem 0 .5rem
}

.journey-step h3 {
  font-family:var(--body);
  letter-spacing:0;
  font-size:1rem;
  line-height:1.4;
  margin-bottom:.8rem
}

.journey-step p {
  font-size:.875rem;
  line-height:1.55;
  color:var(--paper-muted)
}

.journey-note {
  margin-top:2rem
}

.music-section {
  padding:7rem 0
}

.music-grid {
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:clamp(3rem,8vw,8rem);
  align-items:center
}

.music-art {
  position:relative;
  aspect-ratio:1;
  overflow:hidden;
  max-width:560px
}

.music-art:after {
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(#0b100c30,#0b100c9c 50%,#0b100ce8)
}

.music-art>img {
  height:100%;
  width:100%;
  object-fit:cover;
  object-position:52% center
}

.music-art-type {
  position:absolute;
  inset:2rem;
  z-index:1;
  display:flex;
  flex-direction:column;
  justify-content:space-between
}

.music-art-type>span {
  font-size:.7rem;
  letter-spacing:.2em
}

.music-art-type>strong {
  font-family:var(--display);
  font-size:clamp(3.7rem,5.2vw,5.5rem);
  line-height:.95;
  letter-spacing:.02em
}

.music-copy h2 {
  font-size:clamp(3rem,5vw,5rem)
}

.music-intro {
  margin-top:1.4rem;
  color:#c4c9bd
}

.audio-player {
  margin-top:2.5rem
}

.audio-player audio {
  width:100%
}

.track-heading {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:1rem
}

.track-heading .micro {
  font-size:.75rem;
  letter-spacing:.1em
}

.track-duration {
  font-size:.8125rem;
  color:var(--muted)
}

.waveform {
  height:54px;
  width:100%;
  margin-top:1.5rem;
  fill:#a39573
}

.audio-rule {
  height:1px;
  background:var(--line-dark);
  margin-top:1.5rem
}

.audio-seek {
  width:100%;
  margin:.6rem 0;
  accent-color:var(--gold);
  height:26px;
  cursor:pointer
}

.audio-controls {
  display:flex;
  align-items:center;
  gap:1rem
}

.audio-play {
  width:56px;
  height:56px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:var(--gold);
  color:var(--ink)
}

.audio-play:hover {
  background:#e4ca99
}

.audio-time {
  font-size:.875rem;
  font-variant-numeric:tabular-nums;
  color:var(--muted)
}

.current-time {
  color:var(--white)
}

.audio-mute {
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  margin-left:auto;
  background:transparent;
  color:var(--muted)
}

.audio-mute:hover {
  color:var(--white)
}

.audio-message:empty {
  display:none
}

.audio-message {
  color:#e6bd8d;
  margin-top:1rem
}

.music-copy>.small {
  margin-top:1.5rem
}

.join-section {
  background:#ddc598;
  color:var(--ink);
  padding:6.5rem 0
}

.join-grid {
  display:grid;
  grid-template-columns:1.1fr 1fr;
  gap:6rem;
  align-items:center
}

.join-grid h2 {
  font-size:clamp(3.4rem,5.1vw,5.5rem)
}

.join-grid>div:first-child>p:last-child {
  max-width:450px;
  margin-top:1.5rem
}

.join-section .eyebrow {
  color:#51442d
}

.form-intro {
  font-weight:700;
  margin-bottom:1rem
}

.signup-form fieldset {
  border:0;
  padding:0;
  margin:0;
  min-inline-size:0
}

.signup-form label {
  font-size:.875rem
}

.signup-row {
  display:flex;
  margin-top:.6rem;
  border-bottom:1px solid #5a513c;
  padding-bottom:.4rem;
  gap:1rem
}

.signup-row input {
  width:100%;
  min-width:0;
  background:transparent;
  border:0;
  padding:.75rem 0;
  color:#3e3e31;
  font-size:1rem;
  opacity:1
}

.signup-row input::placeholder {
  color:#5e5847;
  opacity:1
}

.signup-row button {
  display:flex;
  align-items:center;
  gap:1rem;
  white-space:nowrap;
  background:transparent;
  padding:0;
  font-size:.8125rem;
  font-weight:700;
  color:#50462e
}

.signup-form .consent {
  display:flex;
  align-items:flex-start;
  gap:.6rem;
  font-size:.8125rem;
  margin:1.2rem 0 .9rem;
  line-height:1.5;
  color:#514b3d
}

.consent input {
  margin-top:4px;
  flex-shrink:0;
  accent-color:#3e462e
}

.signup-form>.small {
  color:#514b3d;
  font-size:.8125rem
}

.signup-form>.small a {
  color:inherit;
  text-decoration:underline;
  text-underline-offset:.2em
}

.signup-form .ml-form-checkboxRow {
  margin-top:1rem
}

.signup-form .ml-form-recaptcha {
  min-height:78px;
  margin-top:1rem
}

.signup-form .loading[hidden] {
  display:none
}

.signup-spinner {
  display:inline-block;
  width:1rem;
  height:1rem;
  border:2px solid currentColor;
  border-right-color:transparent;
  border-radius:50%;
  animation:signup-spin .8s linear infinite
}

@keyframes signup-spin {
  to { transform:rotate(360deg) }
}

.signup-success {
  padding:1.5rem 0 2rem;
  outline:none
}

.signup-success h3 {
  margin:.4rem 0 1rem;
  color:#171b17;
  font-family:var(--display);
  font-size:clamp(2rem,4vw,3.5rem);
  line-height:.92
}

.signup-success p:last-child {
  max-width:34rem;
  color:#514b3d
}

.join-form-wrap>.text-link {
  margin-top:1.5rem
}

.form-feedback:not(:empty) {
  margin-top:1rem;
  font-weight:700
}

.site-footer {
  padding:4.5rem 0 1.7rem;
  background:#0b100d
}

.footer-main {
  display:grid;
  grid-template-columns:1.2fr 1fr 1fr;
  gap:3rem;
  align-items:start;
  padding-bottom:3.5rem
}

.footer-main .brand>span {
  font-size:.75rem
}

.footer-main .brand img {
  width:65px
}

.footer-main>p {
  font-family:var(--display);
  font-size:2.1rem;
  line-height:1.08;
  color:#d5dace
}

.footer-main nav {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1rem;
  font-size:.875rem;
  color:#c4cabe
}

.footer-main a:hover,.footer-bottom a:hover {
  color:var(--gold)
}

.footer-bottom {
  border-top:1px solid var(--line-dark);
  padding-top:1.5rem;
  display:flex;
  gap:2rem;
  align-items:center;
  justify-content:space-between;
  font-size:.75rem;
  color:#a9b09f
}

.footer-bottom p+p {
  margin:0
}

.footer-bottom a {
  min-height:32px;
  display:flex;
  align-items:center;
  gap:1rem
}

.page-intro {
  padding:6.5rem 0 5rem
}

.page-intro h1 {
  font-size:clamp(3.6rem,7.3vw,7rem);
  max-width:950px
}

.page-intro .intro-copy {
  font-size:1.2rem;
  max-width:650px;
  margin-top:2rem
}

.page-intro .eyebrow {
  margin-bottom:1.5rem
}

.page-intro .text-link {
  margin-top:2rem
}

.page-section {
  padding:4rem 0 6rem
}

.page-section .section-heading {
  margin-bottom:3rem
}

.page-section h2 {
  font-size:clamp(2.6rem,4vw,4rem)
}

.prose {
  max-width:760px
}

.prose p {
  font-size:1.125rem;
  line-height:1.9
}

.prose h2 {
  margin:3rem 0 1.4rem
}

.prose h2:first-child {
  margin-top:0
}

.prose .eyebrow {
  font-size:.8125rem
}

.prose .pull-quote {
  font-family:var(--editorial);
  font-style:italic;
  font-size:2.5rem;
  line-height:1.3;
  letter-spacing:-.02em;
  margin:2.8rem 0;
  padding:1.5rem 0;
  border-top:1px solid var(--line-light);
  border-bottom:1px solid var(--line-light)
}

.reading-layout {
  display:grid;
  grid-template-columns:1fr 2fr;
  gap:5rem
}

.reading-aside {
  font-size:.875rem;
  color:var(--paper-muted)
}

.reading-aside .eyebrow {
  color:var(--gold-dark)
}

.reading-aside p {
  max-width:270px
}

.reading-aside .text-link {
  margin-top:1.5rem
}

.story-feature {
  padding:0 0 5rem
}

.story-feature figure {
  position:relative
}

.story-film-status {
  margin:0 0 clamp(1.5rem,3vw,2.75rem);
  max-width:48rem
}

.story-film-status .status-label {
  display:inline-flex;
  margin:.35rem 0 1.15rem
}

.story-film-status h2 {
  margin:0 0 1rem
}

.story-film-status p:last-child {
  max-width:42rem
}

.story-feature img {
  max-height:630px;
  width:100%;
  object-fit:cover;
  object-position:center 55%
}

.story-feature figcaption {
  font-size:.8125rem;
  color:var(--paper-muted);
  margin-top:.7rem
}

.story-movement {
  border-top:1px solid var(--line-light);
  padding-top:3rem;
  margin-top:4rem
}

.story-movement h2 {
  max-width:820px;
  font-size:3.5rem
}

.story-movement .text-link {
  margin-top:1.8rem
}

.product-detail {
  display:grid;
  grid-template-columns:1.1fr 1fr;
  gap:5rem;
  align-items:center;
  border-top:1px solid var(--line-light);
  padding:3rem 0;
  scroll-margin-top:2rem
}

.product-detail-art {
  background:linear-gradient(145deg,#11130f,#292c21);
  color:var(--paper);
  min-height:350px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:space-between;
  padding:2rem
}

.product-detail-art .micro {
  color:#b9b8ad
}

.product-detail-art .product-word {
  font-size:clamp(4rem,7vw,7.3rem)
}

.product-detail-copy .eyebrow {
  margin-bottom:1rem
}

.product-detail-copy h2 {
  font-size:2.8rem;
  margin-bottom:1.5rem
}

.product-detail-tagline {
  color:#816c3d;
  font-size:.8rem;
  font-weight:700;
  letter-spacing:.16em;
  margin:-.6rem 0 1.25rem;
  text-transform:uppercase
}

.product-feature {
  border-left:2px solid #9b824e;
  margin:1.6rem 0;
  padding:.15rem 0 .15rem 1rem
}

.product-feature span {
  color:#67695c;
  display:block;
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.14em;
  margin-bottom:.35rem;
  text-transform:uppercase
}

.product-feature p {
  font-size:.95rem;
  line-height:1.5
}

.product-detail-copy>.status-label {
  margin:1.5rem 0
}

.product-detail-copy .small {
  max-width:430px
}

.collection-principles {
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:4rem;
  border-top:1px solid var(--line-light);
  padding:3rem 0 1rem
}

.collection-principles h3 {
  font-size:1.7rem;
  margin-bottom:1rem
}

.collection-principles p {
  color:var(--paper-muted);
  font-size:1rem
}

.empty-story {
  padding:3rem;
  border:1px solid var(--line-light);
  max-width:900px
}

.empty-story h2 {
  font-size:3rem;
  margin-bottom:1.5rem;
  max-width:630px
}

.empty-story p {
  max-width:680px
}

.story-format-tabs {
  margin-top:4rem
}

.tablist {
  display:flex;
  border-bottom:1px solid var(--line-light);
  gap:.5rem
}

.format-tab {
  background:transparent;
  color:var(--paper-muted);
  border-bottom:3px solid transparent;
  padding:1rem 1.6rem;
  font-size:1rem
}

.format-tab[aria-selected=true] {
  border-color:var(--gold-dark);
  color:var(--ink)
}

.format-panel {
  padding:2rem 0;
  max-width:760px
}

.format-panel h3 {
  font-family:var(--body);
  font-size:1.3rem;
  line-height:1.4;
  letter-spacing:0;
  margin-bottom:1rem
}

.moderation-list {
  list-style:none;
  padding:0;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:3rem;
  margin:3rem 0 0
}

.moderation-list li {
  border-top:1px solid var(--line-light);
  padding-top:1.5rem
}

.moderation-list .micro {
  color:var(--gold-dark)
}

.moderation-list h3 {
  margin:1rem 0
}

.moderation-list p {
  font-size:1rem;
  color:var(--paper-muted)
}

.impact-intro {
  border-bottom:1px solid var(--line-light)
}

.impact-proposal {
  padding:5rem 0
}

.impact-proposal-grid {
  display:grid;
  grid-template-columns:1.4fr 1fr;
  gap:6rem
}

.impact-proposal h2 {
  font-size:4rem;
  margin:1.3rem 0 1.6rem
}

.proposal-facts {
  border-top:1px solid var(--line-light);
  padding-top:1.5rem
}

.proposal-facts div {
  padding:1.3rem 0;
  border-bottom:1px solid var(--line-light)
}

.proposal-facts dt {
  font-size:.8125rem;
  text-transform:uppercase;
  letter-spacing:.1em;
  color:var(--gold-dark);
  margin-bottom:.4rem
}

.proposal-facts dd {
  margin:0;
  font-size:1rem
}

.proposal-path {
  display:flex;
  list-style:none;
  padding:0;
  gap:1.4rem;
  margin-top:3rem
}

.proposal-path li {
  flex:1;
  font-size:.875rem;
  border-top:1px solid var(--line-light);
  padding-top:1rem;
  color:var(--paper-muted)
}

.proposal-path li[aria-current=step] {
  border-top:3px solid var(--gold-dark);
  padding-top:calc(1rem - 2px);
  font-weight:700;
  color:var(--ink)
}

.accountability-section {
  padding:5rem 0
}

.accountability-section .section-heading {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:5rem;
  align-items:end
}

.accountability-section h2 {
  font-size:3.5rem
}

.reporting-list {
  margin-top:3rem
}

.reporting-list>div {
  display:grid;
  grid-template-columns:1fr 2fr;
  gap:4rem;
  border-top:1px solid var(--line-dark);
  padding:1.7rem 0
}

.reporting-list h3 {
  font-family:var(--body);
  font-size:1.1rem;
  letter-spacing:0;
  line-height:1.5
}

.reporting-list p {
  color:var(--muted);
  font-size:1rem
}

.privacy-copy ul {
  padding-left:1.2rem
}

.privacy-copy li {
  margin-bottom:1rem
}

.error-page {
  min-height:65svh
}

@media(min-width:1600px) {
  .hero-bottom {
    left:calc((100% - var(--max))/2);
    right:calc((100% - var(--max))/2)
  }
}

@media(max-width:1250px) {
  .brand>span {
    font-size:.8rem;
    letter-spacing:.08em
  }
  .brand {
    gap:.8rem
  }
  .brand img {
    width:54px
  }
  .site-nav {
    gap:.9rem
  }
  .site-nav>a {
    font-size:.8125rem
  }
  .site-nav .nav-join {
    padding:.65rem .7rem;
    gap:.6rem
  }
  .header-inner {
    gap:1rem
  }
  .journey-list {
    grid-template-columns:repeat(3,1fr);
    gap:2.5rem
  }
  .brand-progression span+span:before {
    margin-right:clamp(1rem,5vw,5rem)
  }
  .mission-bottom {
    gap:2rem
  }
  .product-card {
    padding:1.2rem
  }
  .product-top {
    gap:.5rem
  }
  .product-word {
    font-size:4rem
  }
  .footer-main {
    gap:2rem
  }
  .join-grid {
    gap:3.5rem
  }
}

@media(max-width:1100px) {
  :root {
    --header:78px
  }
  .site-nav {
    position:absolute;
    left:0;
    right:0;
    top:100%;
    background:var(--ink);
    padding:1.5rem var(--gutter) 2rem;
    border-bottom:1px solid var(--line-dark);
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:0
  }
  .js .site-nav:not(.is-open) {
    display:none
  }
  .site-nav>a {
    font-size:1rem;
    padding:.8rem 0
  }
  .site-nav .nav-join {
    align-self:flex-start;
    margin:1rem 0 0;
    padding:.7rem 1rem
  }
  .menu-toggle {
    display:none;
    background:transparent;
    align-items:center;
    gap:.9rem;
    padding:.6rem 0;
    min-height:44px
  }
  .js .menu-toggle {
    display:flex
  }
  .menu-text {
    font-size:.875rem
  }
  .menu-lines {
    width:23px;
    height:12px;
    position:relative;
    border-top:1px solid currentColor;
    border-bottom:1px solid currentColor
  }
  .menu-toggle[aria-expanded=true] .menu-lines {
    border-bottom:0;
    transform:translateY(5px) rotate(45deg)
  }
  .menu-toggle[aria-expanded=true] .menu-lines:after {
    content:'';
    position:absolute;
    left:0;
    top:-1px;
    width:23px;
    border-top:1px solid currentColor;
    transform:rotate(-90deg)
  }
  html:not(.js) .header-inner {
    flex-wrap:wrap;
    padding-top:1rem
  }
  html:not(.js) .site-nav {
    position:static;
    flex-basis:100%;
    padding-inline:0
  }
  .split-heading,.transparency-grid {
    grid-template-columns:1fr 2fr;
    gap:2rem
  }
  .mission-bottom {
    grid-template-columns:1fr 1fr
  }
  .mission-bottom .text-link {
    grid-column:1/-1;
    justify-self:start
  }
  .story-grid {
    gap:3rem
  }
  .stories-heading {
    gap:3rem
  }
  .story-image,.story-image img {
    min-height:570px
  }
  .action-grid {
    gap:4rem
  }
  .music-grid {
    gap:3rem
  }
  .footer-main {
    grid-template-columns:1fr 1fr
  }
  .footer-main nav {
    grid-column:1/-1;
    grid-template-columns:repeat(4,1fr)
  }
  .product-detail {
    gap:3rem
  }
  .reading-layout {
    gap:3rem
  }
  .impact-proposal-grid {
    gap:3rem
  }
}

@media(max-width:800px) {
  body {
    font-size:16px
  }
  :root {
    --gutter:2rem
  }
  .hero {
    height:850px;
    min-height:700px;
    max-height:none
  }
  .hero-content {
    padding-bottom:7rem
  }
  .hero h1 {
    font-size:clamp(3.5rem,9.1vw,4.6rem)
  }
  .hero-landscape {
    object-position:center
  }
  .hero-support {
    font-size:1.05rem
  }
  .scripture {
    padding:5.5rem 0
  }
  .mission-section {
    padding-top:5rem
  }
  .split-heading,.transparency-grid {
    grid-template-columns:1fr;
    gap:0
  }
  .mission-bottom {
    margin-top:3rem;
    gap:2rem
  }
  .brand-progression {
    font-size:.75rem;
    letter-spacing:.16em
  }
  .brand-progression span+span:before {
    margin-right:1.7rem
  }
  .collection-section,.story-section,.stories-section,.action-section,.music-section {
    padding:5rem 0
  }
  .collection-heading {
    align-items:flex-start;
    gap:3rem;
    margin-bottom:2.5rem
  }
  .collection-heading h2 {
    font-size:7rem
  }
  .collection-intro {
    max-width:280px;
    font-size:.9375rem
  }
  .collection-intro>p:first-child {
    font-size:1.2rem
  }
  .product-grid {
    grid-template-columns:repeat(2,1fr)
  }
  .product-card {
    min-height:270px
  }
  .product-word {
    font-size:4.3rem
  }
  .product-bottom h3 {
    font-size:.9375rem
  }
  .story-grid {
    grid-template-columns:1fr 1fr;
    gap:2.5rem
  }
  .story-image,.story-image img {
    min-height:540px
  }
  .story-copy h2 {
    font-size:3.5rem
  }
  .story-copy p {
    font-size:1rem
  }
  .stories-heading {
    grid-template-columns:1.2fr 1fr;
    gap:2.5rem
  }
  .stories-heading h2 {
    font-size:2.9rem
  }
  .story-formats {
    gap:1.5rem
  }
  .story-formats span {
    font-size:.9375rem
  }
  .story-formats b {
    margin-right:.6rem
  }
  .action-grid {
    gap:3rem
  }
  .action-grid h2 {
    font-size:3.5rem
  }
  .initiative-preview h3 {
    font-size:3rem
  }
  .initiative-top .micro {
    font-size:.75rem
  }
  .transparency-section {
    padding:5rem 0
  }
  .transparency-grid h2 {
    font-size:4.5rem
  }
  .journey-heading h2 {
    font-size:2.8rem
  }
  .journey-heading>p {
    max-width:210px;
    font-size:1rem
  }
  .journey-section {
    padding-bottom:5rem
  }
  .music-grid {
    grid-template-columns:1fr 1fr;
    gap:2rem
  }
  .music-art-type {
    inset:1.4rem
  }
  .music-art-type>strong {
    font-size:3.4rem
  }
  .music-art-type>span {
    font-size:.625rem;
    letter-spacing:.1em
  }
  .music-copy h2 {
    font-size:3.2rem
  }
  .track-heading .micro {
    font-size:.75rem
  }
  .join-section {
    padding:5rem 0
  }
  .join-grid {
    grid-template-columns:1fr;
    gap:3rem
  }
  .join-grid h2 {
    font-size:4.6rem
  }
  .join-form-wrap {
    max-width:640px
  }
  .footer-bottom {
    flex-wrap:wrap;
    gap:1rem
  }
  .page-intro {
    padding:4.5rem 0 3.5rem
  }
  .page-intro h1 {
    font-size:4.5rem
  }
  .reading-layout {
    grid-template-columns:1fr
  }
  .reading-aside {
    max-width:600px
  }
  .reading-aside p {
    max-width:none
  }
  .product-detail {
    gap:2rem
  }
  .product-detail-art {
    min-height:300px;
    padding:1.5rem
  }
  .product-detail-art .product-word {
    font-size:4.5rem
  }
  .product-detail-copy h2 {
    font-size:2.5rem
  }
  .collection-principles {
    gap:2rem
  }
  .impact-proposal-grid {
    grid-template-columns:1fr
  }
  .accountability-section .section-heading {
    gap:2rem
  }
  .accountability-section h2 {
    font-size:3rem
  }
  .proposal-path {
    gap:1rem
  }
  .proposal-path li {
    font-size:.8125rem
  }
}

@media(max-width:600px) {
  :root {
    --header:72px;
    --gutter:1.5rem
  }
  .header-inner {
    padding-inline:1.5rem
  }
  .brand img {
    width:50px
  }
  .brand>span {
    font-size:.7rem;
    letter-spacing:.1em
  }
  .brand {
    gap:.75rem
  }
  .hero {
    height:auto;
    min-height:max(760px,calc(100svh - var(--header)));
    max-height:none
  }
  .hero-landscape {
    object-position:center
  }
  .hero-stage {
    height:clamp(420px,130vw,620px);
    bottom:auto
  }
  .hero-media:after {
    background:linear-gradient(#0b100d08 8%,#0b100d00 26%,#0b100d30 38%,#0b100dd9 62%,#0b100d 77%)
  }
  .hero-utilities {
    top:1rem
  }
  .hero-content {
    padding-top:19rem;
    padding-bottom:7rem
  }
  .hero h1 {
    font-size:clamp(2.1rem,9.9vw,3.7rem);
    line-height:1.01;
    letter-spacing:.002em
  }
  .hero-content .eyebrow {
    font-size:.75rem;
    margin-bottom:1.2rem
  }
  .hero-support {
    font-size:1rem;
    margin-top:1.4rem;
    line-height:1.6;
    max-width:340px
  }
  .mobile-break {
    display:block
  }
  .hero-actions {
    flex-direction:column;
    align-items:stretch;
    gap:.8rem;
    margin-top:1.6rem;
    max-width:360px
  }
  .hero-actions .button {
    min-height:52px;
    padding:.8rem 1.2rem;
    font-size:.8125rem
  }
  .hero-bottom {
    bottom:1.25rem;
    align-items:center;
    gap:.7rem;
    flex-wrap:wrap
  }
  .hero-bottom>a {
    font-size:.75rem;
    gap:.5rem;
    letter-spacing:.06em
  }
  .hero-bottom>a .icon {
    width:15px;
    flex-basis:15px
  }
  .motion-control {
    padding:.6rem;
    font-size:.75rem;
    gap:.4rem;
    min-height:44px
  }
  .hero-bottom .icon {
    width:16px;
    flex-basis:16px
  }
  .scripture {
    padding:4.8rem 0 4.2rem
  }
  .scripture .eyebrow {
    font-size:.75rem;
    margin-bottom:2rem
  }
  .scripture blockquote p {
    font-size:1.85rem;
    line-height:1.42
  }
  .scripture blockquote strong {
    font-size:2.7rem;
    line-height:1.05;
    margin-top:.6rem
  }
  .desktop-break {
    display:none
  }
  .scripture-caption {
    max-width:270px;
    margin:auto
  }
  .mission-section {
    padding-top:4.3rem
  }
  .mission-section h2 {
    font-size:2.85rem
  }
  .mission-section .lead {
    font-size:1.6rem
  }
  .mission-bottom {
    grid-template-columns:1fr;
    gap:1.4rem;
    margin-top:2.5rem;
    padding-top:1.8rem
  }
  .mission-bottom .text-link {
    margin-top:.2rem
  }
  .brand-progression {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:1.2rem 2rem;
    padding:2rem 0;
    margin-top:2.5rem
  }
  .brand-progression span+span:before {
    content:none
  }
  .collection-section {
    padding:4.5rem 0
  }
  .collection-heading {
    display:block;
    margin-bottom:2rem
  }
  .collection-heading h2 {
    font-size:7rem
  }
  .collection-intro {
    max-width:none;
    margin-top:2rem
  }
  .collection-intro>p:first-child {
    font-size:1.2rem
  }
  .collection-intro .muted br {
    display:none
  }
  .collection-intro .text-link {
    margin-top:1rem
  }
  .product-grid {
    grid-template-columns:1fr;
    gap:.75rem
  }
  .product-card {
    min-height:245px;
    padding:1.2rem 1.4rem
  }
  .product-word {
    font-size:5.5rem;
    margin:1.1rem 0 1.4rem
  }
  .product-top {
    font-size:.75rem
  }
  .product-status {
    font-size:.75rem
  }
  .product-bottom {
    margin-top:0
  }
  .collection-note {
    font-size:.8125rem
  }
  .story-section {
    padding:4.5rem 0
  }
  .story-grid {
    grid-template-columns:1fr;
    gap:2.5rem
  }
  .story-image,.story-image img {
    min-height:0;
    height:auto
  }
  .story-image {
    aspect-ratio:1
  }
  .story-image img {
    height:100%;
    object-position:40% center
  }
  .story-copy h2 {
    font-size:3.5rem
  }
  .story-copy .eyebrow {
    margin-bottom:1.3rem
  }
  .story-copy .film-note {
    margin-top:1.5rem
  }
  .stories-section {
    padding:4.5rem 0 3.5rem
  }
  .stories-heading {
    grid-template-columns:1fr;
    gap:2rem
  }
  .stories-heading h2 {
    font-size:3.1rem
  }
  .stories-heading>div {
    max-width:none
  }
  .stories-heading .text-link {
    margin-top:1.3rem
  }
  .story-formats {
    flex-direction:column;
    padding:1.3rem 0;
    margin-top:2.5rem;
    gap:.9rem
  }
  .story-formats span {
    font-size:1rem
  }
  .story-formats b {
    margin-right:1.5rem
  }
  .action-section {
    padding:4.5rem 0
  }
  .action-grid {
    grid-template-columns:1fr;
    gap:3.5rem
  }
  .action-grid h2 {
    font-size:3.8rem
  }
  .action-grid>div>p:not(.eyebrow) {
    margin-top:1.5rem
  }
  .initiative-preview {
    padding-top:1.4rem
  }
  .initiative-top {
    margin-bottom:2rem
  }
  .initiative-top .micro {
    font-size:.75rem
  }
  .initiative-preview h3 {
    font-size:3.5rem
  }
  .transparency-section {
    padding:4.5rem 0 3.5rem
  }
  .transparency-grid h2 {
    font-size:3.75rem
  }
  .transparency-grid .eyebrow {
    font-size:.75rem
  }
  .journey-heading {
    display:block;
    margin-bottom:2.5rem
  }
  .journey-heading h2 {
    font-size:2.9rem
  }
  .journey-heading>p {
    max-width:280px;
    margin-top:1.4rem
  }
  .journey-section {
    padding-bottom:4.5rem
  }
  .journey-section .wrap {
    padding-top:3rem
  }
  .journey-list {
    grid-template-columns:1fr 1fr;
    gap:2rem 1.5rem
  }
  .journey-step {
    padding-top:1.15rem
  }
  .journey-step.is-next {
    padding-top:calc(1.15rem - 2px)
  }
  .step-index {
    font-size:2rem
  }
  .step-status {
    margin-top:1rem;
    font-size:.75rem
  }
  .journey-step h3 {
    font-size:.9375rem
  }
  .journey-step p {
    font-size:.875rem
  }
  .music-section {
    padding:4.5rem 0
  }
  .music-grid {
    grid-template-columns:1fr;
    gap:2.5rem
  }
  .music-art {
    width:100%;
    max-width:410px
  }
  .music-art-type {
    inset:1.75rem
  }
  .music-art-type>strong {
    font-size:4.5rem
  }
  .music-art-type>span {
    font-size:.75rem;
    letter-spacing:.13em
  }
  .music-copy h2 {
    font-size:3.7rem
  }
  .track-heading .micro {
    font-size:.75rem
  }
  .join-section {
    padding:4.5rem 0
  }
  .join-grid {
    gap:2.4rem
  }
  .join-grid h2 {
    font-size:3.6rem
  }
  .signup-row {
    display:block
  }
  .signup-row input {
    display:block;
    margin-bottom:.3rem
  }
  .signup-row button {
    display:flex;
    justify-content:space-between;
    width:100%;
    min-height:44px;
    border-top:1px solid #948465;
    margin-top:.5rem;
    padding:.9rem 0;
    font-size:.875rem
  }
  .signup-form .consent {
    font-size:.8125rem
  }
  .site-footer {
    padding-top:3rem
  }
  .footer-main {
    display:flex;
    flex-direction:column;
    gap:2rem;
    padding-bottom:2.5rem
  }
  .footer-main .brand img {
    width:58px
  }
  .footer-main nav {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:1rem 2rem
  }
  .footer-bottom {
    font-size:.75rem;
    align-items:start;
    display:grid;
    grid-template-columns:1fr 1fr
  }
  .footer-bottom p:nth-child(2) {
    text-align:right
  }
  .footer-bottom a {
    margin-top:.5rem
  }
  .page-intro {
    padding:4rem 0 3rem
  }
  .page-intro h1 {
    font-size:3.6rem
  }
  .page-intro .intro-copy {
    font-size:1.125rem;
    line-height:1.7
  }
  .page-section {
    padding:2.5rem 0 4rem
  }
  .story-feature {
    padding-bottom:2rem
  }
  .story-feature img {
    height:370px;
    object-position:40% center
  }
  .prose p {
    font-size:1.0625rem;
    line-height:1.8
  }
  .prose .pull-quote {
    font-size:2.1rem
  }
  .prose h2 {
    font-size:2.7rem
  }
  .reading-layout {
    gap:2rem
  }
  .story-movement {
    padding-top:2rem;
    margin-top:3rem
  }
  .story-movement h2 {
    font-size:2.8rem
  }
  .product-detail {
    grid-template-columns:1fr;
    gap:1.8rem;
    padding:2rem 0
  }
  .product-detail-art {
    min-height:270px
  }
  .product-detail-art .product-word {
    font-size:5.4rem
  }
  .product-detail-copy h2 {
    font-size:2.8rem
  }
  .product-detail-copy .eyebrow {
    font-size:.75rem
  }
  .collection-principles {
    grid-template-columns:1fr;
    gap:2rem
  }
  .empty-story {
    padding:1.8rem
  }
  .empty-story h2 {
    font-size:2.5rem
  }
  .format-tab {
    padding:1rem .7rem;
    font-size:.875rem;
    flex:1;
    line-height:1.4
  }
  .tablist {
    gap:0
  }
  .story-format-tabs {
    margin-top:3rem
  }
  .moderation-list {
    grid-template-columns:1fr;
    gap:2rem
  }
  .moderation-list h3 {
    font-size:1.6rem
  }
  .impact-proposal {
    padding:3.5rem 0
  }
  .impact-proposal h2 {
    font-size:3.6rem
  }
  .proposal-facts {
    margin-top:0
  }
  .proposal-path {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:1.5rem
  }
  .accountability-section {
    padding:4rem 0
  }
  .accountability-section .section-heading {
    grid-template-columns:1fr;
    gap:1.5rem
  }
  .accountability-section h2 {
    font-size:3rem
  }
  .reporting-list>div {
    grid-template-columns:1fr;
    gap:.75rem;
    padding:1.5rem 0
  }
  .error-page h1 {
    font-size:3.5rem
  }
}

@media(max-width:360px) {
  :root {
    --gutter:1.1rem
  }
  .header-inner {
    padding-inline:1.1rem
  }
  .brand>span {
    font-size:.625rem
  }
  .brand img {
    width:44px
  }
  .hero h1 {
    font-size:clamp(2.1rem,9.9vw,2.4rem)
  }
  .hero {
    min-height:740px
  }
  .hero-content {
    padding-top:17rem
  }
  .product-word {
    font-size:4.7rem
  }
  .product-detail-art .product-word {
    font-size:4.6rem
  }
  .hero-bottom>a {
    letter-spacing:0
  }
  .scene-controls {
    gap:.45rem
  }
  .footer-main .brand>span {
    font-size:.75rem
  }
}

@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto
  }
  *,*:before,*:after {
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important
  }
  .hero .dawn-veil {
    opacity:0!important;
    animation:none!important
  }
  .hero .hero-crest {
    opacity:.82!important;
    animation:none!important
  }
  .hero .hero-content {
    opacity:1!important;
    transform:none!important;
    animation:none!important
  }
  .hero .sun-rise {
    transform:translateY(0)!important;
    animation:none!important
  }
}

/* One shared audio element powers every control. The dock appears only after Play. */
.sound-dock {
  position:fixed;
  bottom:max(1rem,env(safe-area-inset-bottom));
  right:var(--gutter);
  z-index:35;
  display:flex;
  align-items:center;
  gap:.4rem;
  max-width:calc(100% - 2rem);
  padding:.55rem .65rem .55rem 1rem;
  background:#101a16f7;
  color:var(--white);
  border:1px solid #8f825e;
  box-shadow:0 8px 30px #0003
}

.sound-dock-title {
  display:flex;
  flex-direction:column;
  padding:.15rem .9rem .15rem 0;
  min-width:0;
  min-height:44px;
  justify-content:center;
  line-height:1.35
}

.sound-dock-title .micro {
  font-size:.5625rem;
  color:var(--gold);
  letter-spacing:.12em
}

.sound-dock-title strong {
  font-size:.8125rem;
  font-weight:400;
  white-space:nowrap
}

.sound-dock button {
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  flex:0 0 44px;
  border:1px solid #7e826b;
  background:transparent
}

.sound-dock button:hover {
  background:#2c362b
}

.has-sound-dock {
  padding-bottom:100px;
  scroll-padding-bottom:100px
}

html:has(.has-sound-dock) {
  scroll-padding-bottom:100px
}

@media(max-width:600px) {
  .sound-dock {
    left:1rem;
    right:1rem;
    bottom:max(.65rem,env(safe-area-inset-bottom));
    max-width:none
  }
  .sound-dock-title {
    flex:1;
    padding-right:.2rem
  }
}

/* Keep product names intact at every card width. */ .product-card,.product-detail-art {
  container-type:inline-size
}

.product-word {
  font-size:clamp(2.2rem,5vw,5.7rem);
  font-size:clamp(2.2rem,20cqi,5.7rem);
  white-space:nowrap;
  overflow-wrap:normal
}

.product-detail-art .product-word {
  font-size:clamp(2.2rem,6vw,7.3rem);
  font-size:clamp(2.2rem,20cqi,7.3rem)
}

.music-art {
  container-type:inline-size
}

.music-art-type>strong {
  font-size:clamp(2.6rem,5vw,5.5rem);
  font-size:clamp(2.6rem,18cqi,5.5rem)
}

@media(max-width:360px) {
  .page-intro h1 {
    font-size:3rem
  }
}

html:not(.js) .tablist {
  display:none
}

html:not(.js) .format-panel[hidden] {
  display:block!important
}

/* Collection 001 concept imagery — v0.8.5 */
.product-card {
  position:relative;
  isolation:isolate;
  aspect-ratio:1;
  min-height:0;
  padding:0;
  overflow:hidden;
  background:#10120f;
  border-color:rgba(228,226,217,.22)
}

.product-card:nth-child(2),.product-card:nth-child(4),.product-card:nth-child(6),
.product-card:hover {
  background:#10120f
}

.product-card-media {
  position:absolute;
  inset:0;
  margin:0;
  z-index:-2
}

.product-card-media img {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .55s ease,filter .35s ease
}

.product-image-stack {
  position:absolute;
  inset:0;
  display:block
}

.product-image-stack .product-view {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:opacity .48s ease,transform .55s ease,filter .35s ease
}

.product-image-stack .product-view-back {
  opacity:0
}

.product-card.has-back-view:hover .product-view-front,
.product-card.has-back-view:focus-visible .product-view-front,
.product-image-stack.is-showing-back .product-view-front {
  opacity:0
}

.product-card.has-back-view:hover .product-view-back,
.product-card.has-back-view:focus-visible .product-view-back,
.product-image-stack.is-showing-back .product-view-back {
  opacity:1
}

.product-view-toggle {
  position:absolute;
  right:1rem;
  bottom:1rem;
  z-index:4;
  min-height:2.6rem;
  padding:.62rem .9rem;
  border:1px solid rgba(240,238,229,.55);
  border-radius:999px;
  background:rgba(7,9,7,.74);
  color:#f0eee5;
  font:700 .72rem/1 var(--font-body);
  letter-spacing:.09em;
  text-transform:uppercase;
  backdrop-filter:blur(8px);
  cursor:pointer
}

.product-view-toggle:hover,
.product-view-toggle:focus-visible {
  border-color:#d2b66f;
  color:#d2b66f
}

.product-card-shade {
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(180deg,rgba(7,9,7,.5) 0%,rgba(7,9,7,.04) 40%,rgba(7,9,7,.88) 100%)
}

.product-card .product-top {
  position:relative;
  z-index:1;
  padding:1.15rem 1.25rem;
  color:#e2e0d6
}

.product-card-copy {
  position:absolute;
  left:1.25rem;
  right:1.25rem;
  bottom:1.2rem;
  z-index:1
}

.product-card-copy .product-word {
  margin:0 0 .45rem;
  color:#f0eee5;
  font-size:clamp(2.2rem,15cqi,4.6rem);
  text-shadow:0 2px 18px rgba(0,0,0,.48)
}

.product-card-copy .product-tagline {
  color:#d2b66f
}

.product-card-copy .product-bottom {
  margin-top:.45rem
}

.product-card:hover .product-card-media>img,
.product-card:focus-visible .product-card-media>img,
.product-card:hover .product-image-stack .product-view,
.product-card:focus-visible .product-image-stack .product-view {
  transform:scale(1.035);
  filter:brightness(1.06)
}

.product-detail-art {
  position:relative;
  isolation:isolate;
  display:block;
  aspect-ratio:1;
  min-height:0;
  padding:0;
  overflow:hidden;
  background:#10120f
}

.product-detail-art>img {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover
}

.product-detail-art>.product-image-stack {
  z-index:auto
}

.product-detail-shade {
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(180deg,rgba(7,9,7,.38),transparent 42%,rgba(7,9,7,.82));
  pointer-events:none
}

.product-detail-index {
  position:absolute;
  top:1.5rem;
  left:1.5rem;
  z-index:2;
  color:#e1dfd4!important;
  pointer-events:none
}

.product-detail-art figcaption {
  position:absolute;
  left:1.5rem;
  right:1.5rem;
  bottom:1.4rem;
  z-index:2;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:1rem;
  pointer-events:none
}

.product-detail-art figcaption .product-word {
  margin:0;
  color:#f0eee5;
  font-size:clamp(2.5rem,16cqi,7rem);
  text-shadow:0 2px 20px rgba(0,0,0,.48)
}

.product-detail-art figcaption .micro {
  padding-bottom:.65rem;
  color:#d2b66f;
  white-space:nowrap
}

@media(max-width:900px) and (min-width:601px) {
  .product-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
}

@media(max-width:600px) {
  .product-card {
    aspect-ratio:1;
    min-height:0;
    padding:0
  }
  .product-card-copy .product-word {
    margin:0 0 .45rem;
    font-size:clamp(2.8rem,16cqi,5.25rem)
  }
  .product-detail-art {
    aspect-ratio:1;
    min-height:0;
    padding:0
  }
  .product-detail-art figcaption {
    display:block
  }
  .product-detail-art figcaption .product-word {
    display:block;
    margin-bottom:.35rem;
    font-size:clamp(3rem,17cqi,5.4rem)
  }
  .product-detail-art figcaption .micro {
    padding:0
  }
}
