/** Shopify CDN: Minification failed

Line 157:43 Expected identifier but found whitespace
Line 164:0 Unexpected "@media"
Line 218:1 Expected ")" to go with "("

**/
/* =========================================================
   Custom overrides (safe) – leave base.css untouched
   ========================================================= */

   /* =========================================================
   Global link style – underline text links
   ========================================================= */

.rte a {
  text-decoration: underline;
}

/* Accessibility: Skip-to-content only visible on focus */
.skip-to-content-link {
  position: absolute;
  top: -1000px;
  left: -1000px;
  z-index: 9999;
}

.skip-to-content-link:focus,
.skip-to-content-link:focus-visible {
  top: 12px;
  left: 12px;
  outline: 2px solid currentColor;
  outline-offset: 4px;
}
/* =========================================================
   Footer menu: desktop horizontal with · separator
   ========================================================= */

@media screen and (min-width: 750px) {
  footer accordion-custom.menu .details-content > ul.list-unstyled {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center; /* <-- wenn du links willst: flex-start */
    gap: 0; /* spacing kommt über den Separator */
  }

  /* kill vertical spacing from menu.liquid */
  footer accordion-custom.menu .menu__item + .menu__item {
    margin-block-start: 0;
  }

  /* dot separator */
  footer accordion-custom.menu .menu__item + .menu__item::before {
    content: "·";
    display: inline-block;
    margin: 0 0.6em;
    opacity: 0.7;
  }

  footer accordion-custom.menu .menu__item a {
    white-space: nowrap;
  }
}
.music-platform-links {
  display: flex;
  gap: 14px;
  align-items: center;
  margin-top: 12px;
}

.music-platform-icon {
  width: var(--icon-size-lg);
  height: var(--icon-size-lg);
  display: block;
}

.music-platform-link:hover {
  opacity: 0.8;
}
/* =========================================================
   News / Blog listing: force uniform grid + square images
   (overrides main-blog.liquid dynamic col-span layout)
   ========================================================= */

/* 3 columns desktop */
@media screen and (min-width: 990px) {
  .blog-posts-container {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    column-gap: var(--columns-gap, 36px) !important;
    row-gap: var(--rows-gap, 36px) !important;
  }
}

/* 2 columns tablet */
@media screen and (min-width: 750px) and (max-width: 989px) {
  .blog-posts-container {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* 1 column mobile */
@media screen and (max-width: 749px) {
  .blog-posts-container {
    grid-template-columns: 1fr !important;
  }
}

/* Make every item span exactly 1 column (ignore --col-span) */
.blog-posts-container .blog-post-item {
  grid-column: span 1 !important;
  --col-span: 1; /* just in case something relies on it */
}

/* Remove "horizontal hero" special casing */
.blog-posts-container .blog-post-item--horizontal {
  /* neutralize any horizontal card styling */
  grid-column: span 1 !important;
}

/* Ensure card stacks: image on top, text below */
.blog-posts-container .blog-post-item :is(.blog-post-card, .featured-blog-posts-card, .collection-card) {
  display: flex !important;
  flex-direction: column !important;
}

/* Square image container */
.blog-posts-container .blog-post-item :is(
  .blog-post-card__image-container,
  .blog-post-card__image,
  .card-gallery,
  .media
) {
  aspect-ratio: 1 / 1 !important;
  overflow: hidden !important;
}

/* Make the image cover */
.blog-posts-container .blog-post-item :is(
  .blog-post-card__image-container img,
  .blog-post-card__image img,
  .card-gallery img,
  .media img
) {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/* Optional: keep consistent padding/border behavior */
.blog-posts-container .blog-post-item {
  padding: 0 !important; /* because image cards already remove padding in theme */
  border: none !important;
}

/* If a post has NO image, keep a tidy card */
.blog-posts-container .blog-post-item:not(:

/* =========================================================
   Header logo: mobile should respect the same spacing-style padding
   ========================================================= */

/* 1) Kill any mobile-specific padding reset on the logo link */
@media (max-width: 749px) {
  a.header-logo.spacing-style {
    padding: var(--padding-block-start) var(--padding-inline-end)
      var(--padding-block-end) var(--padding-inline-start) !important;
  }
}

/* 2) If the missing space is actually coming from the header row/columns,
      force consistent vertical padding for the whole header area on mobile */
@media (max-width: 749px) {
  header-component .header__columns.spacing-style {
    padding-block: var(--padding-block-start) var(--padding-block-end) !important;
  }
}
/* Horizon Predictive Search: Gesamtbreite erhöhen */
predictive-search-component.predictive-search {
  width: min(1100px, 92vw) !important;
  max-width: 92vw !important;
}

/* Der eigentliche Breitenbegrenzer ist der .container */
predictive-search-component .container,
.predictive-search-results__inner.container {
  max-width: 100% !important;
  width: 100% !important;
  padding-left: 24px;
  padding-right: 24px;
}

/* optional: noch breiter möglich */
@media (min-width: 1200px) {
  predictive-search-component.predictive-search {
    width: 1200px !important;
  }
}
.predictive-search-results__list {
  grid-template-columns: repeat(6, 1fr);
  gap: 18px;
}

@media (max-width: 900px) {
  .predictive-search-results__list {
    grid-template-columns: repeat(3, 1fr);
  }
}
/* =========================================================
   Marquee / Press ticker: increase text size
   ========================================================= */

.marquee-component .marquee_repeated-items {
  font-size: calc(var(--font-body-size) * 1.4);
  letter-spacing: 0.03em;
  font-style: italic;
  opacity: 0.9;
}