:root {
  --black: #090909;
  --soft-black: #111111;
  --gold: #b08d57;
  --ivory: #f4f0e6;
  --grey: #a7a7a7;
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  scroll-behavior: smooth;
}

body {
  background: var(--black);
  color: var(--ivory);
  font-family: Georgia, "Times New Roman", serif;
  line-height: 1.6;
}

/* HEADER */

.site-header {
  min-height: 80px;
  padding: 0 6%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid rgba(176, 141, 87, 0.25);
}

.brand {
  color: var(--gold);
  font-size: 1.3rem;
  letter-spacing: 0.2em;
}

nav {
  display: flex;
  gap: 2rem;
}

nav a {
  color: var(--ivory);
  text-decoration: none;
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

nav a:hover {
  color: var(--gold);
}

/* HERO */

.hero {
  min-height: calc(100vh - 80px);
  padding: 8%;
  display: flex;
  align-items: center;
  position: relative;
}

.hero-content {
  max-width: 950px;
  position: relative;
  z-index: 2;
}

.hero-seal {
  position: absolute;
  right: 8%;
  top: 50%;
  transform: translateY(-50%);
  width: min(34vw, 500px);
  opacity: 0.88;
}

.hero-seal img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 50%;
}

.eyebrow,
.section-label {
  color: var(--gold);
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  margin-bottom: 1.5rem;
}

h1 {
  font-size: clamp(3.5rem, 8vw, 8rem);
  line-height: 0.95;
  font-weight: normal;
  max-width: 1100px;
}

.principles {
  margin-top: 2rem;
  color: var(--gold);
  letter-spacing: 0.15em;
  text-transform: uppercase;
}

.hero-description {
  margin-top: 2rem;
  max-width: 760px;
  color: var(--ivory);
  font-size: clamp(1.15rem, 1.45vw, 1.45rem);
  line-height: 1.5;
}

