.candy-companion-browser { --candy-canvas: #151617; --candy-chrome: #202123; }
.candy-companion-browser .discovery-header { background: #202123; border-bottom-color: #424145; }
.candy-companion-browser .navigation-item { border-radius: 3px; }
.candy-companion-browser .navigation-item.is-active { background: #342a30; box-shadow: inset 3px 0 #f285a7; }
.candy-companion-browser .candy-cta, .candy-companion-browser .candy-outline { border-radius: 4px; }
.candy-companion-browser .campaign-showcase { height: 352px; max-width: 1480px; }
.candy-companion-browser .campaign-offer { left: 42px; height: 270px; gap: 14px; }
.candy-companion-browser .campaign-wordmark { width: 300px; height: 118px; }
.candy-companion-browser .campaign-pagination { top: auto; bottom: 18px; }
.candy-companion-browser .campaign-arrow { top: 41%; }
.candy-companion-browser .campaign-vignette { background: linear-gradient(0deg,#151617,transparent 27%); }
.candy-companion-browser .character-directory { margin-top: 0; padding-top: 28px; }
.candy-companion-browser .character-directory h1 { font-size: 28px; line-height: 1.35; }
.candy-companion-browser .directory-introduction { font-size: 16px; max-width: 970px; padding-bottom: 20px; }
.candy-companion-browser .character-mosaic { grid-auto-columns: 208px; gap: 16px; }
.candy-companion-browser .character-portrait { aspect-ratio: 4/5; border-radius: 4px; }
.candy-companion-browser .character-filter, .candy-companion-browser .character-search { border-radius: 3px; }
.candy-companion-browser .filter-scroll { background: linear-gradient(90deg,#15161700,#151617 45%); }
.candy-companion-browser .experience-tile, .candy-companion-browser .shorts-poster, .candy-companion-browser .room-portrait { border-radius: 4px; }
.candy-companion-browser .experience-track { grid-auto-columns: 240px; }
.candy-companion-browser .discovery-section { margin-bottom: 44px; }
.candy-companion-browser .topic-discovery-links { padding-block: 24px; border-color: #464045; background: #1d1d20; }
.candy-companion-browser .topic-discovery-links .contextual-links { gap: 14px 32px; }
.candy-companion-browser .contextual-links a { color: #f6a8c2; }
.candy-companion-browser .contextual-links a:hover { color: #fff; }
.candy-companion-browser .candy-faq { margin-top: 52px; }
.candy-companion-browser .candy-faq > h2 { font-size: 28px; text-align: left; }
.candy-companion-browser .candy-answers { gap: 0; margin-top: 22px; }
.candy-companion-browser .candy-answer { border: 0; border-bottom: 1px solid #494148; border-radius: 0; background: none; margin-top: 0; }
.candy-companion-browser .candy-answer[open] { background: #242327; box-shadow: inset 3px 0 #df8eaa; }
.candy-companion-browser .candy-answer summary { padding: 20px 16px; font-size: 16px; }
.candy-companion-browser .candy-project-copy { background: none; max-width: 1120px; margin-top: 60px; }
.candy-companion-browser .candy-project-copy .topic-section { padding-block: 32px; }
.candy-companion-browser .candy-project-copy .topic-section h2 { font-size: 24px; }
.candy-companion-browser .candy-project-copy .topic-section p + p { margin-top: 18px; }
.candy-companion-browser .candy-footer { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 30px; border-top: 1px solid #454047; }
.candy-companion-browser .footer-about { grid-column: 1/-1; max-width: none; }
.candy-companion-browser .footer-brand-row { max-width: 220px; }
.candy-companion-browser .footer-column { gap: 12px; }
.candy-companion-browser .footer-column h3 { font-size: 14px; color: #dcc2ce; }
.candy-companion-browser .footer-about .company-address { font-size: 13px; color: #beb9bf; }
.candy-companion-browser .topic-breadcrumbs { max-width: 1120px; }
.candy-companion-browser .topic-layout { display: block; max-width: 1120px; padding-top: 22px; }
.candy-companion-browser .candy-article { max-width: 960px; margin: 0 auto; }
.candy-companion-browser .topic-heading { padding: 0 0 22px 24px; border-left: 3px solid #dc7b9e; border-bottom: 1px solid #443a43; }
.candy-companion-browser .topic-heading h1 { font-size: 32px; line-height: 1.35; }
.candy-companion-browser .topic-introduction { color: #d0c6ce; font-size: 17px; }
.candy-companion-browser .topic-category { color: #e89abb; }
.candy-companion-browser .topic-section h2 { font-size: 23px; }
.candy-companion-browser .topic-mobile-contents { display: block; padding: 18px 0; border-bottom: 1px solid #444343; margin-bottom: 12px; }
.candy-companion-browser .article-outline summary { font-size: 14px; color: #b5d7cf; cursor: pointer; }
.candy-companion-browser .article-outline nav { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px 24px; padding-top: 18px; font-size: 14px; }
.candy-companion-browser .article-outline a { color: #d5cbd1; text-decoration: underline; text-underline-offset: 4px; overflow-wrap: anywhere; }
.candy-companion-browser .topic-table-scroll { border-color: #4b4148; border-radius: 3px; }
.candy-companion-browser .topic-table caption { background: #202927; }
.candy-companion-browser .topic-table thead th { background: #302630; color: #f4c5d9; }
.candy-companion-browser .related-topics .contextual-links { grid-template-columns: repeat(3,minmax(0,1fr)); }
.candy-companion-browser .question-search input { background: #232225; border-radius: 3px; border-color: #78616e; }

@media (min-width: 1200px) {
  .candy-companion-browser .candy-project-copy .topic-section { display: grid; grid-template-columns: 270px minmax(0,1fr); gap: 14px 40px; }
  .candy-companion-browser .candy-project-copy .topic-section h2 { grid-column: 1; grid-row: 1/span 3; }
  .candy-companion-browser .candy-project-copy .topic-section p, .candy-companion-browser .candy-project-copy .topic-section nav { grid-column: 2; margin-top: 0; }
  .candy-companion-browser .footer-about { display: grid; grid-template-columns: 240px minmax(0,1fr) minmax(0,1fr); gap: 16px 32px; }
  .candy-companion-browser .footer-about > p { max-width: 360px; margin: 0; }
  .candy-companion-browser .footer-about .company-address { grid-column: 3; grid-row: 1/span 2; }
  .candy-companion-browser .footer-about .copyright { grid-column: 1/3; grid-row: 2; }
}

@media (max-width: 1199px) {
  .candy-companion-browser .footer-about { display: block; max-width: 640px; }
  .candy-companion-browser .related-topics .contextual-links { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 767px) {
  .candy-companion-browser .campaign-showcase { height: 220px; }
  .candy-companion-browser .campaign-offer { left: 18px; width: 164px; height: 162px; gap: 8px; }
  .candy-companion-browser .campaign-wordmark { width: 150px; height: 74px; }
  .candy-companion-browser .campaign-pagination { bottom: 12px; }
  .candy-companion-browser .campaign-arrow { display: none; }
  .candy-companion-browser .character-directory { padding-top: 22px; }
  .candy-companion-browser .character-directory h1 { font-size: 22px; }
  .candy-companion-browser .directory-introduction { font-size: 14px; padding: 0 16px 18px; }
  .candy-companion-browser .shelf-heading, .candy-companion-browser .character-discovery-tools { padding-inline: 16px; }
  .candy-companion-browser .character-discovery-tools { flex-wrap: wrap; gap: 10px; }
  .candy-companion-browser .character-search, .candy-companion-browser .character-search:focus-within { flex: 1 1 100%; max-width: none; }
  .candy-companion-browser .filter-viewport { flex: 1 1 100%; padding-left: 0; border: 0; }
  .candy-companion-browser .character-scroll { padding: 16px; scroll-padding-inline: 16px; }
  .candy-companion-browser .character-mosaic { grid-auto-columns: 148px; gap: 12px; }
  .candy-companion-browser .character-caption { padding: 10px; }
  .candy-companion-browser .character-name { font-size: 15px; }
  .candy-companion-browser .experience-track { grid-auto-columns: 174px; }
  .candy-companion-browser .discovery-section { margin-bottom: 28px; }
  .candy-companion-browser .candy-faq { margin-top: 40px; }
  .candy-companion-browser .candy-faq > h2 { font-size: 23px; }
  .candy-companion-browser .candy-answer summary { font-size: 15px; padding: 18px 12px; }
  .candy-companion-browser .candy-project-copy { margin-top: 38px; }
  .candy-companion-browser .candy-project-copy .topic-section { display: block; padding-block: 26px; }
  .candy-companion-browser .candy-project-copy .topic-section h2 { font-size: 21px; margin-bottom: 16px; }
  .candy-companion-browser .candy-footer { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 26px 20px; }
  .candy-companion-browser .topic-heading { padding-left: 16px; }
  .candy-companion-browser .topic-heading h1 { font-size: 26px; }
  .candy-companion-browser .topic-introduction { font-size: 16px; }
  .candy-companion-browser .topic-section h2 { font-size: 21px; }
  .candy-companion-browser .article-outline nav, .candy-companion-browser .related-topics .contextual-links { grid-template-columns: 1fr; }
}
