
  .grid-overrides .fp-grid-areas {
    --grid-template-columns: var(--col-1-grid-template-columns);

    display: grid;
    grid-template-areas:
      "category-bar"
      "ankeiler-1"
      "headlines-1"
      "ankeiler-2"
      "ankeiler-3"
      "rectangle-1"
      "headlines-2"
      "promotions"
      "rectangle-2"
      "headlines-3"
      "ankeiler-4"
      "ankeiler-5"
      "rectangle-3"
      "headlines-4"
      "bbg"
      "headlines-5"
      "ankeiler-6"
      "ankeiler-7"
      "headlines-6"
      "sponsored-actions"
      "headlines-7"
      "ankeiler-8"
      "ankeiler-9"
      "community";
    grid-template-columns: var(--grid-template-columns);
    gap: 0.5rem;
    align-items: flex-start;
    padding: 0 0.5rem 1rem;
  }
.grid-overrides .editorial-content,.grid-overrides .ankeiler-stream {
    display: contents;
  }
.grid-overrides .ankeiler-1 {
      grid-area: ankeiler-1;
    }
.grid-overrides .ankeiler-2 {
      grid-area: ankeiler-2;
    }
.grid-overrides .ankeiler-3 {
      grid-area: ankeiler-3;
    }
.grid-overrides .ankeiler-4 {
      grid-area: ankeiler-4;
    }
.grid-overrides .ankeiler-5 {
      grid-area: ankeiler-5;
    }
.grid-overrides .ankeiler-6 {
      grid-area: ankeiler-6;
    }
.grid-overrides .ankeiler-7 {
      grid-area: ankeiler-7;
    }
.grid-overrides .ankeiler-8 {
      grid-area: ankeiler-8;
    }
.grid-overrides .ankeiler-9 {
      grid-area: ankeiler-9;
    }
.grid-overrides .ankeiler-10 {
      grid-area: ankeiler-10;
    }
.grid-overrides .headline-block-1 {
      /* On mobile we want headlines to be in blocks of 5 (.headlines-*), as opposed to 10 (.headline-block-*)
      *  use display: contents (https://caniuse.com/css-display-contents) to break out of the headline-block containers
      */
      display: contents;
      grid-area: headline-block-1;
    }
.grid-overrides .headline-block-2 {
      /* On mobile we want headlines to be in blocks of 5 (.headlines-*), as opposed to 10 (.headline-block-*)
      *  use display: contents (https://caniuse.com/css-display-contents) to break out of the headline-block containers
      */
      display: contents;
      grid-area: headline-block-2;
    }
.grid-overrides .headline-block-3 {
      /* On mobile we want headlines to be in blocks of 5 (.headlines-*), as opposed to 10 (.headline-block-*)
      *  use display: contents (https://caniuse.com/css-display-contents) to break out of the headline-block containers
      */
      display: contents;
      grid-area: headline-block-3;
    }
.grid-overrides .headline-block-4 {
      /* On mobile we want headlines to be in blocks of 5 (.headlines-*), as opposed to 10 (.headline-block-*)
      *  use display: contents (https://caniuse.com/css-display-contents) to break out of the headline-block containers
      */
      display: contents;
      grid-area: headline-block-4;
    }
.grid-overrides .headline-block-5 {
      /* On mobile we want headlines to be in blocks of 5 (.headlines-*), as opposed to 10 (.headline-block-*)
      *  use display: contents (https://caniuse.com/css-display-contents) to break out of the headline-block containers
      */
      display: contents;
      grid-area: headline-block-5;
    }
.grid-overrides .headlines-1 {
      grid-area: headlines-1;
      border-bottom: 1px solid var(--border-base-color);
    }
.grid-overrides .headlines-2 {
      grid-area: headlines-2;
      border-bottom: 1px solid var(--border-base-color);
    }
.grid-overrides .headlines-3 {
      grid-area: headlines-3;
      border-bottom: 1px solid var(--border-base-color);
    }
.grid-overrides .headlines-4 {
      grid-area: headlines-4;
      border-bottom: 1px solid var(--border-base-color);
    }
.grid-overrides .headlines-5 {
      grid-area: headlines-5;
      border-bottom: 1px solid var(--border-base-color);
    }
.grid-overrides .headlines-6 {
      grid-area: headlines-6;
      border-bottom: 1px solid var(--border-base-color);
    }
.grid-overrides .headlines-7 {
      grid-area: headlines-7;
      border-bottom: 1px solid var(--border-base-color);
    }
.grid-overrides .headlines-8 {
      grid-area: headlines-8;
      border-bottom: 1px solid var(--border-base-color);
    }
.grid-overrides .headlines {
    display: contents;
    grid-area: headlines;
  }
.grid-overrides .category-bar {
    grid-area: category-bar;
  }
.pos1:is(.grid-overrides .rectangle) {
      grid-area: rectangle-1;
    }
.pos2:is(.grid-overrides .rectangle) {
      grid-area: rectangle-2;
    }
.pos3:is(.grid-overrides .rectangle) {
      grid-area: rectangle-3;
    }
.grid-overrides .promotions {
    grid-area: promotions;
  }
.grid-overrides twk-best-buy-guide-block {
    grid-area: bbg;
  }
.grid-overrides .sponsored-actions {
    grid-area: sponsored-actions;
  }
