/* Supplied TELCOM’26 sponsor artwork; shared only by the two campaign pages. */
.telcom-sponsors { color: #173b52; background: #fff; }
.telcom-sponsors h2 { color: #173b52; }
.telcom-sponsor-group { margin-top: 44px; }
.telcom-sponsor-group h3 { margin: 0 0 24px; color: #1455a4; font-size: 13px; font-weight: 700; letter-spacing: .16em; line-height: 1.4; }
.telcom-sponsor-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); align-items: center; gap: 24px 44px; list-style: none; padding: 0; margin: 0; }
.telcom-sponsor-grid li { display: flex; align-items: center; justify-content: center; min-width: 0; min-height: 136px; }
.telcom-sponsor-logo { display: block; width: 100%; --sponsor-height: 106px; --sponsor-max: 240px; max-width: min(100%,var(--sponsor-max)) !important; height: var(--sponsor-height) !important; object-fit: contain; }
.telcom-sponsor-group--gold { border-bottom: 1px solid #dce5eb; padding-bottom: 32px; }
.telcom-sponsor-group--gold .telcom-sponsor-grid { grid-template-columns: 1fr; }
.telcom-sponsor-group--gold .telcom-sponsor-logo { --sponsor-max: 360px; --sponsor-height: 150px; }
.telcom-sponsor-logo--recyclia, .telcom-sponsor-logo--ibsat, .telcom-sponsor-logo--fermax, .telcom-sponsor-logo--hispasat { --sponsor-height: 176px; }
.telcom-sponsor-group--bronze .telcom-sponsor-grid { grid-template-columns: repeat(2,minmax(0,1fr)); max-width: 660px; margin: auto; }
.telcom-sponsor-group--bronze .telcom-sponsor-logo { --sponsor-max: 210px; --sponsor-height: 88px; }
.telcom-sponsor-collaborators { margin-top: 52px; padding-top: 12px; border-top: 1px solid #dce5eb; }
.telcom-sponsor-group--colaboran .telcom-sponsor-grid { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 28px; }
.telcom-sponsor-group--colaboran .telcom-sponsor-logo { --sponsor-max: 200px; --sponsor-height: 104px; }
.telcom-sponsor-group--colaboran .telcom-sponsor-logo--rtve { --sponsor-height: 150px; }
.telcom-sponsors .event-sponsor-callout { margin-top: 48px; }
.telcom-sponsor-strip { padding: 19px 0 16px; background: #fff; color: #173b52; border-block: 1px solid #e5ebef; min-width: 0; }
.telcom-sponsor-strip-heading { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px 24px; padding-bottom: 8px; }
.telcom-sponsor-strip-heading p { margin: 0; font-size: 11px; font-weight: 600; letter-spacing: .06em; line-height: 1.5; }
.telcom-sponsor-pause { display: inline-flex; align-items: center; gap: 8px; padding: 6px 0; cursor: pointer; font-size: 11px; line-height: 1.5; }
.telcom-sponsor-pause input { width: 16px; height: 16px; accent-color: #1455a4; }
.telcom-sponsor-window { overflow: hidden; max-width: 100%; }
.telcom-sponsor-track { display: flex; width: max-content; animation: telcom-sponsor-drift 112s linear infinite; }
.telcom-sponsor-sequence { display: flex; flex: none; align-items: center; width: max-content; list-style: none; margin: 0; padding: 0; }
.telcom-sponsor-sequence li { flex: 0 0 190px; width: 190px; height: 106px; padding: 0 23px; display: flex; align-items: center; justify-content: center; }
.telcom-sponsor-sequence .telcom-sponsor-logo { width: 144px; --sponsor-max: 144px; --sponsor-height: 68px; }
.telcom-sponsor-sequence .telcom-sponsor-logo--recyclia, .telcom-sponsor-sequence .telcom-sponsor-logo--ibsat, .telcom-sponsor-sequence .telcom-sponsor-logo--rtve { --sponsor-height: 105px; }
.telcom-sponsor-strip:hover .telcom-sponsor-track,
.telcom-sponsor-strip:focus-within .telcom-sponsor-track,
.telcom-sponsor-strip:has(input:checked) .telcom-sponsor-track { animation-play-state: paused; }
.telcom-sponsor-strip:focus-visible, .telcom-sponsor-pause input:focus-visible, .telcom-sponsors-cta:focus-visible { outline: 3px solid #1455a4; outline-offset: 4px; }
@keyframes telcom-sponsor-drift { to { transform: translateX(-50%); } }
.telcom-sponsors--home { padding-top: 52px; }
.telcom-sponsors-home-heading { display: flex; justify-content: space-between; align-items: baseline; flex-wrap: wrap; gap: 12px 32px; margin-bottom: 32px; }
.telcom-sponsors-eyebrow { color: #1455a4; font-size: 11px; font-weight: 700; letter-spacing: .13em; margin: 0; }
.telcom-sponsors-home-heading h2 { font-size: clamp(25px,2.5vw,34px); letter-spacing: -.025em; margin: 0; line-height: 1.25; }
.telcom-sponsors-home-tiers { display: grid; grid-template-columns: 1fr 2.3fr 1fr; gap: 32px; align-items: start; }
.telcom-sponsors--home .telcom-sponsor-group { margin: 0; padding: 0; border: 0; }
.telcom-sponsors--home .telcom-sponsor-group h3 { margin-bottom: 14px; font-size: 11px; }
.telcom-sponsors--home .telcom-sponsor-grid { gap: 5px 16px; }
.telcom-sponsors--home .telcom-sponsor-grid li { min-height: 68px; }
.telcom-sponsors--home .telcom-sponsor-logo { --sponsor-max: 135px; --sponsor-height: 52px; }
.telcom-sponsors--home .telcom-sponsor-logo--recyclia, .telcom-sponsors--home .telcom-sponsor-logo--ibsat, .telcom-sponsors--home .telcom-sponsor-logo--fermax, .telcom-sponsors--home .telcom-sponsor-logo--hispasat { --sponsor-height: 78px; }
.telcom-sponsors--home .telcom-sponsor-group--gold .telcom-sponsor-logo { --sponsor-max: 225px; --sponsor-height: 130px; }
.telcom-sponsors--home .telcom-sponsor-group--bronze .telcom-sponsor-grid { grid-template-columns: 1fr; gap: 20px; }
.telcom-sponsors-cta { display: flex; justify-content: center; align-items: center; gap: 10px; width: fit-content; max-width: 100%; margin: 30px auto 32px; padding: 14px 20px; border: 1px solid #1455a4; color: #1455a4; font-size: 14px; font-weight: 600; text-align: center; text-decoration: none; line-height: 1.5; }
.telcom-sponsors-cta:hover { background: #edf5fb; }
@media(max-width:900px) {
 .telcom-sponsors-home-tiers { grid-template-columns: 1fr 2fr; }
 .telcom-sponsors--home .telcom-sponsor-group--bronze { grid-column: 1 / -1; }
 .telcom-sponsors--home .telcom-sponsor-group--bronze .telcom-sponsor-grid { grid-template-columns: repeat(2,minmax(0,1fr)); max-width: 440px; }
 .telcom-sponsor-group--colaboran .telcom-sponsor-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media(max-width:600px) {
 .telcom-sponsor-group { margin-top: 32px; }
 .telcom-sponsor-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px 24px; }
 .telcom-sponsor-grid li { min-height: 108px; }
 .telcom-sponsor-logo { --sponsor-max: 170px; --sponsor-height: 80px; }
 .telcom-sponsor-logo--recyclia, .telcom-sponsor-logo--ibsat, .telcom-sponsor-logo--fermax, .telcom-sponsor-logo--hispasat { --sponsor-height: 130px; }
 .telcom-sponsor-group--gold .telcom-sponsor-logo { --sponsor-max: 290px; --sponsor-height: 120px; }
 .telcom-sponsor-group--bronze .telcom-sponsor-grid { gap: 24px; }
 .telcom-sponsor-group--bronze .telcom-sponsor-logo { --sponsor-max: 145px; --sponsor-height: 70px; }
 .telcom-sponsor-group--colaboran .telcom-sponsor-logo { --sponsor-height: 80px; }
 .telcom-sponsor-group--colaboran .telcom-sponsor-logo--rtve { --sponsor-height: 118px; }
 .telcom-sponsors-home-tiers { grid-template-columns: 1fr; gap: 25px; }
 .telcom-sponsors--home .telcom-sponsor-group--bronze { grid-column: auto; }
 .telcom-sponsors--home .telcom-sponsor-group--gold .telcom-sponsor-logo { --sponsor-max: 210px; --sponsor-height: 90px; }
 .telcom-sponsors--home .telcom-sponsor-group--silver .telcom-sponsor-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 6px 16px; }
 .telcom-sponsors--home .telcom-sponsor-logo { --sponsor-max: 120px; }
 .telcom-sponsors--home .telcom-sponsor-logo--recyclia, .telcom-sponsors--home .telcom-sponsor-logo--ibsat, .telcom-sponsors--home .telcom-sponsor-logo--fermax, .telcom-sponsors--home .telcom-sponsor-logo--hispasat { --sponsor-height: 70px; }
 .telcom-sponsors--home .telcom-sponsor-group--bronze .telcom-sponsor-grid { max-width: 100%; }
 .telcom-sponsor-sequence li { flex-basis: 164px; width: 164px; padding-inline: 18px; }
 .telcom-sponsor-sequence .telcom-sponsor-logo { width: 128px; --sponsor-max: 128px; }
 .telcom-sponsors-cta { font-size: 13px; }
}
@media(prefers-reduced-motion:reduce) {
 .telcom-sponsor-track { animation: none; width: 100%; transform: none; }
 .telcom-sponsor-sequence { width: 100%; flex-wrap: wrap; justify-content: center; gap: 12px 0; }
 .telcom-sponsor-sequence li { flex: 0 0 150px; width: 150px; }
 .telcom-sponsor-sequence[aria-hidden="true"], .telcom-sponsor-pause { display: none; }
}