.hero-categories {
  margin-top: 1.35rem;
  color: var(--gold);
  font-family: Arial, sans-serif;
  font-size: 0.78rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

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

.hero-button {
  min-width: 220px;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.25rem;
}

.hero-button span {
  font-size: 1.05rem;
  line-height: 1;
}

.button {
  display: inline-block;
  padding: 1rem 1.6rem;
  text-decoration: none;
  font-family: Arial, sans-serif;
  font-size: 0.72rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.primary {
  background: var(--gold);
  color: var(--black);
}

.secondary {
  border: 1px solid var(--gold);
  color: var(--gold);
}

/* GENERAL SECTIONS */

.section {
  min-height: 70vh;
  padding: 8%;
  border-top: 1px solid rgba(176, 141, 87, 0.18);
}

.section h2 {
  font-size: clamp(2.5rem, 5vw, 5rem);
  font-weight: normal;
  line-height: 1.05;
  max-width: 900px;
  margin-bottom: 2rem;
}

.section > p:not(.section-label) {
  max-width: 650px;
  font-size: 1.2rem;
  color: #d4d0c7;
}

/* PROTEAS */

.protea-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2rem;
  margin-top: 4rem;
  max-width: 1100px;
}

.protea-card {
  border-top: 1px solid rgba(176, 141, 87, 0.45);
  padding-top: 1rem;
}

.protea-image {
  aspect-ratio: 4 / 5;
  overflow: hidden;
  background: #111;
  margin-bottom: 1.5rem;
}

.protea-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.protea-card:first-child .protea-image img {
  object-position: center 20%;
}

.protea-number {
  color: var(--gold);
  font-family: Arial, sans-serif;
  font-size: 0.72rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  margin-bottom: 0.6rem;
}

.protea-card h3 {
  font-size: 2rem;
  font-weight: normal;
  margin-bottom: 0.4rem;
}

.protea-disciplines {
  color: var(--grey);
  font-size: 0.95rem;
  margin-bottom: 1rem;
}

.protea-link {
  color: var(--gold);
  text-decoration: none;
  font-family: Arial, sans-serif;
  font-size: 0.72rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

/* STUDIOS */

.studio-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1.5rem;
  margin-top: 4rem;
  max-width: 1500px;
}

.studio-card {
  min-height: 540px;
  padding: 2rem;
  border: 1px solid rgba(176, 141, 87, 0.55);
  display: flex;
  flex-direction: column;
}

.studio-image {
  width: 68%;
  max-width: 300px;
  aspect-ratio: 1 / 1;
  margin: 0 auto 2rem auto;
  overflow: hidden;
  display: grid;
  place-items: center;
}

.studio-image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

.digital-studio-image {
  background: #090909;
}

.digital-studio-image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

.studio-number {
  color: var(--gold);
  font-family: Arial, sans-serif;
  font-size: 0.82rem;
  letter-spacing: 0.16em;
  margin-bottom: 1.15rem;
}

.studio-card h3 {
  font-size: 2.2rem;
  font-weight: normal;
  margin-bottom: 1.25rem;
}

.studio-card > p:not(.studio-number) {
  color: var(--grey);
  font-size: 1.15rem;
  line-height: 1.5;
  max-width: 340px;
}

.studio-link {
  margin-top: auto;
  padding-top: 1.5rem;
  color: var(--gold);
  text-decoration: none;
  font-family: Arial, sans-serif;
  font-size: 0.82rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.studio-link:hover {
  color: var(--ivory);
}



/* SELECTED WORK */

.work-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
  margin-top: 4rem;
  max-width: 1400px;
}

.work-card {
  min-height: 360px;
  padding: 2rem;
  border: 1px solid rgba(176, 141, 87, 0.55);
  display: flex;
  flex-direction: column;
}

.work-image {
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  margin-bottom: 1.5rem;
  background: #090909;
}

.work-image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

.work-type {
  color: var(--gold) !important;
  font-family: Arial, sans-serif;
  font-size: 0.82rem !important;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  margin-bottom: 2rem;
}

.work-card h3 {
  font-size: 2.2rem;
  font-weight: normal;
  margin-bottom: 1.25rem;
}

.work-card > p:not(.work-type) {
  color: var(--grey);
  font-size: 1.15rem;
  line-height: 1.5;
  max-width: 340px;
}

.work-link {
  margin-top: auto;
  padding-top: 1.5rem;
  color: var(--gold);
  text-decoration: none;
  font-family: Arial, sans-serif;
  font-size: 0.82rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.work-link:visited {
  color: var(--gold);
}

.work-link:hover {
  color: var(--ivory);
}

/* BURNT PROTEA CODE */

.code-section {
  background: var(--ivory);
  color: var(--black);
}

.code-section > p:not(.section-label) {
  color: #333;
  line-height: 2;
}

/* HAVE AN IDEA */

.idea-section {
  min-height: 80vh;
}

/* FOOTER */

footer {
  padding: 3rem 8%;
  border-top: 1px solid var(--gold);
  color: var(--grey);
  display: flex;
  justify-content: space-between;
  font-size: 0.8rem;
}


@media (max-width: 1180px) and (min-width: 901px) {
  .studio-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* TABLET */

@media (max-width: 900px) {
  .hero-seal {
    opacity: 0.18;
    width: 80vw;
    right: -25vw;
  }

  .studio-grid,
  .work-grid {
    grid-template-columns: 1fr;
  }

  .studio-card,
  .work-card {
    min-height: 280px;
  }
}

/* MOBILE */

@media (max-width: 750px) {
  .site-header {
    padding: 1.5rem 6%;
  }

  nav {
    display: none;
  }

  .hero {
    padding: 15% 7%;
  }

  h1 {
    font-size: clamp(3rem, 15vw, 5rem);
  }

  .hero-actions {
    flex-direction: column;
    align-items: stretch;
    width: 100%;
  }

  .hero-description {
    font-size: 1.08rem;
    line-height: 1.55;
  }

  .desktop-break {
    display: none;
  }

  .hero-categories {
    font-size: 0.7rem;
    line-height: 1.8;
  }

  .hero-button {
    width: 100%;
    min-width: 0;
  }

  .section {
    padding: 20% 7%;
  }

  .protea-grid {
    grid-template-columns: 1fr;
  }

  footer {
    flex-direction: column;
    gap: 1rem;
  }
}
/* STUDIO PAGES */

.studio-page-hero {
  min-height: 72vh;
  padding: 6% 8%;
  display: grid;
  grid-template-columns: 360px minmax(0, 1fr);
  gap: 5rem;
  align-items: center;
}

.studio-page-image {
  max-width: 360px;
}

.studio-page-image img {
  display: block;
  width: 100%;
  height: auto;
}

.studio-page-intro h1 {
  font-size: clamp(3.5rem, 6vw, 6.5rem);
  line-height: 0.95;
}

.studio-page-lead {
  margin-top: 1.5rem;
  max-width: 520px;
  color: var(--grey);
  font-size: 1.25rem;
  line-height: 1.6;
}

/* tighter sections on studio pages */

.studio-page-hero + .section,
.studio-page-hero + .section + .section {
  min-height: auto;
  padding-top: 6%;
  padding-bottom: 6%;
}

@media (max-width: 900px) {
  .studio-page-hero {
    grid-template-columns: 1fr;
    gap: 3rem;
    min-height: auto;
    padding: 12% 7%;
  }

  .studio-page-image {
    max-width: 320px;
  }
}

/* =========================================================
   RBM SUVERKROP METHOD SERIES PAGE
   ========================================================= */

.method-hero {
  min-height: 88vh;
  padding: 7% 8%;
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(280px, .7fr);
  gap: 5rem;
  align-items: center;
  border-bottom: 1px solid rgba(176,141,87,.25);
}

.method-hero-content {
  max-width: 820px;
}

.method-hero h1 {
  font-size: clamp(4.5rem, 8vw, 8rem);
  line-height: .9;
  font-weight: normal;
  margin: 1rem 0 1.75rem;
}

.method-hero-lead {
  max-width: 650px;
  font-size: 1.45rem;
  line-height: 1.55;
  color: var(--ivory);
  margin-bottom: 1.2rem;
}

.method-hero-copy {
  max-width: 680px;
  color: var(--grey);
  font-size: 1.08rem;
  line-height: 1.7;
  margin-bottom: 2.2rem;
}

.method-journey {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1rem;
  padding-left: 2rem;
}

.journey-stage {
  padding: 1.25rem 0;
}

.journey-stage span {
  display: block;
  color: var(--gold);
  font-family: Arial, sans-serif;
  font-size: .78rem;
  letter-spacing: .16em;
  margin-bottom: .35rem;
}

.journey-stage p {
  font-size: 1.7rem;
  letter-spacing: .04em;
}

.journey-line {
  width: 1px;
  height: 42px;
  background: rgba(176,141,87,.45);
  margin-left: 6px;
}


/* INTRODUCTION */

.method-introduction {
  max-width: 1100px;
}

.method-introduction h2,
.method-books h2,
.method-start h2,
.method-closing h2 {
  font-size: clamp(3rem, 5vw, 5.5rem);
  line-height: .98;
  font-weight: normal;
}

.method-introduction .large-copy {
  margin-top: 2.5rem;
  max-width: 850px;
  font-size: 1.45rem;
  line-height: 1.55;
  color: var(--ivory);
}

.method-introduction > p:last-child {
  max-width: 760px;
  color: var(--grey);
  line-height: 1.7;
  font-size: 1.1rem;
  margin-top: 1.3rem;
}


/* SERIES BOOKS */

.method-books {
  padding-top: 4%;
}

.method-phase {
  margin-top: 6rem;
  border-top: 1px solid rgba(176,141,87,.45);
  padding-top: 2rem;
}

.method-phase-heading {
  display: flex;
  gap: 1.5rem;
  align-items: flex-start;
  margin-bottom: 2.5rem;
}

.method-phase-heading > span {
  color: var(--gold);
  font-family: Arial, sans-serif;
  font-size: .82rem;
  letter-spacing: .15em;
  margin-top: .2rem;
}

.method-phase-name {
  color: var(--gold);
  font-family: Arial, sans-serif;
  font-size: .84rem;
  letter-spacing: .16em;
  margin-bottom: .35rem;
}

.method-phase-heading div p:last-child {
  color: var(--grey);
}

.method-book {
  display: grid;
  grid-template-columns: 110px minmax(0, 1fr);
  gap: 2rem;
  padding: 3rem 0;
  border-top: 1px solid rgba(255,255,255,.08);
}

.method-book:first-of-type {
  border-top: none;
}

.method-book-number {
  font-size: 3.25rem;
  line-height: 1;
  color: rgba(176,141,87,.35);
}

.method-book-content {
  max-width: 900px;
}

.method-book-stage {
  color: var(--gold);
  font-family: Arial, sans-serif;
  font-size: .75rem;
  letter-spacing: .16em;
  margin-bottom: .8rem;
}

.method-book h3 {
  font-size: clamp(2.4rem, 4vw, 4.4rem);
  font-weight: normal;
  line-height: 1;
  margin-bottom: .7rem;
}

.method-subtitle {
  color: var(--ivory);
  font-style: italic;
  font-size: 1.15rem;
  margin-bottom: 1.35rem;
}

.method-book-content > p:not(.method-book-stage):not(.method-subtitle) {
  max-width: 760px;
  color: var(--grey);
  line-height: 1.7;
  font-size: 1.06rem;
}

.method-concepts {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
  margin-top: 1.75rem;
}

.method-concepts span {
  border: 1px solid rgba(176,141,87,.5);
  padding: .65rem .85rem;
  color: var(--ivory);
  font-family: Arial, sans-serif;
  font-size: .75rem;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.method-actions {
  margin-top: 2rem;
}

.method-phase-omega {
  margin-bottom: 2rem;
}


/* START HERE */

.method-start {
  background: var(--ivory);
  color: var(--black);
  padding: 7% 8%;
}

.method-start .section-label {
  color: var(--gold);
}

.method-start-heading {
  max-width: 900px;
}

.method-start-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2rem;
  margin-top: 4rem;
}

.method-start-grid article {
  border: 1px solid rgba(9,9,9,.25);
  padding: 2.25rem;
  min-height: 320px;
  display: flex;
  flex-direction: column;
}

.method-start-grid article > span {
  color: var(--gold);
  font-family: Arial, sans-serif;
  font-size: .78rem;
  letter-spacing: .14em;
}

.method-start-grid h3 {
  font-size: 2rem;
  font-weight: normal;
  margin: 1rem 0 1.2rem;
}

.method-start-grid p {
  color: #4b4b4b;
  line-height: 1.65;
  max-width: 500px;
}

.method-start-grid .work-link {
  margin-top: auto;
  color: var(--gold);
}


/* CLOSING */

.method-closing {
  text-align: center;
  max-width: 1000px;
  margin: 0 auto;
}

.method-closing blockquote {
  max-width: 900px;
  margin: 2.5rem auto 1.5rem;
  font-size: clamp(2.4rem, 4.5vw, 4.8rem);
  line-height: 1.05;
  font-weight: normal;
}

.method-closing > p:not(.section-label) {
  max-width: 680px;
  margin: 0 auto 2.2rem;
  color: var(--grey);
  font-size: 1.15rem;
  line-height: 1.65;
}


/* BUTTON FALLBACK */

.button {
  display: inline-block;
  border: 1px solid var(--gold);
  padding: .95rem 1.2rem;
  color: var(--gold);
  text-decoration: none;
  font-family: Arial, sans-serif;
  font-size: .78rem;
  letter-spacing: .14em;
  text-transform: uppercase;
  transition: .2s ease;
}

.button:hover {
  background: var(--gold);
  color: var(--black);
}


/* MOBILE */

@media(max-width: 900px) {

  .method-hero {
    grid-template-columns: 1fr;
    gap: 3rem;
    min-height: auto;
    padding: 12% 7%;
  }

  .method-journey {
    padding-left: 0;
  }

  .method-book {
    grid-template-columns: 1fr;
    gap: 1rem;
  }

  .method-book-number {
    font-size: 2.5rem;
  }

  .method-start {
    padding: 12% 7%;
  }

  .method-start-grid {
    grid-template-columns: 1fr;
  }

  .method-phase {
    margin-top: 4rem;
  }
}

/* METHOD SERIES BOOK COVERS */

.method-book-with-cover {
  grid-template-columns: 70px 220px minmax(0, 1fr);
  gap: 2.5rem;
  align-items: start;
}

.method-book-cover {
  width: 100%;
}

.method-book-cover img {
  display: block;
  width: 100%;
  height: auto;
  box-shadow: 0 18px 45px rgba(0,0,0,.45);
}

@media(max-width:900px) {

  .method-book-with-cover {
    grid-template-columns: 1fr;
  }

  .method-book-cover {
    max-width: 220px;
  }

}

/* METHOD SERIES REFINEMENT */

.method-introduction {
  max-width: 1250px;
}

.method-introduction h2 {
  max-width: 900px;
}

.method-introduction .large-copy {
  max-width: 780px;
}

.method-introduction > p:last-child {
  max-width: 820px;
}


/* slightly larger book presentation */

.method-book-with-cover {
  grid-template-columns: 70px 250px minmax(0, 1fr);
  gap: 2.75rem;
}

.method-book-cover {
  max-width: 250px;
}

.method-book-content {
  max-width: 950px;
}

.method-book-content > p:not(.method-subtitle) {
  font-size: 1.12rem;
  line-height: 1.7;
}

.method-book h3 {
  font-size: clamp(2.8rem, 4vw, 4.8rem);
}


/* cleaner hero contents list */

.method-journey {
  gap: .7rem;
}

.journey-stage {
  padding: .65rem 0;
}

.journey-stage p {
  font-size: 1.35rem;
}

.journey-line {
  height: 18px;
}


/* mobile */

@media(max-width:900px) {

  .method-book-with-cover {
    grid-template-columns: 1fr;
  }

  .method-book-cover {
    max-width: 230px;
  }

  .method-introduction h2,
  .method-introduction .large-copy,
  .method-introduction > p:last-child {
    max-width: 100%;
  }
}

/* =========================================================
   BLESSED PAGE
   ========================================================= */

.blessed-hero {
  min-height: 88vh;
  padding: 7% 8%;
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(260px, .8fr);
  gap: 5rem;
  align-items: center;
  border-bottom: 1px solid rgba(176,141,87,.25);
}

.blessed-hero-copy {
  max-width: 760px;
}

.blessed-hero h1 {
  font-size: clamp(5rem, 10vw, 9rem);
  line-height: .9;
  font-weight: normal;
  margin: 1rem 0 1.5rem;
}

.blessed-hero-lead {
  max-width: 620px;
  font-size: 1.45rem;
  line-height: 1.55;
  color: var(--ivory);
  margin-bottom: 1.2rem;
}

.blessed-hero-text {
  max-width: 650px;
  color: var(--grey);
  font-size: 1.08rem;
  line-height: 1.7;
  margin-bottom: 2.2rem;
}

.blessed-hero-mark {
  display: flex;
  align-items: center;
  justify-content: center;
}

.blessed-cross-image {
  display: block;
  width: 100%;
  max-width: 430px;
  height: auto;
  object-fit: contain;
}

.blessed-hero-mark {
  display: flex;
  align-items: center;
  justify-content: center;
}


/* INTRO */

.blessed-intro {
  max-width: 1150px;
}

.blessed-intro h2 {
  font-size: clamp(3.2rem, 5vw, 5.6rem);
  line-height: .98;
  font-weight: normal;
}

.blessed-intro .large-copy {
  margin-top: 2.5rem;
  max-width: 820px;
  font-size: 1.45rem;
  line-height: 1.55;
  color: var(--ivory);
}

.blessed-intro > p:last-child {
  max-width: 760px;
  color: var(--grey);
  line-height: 1.7;
  font-size: 1.08rem;
  margin-top: 1.4rem;
}


/* BOOK */

.blessed-book-grid {
  display: grid;
  grid-template-columns: minmax(260px, 360px) minmax(0, 1fr);
  gap: 5rem;
  align-items: center;
}

.blessed-book-cover img {
  display: block;
  width: 100%;
  height: auto;
  box-shadow: 0 22px 55px rgba(0,0,0,.45);
}

.blessed-book-copy {
  max-width: 760px;
}

.blessed-book-copy h2 {
  font-size: clamp(3.5rem, 6vw, 6rem);
  line-height: .95;
  font-weight: normal;
  margin-bottom: 1rem;
}

.blessed-subtitle {
  color: var(--ivory);
  font-size: 1.2rem;
  font-style: italic;
  margin-bottom: 1.5rem;
}

.blessed-book-copy > p:not(.section-label):not(.blessed-subtitle) {
  max-width: 680px;
  color: var(--grey);
  line-height: 1.7;
  font-size: 1.08rem;
}


/* =========================================================
   BLESSED — THE JOURNEY
   ========================================================= */

.blessed-journey {
  text-align: center;
}

.blessed-journey-heading {
  max-width: 900px;
  margin: 0 auto 3.5rem;
}

.blessed-journey-heading h2 {
  font-size: clamp(3.2rem, 5vw, 5.4rem);
  line-height: .98;
  font-weight: normal;
  margin-bottom: 1.5rem;
}

.blessed-journey-heading > p:last-child {
  color: var(--grey);
  font-size: 1.15rem;
  line-height: 1.6;
}

.blessed-journey-artwork {
  display: block;
  width: min(100%, 1050px);
  margin: 0 auto;
  border: 1px solid rgba(176,141,87,.5);
  overflow: hidden;
  text-decoration: none;
}

.blessed-journey-artwork img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform .4s ease, opacity .4s ease;
}

.blessed-journey-artwork:hover img {
  transform: scale(1.01);
  opacity: .92;
}

.blessed-journey-action {
  margin-top: 2.5rem;
}

@media(max-width:900px) {
  .blessed-journey-heading {
    margin-bottom: 2.5rem;
  }

  .blessed-journey-artwork {
    width: 100%;
  }
}

/* CLOSING */

.blessed-closing {
  text-align: center;
  max-width: 1000px;
  margin: 0 auto;
}

.blessed-closing blockquote {
  max-width: 850px;
  margin: 2.5rem auto 1.5rem;
  font-size: clamp(2.5rem, 4.5vw, 4.8rem);
  line-height: 1.05;
  font-weight: normal;
}

.blessed-closing > p:not(.section-label) {
  max-width: 680px;
  margin: 0 auto 2.2rem;
  color: var(--grey);
  font-size: 1.12rem;
  line-height: 1.65;
}


/* MOBILE */

@media(max-width:900px) {

  .blessed-hero {
    grid-template-columns: 1fr;
    gap: 3rem;
    min-height: auto;
    padding: 12% 7%;
  }

  .blessed-hero-mark {
    justify-content: flex-start;
  }

  .blessed-book-grid {
    grid-template-columns: 1fr;
    gap: 3rem;
  }

  .blessed-book-cover {
    max-width: 320px;
  }

  .blessed-track-grid {
    grid-template-columns: 1fr;
  }
}

/* =========================================================
   BLESSED — DESKTOP PROPORTION FIX
   ========================================================= */

@media(min-width:901px) {

  /* PROJECT */

  .blessed-intro {
    max-width: 1400px;
    width: 84%;
    margin: 0 auto;
  }

  .blessed-intro h2 {
    max-width: 1000px;
    font-size: clamp(4rem, 5vw, 6rem);
  }

  .blessed-intro .large-copy {
    max-width: 900px;
  }

  .blessed-intro > p:last-child {
    max-width: 850px;
  }


  /* BOOK */

  .blessed-book {
    width: 84%;
    max-width: 1400px;
    margin: 0 auto;
  }

  .blessed-book-grid {
    grid-template-columns: minmax(320px, 430px) minmax(0, 1fr);
    gap: 5rem;
  }

  .blessed-book-copy {
    max-width: 850px;
  }


  /* JOURNEY */

  .blessed-journey {
    width: 84%;
    max-width: 1500px;
    margin: 0 auto;
  }

  .blessed-journey-artwork {
    width: min(100%, 1200px);
  }


  /* CLOSING */

  .blessed-closing {
    width: 84%;
    max-width: 1200px;
    margin: 0 auto;
  }

  .blessed-closing blockquote {
    max-width: 1000px;
    font-size: clamp(3.5rem, 4.5vw, 5.5rem);
  }

  .blessed-closing > p:not(.section-label) {
    max-width: 760px;
  }

}

.blessed-book-buy {
    margin-top: 2rem;
}

/* STILL HERE HERO */

.still-here-hero {
  min-height: 620px;
  padding: 7% 8%;
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr);
  gap: 5rem;
  align-items: center;
  border-bottom: 1px solid rgba(176,141,87,.28);
}

.still-here-hero-copy {
  max-width: 900px;
}

.still-here-hero h1 {
  font-size: clamp(5rem, 9vw, 9rem);
  line-height: .86;
  font-weight: normal;
  margin: 2rem 0;
}

.still-here-hero-lead {
  color: var(--ivory);
  font-size: clamp(1.5rem, 2vw, 2rem);
  line-height: 1.4;
  max-width: 700px;
}

.still-here-hero-rule {
  width: 70px;
  height: 1px;
  background: var(--gold);
  margin: 2rem 0;
}

.still-here-hero-text {
  color: var(--grey);
  font-family: Arial, sans-serif;
  font-size: .78rem;
  letter-spacing: .14em;
  line-height: 1.7;
  margin-bottom: 2.5rem;
}

.still-here-hero-mark {
  display: flex;
  justify-content: center;
  align-items: center;
}

.still-here-hero-mark span {
  font-family: Arial, sans-serif;
  font-size: clamp(7rem, 13vw, 14rem);
  font-weight: 900;
  letter-spacing: -.12em;
  color: var(--ivory);
  opacity: .08;
}

@media(max-width:900px) {

  .still-here-hero {
    min-height: auto;
    grid-template-columns: 1fr;
    padding: 14% 7%;
    gap: 3rem;
  }

  .still-here-hero-mark {
    display: none;
  }

}

/* STILL HERE BOOK IMAGE SIZE */

.still-here-book-image {
  display: flex;
  align-items: center;
  justify-content: center;
}

.still-here-book-image img {
  display: block;
  width: 100%;
  max-width: 600px;
  height: auto;
}

.still-here-book-image img {
  display: block;
  width: 100%;
  max-width: 760px;
  height: auto;
}

/* STILL HERE SECTION SPACING */

.still-here-intro,
.still-here-book,
.still-here-journey,
.still-here-closing {
  min-height: auto;
  padding-top: 7%;
  padding-bottom: 7%;
}

/* STILL HERE MUSIC */

.still-here-music {
  min-height: auto;
  padding-top: 7%;
  padding-bottom: 7%;
}

.still-here-music-grid {
  width: 100%;
  max-width: 1450px;
  margin: 0 auto;

  display: grid;
  grid-template-columns: minmax(320px, .75fr) minmax(500px, 1.25fr);
  gap: 6rem;
  align-items: center;
}

.still-here-music-copy {
  max-width: 600px;
}

.still-here-music-copy h2 {
  font-size: clamp(3.5rem, 5.5vw, 6rem);
  line-height: .98;
  font-weight: normal;
  margin: 1.5rem 0;
}

.still-here-music-lead {
  color: var(--ivory);
  font-size: 1.25rem;
  line-height: 1.6;
}

.still-here-music-rule {
  width: 55px;
  height: 1px;
  background: var(--gold);
  margin: 2rem 0;
}

.still-here-music-artwork {
  display: block;
  width: 100%;
  max-width: 820px;
  justify-self: end;

  border: 1px solid rgba(176,141,87,.55);
  overflow: hidden;
}

.still-here-music-artwork img {
  display: block;
  width: 100%;
  height: auto;

  transition: transform .4s ease;
}

.still-here-music-artwork:hover img {
  transform: scale(1.015);
}

@media(max-width:900px) {

  .still-here-music-grid {
    grid-template-columns: 1fr;
    gap: 3rem;
  }

  .still-here-music-artwork {
    justify-self: start;
    max-width: 100%;
  }

}

/* STILL HERE BOOK LAYOUT */

.still-here-book-grid {
  width: 100%;
  max-width: 1450px;
  margin: 0 auto;

  display: grid;
  grid-template-columns: minmax(320px, .75fr) minmax(500px, 1.25fr);
  gap: 6rem;
  align-items: center;
}

.still-here-book-copy {
  grid-column: 1;
  grid-row: 1;
  max-width: 620px;
}

.still-here-book-image {
  grid-column: 2;
  grid-row: 1;

  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.still-here-book-image img {
  display: block;
  width: 100%;
  max-width: 760px;
  height: auto;
}

@media(max-width:900px) {

  .still-here-book-grid {
    grid-template-columns: 1fr;
    gap: 3rem;
  }

  .still-here-book-copy,
  .still-here-book-image {
    grid-column: 1;
    grid-row: auto;
  }

  .still-here-book-image {
    justify-content: flex-start;
  }

}

/* STILL ENOUGH */

body.still-enough-page {
  --black: #f4f0e6;
  --soft-black: #eee9dc;
  --ivory: #090909;
  --grey: #555555;

  background: #f4f0e6;
  color: #090909;
}

.still-enough-page .still-here-closing > p:not(.section-label) {
  color: #090909;
}

/* STILL ENOUGH HERO SCALE */

.still-enough-page .still-here-hero {
  min-height: 760px;
  padding-top: 5%;
  padding-bottom: 5%;
}

.still-enough-page .still-here-hero h1 {
  font-size: clamp(4.5rem, 7vw, 7.5rem);
}

.still-enough-page .still-enough-hero-logo {
  max-width: 430px;
  width: 70%;
  justify-self: center;
}

.still-enough-page .still-enough-hero-logo img {
  display: block;
  width: 100%;
  height: auto;
}

/* DELUSION THAT DELIVERS */

.delusion-page {
  background: var(--ivory);
  color: var(--black);
}


/* HERO */

.delusion-hero {
  min-height: 820px;
  padding: 7% 8%;
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(520px, 1.1fr);
  gap: 6rem;
  align-items: center;
  border-bottom: 1px solid rgba(176,141,87,.35);
}

.delusion-hero-copy {
  max-width: 720px;
}

.delusion-hero h1 {
  font-size: clamp(4.5rem, 7vw, 7.5rem);
  line-height: .88;
  font-weight: normal;
  margin: 2rem 0;
}

.delusion-hero-question {
  max-width: 620px;
  font-size: clamp(1.5rem, 2vw, 2rem);
  line-height: 1.35;
}

.delusion-hero-lead {
  margin-top: 1.5rem;
  font-size: 1.25rem;
  line-height: 1.6;
  font-style: italic;
}

.delusion-rule {
  width: 65px;
  height: 1px;
  background: var(--gold);
  margin: 2rem 0;
}

.delusion-hero-figure img {
  display: block;
  width: 100%;
  max-width: 820px;
  height: auto;
}


/* INTRO */

.delusion-intro,
.delusion-book,
.delusion-chapters,
.delusion-unravelling,
.delusion-closing {
  min-height: auto;
  padding-top: 7%;
  padding-bottom: 7%;
}

.delusion-intro-inner {
  max-width: 900px;
}

.delusion-intro h2 {
  font-size: clamp(3.2rem, 5vw, 5.5rem);
  line-height: .98;
  font-weight: normal;
  margin: 1.5rem 0;
}

.delusion-intro-lead {
  max-width: 760px;
  font-size: 1.35rem;
  line-height: 1.6;
}


/* BOOK */

.delusion-book-grid {
  width: 100%;
  max-width: 1450px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(320px, .75fr) minmax(500px, 1.25fr);
  gap: 6rem;
  align-items: center;
}

.delusion-book-copy {
  max-width: 620px;
}

.delusion-book-copy h2 {
  font-size: clamp(3.4rem, 5vw, 5.5rem);
  line-height: .98;
  font-weight: normal;
  margin: 1.5rem 0;
}

.delusion-subtitle {
  font-size: 1.25rem;
  font-style: italic;
  margin-bottom: 2rem;
}

.delusion-book-image {
  display: flex;
  justify-content: flex-end;
}

.delusion-book-image img {
  display: block;
  width: 100%;
  max-width: 760px;
  height: auto;
}

.delusion-book-buy {
  margin-top: 2rem;
}


/* CHAPTERS */

.delusion-chapters-heading {
  max-width: 900px;
  margin-bottom: 4rem;
}

.delusion-chapters-heading h2 {
  font-size: clamp(3.2rem, 5vw, 5.5rem);
  line-height: .98;
  font-weight: normal;
  margin-top: 1.5rem;
}

.delusion-chapter-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.5rem;
}

.delusion-chapter-card {
  min-height: 220px;
  padding: 1.75rem;
  border: 1px solid rgba(176,141,87,.5);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.delusion-chapter-card span {
  color: var(--gold);
  font-family: Arial, sans-serif;
  font-size: .8rem;
  letter-spacing: .15em;
}

.delusion-chapter-card h3 {
  font-size: 1.75rem;
  font-weight: normal;
}


/* UNRAVELLING */

.delusion-unravelling-inner {
  max-width: 1000px;
}

.delusion-unravelling blockquote {
  margin: 1.5rem 0 2rem;
  font-size: clamp(3rem, 5vw, 5.5rem);
  line-height: 1;
  font-weight: normal;
}

.delusion-unravelling p:last-child {
  max-width: 760px;
  font-size: 1.2rem;
  line-height: 1.7;
}


/* CLOSING */

.delusion-closing blockquote {
  font-size: clamp(3.4rem, 6vw, 6.5rem);
  line-height: .95;
  margin: 1.5rem 0 2.5rem;
}


/* DELUSION COLOUR SYSTEM */

.delusion-page .site-header,
.delusion-page .section,
.delusion-page .delusion-hero,
.delusion-page .site-footer {
  background: var(--ivory);
  color: var(--black);
}

.delusion-page .site-header a,
.delusion-page .site-footer p,
.delusion-page .section p,
.delusion-page .section h2,
.delusion-page .section h3,
.delusion-page blockquote,
.delusion-page .delusion-hero h1,
.delusion-page .delusion-hero p {
  color: var(--black);
}


/* MOBILE */

@media(max-width:900px) {

  .delusion-hero {
    grid-template-columns: 1fr;
    min-height: auto;
    padding: 12% 7%;
    gap: 3rem;
  }

  .delusion-book-grid {
    grid-template-columns: 1fr;
    gap: 3rem;
  }

  .delusion-chapter-grid {
    grid-template-columns: 1fr;
  }

  .delusion-book-image {
    justify-content: flex-start;
  }

}

/* DELUSION PAGE FINAL PROPORTIONS */

.delusion-page .delusion-intro,
.delusion-page .delusion-book,
.delusion-page .delusion-chapters,
.delusion-page .delusion-unravelling,
.delusion-page .delusion-closing {
  min-height: auto !important;
  padding: 6% 8% !important;
}


/* PROJECT */

.delusion-page .delusion-intro-inner {
  max-width: 850px;
}


/* BOOK */

.delusion-page .delusion-book-grid {
  max-width: 1350px;
  gap: 5rem;
}

.delusion-page .delusion-book-image img {
  max-width: 720px;
}


/* CHAPTERS */

.delusion-page .delusion-chapter-grid {
  max-width: 1350px;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.25rem;
}

.delusion-page .delusion-chapter-card {
  min-height: 180px;
}


/* UNRAVELLING */

.delusion-page .delusion-unravelling-inner {
  max-width: 900px;
}

.delusion-page .delusion-unravelling blockquote {
  max-width: 850px;
}


/* CLOSING */

.delusion-page .delusion-closing {
  padding-top: 6% !important;
  padding-bottom: 6% !important;
}

/* DELUSION CONCEPT TAGS */

.delusion-page .method-concepts span {
  color: #090909 !important;
  border-color: rgba(176,141,87,.55) !important;
}

/* DELUSION SEVEN MOVEMENTS */

.delusion-movement-grid {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 1rem;
  margin-top: 4rem;
}

.delusion-movement {
  min-width: 0;
}

.delusion-movement-image {
  width: 100%;
  aspect-ratio: 2 / 3;
  overflow: hidden;
  border: 1px solid rgba(176,141,87,.38);
  background: #fff;
}

.delusion-movement-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.delusion-movement-number {
  margin-top: 1rem;
  color: var(--gold) !important;
  font-family: Arial, sans-serif;
  font-size: .72rem;
  letter-spacing: .16em;
}

.delusion-movement h3 {
  margin-top: .45rem;
  font-size: 1.25rem;
  line-height: 1.1;
  font-weight: normal;
}


/* THE CRACK AS THE TURNING POINT */

.delusion-movement:nth-child(4) .delusion-movement-image {
  border-color: var(--gold);
}

.delusion-movement:nth-child(4) h3 {
  font-style: italic;
}


/* MOBILE */

@media(max-width:900px) {

  .delusion-movement-grid {
    display: flex;
    overflow-x: auto;
    gap: 1.25rem;
    padding-bottom: 1rem;
    scroll-snap-type: x mandatory;
  }

  .delusion-movement {
    flex: 0 0 72%;
    scroll-snap-align: start;
  }

}

/* DELUSION UNRAVELLING */

.delusion-unravelling {
  min-height: auto !important;
  padding: 8% 8% !important;
}

.delusion-unravelling-inner {
  max-width: 1050px;
}

.delusion-unravelling blockquote {
  max-width: 1000px;
  margin: 1.75rem 0 2rem;
  font-size: clamp(3.5rem, 5.5vw, 6rem);
  line-height: .98;
  font-weight: normal;
}

.delusion-unravelling-rule {
  width: 70px;
  height: 1px;
  background: var(--gold);
  margin: 2rem 0;
}

.delusion-unravelling p:last-child {
  max-width: 720px;
  font-size: 1.2rem;
  line-height: 1.7;
}

/* DELUSION CLOSING */

.delusion-closing {
  min-height: auto !important;
  padding: 8% 8% !important;
}

.delusion-closing blockquote {
  max-width: 760px;
  margin: 1.5rem 0 2rem;
  font-size: clamp(4rem, 7vw, 7rem);
  line-height: .9;
  font-weight: normal;
}

.delusion-closing-copy {
  margin-bottom: 2.5rem;
  font-size: 1.15rem;
  line-height: 1.6;
}

/* ECHOES — SEVEN INTERCONNECTED SECTIONS */

.echoes-seven {
  min-height: auto !important;
  padding: 7% 8% !important;
}

.echoes-seven-heading {
  max-width: 900px;
  margin-bottom: 3.5rem;
}

.echoes-seven-heading h2 {
  margin-top: 1rem;
  font-size: clamp(3.2rem, 5vw, 5.6rem);
  line-height: .98;
  font-weight: normal;
}

.echoes-movement-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 1rem;
  width: 100%;
  max-width: 1600px;
}

.echoes-movement {
  min-width: 0;
}

.echoes-movement-image {
  width: 100%;
  aspect-ratio: 2 / 3;
  overflow: hidden;
  background: var(--ivory);
  border: 1px solid rgba(176,141,87,.4);
}

.echoes-movement-image img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
}

