


.bs-motif {
  display: block;
  flex: none;
  inline-size: var(--bs-component-motif-accent);
  block-size: auto;
  color: var(--bs-semantic-color-accent-text);
  fill: none;
  pointer-events: none;
}

.bs-motif--mark { inline-size: var(--bs-component-motif-mark); }
.bs-motif--accent { inline-size: var(--bs-component-motif-accent); }
.bs-motif--anchor { inline-size: var(--bs-component-motif-anchor); }

@media (max-width: 36.25rem) {
  .bs-motif--anchor { display: none; }
}

@media (forced-colors: active) {
  .bs-motif { color: CanvasText; forced-color-adjust: auto; }
}

.bs-portrait-hero {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  min-block-size: calc(100vh - 6.5rem);
  min-block-size: calc(100svh - 6.5rem);
  overflow: hidden;
}

.bs-portrait-hero__copy {
  position: relative;
  z-index: 4;
  grid-column: 6 / 13;
  grid-row: 1;
  display: grid;
  justify-items: start;
  align-content: center;
  gap: 0;
  min-inline-size: 0;
  min-block-size: calc(100vh - 6.5rem);
  min-block-size: calc(100svh - 6.5rem);
  padding-block: clamp(var(--bs-foundation-space-4), 5vw, var(--bs-foundation-space-6));
  padding-inline-start: clamp(var(--bs-foundation-space-3), 4vw, var(--bs-foundation-space-5));
}

.bs-portrait-hero__copy > .bs-label {
  margin-block-end: 1.25rem;
  color: var(--bs-foundation-color-purple);
}

.bs-portrait-hero__title {
  color: var(--bs-semantic-color-text-primary);
  font-size: clamp(4.5rem, 7.3vw, 6.75rem);
  line-height: 1.01;
  letter-spacing: var(--bs-semantic-type-display-1-letter-spacing);
}

.bs-portrait-hero__title > span {
  display: block;
  white-space: nowrap;
}

.bs-portrait-hero__title em {
  position: relative;
  color: var(--bs-semantic-color-brand);
  font-style: italic;
  font-weight: inherit;
}

.bs-portrait-hero__title em::after {
  position: absolute;
  z-index: -1;
  inset-block-end: 0.025em;
  inset-inline: -0.02em 0.01em;
  block-size: 0.045em;
  background: var(--bs-semantic-color-accent-decorative);
  content: "";
}

.bs-portrait-hero__lede {
  max-inline-size: 33rem;
  margin-block-start: 2rem;
  color: var(--bs-semantic-color-text-secondary);
  font-size: var(--bs-semantic-type-body-large-size);
  line-height: var(--bs-semantic-type-body-large-line-height);
}

.bs-portrait-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--bs-foundation-space-2) var(--bs-foundation-space-3);
  align-items: center;
  margin-block-start: 1.25rem;
}

.bs-portrait-hero__media {
  position: relative;
  z-index: 2;
  grid-column: 1 / 8;
  grid-row: 1;
  align-self: end;
  block-size: calc(100vh - 6.5rem);
  block-size: calc(100svh - 6.5rem);
  margin: 0;
  pointer-events: none;
}

.bs-portrait-hero__media img {
  position: absolute;
  z-index: 3;
  inset-block-end: -1%;
  inset-inline-start: -17%;
  inline-size: 132%;
  max-inline-size: none;
  block-size: 100%;
  object-fit: contain;
  object-position: center bottom;
}

.bs-portrait-hero:not(.bs-portrait-hero--with-media) {
  grid-template-columns: minmax(0, 1fr);
  min-block-size: auto;
}

.bs-portrait-hero:not(.bs-portrait-hero--with-media)::before,
.bs-portrait-hero:not(.bs-portrait-hero--with-media)::after {
  content: none;
}

@media (min-width: 80.0625rem) {
  .bs-portrait-hero {
    inline-size: 100%;
    padding-inline: max(
      var(--bs-layout-gutter-wide),
      calc((100% - var(--bs-layout-shell-max)) / 2)
    );
  }

  .bs-portrait-hero::before {
    position: absolute;
    z-index: -1;
    inset: -5% calc(50% - 50vw);
    background:
      radial-gradient(ellipse 42% 82% at 20% 50%, rgba(255, 250, 243, 0.98) 0%, rgba(255, 250, 243, 0.62) 34%, rgba(246, 240, 231, 0) 72%),
      radial-gradient(ellipse 62% 88% at 78% 46%, rgba(233, 217, 237, 0.46) 0%, rgba(233, 217, 237, 0.2) 42%, rgba(233, 217, 237, 0) 78%),
      radial-gradient(ellipse 36% 64% at 47% 50%, rgba(255, 250, 243, 0.9) 0%, rgba(255, 250, 243, 0.32) 42%, rgba(255, 250, 243, 0) 76%),
      radial-gradient(ellipse 44% 86% at 101% 46%, rgba(47, 13, 69, 0.1) 0%, rgba(47, 13, 69, 0.035) 44%, rgba(47, 13, 69, 0) 76%);
    content: "";
    filter: blur(2rem) saturate(0.86);
    opacity: 0.94;
    pointer-events: none;
    transform: scale(1.04);
    transform-origin: center;
  }
}

