/*
 * w1w24.de - Affiliate-Produktbox (Pack 60)
 * Programmierung & Umsetzung: W. Welz | Copyright (c) W. Welz, w1w24.de
 */

.aff-box {
  margin: 44px 0 8px;
  border: 1px solid var(--line, #e7ded2);
  border-radius: var(--radius-lg, 10px);
  background: #ffffff;
  overflow: hidden;
}

.aff-box__head {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 18px;
  border-bottom: 1px solid var(--line-soft, #f0e9dd);
  background: var(--yellow-soft, #fff0df);
  font-family: var(--serif-stack, Georgia, serif);
  font-size: 19px;
  font-weight: 700;
  color: var(--ink-2, #1a1a1a);
}

.aff-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 14px;
  padding: 18px;
}

.aff-card {
  border: 1px solid var(--line, #e7ded2);
  border-radius: var(--radius-md, 6px);
  background: #fff;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.aff-card__body {
  padding: 14px 15px;
  display: flex;
  flex-direction: column;
  flex: 1;
}

.aff-card__title {
  font-family: var(--sans-stack, system-ui, sans-serif);
  font-size: 15.5px;
  font-weight: 600;
  line-height: 1.3;
  margin: 0 0 5px;
  color: var(--text, #252525);
}

.aff-card__desc {
  font-size: 13.5px;
  color: var(--muted, #666);
  line-height: 1.45;
  margin: 0;
  flex: 1;
}

.aff-box a.aff-card__btn,
.aff-box a.aff-card__btn:link,
.aff-box a.aff-card__btn:visited {
  margin-top: 13px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  background: var(--orange, #e66f00);
  color: #fff;
  text-decoration: none;
  font-size: 13.5px;
  font-weight: 600;
  padding: 9px 12px;
  border-radius: var(--radius-md, 6px);
  transition: background 0.15s ease;
}

.aff-box a.aff-card__btn:hover,
.aff-box a.aff-card__btn:focus {
  background: var(--orange-warm, #ea580c);
  color: #fff;
  text-decoration: none;
}

.aff-box__note {
  margin: 0;
  padding: 11px 18px;
  border-top: 1px solid var(--line-soft, #f0e9dd);
  background: var(--cream-soft, #fffaf3);
  font-size: 12px;
  color: var(--muted-2, #888);
  line-height: 1.45;
}

@media (max-width: 540px) {
  .aff-grid { grid-template-columns: 1fr 1fr; gap: 10px; padding: 14px; }
  .aff-box__head { font-size: 17px; }
}

@media (max-width: 380px) {
  .aff-grid { grid-template-columns: 1fr; }
}

/* --- Pack 64: Produktbilder --------------------------------------- */

.aff-card__imgwrap {
  display: block;
  aspect-ratio: 4 / 3;
  background: #ffffff;
  border-bottom: 1px solid var(--line-soft, #f0e9dd);
  overflow: hidden;
}

.aff-card__img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 10px;
  box-sizing: border-box;
  display: block;
  transition: transform 0.18s ease;
}

.aff-card:hover .aff-card__img {
  transform: scale(1.04);
}

@media (max-width: 540px) {
  .aff-card__img { padding: 6px; }
}