.echoes-movement-number {
  margin: 1rem 0 .45rem;
  color: var(--gold) !important;
  font-family: Arial, sans-serif;
  font-size: .7rem;
  letter-spacing: .16em;
}

.echoes-movement h3 {
  margin: 0;
  color: var(--ivory);
  font-size: 1.15rem;
  line-height: 1.15;
  font-weight: normal;
}

.echoes-movement-turn .echoes-movement-image {
  border-color: var(--gold);
}


/* MOBILE */

@media(max-width:900px) {

  .echoes-movement-grid {
    display: flex;
    overflow-x: auto;
    gap: 1.25rem;
    padding-bottom: 1rem;
    scroll-snap-type: x mandatory;
  }

  .echoes-movement {
    flex: 0 0 72vw;
    scroll-snap-align: start;
  }

}

/* CODEX DISCOVERY DATA PLATE */

.codex-discovery-mark {
  min-height: 410px;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(56,229,107,.28);
  background:
    radial-gradient(
      circle at center,
      rgba(56,229,107,.07) 0%,
      rgba(56,229,107,.025) 28%,
      transparent 62%
    );
}

/* remove old diagonal cross */

.codex-discovery-mark::before,
.codex-discovery-mark::after {
  display: none;
}

/* technical circular interface */

.codex-coordinate-ring {
  position: absolute;
  width: 285px;
  height: 285px;
  border: 1px solid rgba(56,229,107,.17);
  border-radius: 50%;
}

.codex-coordinate-ring::before {
  content: "";
  position: absolute;
  inset: 28px;
  border: 1px solid rgba(56,229,107,.10);
  border-radius: 50%;
}

.codex-coordinate-ring::after {
  content: "";
  position: absolute;
  top: 50%;
  left: -90px;
  width: 465px;
  height: 1px;
  background: rgba(56,229,107,.10);
}

/* data */

.codex-discovery-data {
  position: relative;
  z-index: 2;
  width: 100%;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.codex-data-top {
  margin-bottom: 2rem;
  color: rgba(56,229,107,.62);
  font-family: Arial, sans-serif;
  font-size: .62rem;
  letter-spacing: .28em;
}

.codex-discovery-data strong {
  color: var(--codex-green);
  font-size: clamp(2.7rem,4vw,4.8rem);
  font-weight: normal;
  line-height: .95;
}

.codex-coordinates {
  margin-top: .9rem;
  color: var(--codex-ivory);
  font-family: Arial, sans-serif;
  font-size: .82rem;
  letter-spacing: .24em;
}

.codex-data-rule {
  width: 55px;
  height: 1px;
  margin: 1.8rem 0;
  background: var(--codex-green);
}

.codex-beneath {
  color: var(--codex-green);
  font-family: Arial, sans-serif;
  font-size: .67rem;
  letter-spacing: .3em;
}

/* ART INTRO */

.art-intro-inner{
  max-width:980px;
}

.art-intro h2{
  margin:1rem 0 2rem;
  font-size:clamp(3.2rem,5vw,5.5rem);
  line-height:.98;
  font-weight:normal;
}

.art-intro-lead{
  max-width:820px;
  margin-bottom:1.5rem;
  color:var(--art-gold) !important;
  font-size:1.35rem !important;
  line-height:1.55 !important;
}

.art-intro p:not(.section-label):not(.art-intro-lead){
  max-width:780px;
  color:var(--art-grey);
  font-size:1.15rem;
  line-height:1.75;
}

/* =========================================================
   ART COLLECTIONS
   ========================================================= */

.art-gallery {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 1.5rem;
  max-width: 1500px;
}

.art-collection {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(176,141,87,.38);
  background: var(--art-soft-black);
  text-decoration: none;
  color: var(--art-ivory);
}

.art-collection-image {
  width: 100%;
  height: 100%;
  min-height: 520px;
}

.art-collection-image img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.art-collection-copy {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 2rem;
  background:
    linear-gradient(
      to top,
      rgba(9,9,9,.98) 0%,
      rgba(9,9,9,.88) 55%,
      rgba(9,9,9,0) 100%
    );
}

.art-collection-copy h3 {
  margin: 0 0 .8rem;
  font-size: clamp(2.2rem,3vw,3.5rem);
  line-height: .98;
  font-weight: normal;
}

.art-collection-copy p {
  max-width: 500px;
  margin: 0 0 1.5rem;
  color: var(--art-grey);
  font-size: 1rem;
  line-height: 1.6;
}

.art-project-cross {
  grid-column: span 7;
  min-height: 640px;
}

.art-project-cross .art-collection-image img {
  object-fit: contain;
  background: #f4f0e6;
}

.art-zebra-world {
  grid-column: span 5;
  min-height: 640px;
}

.zebra-mini-gallery {
  height: 100%;
  min-height: 640px;
  display: grid;
  grid-template-columns: repeat(2,1fr);
  grid-template-rows: repeat(3,1fr);
  gap: 2px;
  background: #090909;
}

.zebra-mini-gallery img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  background: #fff;
}

.zebra-mini-gallery img:last-child {
  grid-column: span 2;
}

.art-we-moved {
  grid-column: span 12;
  min-height: 620px;
}

.art-we-moved .art-collection-image img {
  object-fit: cover;
}


/* MOBILE */

@media(max-width:900px) {

  .art-gallery {
    grid-template-columns: 1fr;
  }

  .art-project-cross,
  .art-zebra-world,
  .art-we-moved {
    grid-column: 1;
    min-height: 500px;
  }

  .zebra-mini-gallery {
    min-height: 500px;
  }

}

/* PROJECT CROSS IMAGE FIX */

.art-project-cross .art-collection-image {
  height: auto !important;
  aspect-ratio: auto !important;
  background: transparent !important;
}

.art-project-cross .art-collection-image img {
  width: 100%;
  height: auto !important;
  object-fit: contain !important;
  display: block;
}

/* ART COLLECTIONS — FINAL PROPORTIONS */

.art-project-cross,
.art-zebra-world {
  min-height: 520px !important;
}

.art-project-cross .art-collection-image {
  max-height: 520px;
  overflow: hidden;
}

.art-project-cross .art-collection-image img {
  width: 100%;
  height: 100% !important;
  object-fit: contain !important;
}

.art-zebra-world .zebra-mini-gallery {
  min-height: 520px !important;
  max-height: 520px;
}

.art-we-moved {
  min-height: 500px !important;
}

/* ART COLLECTIONS — 6 / 6 TOP ROW */

.art-collections-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

/* Keep We Moved Anyway full width */
.art-we-moved {
  grid-column: 1 / -1 !important;
}

/* =========================================================
   MUSIC STUDIO
   ========================================================= */

.music-page {
  --music-gold: #b08d57;
  --music-ivory: #f4f0e6;
  --music-grey: #a7a7a7;
  background: #090909;
  color: var(--music-ivory);
}


/* HEADER */

.music-header {
  min-height: 86px;
  padding: 0 7.5%;
  border-bottom: 1px solid rgba(176,141,87,.22);

  display: flex;
  align-items: center;
  justify-content: space-between;
}

.music-brand {
  color: var(--music-gold);
  text-decoration: none;
  font-family: Georgia, serif;
  font-size: 1.35rem;
  letter-spacing: .28em;
}

.music-header nav {
  display: flex;
  gap: 2.5rem;
}

.music-header nav a {
  color: var(--music-ivory);
  text-decoration: none;

  font-family: Arial, sans-serif;
  font-size: .78rem;
  letter-spacing: .14em;
}


/* HERO */

.music-hero {
  min-height: calc(100vh - 86px);

  padding: 5.5% 7.5%;

  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(420px, 1.1fr);
  gap: 6rem;

  align-items: center;
}


