/* mod_fftaktion 1.0.0 — Werbefläche. Abgeleitet aus user.css v45 (.fft-promo). */
.fft-promo{position:relative;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);margin:0 0 1.25rem;min-height:19rem;background:linear-gradient(135deg,#d9472d 0%,var(--cd-red,#CF4128) 45%,#a5331f 100%);color:#fff!important;text-decoration:none!important;overflow:hidden;border-radius:3px;box-shadow:0 10px 28px rgba(165,51,31,.28);isolation:isolate}
.fft-promo::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 12% 110%,rgba(255,196,0,.28),transparent 45%),radial-gradient(circle at 0 0,rgba(255,255,255,.12),transparent 40%)}
.fft-promo__bild{position:relative;grid-column:2;grid-row:1;clip-path:polygon(12% 0,100% 0,100% 100%,0 100%)}
.fft-promo__bild picture,.fft-promo__bild img{display:block;width:100%;height:100%}
.fft-promo__bild img{object-fit:cover;object-position:30% 50%;transform:scale(1.02);transition:transform .6s ease}
.fft-promo:hover .fft-promo__bild img,.fft-promo:focus-visible .fft-promo__bild img{transform:scale(1.07)}
.fft-promo__preis{position:absolute;right:1.25rem;bottom:1.25rem;display:grid;place-items:center;align-content:center;width:7.25rem;height:7.25rem;border-radius:50%;background:#ffd400;color:#7a1d0e;font-size:2.1rem;font-weight:900;line-height:1;text-align:center;box-shadow:0 6px 18px rgba(0,0,0,.35);transform:rotate(-10deg);animation:fft-promo-sticker 5s ease-in-out infinite}
.fft-promo__preis-klein{display:block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin:.15rem 0}
.fft-promo__inhalt{grid-column:1;grid-row:1;display:flex;flex-direction:column;gap:.6rem;padding:1.75rem 1.5rem 1.6rem 1.9rem;min-width:0}
.fft-promo__zeile{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;opacity:.9}
.fft-promo__titel{font-size:clamp(1.45rem,2.6vw,2.15rem);font-weight:800;line-height:1.12;letter-spacing:-.01em}
.fft-promo__text{font-size:1rem;line-height:1.45;max-width:34rem;opacity:.95}
.fft-promo__termine{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.2rem}
.fft-promo__termin{display:grid;gap:.05rem;padding:.55rem .85rem;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.35);border-radius:3px;min-width:8.5rem}
.fft-promo__termin strong{font-size:1.3rem;line-height:1.15}
.fft-promo__termin span{font-size:.9rem}
.fft-promo__art{font-size:.7rem!important;text-transform:uppercase;letter-spacing:.08em;opacity:.85}
.fft-promo__ort{font-size:.88rem;opacity:.9}
.fft-promo__fuss{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-top:auto;padding-top:.35rem}
.fft-promo__knopf{display:inline-flex;gap:.45rem;align-items:center;padding:.7rem 1.2rem;background:#fff;color:var(--cd-red,#CF4128);font-weight:800;border-radius:2px;box-shadow:0 3px 0 rgba(0,0,0,.18)}
.fft-promo__knopf span{display:inline-block;transition:transform .25s ease}
.fft-promo:hover .fft-promo__knopf span,.fft-promo:focus-visible .fft-promo__knopf span{transform:translateX(4px)}
.fft-promo__countdown{display:inline-flex;align-items:center;gap:.45rem;font-size:.88rem;font-weight:700}
.fft-promo__countdown::before{content:"";width:.55rem;height:.55rem;border-radius:50%;background:#ffd400;box-shadow:0 0 0 0 rgba(255,212,0,.7);animation:fft-promo-puls 2s infinite}
.fft-promo__countdown[hidden]{display:none}
.fft-promo:focus-visible{outline:3px solid #000;outline-offset:3px}
@keyframes fft-promo-sticker{0%,80%,100%{transform:rotate(-10deg) scale(1)}86%{transform:rotate(-4deg) scale(1.08)}92%{transform:rotate(-13deg) scale(1.02)}}
@keyframes fft-promo-puls{0%{box-shadow:0 0 0 0 rgba(255,212,0,.7)}70%{box-shadow:0 0 0 .6rem rgba(255,212,0,0)}100%{box-shadow:0 0 0 0 rgba(255,212,0,0)}}
@media (max-width:48rem){
  .fft-promo{grid-template-columns:1fr;min-height:0}
  .fft-promo__bild{grid-column:1;grid-row:1;height:11rem;clip-path:polygon(0 0,100% 0,100% 88%,0 100%)}
  .fft-promo__inhalt{grid-row:2;padding:1.1rem 1.15rem 1.3rem}
  .fft-promo__preis{width:5.6rem;height:5.6rem;font-size:1.6rem;right:.9rem;bottom:1.1rem}
  .fft-promo__termin{flex:1 1 7.5rem;min-width:0}
}
@media (prefers-reduced-motion:reduce){
  .fft-promo__preis,.fft-promo__countdown::before{animation:none}
  .fft-promo__bild img,.fft-promo__knopf span{transition:none}
}
@media print{.fft-promo{box-shadow:none;background:#fff;color:#000!important;border:2px solid #000}.fft-promo__bild{display:none}}
/* ohne Bild und Sticker: eine Spalte */
.fft-promo--ohnebild{grid-template-columns:1fr;min-height:0}
.fft-promo--ohnebild .fft-promo__inhalt{grid-column:1}
/* 1.2.0: ohne Bild bleibt der Sticker sichtbar — Desktop unten rechts, Handy oben rechts */
.fft-promo--ohnebild .fft-promo__bild{position:absolute;inset:0;height:auto;grid-column:auto;grid-row:auto;clip-path:none;pointer-events:none}
@media (min-width:48.01rem){.fft-promo--ohnebild:has(.fft-promo__preis) .fft-promo__inhalt{padding-right:10rem}}
@media (max-width:48rem){
  .fft-promo--ohnebild .fft-promo__preis{top:1rem;bottom:auto;right:.9rem;width:4.6rem;height:4.6rem;font-size:1.25rem}
  .fft-promo--ohnebild:has(.fft-promo__preis) :is(.fft-promo__zeile,.fft-promo__titel){padding-right:5rem}
}