.grid-overrides .forum-spotlight {
    --gap-size: var(--spacing-small);
    --padding-inline: 0.5rem;

    display: grid;
    gap: var(--spacing-small);
    width: 100%;
    padding-block-end: 0.5rem;
  }
:is(.grid-overrides .forum-spotlight) twk-forum-theme:nth-of-type(2) {
      display: none;
    }
/* Show 4 forum topics, hide the rest */
:is(.grid-overrides .forum-popular) :nth-child(1n + 5 of .forum-topic) {
      display: none;
    }
.grid-overrides .user-review {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-small);
  }
:is(.grid-overrides .user-review) .user-review-card:nth-child(2) {
      display: none;
    }
.grid-overrides .community-block {
    display: grid;
    grid-area: community;
    grid-auto-rows: auto;
    gap: var(--spacing-small);
  }
:is(.grid-overrides .community-block) .community-content {
      display: grid;
      grid-auto-rows: auto;
      gap: inherit;
    }
.grid-overrides .jobs {
    grid-area: jobs;
  }
.grid-overrides .sidebar {
    display: contents;
    grid-area: sidebar;
  }
/**
   * These are some quick-fixes for whitespace issues solved by showing more content. (TWK-21246)
   */
.grid-overrides .ankeiler-10,.grid-overrides .headlines-8,.grid-overrides .headlines-9,.grid-overrides .headlines-10,.grid-overrides .headlines-11,.grid-overrides .headlines-12,.grid-overrides .headlines-13,.grid-overrides .headlines-14 {
    display: none;
  }