/* HERO COPY */

.music-hero-copy {
  position: relative;
  z-index: 2;
}

.music-hero .section-label {
  margin-bottom: 1.8rem;

  color: var(--music-gold);

  font-family: Arial, sans-serif;
  font-size: .72rem;
  letter-spacing: .22em;
}

.music-hero h1 {
  margin: 0;

  color: var(--music-ivory);

  font-family: Georgia, serif;
  font-size: clamp(4rem, 6.4vw, 7.2rem);
  font-weight: normal;
  line-height: .84;
  letter-spacing: -.045em;
}

.music-hero h1 span {
  color: var(--music-gold);
}

.music-hero-lead {
  margin-top: 2.25rem;

  color: var(--music-ivory);

  font-family: Georgia, serif;
  font-size: 1.35rem;
  line-height: 1.5;
}

.music-hero-body {
  max-width: 580px;
  margin-top: 1rem;

  color: var(--music-grey);

  font-size: 1rem;
  line-height: 1.7;
}


/* HERO BUTTON */

.music-hero-button {
  display: inline-block;

  margin-top: 2rem;
  padding: 1rem 1.4rem;

  border: 1px solid rgba(176,141,87,.8);

  color: var(--music-gold);
  text-decoration: none;

  font-family: Arial, sans-serif;
  font-size: .72rem;
  letter-spacing: .15em;

  transition:
    background .25s ease,
    color .25s ease;
}

.music-hero-button:hover {
  background: var(--music-gold);
  color: #090909;
}


/* MUSIC MARK */

.music-hero-mark {
  display: flex;
  justify-content: center;
  align-items: center;
}

.music-hero-mark img {
  display: block;

  width: min(100%, 720px);
  height: auto;
}


/* MOBILE */

@media (max-width: 900px) {

  .music-header {
    padding: 0 7%;
  }

  .music-header nav {
    gap: 1.2rem;
  }

  .music-header nav a {
    font-size: .68rem;
  }

  .music-hero {
    min-height: auto;

    padding: 12% 7%;

    grid-template-columns: 1fr;
    gap: 4rem;
  }

  .music-hero h1 {
    font-size: clamp(3.7rem, 15vw, 6rem);
  }

  .music-hero-mark img {
    width: min(100%, 560px);
  }

}

/* MUSIC INTRO */

.music-intro {
  padding-top: 8%;
  padding-bottom: 8%;
  border-top: 1px solid rgba(176,141,87,.18);
}

.music-intro-inner {
  max-width: 980px;
}

.music-intro h2 {
  margin: 1rem 0 2rem;

  font-size: clamp(3.2rem,5vw,5.5rem);
  line-height: .98;
  font-weight: normal;
}

.music-intro-lead {
  max-width: 820px;
  margin-bottom: 1.5rem;

  color: var(--music-gold) !important;

  font-size: 1.35rem !important;
  line-height: 1.55 !important;
}

.music-intro p:not(.section-label):not(.music-intro-lead) {
  max-width: 780px;

  color: var(--music-grey);

  font-size: 1.15rem;
  line-height: 1.75;
}

.music-intro p + p {
  margin-top: .75rem;
}

/* =========================================================
   THE OPEN SONG
   ========================================================= */

.open-song {
  padding-top: 8%;
  padding-bottom: 8%;
  border-top: 1px solid rgba(176,141,87,.2);
}

.open-song-heading {
  max-width: 1000px;
  margin-bottom: 4rem;
}

.open-song-heading h2 {
  margin: 1rem 0 1.5rem;

  font-size: clamp(3.5rem,6vw,6.5rem);
  line-height: .95;
  font-weight: normal;
}

.open-song-heading h2 span {
  color: var(--music-gold);
}

.open-song-intro {
  color: var(--music-grey);
  font-size: 1.2rem;
}


/* VIDEO */

.open-song-video {
  width: 100%;
  max-width: 1400px;

  aspect-ratio: 16 / 9;

  border: 1px solid rgba(176,141,87,.5);
  background: #000;

  overflow: hidden;
}

.open-song-video iframe {
  display: block;

  width: 100%;
  height: 100%;

  border: 0;
}


/* SONG TITLE */

.open-song-title {
  max-width: 1400px;

  padding: 2rem 0 3rem;

  display: flex;
  gap: 1.5rem;
  align-items: flex-start;

  border-bottom: 1px solid rgba(176,141,87,.25);
}

.open-song-title > span {
  color: var(--music-gold);

  font-family: Arial, sans-serif;
  font-size: .75rem;
  letter-spacing: .15em;
}

.open-song-title p {
  margin: 0 0 .4rem;

  color: var(--music-grey);

  font-family: Arial, sans-serif;
  font-size: .7rem;
  letter-spacing: .18em;
}

.open-song-title h3 {
  margin: 0;

  font-size: clamp(2.2rem,4vw,4rem);
  font-weight: normal;
}


/* PLAYERS */

.open-song-player-grid {
  max-width: 1400px;

  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
}

.open-song-player {
  min-height: 330px;

  padding: 3rem;

  border-right: 1px solid rgba(176,141,87,.3);
  border-bottom: 1px solid rgba(176,141,87,.3);
  border-left: 1px solid rgba(176,141,87,.3);

  display: flex;
  flex-direction: column;
}

.open-song-player + .open-song-player {
  border-left: 0;
}

.open-song-number {
  color: var(--music-grey);

  font-family: Arial,sans-serif;
  font-size: .72rem;
}

.open-song-mode {
  margin: 2rem 0 1rem;

  color: var(--music-gold);

  font-family: Arial,sans-serif;
  font-size: .76rem;
  letter-spacing: .18em;
}

.open-song-player h4 {
  margin: 0 0 3rem;

  font-family: Georgia,serif;
  font-size: clamp(1.8rem,3vw,3rem);
  font-weight: normal;
}

.open-song-player audio {
  width: 100%;
  margin-top: auto;
}


/* YOUR TURN */

.open-song-challenge {
  max-width: 1400px;

  padding: 6rem 3rem;

  border: 1px solid rgba(176,141,87,.55);
  border-top: 0;
}

.open-song-challenge .open-song-mode {
  margin-top: 0;
}

.open-song-challenge h3 {
  margin: 1.5rem 0;

  font-size: clamp(3.2rem,6vw,6.5rem);
  line-height: .95;
  font-weight: normal;
}

.open-song-challenge h3 span {
  color: var(--music-gold);
}

.open-song-challenge > p:not(.open-song-mode) {
  max-width: 650px;

  color: var(--music-grey);

  font-size: 1.2rem;
  line-height: 1.7;
}

.open-song-button {
  display: inline-block;

  margin-top: 2.5rem;
  padding: 1rem 1.4rem;

  border: 1px solid var(--music-gold);

  color: var(--music-gold);
  text-decoration: none;

  font-family: Arial,sans-serif;
  font-size: .76rem;
  letter-spacing: .15em;
}


/* MOBILE */

@media(max-width:900px) {

  .open-song-player-grid {
    grid-template-columns: 1fr;
  }

  .open-song-player + .open-song-player {
    border-left: 1px solid rgba(176,141,87,.3);
  }

  .open-song-player {
    padding: 2rem;
  }

  .open-song-challenge {
    padding: 4rem 2rem;
  }

}

.open-song-video video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  background: #000;
}

.open-song-note {
  margin: -2rem 0 1.5rem;
  color: var(--music-grey);
  font-family: Arial, sans-serif;
  font-size: .72rem;
  letter-spacing: .08em;
}


/* =========================================================
   FROM THE STUDIO
   ========================================================= */

.music-worlds {
  padding-top: 9%;
  padding-bottom: 9%;
  border-top: 1px solid rgba(176,141,87,.2);
}

.music-worlds-heading {
  max-width: 1000px;
  margin-bottom: 5rem;
}

.music-worlds-heading h2 {
  margin: 1rem 0 1.8rem;
  font-size: clamp(3.5rem,6vw,6.5rem);
  line-height: .95;
  font-weight: normal;
}

.music-worlds-heading h2 span {
  color: var(--music-gold);
}

.music-worlds-heading > p:last-child {
  max-width: 720px;
  color: var(--music-grey);
  font-size: 1.2rem;
  line-height: 1.7;
}


/* GRID */

.music-worlds-grid {
  max-width: 1400px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
}

.music-world {
  min-height: 440px;
  padding: 3.5rem;
  border: 1px solid rgba(176,141,87,.35);
  display: flex;
  flex-direction: column;
}

.music-world:nth-child(2) {
  border-left: 0;
}

.music-world-wide {
  grid-column: 1 / -1;
  min-height: 390px;
  border-top: 0;
}


/* CONTENT */

.music-world-number {
  color: var(--music-grey);
  font-family: Arial, sans-serif;
  font-size: .72rem;
  letter-spacing: .15em;
}

.music-world-type {
  margin: 2.5rem 0 1.2rem;
  color: var(--music-gold);
  font-family: Arial, sans-serif;
  font-size: .72rem;
  letter-spacing: .17em;
}

.music-world h3 {
  margin: 0 0 1.5rem;
  color: var(--music-ivory);
  font-family: Georgia, serif;
  font-size: clamp(2.6rem,4vw,4.6rem);
  font-weight: normal;
  line-height: 1;
}

.music-world > p:not(.music-world-type) {
  max-width: 600px;
  margin: 0;
  color: var(--music-grey);
  font-size: 1.05rem;
  line-height: 1.7;
}

.music-world-link {
  align-self: flex-start;
  margin-top: auto;
  padding-top: 2.5rem;
  color: var(--music-gold);
  text-decoration: none;
  font-family: Arial, sans-serif;
  font-size: .72rem;
  letter-spacing: .15em;
}

.music-world-link:hover {
  color: var(--music-ivory);
}


/* MOBILE */

@media(max-width:900px) {

  .music-worlds-grid {
    grid-template-columns: 1fr;
  }

  .music-world {
    min-height: 380px;
    padding: 2.5rem 2rem;
  }

  .music-world:nth-child(2) {
    border-left: 1px solid rgba(176,141,87,.35);
    border-top: 0;
  }

  .music-world-wide {
    grid-column: auto;
  }

}

/* =========================================================
   BLESSED PROJECT
   ========================================================= */

.blessed-page {
  --blessed-black: #090909;
  --blessed-gold: #b08d57;
  --blessed-ivory: #f4f0e6;
  --blessed-grey: #a7a7a7;

  margin: 0;
  background: var(--blessed-black);
  color: var(--blessed-ivory);
}


/* HEADER */

.blessed-header {
  min-height: 86px;
  padding: 0 7.5%;
  border-bottom: 1px solid rgba(176,141,87,.22);

  display: flex;
  align-items: center;
  justify-content: space-between;
}

.blessed-brand {
  color: var(--blessed-gold);
  text-decoration: none;
  font-family: Georgia, serif;
  font-size: 1.35rem;
  letter-spacing: .28em;
}

.blessed-header nav {
  display: flex;
  gap: 2.5rem;
}

.blessed-header nav a {
  color: var(--blessed-ivory);
  text-decoration: none;
  font-family: Arial, sans-serif;
  font-size: .72rem;
  letter-spacing: .15em;
}

.blessed-header nav a:hover {
  color: var(--blessed-gold);
}


/* HERO */

.blessed-hero {
  min-height: calc(100vh - 86px);
  padding: 6% 7.5%;

  display: grid;
  grid-template-columns: minmax(0,.85fr) minmax(420px,1.15fr);
  gap: 6rem;
  align-items: center;
}

.blessed-hero-copy {
  max-width: 720px;
}

.blessed-label {
  margin: 0 0 2rem;

  color: var(--blessed-gold);

  font-family: Arial, sans-serif;
  font-size: .7rem;
  letter-spacing: .2em;
}

.blessed-hero h1 {
  margin: 0;

  color: var(--blessed-ivory);

  font-family: Georgia, serif;
  font-size: clamp(4.8rem,8vw,9rem);
  font-weight: normal;
  line-height: .85;
  letter-spacing: .04em;
}

.blessed-tagline {
  margin: 2.2rem 0 0;

  color: var(--blessed-gold);

  font-family: Georgia, serif;
  font-size: clamp(1.5rem,2.2vw,2.2rem);
  line-height: 1.4;
}

.blessed-intro {
  max-width: 620px;
  margin: 1.6rem 0 0;

  color: var(--blessed-grey);

  font-size: 1.05rem;
  line-height: 1.75;
}

.blessed-button {
  display: inline-block;

  margin-top: 2.5rem;
  padding: 1rem 1.4rem;

  border: 1px solid var(--blessed-gold);

  color: var(--blessed-gold);

  text-decoration: none;
  font-family: Arial, sans-serif;
  font-size: .72rem;
  letter-spacing: .15em;

  transition: background .25s ease, color .25s ease;
}

.blessed-button:hover {
  background: var(--blessed-gold);
  color: var(--blessed-black);
}


/* HERO ART */

.blessed-hero-art {
  display: flex;
  align-items: center;
  justify-content: center;
}

.blessed-hero-art img {
  display: block;
  width: min(100%,720px);
  height: auto;

  border: 1px solid rgba(176,141,87,.28);
}


/* MOBILE */

@media(max-width:900px) {

  .blessed-header {
    padding: 0 7%;
  }

  .blessed-header nav {
    gap: 1.25rem;
  }

  .blessed-hero {
    min-height: auto;
    padding: 12% 7%;

    grid-template-columns: 1fr;
    gap: 4rem;
  }

  .blessed-hero h1 {
    font-size: clamp(4rem,18vw,7rem);
  }

  .blessed-hero-art img {
    width: min(100%,600px);
  }

}

/* =========================================================
   BLESSED · THE JOURNEY
   ========================================================= */

.blessed-journey {
  padding: 9% 7.5%;
  border-top: 1px solid rgba(176,141,87,.22);
}


/* JOURNEY INTRO */

.blessed-journey-heading {
  max-width: 1000px;
  margin-bottom: 6rem;
}

.blessed-journey-heading h2 {
  margin: 1rem 0 2rem;

  color: var(--blessed-ivory);

  font-family: Georgia, serif;
  font-size: clamp(3.6rem,6vw,6.8rem);
  font-weight: normal;
  line-height: .95;
}

.blessed-journey-heading h2 span {
  color: var(--blessed-gold);
}

.blessed-journey-heading > p:last-child {
  max-width: 720px;
  margin: 0;

  color: var(--blessed-grey);

  font-size: 1.1rem;
  line-height: 1.75;
}


/* CHAPTER */

.blessed-chapter {
  max-width: 1400px;

  border-top: 1px solid rgba(176,141,87,.5);
  border-bottom: 1px solid rgba(176,141,87,.5);
}


/* CHAPTER COPY */

.blessed-chapter-copy {
  min-height: 440px;
  padding: 4rem;

  display: flex;
  flex-direction: column;
  justify-content: center;
}

.blessed-chapter-meta {
  display: flex;
  align-items: center;
  gap: 1.5rem;
}

.blessed-chapter-meta span {
  color: var(--blessed-gold);

  font-family: Arial, sans-serif;
  font-size: .72rem;
  letter-spacing: .16em;
}

.blessed-chapter-meta p {
  margin: 0;

  color: var(--blessed-grey);

  font-family: Arial, sans-serif;
  font-size: .72rem;
  letter-spacing: .18em;
}

.blessed-chapter h3 {
  margin: 2rem 0;

  color: var(--blessed-ivory);

  font-family: Georgia, serif;
  font-size: clamp(3.5rem,6vw,6.8rem);
  font-weight: normal;
  line-height: .9;
}

