/* Vollansicht: bewusst unabhängig von Startseiten-Sponsoren und Seitenhülle. */
@font-face {
  font-family: SportDisplay;
  src: url('fonts/barlow-condensed-black-italic.ttf') format('truetype');
  font-weight: 900;
  font-style: italic;
  font-display: swap;
}
.ssg-sponsoren--page {
  --sp-navy: #152a50;
  --sp-blue: #0870b0;
  --sp-light: #9ac9e8;
  --sp-gold: #d8b66a;
  --sp-silver: #a8bcdc;
  --_gap: clamp(1rem, 2vw, 1.75rem);
  max-width: 1200px;
  width: 100%;
  color: var(--sp-navy);
}
.ssg-sponsoren--page,
.ssg-sponsoren--page * { box-sizing: border-box; }
.ssg-sponsoren--page .ssg-sponsoren__intro {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: clamp(2rem, 6vw, 5rem);
  margin-bottom: clamp(2rem, 5vw, 4rem);
  background: var(--sp-navy);
  color: #fff;
  border-bottom: 8px solid var(--sp-blue);
}
.ssg-sponsoren--page .ssg-sponsoren__intro::before,
.ssg-sponsoren--page .ssg-sponsoren__section-head::after {
  content: '';
  position: absolute;
  z-index: -1;
  pointer-events: none;
  right: -8%;
  top: -30%;
  width: 36%;
  height: 180%;
  transform: skewX(-18deg);
  background: linear-gradient(90deg, transparent, rgb(154 201 232 / 12%));
  border-left: 1px solid rgb(154 201 232 / 25%);
}
.ssg-sponsoren--page .ssg-sponsoren__eyebrow {
  margin: 0 0 1rem;
  font-size: .78rem;
  font-weight: 800;
  line-height: 1.5;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: inherit;
}
.ssg-sponsoren--page .ssg-sponsoren__intro > .ssg-sponsoren__eyebrow { color: var(--sp-light); }
.ssg-sponsoren--page .ssg-sponsoren__intro-title {
  position: relative;
  margin: 0 0 1.5rem;
  max-width: 100%;
  font: italic 900 clamp(3.4rem, 9vw, 8rem)/.96 SportDisplay, Impact, sans-serif;
  letter-spacing: -.015em;
  text-transform: uppercase;
  color: #fff;
  overflow-wrap: anywhere;
}
.ssg-sponsoren--page .ssg-sponsoren__intro-title span { color: var(--sp-light); }
.ssg-sponsoren--page .ssg-sponsoren__intro-copy {
  position: relative;
  max-width: 52ch;
  margin: 0 0 2rem;
  color: #fff;
  font-size: clamp(1rem, 1.7vw, 1.2rem);
  line-height: 1.65;
}
.ssg-sponsoren--page .ssg-sponsoren__jumpnav { display: flex; flex-wrap: wrap; gap: .65rem; }
.ssg-sponsoren--page .ssg-sponsoren__jumpnav a {
  display: inline-flex;
  justify-content: space-between;
  align-items: center;
  gap: 1.5rem;
  min-height: 48px;
  padding: .7rem 1.1rem;
  border: 1px solid rgb(154 201 232 / 55%);
  background: transparent;
  color: #fff;
  font-weight: 700;
  text-decoration: none;
}
.ssg-sponsoren--page .ssg-sponsoren__jumpnav a:hover,
.ssg-sponsoren--page .ssg-sponsoren__jumpnav a:focus-visible { background: var(--sp-blue); color: #fff; }
.ssg-sponsoren--page a:focus-visible { outline: 3px solid var(--sp-blue); outline-offset: 5px; }
.ssg-sponsoren--page .ssg-sponsoren__section--haupt a:focus-visible,
.ssg-sponsoren--page .ssg-sponsoren__intro a:focus-visible { outline-color: var(--sp-light); }
.ssg-sponsoren--page .ssg-sponsoren__section {
  min-width: 0;
  margin: 0 0 clamp(2.5rem, 5vw, 4.5rem);
  scroll-margin-top: 100px;
}
.ssg-sponsoren--page .ssg-sponsoren__section-head {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: clamp(1.4rem, 3vw, 2.5rem);
  margin: 0 0 1.5rem;
  border-left: 6px solid var(--sp-blue);
  background: var(--sp-navy);
  color: #fff;
}
.ssg-sponsoren--page .ssg-sponsoren__heading {
  display: block;
  padding: 0;
  margin: 0;
  border: 0;
  color: inherit;
  font: italic 900 clamp(2rem, 4.2vw, 3.6rem)/1.07 SportDisplay, Impact, sans-serif;
  overflow-wrap: anywhere;
}
.ssg-sponsoren--page .ssg-sponsoren__section--haupt {
  padding: clamp(1rem, 3vw, 2.5rem);
  background: var(--sp-navy);
  border: 2px solid var(--sp-gold);
  color: #fff;
}
.ssg-sponsoren--page .ssg-sponsoren__section--haupt .ssg-sponsoren__section-head {
  padding: .5rem 0 1rem;
  border: 0;
  background: transparent;
}
.ssg-sponsoren--page .ssg-sponsoren__section--haupt .ssg-sponsoren__eyebrow { color: var(--sp-gold); }
.ssg-sponsoren--page .ssg-sponsoren__section--silber {
  padding: clamp(1rem, 3vw, 2.5rem);
  border: 2px solid var(--sp-silver);
  background: linear-gradient(125deg, #f7f9fc, #e5ebf3);
}
.ssg-sponsoren--page .ssg-sponsoren__section--silber .ssg-sponsoren__section-head {
  padding: .5rem 0 1rem;
  background: transparent;
  color: var(--sp-navy);
  border: 0;
}
.ssg-sponsoren--page .ssg-sponsoren__section--silber .ssg-sponsoren__eyebrow { color: #52627b; }
.ssg-sponsoren--page .ssg-sponsoren__section--foerderer .ssg-sponsoren__section-head {
  background: #eaf3f9;
  color: var(--sp-navy);
}
.ssg-sponsoren--page .ssg-sponsoren__subline { color: #52627b; font-size: 1rem; line-height: 1.65; }
.ssg-sponsoren--page .ssg-sponsoren__heroes,
.ssg-sponsoren--page .ssg-sponsoren__grid {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));
  gap: var(--_gap);
}
.ssg-sponsoren--page .ssg-sponsoren__heroes { grid-template-columns: repeat(auto-fit, minmax(min(100%, 390px), 1fr)); }
.ssg-sponsoren--page .ssg-sponsor-hero,
.ssg-sponsoren--page .ssg-sponsor-card,
.ssg-sponsoren--page .ssg-sponsor-fotocard {
  min-width: 0;
  border-radius: 6px;
  background: #fff;
  border: 1px solid #ccd7e5;
  color: var(--sp-navy);
  text-decoration: none;
  overflow-wrap: anywhere;
}
.ssg-sponsoren--page .ssg-sponsoren__section--haupt .ssg-sponsor-hero,
.ssg-sponsoren--page .ssg-sponsoren__section--haupt .ssg-sponsor-fotocard { border: 2px solid var(--sp-gold); }
.ssg-sponsoren--page .ssg-sponsoren__section--silber .ssg-sponsor-card,
.ssg-sponsoren--page .ssg-sponsoren__section--silber .ssg-sponsor-fotocard { border: 2px solid var(--sp-silver); }
.ssg-sponsoren--page .ssg-sponsor-hero {
  flex-direction: column;
  align-items: stretch;
  padding: clamp(1.25rem, 3vw, 2rem);
}
.ssg-sponsoren--page .ssg-sponsor-hero__logo {
  flex: 0 0 auto;
  width: 100%;
  max-width: none;
  min-height: 180px;
}
.ssg-sponsoren--page .ssg-sponsor-hero__logo img { width: 100%; max-height: 180px; object-fit: contain; }
.ssg-sponsoren--page .ssg-sponsor-hero__name { font-size: 1.6rem; color: var(--sp-navy); }
.ssg-sponsoren--page .ssg-sponsor-hero__typ { color: #745519; }
.ssg-sponsoren--page .ssg-sponsor-hero__desc { color: #52627b; line-height: 1.6; }
.ssg-sponsoren--page .ssg-sponsor-hero__cta,
.ssg-sponsoren--page .ssg-sponsor-fotocard__cta { color: var(--sp-blue); }
.ssg-sponsoren--page .ssg-sponsor-card { padding: 1.75rem 1.25rem; gap: 1rem; }
.ssg-sponsoren--page .ssg-sponsor-card__logo { height: 160px; }
.ssg-sponsoren--page .ssg-sponsor-card__logo img { width: 100%; max-height: 160px; object-fit: contain; }
.ssg-sponsoren--page .ssg-sponsor-card__name { font-size: 1.15rem; color: var(--sp-navy); }
.ssg-sponsoren--page .ssg-sponsor-card__events { font-size: .9rem; color: #52627b; }
/* Logo unter dem Foto: groß, vollständig sichtbar und ohne Gesichter zu verdecken. */
.ssg-sponsoren--page .ssg-sponsor-fotocard__media { aspect-ratio: auto; background: #fff; }
.ssg-sponsoren--page .ssg-sponsor-fotocard__photo { aspect-ratio: 4 / 3; object-fit: cover; }
.ssg-sponsoren--page .ssg-sponsor-fotocard__badge {
  position: static;
  display: flex;
  transform: none;
  width: 100%;
  max-width: none;
  min-height: 120px;
  padding: 1rem 1.25rem;
  justify-content: center;
  border-radius: 0;
  background: #fff;
  box-shadow: none;
}
.ssg-sponsoren--page .ssg-sponsor-fotocard__badge img { width: 100%; max-width: 100%; max-height: 110px; object-fit: contain; }
.ssg-sponsoren--page .ssg-sponsor-fotocard--haupt .ssg-sponsor-fotocard__badge { min-height: 144px; }
.ssg-sponsoren--page .ssg-sponsor-fotocard--haupt .ssg-sponsor-fotocard__badge img { max-height: 130px; }
.ssg-sponsoren--page .ssg-sponsor-fotocard__bar { padding: 1rem 1.25rem; border-top: 3px solid var(--sp-blue); gap: .4rem .75rem; }
.ssg-sponsoren--page .ssg-sponsor-fotocard--haupt .ssg-sponsor-fotocard__bar { border-top-color: var(--sp-gold); }
.ssg-sponsoren--page .ssg-sponsor-fotocard--silber .ssg-sponsor-fotocard__bar { border-top-color: var(--sp-silver); }
.ssg-sponsoren--page .ssg-sponsor-fotocard__typ { color: #52627b; }
.ssg-sponsoren--page .ssg-sponsor-fotocard--haupt .ssg-sponsor-fotocard__typ { color: #745519; }
.ssg-sponsoren--page .ssg-sponsor-fotocard__name { font-size: 1.15rem; color: var(--sp-navy); }
.ssg-sponsoren--page .ssg-sponsoren__saison-wks { background: #fff; border: 0; border-radius: 4px; margin-top: 1.5rem; }
.ssg-sponsoren--page .ssg-sponsoren__saison-wks-label { color: var(--sp-navy); }
.ssg-sponsoren--page .ssg-sponsoren__saison-wks-item { color: var(--sp-navy); background: #edf3f8; }
.ssg-sponsoren--page .ssg-sponsoren__saison-wks-item--international { border-color: #957127; }
@media (max-width: 600px) {
  .ssg-sponsoren--page .ssg-sponsoren__intro { padding: 2rem 1.25rem; }
  .ssg-sponsoren--page .ssg-sponsoren__intro-title { font-size: clamp(2.8rem, 13vw, 4.5rem); }
  .ssg-sponsoren--page .ssg-sponsoren__jumpnav a { flex: 1 1 40%; gap: .5rem; }
  .ssg-sponsoren--page .ssg-sponsoren__section-head { padding: 1.5rem 1rem; }
  .ssg-sponsoren--page .ssg-sponsoren__heading { font-size: 2rem; }
  .ssg-sponsoren--page .ssg-sponsoren__eyebrow { font-size: .7rem; letter-spacing: .09em; }
  .ssg-sponsoren--page .ssg-sponsor-fotocard__cta { flex-basis: 100%; margin-left: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .ssg-sponsoren--page .ssg-sponsor-hero,
  .ssg-sponsoren--page .ssg-sponsor-card,
  .ssg-sponsoren--page .ssg-sponsor-fotocard { transition: none; }
  .ssg-sponsoren--page a:hover { transform: none; }
}

/* Bereichsbühnen im Stil des Ergebnis-Heros, mit eigenen Metallfarben. */
.ssg-sponsoren--page .ssg-sponsoren__section .ssg-sponsoren__section-head {
  --stage-accent:#9ac9e8;
  position:relative;
  isolation:isolate;
  padding:40px 32px;
  margin:0 0 28px;
  border:0;
  border-bottom:5px solid var(--stage-accent);
  background:linear-gradient(115deg,#152a50 10%,#064c7d 65%,#0870b0);
  color:#fff;
}
.ssg-sponsoren--page .ssg-sponsoren__section .ssg-sponsoren__section-head::before {
  content:'SSG';position:absolute;z-index:-1;right:12px;bottom:-30px;
  color:#ffffff0c;font:italic 900 180px/1 SportDisplay,Impact,sans-serif;
  pointer-events:none;
}
.ssg-sponsoren--page .ssg-sponsoren__section .ssg-sponsoren__section-head::after {
  inset:-50% -5% -50% auto;width:38%;height:200%;border:0;
  transform:rotate(25deg);
  background:repeating-linear-gradient(90deg,transparent 0 26px,#ffffff1f 27px 29px);
}
.ssg-sponsoren--page .ssg-sponsoren__section .ssg-sponsoren__heading {
  position:relative;z-index:1;color:#fff;
  font:italic 900 clamp(42px,5.5vw,76px)/1 SportDisplay,Impact,sans-serif;
  text-transform:uppercase;overflow-wrap:normal;
}
.ssg-sponsoren--page .ssg-sponsoren__heading span {color:var(--stage-accent);white-space:nowrap;}
.ssg-sponsoren--page .ssg-sponsoren__section .ssg-sponsoren__eyebrow {position:relative;z-index:1;color:var(--stage-accent);margin-bottom:16px;}
.ssg-sponsoren--page .ssg-sponsoren__section--haupt .ssg-sponsoren__section-head {
  --stage-accent:#f2d58b;
  background:linear-gradient(110deg,#34270e 5%,#604616 58%,#96702b);
  border-bottom-color:#d8b66a;
}
.ssg-sponsoren--page .ssg-sponsoren__section--haupt .ssg-sponsoren__heading span {
  background:linear-gradient(115deg,#f6dfa1,#fff4cd 38%,#e7bb59 68%,#fff0bd);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.ssg-sponsoren--page .ssg-sponsoren__section--silber .ssg-sponsoren__section-head {
  --stage-accent:#e4edf7;
  background:linear-gradient(110deg,#253347 5%,#4b6077 60%,#71879d);
  border-bottom-color:#bfcbd7;
}
.ssg-sponsoren--page .ssg-sponsoren__section--silber .ssg-sponsoren__heading span {
  background:linear-gradient(115deg,#d0dbe7,#fff 40%,#b8c8d9 75%,#f1f6fa);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.ssg-sponsoren--page .ssg-sponsoren__section--foerderer .ssg-sponsoren__section-head {background:linear-gradient(115deg,#152a50,#245680);}
@media(max-width:600px){
  .ssg-sponsoren--page .ssg-sponsoren__section .ssg-sponsoren__section-head {padding:28px 18px;margin-bottom:20px;}
  .ssg-sponsoren--page .ssg-sponsoren__section .ssg-sponsoren__heading {font-size:clamp(30px,8.8vw,48px);}
  .ssg-sponsoren--page .ssg-sponsoren__heading span {display:block;margin-top:6px;}
  .ssg-sponsoren--page .ssg-sponsoren__section .ssg-sponsoren__section-head::before {font-size:130px;}
}
@media(forced-colors:active){
  .ssg-sponsoren--page .ssg-sponsoren__section .ssg-sponsoren__heading span {background:none;color:CanvasText;}
}
.ssg-sponsoren--page .ssg-sponsoren__section .ssg-sponsoren__section-head .ssg-sponsoren__eyebrow {display:table;max-width:100%;padding:6px 10px;background:#152a50;color:#fff;}

/* Meisterschaften sind eine eigene Bühne – unabhängig von den Sponsor-Karten. */
.ssg-sponsoren--page .ssg-championships {margin:0 0 64px;padding:0 0 32px;background:#152a50;color:#fff;border:1px solid #9ac9e8;}
.ssg-sponsoren--page .ssg-championships__header {position:relative;isolation:isolate;overflow:hidden;padding:44px 36px;background:linear-gradient(115deg,#152a50 15%,#064c7d 65%,#0870b0);border-bottom:5px solid #9ac9e8;}
.ssg-sponsoren--page .ssg-championships__header::after {content:'';position:absolute;z-index:-1;inset:-40% -5% -40% 60%;transform:rotate(25deg);background:repeating-linear-gradient(90deg,transparent 0 30px,#9ac9e82b 31px 33px);}
.ssg-sponsoren--page .ssg-championships__eyebrow {margin:0 0 16px;color:#fff;font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;}
.ssg-sponsoren--page .ssg-championships__title {margin:0 0 22px;color:#fff;font:italic 900 clamp(38px,5.2vw,72px)/1 SportDisplay,Impact,sans-serif;}
.ssg-sponsoren--page .ssg-championships__title span {color:#9ac9e8;}
.ssg-sponsoren--page .ssg-championships__lead {max-width:64ch;color:#fff;font-size:17px;line-height:1.65;margin:0 0 22px;}
.ssg-sponsoren--page .ssg-championships__period {display:inline-block;padding:7px 12px;border:1px solid #9ac9e8;background:#152a50;color:#fff;font-size:13px;font-weight:900;}
.ssg-sponsoren--page .ssg-championships__groups {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;padding:32px 32px 0;}
.ssg-sponsoren--page .ssg-championships__group {min-width:0;}
.ssg-sponsoren--page .ssg-championships__heading {margin:0 0 20px;padding:0 0 14px;color:#fff;border-bottom:3px solid #9ac9e8;font:italic 900 clamp(28px,3vw,40px)/1.1 SportDisplay,Impact,sans-serif;}
.ssg-sponsoren--page .ssg-championships__group--international .ssg-championships__heading {border-color:#d8b66a;}
.ssg-sponsoren--page .ssg-championships__list {display:grid;gap:10px;list-style:none;margin:0;padding:0;}
.ssg-sponsoren--page .ssg-championships__item {display:grid;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:14px;min-height:76px;margin:0;padding:14px;background:#203d64;border-left:3px solid #9ac9e8;color:#fff;}
.ssg-sponsoren--page .ssg-championships__group--international .ssg-championships__item {background:linear-gradient(110deg,#2a4262,#203d64);border-left-color:#d8b66a;}
.ssg-sponsoren--page .ssg-championships__year {color:#9ac9e8;font:italic 900 27px/1 SportDisplay,Impact,sans-serif;}
.ssg-sponsoren--page .ssg-championships__group--international .ssg-championships__year {color:#f2d58b;}
.ssg-sponsoren--page .ssg-championships__name {color:#fff;font-size:16px;line-height:1.45;font-weight:700;overflow-wrap:anywhere;}
@media(max-width:767px){
.ssg-sponsoren--page .ssg-championships__groups {grid-template-columns:minmax(0,1fr);padding:24px 16px 0;gap:32px;}
.ssg-sponsoren--page .ssg-championships__header {padding:30px 20px;}
.ssg-sponsoren--page .ssg-championships__title {font-size:clamp(31px,8.5vw,52px);}
.ssg-sponsoren--page .ssg-championships__title span {display:block;}
.ssg-sponsoren--page .ssg-championships__name {font-size:15px;}
.ssg-sponsoren--page .ssg-championships__item {gap:10px;padding:12px;}
}

/* Meisterschaftsauftritte sind Teil der Goldpartnerschaft. */
.ssg-sponsoren--page .ssg-sponsoren__section--haupt .ssg-championships {margin:32px 0 0;border-color:#d8b66a;}
.ssg-sponsoren--page .ssg-sponsoren__section--haupt .ssg-championships__header {background:linear-gradient(115deg,#34270e,#604616 65%,#96702b);border-bottom-color:#d8b66a;}
.ssg-sponsoren--page .ssg-sponsoren__section--haupt .ssg-championships__title span {color:#f2d58b;}
.ssg-sponsoren--page .ssg-sponsoren__section--haupt .ssg-championships__title {font-size:clamp(34px,4.7vw,64px);}
@media(max-width:600px){.ssg-sponsoren--page .ssg-sponsoren__section--haupt .ssg-championships__header {padding:26px 12px;}.ssg-sponsoren--page .ssg-sponsoren__section--haupt .ssg-championships__title {font-size:clamp(27px,7.5vw,42px);}.ssg-sponsoren--page .ssg-sponsoren__section--haupt .ssg-championships__groups {padding-inline:10px;}}
