/* Event recap — uses the shop's existing Poppins type and blue. */
.paarlauf { background: #f3f6f8; padding: 92px 0 0; color: #20262c; }
.paarlauf-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 56px; align-items: center; }
.paarlauf .paarlauf-eyebrow, .paarlauf-dialog .paarlauf-eyebrow { color: #1b5c94; font-size: 11px; font-weight: 600; letter-spacing: 1.7px; text-transform: uppercase; line-height: 1.6; margin: 0 0 20px; }
.paarlauf-eyebrow > span { display: inline-block; width: 7px; height: 7px; background: #1b5c94; border-radius: 50%; margin-right: 7px; }
.paarlauf h2 { font-size: clamp(32px, 3.1vw, 44px); line-height: 1.22; font-weight: 700; letter-spacing: -1.3px; margin-bottom: 24px; }
.paarlauf h2 em { color: #1b5c94; font-style: normal; }
.paarlauf-copy p { font-size: 14px; line-height: 1.9; margin-bottom: 16px; color: #59636c; }
.paarlauf-copy .paarlauf-lead { font-size: 19px; font-weight: 500; line-height: 1.55; color: #283b4a; margin-bottom: 20px; }
.paarlauf-copy strong { color: #283b4a; font-weight: 600; }
.paarlauf-copy .paarlauf-signoff { color: #1b5c94; font-weight: 600; margin: 23px 0; font-size: 14px; }
.paarlauf-signoff span { color: #68727b; font-size: 11px; font-weight: 400; }
.paarlauf-button { display: inline-flex; align-items: center; gap: 28px; padding: 16px 25px; border: 1px solid #1b5c94; border-radius: 30px; background: #1b5c94; color: #fff; font: 600 13px 'Poppins', sans-serif; cursor: pointer; transition: background .2s, transform .2s; }
.paarlauf-button span { font-size: 22px; line-height: 1; }
.paarlauf-button:hover { background: #124771; transform: translateY(-2px); }
.paarlauf-button:focus-visible, .paarlauf-close:focus-visible, .paarlauf-dialog a:focus-visible { outline: 3px solid #d09332; outline-offset: 4px; }
.paarlauf-photos { position: relative; height: 590px; }
.paarlauf-photo { position: absolute; margin: 0; overflow: hidden; border-radius: 3px; }
.paarlauf-photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.paarlauf-photo-main { top: 0; left: 0; width: 76%; height: 455px; }
.paarlauf-photo-main img { object-position: 49% 60%; }
.paarlauf-photo-main figcaption { position: absolute; bottom: 0; left: 0; right: 0; padding: 42px 22px 20px; background: linear-gradient(transparent, rgba(8,30,47,.8)); color: #fff; font-size: 13px; font-weight: 500; }
.paarlauf-photo-second { width: 51%; height: 295px; right: -8px; bottom: 0; border: 7px solid #f3f6f8; }
.paarlauf-photo-second img { object-position: 52% 70%; }
.paarlauf-photo-note { position: absolute; left: 12px; bottom: 16px; color: #1b5c94; font-size: 13px; line-height: 1.7; font-weight: 500; }
.paarlauf-photo-note > span { display: block; font-size: 36px; line-height: 1.2; margin-bottom: 8px; }
.paarlauf-bottom { margin-top: 56px; padding: 32px 0; border-top: 1px solid #d5dfe6; display: flex; justify-content: space-between; align-items: center; gap: 24px; }
.paarlauf-stats { display: flex; gap: 52px; margin: 0; }
.paarlauf-stats dt { color: #1b5c94; font-size: 34px; line-height: 1.3; font-weight: 600; }
.paarlauf-stats dd { margin: 4px 0 0; font-size: 12px; color: #59636c; }
.paarlauf .paarlauf-next { font-size: 12px; line-height: 1.8; border-left: 2px solid #1b5c94; padding-left: 22px; }
.paarlauf-next > span { display: block; color: #1b5c94; font-weight: 600; margin-bottom: 3px; }
.paarlauf-dialog { padding: 0; border: 0; border-radius: 12px; width: min(720px, calc(100% - 28px)); max-height: 86vh; max-height: 86dvh; margin: auto; color: #20262c; box-shadow: 0 24px 90px #071c3440; }
.paarlauf-dialog[open] { display: flex; flex-direction: column; }
.paarlauf-dialog::backdrop { background: rgba(9,27,44,.68); backdrop-filter: blur(4px); }
.paarlauf-dialog-head { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 26px 30px 22px; background: #f3f6f8; border-bottom: 1px solid #dce4ea; }
.paarlauf-dialog .paarlauf-eyebrow { margin-bottom: 6px; }
.paarlauf-dialog h2 { font-size: 28px; font-weight: 600; }
.paarlauf-close { flex-shrink: 0; width: 44px; height: 44px; border: 1px solid #c8d6e1; border-radius: 50%; background: white; color: #1b5c94; font-size: 29px; cursor: pointer; line-height: 1; }
.paarlauf-close:hover { background: #e5edf3; }
.paarlauf-dialog-body { padding: 22px 30px 28px; overflow-y: auto; overscroll-behavior: contain; }
.paarlauf-dialog-body > p { font-size: 12px; line-height: 1.8; }
.paarlauf-table { width: 100%; margin-top: 20px; border-collapse: collapse; font-size: 13px; }
.paarlauf-table thead { background: #1b5c94; color: white; }
.paarlauf-table th, .paarlauf-table td { padding: 13px 14px; }
.paarlauf-table thead th { font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: .7px; }
.paarlauf-table td span { display: block; }
.paarlauf-table tbody th { color: #1b5c94; font-weight: 600; width: 64px; }
.paarlauf-table tbody tr { border-bottom: 1px solid #e4e9ed; }
.paarlauf-table tbody tr:nth-child(even) { background: #f7f9fb; }
.paarlauf-table tbody tr:nth-child(-n+3) { background: #eaf2f8; }
.paarlauf-table td:last-child, .paarlauf-table th:last-child { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; font-weight: 600; }
.paarlauf-table small { font-weight: 400; }
.paarlauf-dialog-body .paarlauf-results-note { margin-top: 22px; font-size: 11px; }
.paarlauf-results-note a { color: #1b5c94; text-decoration: underline !important; }
body.paarlauf-modal-open { overflow: hidden; }
@media (max-width: 991px) {
  .paarlauf { padding-top: 64px; }
  .paarlauf-layout { gap: 30px; }
  .paarlauf-photos { height: 550px; }
  .paarlauf-photo-main { width: 90%; height: 370px; }
  .paarlauf-photo-second { width: 65%; height: 245px; right: -5px; }
  .paarlauf-photo-note { left: 0; font-size: 10px; }
  .paarlauf-stats { gap: 28px; }
}
@media (max-width: 767px) {
  .paarlauf { padding-top: 48px; }
  .paarlauf-layout { grid-template-columns: 1fr; gap: 34px; }
  .paarlauf h2 { font-size: 34px; }
  .paarlauf-photos { height: 460px; max-width: 460px; width: 100%; margin: 0 auto; }
  .paarlauf-photo-main { width: 73%; height: 355px; }
  .paarlauf-photo-second { width: 49%; height: 240px; right: 0; }
  .paarlauf-photo-note { left: 8px; font-size: 12px; bottom: 5px; }
  .paarlauf-bottom { margin-top: 34px; flex-direction: column; align-items: stretch; gap: 26px; }
  .paarlauf-stats { justify-content: space-between; gap: 12px; }
  .paarlauf-stats dt { font-size: 30px; }
  .paarlauf-stats dd { font-size: 10px; }
  .paarlauf-dialog-head { padding: 20px; }
  .paarlauf-dialog h2 { font-size: 23px; }
  .paarlauf-dialog .paarlauf-eyebrow { font-size: 9px; }
  .paarlauf-dialog-body { padding: 18px 16px 24px; }
  .paarlauf-table { font-size: 12px; }
  .paarlauf-table th, .paarlauf-table td { padding: 12px 8px; }
  .paarlauf-table tbody th { width: 44px; }
}
@media (prefers-reduced-motion: reduce) { .paarlauf-button { transition: none; } }
.paarlauf { scroll-margin-top: 110px; }
@media (max-width: 767px) {
  .paarlauf-photo-main figcaption { top: 0; bottom: auto; padding: 16px 14px 36px; background: linear-gradient(rgba(8,30,47,.65), transparent); font-size: 12px; }
}
