.companion-site-edition { --candy-canvas: #171719; --candy-chrome: #212124; }
.companion-site-edition .site-content-header { background: #212124; border-bottom-color: #454148; }
.companion-site-edition .site-menu-item { border-radius: 6px; }
.companion-site-edition .site-menu-item.state-active { background: #352b33; box-shadow: inset 3px 0 #ed8ab5; }
.companion-site-edition .primary-action, .companion-site-edition .secondary-action { border-radius: 6px; }
.companion-site-edition .featured-showcase { height: 332px; max-width: 1540px; }
.companion-site-edition .featured-offer { left: 36px; height: 250px; gap: 16px; }
.companion-site-edition .featured-wordmark { width: 286px; height: 112px; }
.companion-site-edition .featured-pagination { top: auto; bottom: 16px; }
.companion-site-edition .featured-arrow { top: 42%; }
.companion-site-edition .featured-vignette { background: linear-gradient(0deg,#171719,transparent 28%); }
.companion-site-edition .profile-directory { margin-top: 0; padding-top: 30px; }
.companion-site-edition .profile-directory h1 { font-size: 29px; line-height: 1.35; }
.companion-site-edition .catalogue-introduction { font-size: 16px; max-width: 1000px; padding-bottom: 22px; }
.companion-site-edition .profile-mosaic { grid-auto-columns: 214px; gap: 18px; }
.companion-site-edition .profile-portrait { aspect-ratio: 4/5; border-radius: 6px; }
.companion-site-edition .profile-filter, .companion-site-edition .profile-search { border-radius: 6px; }
.companion-site-edition .catalogue-filter-scroll { background: linear-gradient(90deg,#17171900,#171719 45%); }
.companion-site-edition .format-tile, .companion-site-edition .story-poster, .companion-site-edition .cam-room-portrait { border-radius: 6px; }
.companion-site-edition .format-track { grid-auto-columns: 246px; }
.companion-site-edition .site-content-section { margin-bottom: 48px; }
.companion-site-edition .reading-discovery-links { padding-block: 22px; border-color: #464148; background: #202023; }
.companion-site-edition .reading-discovery-links .reading-link-list { gap: 12px 28px; }
.companion-site-edition .reading-link-list a { color: #f2acc9; }
.companion-site-edition .reading-link-list a:hover { color: #fff; }
.companion-site-edition .companion-faq { margin-top: 48px; }
.companion-site-edition .companion-faq > h2 { font-size: 27px; text-align: left; }
.companion-site-edition .companion-answer-list { gap: 0; margin-top: 20px; }
.companion-site-edition .companion-answer { border: 0; border-bottom: 1px solid #4a4149; border-radius: 0; background: none; margin-top: 0; }
.companion-site-edition .companion-answer[open] { background: #242126; box-shadow: inset 3px 0 #e391b0; }
.companion-site-edition .companion-answer summary { padding: 20px 14px; font-size: 16px; }
.companion-site-edition .companion-project-text { background: none; max-width: 1120px; margin-top: 54px; }
.companion-site-edition .companion-project-text .reading-section { padding-block: 30px; }
.companion-site-edition .companion-project-text .reading-section h2 { font-size: 24px; }
.companion-site-edition .companion-project-text .reading-section p + p { margin-top: 16px; }
.companion-site-edition .site-footer { grid-template-columns: 1.3fr repeat(4,minmax(0,1fr)); gap: 26px; border-top: 1px solid #494149; }
.companion-site-edition .site-footer-about { min-width: 0; }
.companion-site-edition .site-footer-column { gap: 12px; min-width: 0; }
.companion-site-edition .site-footer-column h3 { font-size: 14px; color: #dbc8d2; }
.companion-site-edition .site-footer-about .operator-address { font-size: 13px; color: #beb8c0; }
.companion-site-edition .reading-breadcrumbs { max-width: 1170px; }
.companion-site-edition .reading-layout { display: block; max-width: 1170px; padding-top: 22px; }
.companion-site-edition .companion-reading-article { max-width: 1000px; margin: 0 auto; }
.companion-site-edition .reading-heading { padding: 0 0 26px; border-bottom: 2px solid #b77b96; }
.companion-site-edition .reading-heading h1 { font-size: 32px; line-height: 1.35; max-width: 850px; }
.companion-site-edition .reading-introduction { font-size: 17px; color: #d0c5cd; }
.companion-site-edition .reading-category { font-size: 13px; color: #b5d9d0; }
.companion-site-edition .reading-section h2 { font-size: 24px; }
.companion-site-edition .reading-mobile-contents { display: block; padding: 18px 0; border-bottom: 1px solid #444147; margin-bottom: 10px; }
.companion-site-edition .reading-outline summary { font-size: 14px; color: #f0bed5; cursor: pointer; }
.companion-site-edition .reading-outline nav { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px 28px; padding-top: 18px; font-size: 14px; }
.companion-site-edition .reading-outline a { color: #d7cdd4; text-decoration: underline; text-underline-offset: 4px; overflow-wrap: anywhere; }
.companion-site-edition .reading-table-scroll { border-radius: 4px; border-color: #4b4149; }
.companion-site-edition .reading-table caption { background: #232a29; color: #c2ded7; }
.companion-site-edition .reading-table thead th { background: #30262e; color: #f2c6da; }
.companion-site-edition .reading-table th, .companion-site-edition .reading-table td { padding: 16px; }
.companion-site-edition .reading-related-links .reading-link-list { grid-template-columns: repeat(3,minmax(0,1fr)); }
.companion-site-edition .faq-search input { background: #242126; border-color: #927082; border-radius: 5px; }

@media (min-width: 1200px) {
  .companion-site-edition .companion-project-text .reading-section { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px 36px; }
  .companion-site-edition .companion-project-text .reading-section h2 { grid-column: 1/-1; margin: 0; max-width: 900px; }
  .companion-site-edition .companion-project-text .reading-section p { margin: 0; }
  .companion-site-edition .companion-project-text .reading-section p + p { margin: 0; }
  .companion-site-edition .companion-project-text .reading-section nav { grid-column: 1/-1; margin-top: 0; }
}

@media (max-width: 1199px) {
  .companion-site-edition .site-footer { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .companion-site-edition .site-footer-about { grid-column: 1/-1; max-width: 760px; }
  .companion-site-edition .reading-related-links .reading-link-list { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 767px) {
  .companion-site-edition .featured-showcase { height: 214px; }
  .companion-site-edition .featured-offer { left: 16px; width: 164px; height: 158px; gap: 8px; }
  .companion-site-edition .featured-wordmark { width: 148px; height: 72px; }
  .companion-site-edition .featured-pagination { bottom: 12px; }
  .companion-site-edition .featured-arrow { display: none; }
  .companion-site-edition .profile-directory { padding-top: 24px; }
  .companion-site-edition .profile-directory h1 { font-size: 23px; }
  .companion-site-edition .catalogue-introduction { font-size: 14px; padding: 0 16px 18px; }
  .companion-site-edition .catalogue-shelf-heading, .companion-site-edition .profile-discovery-tools { padding-inline: 16px; }
  .companion-site-edition .profile-discovery-tools { flex-wrap: wrap; gap: 10px; }
  .companion-site-edition .profile-search, .companion-site-edition .profile-search:focus-within { flex: 1 1 100%; max-width: none; }
  .companion-site-edition .catalogue-filter-viewport { flex: 1 1 100%; padding-left: 0; border: 0; }
  .companion-site-edition .profile-scroll { padding: 16px; scroll-padding-inline: 16px; }
  .companion-site-edition .profile-mosaic { grid-auto-columns: 152px; gap: 12px; }
  .companion-site-edition .profile-caption { padding: 10px; }
  .companion-site-edition .profile-name { font-size: 15px; }
  .companion-site-edition .format-track { grid-auto-columns: 180px; }
  .companion-site-edition .site-content-section { margin-bottom: 30px; }
  .companion-site-edition .companion-faq { margin-top: 38px; }
  .companion-site-edition .companion-faq > h2 { font-size: 23px; }
  .companion-site-edition .companion-answer summary { font-size: 15px; padding: 18px 12px; }
  .companion-site-edition .companion-project-text { margin-top: 38px; }
  .companion-site-edition .companion-project-text .reading-section { padding-block: 26px; }
  .companion-site-edition .companion-project-text .reading-section h2 { font-size: 21px; }
  .companion-site-edition .site-footer { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 26px 18px; }
  .companion-site-edition .reading-heading h1 { font-size: 26px; }
  .companion-site-edition .reading-introduction { font-size: 16px; }
  .companion-site-edition .reading-section h2 { font-size: 21px; }
  .companion-site-edition .reading-outline nav, .companion-site-edition .reading-related-links .reading-link-list { grid-template-columns: 1fr; }
  .companion-site-edition .reading-table th, .companion-site-edition .reading-table td { padding: 12px; }
}
