/* Beitrag 11 – Hochzeit im Schloss Reinbek */
.article-finale--11::after { content: '11'; }

.reinbek-hero-subtitle {
  width: min(100%, 680px);
  margin: 24px 0 0;
  color: #756e62;
  font-size: clamp(19px, 2vw, 25px);
  font-style: italic;
  line-height: 1.4;
}

/* Bildnachweis unter jedem Foto */
.article-figure figcaption,
.article-feature-figure figcaption {
  padding: 10px 2px 2px;
  color: var(--blog-muted);
  font-family: var(--blog-sans);
  font-size: 10px;
  letter-spacing: .08em;
  line-height: 1.4;
}

.reinbek-wide-figure { width: min(100%, 620px); margin: 46px auto 0; }
.reinbek-wide-figure img { aspect-ratio: 3 / 2; object-fit: cover; }

/* Ablauf */
.reinbek-timeline {
  margin: 38px 0 30px;
  padding: 0;
  border-top: 1px solid var(--blog-line);
}
.reinbek-timeline > div {
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr);
  gap: 24px;
  align-items: baseline;
  padding: 20px 0;
  border-bottom: 1px solid var(--blog-line);
}
.reinbek-timeline dt {
  color: var(--blog-gold-dark);
  font-family: var(--blog-sans);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: .14em;
}
.reinbek-timeline dd {
  margin: 0;
  color: var(--blog-ink);
  font-size: clamp(19px, 1.65vw, 21px);
  line-height: 1.5;
}
.reinbek-timeline dd small {
  display: block;
  margin-top: 4px;
  color: var(--blog-muted);
  font-size: .82em;
  font-style: italic;
}

/* FAQ */
.reinbek-faq {
  margin-top: 38px;
  border-top: 1px solid var(--blog-line);
}
.reinbek-faq details { border-bottom: 1px solid var(--blog-line); }
.reinbek-faq summary {
  position: relative;
  padding: 24px 44px 24px 0;
  color: var(--blog-ink);
  font-size: clamp(22px, 2.2vw, 26px);
  line-height: 1.3;
  list-style: none;
  cursor: pointer;
}
.reinbek-faq summary::-webkit-details-marker { display: none; }
.reinbek-faq summary::after {
  content: '+';
  position: absolute;
  top: 22px;
  right: 6px;
  color: var(--blog-gold-dark);
  font-family: var(--blog-sans);
  font-size: 22px;
  font-weight: 300;
  transition: transform 220ms var(--blog-ease);
}
.reinbek-faq details[open] summary::after { transform: rotate(45deg); }
.reinbek-faq summary:focus-visible {
  outline: 2px solid var(--blog-gold-dark);
  outline-offset: 4px;
}
.reinbek-faq details > p { padding: 0 44px 26px 0; }
.reinbek-faq a,
.article-prose p a {
  color: var(--blog-gold-dark);
  text-underline-offset: 3px;
}

@media (max-width: 760px) {
  .reinbek-hero-subtitle { margin-top: 18px; font-size: 19px; }
  .reinbek-timeline > div { grid-template-columns: 1fr; gap: 6px; padding: 18px 0; }
  .reinbek-faq summary { padding-right: 36px; }
  .reinbek-faq details > p { padding-right: 0; }
  .reinbek-wide-figure { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .reinbek-faq summary::after { transition: none; }
}