@media (max-width: 64rem) {
  .bs-portrait-hero,
  .bs-portrait-hero__copy {
    min-block-size: calc(100vh - 6.5rem);
    min-block-size: calc(100svh - 6.5rem);
  }

  .bs-portrait-hero__copy {
    grid-column: 6 / 13;
  }

  .bs-portrait-hero__title {
    font-size: clamp(4.125rem, 7.25vw, 4.75rem);
  }

  .bs-portrait-hero__lede {
    max-inline-size: 29rem;
  }

  .bs-portrait-hero__media {
    grid-column: 1 / 7;
    block-size: calc(100vh - 6.5rem);
    block-size: calc(100svh - 6.5rem);
  }

  .bs-portrait-hero__media img {
    inset-inline-start: -20%;
    inline-size: 142%;
  }
}

@media (max-width: 52rem) {
  .bs-portrait-hero {
    grid-template-columns: minmax(0, 1fr);
    min-block-size: 0;
    padding-block-start: var(--bs-semantic-layout-section-compact);
  }

  .bs-portrait-hero__copy {
    grid-column: 1;
    grid-row: 1;
    min-block-size: 0;
    padding-block: 0 var(--bs-foundation-space-4);
    padding-inline-start: 0;
  }

  .bs-portrait-hero__title {
    font-size: clamp(3.75rem, 9.3vw, 4.375rem);
  }

  .bs-portrait-hero__lede {
    max-inline-size: 32rem;
    margin-block-start: 1.75rem;
  }

  .bs-portrait-hero__media {
    grid-column: 1;
    grid-row: 2;
    justify-self: end;
    inline-size: min(96%, 42rem);
    block-size: 31rem;
  }

  .bs-portrait-hero__media img {
    inset-inline-start: -17%;
    inline-size: 132%;
  }
}

@media (max-width: 36.25rem) {
  .bs-portrait-hero {
    padding-block-start: var(--bs-foundation-space-4);
  }

  .bs-portrait-hero__copy > .bs-label {
    margin-block-end: 1rem;
  }

  .bs-portrait-hero__title {
    max-inline-size: 10.5ch;
    font-size: clamp(3.15rem, 14vw, 3.5rem);
    line-height: 1;
  }

  .bs-portrait-hero__title > span {
    display: inline;
    white-space: normal;
  }

  .bs-portrait-hero__title > span:not(:last-child)::after {
    content: " ";
  }

  .bs-portrait-hero__lede {
    margin-block-start: 1.5rem;
  }

  .bs-portrait-hero__actions,
  .bs-portrait-hero__actions > * {
    inline-size: 100%;
  }

  .bs-portrait-hero__media {
    inline-size: 118%;
    block-size: 25rem;
    margin-inline-end: -10%;
  }

  .bs-portrait-hero__media img {
    inset-inline-start: -11%;
    inline-size: 128%;
  }
}

@media (forced-colors: active) {
  .bs-portrait-hero__title em::after {
    border-color: CanvasText;
    background: Canvas;
    forced-color-adjust: auto;
  }
}


.bs-page-chapter-lead {
  padding-block: clamp(var(--bs-semantic-layout-section-compact), 9vw, calc(var(--bs-semantic-layout-section) * 1.4));
  background: var(--bs-semantic-color-canvas);
  border-block-end: var(--bs-semantic-border-divider) solid var(--bs-semantic-color-border-default);
}

.bs-page-chapter-lead__layout {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  gap: var(--bs-semantic-layout-grid-gap);
  align-items: end;
}

.bs-page-chapter-lead__title-field,
.bs-page-chapter-lead__context {
  display: grid;
  align-content: start;
  gap: var(--bs-primitive-space-4);
}

.bs-page-chapter-lead__title-field .bs-label {
  color: var(--bs-semantic-color-brand);
}

.bs-page-chapter-lead h1 {
  max-inline-size: 10ch;
  font-size: clamp(3.9rem, 7vw, 7.25rem);
  line-height: 0.96;
  letter-spacing: var(--bs-semantic-type-display-1-letter-spacing);
}

.bs-page-chapter-lead__context {
  padding-block-end: var(--bs-primitive-space-2);
}

.bs-page-chapter-lead__context > p {
  max-inline-size: var(--bs-semantic-type-body-measure);
}