@media screen and (min-width: 720px) {
    .grid-overrides .fp-grid-areas {
      --grid-template-columns: repeat(var(--grid-columns), minmax(0, 1fr));

      grid-template-areas:
        "category-bar       category-bar"
        "ankeiler-1         ankeiler-1"
        "headlines-1        headlines-1"
        "ankeiler-2         ankeiler-3"
        "rectangle-1        rectangle-1"
        "headlines-2        headlines-2"
        "promotions         promotions"
        "rectangle-2        rectangle-2"
        "headlines-3        headlines-3"
        "ankeiler-4         ankeiler-5"
        "rectangle-3        rectangle-3"
        "headlines-4        headlines-4"
        "bbg                bbg"
        "headlines-5        headlines-5"
        "ankeiler-6         ankeiler-7"
        "headlines-6        headlines-6"
        "sponsored-actions  sponsored-actions"
        "headlines-7        headlines-7"
        "ankeiler-8         ankeiler-9"
        "headlines-8        headlines-8"
        "community          community";
      gap: var(--spacing-large);
      padding-inline: 0;
    }

    .grid-overrides div[class^="headlines-"] {
      border-bottom: 0;
    }

    .grid-overrides .user-review {
      display: grid;
      grid-template-columns: minmax(0, 1fr);
      grid-column: span 2;
    }

      :is(.grid-overrides .user-review) .user-review-spotlight {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

        :is(:is(.grid-overrides .user-review) .user-review-spotlight) > * {
          grid-column: span 1;
        }

      :is(.grid-overrides .user-review) .user-review-card:nth-child(2) {
        display: grid;
      }

    .grid-overrides .community-block {
      display: flex;
      flex-direction: column;
      gap: inherit;
    }

      :is(.grid-overrides .community-block) .forum-spotlight {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-row: 1/2;
        grid-column: span 2;
        gap: var(--spacing-large);
      }

        :is(:is(.grid-overrides .community-block) .forum-spotlight) > * {
          grid-column: span 1;
        }

        :is(:is(.grid-overrides .community-block) .forum-spotlight) twk-forum-theme:nth-child(2) {
          display: grid;
        }

      :is(.grid-overrides .community-block) .forum-popular {
        grid-row: 2/3;
        grid-column: span 2;

        /* Show 4 forum topics, hide the rest */
      }
        :is(:is(.grid-overrides .community-block) .forum-popular) :nth-child(1n + 5 of .forum-topic) {
          display: grid;
        }

        :is(:is(.grid-overrides .community-block) .forum-popular) .theme-topics {
          grid-template-columns: repeat(2, 1fr);
        }

      :is(.grid-overrides .community-block) .pollWrapper {
        grid-column: span 2;
        width: 100%;
      }
}
@media screen and (min-width: 1160px) {
    .grid-overrides .fp-grid-areas {
      grid-template-areas:
        "category-bar       category-bar       category-bar"
        "editorial-content  editorial-content  sidebar"
        "community          community          community";
    }

    .grid-overrides .editorial-content {
      display: grid;
      grid-area: editorial-content;
      grid-template-areas:
        "ankeiler-1        ankeiler-1"
        "headline-block-1  headline-block-1"
        "ankeiler-2        ankeiler-3"
        "headline-block-2  headline-block-2"
        "ankeiler-4        ankeiler-5"
        "headline-block-3  headline-block-3"
        "ankeiler-6        ankeiler-7"
        "headline-block-4  headline-block-4"
        "ankeiler-8        ankeiler-9"
        "headline-block-5  headline-block-5";
      grid-template-columns: repeat(2, 1fr);
      grid-auto-rows: auto;
      gap: inherit;
      row-gap: var(--spacing-small);
    }

    .grid-overrides div[class^="headline-block-"] {
      display: block;
      grid-column: span 2; /* Fallback for overflow headlines (if there's ever more than 40 */
      border-bottom: 1px solid var(--border-base-color);
    }
      :is(.grid-overrides .community-block) .community-title {
        grid-row: span 1;
        grid-column: 1/-1;
      }

      :is(.grid-overrides .community-block) .community-content {
        display: grid;
        grid-template-columns: repeat(var(--grid-columns), minmax(0, 1fr));
        align-items: start;
      }

      :is(.grid-overrides .community-block) .forum-spotlight {
        grid-column: span 2;
      }

        :is(:is(.grid-overrides .community-block) .forum-spotlight) twk-forum-theme:nth-child(2) {
          display: grid;
        }

      :is(.grid-overrides .community-block) .forum-popular {
        grid-column: span 2;
      }

      :is(.grid-overrides .community-block) .user-review {
        grid-row: 1/2;
        grid-column: 3/4;
      }

        :is(:is(.grid-overrides .community-block) .user-review) .user-review-spotlight {
          display: flex;
        }

        :is(:is(.grid-overrides .community-block) .user-review) .user-review-card:nth-child(2) {
          display: none;
        }

      :is(.grid-overrides .community-block) .pollWrapper {
        grid-row: 2/3;
        grid-column: 3/4;
      }

    .grid-overrides .sidebar {
      display: grid;
      grid-template-areas:
        "promotions"
        "rectangle-1"
        "bbg"
        "sponsored-actions"
        "rectangle-2";
      gap: var(--spacing-large);
    }

      :is(.grid-overrides .sidebar):not(:has(.rectangle)) {
        grid-template-areas:
          "promotions"
          "bbg"
          "sponsored-actions";
      }

      :is(.grid-overrides .sidebar) .rectangle.pos3 {
        display: none;
      }
}

@media screen and (min-width: 1504px) {
    .grid-overrides:not(.sidebar-open) .fp-grid-areas {
    grid-template-areas:
      "category-bar       category-bar       category-bar       category-bar"
      "editorial-content  editorial-content  editorial-content  sidebar"
      "community          community          community          community";
  }
    .grid-overrides:not(.sidebar-open) .rectangle {
    display: block;
  }
    .grid-overrides:not(.sidebar-open) .headlines {
    display: flex;
    flex-direction: column;
    border-bottom: 1px solid var(--border-base-color);
  }
    .grid-overrides:not(.sidebar-open) .ankeiler-stream {
    display: grid;
    grid-auto-rows: auto;
    gap: inherit;
    row-gap: 1rem;
    place-content: start;
  }

    :is(.grid-overrides:not(.sidebar-open) .ankeiler-stream) twk-ankeiler {
      grid-area: unset;
    }
    .grid-overrides:not(.sidebar-open) .editorial-content {
    grid-template-areas: unset;
    grid-template-rows: min-content 1fr;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

    :is(.grid-overrides:not(.sidebar-open) .editorial-content) .ankeiler-1 {
      grid-area: 1 / 1 / 2 / 3;
    }

    :is(.grid-overrides:not(.sidebar-open) .editorial-content) .ankeiler-stream {
      grid-area: 1 / 3 / -1 / 4;
    }

    :is(.grid-overrides:not(.sidebar-open) .editorial-content) .headlines {
      grid-area: 2 / 1 / -1 / 3;
    }
    .grid-overrides:not(.sidebar-open) .ankeiler-10,.grid-overrides:not(.sidebar-open) .headlines-8,.grid-overrides:not(.sidebar-open) .headlines-9,.grid-overrides:not(.sidebar-open) .headlines-10,.grid-overrides:not(.sidebar-open) .headlines-11,.grid-overrides:not(.sidebar-open) .headlines-12,.grid-overrides:not(.sidebar-open) .headlines-13,.grid-overrides:not(.sidebar-open) .headlines-14 {
    display: block;
  }
    .grid-overrides:not(.sidebar-open) div[class^="headline-block-"] {
    border-bottom: 0;
  }
    .grid-overrides:not(.sidebar-open) .community-block {
    display: flex;
    flex-flow: row wrap;
  }

    :is(.grid-overrides:not(.sidebar-open) .community-block) .community-title {
      min-width: 100%;
    }

    :is(.grid-overrides:not(.sidebar-open) .community-block) .user-review:nth-last-child(1) {
      grid-column: span 2;
    }

      :is(:is(.grid-overrides:not(.sidebar-open) .community-block) .user-review:nth-last-child(1)) .user-review-spotlight {
        display: grid;
      }

      :is(:is(.grid-overrides:not(.sidebar-open) .community-block) .user-review:nth-last-child(1)) .user-review-card:nth-child(2) {
        display: grid;
      }

    :is(.grid-overrides:not(.sidebar-open) .community-block) .forum-spotlight {
      display: grid;
      grid-template-columns: 1fr;
      grid-column: span 1;
    }

      :is(:is(.grid-overrides:not(.sidebar-open) .community-block) .forum-spotlight) twk-forum-theme:nth-child(2) {
        display: none;
      }

    :is(.grid-overrides:not(.sidebar-open) .community-block) .forum-popular {
      grid-row: 1/2;
      grid-column: span 1;

      /* Show 4 forum topics, hide the rest */
    }
      :is(:is(.grid-overrides:not(.sidebar-open) .community-block) .forum-popular) :nth-child(1n + 5 of .forum-topic) {
        display: none;
      }

      :is(:is(.grid-overrides:not(.sidebar-open) .community-block) .forum-popular) .theme-topics {
        grid-template-columns: 1fr;
      }

    :is(.grid-overrides:not(.sidebar-open) .community-block) .pollWrapper {
      grid-row: 1/2;
      grid-column: 4/5;
    }
}

@media screen and (min-width: 1848px) {
    .grid-overrides .fp-grid-areas {
    grid-template-areas:
      "category-bar       category-bar       category-bar       category-bar"
      "editorial-content  editorial-content  editorial-content  sidebar"
      "community          community          community          community";
  }
    .grid-overrides .rectangle {
    display: block;
  }
    .grid-overrides .headlines {
    display: flex;
    flex-direction: column;
    border-bottom: 1px solid var(--border-base-color);
  }
    .grid-overrides .ankeiler-stream {
    display: grid;
    grid-auto-rows: auto;
    gap: inherit;
    row-gap: 1rem;
    place-content: start;
  }

    :is(.grid-overrides .ankeiler-stream) twk-ankeiler {
      grid-area: unset;
    }
    .grid-overrides .editorial-content {
    grid-template-areas: unset;
    grid-template-rows: min-content 1fr;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

    :is(.grid-overrides .editorial-content) .ankeiler-1 {
      grid-area: 1 / 1 / 2 / 3;
    }

    :is(.grid-overrides .editorial-content) .ankeiler-stream {
      grid-area: 1 / 3 / -1 / 4;
    }

    :is(.grid-overrides .editorial-content) .headlines {
      grid-area: 2 / 1 / -1 / 3;
    }
    .grid-overrides .ankeiler-10,.grid-overrides .headlines-8,.grid-overrides .headlines-9,.grid-overrides .headlines-10,.grid-overrides .headlines-11,.grid-overrides .headlines-12,.grid-overrides .headlines-13,.grid-overrides .headlines-14 {
    display: block;
  }
    .grid-overrides div[class^="headline-block-"] {
    border-bottom: 0;
  }
    .grid-overrides .community-block {
    display: flex;
    flex-flow: row wrap;
  }

    :is(.grid-overrides .community-block) .community-title {
      min-width: 100%;
    }

    :is(.grid-overrides .community-block) .user-review:nth-last-child(1) {
      grid-column: span 2;
    }

      :is(:is(.grid-overrides .community-block) .user-review:nth-last-child(1)) .user-review-spotlight {
        display: grid;
      }

      :is(:is(.grid-overrides .community-block) .user-review:nth-last-child(1)) .user-review-card:nth-child(2) {
        display: grid;
      }

    :is(.grid-overrides .community-block) .forum-spotlight {
      display: grid;
      grid-template-columns: 1fr;
      grid-column: span 1;
    }

      :is(:is(.grid-overrides .community-block) .forum-spotlight) twk-forum-theme:nth-child(2) {
        display: none;
      }

    :is(.grid-overrides .community-block) .forum-popular {
      grid-row: 1/2;
      grid-column: span 1;

      /* Show 4 forum topics, hide the rest */
    }
      :is(:is(.grid-overrides .community-block) .forum-popular) :nth-child(1n + 5 of .forum-topic) {
        display: none;
      }

      :is(:is(.grid-overrides .community-block) .forum-popular) .theme-topics {
        grid-template-columns: 1fr;
      }

    :is(.grid-overrides .community-block) .pollWrapper {
      grid-row: 1/2;
      grid-column: 4/5;
    }
}
.comment-counter {
  --text-color: var(--tertiary-paragraph-text-color);

  font-size: var(--font-size-small);
  color: var(--text-color);
}
.comment-counter:hover {
    --text-color: var(--text-link-hover-color);
  }
.comment-counter.forum-topic {
    align-self: center;
    margin-left: auto;
  }
.comment-counter svg {
    pointer-events: none;
    -webkit-user-select: none;
            user-select: none;
  }
.floating-action-button {
  --fab-text-color: var(--grey-100);
  --fab-background-color: var(--accent-30);
  --fab-font-size: var(--font-size-large);
  --fab-font-family: var(--font-family-body);
  --fab-font-weight: var(--font-weight-semibold);
  --fab-base-padding: 0.75rem;
  --fab-icon-size: 2rem;
  --tip-icon-fill: var(--fab-text-color);

  position: fixed;
  right: 0;
  bottom: 15vh;
  z-index: 999;
  display: flex;
  gap: 0.75rem;
  padding: var(--fab-base-padding);
  font-family: var(--fab-font-family);
  font-size: var(--fab-font-size);
  font-weight: var(--fab-font-weight);
  line-height: var(--fab-font-size);
  color: var(--fab-text-color);
  cursor: pointer;
  background-color: var(--fab-background-color);
  border-radius: 0.25rem 0 0 0.25rem;
  writing-mode: vertical-rl;
}
.floating-action-button:hover {
    --fab-background-color: var(--accent-40);

    color: var(--fab-text-color);
    text-decoration: unset;
  }
.floating-action-button svg {
    transform: rotate(90deg) scale(2);
  }
.user-review {
  padding: var(--spacing-small);
  background-color: var(--surface-card-color);
  border-radius: var(--border-radius-medium);
}

/* SAFARI FIX */
.user-review-spotlight .review-score-container > * + * {
  margin-left: 0.5rem;
}

/* END SAFARI FIX */

.user-review-spotlight {
  display: grid;
  gap: var(--spacing-small);
}

.user-review-spotlight .moderation-button.active[score]:not(:disabled) {
    cursor: revert;
  }

:is(.user-review-spotlight .moderation-button.active[score]:not(:disabled)):hover {
      --background-hover-color: var(--background-color);
    }

.user-review-spotlight .user-review-product-thumb {
    margin-inline: auto;
  }

.user-review-spotlight .user-review-name a {
    font-size: var(--font-size-medium);
    line-height: var(--line-height-compact);
    color: var(--text-link-color);
  }

:is(.user-review-spotlight .user-review-name a):hover {
      color: var(--text-link-hover-color);
     }

.user-review-spotlight .btn {
    margin-left: auto;
  }

.user-review-spotlight .related-product {
    margin-block-start: auto;
    font-size: var(--font-size-medium);
    color: var(--text-link-color);
  }

:is(.user-review-spotlight .related-product):hover {
      color: var(--text-link-hover-color)
    }

:is(.user-review-spotlight .related-product) strong {
      pointer-events: none;
    }

.user-review-spotlight .user-review-card {
    display: grid;
    flex-direction: column;
    gap: 1rem;
    padding-block: 1rem;
    padding-inline: 0.5rem;
    background-color: var(--surface-base-color);
    border-radius: var(--border-radius-small);
  }

:is(.user-review-spotlight .user-review-card) .user-review-product-link {
      display: grid;
      justify-self: center;
      width: calc(100% - 1rem);
      height: 9rem;
      padding: 1rem;
      background-color: var(--surface-product-image-background-color);
    }

:is(:is(.user-review-spotlight .user-review-card) .user-review-product-link) img {
        justify-self: center;
        height: 7rem;
        pointer-events: none;
        object-fit: contain;
      }

:is(.user-review-spotlight .user-review-card) > *:not(.user-review-product-link) {
      padding-inline: 0.5rem;
    }

:is(.user-review-spotlight .user-review-card) blockquote {
      line-height: var(--line-height-content);
      color: var(--base-paragraph-text-color);
    }

:is(.user-review-spotlight .user-review-card) blockquote span {
      --line-clamp-lines: 3;
    }

:is(.user-review-spotlight .user-review-card) blockquote span::before {
      content: "\201C";
    }

:is(.user-review-spotlight .user-review-card) blockquote span::after {
      content: "\201D";
    }

.user-review-spotlight .review-score-container {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
  }

:is(.user-review-spotlight .review-score-container) .btn {
      margin-left: auto;
    }

:is(.user-review-spotlight .review-score-container) .comment-counter {
      align-self: flex-end;
    }

:is(:is(.user-review-spotlight .review-score-container) .comment-counter) svg {
        pointer-events: none;
      }

:is(.user-review-spotlight .review-score-container) a.review-score .large {
      pointer-events: none;
    }

:is(.user-review-spotlight twk-star-rating) .icon {
      width: 3rem;
      height: 0.5rem;
    }

@media screen and (min-width: 720px) {
  .user-review-spotlight {
    flex-direction: row;
  }
}
.headlines-head {
  display: flex;
  flex-direction: row;
  align-items: baseline;
  justify-content: space-between;
  padding-block: 0.5rem;
}
.headlines-head .fp-title {
    margin: 0;
  }
.headlines-head .newsSubmit {
    display: flex;
    flex-direction: row;
    gap: 0.125rem;
    align-items: center;
    --tip-icon-fill: var(--text-link-color);
  }

.headline {
  display: grid;
  grid-template-columns: 0.75rem fit-content(2rem) minmax(0, 1fr) 2.125rem;
  gap: 0.5rem;
  align-items: baseline;
  padding-block: 0.325rem;
  border-top: 1px solid var(--border-base-color);
}

.headline--relative {
  position: relative;
}

.headline--day {
  padding-block: 0.5rem;
  margin: 0;
  font-family: var(--font-family-body);
  font-size: var(--font-size-medium);
  font-weight: var(--font-weight-bold);
  color: var(--base-paragraph-text-color);
  border-top: 1px solid var(--border-base-color);
}

.headline--icon .icon {
    --icon-size: 0.75rem;
    --icon-color: var(--icon-category-color-core);

    display: inline-block;
    vertical-align: 2px;
  }

.electronics:is(.headline--icon .icon) {
      --icon-color: var(--icon-category-color-electronics);
    }

.games:is(.headline--icon .icon) {
      --icon-color: var(--icon-category-color-games);
    }

.pro:is(.headline--icon .icon) {
      --icon-color: var(--icon-category-color-pro);
    }

.mobile:is(.headline--icon .icon) {
      --icon-color: var(--icon-category-color-mobile);
    }

.headline--time {
  flex: 0 0 auto;
  min-width: 4.5ch; /* Branded content is shown with an empty time element */
  font-size: var(--font-size-small-plus);
  color: var(--tertiary-paragraph-text-color);
}

.headline--anchor {
  font-size: var(--font-size-listing-title);
  line-height: var(--line-height-medium);
  color: var(--text-link-color);
}

.headline--anchor:hover {
  color: var(--text-link-hover-color)
   }

.headline--anchor:visited {
    color: var(--text-link-visited-color);
  }

.headline--replies .comment-counter {
  display: inline-block;
  font-size: var(--font-size-small);
}

.headline--more {
  font-size: var(--font-size-medium);
  font-weight: var(--font-weight-semibold);
}

.headline--replies {
  margin-block-end: auto;
  margin-inline-start: auto;
}

@media screen and (min-width: 720px) {
  .headline {
    align-items: center;
    padding-block: 0.325rem;
  }

  .headline--replies {
    margin-block-end: initial;
  }

  .headline--replies .comment-counter {
    margin-block-end: 0;
  }
}
.category-bar-item {
  --font-size: var(--font-size-extra-small);

  flex-grow: 0;
  flex-shrink: 0;
  inline-size: 5.25rem;
  font-size: var(--font-size);
  color: var(--base-paragraph-text-color);
  list-style: none;
}
.category-bar-item:hover {
    -webkit-text-decoration: underline;
    text-decoration: underline;
  }
.category-bar-item.last {
    flex-grow: initial;
    flex-shrink: initial;
  }
.category-bar-item.last .last-icon-container {
      display: flex;
      align-items: center;
      block-size: 2.5rem;
    }
:is(.category-bar-item.last .last-icon-container) twk-icon {
        --icon-size: 1.25rem;
        --icon-color: var(--heading-color);

        margin: 0 auto;
      }
.category-bar-item img {
    inline-size: 2.5rem;
    block-size: 2.5rem;
  }
.category-bar-item span {
    width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    color: var(--base-paragraph-text-color);
    white-space: nowrap;
  }

.category-item-link {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.category-item-link:hover {
    color: var(--text-link-hover-color);
    -webkit-text-decoration: underline;
    text-decoration: underline;
  }

.category-bar {
  --fp-title-font-size: var(--font-size-large);

  display: grid;
  grid-template-columns: min-content auto;
  gap: 0.5rem;
  overflow-x: scroll;
  scrollbar-width: none;
}

.category-bar .fp-title {
    font-size: var(--font-size-medium-plus);
    font-weight: var(--font-weight-heading);
  }

:is(.category-bar .fp-title) a > * {
      pointer-events: none;
    }

:is(.category-bar .fp-title) a span {
      display: none;
    }

.category-bar ul[role="menu"] {
    display: grid;
    grid-auto-flow: column;
    gap: 0;
    padding: 0;
    margin: 0;
  }

:is(.category-bar ul[role="menu"])::-webkit-scrollbar {
      display: none;
    }

.category-bar .category-item-link {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: var(--base-paragraph-text-color);
    text-align: center;
    white-space: nowrap;
  }

:is(.category-bar .category-item-link):hover {
      color: var(--text-link-hover-color);
      -webkit-text-decoration: underline;
      text-decoration: underline;
    }

:is(.category-bar .category-item-link) > * {
      pointer-events: none;
    }

@media (prefers-color-scheme: dark) {
    :root:not(.twk-light,.twk-dark) .category-item-link img {
      filter: invert(1);
    }
  }

.twk-dark .category-item-link img {
  filter: invert(1);
}

@media screen and (min-width: 720px) {
  .category-bar {
    overflow: visible;
    scrollbar-width: none;
  }

    .category-bar ul[role="menu"] {
      gap: 0;
      justify-content: space-between;
    }

    .category-bar .category-bar-item:nth-child(n + 8) {
      display: none;
    }

      .last:is(.category-bar .category-bar-item:nth-child(n + 8)) {
        display: block;
      }
}

@media screen and (min-width: 1160px) {
  .category-bar {
    display: grid;
    grid-template-columns: 8rem auto;
    gap: 1rem;
  }

    .category-bar .fp-title a span {
      display: initial;
    }

    .category-bar ul .fp-title {
      display: none;
    }

    .category-bar .category-bar-item:nth-child(-n + 9) {
      display: block;
    }
}

@media screen and (min-width: 1504px) {
  .category-bar {
    gap: 0;
  }

    .category-bar ul[role="menu"] {
      gap: 0.1875rem;
    }

  body:not(.sidebar-open) .category-bar .category-bar-item:nth-child(-n + 15) {
    display: block;
  }
}

@media screen and (min-width: 1848px) {
  .category-bar .category-bar-item:nth-child(-n + 15) {
    display: block;
  }
}
twk-best-buy-guide-block {
  display: grid;
  grid-template-rows: [heading-start] auto [heading-end content-start] 1fr [content-end];
  gap: var(--spacing-small);
  padding: var(--spacing-small);
  line-height: var(--line-height-content);
  background-color: var(--surface-card-color);
  border-radius: var(--border-radius-medium);
}
twk-best-buy-guide-block .bbg-heading h2 {
    margin-block-end: var(--spacing-extra-small);
    font-family: var(--font-family-heading);
    font-size: var(--font-size-large);
    font-weight: var(--font-weight-heading);
  }
twk-best-buy-guide-block .bbg-heading p {
    font-family: var(--font-family-body);
    font-size: var(--font-size-small-plus);
    line-height: var(--line-height-content);
    color: var(--base-paragraph-text-color);
  }
twk-best-buy-guide-block .bbg-list {
    position: relative;
    display: grid;
    grid-template-rows: [content-start] 1fr [content-end];
    grid-template-columns:[content-start] repeat(var(--list-columns, 2), 1fr) [content-end];
    gap: 0.5rem;
    padding-left: 0;
    margin: 0;
  }
twk-best-buy-guide-block .bbg-item {
    cursor: pointer;
    list-style: none;
    background-color: var(--surface-base-color);
    border-radius: var(--border-radius-small);
  }
:is(twk-best-buy-guide-block .bbg-item) > a {
      display: flex;
      flex-direction: column;
      gap: 0;
      align-items: center;
      justify-content: space-between;
      padding: .75rem 0.5rem 1.25rem .5rem;
      pointer-events: none;
    }
:is(:is(twk-best-buy-guide-block .bbg-item) > a) > * {
        pointer-events: none;
      }
twk-best-buy-guide-block .bbg-item-articles {
    position: absolute;
    inset: 0;
    z-index: var(--z-above);
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding: 1rem;
    margin: 0;
    -webkit-text-decoration: none;
    text-decoration: none;
    list-style: none;
    background-color: var(--surface-base-color);
  }
twk-best-buy-guide-block .bbg-item-articles:not(.open) {
    display: none;
  }
twk-best-buy-guide-block .bbg-item-articles .icon {
    --icon-size: 0.75rem;
    --icon-color: var(--base-paragraph-text-color);
    --icon-vertical-align: top;

    position: absolute;
    top: 1rem;
    right: 1rem;
    cursor: pointer;
  }
:is(twk-best-buy-guide-block .bbg-item-articles .icon) * {
      pointer-events: none;
    }
twk-best-buy-guide-block .bbg-item-heading {
    display: flex;
    flex-direction: column;
    gap: 0;
    align-items: center;
    justify-content: space-between;
    font-size: var(--font-size-small);
    color: var(--text-link-color);
    text-align: center;
  }
:is(twk-best-buy-guide-block .bbg-item-heading):hover {
      color: var(--text-link-hover-color);
      -webkit-text-decoration: underline;
      text-decoration: underline;
     }
twk-best-buy-guide-block .bbg-item-count {
    font-size: var(--font-size-small);
    color: var(--tertiary-paragraph-text-color);
  }
twk-best-buy-guide-block .bbg-item img {
    width: 3rem;
    height: 4rem;
  }

@media (prefers-color-scheme: dark) {
    :root:not(.twk-light,.twk-dark) twk-best-buy-guide-block .bbg-item img {
      filter: invert(1);
    }
  }

.twk-dark twk-best-buy-guide-block .bbg-item img {
  filter: invert(1);
}

@media (min-width: 461px) {
  twk-best-buy-guide-block .bbg-list {
    --list-columns: 3;
  }
}
@media screen and (min-width: 1160px) {
    twk-best-buy-guide-block .bbg-list {
        --list-columns: 2;
    }
}
#poll {
  background-color: var(--surface-card-color);
  border-radius: var(--border-radius-medium);
}
#poll h2 {
    font-size: var(--font-size-large-plus);
    font-weight: var(--font-weight-heading);
    color: var(--heading-color);
  }
#poll h3 {
    padding: 0;
    margin-block: 0.5rem;
    font-size: var(--font-size-medium-plus);
    font-weight: var(--font-weight-bold);
  }
#poll > .poll label {
    margin-block: 0.5rem;
  }