.blessed-chapter h3 span {
  color: var(--blessed-gold);
}

.blessed-chapter-intro {
  max-width: 680px;
  margin: 0;

  color: var(--blessed-grey);

  font-size: 1.05rem;
  line-height: 1.75;
}


/* TWO EXPERIENCES */

.blessed-chapter-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
}

.blessed-experience {
  min-height: 300px;
  padding: 3rem;

  border-top: 1px solid rgba(176,141,87,.3);
  border-right: 1px solid rgba(176,141,87,.3);

  display: flex;
  flex-direction: column;

  color: inherit;
  text-decoration: none;

  transition:
    background .25s ease,
    border-color .25s ease;
}

.blessed-experience:first-child {
  border-left: 1px solid rgba(176,141,87,.3);
}

.blessed-experience:hover {
  background: rgba(176,141,87,.06);
  border-color: rgba(176,141,87,.7);
}

.blessed-experience-number {
  color: var(--blessed-grey);

  font-family: Arial, sans-serif;
  font-size: .68rem;
  letter-spacing: .16em;
}

.blessed-experience p {
  margin: 2rem 0 .9rem;

  color: var(--blessed-gold);

  font-family: Arial, sans-serif;
  font-size: .7rem;
  letter-spacing: .18em;
}

.blessed-experience h4 {
  margin: 0;

  color: var(--blessed-ivory);

  font-family: Georgia, serif;
  font-size: clamp(1.8rem,3vw,3rem);
  font-weight: normal;
}

.blessed-experience-link {
  margin-top: auto;
  padding-top: 2.5rem;

  color: var(--blessed-gold);

  font-family: Arial, sans-serif;
  font-size: .7rem;
  letter-spacing: .16em;
}


/* MOBILE */

@media(max-width:900px) {

  .blessed-journey {
    padding: 12% 7%;
  }

  .blessed-journey-heading {
    margin-bottom: 4rem;
  }

  .blessed-chapter-copy {
    min-height: auto;
    padding: 4rem 2rem;
  }

  .blessed-chapter-actions {
    grid-template-columns: 1fr;
  }

  .blessed-experience {
    min-height: 260px;
    padding: 2.5rem 2rem;
    border-left: 1px solid rgba(176,141,87,.3);
  }

}

/* BLESSED JOURNEY VIDEO */

.blessed-experience video {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  margin: 2rem 0 2.25rem;

  background: #000;
  border: 1px solid rgba(176,141,87,.3);

  object-fit: contain;
}

.blessed-experience h4 {
  margin-top: 0;
}

/* =========================================================
   BLESSED · EPILOGUE
   ========================================================= */

.blessed-epilogue {
  max-width: 1400px;
  margin-top: 8rem;
  padding-top: 6rem;

  border-top: 1px solid rgba(176,141,87,.5);
}

.blessed-epilogue-copy {
  max-width: 900px;
  margin-bottom: 3rem;
}

.blessed-epilogue-copy h2 {
  margin: 1rem 0 1.8rem;

  color: var(--blessed-ivory);

  font-family: Georgia, serif;
  font-size: clamp(3.5rem,6vw,6.5rem);
  font-weight: normal;
  line-height: .95;
}

.blessed-epilogue-copy h2 span {
  color: var(--blessed-gold);
}

.blessed-epilogue-copy > p:last-child {
  max-width: 680px;
  margin: 0;

  color: var(--blessed-grey);

  font-size: 1.1rem;
  line-height: 1.7;
}

.blessed-epilogue-video {
  width: 100%;
  border: 1px solid rgba(176,141,87,.4);
  background: #000;
}

.blessed-epilogue-video video {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: contain;
  background: #000;
}

/* =========================================================
   STILL HERE · PROJECT PAGE
   ========================================================= */

.still-here-page {
  --still-gold: #b08d57;
  --still-ivory: #f4f0e6;
  --still-grey: #a7a7a7;

  margin: 0;
  background: #090909;
  color: var(--still-ivory);
}


/* HEADER */

.still-here-header {
  min-height: 86px;
  padding: 0 5.5%;

  border-bottom: 1px solid rgba(176,141,87,.22);

  display: flex;
  align-items: center;
  justify-content: space-between;
}

.still-here-brand {
  color: var(--still-gold);
  text-decoration: none;

  font-family: Georgia, serif;
  font-size: 1.35rem;
  letter-spacing: .28em;
}

.still-here-header nav {
  display: flex;
  gap: 2.5rem;
}

.still-here-header nav a {
  color: var(--still-ivory);
  text-decoration: none;

  font-family: Arial, sans-serif;
  font-size: .78rem;
  letter-spacing: .14em;
}


/* HERO */

.still-here-project-hero {
  min-height: calc(100vh - 86px);
  padding: 6% 5.5%;

  display: grid;
  grid-template-columns: minmax(0,.85fr) minmax(420px,1.15fr);
  gap: 6rem;
  align-items: center;
}

.still-here-project-copy {
  max-width: 720px;
}

.still-here-label {
  margin: 0 0 2rem;

  color: var(--still-gold);

  font-family: Arial, sans-serif;
  font-size: .72rem;
  letter-spacing: .22em;
}

.still-here-project-hero h1 {
  margin: 0;

  color: var(--still-ivory);

  font-family: Georgia, serif;
  font-size: clamp(5rem,9vw,9rem);
  font-weight: normal;
  line-height: .78;
  letter-spacing: -.045em;
}

.still-here-project-hero h1 span {
  color: var(--still-gold);
}

.still-here-project-tagline {
  margin: 3rem 0 0;

  color: var(--still-ivory);

  font-family: Georgia, serif;
  font-size: clamp(1.4rem,2.2vw,2rem);
  line-height: 1.35;
}

.still-here-project-intro {
  max-width: 650px;
  margin: 2rem 0 0;

  color: var(--still-grey);

  font-family: Georgia, serif;
  font-size: 1.15rem;
  line-height: 1.75;
}

.still-here-button {
  display: inline-block;

  margin-top: 2.5rem;
  padding: 1rem 1.4rem;

  border: 1px solid rgba(176,141,87,.8);

  color: var(--still-gold);
  text-decoration: none;

  font-family: Arial, sans-serif;
  font-size: .72rem;
  letter-spacing: .15em;

  transition: background .25s ease, color .25s ease;
}

.still-here-button:hover {
  background: var(--still-gold);
  color: #090909;
}


/* HERO ART */

.still-here-project-art {
  display: flex;
  align-items: center;
  justify-content: center;
}

.still-here-project-art img {
  display: block;
  width: min(100%,760px);
  height: auto;

  border: 1px solid rgba(176,141,87,.32);
}


/* OPENING */

.still-here-opening {
  padding: 10% 7.5%;

  border-top: 1px solid rgba(176,141,87,.2);
}

.still-here-opening-inner {
  max-width: 1050px;
}

.still-here-opening h2 {
  margin: 0 0 2.5rem;

  color: var(--still-ivory);

  font-family: Georgia, serif;
  font-size: clamp(4rem,7vw,7rem);
  font-weight: normal;
  line-height: .93;
  letter-spacing: -.035em;
}

.still-here-opening h2 span {
  color: var(--still-gold);
}

.still-here-opening-lead {
  max-width: 800px;
  margin-bottom: 2rem;

  color: var(--still-ivory) !important;

  font-family: Georgia, serif;
  font-size: 1.5rem !important;
  line-height: 1.55 !important;
}

.still-here-opening p:not(.still-here-label) {
  max-width: 800px;

  color: var(--still-grey);

  font-family: Georgia, serif;
  font-size: 1.12rem;
  line-height: 1.8;
}

.still-here-opening p + p {
  margin-top: 1rem;
}

.still-here-opening-final {
  margin-top: 3rem !important;

  color: var(--still-gold) !important;

  font-size: 1.35rem !important;
}


/* MOBILE */

@media (max-width: 900px) {

  .still-here-header {
    padding: 0 7%;
  }

  .still-here-header nav {
    gap: 1.2rem;
  }

  .still-here-header nav a {
    font-size: .68rem;
  }

  .still-here-project-hero {
    min-height: auto;
    padding: 12% 7%;

    grid-template-columns: 1fr;
    gap: 4rem;
  }

  .still-here-project-hero h1 {
    font-size: clamp(4.5rem,20vw,7rem);
  }

  .still-here-project-art img {
    width: 100%;
  }

  .still-here-opening {
    padding: 16% 7%;
  }

}

/* =========================================================
   STILL HERE · MOMENTS
   ========================================================= */

.still-here-moment {
  padding: 9% 7.5%;
  border-top: 1px solid rgba(176,141,87,.22);
}

.still-here-moment-heading {
  max-width: 1100px;
}

.still-here-moment-meta {
  display: flex;
  align-items: center;
  gap: 1.5rem;
}

.still-here-moment-meta span {
  color: var(--still-gold);
  font-family: Arial, sans-serif;
  font-size: .72rem;
  letter-spacing: .16em;
}

.still-here-moment-meta p {
  margin: 0;

  color: var(--still-grey);
  font-family: Arial, sans-serif;
  font-size: .72rem;
  letter-spacing: .18em;
}

.still-here-moment h2 {
  margin: 2rem 0;

  color: var(--still-ivory);
  font-family: Georgia, serif;
  font-size: clamp(4rem,7vw,7rem);
  font-weight: normal;
  line-height: .9;
  letter-spacing: -.035em;
}

.still-here-moment h2 span {
  color: var(--still-gold);
}

.still-here-moment-intro {
  max-width: 760px;
  margin: 0;

  color: var(--still-grey);
  font-family: Georgia, serif;
  font-size: 1.2rem;
  line-height: 1.75;
}


/* AUDIO */

.still-here-listen {
  max-width: 900px;
  margin-top: 4rem;
  padding: 2.5rem 0;

  border-top: 1px solid rgba(176,141,87,.3);
  border-bottom: 1px solid rgba(176,141,87,.3);
}

.still-here-listen .still-here-label {
  margin-bottom: 1.5rem;
}

.still-here-listen audio {
  display: block;
  width: 100%;
}


/* READ THE MOMENT */

.still-here-read {
  max-width: 900px;
  margin-top: 2.5rem;

  border-bottom: 1px solid rgba(176,141,87,.3);
}

.still-here-read summary {
  padding: 1.5rem 0 2rem;

  cursor: pointer;
  list-style: none;

  color: var(--still-gold);
  font-family: Arial, sans-serif;
  font-size: .75rem;
  letter-spacing: .16em;
}

.still-here-read summary::-webkit-details-marker {
  display: none;
}

.still-here-read[open] summary {
  color: var(--still-ivory);
}

.still-here-read-content {
  max-width: 760px;
  padding: 0 0 3rem;
}

.still-here-read-content p {
  margin: 0 0 1.25rem;

  color: var(--still-grey);
  font-family: Georgia, serif;
  font-size: 1.08rem;
  line-height: 1.8;
}


/* MOBILE */

@media (max-width: 900px) {

  .still-here-moment {
    padding: 14% 7%;
  }

  .still-here-listen {
    margin-top: 3rem;
  }

}

/* STILL HERE · INTERLUDES */

.still-here-interlude {
  min-height: 52vh;
  padding: 8% 7.5%;

  border-top: 1px solid rgba(176,141,87,.15);
  border-bottom: 1px solid rgba(176,141,87,.15);

  display: flex;
  align-items: center;
  justify-content: center;
}

.still-here-interlude p {
  margin: 0;

  color: var(--still-gold);

  font-family: Georgia, serif;
  font-size: clamp(2.2rem,4vw,4.5rem);
  font-weight: normal;
  line-height: 1.2;

  text-align: center;
}


/* FINAL MOMENT */

.still-here-final-moment {
  padding-bottom: 12%;
}

/* =========================================================
   WE MOVED ANYWAY · THE SIGNAL
   ========================================================= */

.wma-page {
  --wma-gold: #b08d57;
  --wma-ivory: #f4f0e6;
  --wma-grey: #a7a7a7;

  margin: 0;
  background: #090909;
  color: var(--wma-ivory);
}


/* HEADER */

.wma-header {
  min-height: 86px;
  padding: 0 5.5%;

  border-bottom: 1px solid rgba(176,141,87,.22);

  display: flex;
  align-items: center;
  justify-content: space-between;
}

.wma-brand {
  color: var(--wma-gold);
  text-decoration: none;

  font-family: Georgia, serif;
  font-size: 1.35rem;
  letter-spacing: .28em;
}

.wma-header nav {
  display: flex;
  gap: 2.5rem;
}

.wma-header nav a {
  color: var(--wma-ivory);
  text-decoration: none;

  font-family: Arial, sans-serif;
  font-size: .78rem;
  letter-spacing: .14em;
}


/* LABEL */

.wma-label {
  margin: 0 0 2rem;

  color: var(--wma-gold);

  font-family: Arial, sans-serif;
  font-size: .72rem;
  letter-spacing: .22em;
}


/* HERO */

.wma-hero {
  min-height: calc(100vh - 86px);
  padding: 4.5% 5.5%;

  display: grid;
  grid-template-columns: minmax(0,.9fr) minmax(420px,1.1fr);

  gap: 6rem;
  align-items: center;
}

.wma-hero-copy {
  max-width: 720px;
}

.wma-hero h1 {
  margin: 0;

  color: var(--wma-ivory);

  font-family: Georgia, serif;
  font-size: clamp(4.8rem,8.5vw,8.5rem);
  font-weight: normal;

  line-height: .8;
  letter-spacing: -.045em;
}

.wma-hero h1 span {
  color: var(--wma-gold);
}

.wma-subtitle {
  margin: 2.2rem 0 0;

  color: var(--wma-gold);

  font-family: Georgia, serif;
  font-size: 1.5rem;
  font-style: italic;
}

.wma-tagline {
  margin: 2.2rem 0 0;

  color: var(--wma-ivory);

  font-family: Georgia, serif;
  font-size: clamp(1.35rem,2vw,1.9rem);

  line-height: 1.4;
}

.wma-intro {
  max-width: 650px;

  margin: 2rem 0 0;

  color: var(--wma-grey);

  font-family: Georgia, serif;
  font-size: 1.12rem;

  line-height: 1.75;
}

.wma-button {
  display: inline-block;

  margin-top: 2.5rem;
  padding: 1rem 1.4rem;

  border: 1px solid rgba(176,141,87,.8);

  color: var(--wma-gold);
  text-decoration: none;

  font-family: Arial, sans-serif;
  font-size: .72rem;
  letter-spacing: .15em;

  transition: background .25s ease, color .25s ease;
}

.wma-button:hover {
  background: var(--wma-gold);
  color: #090909;
}

.wma-hero-art {
  display: flex;
  align-items: center;
  justify-content: center;
}

.wma-hero-art img {
  display: block;

  width: min(100%,760px);
  height: auto;

  border: 1px solid rgba(176,141,87,.32);
}


/* SIGNAL */

.wma-signal {
  padding: 10% 7.5%;

  border-top: 1px solid rgba(176,141,87,.2);
}

.wma-signal-heading {
  max-width: 1000px;
}

.wma-signal-heading h2,
.wma-statement h2,
.wma-artwork h2 {
  margin: 0 0 2.5rem;

  color: var(--wma-ivory);

  font-family: Georgia, serif;
  font-size: clamp(3.8rem,6vw,6.5rem);
  font-weight: normal;

  line-height: .95;
  letter-spacing: -.035em;
}

.wma-signal-heading h2 span,
.wma-statement h2 span,
.wma-artwork h2 span {
  color: var(--wma-gold);
}

