/* Supporting pages: ordinary document flow, generous editorial rhythm.
   Everything lives below .support-page; the main world and navigation stay free. */
.support-page {
  --reading-muted: #776477;
  --reading-wash: #f1eaf5;
  position: relative;
  width: 100%;
  color: var(--ink, #312138);
  background:
    radial-gradient(ellipse at 92% 8%, #e9e1f58a 0%, transparent 36%),
    radial-gradient(ellipse at 2% 57%, #faeadd77 0%, transparent 35%),
    transparent;
}
.support-page .page-intro {
  padding: clamp(150px, 15vw, 220px) var(--gutter, 6vw) clamp(68px, 9vw, 135px);
}
.support-page .kicker {
  margin: 0 0 25px;
  color: var(--iris, #5046e5);
  font-size: clamp(14px, 1.15vw, 17px);
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: .015em;
}
.support-page .page-intro h1 {
  max-width: 17ch;
  margin: 0 0 clamp(35px, 5vw, 70px);
  font-size: clamp(64px, 8.7vw, 142px);
  font-weight: 400;
  line-height: 1.015;
  letter-spacing: -.055em;
  text-wrap: balance;
  overflow-wrap: break-word;
}
.support-page h1 em,
.support-page h2 em {
  color: var(--iris, #5046e5);
  font-weight: inherit;
}
.support-page .lead {
  font-size: clamp(22px, 2vw, 31px);
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: -.018em;
}
.support-page .page-intro .lead {
  max-width: 36ch;
  margin: 0 0 0 40%;
}
.support-page .page-intro > .pill-link {
  margin: 30px 0 0 40%;
}
.support-page .reading-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(42px, 9vw, 145px);
  align-items: start;
  padding: clamp(55px, 6.5vw, 105px) var(--gutter, 6vw);
}
.support-page .reading-block,
.support-page .section-heading > div,
.support-page .research-item,
.support-page .book-detail > div {
  min-width: 0;
}
.support-page .reading-block h2 {
  max-width: 17ch;
  margin: 0 0 30px;
  font-size: clamp(40px, 4.4vw, 72px);
  font-weight: 400;
  line-height: 1.08;
  letter-spacing: -.04em;
  text-wrap: balance;
  overflow-wrap: break-word;
}
.support-page .reading-block > p {
  max-width: 39ch;
  margin: 0 0 25px;
  font-size: clamp(19px, 1.65vw, 24px);
  line-height: 1.55;
  letter-spacing: -.012em;
}
.support-page .reading-block > .kicker {
  font-size: clamp(14px, 1.15vw, 17px);
  letter-spacing: .015em;
  margin-bottom: 25px;
}
.support-page .reading-block .pill-link {
  max-width: 100%;
  margin: 12px 10px 0 0;
  white-space: normal;
  text-align: left;
}
.support-page .disclosure {
  max-width: 100%;
  margin: 0 0 8px;
  padding: 0;
}
.support-page .disclosure summary {
  gap: 20px;
  min-height: 72px;
  padding-top: 21px;
  padding-bottom: 21px;
  font-size: clamp(19px, 1.6vw, 24px);
  line-height: 1.25;
  letter-spacing: -.015em;
  overflow-wrap: break-word;
}
.support-page .disclosure summary span {
  flex: 0 0 auto;
  align-self: center;
}
.support-page .disclosure-body {
  padding-top: 6px;
  padding-bottom: 26px;
}
.support-page .disclosure-body p {
  max-width: 48ch;
  margin: 0 0 18px;
  font-size: clamp(18px, 1.4vw, 21px);
  line-height: 1.55;
}
.support-page .disclosure-body p:last-child {
  margin-bottom: 0;
}
.support-page .association-details {
  padding-top: 28px;
}
.support-page .founder-profile {
  background: radial-gradient(ellipse at 14% 45%, #ece3f488, transparent 68%);
}
.support-page .section-heading {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 48px;
  margin-bottom: clamp(40px, 5vw, 75px);
}
.support-page .section-heading h2 {
  margin: 0;
  font-size: clamp(44px, 5.8vw, 88px);
  font-weight: 400;
  line-height: 1.04;
  letter-spacing: -.045em;
  text-wrap: balance;
}
.support-page .section-heading > p {
  max-width: 33ch;
  margin: 0 0 5px;
  font-size: clamp(19px, 1.6vw, 23px);
  line-height: 1.5;
}
.support-page .section-heading .kicker {
  margin-bottom: 23px;
}
.support-page .reading-shelf-section {
  padding: clamp(75px, 8vw, 125px) 0 clamp(80px, 8vw, 125px);
  background:
    radial-gradient(ellipse at 15% 10%, #fff9f0bb, transparent 65%),
    linear-gradient(165deg, #f5eded, #eee6f4 65%, #f8eeea);
  border-radius: 48% 48% 0 0 / 4% 4% 0 0;
}
.support-page .reading-shelf-section .section-heading {
  padding: 0 var(--gutter, 6vw);
}
.support-page .shelf-controls {
  display: flex;
  flex: 0 0 auto;
  gap: 10px;
  padding-bottom: 6px;
}
.support-page .shelf-controls button,
.support-page .evidence-filters button {
  appearance: none;
  min-height: 46px;
  padding: 12px 22px;
  border: 1px solid #5046e52e;
  border-radius: 100px;
  background: #fff8f133;
  color: var(--ink, #312138);
  font: inherit;
  font-size: 16px;
  line-height: 1.25;
  cursor: pointer;
  transition: background-color .25s ease, color .25s ease, border-color .25s ease;
}
.support-page .shelf-controls button:hover,
.support-page .evidence-filters button:hover,
.support-page .evidence-filters button[aria-pressed="true"] {
  border-color: var(--iris, #5046e5);
  background: var(--iris, #5046e5);
  color: var(--cream, #fff6e8);
}
.support-page .book-shelf {
  display: flex;
  align-items: flex-start;
  gap: clamp(28px, 4.4vw, 74px);
  max-width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  padding: 28px var(--gutter, 6vw) 42px;
  scroll-padding-inline: var(--gutter, 6vw);
  scroll-snap-type: x proximity;
  scrollbar-width: thin;
  scrollbar-color: #5046e55e transparent;
  -webkit-overflow-scrolling: touch;
}
.support-page .book-item {
  flex: 0 0 clamp(165px, 15vw, 205px);
  min-width: 0;
  scroll-snap-align: start;
}
.support-page .book-item button {
  appearance: none;
  display: block;
  width: 100%;
  padding: 0 0 6px;
  border: 0;
  border-radius: 3px;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
}
.support-page .book-cover {
  display: flex;
  align-items: flex-end;
  height: clamp(250px, 22vw, 310px);
  margin-bottom: 26px;
  transform-origin: 50% 95%;
  transition: transform .4s ease;
}
.support-page .book-cover img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 100%;
  object-fit: contain;
  object-position: bottom left;
  box-shadow: 8px 16px 22px #31213820, 1px 3px 5px #31213819;
}
.support-page .book-item button:hover .book-cover {
  transform: translateY(-7px) rotate(-1.5deg);
}
.support-page .book-title {
  display: block;
  margin-bottom: 8px;
  font-size: clamp(22px, 1.8vw, 27px);
  line-height: 1.15;
  letter-spacing: -.025em;
}
.support-page .book-author {
  display: block;
  color: var(--reading-muted);
  font-size: 15px;
  line-height: 1.4;
}
.support-page .book-item button[aria-pressed="true"] .book-title {
  color: var(--iris, #5046e5);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 5px;
}
.support-page .book-detail {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr);
  align-items: center;
  gap: clamp(40px, 9vw, 145px);
  padding: clamp(42px, 6vw, 90px) var(--gutter, 6vw) 0;
}
.support-page .book-detail h3 {
  max-width: 22ch;
  margin: 0 0 12px;
  font-size: clamp(33px, 3.2vw, 49px);
  font-weight: 400;
  line-height: 1.13;
  letter-spacing: -.035em;
  text-wrap: balance;
}
.support-page .book-detail p {
  max-width: 42ch;
  margin: 0 0 20px;
  font-size: clamp(19px, 1.5vw, 22px);
  line-height: 1.5;
}
.support-page .book-detail .kicker {
  margin-bottom: 18px;
  font-size: 15px;
}
.support-page .book-detail .meta {
  margin-bottom: 24px;
  color: var(--reading-muted);
  font-size: 16px;
}
.support-page .book-detail-question p {
  max-width: 25ch;
  margin: 0 0 28px;
  color: var(--iris, #5046e5);
  font-size: clamp(28px, 3vw, 44px);
  font-style: italic;
  line-height: 1.19;
  letter-spacing: -.025em;
}
.support-page .research-section {
  padding: clamp(85px, 10vw, 155px) var(--gutter, 6vw);
}
.support-page .evidence-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0 0 clamp(48px, 6vw, 85px);
}
.support-page .evidence-filters button {
  padding: 11px 20px;
}
.support-page .research-list {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: start;
  column-gap: clamp(40px, 9vw, 145px);
  row-gap: clamp(60px, 7vw, 110px);
}
.support-page .research-item h3 {
  max-width: 24ch;
  margin: 16px 0;
  font-size: clamp(29px, 2.7vw, 40px);
  font-weight: 400;
  line-height: 1.15;
  letter-spacing: -.03em;
  text-wrap: balance;
  overflow-wrap: break-word;
}
.support-page .research-item .meta {
  margin: 0;
  color: var(--reading-muted);
  font-size: 15px;
  line-height: 1.5;
}
.support-page .research-item .disclosure {
  margin: 22px 0 20px;
}
.support-page .research-item .disclosure summary {
  min-height: 56px;
  padding-top: 17px;
  padding-bottom: 17px;
  font-size: 18px;
}
.support-page .research-item .pill-link {
  max-width: 100%;
  min-height: 46px;
  margin: 0 10px 12px 0;
  font-size: 16px;
  white-space: normal;
  text-align: left;
}
.support-page .source-caveat,
.support-page .empty-note {
  color: var(--reading-muted);
}
.support-page .empty-note {
  font-size: 21px;
  line-height: 1.5;
}
.support-page .prompt-example {
  margin: clamp(20px, 3vw, 45px) 0;
  padding: clamp(70px, 8vw, 125px) var(--gutter, 6vw);
  background: radial-gradient(ellipse at 65% 50%, #e8def1a3, transparent 75%), #f6eeed;
  border-radius: 45% 45% 45% 45% / 3% 3% 3% 3%;
}
.support-page .prompt-example blockquote {
  max-width: 37ch;
  margin: 0;
  color: var(--iris, #5046e5);
  font-size: clamp(28px, 3.9vw, 61px);
  line-height: 1.25;
  letter-spacing: -.032em;
  text-wrap: pretty;
}
.support-page .credits-list {
  padding: 0 var(--gutter, 6vw) clamp(90px, 10vw, 150px);
}
.support-page .credits-list h2 {
  max-width: 23ch;
  margin: 0 0 22px;
  font-size: clamp(30px, 2.8vw, 42px);
  font-weight: 400;
  line-height: 1.15;
  letter-spacing: -.025em;
  text-wrap: balance;
}
.support-page .credits-list p {
  max-width: 43ch;
  margin: 0 0 22px;
  font-size: 19px;
  line-height: 1.5;
}
.support-page .credits-list .meta {
  margin-bottom: 22px;
}
.support-page .text-link {
  color: var(--iris, #5046e5);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
  overflow-wrap: anywhere;
}
.support-page .work-sequence {
  padding-block: 24px;
  background: radial-gradient(ellipse at 5% 50%, #eee3f4a0, transparent 70%);
}
.support-page .work-step {
  padding-top: clamp(40px, 5vw, 80px);
  padding-bottom: clamp(45px, 5vw, 85px);
}
.support-page .work-step .reading-block > .lead {
  margin-top: 48px;
  font-size: clamp(22px, 2vw, 30px);
  line-height: 1.45;
}
.support-page :is(a, button, summary):focus-visible {
  outline: 2px solid var(--iris, #5046e5);
  outline-offset: 6px;
}

@media (min-width: 1600px) {
  .support-page .page-intro,
  .support-page .reading-grid,
  .support-page .research-section,
  .support-page .credits-list,
  .support-page .prompt-example,
  .support-page .book-detail,
  .support-page .reading-shelf-section .section-heading {
    padding-inline: max(var(--gutter, 6vw), calc((100vw - 1400px) / 2));
  }
}
@media (max-width: 1000px) {
  .support-page .reading-grid,
  .support-page .research-list,
  .support-page .book-detail {
    column-gap: 6vw;
  }
  .support-page .section-heading {
    gap: 35px;
  }
  .support-page .section-heading > p {
    max-width: 28ch;
  }
  .support-page .shelf-controls {
    gap: 8px;
  }
  .support-page .shelf-controls button {
    padding-inline: 17px;
  }
}
@media (max-width: 780px) {
  .support-page .page-intro {
    padding-top: 150px;
    padding-bottom: 65px;
  }
  .support-page .page-intro h1 {
    font-size: clamp(48px, 9.7vw, 76px);
    line-height: 1.04;
    letter-spacing: -.045em;
    margin-bottom: 38px;
  }
  .support-page .page-intro .lead {
    margin-left: 14%;
    max-width: 35ch;
    font-size: clamp(22px, 3.5vw, 27px);
  }
  .support-page .page-intro > .pill-link {
    margin-left: 14%;
  }
  .support-page .reading-grid,
  .support-page .research-list,
  .support-page .book-detail {
    grid-template-columns: minmax(0, 1fr);
    gap: 37px;
  }
  .support-page .reading-grid {
    padding-top: 48px;
    padding-bottom: 55px;
  }
  .support-page .reading-block h2 {
    max-width: 20ch;
    font-size: clamp(36px, 6.8vw, 53px);
    margin-bottom: 25px;
  }
  .support-page .reading-block > p {
    max-width: 47ch;
    font-size: 21px;
  }
  .support-page .association-details {
    padding-top: 0;
  }
  .support-page .section-heading {
    flex-wrap: wrap;
    gap: 28px;
    margin-bottom: 32px;
  }
  .support-page .section-heading h2 {
    font-size: clamp(42px, 7.5vw, 59px);
  }
  .support-page .section-heading > p {
    max-width: 43ch;
    font-size: 20px;
  }
  .support-page .shelf-controls {
    padding: 0;
  }
  .support-page .book-item {
    flex-basis: 170px;
  }
  .support-page .book-cover {
    height: 255px;
  }
  .support-page .book-detail {
    gap: 30px;
    padding-top: 45px;
  }
  .support-page .book-detail-copy > p {
    max-width: 48ch;
  }
  .support-page .book-detail-question p {
    max-width: 35ch;
    font-size: clamp(28px, 4.8vw, 36px);
  }
  .support-page .research-list {
    row-gap: 60px;
  }
  .support-page .research-item h3 {
    max-width: 31ch;
    font-size: 32px;
  }
  .support-page .prompt-example blockquote {
    max-width: 34ch;
    font-size: clamp(27px, 4.8vw, 38px);
  }
  .support-page .work-step {
    gap: 0;
  }
  .support-page .work-step .reading-block > .lead {
    margin-top: 0;
    font-size: 23px;
  }
}
@media (max-width: 480px) {
  .support-page .page-intro {
    padding-top: 132px;
    padding-bottom: 50px;
  }
  .support-page .page-intro h1 {
    font-size: clamp(42px, 11.8vw, 57px);
    margin-bottom: 32px;
    letter-spacing: -.045em;
  }
  .support-page .kicker {
    margin-bottom: 22px;
    font-size: 14px;
  }
  .support-page .page-intro .lead {
    margin-left: 0;
    font-size: 22px;
    line-height: 1.45;
  }
  .support-page .page-intro > .pill-link {
    margin-left: 0;
    max-width: 100%;
    white-space: normal;
  }
  .support-page .reading-grid {
    gap: 28px;
    padding-top: 40px;
    padding-bottom: 45px;
  }
  .support-page .reading-block h2 {
    font-size: clamp(34px, 9.5vw, 44px);
  }
  .support-page .reading-block > p,
  .support-page .book-detail p {
    font-size: 20px;
  }
  .support-page .disclosure summary {
    min-height: 68px;
    gap: 16px;
    font-size: 20px;
  }
  .support-page .disclosure-body p {
    font-size: 18px;
  }
  .support-page .section-heading h2 {
    font-size: clamp(40px, 10.5vw, 50px);
  }
  .support-page .section-heading > p {
    font-size: 20px;
  }
  .support-page .reading-shelf-section {
    padding-top: 63px;
    padding-bottom: 65px;
    border-top-left-radius: 48% 2%;
    border-top-right-radius: 48% 2%;
  }
  .support-page .book-shelf {
    gap: 30px;
    padding-top: 20px;
    padding-bottom: 32px;
  }
  .support-page .book-item {
    flex-basis: 158px;
  }
  .support-page .book-cover {
    height: 238px;
    margin-bottom: 24px;
  }
  .support-page .book-title {
    font-size: 22px;
  }
  .support-page .book-detail h3 {
    font-size: 34px;
  }
  .support-page .book-detail .kicker,
  .support-page .book-detail .meta {
    font-size: 15px;
  }
  .support-page .book-detail-question p {
    font-size: 29px;
  }
  .support-page .research-section {
    padding-top: 70px;
    padding-bottom: 80px;
  }
  .support-page .evidence-filters {
    gap: 8px;
    margin-bottom: 48px;
  }
  .support-page .evidence-filters button {
    padding-inline: 16px;
    font-size: 15px;
  }
  .support-page .research-item h3 {
    font-size: 30px;
  }
  .support-page .prompt-example {
    padding-top: 60px;
    padding-bottom: 65px;
  }
  .support-page .prompt-example blockquote {
    font-size: 29px;
  }
  .support-page .work-step {
    gap: 0;
  }
  .support-page .work-step .reading-block > .lead {
    font-size: 22px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .support-page .book-cover,
  .support-page .shelf-controls button,
  .support-page .evidence-filters button {
    transition: none;
  }
  .support-page .book-item button:hover .book-cover {
    transform: none;
  }
  .support-page .book-shelf {
    scroll-behavior: auto;
  }
}

/* v23: clear choices and compact disclosure rhythm without changing the page character. */
.support-page .reading-choices {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 28px;
  margin: 26px 0 0 40%;
}
.support-page .reading-choices .pill-link {
  margin: 0;
}
.support-page .pill-link {
  text-decoration: underline;
  text-decoration-color: #5046e54d;
  text-decoration-thickness: 1px;
  text-underline-offset: 6px;
  overflow-wrap: anywhere;
}
.support-page .pill-link:hover {
  text-decoration-color: currentColor;
}
.support-page :is(section[id], .disclosure, .book-detail) {
  scroll-margin-top: 110px;
}
.support-page .research-item .disclosure {
  margin-block: 18px 16px;
}
.support-page .disclosure[open] summary {
  color: var(--iris, #5046e5);
}
.support-page .evidence-filters button,
.support-page .shelf-controls button {
  touch-action: manipulation;
}
.support-page .section-heading h2 {
  overflow-wrap: normal;
}
.support-page .reading-shelf-section .section-heading h2 {
  max-width: 14ch;
}
@media (max-width: 780px) {
  .support-page .reading-choices { margin-left: 14%; }
  .support-page .disclosure summary { padding-block: 18px; }
  .support-page .section-heading > div { max-width: 100%; }
}
@media (max-width: 480px) {
  .support-page .reading-choices { margin-left: 0; gap: 8px 24px; }
  .support-page .reading-choices .pill-link { font-size: 17px; }
  .support-page .disclosure summary { min-height: 66px; padding-block: 16px; }
  .support-page .prompt-example blockquote { font-size: clamp(25px, 6.5vw, 29px); }
  .support-page .page-intro h1 { overflow-wrap: normal; }
  .support-page .page-intro { padding-bottom: 44px; }
}
