/** Shopify CDN: Minification failed

Line 7:29 Unexpected "-"

**/
* ═══════════════════════════════════════════════════════════════════
   MC Collection Header Grid - Stylesheet (Production Optimiert)
   Version: 3.1 | Mit Verfügbarkeits-Fix
   ═══════════════════════════════════════════════════════════════════ */

/* === STATISCHE DEFAULTS (nur einmal definiert) === */
:root {
  --mc-gap-xs: 0.5rem;
  --mc-gap-sm: 0.75rem;
  --mc-gap-md: 1rem;
  --mc-gap-lg: 1.5rem;
  --mc-gap-xl: 2rem;
}

/* === CONTAINER === */
.mc-collection-header-grid {
  box-sizing: border-box;
  padding: 0 1.25rem;
}

@media (max-width: 749px) {
  .mc-collection-header-grid {
    padding: 0 1rem;
  }
}

/* === HEADER OUTER === */
.khu__outer {
  width: 100%;
  max-width: var(--khu-width);
  margin: 0 auto;
}

/* === BREADCRUMB === */
.khu__breadcrumb {
  margin: var(--bc-mt) 0 var(--bc-mb);
  text-align: left;
}

.khu__breadcrumb-list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.35rem 0.5rem;
}

.khu__breadcrumb-item {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
}

.khu__chip {
  display: inline-flex;
  align-items: center;
  background: var(--khu-bc);
  color: var(--khu-bc-text);
  border-radius: 999px;
  padding: 0.22rem 0.55rem;
  font-size: 10px;
  line-height: 1.1;
  font-weight: 600;
  text-decoration: none;
  white-space: nowrap;
  transition: opacity 0.15s, transform 0.15s;
  opacity: 0.92;
}

.khu__chip:hover {
  opacity: 1;
  transform: translateY(-1px);
  will-change: transform;
}

.khu__sep {
  color: var(--khu-bc);
  font-weight: 700;
  padding: 0 0.15rem;
}

.khu__sep::before {
  content: var(--khu-bc-sep);
}

@media (max-width: 520px) {
  .khu__breadcrumb-list {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .khu__breadcrumb-item:not(:first-child):not(:last-child) {
    display: none;
  }
  .khu__breadcrumb-item:first-child + .khu__breadcrumb-item .khu__sep::before {
    content: "…";
  }
}

/* === HEADER MEDIA === */
.khu__media {
  position: relative;
  width: 100%;
  height: var(--khu-height);
  overflow: hidden;
  border-radius: var(--khu-radius);
  aspect-ratio: var(--khu-aspect);
  contain: layout style paint;
}

@media (max-width: 749px) {
  .khu__media {
    height: var(--khu-height-m);
    border-radius: var(--khu-radius-mobile);
  }
}

.khu__img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.khu__overlay {
  position: absolute;
  inset: 0;
}

.khu__overlay::before {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--khu-ovl-color);
  opacity: calc(var(--khu-ovl-op) / 100);
  pointer-events: none;
}

.khu__text {
  position: absolute;
  transform: translate(var(--tx, 0), var(--ty, 0));
  padding: 1rem;
  max-width: min(99%, 1800px);
}

@media (max-width: 749px) {
  .khu__text {
    padding: 0.75rem 1rem;
  }
}

/* === H1 TITEL === */
.khu__title {
  margin: 0 !important;
  line-height: 1.15 !important;
  color: var(--khu-color) !important;
  text-shadow: var(--khu-ts) !important;
  font-size: var(--khu-title-fs-desktop) !important;
  font-weight: var(--khu-title-weight) !important;
  max-width: var(--khu-title-maxwidth-d) !important;
}

@media (max-width: 749px) {
  .khu__title {
    font-size: var(--khu-title-fs-mobile) !important;
    line-height: 1.2 !important;
    max-width: var(--khu-title-maxwidth-m) !important;
  }
}

/* === NO IMAGE BOX === */
.khu__noimg {
  max-width: var(--khu-width);
  margin: 0 auto;
}

.khu__noimg-inner {
  border: var(--noimg-border-width) solid var(--noimg-border-color);
  border-radius: var(--noimg-radius);
  background: var(--noimg-bg);
  padding: var(--noimg-pad-y) var(--noimg-pad-x);
}

.khu__title--noimg {
  text-shadow: var(--khu-ts-noimg) !important;
}

/* === ALIGNMENT === */
.khu__text--v-top { top: 1.25rem; --ty: 0; }
.khu__text--v-middle { top: 50%; --ty: -50%; }
.khu__text--v-bottom { bottom: 1.25rem; --ty: 0; }
.khu__text--h-left { left: 1.25rem; text-align: left; }
.khu__text--h-center { left: 50%; --tx: -50%; text-align: center; }
.khu__text--h-right { right: 1.25rem; text-align: right; }

/* === RASTER SECTION === */
#shopify-section-category-produktraster-mc {
  width: 100%;
  margin-top: var(--header_to_desc_space);
}

.mc-wrap {
  width: 100%;
  max-width: var(--max-width);
  margin: 0 auto;
}

/* === BESCHREIBUNG === */
.mc-desc {
  max-width: min(var(--desc-max-width), var(--max-width));
  margin: 0 auto var(--desc-space);
  color: var(--desc-color);
}

.mc-desc, .mc-desc * {
  color: var(--desc-color);
}

.mc-desc p, .mc-desc li, .mc-desc span, .mc-desc strong, .mc-desc em {
  line-height: 1.45 !important;
  margin-bottom: 0.5em !important;
}