.wma-signal-heading p:not(.wma-label),
.wma-statement p:not(.wma-label),
.wma-artwork p:not(.wma-label) {
  max-width: 800px;

  color: var(--wma-grey);

  font-family: Georgia, serif;
  font-size: 1.12rem;

  line-height: 1.8;
}


/* VIDEO */

.wma-video {
  margin-top: 4rem;
}

.wma-video video {
  display: block;

  width: 100%;
  max-width: 1400px;

  background: #000;

  border: 1px solid rgba(176,141,87,.32);
}


/* STATEMENT */

.wma-statement {
  padding: 10% 7.5%;

  border-top: 1px solid rgba(176,141,87,.18);
}

.wma-statement-inner {
  max-width: 1000px;
}

.wma-statement p + p {
  margin-top: 1.2rem;
}


/* ARTWORK */

.wma-artwork {
  padding: 10% 7.5%;

  border-top: 1px solid rgba(176,141,87,.18);

  display: grid;
  grid-template-columns: 1fr 1fr;

  gap: 6rem;
  align-items: center;
}

.wma-artwork-copy {
  max-width: 720px;
}

.wma-artwork-image {
  display: flex;
  justify-content: center;
}

.wma-artwork-image img {
  display: block;

  width: min(100%,650px);
  height: auto;

  border: 1px solid rgba(176,141,87,.32);
}


/* FOOTER */

.wma-footer {
  padding: 4rem 7.5%;

  border-top: 1px solid rgba(176,141,87,.22);

  display: flex;
  justify-content: space-between;
  align-items: center;

  gap: 2rem;
}

.wma-footer p,
.wma-footer a {
  margin: 0;

  font-family: Arial, sans-serif;
  font-size: .72rem;
  letter-spacing: .14em;
}

.wma-footer p {
  color: var(--wma-grey);
}

.wma-footer a {
  color: var(--wma-gold);
  text-decoration: none;
}


/* MOBILE */

@media (max-width: 900px) {

  .wma-header {
    padding: 0 7%;
  }

  .wma-header nav {
    gap: 1.2rem;
  }

  .wma-header nav a {
    font-size: .68rem;
  }

  .wma-hero {
    min-height: auto;

    padding: 12% 7%;

    grid-template-columns: 1fr;
    gap: 4rem;
  }

  .wma-hero h1 {
    font-size: clamp(4.2rem,18vw,7rem);
  }

  .wma-signal,
  .wma-statement {
    padding: 16% 7%;
  }

  .wma-artwork {
    padding: 16% 7%;

    grid-template-columns: 1fr;
    gap: 4rem;
  }

  .wma-footer {
    padding: 3rem 7%;

    flex-direction: column;
    align-items: flex-start;
  }

}

/* =========================================================
   MUSIC STUDIO · LOWER SECTIONS
   ========================================================= */

.music-built-together,
.music-listen-everywhere,
.music-principle {
  padding: 10% 7.5%;
  border-top: 1px solid rgba(176,141,87,.2);
}

.music-built-inner,
.music-listen-inner,
.music-principle-inner {
  max-width: 1050px;
}

.music-built-together h2,
.music-listen-everywhere h2,
.music-principle h2 {
  margin: 0 0 2.5rem;

  color: var(--ivory);

  font-family: Georgia, serif;
  font-size: clamp(3.8rem,6.5vw,6.8rem);
  font-weight: normal;

  line-height: .94;
  letter-spacing: -.035em;
}

.music-built-together h2 span,
.music-listen-everywhere h2 span,
.music-principle h2 span {
  color: var(--gold);
}

.music-built-together p:not(.section-label),
.music-listen-everywhere p:not(.section-label),
.music-principle p:not(.section-label) {
  max-width: 800px;

  color: var(--grey);

  font-family: Georgia, serif;
  font-size: 1.12rem;

  line-height: 1.8;
}

.music-built-lead {
  color: var(--ivory) !important;
  font-size: 1.4rem !important;
}

.music-section-button {
  display: inline-block;

  margin-top: 2.5rem;
  padding: 1rem 1.4rem;

  border: 1px solid rgba(176,141,87,.8);

  color: var(--gold);
  text-decoration: none;

  font-family: Arial, sans-serif;
  font-size: .72rem;
  letter-spacing: .15em;

  transition: background .25s ease, color .25s ease;
}

.music-section-button:hover {
  background: var(--gold);
  color: #090909;
}


/* LISTEN EVERYWHERE */

.music-listen-everywhere {
  background: var(--ivory);
  color: #090909;
}

.music-listen-everywhere .section-label {
  color: var(--gold);
}

.music-listen-everywhere h2 {
  color: #090909;
}

.music-listen-everywhere p:not(.section-label) {
  max-width: 760px;
  color: #555;
}

.music-listen-links {
  margin-top: 3rem;

  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}

.music-listen-link {
  padding: .95rem 1.2rem;

  border: 1px solid rgba(9,9,9,.25);

  color: #090909;
  text-decoration: none;

  font-family: Arial, sans-serif;
  font-size: .72rem;
  letter-spacing: .14em;
}

.music-listen-link:hover {
  border-color: var(--gold);
  color: var(--gold);
}


/* PRINCIPLE */

.music-principle {
  min-height: 70vh;

  display: flex;
  align-items: center;
}

.music-principle p:not(.section-label) {
  margin-top: 2rem;
}


/* FOOTER */

.music-footer {
  padding: 3rem 7.5%;

  border-top: 1px solid rgba(176,141,87,.22);

  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 2rem;
}

.music-footer p {
  margin: 0;

  color: var(--grey);

  font-family: Arial, sans-serif;
  font-size: .72rem;
  letter-spacing: .14em;
}

.music-footer-links {
  display: flex;
  gap: 2rem;
}

.music-footer-links a {
  color: var(--gold);
  text-decoration: none;

  font-family: Arial, sans-serif;
  font-size: .72rem;
  letter-spacing: .14em;
}


/* MOBILE */

@media (max-width: 900px) {

  .music-built-together,
  .music-listen-everywhere,
  .music-principle {
    padding: 16% 7%;
  }

  .music-principle {
    min-height: auto;
  }

  .music-footer {
    padding: 3rem 7%;

    flex-direction: column;
    align-items: flex-start;
  }

  .music-footer-links {
    gap: 1.2rem;
  }

}

.echoes-seven-card img {
  width: 100%;
  display: block;
  margin-bottom: 18px;
}

.method-covers {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  align-items: end;
}

.method-covers img {
  width: 100%;
  display: block;
  border: 1px solid rgba(176, 141, 87, 0.28);
}

.method-covers img:nth-child(5),
.method-covers img:nth-child(6),
.method-covers img:nth-child(7) {
  transform: translateX(50%);
}

/* METHOD SERIES HERO — COVER WALL */

.method-hero {
  display: grid;
  grid-template-columns: minmax(420px, 0.8fr) minmax(650px, 1.35fr);
  gap: 6rem;
  align-items: center;
}

.method-covers {
  width: 100%;
  max-width: 900px;
  justify-self: end;

  display: grid;
  grid-template-columns: repeat(8, 1fr);
  gap: 14px;
  align-items: start;
}

/* Top row: four books */
.method-covers img:nth-child(1) {
  grid-column: 1 / 3;
}

.method-covers img:nth-child(2) {
  grid-column: 3 / 5;
}

.method-covers img:nth-child(3) {
  grid-column: 5 / 7;
}

.method-covers img:nth-child(4) {
  grid-column: 7 / 9;
}

/* Bottom row: three books centred */
.method-covers img:nth-child(5) {
  grid-column: 2 / 4;
}

.method-covers img:nth-child(6) {
  grid-column: 4 / 6;
}

.method-covers img:nth-child(7) {
  grid-column: 6 / 8;
}

.method-covers img {
  width: 100%;
  height: auto;
  display: block;
  border: 1px solid rgba(176, 141, 87, 0.32);
  box-shadow: 0 14px 32px rgba(0, 0, 0, 0.32);
}

/* Remove the temporary positioning */
.method-covers img:nth-child(5),
.method-covers img:nth-child(6),
.method-covers img:nth-child(7) {
  transform: none;
}

.method-hero-content {
  display: grid;
  grid-template-columns: minmax(420px, 0.8fr) minmax(650px, 1.35fr);
  column-gap: 6rem;
  align-items: center;
}

/* Keep all hero copy on the left */
.method-hero-content > .section-label,
.method-hero-content > h1,
.method-hero-content > .method-hero-lead,
.method-hero-content > .method-hero-copy,
.method-hero-content > .button {
  grid-column: 1;
}

/* Put the seven covers on the right */
.method-hero-content > .method-covers {
  grid-column: 2;
  grid-row: 1 / 6;
  align-self: center;
}

.method-hero-content h1 {
  max-width: 580px;
  font-size: clamp(4.5rem, 5.4vw, 6.5rem);
  line-height: 0.9;
}


/* ==========================================================
   STILL WE RISE — PRIMARY CHOIR COLLECTION
   ========================================================== */

.swr-page {
  --swr-cream: #f2e3c2;
  --swr-paper: #f8edda;
  --swr-navy: #102b4c;
  --swr-ink: #30271e;
  --swr-bronze: #a67c35;
  --swr-line: rgba(166, 124, 53, 0.38);
  background: var(--swr-paper);
  color: var(--swr-ink);
}

.swr-page * { box-sizing: border-box; }

.swr-header {
  min-height: 78px;
  padding: 0 6%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  background: #090909;
  border-bottom: 1px solid rgba(176, 141, 87, .28);
}

.swr-brand {
  color: var(--gold);
  text-decoration: none;
  font-size: 1.3rem;
  letter-spacing: .2em;
}

.swr-header nav a { color: var(--ivory); }
.swr-header nav a:hover { color: var(--gold); }

.swr-kicker {
  margin: 0 0 1rem;
  color: var(--swr-bronze);
  font-family: Arial, sans-serif;
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .22em;
  text-transform: uppercase;
}

.swr-hero {
  min-height: calc(100vh - 78px);
  padding: 6.5% 7.5%;
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(420px, 1.1fr);
  align-items: center;
  gap: 7vw;
  background:
    radial-gradient(circle at 78% 28%, rgba(255,255,255,.5), transparent 25%),
    linear-gradient(135deg, #f8edd9 0%, #ead5aa 100%);
  overflow: hidden;
}

.swr-hero-copy { max-width: 720px; }

.swr-hero h1 {
  margin: 0;
  max-width: 690px;
  color: var(--swr-navy);
  font-size: clamp(4.6rem, 9vw, 9.5rem);
  line-height: .78;
  letter-spacing: -.045em;
}

.swr-subtitle {
  margin-top: 1.8rem;
  color: var(--swr-navy);
  font-family: Arial, sans-serif;
  font-weight: 700;
  font-size: .77rem;
  letter-spacing: .3em;
}

.swr-tagline {
  margin: 1rem 0 0;
  color: var(--swr-navy);
  font-size: clamp(1.3rem, 2.1vw, 2rem);
  font-style: italic;
}

.swr-lead {
  max-width: 620px;
  margin-top: 2rem;
  font-size: 1.08rem;
  line-height: 1.8;
}

.swr-hero-art { position: relative; }
.swr-hero-art:before {
  content: "";
  position: absolute;
  inset: -10%;
  border: 1px solid rgba(166,124,53,.2);
  transform: rotate(2deg);
}
.swr-hero-art img {
  width: 100%;
  max-width: 720px;
  display: block;
  position: relative;
  box-shadow: 0 30px 70px rgba(48, 39, 30, .16);
}

.swr-button {
  display: inline-block;
  margin-top: 2.3rem;
  padding: 1rem 1.45rem;
  border: 1px solid var(--swr-navy);
  text-decoration: none;
  font-family: Arial, sans-serif;
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .15em;
  transition: .2s ease;
}
.swr-button-dark { color: var(--swr-paper); background: var(--swr-navy); }
.swr-button-dark:hover { color: var(--swr-navy); background: transparent; }
.swr-button-light { color: #090909; background: var(--swr-paper); border-color: var(--swr-paper); }
.swr-button-light:hover { background: transparent; color: var(--swr-paper); }

.swr-vision,
.swr-collection,
.swr-listen,
.swr-journey,
.swr-contact,
.swr-closing {
  padding: 8% 7.5%;
}

.swr-section-heading { max-width: 930px; margin-bottom: 4rem; }
.swr-section-heading-centred { margin-left: auto; margin-right: auto; text-align: center; }
.swr-section-heading-centred .swr-section-intro { margin-left: auto; margin-right: auto; }

.swr-section-heading h2,
.swr-contact h2,
.swr-closing h2 {
  margin: 0;
  color: var(--swr-navy);
  font-size: clamp(3rem, 5.8vw, 6.2rem);
  font-weight: normal;
  line-height: .96;
}
.swr-section-heading h2 em,
.swr-contact h2 em { font-weight: normal; color: var(--swr-bronze); }
.swr-section-intro { max-width: 720px; margin-top: 1.4rem; font-size: 1.08rem; }

.swr-vision {
  background: #fbf4e7;
  border-top: 1px solid var(--swr-line);
  border-bottom: 1px solid var(--swr-line);
}
.swr-vision-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, .9fr);
  gap: 8vw;
  align-items: start;
}
.swr-vision-copy { max-width: 650px; font-size: 1.18rem; }
.swr-vision-copy p + p { margin-top: 1.3rem; }
.swr-values { border-top: 1px solid var(--swr-line); }
.swr-values article {
  display: grid;
  grid-template-columns: 44px 1fr;
  gap: 1rem;
  padding: 1.2rem 0;
  border-bottom: 1px solid var(--swr-line);
}
.swr-values span { color: var(--swr-bronze); font-family: Arial, sans-serif; font-size: .7rem; letter-spacing: .12em; }
.swr-values h3 { margin: 0 0 .25rem; color: var(--swr-navy); font-family: Arial, sans-serif; font-size: .78rem; letter-spacing: .15em; }
.swr-values p { margin: 0; font-size: .98rem; }