.bs-page-chapter-lead__subtitle {
  color: var(--bs-semantic-color-heading-primary);
  font-family: var(--bs-semantic-type-family-display);
  font-size: var(--bs-semantic-type-heading-3-size);
  line-height: var(--bs-semantic-type-heading-3-line-height);
}

.bs-page-chapter-lead__context .action {
  justify-self: start;
  margin-block-start: var(--bs-primitive-space-2);
}

.bs-editorial-orientation {
  padding-block: var(--bs-semantic-layout-section);
  background: var(--bs-semantic-color-surface);
}

.bs-editorial-orientation__layout {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: var(--bs-semantic-relationship-group-to-group);
  align-items: start;
}

.bs-editorial-orientation__heading,
.bs-editorial-orientation__body {
  display: grid;
  align-content: start;
  gap: var(--bs-primitive-space-4);
}

.bs-editorial-orientation__heading h2 {
  max-inline-size: 12ch;
  font-size: var(--bs-semantic-type-display-2-size);
  line-height: var(--bs-semantic-type-display-2-line-height);
}

.bs-editorial-orientation__body > p {
  max-inline-size: var(--bs-semantic-type-body-measure);
}

.bs-editorial-orientation__lead {
  color: var(--bs-semantic-color-text-primary);
  font-size: var(--bs-semantic-type-body-large-size);
  line-height: var(--bs-semantic-type-body-large-line-height);
}

.bs-editorial-orientation__significance {
  max-inline-size: 32rem;
  margin-block-start: var(--bs-primitive-space-2);
  padding-block-start: var(--bs-primitive-space-4);
  border-block-start: var(--bs-semantic-border-emphasis) solid var(--bs-semantic-color-accent-decorative);
  font-family: var(--bs-semantic-type-family-display);
  font-size: var(--bs-semantic-type-heading-3-size);
  line-height: var(--bs-semantic-type-heading-3-line-height);
}

.bs-long-form-narrative {
  padding-block: var(--bs-semantic-layout-section);
  background: var(--bs-semantic-color-canvas);
}

.bs-long-form-narrative__layout {
  display: grid;
}

.bs-long-form-narrative__chapter {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: var(--bs-semantic-relationship-group-to-group);
  align-items: start;
  padding-block: var(--bs-semantic-layout-section-compact);
  border-block-start: var(--bs-semantic-border-divider) solid var(--bs-semantic-color-border-default);
}

.bs-long-form-narrative__chapter:first-child {
  padding-block-start: 0;
  border-block-start: 0;
}

.bs-long-form-narrative__heading,
.bs-long-form-narrative__body {
  display: grid;
  align-content: start;
  gap: var(--bs-primitive-space-4);
}

.bs-long-form-narrative__heading h2 {
  max-inline-size: 12ch;
  font-size: var(--bs-semantic-type-heading-1-size);
  line-height: var(--bs-semantic-type-heading-1-line-height);
}

.bs-long-form-narrative__body > p {
  max-inline-size: var(--bs-semantic-type-body-measure);
}

.bs-long-form-narrative__chapter--reverse .bs-long-form-narrative__heading {
  grid-column: 8 / 13;
}

.bs-long-form-narrative__chapter--reverse .bs-long-form-narrative__body {
  grid-column: 1 / 8;
  grid-row: 1;
}

.bs-timeline-milestones {
  padding-block: var(--bs-semantic-layout-section);
  background: var(--bs-semantic-color-canvas);
}

.bs-timeline-milestones__layout {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: var(--bs-semantic-relationship-group-to-group);
  align-items: start;
}

.bs-timeline-milestones__intro {
  display: grid;
  gap: var(--bs-primitive-space-4);
}

.bs-timeline-milestones__intro h2 {
  max-inline-size: 11ch;
  font-size: var(--bs-semantic-type-display-2-size);
  line-height: var(--bs-semantic-type-display-2-line-height);
}

.bs-timeline-milestones__significance {
  max-inline-size: 27rem;
  padding-block-start: var(--bs-primitive-space-4);
  border-block-start: var(--bs-semantic-border-emphasis) solid var(--bs-semantic-color-accent-decorative);
  font-family: var(--bs-semantic-type-family-display);
  font-size: var(--bs-semantic-type-heading-3-size);
  line-height: var(--bs-semantic-type-heading-3-line-height);
}

.bs-timeline-milestones__list,
.bs-story-evidence-bridge__records {
  margin: 0;
  padding: 0;
  list-style: none;
}

.bs-timeline-milestones__list {
  border-inline-start: var(--bs-semantic-border-divider) solid var(--bs-semantic-color-accent-decorative);
}

.bs-timeline-milestones__list > li {
  position: relative;
  display: grid;
  gap: var(--bs-primitive-space-3);
  padding: 0 0 var(--bs-primitive-space-7) var(--bs-primitive-space-6);
}