.mc-desc h2 {
  font-size: var(--h2-fs-m) !important;
  font-weight: var(--h2-weight) !important;
  line-height: 1.25 !important;
  margin: 0.5em 0 0.35em !important;
}

.mc-desc h3 {
  font-size: var(--h3-fs-m) !important;
  font-weight: var(--h3-weight) !important;
  line-height: 1.25 !important;
  margin: 0.5em 0 0.35em !important;
}

@media (min-width: 768px) {
  .mc-desc h2 { font-size: var(--h2-fs-d) !important; }
  .mc-desc h3 { font-size: var(--h3-fs-d) !important; }
}

/* === DESCRIPTION TOGGLE === */
@media (max-width: 749px) {
  .mc-desc--clamp:not(.is-expanded) {
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
  .mc-desc-toggle {
    display: inline-flex;
    margin: 0.2rem 0 0.9rem;
    padding: 0.25rem 0;
    border: none;
    background: none;
    font: inherit;
    color: var(--desc-color);
    text-decoration: underline;
    cursor: pointer;
  }
}

@media (min-width: 750px) {
  .mc-desc-toggle { display: none; }
}

/* === GRID === */
.mc-grid {
  display: grid;
  grid-template-columns: repeat(var(--cols-mobile), minmax(0, 1fr));
  gap: var(--gap);
}

@media (min-width: 768px) {
  .mc-grid {
    grid-template-columns: repeat(var(--cols-desktop), minmax(0, 1fr));
  }
}

/* === KARTE === */
.mc-card {
  display: flex;
  flex-direction: column;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 12px;
  background: #fff;
  padding: var(--inner-pad);
  height: 100%;
  transition: transform 0.18s, box-shadow 0.18s;
}

.mc-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 22px rgba(0, 0, 0, 0.08);
  will-change: transform;
}

.mc-card-inner {
  display: flex;
  flex-direction: column;
  height: 100%;
}

/* === PRODUKTBILD === */
.mc-imgwrap {
  position: relative;
  display: block;
  background: #f7f7f7;
  overflow: hidden;
  border-radius: 10px;
  aspect-ratio: var(--mc-img-aspect);
}

.mc-imgwrap img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* === BADGE === */
.mc-badge {
  position: absolute;
  left: 10px;
  bottom: 10px;
  z-index: 2;
  background: var(--badge-bg);
  color: var(--badge-color);
  font-size: var(--badge-fs);
  padding: var(--badge-pad-y) var(--badge-pad-x);
  border-radius: 0.4rem;
  font-weight: 600;
  white-space: nowrap;
}

/* === BODY === */
.mc-body {
  padding: 0.9rem;
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
}

/* === TITEL === */
.mc-title, h3.mc-title, .mc-title a {
  font-size: var(--title-fs);
  line-height: 1.15 !important;
  margin: 0 0 0.2em !important;
  text-decoration: none;
  color: inherit;
}

.mc-title a {
  display: block;
}

/* === PREIS === */
.mc-price-wrapper {
  margin-top: auto;
  display: flex;
  flex-direction: column;
}

.mc-price-area {
  padding: calc(var(--price-area-pad-top) * 1px) 0 calc(var(--price-area-pad-bottom) * 1px);
  min-height: 4.4em;
}

.mc-price-label {
  font-size: var(--price-label-fs);
  font-weight: 600;
  margin: 0 0 0.2rem;
  color: var(--price-label-color);
}

.mc-price-row {
  display: flex;
  align-items: baseline;
  gap: 0.4rem;
}

.mc-now {
  font-size: var(--price-fs);
  font-weight: 700;
}

.mc-compare {
  font-size: var(--compare-fs);
  color: var(--compare-color);
  text-decoration: line-through;
  opacity: 0.8;
}

.mc-unitprice {
  font-size: var(--unit-fs);
  color: var(--unit-color);
}

/* === VERFÜGBARKEIT (FIX: Breite passt sich Inhalt an) === */
.mc-availability {
  margin-top: var(--availability-margin-top);
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  width: fit-content;
  gap: 0.4rem;
  padding: 4px 10px;
  border-radius: 999px;
  border: 1px solid currentColor;
  font-size: 12px;
  font-weight: 600;
}

.mc-availability-dot {
  width: 0.55rem;
  height: 0.55rem;
  border-radius: 999px;
  background: currentColor;
  flex-shrink: 0;
}

.mc-availability-text {
  white-space: nowrap;
}

.mc-availability--in { color: var(--availability-in-color); }
.mc-availability--out { color: var(--availability-out-color); }

/* === PAGINATION === */
.mc-paginate {
  display: flex;
  gap: 0.5rem;
  justify-content: center;
  margin-top: 1.25rem;
}

.mc-paginate a, .mc-paginate span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 2.25rem;
  min-width: 2.25rem;
  padding: 0 0.65rem;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 0.5rem;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: border-color 0.15s, box-shadow 0.15s;
}

.mc-paginate .is-current {
  border-color: rgba(0, 0, 0, 0.5);
  font-weight: 600;
}

.mc-paginate a:hover {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

/* === PRINT === */
@media print {
  .mc-collection-header-grid {
    padding: 0 !important;
  }
  
  .mc-card {
    break-inside: avoid;
    box-shadow: none !important;
    border: 1px solid #ccc !important;
  }
  
  .mc-card:hover {
    transform: none !important;
  }
}

/* === REDUCED MOTION === */
@media (prefers-reduced-motion: reduce) {
  .mc-card,
  .khu__chip {
    transition: none;
  }
  
  .mc-card:hover,
  .khu__chip:hover {
    transform: none;
  }
}