.swr-collection { background: #ede0c3; }
.swr-cover-grid {
  max-width: 1500px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 2.6rem 1.4rem;
}
.swr-cover-card img {
  width: 100%;
  display: block;
  box-shadow: 0 14px 34px rgba(48,39,30,.13);
  transition: transform .25s ease, box-shadow .25s ease;
}
.swr-cover-card:hover img { transform: translateY(-5px); box-shadow: 0 20px 45px rgba(48,39,30,.2); }
.swr-cover-card span {
  display: block;
  margin-top: 1rem;
  color: var(--swr-bronze);
  font-family: Arial, sans-serif;
  font-size: .64rem;
  font-weight: 700;
  letter-spacing: .15em;
}
.swr-cover-card h3 { margin-top: .3rem; color: var(--swr-navy); font-size: 1.15rem; font-weight: normal; line-height: 1.15; }
.swr-feature-cover img { outline: 2px solid var(--swr-bronze); outline-offset: 5px; }

.swr-listen { background: #fbf4e7; }
.swr-song-feature {
  max-width: 1380px;
  margin: 0 auto 8rem;
  padding-top: 3rem;
  display: grid;
  grid-template-columns: minmax(320px, .75fr) minmax(0, 1.25fr);
  gap: 7vw;
  align-items: center;
  border-top: 1px solid var(--swr-line);
}
.swr-song-feature-reverse .swr-song-art { order: 2; }
.swr-song-feature-reverse .swr-song-content { order: 1; }
.swr-song-art img { width: 100%; display: block; box-shadow: 0 22px 55px rgba(48,39,30,.14); }
.swr-song-number { color: var(--swr-bronze); font-family: Arial, sans-serif; font-size: .68rem; font-weight: 700; letter-spacing: .18em; }
.swr-song-content h3 { margin: .6rem 0 1.1rem; color: var(--swr-navy); font-size: clamp(3.2rem, 5vw, 5.8rem); font-weight: normal; line-height: .9; }
.swr-song-description { max-width: 720px; font-size: 1.1rem; }
.swr-player-list { margin-top: 2rem; border-top: 1px solid var(--swr-line); }
.swr-player {
  padding: 1.1rem 0;
  display: grid;
  grid-template-columns: 170px 1fr;
  gap: 1.3rem;
  align-items: center;
  border-bottom: 1px solid var(--swr-line);
}
.swr-player div span { display: block; color: var(--swr-bronze); font-family: Arial, sans-serif; font-size: .62rem; font-weight: 700; letter-spacing: .15em; }
.swr-player div strong { display: block; margin-top: .15rem; color: var(--swr-navy); font-size: 1.02rem; font-weight: normal; }
.swr-player audio { width: 100%; min-width: 0; }
.swr-theme-line { margin-top: 1.8rem; display: flex; flex-wrap: wrap; gap: .6rem; }
.swr-theme-line span { padding: .45rem .65rem; border: 1px solid var(--swr-line); color: var(--swr-navy); font-family: Arial, sans-serif; font-size: .6rem; font-weight: 700; letter-spacing: .13em; }

.swr-journey {
  background: linear-gradient(180deg, #e8d5ad 0%, #f5ead4 100%);
  border-top: 1px solid var(--swr-line);
}
.swr-journey-grid {
  max-width: 1320px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-top: 1px solid var(--swr-line);
  border-bottom: 1px solid var(--swr-line);
}
.swr-journey-grid article { padding: 2rem; border-right: 1px solid var(--swr-line); }
.swr-journey-grid article:last-child { border-right: 0; }
.swr-journey-grid span { color: var(--swr-bronze); font-family: Arial, sans-serif; font-size: .68rem; letter-spacing: .15em; }
.swr-journey-grid h3 { margin: .9rem 0 .6rem; color: var(--swr-navy); font-family: Arial, sans-serif; font-size: .8rem; letter-spacing: .15em; }
.swr-journey-grid p { margin: 0; font-size: .98rem; }

.swr-contact { background: var(--swr-navy); color: var(--swr-paper); text-align: center; }
.swr-contact-inner { max-width: 930px; margin: 0 auto; }
.swr-contact .swr-kicker { color: #d4af68; }
.swr-contact h2 { color: var(--swr-paper); }
.swr-contact h2 em { color: #d4af68; }
.swr-contact p { max-width: 760px; margin: 1.7rem auto 0; font-size: 1.13rem; color: #f6ead3; }

.swr-closing { text-align: center; background: #f4e6c9; }
.swr-closing > p { color: var(--swr-bronze); font-family: Arial, sans-serif; font-size: .72rem; font-weight: 700; letter-spacing: .25em; }
.swr-closing h2 { max-width: 900px; margin: 1rem auto 2rem; font-size: clamp(3rem, 6vw, 6.6rem); }
.swr-closing span { color: #6b5b47; font-family: Arial, sans-serif; font-size: .62rem; letter-spacing: .16em; }

.swr-footer {
  padding: 2.4rem 6%;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 2rem;
  background: #090909;
  color: var(--ivory);
}
.swr-footer > a { color: var(--gold); text-decoration: none; font-size: 1.2rem; letter-spacing: .2em; }
.swr-footer p { margin: 0; color: #9f9a90; font-family: Arial, sans-serif; font-size: .62rem; letter-spacing: .14em; text-align: center; }
.swr-footer div { display: flex; justify-content: flex-end; gap: 1.5rem; }
.swr-footer div a { color: var(--gold); text-decoration: none; font-family: Arial, sans-serif; font-size: .64rem; letter-spacing: .13em; }

@media (max-width: 1100px) {
  .swr-hero { grid-template-columns: 1fr 1fr; gap: 4vw; }
  .swr-cover-grid { grid-template-columns: repeat(3, 1fr); }
  .swr-journey-grid { grid-template-columns: repeat(2, 1fr); }
  .swr-journey-grid article:nth-child(2) { border-right: 0; }
  .swr-journey-grid article:nth-child(-n+2) { border-bottom: 1px solid var(--swr-line); }
}

@media (max-width: 760px) {
  .swr-header { padding: 1rem 5%; align-items: flex-start; }
  .swr-header nav { gap: .8rem 1rem; flex-wrap: wrap; justify-content: flex-end; }
  .swr-header nav a { font-size: .62rem; }
  .swr-hero { min-height: auto; padding: 14% 7%; grid-template-columns: 1fr; }
  .swr-hero-art { margin-top: 2rem; }
  .swr-hero h1 { font-size: clamp(4.4rem, 23vw, 7rem); }
  .swr-vision, .swr-collection, .swr-listen, .swr-journey, .swr-contact, .swr-closing { padding: 16% 7%; }
  .swr-vision-grid, .swr-song-feature { grid-template-columns: 1fr; }
  .swr-cover-grid { grid-template-columns: repeat(2, 1fr); gap: 2rem 1rem; }
  .swr-song-feature { gap: 2rem; margin-bottom: 5rem; }
  .swr-song-feature-reverse .swr-song-art, .swr-song-feature-reverse .swr-song-content { order: initial; }
  .swr-player { grid-template-columns: 1fr; gap: .7rem; }
  .swr-journey-grid { grid-template-columns: 1fr; }
  .swr-journey-grid article { border-right: 0; border-bottom: 1px solid var(--swr-line); }
  .swr-journey-grid article:last-child { border-bottom: 0; }
  .swr-footer { grid-template-columns: 1fr; text-align: left; }
  .swr-footer p { text-align: left; }
  .swr-footer div { justify-content: flex-start; }
}

@media (max-width: 460px) {
  .swr-cover-grid { grid-template-columns: 1fr; }
}

/* =========================================================
   HOMEPAGE HERO — CLARITY POLISH
   Keeps the primary CTA legible after the global button fallback.
   ========================================================= */
.hero .hero-description {
  color: #d4d0c7;
  font-size: clamp(1.08rem, 1.32vw, 1.32rem);
  line-height: 1.52;
}

.hero .hero-categories {
  margin-top: 1.55rem;
  margin-bottom: 0.15rem;
}

.hero .hero-actions {
  margin-top: 2rem;
}

.hero .hero-actions .button.primary,
.hero .hero-actions .button.primary:visited {
  background: var(--gold);
  border-color: var(--gold);
  color: var(--black);
}

.hero .hero-actions .button.primary:hover {
  background: var(--ivory);
  border-color: var(--ivory);
  color: var(--black);
}

.hero .hero-actions .button.secondary,
.hero .hero-actions .button.secondary:visited {
  background: transparent;
  border-color: var(--gold);
  color: var(--gold);
}

.hero .hero-actions .button.secondary:hover {
  background: var(--gold);
  color: var(--black);
}


/* BPS PRIMARY CTA — locked contrast */
.button.primary,
.button.primary:visited {
  background: var(--gold);
  border-color: var(--gold);
  color: var(--black);
}

.button.primary:hover {
  background: transparent;
  color: var(--gold);
}

.idea-section .button.primary span {
  margin-left: .65rem;
  font-size: 1rem;
  line-height: 1;
}

/* MICHAEL SYSUM — BP002 */
.michael-page{background:#090909;color:#f4f0e6}.michael-header{height:76px;padding:0 6%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(176,141,87,.28);position:relative;z-index:10}.michael-brand{color:#b08d57;text-decoration:none;letter-spacing:.22em;font-size:1.25rem}.michael-hero{min-height:calc(100vh - 76px);position:relative;display:flex;align-items:center;overflow:hidden}.michael-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top}.michael-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,9,9,.96) 0%,rgba(9,9,9,.72) 38%,rgba(9,9,9,.12) 72%)}.michael-hero-copy{position:relative;z-index:2;padding:8%;max-width:780px}.michael-hero h1{font-size:clamp(4.5rem,9vw,9rem);line-height:.82;letter-spacing:-.035em}.michael-role{margin-top:2rem;color:#b08d57;font-family:Arial,sans-serif;text-transform:uppercase;letter-spacing:.16em;font-size:.78rem}.michael-lead{margin-top:1.2rem;max-width:520px;font-size:1.25rem;color:#d8d3c8}.michael-intro,.michael-collab{padding:8%;display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center;border-top:1px solid rgba(176,141,87,.18)}.michael-intro h2,.michael-section-head h2,.michael-collab h2,.michael-protea h2,.michael-exit h2{font-size:clamp(2.8rem,5.5vw,5.5rem);font-weight:normal;line-height:1}.michael-intro-copy>p:not(.section-label),.michael-collab-copy>p:not(.section-label),.michael-protea>p:not(.section-label),.michael-exit>p:not(.section-label){margin-top:1.35rem;max-width:650px;color:#c9c4bb;font-size:1.08rem}.michael-intro-image img,.michael-collab-art img{width:100%;display:block}.michael-intro-image{border:1px solid rgba(176,141,87,.25)}.michael-work{padding:8%;border-top:1px solid rgba(176,141,87,.18)}.michael-section-head>p:last-child{color:#aaa;margin-top:1rem}.michael-release-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem 2rem;margin-top:4rem}.michael-release a{display:block;position:relative;text-decoration:none;color:#f4f0e6;overflow:hidden;background:#111}.michael-release img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;transition:transform .35s ease,opacity .35s ease}.michael-release a span{position:absolute;left:0;right:0;bottom:0;padding:1rem 1.1rem;background:rgba(9,9,9,.88);color:#b08d57;font:700 .7rem Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase;transform:translateY(100%);transition:transform .25s ease}.michael-release a:hover img{transform:scale(1.025);opacity:.78}.michael-release a:hover span{transform:translateY(0)}.michael-release h3{font-size:1.2rem;font-weight:normal;margin-top:1rem}.michael-statement{min-height:72vh;position:relative;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden;border-top:1px solid rgba(176,141,87,.18)}.michael-statement img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.52}.michael-statement:after{content:"";position:absolute;inset:0;background:rgba(9,9,9,.25)}.michael-statement div{position:relative;z-index:2}.michael-statement p{font-size:clamp(2.5rem,6vw,6rem);line-height:1;font-weight:bold;letter-spacing:-.02em}.michael-statement p:last-child{color:#b08d57}.michael-collab-art{max-width:720px}.michael-nowhere{border-top:1px solid rgba(176,141,87,.5);margin-top:2.4rem;padding-top:1.5rem}.michael-nowhere>span:first-child,.coming-soon{font:700 .68rem Arial,sans-serif;color:#b08d57;letter-spacing:.16em;text-transform:uppercase}.michael-nowhere h3{font-size:2rem;font-weight:normal;margin:.35rem 0}.michael-nowhere p{color:#aaa;margin-bottom:1rem}.michael-protea{padding:10% 8%;text-align:center;border-top:1px solid rgba(176,141,87,.18)}.michael-bp{font:700 clamp(5rem,15vw,13rem) Arial,sans-serif;letter-spacing:-.06em;color:#b08d57;line-height:.85;margin:2rem 0}.michael-protea h2 em{color:#b08d57;font-style:normal}.michael-protea>p:not(.section-label){margin:2rem auto 0}.michael-id{max-width:680px;margin:3rem auto 0;border:1px solid rgba(176,141,87,.55);padding:1.5rem;display:flex;justify-content:space-between;gap:1rem;color:#b08d57;font:700 .67rem Arial,sans-serif;letter-spacing:.14em}.michael-exit{padding:10% 8%;border-top:1px solid rgba(176,141,87,.18)}.michael-actions{display:flex;gap:1rem;margin-top:2.5rem}.michael-footer{padding:2rem 6%;border-top:1px solid rgba(176,141,87,.25);display:flex;justify-content:space-between;color:#777;font: .68rem Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase}.michael-footer span:first-child{color:#b08d57}
@media(max-width:800px){.michael-header{height:auto;min-height:72px;align-items:flex-start;padding-top:1.4rem;padding-bottom:1.2rem}.michael-header nav{gap:.7rem;flex-wrap:wrap;justify-content:flex-end}.michael-header nav a{font-size:.58rem}.michael-hero{min-height:78vh}.michael-hero-image{object-position:62% top}.michael-hero-overlay{background:linear-gradient(90deg,rgba(9,9,9,.94),rgba(9,9,9,.45))}.michael-hero-copy{padding:10% 7%;align-self:flex-end;margin-bottom:7vh}.michael-intro,.michael-collab{grid-template-columns:1fr;padding:14% 7%;gap:3rem}.michael-intro-image{order:-1}.michael-work{padding:14% 7%}.michael-release-grid{grid-template-columns:repeat(2,1fr);gap:2rem 1rem}.michael-release a span{position:static;display:block;transform:none;background:transparent;padding:.7rem 0}.michael-release h3{font-size:1rem}.michael-statement{min-height:55vh}.michael-protea,.michael-exit{padding:16% 7%}.michael-id{flex-direction:column}.michael-actions{flex-direction:column;align-items:flex-start}.michael-footer{flex-direction:column;gap:.7rem}.michael-collab-art{order:-1}}
\n\n/* Inside the Method — podcast companion */\n.inside-method {\n  padding-top: 5rem;\n  padding-bottom: 5rem;\n}\n\n.inside-method-panel {\n  position: relative;\n  overflow: hidden;\n  padding: clamp(2rem, 5vw, 4.5rem);\n  border: 1px solid rgba(176, 141, 87, 0.55);\n  background:\n    radial-gradient(circle at 82% 22%, rgba(176, 141, 87, 0.13), transparent 32%),\n    linear-gradient(135deg, #0b0b0b 0%, #11100e 62%, #090909 100%);\n}\n\n.inside-method-panel::after {\n  content: \"⟁\";\n  position: absolute;\n  right: clamp(1rem, 4vw, 3rem);\n  bottom: -0.35em;\n  font-size: clamp(7rem, 20vw, 17rem);\n  line-height: 1;\n  color: rgba(176, 141, 87, 0.055);\n  pointer-events: none;\n}\n\n.inside-method-kicker {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  justify-content: space-between;\n  gap: 1rem;\n  padding-bottom: 1.25rem;\n  margin-bottom: clamp(2rem, 5vw, 4rem);\n  border-bottom: 1px solid rgba(176, 141, 87, 0.35);\n  color: #b08d57;\n  font-size: 0.72rem;\n  letter-spacing: 0.16em;\n  text-transform: uppercase;\n}\n\n.inside-method-grid {\n  position: relative;\n  z-index: 1;\n  display: grid;\n  grid-template-columns: minmax(220px, 0.62fr) minmax(0, 1fr) minmax(280px, 0.9fr);\n  gap: clamp(2rem, 6vw, 6rem);\n  align-items: end;\n}\n\n
.inside-method-art {
  margin: 0;
  width: 100%;
  max-width: 320px;
  align-self: center;
  border: 1px solid rgba(176, 141, 87, 0.32);
  background: #0b0b0b;
}

.inside-method-art img {
  display: block;
  width: 100%;
  height: auto;
}

.inside-method-title h2 {\n  margin: 0;\n  max-width: 760px;\n  font-size: clamp(2.25rem, 5.2vw, 5rem);\n  line-height: 0.98;\n}\n\n.inside-method-copy {\n  max-width: 560px;\n}\n\n.inside-method-copy p {\n  color: #d8d2c6;\n}\n\n.inside-method-copy .inside-method-lead {\n  color: #f4f0e6;\n  font-size: clamp(1.15rem, 2vw, 1.45rem);\n  line-height: 1.45;\n}\n\n.inside-method-copy .button {\n  margin-top: 1rem;\n}\n\n@media (max-width: 760px) {\n  .inside-method-grid {\n    grid-template-columns: 1fr;\n    align-items: start;\n  }\n\n  .inside-method-kicker {\n    flex-direction: column;\n  }\n\n  .inside-method-title h2 {\n    font-size: clamp(2.15rem, 11vw, 3.5rem);\n  }\n}\n
/* RBM SUVERKROP — BP001 */
.rbm-page{background:#090909;color:#f4f0e6}.rbm-header{height:76px;padding:0 6vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #26231f;background:#090909}.rbm-brand{font-family:Georgia,serif;font-size:1.35rem;letter-spacing:.16em;color:#b08d57;text-decoration:none}.rbm-header nav{display:flex;gap:28px}.rbm-header nav a{color:#f4f0e6;text-decoration:none;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase}.rbm-header nav a:hover{color:#b08d57}.rbm-hero{min-height:calc(100vh - 76px);display:grid;grid-template-columns:.98fr 1.02fr;align-items:center;max-width:1560px;margin:auto;padding:50px 5.5vw 0;gap:36px}.rbm-hero h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(4.2rem,8vw,8rem);line-height:.86;letter-spacing:-.04em;margin:18px 0 28px}.rbm-role{text-transform:uppercase;letter-spacing:.22em;font-size:.85rem;color:#d9d2c5}.rbm-lead{font-family:Georgia,serif;font-size:clamp(1.35rem,2vw,2rem);line-height:1.4;max-width:660px;margin:35px 0}.rbm-actions{display:flex;gap:14px;flex-wrap:wrap}.rbm-portrait{height:calc(100vh - 104px);display:flex;align-items:flex-end;justify-content:center}.rbm-portrait img{display:block;max-height:100%;max-width:112%;width:112%;object-fit:contain}.rbm-rooms,.rbm-method,.rbm-about{padding:110px 7vw;max-width:1500px;margin:auto}.rbm-rooms{background:#f4f0e6;color:#090909;max-width:none}.rbm-rooms>*{max-width:1290px;margin-left:auto;margin-right:auto}.rbm-section-head h2,.rbm-method h2,.rbm-about h2,.rbm-watch h2,.rbm-founder h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(2.8rem,5vw,5rem);line-height:1.02;margin:12px 0 55px}.rbm-room-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.rbm-room-grid article{border-top:1px solid #b08d57;padding-top:22px}.rbm-room-grid span{color:#b08d57;font-size:.75rem;letter-spacing:.18em}.rbm-room-grid h3{font-family:Georgia,serif;font-weight:400;font-size:2rem;margin:16px 0 12px}.rbm-room-grid p{color:#45413b;line-height:1.7}.rbm-quote{padding:150px 7vw;text-align:center}.rbm-quote blockquote{font-family:Georgia,serif;font-size:clamp(2.7rem,6vw,6rem);font-weight:400;line-height:1.05;margin:0}.rbm-quote p{color:#b08d57;letter-spacing:.22em;font-size:.75rem;margin-top:35px}.rbm-method,.rbm-about{display:grid;grid-template-columns:1fr 1fr;gap:90px}.rbm-method{max-width:none;background:#f4f0e6;color:#090909;padding-left:max(7vw,calc((100vw - 1290px)/2));padding-right:max(7vw,calc((100vw - 1290px)/2))}.rbm-method-copy,.rbm-about-copy{font-size:1.12rem;line-height:1.8;padding-top:40px}.rbm-method-line{font-size:.78rem;letter-spacing:.12em;line-height:2.1;color:#625c52;margin:35px 0}.rbm-text-link{display:inline-block;color:#b08d57;text-decoration:none;border-bottom:1px solid #b08d57;padding-bottom:4px;text-transform:uppercase;letter-spacing:.1em;font-size:.78rem}.rbm-watch{background:#f4f0e6;color:#090909;padding:120px max(7vw,calc((100vw - 1290px)/2))}.rbm-watch>p:not(.section-label){font-size:1.15rem;margin-bottom:30px}.rbm-founder{text-align:center;padding:140px 7vw;max-width:1000px;margin:auto}.rbm-bp{font-family:Georgia,serif;font-size:clamp(5rem,12vw,10rem);line-height:1;color:#b08d57;margin:20px 0}.rbm-founder p:not(.section-label){font-size:1.1rem;margin:0 auto 35px;max-width:650px}.rbm-footer{border-top:1px solid #292621;padding:45px 7vw;display:flex;justify-content:space-between;color:#8f897f;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}.rbm-footer span:first-child{color:#f4f0e6}.rbm-page .section-label{color:#b08d57;text-transform:uppercase;letter-spacing:.2em;font-size:.72rem}.rbm-page .button{display:inline-block;padding:14px 21px;text-decoration:none;text-transform:uppercase;letter-spacing:.1em;font-size:.72rem;border:1px solid #b08d57}.rbm-page .button.primary{background:#b08d57;color:#090909}.rbm-page .button.secondary{background:transparent;color:#b08d57}.rbm-page .button:hover{filter:brightness(1.08)}
@media(max-width:800px){.rbm-header{padding:0 5vw}.rbm-header nav{gap:13px}.rbm-header nav a:nth-child(1),.rbm-header nav a:nth-child(3){display:none}.rbm-hero{grid-template-columns:1fr;padding:40px 7vw 0;gap:10px}.rbm-hero-copy{order:2;padding:35px 0 70px}.rbm-portrait{order:1;height:52vh}.rbm-hero h1{font-size:clamp(3.6rem,18vw,5.8rem)}.rbm-room-grid,.rbm-method,.rbm-about{grid-template-columns:1fr}.rbm-room-grid{gap:35px}.rbm-method,.rbm-about{gap:10px;padding:80px 7vw}.rbm-method-copy,.rbm-about-copy{padding-top:0}.rbm-rooms,.rbm-watch{padding:80px 7vw}.rbm-quote{padding:100px 7vw}.rbm-footer{flex-direction:column;gap:10px;text-align:center}}

/* =========================================================
   MOBILE RESPONSIVE SAFETY — RBM & MUSIC STUDIO
   Keeps long display type and portrait media inside the viewport.
   ========================================================= */
@media (max-width: 800px) {
  html,
  body {
    max-width: 100%;
    overflow-x: clip;
  }

  .rbm-hero {
    min-width: 0;
    padding-top: 1.5rem;
  }

  .rbm-portrait {
    width: 100%;
    height: auto;
    align-items: flex-start;
  }

  .rbm-portrait img {
    width: 100%;
    height: auto;
    max-height: none;
    object-fit: contain;
    object-position: center top;
  }

  .rbm-hero-copy {
    min-width: 0;
  }

  .rbm-hero h1 {
    max-width: 100%;
    font-size: clamp(2.7rem, 13vw, 4rem);
    line-height: .9;
    overflow-wrap: normal;
  }

  .open-song-challenge {
    min-width: 0;
    padding: 4rem 1.5rem;
  }

  .open-song-challenge h3 {
    max-width: 100%;
    font-size: clamp(2.5rem, 10.5vw, 4rem);
    line-height: 1;
  }

  .open-song-challenge h3 span {
    display: block;
    max-width: 100%;
  }

  .open-song-button {
    max-width: 100%;
  }
}


/* =========================================================
   v2.0 MOBILE AUDIT FIX — RBM SUVERKROP METHOD SERIES
   Keeps the late desktop cover-wall refinement from forcing
   a 2-column 420px/650px layout on phones and small tablets.
   ========================================================= */
@media (max-width: 900px) {
  .method-hero {
    display: block;
    min-height: auto;
    padding: 12% 7%;
  }

  .method-hero-content {
    display: block;
    width: 100%;
    max-width: none;
  }

  .method-hero-content > .section-label,
  .method-hero-content > h1,
  .method-hero-content > .method-hero-lead,
  .method-hero-content > .method-hero-copy,
  .method-hero-content > .button,
  .method-hero-content > .method-covers {
    grid-column: auto;
    grid-row: auto;
  }

  .method-hero-content h1 {
    max-width: 100%;
    font-size: clamp(3.1rem, 13.5vw, 4.5rem);
    line-height: .94;
  }

  .method-hero-lead { font-size: 1.2rem; }
  .method-hero-copy { font-size: 1rem; }

  .method-covers {
    width: 100%;
    max-width: 560px;
    margin: 3rem auto 0;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    justify-self: auto;
  }

  .method-covers img:nth-child(n) {
    grid-column: auto;
    transform: none;
    min-width: 0;
  }

  .method-covers img:nth-child(7) {
    grid-column: 1 / -1;
    width: calc(50% - 6px);
    justify-self: center;
  }

  .method-book-with-cover {
    grid-template-columns: 1fr;
    gap: 1.25rem;
    padding: 2.4rem 0;
  }

  .method-book-cover { max-width: 190px; }
  .method-book-number { font-size: 2.1rem; }
  .method-book h3 { font-size: clamp(2.15rem, 10vw, 3.2rem); }
  .method-subtitle { font-size: 1.05rem; }
  .method-actions .button { width: 100%; text-align: center; }

  .inside-method-panel { padding: 2rem 1.35rem; }
  .inside-method-art { max-width: 260px; }
}

@media (max-width: 480px) {
  .method-hero { padding: 14% 6%; }
  .method-hero-content h1 { font-size: clamp(2.8rem, 13vw, 3.7rem); }
  .method-covers { gap: 9px; margin-top: 2.4rem; }
  .method-covers img:nth-child(7) { width: calc(50% - 4.5px); }
  .method-book-cover { max-width: 170px; }
  .method-concepts span { font-size: .68rem; padding: .55rem .7rem; letter-spacing: .06em; }
}

/* v2.0 mobile audit: decorative home hero seal must not widen the page */
@media (max-width: 900px) {
  .hero { overflow: hidden; }
}

/* v2.0 narrow-phone audit fixes */
@media (max-width: 750px) {
  .music-header nav { display: none; }
}

@media (max-width: 900px) {
  .still-here-hero-copy { min-width: 0; max-width: 100%; }
  .still-here-hero-copy .section-label,
  .still-here-hero-text { overflow-wrap: anywhere; }
}

/* v2.0 ultra-narrow page-boundary protection */
@media (max-width: 480px) {
  body.still-enough-page,
  body.delusion-page {
    overflow-x: hidden;
  }

  .delusion-movement-grid {
    max-width: 100%;
    overscroll-behavior-x: contain;
  }
}

/* v2.0 final narrow-phone content fixes */
.codex-page .codex-map-image img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
}

@media (max-width: 900px) {
  .delusion-hero-copy,
  .delusion-hero-figure {
    min-width: 0;
    max-width: 100%;
  }

  .delusion-hero h1 {
    max-width: 100%;
    font-size: clamp(3rem, 16vw, 4.5rem);
    overflow-wrap: anywhere;
  }
}


/* BPS LEGAL FOOTER LINKS v2.1 */
.bps-legal-links {
  display: flex;
  align-items: center;
  gap: 1rem;
  flex-wrap: wrap;
  font-family: Arial, sans-serif;
  font-size: 0.68rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.bps-legal-links a { color: inherit !important; text-decoration: none; opacity: .9; }
.bps-legal-links a:hover { color: var(--gold) !important; opacity: 1; }
@media (max-width: 700px) { .bps-legal-links { gap: .75rem; } }


/* =========================================================
   v2.4 — BP001 FOCUS SESSION
   ========================================================= */
.protea-links{display:flex;gap:1.25rem;flex-wrap:wrap;align-items:center}

.rbm-focus{
  max-width:none;
  padding:110px max(7vw,calc((100vw - 1290px)/2));
  background:#090909;
  color:#f4f0e6;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:90px;
  border-top:1px solid #292621;
  border-bottom:1px solid #292621
}
.rbm-focus h2{
  font-family:Georgia,serif;
  font-weight:400;
  font-size:clamp(2.8rem,5vw,5rem);
  line-height:1.02;
  margin:12px 0 26px
}
.rbm-focus-lead{
  font-family:Georgia,serif;
  font-size:1.35rem;
  line-height:1.55;
  max-width:620px;
  color:#ded8ce
}
.rbm-focus-meta{display:flex;gap:.65rem;flex-wrap:wrap;margin:28px 0}
.rbm-focus-meta span{
  border:1px solid rgba(176,141,87,.6);
  color:#b08d57;
  padding:.6rem .75rem;
  font-size:.68rem;
  letter-spacing:.1em
}
.rbm-focus-detail{padding-top:42px;font-size:1.05rem;line-height:1.75;color:#d7d1c7}
.rbm-focus-detail ul{list-style:none;padding:0;margin:26px 0}
.rbm-focus-detail li{
  position:relative;
  padding:11px 0 11px 24px;
  border-top:1px solid rgba(255,255,255,.12)
}
.rbm-focus-detail li:before{
  content:"✓";
  color:#b08d57;
  position:absolute;
  left:0;
  font-weight:700
}
.rbm-focus-note{
  border-left:2px solid #b08d57;
  padding-left:16px;
  color:#bdb6ac
}

@media(max-width:800px){
  .rbm-focus{grid-template-columns:1fr;gap:18px;padding:80px 7vw}
  .rbm-focus-detail{padding-top:0}
  .rbm-header nav a:nth-child(1),
  .rbm-header nav a:nth-child(4),
  .rbm-header nav a:nth-child(5){display:none}
  .rbm-header nav a:nth-child(2),
  .rbm-header nav a:nth-child(3){display:inline}
}


/* =========================================================
   v2.4.1 — FOCUS SESSION VISIBILITY
   ========================================================= */
.protea-links{
  display:flex;
  gap:1.25rem;
  flex-wrap:wrap;
  align-items:center;
}

.focus-feature{
  padding:78px 8%;
  border-top:1px solid rgba(176,141,87,.35);
  border-bottom:1px solid rgba(176,141,87,.35);
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);
  gap:70px;
  align-items:center;
  background:#0d0d0d;
}

.focus-feature-copy h2{
  font-family:Georgia,serif;
  font-weight:400;
  font-size:clamp(2.6rem,5vw,5rem);
  line-height:1.02;
  max-width:820px;
  margin:12px 0 24px;
}

.focus-feature-copy > p:not(.section-label){
  max-width:760px;
  font-size:1.15rem;
  color:#d4d0c7;
  line-height:1.7;
}

.focus-feature-meta{
  display:flex;
  gap:.7rem;
  flex-wrap:wrap;
  margin-top:28px;
}

.focus-feature-meta span{
  border:1px solid rgba(176,141,87,.6);
  color:#b08d57;
  padding:.62rem .8rem;
  font-family:Arial,sans-serif;
  font-size:.68rem;
  letter-spacing:.1em;
}

.focus-feature-action{
  border-left:1px solid rgba(176,141,87,.55);
  padding-left:38px;
}

.focus-feature-action p{
  color:#d4d0c7;
  line-height:1.7;
  margin:0 0 28px;
}

.focus-feature-action strong{
  color:#f4f0e6;
  font-family:Georgia,serif;
  font-size:1.35rem;
  font-weight:400;
}

@media(max-width:900px){
  .focus-feature{
    grid-template-columns:1fr;
    gap:34px;
    padding:70px 7%;
  }
  .focus-feature-action{
    border-left:0;
    border-top:1px solid rgba(176,141,87,.45);
    padding:28px 0 0;
  }
}

/* Keep the larger BP001 portrait controlled on mobile. */
@media(max-width:800px){
  .rbm-portrait img{
    width:auto;
    max-width:100%;
  }
}