#poll .stats {
    color: var(--grey-55);
  }
.promotions {
  overflow: hidden;
  line-height: var(--line-height-content);
  border-radius: var(--border-radius-medium);
}

.promotions--head {
  position: relative;
  display: block;
  line-height: 0;
}

.promotions--head > * {
    pointer-events: none;
  }

.promotions--body {
  padding: var(--spacing-small);
  background: var(--surface-card-color);
}

.promotions--body h2 {
    margin: 0;
    font-size: var(--font-size-large);
    font-weight: var(--font-weight-heading);
    line-height: var(--line-height-heading);
  }

.promotions--body p {
    margin-block: var(--spacing-extra-small);
  }

.promotions--body .footer {
    display: flex;
    flex: 0 1 auto;
  }

.promotions--image {
  width: 100%;
  height: auto;
}
twk-forum-theme {
  --gap-size: var(--spacing-small);

  display: grid;
  grid-auto-rows: min-content;
  gap: var(--gap-size);
  padding: var(--spacing-small);
  background: var(--surface-card-color);
  border-radius: var(--border-radius-medium);
}
twk-forum-theme:nth-child(2) {
    margin-top: 0.5rem;
  }
twk-forum-theme .fp-title {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
twk-forum-theme .theme-image-container {
    display: flex;
    justify-content: center;
    width: 100%;
    height: 6.5rem;
    overflow: hidden;
    border-radius: var(--border-radius-small);
  }
twk-forum-theme .theme-image {
    flex: none;
    width: 100%;
    object-fit: cover;
  }
twk-forum-theme .theme-description {
    --line-clamp-lines: 2;

    margin: 0;
    line-height: var(--line-height-content);
  }
twk-forum-theme .theme-topics {
    display: grid;
    gap: var(--gap-size);
    padding: 0;
    margin: 0;
    list-style: none;
  }
:is(twk-forum-theme .theme-topics) .forum-topic {
      display: grid;
      grid-template-columns: 2.5rem 1fr 2rem;
      gap: var(--spacing-small);
      padding: var(--spacing-small);
      background-color: var(--surface-base-color);
      border-radius: var(--border-radius-small);
    }
:is(:is(twk-forum-theme .theme-topics) .forum-topic) .forum-topic-image {
        width: 2.5rem;
        height: 2.5rem;
        vertical-align: top;
        pointer-events: none;
      }
:is(:is(twk-forum-theme .theme-topics) .forum-topic) .forum-topic-title {
        display: flex;
        flex-direction: column;
        gap: 0.25rem;
        min-width: 0; /* Prevent 'stretching' beyond the parent width */
      }
:is(:is(twk-forum-theme .theme-topics) .forum-topic) .forum-topic-name,:is(:is(twk-forum-theme .theme-topics) .forum-topic) .forum-topic-forum {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
      }
:is(:is(twk-forum-theme .theme-topics) .forum-topic) .forum-topic-forum {
        font-size: var(--font-size-small);
        color: var(--base-paragraph-text-color);
      }
:is(:is(:is(twk-forum-theme .theme-topics) .forum-topic) .forum-topic-forum):hover {
          -webkit-text-decoration: underline;
          text-decoration: underline;
        }
twk-forum-theme .theme-cta {
    display: flex;
    justify-self: end;
    font-size: var(--font-size-small);
    line-height: var(--line-height-small);
  }
:is(twk-forum-theme .theme-cta) .icon {
      --icon-size: 0.5rem;
      --icon-vertical-align: top;

      align-self: center;
      margin-inline-start: 0.25rem;
    }

@media screen and (min-width: 720px) {
  twk-forum-theme:nth-child(2) {
    margin-top: 0;
  }
}
.sponsored-actions {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-extra-small);
  align-self: flex-start;
  padding: var(--spacing-small);
  padding-inline: var(--spacing-medium);
  background-color: var(--surface-card-color);
  border-radius: var(--border-radius-medium);
}
.sponsored-actions p {
    line-height: var(--line-height-content);
  }