.bs-timeline-milestones__list > li::before {
  position: absolute;
  inset-inline-start: 0;
  inset-block-start: 0.45rem;
  inline-size: var(--bs-primitive-space-3);
  block-size: var(--bs-primitive-space-3);
  border: var(--bs-semantic-border-control) solid var(--bs-semantic-color-brand-strong);
  
  border-radius: 50%;
  background: var(--bs-semantic-color-accent-decorative);
  content: "";
  transform: translateX(-50%);
}

.bs-timeline-milestones__list h3 {
  max-inline-size: 27rem;
  font-size: var(--bs-semantic-type-heading-3-size);
  line-height: var(--bs-semantic-type-heading-3-line-height);
}

.bs-timeline-milestones__list p {
  max-inline-size: var(--bs-semantic-type-body-measure);
}

.bs-story-evidence-bridge {
  padding-block: var(--bs-semantic-layout-section);
  background: var(--bs-semantic-color-surface);
}

.bs-story-evidence-bridge__layout {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: var(--bs-semantic-relationship-group-to-group);
  align-items: start;
}

.bs-story-evidence-bridge__heading {
  display: grid;
  gap: var(--bs-primitive-space-4);
}

.bs-story-evidence-bridge__heading h2 {
  max-inline-size: 11ch;
  font-size: var(--bs-semantic-type-display-2-size);
  line-height: var(--bs-semantic-type-display-2-line-height);
}

.bs-story-evidence-bridge__records {
  border-block-end: var(--bs-semantic-border-divider) solid var(--bs-semantic-color-border-default);
}

.bs-continuation-bridge {
  padding-block: var(--bs-semantic-layout-section);
  color: var(--bs-semantic-color-text-inverse);
  background: var(--bs-foundation-color-charcoal);
}

.bs-continuation-bridge__layout {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(13rem, 5fr);
  gap: var(--bs-semantic-relationship-group-to-group);
  align-items: end;
}

.bs-continuation-bridge__copy {
  display: grid;
  gap: var(--bs-primitive-space-4);
}

.bs-continuation-bridge__copy .bs-label {
  color: var(--bs-semantic-color-accent-field);
}

.bs-continuation-bridge h2 {
  max-inline-size: 13ch;
  color: var(--bs-semantic-color-text-inverse);
  font-size: var(--bs-semantic-type-display-2-size);
  line-height: var(--bs-semantic-type-display-2-line-height);
}

.bs-continuation-bridge__copy > p:not(.bs-label) {
  max-inline-size: var(--bs-semantic-type-body-measure);
  color: var(--bs-semantic-color-link-inverse);
}

.bs-continuation-bridge .action {
  justify-self: end;
}

@media (max-width: 60rem) {
  .bs-page-chapter-lead__layout,
  .bs-editorial-orientation__layout,
  .bs-timeline-milestones__layout,
  .bs-story-evidence-bridge__layout,
  .bs-continuation-bridge__layout,
  .bs-long-form-narrative__chapter {
    grid-template-columns: minmax(0, 1fr);
  }

  .bs-page-chapter-lead__context {
    max-inline-size: var(--bs-semantic-type-body-measure);
    padding-block-end: 0;
  }

  .bs-long-form-narrative__chapter--reverse .bs-long-form-narrative__heading,
  .bs-long-form-narrative__chapter--reverse .bs-long-form-narrative__body {
    grid-column: 1;
    grid-row: auto;
  }

  .bs-continuation-bridge .action {
    justify-self: start;
  }
}

@media (max-width: 38.75rem) {
  .bs-page-chapter-lead,
  .bs-editorial-orientation,
  .bs-long-form-narrative,
  .bs-timeline-milestones,
  .bs-story-evidence-bridge,
  .bs-continuation-bridge {
    padding-block: var(--bs-semantic-layout-section-compact);
  }

  .bs-page-chapter-lead h1 {
    max-inline-size: 9ch;
    font-size: clamp(3.3rem, 14vw, 4.25rem);
  }

  .bs-editorial-orientation__heading h2,
  .bs-timeline-milestones__intro h2,
  .bs-story-evidence-bridge__heading h2,
  .bs-continuation-bridge h2 {
    font-size: var(--bs-semantic-type-display-2-compact-size);
    line-height: var(--bs-semantic-type-display-2-line-height);
  }

  .bs-long-form-narrative__chapter {
    padding-block: var(--bs-primitive-space-6);
  }

  .bs-timeline-milestones__list > li {
    padding-inline-start: var(--bs-primitive-space-5);
  }

  .bs-continuation-bridge .action {
    inline-size: 100%;
  }
}

@media (forced-colors: active) {
  .bs-page-chapter-lead,
  .bs-long-form-narrative__chapter,
  .bs-timeline-milestones__list,
  .bs-timeline-milestones__list > li::before,
  .bs-story-evidence-bridge__records,
  .bs-continuation-bridge {
    border-color: CanvasText;
  }
}
