.success#erfolge { display: block; }
.success-content { max-width: 1180px; margin: 0 auto; }
.champion-grid {
  max-width: 1180px;
  margin: 4rem auto 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1px;
  background: rgba(255,255,255,.38);
}
.champion-card {
  position: relative;
  min-height: 420px;
  padding: 2.4rem;
  background: #b80712;
  overflow: hidden;
}
.champion-card h3 {
  position: relative;
  margin: 0;
  max-width: 80%;
  font: 800 2.2rem/1 Barlow Condensed, Impact, sans-serif;
  text-transform: uppercase;
}
.champion-number {
  position: absolute;
  right: 1.5rem;
  top: .8rem;
  color: transparent;
  -webkit-text-stroke: 1px rgba(255,255,255,.45);
  font: 800 5.5rem/1 Barlow Condensed, Impact, sans-serif;
}
.champion-class {
  position: relative;
  min-height: 2.8rem;
  margin: .65rem 0 1.5rem;
  color: #ffd7da;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.champion-card ul { margin: 0; padding: 0; list-style: none; }
.champion-card li { border-top: 1px solid rgba(255,255,255,.28); padding: .85rem 0; }
.champion-card li b { display: block; font-size: .95rem; }
.champion-card li span { display: block; margin-top: .2rem; color: #ffd7da; font-size: .78rem; line-height: 1.45; }
.champion-card:last-child:nth-child(odd) { grid-column: 1 / -1; min-height: 300px; }
.regional-success { max-width: 1180px; margin: 4rem auto; }
.regional-heading { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; align-items: end; margin-bottom: 1.5rem; }
.regional-heading h3 { margin: .25rem 0 0; font: 800 clamp(2.5rem,6vw,5rem)/.9 Barlow Condensed,Impact,sans-serif; text-transform: uppercase; }
.regional-heading > p { margin: 0; color: #ffd7da; line-height: 1.65; }
.placement-summary { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; background: rgba(255,255,255,.35); }
.placement-summary article { position: relative; min-height: 175px; padding: 1.35rem; background: #9e0913; }
.placement-summary article div { padding-right: 4rem; }
.placement-summary span { display: block; font: 800 1.5rem/1 Barlow Condensed,Impact,sans-serif; text-transform: uppercase; }
.placement-summary small { display: block; margin-top: .35rem; color: #ffd7da; font-size: .7rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.placement-summary strong { position: absolute; top: 1rem; right: 1rem; font: 800 3.2rem/1 Barlow Condensed,Impact,sans-serif; }
.placement-summary p { position: absolute; right: 1.35rem; bottom: 1.2rem; left: 1.35rem; margin: 0; padding-top: .75rem; border-top: 1px solid rgba(255,255,255,.25); color: #ffd7da; font-size: .78rem; }
.title-totals { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; margin-top: 1px; background: rgba(255,255,255,.35); }
.title-totals article { display: flex; align-items: center; gap: 1.35rem; padding: 1.4rem; background: #720710; }
.title-totals strong { font: 800 clamp(3rem,7vw,5.5rem)/.8 Barlow Condensed,Impact,sans-serif; }
.title-totals span { display: block; font: 800 1.45rem/1 Barlow Condensed,Impact,sans-serif; text-transform: uppercase; }
.title-totals small { display: block; margin-top: .4rem; color: #ffd7da; font-size: .72rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
@media (max-width: 980px) { .title-totals { grid-template-columns: 1fr 1fr; } .title-totals article:last-child { grid-column: 1 / -1; } }
.team-final { display: grid; grid-template-columns: auto 1fr; gap: 1.5rem; align-items: center; margin-top: 1px; padding: 1.6rem; background: #fff; color: #720710; }
.team-final-mark { display: grid; place-items: center; width: 5.5rem; height: 5.5rem; border: 3px solid #a30712; border-radius: 50%; font: 800 3.5rem/1 Barlow Condensed,Impact,sans-serif; }
.team-final .section-kicker { margin: 0 0 .35rem; color: #a30712; }
.team-final h4 { margin: 0; font: 800 1.8rem/1 Barlow Condensed,Impact,sans-serif; text-transform: uppercase; }
.team-final p:last-child { margin: .55rem 0 0; color: #4e171b; line-height: 1.55; }
.result-group { border-top: 1px solid rgba(255,255,255,.35); background: rgba(89,0,8,.22); }
.result-group:last-of-type { border-bottom: 1px solid rgba(255,255,255,.35); }
.result-group summary { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; padding: 1.25rem 1rem; cursor: pointer; list-style: none; }
.result-group summary::-webkit-details-marker { display: none; }
.result-group summary::after { content: "+"; order: 3; font: 700 1.7rem/1 Barlow Condensed,Impact,sans-serif; }
.result-group[open] summary::after { content: "−"; }
.result-group summary span { font: 800 1.8rem/1 Barlow Condensed,Impact,sans-serif; text-transform: uppercase; }
.result-group summary small { margin-left: auto; color: #ffd7da; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
.result-event { display: flex; justify-content: space-between; gap: 1rem; padding: 1.4rem 1rem .7rem; border-top: 1px solid rgba(255,255,255,.16); }
.result-event h4 { margin: 0; font-size: 1rem; }
.result-event p { margin: 0; color: #ffd7da; font-size: .78rem; }
.result-table-wrap { overflow-x: auto; padding: 0 1rem 1.2rem; }
.result-table { width: 100%; min-width: 650px; border-collapse: collapse; font-size: .84rem; }
.result-table th,.result-table td { padding: .7rem .65rem; border-bottom: 1px solid rgba(255,255,255,.15); text-align: left; }
.result-table th { color: #ffd7da; font-size: .7rem; letter-spacing: .08em; text-transform: uppercase; }
.result-table td:nth-child(3),.result-table td:nth-child(4),.result-table th:nth-child(3),.result-table th:nth-child(4) { text-align: right; }
.result-table td b { display: inline-grid; place-items: center; min-width: 2rem; min-height: 2rem; border-radius: 50%; background: #fff; color: #a30712; }
.guest-row { opacity: .84; }
.result-note { margin: -.2rem 1rem 1.2rem; color: #ffd7da; font-size: .76rem; }
.regional-sources { margin: 1.2rem 0 0; color: #ffd7da; font-size: .78rem; }
.regional-sources a { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.gallery-intro { max-width: 1180px; margin: 4rem auto 1rem; display: flex; align-items: end; justify-content: space-between; gap: 1rem; }
.gallery-intro h3 { margin: 0; font: 800 2rem/1 Barlow Condensed,Impact,sans-serif; text-transform: uppercase; }
.gallery-intro p { margin: 0; color: #ffd7da; font-size: .78rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
.gallery-controls { display: flex; align-items: center; gap: .55rem; }
.gallery-controls p { margin-right: .5rem; }
.gallery-arrow { display: grid; place-items: center; width: 3rem; height: 3rem; padding: 0; border: 2px solid #fff; border-radius: 50%; background: transparent; color: #fff; font: 700 1.6rem/1 Arial,sans-serif; cursor: pointer; transition: background .2s ease,color .2s ease,opacity .2s ease; }
.gallery-arrow:hover,.gallery-arrow:focus-visible { background: #fff; color: #a30712; outline: none; }
.gallery-arrow:disabled { opacity: .3; cursor: default; }
.parcours-showcase { padding: clamp(4rem,8vw,7rem) 1.5rem; background: #f4efe7; color: #1b1715; }
.parcours-heading { max-width: 1180px; margin: 0 auto 2rem; display: flex; align-items: end; justify-content: space-between; gap: 2rem; }
.parcours-heading h2 { margin: .3rem 0 0; font: 800 clamp(3rem,7vw,6rem)/.88 Barlow Condensed,Impact,sans-serif; text-transform: uppercase; }
.parcours-heading h2 em { color: #a30712; font-style: normal; }
.parcours-controls { display: flex; align-items: center; gap: .55rem; }
.parcours-controls p { margin: 0 .5rem 0 0; color: #6f5d55; font-size: .76rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
.parcours-controls .gallery-arrow { border-color: #a30712; color: #a30712; }
.parcours-controls .gallery-arrow:hover,.parcours-controls .gallery-arrow:focus-visible { background: #a30712; color: #fff; }
.parcours-gallery { max-width: 1180px; margin: 0 auto; padding: .5rem 2rem 1.4rem 0; display: flex; gap: 1rem; overflow-x: auto; overscroll-behavior-inline: contain; scroll-snap-type: x mandatory; scrollbar-color: #a30712 #dfd5c9; scrollbar-width: thin; }
.parcours-gallery figure { position: relative; flex: 0 0 min(78vw,440px); height: 520px; margin: 0; overflow: hidden; background: #2d3c24; scroll-snap-align: start; }
.parcours-gallery img { width: 100%; height: 100%; object-fit: cover; }
.parcours-gallery figcaption { position: absolute; right: 0; bottom: 0; left: 0; padding: 3rem 1.1rem 1rem; background: linear-gradient(transparent,rgba(0,0,0,.78)); color: #fff; font-size: .78rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.club-life { display: grid; grid-template-columns: minmax(320px,.8fr) minmax(0,1.2fr); background: #20291c; color: #fff; }
.club-life-copy { align-self: center; padding: clamp(3rem,7vw,7rem); }
.club-life-copy h2 { margin: .35rem 0 1.6rem; font: 800 clamp(3rem,7vw,6rem)/.88 Barlow Condensed,Impact,sans-serif; text-transform: uppercase; }
.club-life-copy h2 em { color: #e8b54c; font-style: normal; }
.club-life-copy > p { color: #d7dfd1; line-height: 1.7; }
.club-life-copy ul { margin: 1.6rem 0 0; padding: 0; list-style: none; }
.club-life-copy li { padding: .65rem 0; border-top: 1px solid rgba(255,255,255,.18); font-weight: 700; }
.club-life-gallery { min-height: 760px; display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: 1fr 1fr 1fr; gap: 2px; background: #fff; }
.club-life-gallery figure { position: relative; min-height: 0; margin: 0; overflow: hidden; background: #34422d; }
.club-life-gallery .club-life-wide { grid-column: 1/-1; }
.club-life-gallery img { width: 100%; height: 100%; object-fit: cover; }
.club-life-gallery figcaption { position: absolute; right: 0; bottom: 0; left: 0; padding: 2.8rem 1rem .8rem; background: linear-gradient(transparent,rgba(0,0,0,.72)); font-size: .72rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.champion-gallery {
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
  padding: 1rem 3rem 1.5rem 1rem;
  display: flex;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scroll-snap-type: x mandatory;
  scrollbar-color: #fff #720710;
  scrollbar-width: thin;
}
.champion-gallery figure { position: relative; flex: 0 0 min(72vw,420px); height: 500px; margin: 0 -4rem 0 0; overflow: hidden; border: 4px solid #fff; background: #720710; box-shadow: 0 18px 36px rgba(38,0,3,.38); scroll-snap-align: start; transform: rotate(-1.5deg); transition: transform .2s ease; }
.champion-gallery figure:nth-child(even) { transform: rotate(1.5deg); }
.champion-gallery figure:hover,.champion-gallery figure:focus-within { z-index: 2; transform: translateY(-.4rem) rotate(0); }
.champion-gallery img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; object-position: center; }
.champion-gallery figcaption { position: absolute; left: 0; right: 0; bottom: 0; padding: 2rem 1rem .8rem; background: linear-gradient(transparent,rgba(0,0,0,.8)); font-size: .72rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.champion-sources { max-width: 1180px; margin: 1.4rem auto 0; color: #ffd7da; font-size: .78rem; }
.champion-sources a { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 900px) {
  .champion-grid { grid-template-columns: 1fr; }
  .champion-card { min-height: 0; }
  .regional-heading { grid-template-columns: 1fr; gap: 1rem; }
  .placement-summary { grid-template-columns: 1fr 1fr; }
  .champion-gallery figure { height: 430px; }
  .parcours-heading { display: block; }
  .parcours-controls { margin-top: 1rem; }
  .parcours-controls p { margin-right: auto; }
  .parcours-gallery figure { height: 460px; }
  .club-life { grid-template-columns: 1fr; }
  .club-life-gallery { min-height: 700px; }
}
@media (max-width: 600px) {
  .champion-card { padding: 1.6rem; }
  .champion-card h3 { font-size: 1.8rem; }
  .champion-number { font-size: 4rem; }
  .regional-success { margin: 3rem auto; }
  .placement-summary { grid-template-columns: 1fr; }
  .title-totals { grid-template-columns: 1fr; }
  .team-final { grid-template-columns: 1fr; }
  .team-final-mark { width: 4.5rem; height: 4.5rem; font-size: 2.8rem; }
  .result-group summary { align-items: center; }
  .result-group summary small { display: none; }
  .result-event { display: block; }
  .result-event p { margin-top: .35rem; }
  .gallery-intro { display: block; }
  .gallery-controls { margin-top: .75rem; }
  .gallery-controls p { margin-right: auto; }
  .champion-gallery { padding-right: 2rem; }
  .champion-gallery figure { flex-basis: 82vw; height: 390px; margin-right: -2.2rem; }
  .parcours-showcase { padding-right: 1rem; padding-left: 1rem; }
  .parcours-gallery figure { flex-basis: 84vw; height: 420px; }
  .club-life-copy { padding: 3rem 1.5rem; }
  .club-life-gallery { min-height: 620px; }
}