.sponsored-actions--list {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 0;
  margin: 0;
  list-style: none;
}

.sponsored-actions--list-item {
  display: flex;
  height: 3rem;
}

.sponsored-actions--list-item__image {
  display: flex;
  flex: none;
  width: 4rem;
  margin-inline-end: 0.5rem;
  background-color: var(--surface-base-color);
}

.sponsored-actions--list-item__image > img {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

.sponsored-actions--list-item__title {
  display: -webkit-box;
  align-self: center;
  overflow: hidden;
  -webkit-line-clamp: 3;
  font-size: var(--font-size-small-plus);
  -webkit-box-orient: vertical;
}

.sponsored-actions--list-item__title:hover {
    -webkit-text-decoration: underline;
    text-decoration: underline;
  }

.sponsored-actions--more {
  margin-inline-start: auto;
  font-size: var(--font-size-small);
}

.sponsored-actions--more:hover {
    -webkit-text-decoration: underline;
    text-decoration: underline;
  }

/** Resets **/
* {
  box-sizing: border-box;
}

figure,
blockquote,
h1,
h2,
h3,
p {
  margin: 0;
}

.line-clamp {
  /* stylelint-disable -- Stylelint disabled for following, as it will auto-'fix' -webkit-box to box, which breaks the intended styling */
  /* Current way to enable line-clamp supported in most modern browsers: https://caniuse.com/css-line-clamp */
  display: -webkit-box;
  -webkit-line-clamp: var(--line-clamp-lines, 3);
  -webkit-box-orient: vertical;
  overflow: hidden;
  line-clamp: var(--line-clamp-lines, 3);
  /* stylelint-enable */
}

.lowercase {
  text-transform: lowercase;
}

.hide-scroll-bar {
  scrollbar-width: none;
}

.hide-scroll-bar::-webkit-scrollbar {
  display: none;
}

.fp-title,
.fp-title-sidebar {
  font-size: var(--font-size-large);
  font-weight: var(--font-weight-heading);
  line-height: var(--line-height-heading);
  color: var(--heading-color);
}

.grid-overrides #contentArea {
    width: auto;
  }

.grid-overrides .pollWrapper {
    padding: var(--spacing-small);
  }

@media screen and (min-width: 720px) {
    .grid-overrides #layout.content-grid {
      grid-column: content;
    }
  }

.grid-overrides .toggleSwitch,.grid-overrides span.closeButton,.grid-overrides .keywordSearch {
    box-sizing: content-box;
  }

.grid-overrides .mainSearchSuggest a {
    color: var(--text-link-color);
  }

.grid-overrides .mainSearchSuggest h4 {
    font-weight: bold;
  }

.grid-overrides.bannersDisabled .headlineItem.nonspot {
    display: none;
  }

.grid-overrides #b_ad,.grid-overrides #b_re {
    margin-bottom: 0;
  }

.grid-overrides time.new {
    font-weight: var(--font-weight-bold);
    color: var(--surface-new-content-time-color);
  }

/** Specificity fix for style rules in _base.scss:34 **/
.useVisitedState a:not(.ctaButton):visited {
  color: var(--text-link-visited-color);
}



