/* Adventskalender (31.10.2026) – im Stil der Aktions-Grafik (Story „Willkommen“): Tassenfoto auf Petrol/Weiß,
   runder Badge, weiße Karte mit runden Ecken, Nunito, hellpetrol Zeilen, Pillen-Knopf – weihnachtlich ergänzt */
@font-face { font-family: 'Nunito'; font-weight: 600; font-display: swap; src: url('fonts/nunito-600.woff2') format('woff2'); }
@font-face { font-family: 'Nunito'; font-weight: 800; font-display: swap; src: url('fonts/nunito-800.woff2') format('woff2'); }

.adv, .adv-dialog, .adv-toast {
  --adv-teal: #0097a7;
  --adv-teal-d: #00707c;
  --adv-hell: #e3f4f6;
  --adv-gold: #f2b705;
  --adv-rot: #d6413a;
  --adv-navy: #2c3e66;
  --adv-text: #111;
  --adv-grau: #4a4a4a;
  --adv-leise: #6b7380;
  font-family: 'Nunito', var(--font-body, Arial), sans-serif;
}
.adv { background: #eef7f8; padding: 28px 16px 0; }

/* Foto ohne Konfetti, auf die Tasse zugeschnitten (images/aktionen/advent-tasse.jpg, 800×760) */
/* Kopfzeile der Karte: Überschrift links, Tasse mit Mütze und Hinweis rechts */
.adv-kopfzeile { display: flex; align-items: center; justify-content: space-between; gap: 48px; margin: 0 0 30px; text-align: left; }
.adv-kopf-text { flex: 1; min-width: 0; }
.adv-foto { position: relative; flex-shrink: 0; height: 270px; aspect-ratio: 800 / 760; margin-right: 10px; }
.adv-foto img { display: block; width: 100%; height: 100%; border-radius: 28px; box-shadow: 0 10px 28px rgba(0, 82, 91, .18); }
.adv-deko { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.adv-flocken use { animation: adv-flocke 6s ease-in-out infinite; transform-box: fill-box; transform-origin: center; }
.adv-flocken use:nth-child(2n) { animation-duration: 8s; animation-delay: -2s; }
.adv-flocken use:nth-child(3n) { animation-duration: 7s; animation-delay: -4s; }
@keyframes adv-flocke { 0%, 100% { transform: translateY(0) rotate(0); } 50% { transform: translateY(14px) rotate(30deg); } }

.adv-badge {
  position: absolute; left: -58px; bottom: 4%; width: 124px; aspect-ratio: 1; border-radius: 50%;
  background: var(--adv-teal); box-shadow: 0 0 0 7px #fff, 0 12px 28px rgba(0, 0, 0, .22);
  color: #fff; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center;
  transform: rotate(-8deg); font-weight: 800; text-transform: uppercase; line-height: 1;
}
.adv-badge-klein { font-size: 11.5px; letter-spacing: .02em; max-width: 82%; }
.adv-badge-gross { font-size: 40px; margin: 3px 0; }

/* ── Weiße Karte ── */
.adv-karte-haupt {
  position: relative; max-width: 1040px; margin: 0 auto; background: #fff;
  border-radius: 40px 40px 0 0; padding: 40px 48px 48px; text-align: center;
  box-shadow: 0 -4px 30px rgba(0, 82, 91, .10);
}
.adv-karte-haupt h1 {
  margin: 0 0 10px; font-size: clamp(28px, 5vw, 46px); font-weight: 800; line-height: 1.1;
  text-transform: uppercase; color: var(--adv-text); letter-spacing: .01em;
}
.adv-lead { margin: 0 0 20px; max-width: 640px; font-size: 19px; font-weight: 600; line-height: 1.45; color: var(--adv-grau); }
.adv-karte-haupt h2 {
  margin: 38px 0 14px; font-size: 26px; font-weight: 800; text-transform: uppercase; color: var(--adv-text);
}
.adv-pille {
  display: inline-flex; align-items: center; gap: 10px; margin: 0; padding: 13px 26px; border-radius: 999px;
  background: var(--adv-teal); color: #fff; font-size: 17px; font-weight: 800; line-height: 1.35;
}
.adv-pille a { color: #fff; text-decoration: underline; }
.adv-pille--hell { background: var(--adv-hell); color: var(--adv-teal-d); }
.adv-pille--hell a { color: var(--adv-teal-d); }
.adv-pille--test { background: #fff3cd; color: #7a5a00; }

/* ── Türchen: hellpetrol Kacheln mit weißer Tasse ── */
.adv-brett { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 14px; }
.adv-tuer {
  --becher: #fff; --rand: var(--adv-teal); --nr: var(--adv-teal-d);
  position: relative; display: block; width: 100%; aspect-ratio: 1 / 1.05; padding: 0; border: 0;
  background: var(--adv-hell); border-radius: 18px; cursor: pointer; font-family: inherit;
  transition: transform .15s ease, box-shadow .15s ease;
  -webkit-tap-highlight-color: transparent;
}
.adv-tuer:hover { transform: translateY(-2px); box-shadow: 0 8px 18px rgba(0, 112, 124, .15); }
.adv-tuer:focus-visible { outline: 3px solid var(--adv-gold); outline-offset: 2px; }
.adv-becher { position: absolute; left: 2%; top: 3%; width: 96%; height: 82%; overflow: visible; }
.adv-b-korpus { fill: url(#advKorpus); }
.adv-b-schatten { fill: rgba(0, 60, 70, .14); }
.adv-plakette { fill: var(--adv-teal); }
.adv-tuer.is-24 .adv-plakette { fill: var(--adv-rot); }
.adv-nr {
  position: absolute; left: 46.6%; top: 48.1%; transform: translate(-50%, -50%); text-align: center;
  font-size: clamp(13px, 2.3vw, 24px); font-weight: 800; line-height: 1; color: #fff; white-space: nowrap;
}
.adv-sub {
  position: absolute; left: 0; right: 0; bottom: 6%; text-align: center;
  font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; color: var(--adv-teal-d);
}

/* heute: Petrol-Kachel, Tasse mit Weihnachtsmütze */
.adv-tuer.is-heute { background: var(--adv-teal); box-shadow: 0 0 0 4px #fff, 0 0 0 7px var(--adv-gold); animation: adv-puls 2.2s ease-in-out infinite; }
.adv-tuer.is-heute .adv-sub { color: #fff; }
.adv-tuer.is-heute .adv-plakette { fill: var(--adv-rot); }
.adv-tuer.is-heute .adv-b-schatten { fill: rgba(0, 0, 0, .22); }
@keyframes adv-puls { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.04); } }
.adv-muetze-klein { transform-box: fill-box; transform-origin: 30% 100%; animation: adv-wippen 2.2s ease-in-out infinite; }
@keyframes adv-wippen { 0%, 100% { transform: rotate(0); } 50% { transform: rotate(-6deg); } }

/* geöffnet: goldene Tasse, Inhalt steht auf dem Becher */
.adv-tuer.is-offen { background: var(--adv-teal-d); }
.adv-tuer.is-offen .adv-b-korpus { fill: url(#advKorpusGold); }
.adv-tuer.is-offen .adv-b-schatten { fill: rgba(0, 0, 0, .25); }
.adv-tuer.is-offen .adv-nr { color: var(--adv-teal-d); font-size: clamp(11px, 1.9vw, 20px); }
.adv-tuer.is-offen .adv-sub { color: #fff; }

/* vorbei: blasse Tasse */
.adv-tuer.is-vorbei { background: #eef0f2; cursor: default; }
.adv-tuer.is-vorbei .adv-becher { opacity: .55; filter: grayscale(1); }
.adv-tuer.is-vorbei .adv-nr { color: #fff; }
.adv-tuer.is-vorbei .adv-plakette { fill: #9aa3ab; }
.adv-tuer.is-vorbei .adv-sub { color: #a3a9b0; }
.adv-tuer.is-vorbei:hover { transform: none; box-shadow: none; }

.adv-tuer.laedt { opacity: .6; pointer-events: none; }
.adv-tuer.wackelt { animation: adv-wackeln .45s ease; }
@keyframes adv-wackeln { 0% { transform: scale(1); } 30% { transform: scale(1.12) rotate(-6deg); } 60% { transform: scale(1.06) rotate(5deg); } 100% { transform: scale(1); } }
.adv-tuer.zittert { animation: adv-zittern .35s ease; }
@keyframes adv-zittern { 20%, 60% { transform: translateX(-4px); } 40%, 80% { transform: translateX(4px); } }

/* ── Zeilen wie die Staffel der Aktions-Grafik ── */
.adv-zeilen { list-style: none; margin: 0 auto; padding: 0; max-width: 760px; display: grid; gap: 10px; text-align: left; }
.adv-zeilen li {
  display: grid; grid-template-columns: 96px minmax(0, 1fr) auto; gap: 12px; align-items: center;
  background: var(--adv-hell); border-radius: 14px; padding: 14px 22px;
}
.adv-z-links { font-size: 24px; font-weight: 800; color: var(--adv-teal-d); white-space: nowrap; }
.adv-z-text strong { display: block; font-size: 18px; font-weight: 800; color: #333; }
.adv-z-text small { display: block; font-size: 15px; font-weight: 600; color: var(--adv-grau); }
.adv-z-rechts { font-weight: 800; color: var(--adv-leise); }
.adv-z-rechts a { color: var(--adv-teal); }
.adv-meine li.ist-eingeloest, .adv-meine li.ist-abgelaufen { opacity: .5; }
ol.adv-zeilen li { grid-template-columns: 56px minmax(0, 1fr); }

.adv-cta {
  display: block; max-width: 760px; margin: 26px auto 0; padding: 16px 20px; border-radius: 999px;
  background: var(--adv-teal); color: #fff; font-size: 26px; font-weight: 800; text-decoration: none;
}
.adv-cta:hover { background: var(--adv-teal-d); color: #fff; }
.adv-fuss { margin: 14px 0 0; color: var(--adv-leise); font-weight: 600; font-size: 15px; }

/* ── Fenster hinter dem Türchen ── */
.adv-dialog { position: fixed; inset: 0; z-index: 10050; display: flex; align-items: center; justify-content: center; padding: 16px; }
.adv-dialog[hidden] { display: none; }
.adv-dialog-bg { position: absolute; inset: 0; background: rgba(0, 40, 45, .55); opacity: 0; transition: opacity .2s ease; }
.adv-karte {
  position: relative; width: 100%; max-width: 440px; max-height: calc(100vh - 32px); overflow: auto;
  background: #fff; border-radius: 28px; box-shadow: 0 20px 50px rgba(0, 0, 0, .3);
  transform: scale(.9) translateY(10px); opacity: 0; transition: transform .22s ease, opacity .22s ease;
}
.adv-dialog.auf .adv-dialog-bg { opacity: 1; }
.adv-dialog.auf .adv-karte { transform: none; opacity: 1; }
.adv-x {
  position: absolute; top: 12px; right: 12px; width: 36px; height: 36px; border: 0; border-radius: 50%;
  background: rgba(255, 255, 255, .25); color: #fff; font-size: 18px; cursor: pointer;
}
.adv-k-kopf {
  background: linear-gradient(110deg, var(--adv-teal) 62%, var(--adv-teal-d) 62%); color: #fff;
  padding: 24px 58px 22px 24px; text-align: left;
}
.adv-k-kopf span { display: block; font-size: 14px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: #fff; opacity: .85; margin-bottom: 4px; }
.adv-k-kopf strong { display: block; font-size: 28px; font-weight: 800; line-height: 1.12; text-transform: uppercase; }
.adv-k-body { padding: 20px 24px 24px; color: var(--adv-grau); font-size: 17px; font-weight: 600; line-height: 1.45; text-align: left; }
.adv-k-body p { margin: 0 0 12px; }
.adv-k-zusatz { color: var(--adv-teal-d); font-weight: 800; }
.adv-k-code {
  display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2px 12px; align-items: center;
  border-radius: 14px; padding: 12px 16px; margin: 6px 0 12px; background: var(--adv-hell);
}
.adv-k-code span { grid-column: 1; font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; color: var(--adv-leise); }
.adv-k-code strong { grid-column: 1; font-size: 22px; font-weight: 800; letter-spacing: .04em; color: var(--adv-teal-d); word-break: break-all; }
.adv-k-kopie {
  grid-column: 2; grid-row: 1 / span 2; border: 0; border-radius: 999px; padding: 10px 14px;
  background: var(--adv-teal); color: #fff; font-family: inherit; font-weight: 800; font-size: 14px; cursor: pointer; white-space: nowrap;
}
.adv-k-hinweis { color: #9a3412; font-weight: 800; }
.adv-k-bed { margin: 0 0 18px; padding-left: 18px; font-size: 14px; color: var(--adv-leise); }
.adv-k-bed li { margin: 2px 0; }
.adv-k-knoepfe { display: flex; flex-direction: column; gap: 10px; }
.adv-k-btn {
  display: block; text-align: center; padding: 14px 16px; border-radius: 999px; font-weight: 800; font-size: 17px;
  background: var(--adv-teal); color: #fff; text-decoration: none;
}
.adv-k-btn:hover { background: var(--adv-teal-d); color: #fff; }
.adv-k-btn--zwei { background: var(--adv-hell); color: var(--adv-teal-d); }
.adv-k-btn--zwei:hover { background: #d3edf0; color: var(--adv-teal-d); }

.adv-toast {
  position: fixed; left: 50%; bottom: 24px; z-index: 10060; transform: translate(-50%, 20px); opacity: 0;
  max-width: calc(100% - 32px); padding: 12px 20px; border-radius: 999px; background: var(--adv-teal-d); color: #fff;
  font-size: 15px; font-weight: 800; text-align: center; pointer-events: none; transition: opacity .2s ease, transform .2s ease;
}
.adv-toast.zeigen { opacity: 1; transform: translate(-50%, 0); }

/* ── Handy ── */
@media (max-width: 760px) {
  .adv { padding: 14px 8px 0; }
  .adv-kopfzeile { display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "titel foto" "lead foto" "pille pille"; gap: 8px 12px; margin-bottom: 20px; }
  .adv-kopf-text { display: contents; }
  .adv-kopfzeile h1 { grid-area: titel; font-size: 24px; margin: 0; align-self: end; }
  .adv-kopfzeile .adv-lead { grid-area: lead; align-self: start; }
  .adv-kopfzeile .adv-pille { grid-area: pille; justify-self: center; margin-top: 6px; }
  .adv-foto { grid-area: foto; width: 120px; height: auto; margin: 0 2px 0 0; align-self: center; }
  .adv-foto img { border-radius: 18px; }
  .adv-badge { left: -24px; bottom: -6%; width: 66px; box-shadow: 0 0 0 3px #fff, 0 6px 14px rgba(0, 0, 0, .22); }
  .adv-badge-klein { font-size: 6.5px; }
  .adv-badge-gross { font-size: 21px; margin: 1px 0; }
  .adv-karte-haupt { border-radius: 28px 28px 0 0; padding: 22px 12px 36px; }
  .adv-lead { font-size: 14.5px; margin: 0; }
  .adv-pille { font-size: 14.5px; padding: 11px 18px; }
  .adv-brett { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
  .adv-tuer { border-radius: 14px; }
  .adv-sub { font-size: 9.5px; }
  .adv-karte-haupt h2 { font-size: 21px; margin-top: 30px; }
  .adv-zeilen li { grid-template-columns: 64px minmax(0, 1fr); padding: 12px 14px; }
  ol.adv-zeilen li { grid-template-columns: 34px minmax(0, 1fr); }
  .adv-z-links { font-size: 19px; }
  .adv-z-text strong { font-size: 16px; }
  .adv-z-text small { font-size: 13.5px; }
  .adv-z-rechts { grid-column: 2; }
  .adv-cta { font-size: 21px; padding: 14px; }
  .adv-k-kopf strong { font-size: 24px; }
  .adv-k-code strong { font-size: 17px; white-space: nowrap; word-break: normal; }
  .adv-k-code { padding: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  .adv-flocken use, .adv-tuer.is-heute, .adv-muetze-klein, .adv-tuer.wackelt, .adv-tuer.zittert { animation: none; }
}

/* ── Weihnachtlicher Rahmen der Türchen (31.10.2026): Schneekappe oben, Goldlinie, Tannengrün / Mistel / Stechpalme ── */
.adv, .adv-dialog {
  --adv-schnee: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 22' preserveAspectRatio='none'%3E%3Cpath d='M0 0H100V9C96 13 92 9 88 14C85 18 82 11 78 12C72 13 69 9 63 13C59 16 57 20 53 15C49 10 44 13 39 11C33 9 30 15 25 13C21 11 17 17 12 12C8 8 4 12 0 10Z' fill='%23fff'/%3E%3Cpath d='M0 9.5C4 12 8 8 12 12C17 17 21 11 25 13C30 15 33 9 39 11C44 13 49 10 53 15C57 20 59 16 63 13C69 9 72 13 78 12C82 11 85 18 88 14C92 9 96 13 100 9' fill='none' stroke='%23d5e6ea' stroke-width='.8'/%3E%3C/svg%3E");
  --adv-tanne: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60'%3E%3Cpath d='M4 56L52 8' stroke='%236b4423' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M9.7 50.3L6.4 38.3' stroke='%232f8a4c' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M9.7 50.3L0.0 47.7' stroke='%232f8a4c' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M9.7 50.3L21.7 53.6' stroke='%232f8a4c' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M9.7 50.3L12.3 60.0' stroke='%232f8a4c' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M13.3 46.7L10.2 35.1' stroke='%231f6b3a' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M13.3 46.7L4.1 44.2' stroke='%231f6b3a' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M13.3 46.7L24.9 49.8' stroke='%231f6b3a' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M13.3 46.7L15.8 55.9' stroke='%231f6b3a' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M17.0 43.0L14.0 31.9' stroke='%232f8a4c' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M17.0 43.0L8.1 40.6' stroke='%232f8a4c' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M17.0 43.0L28.1 46.0' stroke='%232f8a4c' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M17.0 43.0L19.4 51.9' stroke='%232f8a4c' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M20.7 39.3L17.8 28.7' stroke='%231f6b3a' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M20.7 39.3L12.2 37.1' stroke='%231f6b3a' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M20.7 39.3L31.3 42.2' stroke='%231f6b3a' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M20.7 39.3L22.9 47.8' stroke='%231f6b3a' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M24.3 35.7L21.6 25.5' stroke='%232f8a4c' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M24.3 35.7L16.2 33.5' stroke='%232f8a4c' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M24.3 35.7L34.5 38.4' stroke='%232f8a4c' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M24.3 35.7L26.5 43.8' stroke='%232f8a4c' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M28.0 32.0L25.4 22.3' stroke='%231f6b3a' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M28.0 32.0L20.3 29.9' stroke='%231f6b3a' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M28.0 32.0L37.7 34.6' stroke='%231f6b3a' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M28.0 32.0L30.1 39.7' stroke='%231f6b3a' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M31.7 28.3L29.2 19.2' stroke='%232f8a4c' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M31.7 28.3L24.3 26.4' stroke='%232f8a4c' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M31.7 28.3L40.8 30.8' stroke='%232f8a4c' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M31.7 28.3L33.6 35.7' stroke='%232f8a4c' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M35.3 24.7L33.0 16.0' stroke='%231f6b3a' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M35.3 24.7L28.4 22.8' stroke='%231f6b3a' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M35.3 24.7L44.0 27.0' stroke='%231f6b3a' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M35.3 24.7L37.2 31.6' stroke='%231f6b3a' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M39.0 21.0L36.8 12.8' stroke='%232f8a4c' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M39.0 21.0L32.4 19.2' stroke='%232f8a4c' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M39.0 21.0L47.2 23.2' stroke='%232f8a4c' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M39.0 21.0L40.8 27.6' stroke='%232f8a4c' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M42.7 17.3L40.6 9.6' stroke='%231f6b3a' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M42.7 17.3L36.5 15.7' stroke='%231f6b3a' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M42.7 17.3L50.4 19.4' stroke='%231f6b3a' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M42.7 17.3L44.3 23.5' stroke='%231f6b3a' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M46.3 13.7L44.4 6.4' stroke='%232f8a4c' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M46.3 13.7L40.5 12.1' stroke='%232f8a4c' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M46.3 13.7L53.6 15.6' stroke='%232f8a4c' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M46.3 13.7L47.9 19.5' stroke='%232f8a4c' stroke-width='2' stroke-linecap='round'/%3E%3Ccircle cx='38' cy='30' r='5.5' fill='%23d6413a'/%3E%3Ccircle cx='36.3' cy='28.3' r='1.6' fill='%23fff' opacity='.7'/%3E%3Cpath d='M38 24.5v-2.5' stroke='%23f2b705' stroke-width='1.6'/%3E%3C/svg%3E");
  --adv-mistel: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60'%3E%3Cpath d='M30 4C30 14 28 22 22 30M30 14C36 20 40 26 40 34M26 22C20 24 14 26 10 32' stroke='%235f8f3a' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3Cellipse cx='16' cy='36' rx='5' ry='11' transform='rotate(50 16 36)' fill='%236aa84f'/%3E%3Cellipse cx='25' cy='38' rx='4.5' ry='11' transform='rotate(-10 25 38)' fill='%234e8a3a'/%3E%3Cellipse cx='42' cy='40' rx='4.5' ry='11' transform='rotate(-25 42 40)' fill='%236aa84f'/%3E%3Cellipse cx='34' cy='42' rx='4' ry='10' transform='rotate(15 34 42)' fill='%235b9a43'/%3E%3Cg fill='%23fff' stroke='%23cfd8dc' stroke-width='.8'%3E%3Ccircle cx='24' cy='29' r='3.4'/%3E%3Ccircle cx='30' cy='31' r='3.4'/%3E%3Ccircle cx='36' cy='28' r='3.2'/%3E%3Ccircle cx='29' cy='25' r='3'/%3E%3C/g%3E%3Cpath d='M30 4l-6-3 1 6zM30 4l6-3-1 6z' fill='%23d6413a'/%3E%3Ccircle cx='30' cy='4' r='2' fill='%23b8322c'/%3E%3C/svg%3E");
  --adv-ilex: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60'%3E%3Cpath d='M30 34C24 30 18 31 14 26C12 30 8 31 5 30C8 34 7 38 4 40C9 41 12 44 13 48C16 44 21 44 24 46C24 42 27 38 30 34Z' fill='%231f6b3a'/%3E%3Cpath d='M30 34C34 28 40 26 42 20C45 23 49 23 52 22C50 26 52 30 55 33C50 33 47 36 46 40C43 37 38 38 35 40C34 37 32 36 30 34Z' fill='%232f8a4c'/%3E%3Cpath d='M30 34L10 40M30 34L48 26' stroke='%23174f2b' stroke-width='1' fill='none'/%3E%3Ccircle cx='29' cy='36' r='4.6' fill='%23d6413a'/%3E%3Ccircle cx='34.5' cy='39.5' r='4.2' fill='%23c0352f'/%3E%3Ccircle cx='25' cy='41' r='4' fill='%23d6413a'/%3E%3Ccircle cx='27.6' cy='34.6' r='1.3' fill='%23fff' opacity='.7'/%3E%3C/svg%3E");
}
.adv-tuer { overflow: hidden; box-shadow: inset 0 0 0 3px rgba(255,255,255,.9), inset 0 0 0 4.5px rgba(242,183,5,.55); }
.adv-tuer::before {
  content: ""; position: absolute; left: 4px; right: 4px; top: 4px; height: 14%; z-index: 0; pointer-events: none;
  border-radius: 14px 14px 0 0; filter: drop-shadow(0 1px 0 #cfe3e8);
  background: var(--adv-schnee) top / 100% 100% no-repeat;
}
.adv-tuer::after {
  content: ""; position: absolute; width: 46%; aspect-ratio: 1; z-index: 2; pointer-events: none;
  background: var(--adv-tanne) center / contain no-repeat; left: -3%; bottom: -3%;
}
.adv-tuer:nth-child(3n+2)::after { background-image: var(--adv-mistel); left: auto; right: -3%; bottom: auto; top: 0; width: 40%; transform: rotate(8deg); }
.adv-tuer:nth-child(3n)::after { background-image: var(--adv-ilex); left: auto; right: -4%; bottom: -5%; width: 44%; }
.adv-becher, .adv-nr, .adv-sub { z-index: 1; }
.adv-tuer.is-heute { box-shadow: inset 0 0 0 3px rgba(255,255,255,.9), 0 0 0 4px #fff, 0 0 0 7px var(--adv-gold); }
.adv-tuer.is-heute::after { background-image: var(--adv-tanne); left: -3%; right: auto; top: auto; bottom: -3%; width: 46%; transform: none; }
.adv-tuer.is-vorbei::before, .adv-tuer.is-vorbei::after { opacity: .45; filter: grayscale(.6); }
.adv-tuer.is-vorbei { box-shadow: inset 0 0 0 3px rgba(255,255,255,.9), inset 0 0 0 4.5px #d5d9dd; }
.adv-tuer:hover { box-shadow: inset 0 0 0 3px rgba(255,255,255,.9), inset 0 0 0 4.5px rgba(242,183,5,.9), 0 8px 18px rgba(0, 112, 124, .15); }

/* Fenster hinter dem Türchen: Schnee auf dem Kopf, Mistelzweig in der Ecke, Goldrahmen */
.adv-karte { box-shadow: 0 0 0 4px #fff, 0 0 0 6px rgba(242,183,5,.8), 0 20px 50px rgba(0,0,0,.3); }
.adv-k-kopf { position: relative; padding-bottom: 34px; padding-right: 124px; }
.adv-k-kopf::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 22px; pointer-events: none;
  background: var(--adv-schnee) bottom / 100% 100% no-repeat; transform: scaleY(-1);
}
.adv-k-kopf::before {
  content: ""; position: absolute; right: 52px; top: 6px; width: 64px; aspect-ratio: 1; pointer-events: none;
  background: var(--adv-mistel) center / contain no-repeat;
}

@media (max-width: 760px) {
  .adv-tuer { box-shadow: inset 0 0 0 2px rgba(255,255,255,.9), inset 0 0 0 3px rgba(242,183,5,.55); }
}
/* Türchen mit Beschriftung unten: Grün nach oben bzw. kleiner, damit „geöffnet“/„heute“ lesbar bleibt */
.adv-tuer.is-offen::after, .adv-tuer.is-vorbei::after { background-image: var(--adv-mistel); left: auto; right: -3%; bottom: auto; top: 0; width: 40%; transform: rotate(8deg); }
.adv-tuer.is-heute::after { width: 34%; left: -4%; bottom: -4%; }
.adv-sub { z-index: 3; }
@media (max-width: 760px) {
  .adv-k-kopie { font-size: 0; padding: 10px 12px; }
  .adv-k-kopie i { font-size: 17px; }
}

/* Gast: E-Mail-Formular im Fenster (Weg 3) */
.adv-k-form input[type=email] {
  width: 100%; box-sizing: border-box; padding: 14px 18px; margin: 4px 0 12px; border: 2px solid #cfe3e8; border-radius: 999px;
  font-family: inherit; font-size: 17px; font-weight: 600; color: #1d2b2d; background: #fff;
}
.adv-k-form input[type=email]:focus { outline: none; border-color: var(--adv-teal); box-shadow: 0 0 0 3px rgba(0, 151, 167, .15); }
.adv-hp { position: absolute; left: -9999px; width: 1px; height: 1px; opacity: 0; }
.adv-k-fehler { margin: -4px 0 10px; color: #c53030; font-weight: 800; font-size: 14px; }
.adv-k-klein { margin: 12px 0 0; font-size: 12.5px; color: var(--adv-leise); }
.adv-k-form .adv-k-btn { border: 0; cursor: pointer; font-family: inherit; width: 100%; }
.adv-k-post { background: var(--adv-hell); border-radius: 14px; padding: 12px 14px; color: var(--adv-teal-d); font-weight: 800; }

/* Häufige Fragen */
.adv-faq { max-width: 760px; margin: 0 auto; display: grid; gap: 10px; text-align: left; }
.adv-faq details { background: var(--adv-hell); border-radius: 14px; padding: 14px 20px; }
.adv-faq summary { cursor: pointer; font-size: 17px; font-weight: 800; color: #333; list-style: none; position: relative; padding-right: 28px; }
.adv-faq summary::-webkit-details-marker { display: none; }
.adv-faq summary::after { content: "+"; position: absolute; right: 0; top: -2px; font-size: 22px; color: var(--adv-teal-d); }
.adv-faq details[open] summary::after { content: "–"; }
.adv-faq p { margin: 8px 0 0; font-size: 15px; font-weight: 600; line-height: 1.5; color: var(--adv-grau); }
