.kndsb-partner-list { display: grid; gap: 2rem; margin-block: 3rem; }
.kndsb-partner-link { color: var(--kndsb-color-blue); text-decoration: none; }
.kndsb-partner-list .kndsb-partner-link { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 3fr); background: var(--kndsb-color-blue-white); }
.kndsb-partner-list .kndsb-partner-link > img { width: 100%; height: 100%; min-height: 13rem; object-fit: cover; }
.kndsb-partner-list .kndsb-partner-link > div { padding: 2rem; }
.kndsb-partner-link h2 { margin: 0 0 1rem; }
.kndsb-partner-link:hover h2 { text-decoration: underline; text-underline-offset: .2em; }
.kndsb-partner-logos { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 2rem 4rem; }
.kndsb-partner-logos > a { display: flex; align-items: center; justify-content: center; width: 10rem; min-height: 6rem; }
.kndsb-partner-logos img { max-width: 100%; max-height: 5rem; object-fit: contain; }
.kndsb-partner-logos h2 { font-size: 1.125rem; }
.kndsb-partner-logos p, .kndsb-partner-logos span { display: none; }
.kndsb-managed-partners { padding-block: 3rem; background: #fff; margin: 0; }
.kndsb-partner-hero img { width: 100%; max-height: 32rem; object-fit: cover; }
.kndsb-partner-story { max-width: 72ch; margin-inline: auto; }
.kndsb-partner-story h1 { margin-block: 2rem; }
.kndsb-footer__social { margin-top: 2rem; }
.kndsb-footer__social nav { display: flex; flex-wrap: wrap; gap: .75rem 1.5rem; }
.kndsb-footer__social a { color: #fff; text-decoration: underline; text-underline-offset: .2em; }
.kndsb-team-landing { padding-block: 3rem; }
.kndsb-team-landing nav { display: flex; flex-wrap: wrap; gap: 1rem 2rem; margin-block: 2rem; }
.kndsb-sport-page:has(.kndsb-managed-partners) { padding-bottom: 0; }
@media(max-width: 47.5rem) { .kndsb-partner-list .kndsb-partner-link { grid-template-columns: 1fr; } .kndsb-partner-list .kndsb-partner-link > div { padding: 1.5rem; } }

.kndsb-futsal-menu summary, .kndsb-header__mobile-menu summary { cursor: pointer; padding-block: .75rem; }
.kndsb-header__mobile-menu ul { padding-inline-start: 1rem; }
.kndsb-header__mobile-menu summary { color: var(--kndsb-color-blue); padding-inline: 1.25rem; border-bottom: 1px solid var(--kndsb-color-border); }
/* Managed fixtures do not rely on saved child blocks to enqueue their styles. */
.kndsb-team-squad__role, .kndsb-team-squad__card .player-role { color: var(--kndsb-color-muted); }
.kndsb-partner-story > a, .kndsb-partner-story p a { text-decoration: underline; text-underline-offset: .2em; }
.kndsb-partner-list .kndsb-partner-link > div:only-child { grid-column: 1 / -1; }
.kndsb-footer__social { margin: 0 0 2rem; }

.kndsb-team-hero:not(:has(img)), .kndsb-team-hero__placeholder { background: var(--kndsb-color-blue); }
.kndsb-team-page .section_team-news { color: #fff; }
.kndsb-team-page .section_team-news .kndsb-team-page__section-title { color: #fff; }
.kndsb-team-page__match-grid > .wp-block-column { min-width: 0; }
/* Retire the old negative-margin join: text must stay inside its own column. */
.kndsb-team-page__match-grid.wp-block-columns { display: grid; grid-template-columns: minmax(0, 55fr) minmax(0, 45fr); }
.kndsb-team-page__match-grid.wp-block-columns > .wp-block-column { margin: 0; width: auto; flex-basis: auto; }
.kndsb-team-page__match-grid .kndsb-team-featured__empty { box-sizing: border-box; height: 100%; min-height: 470px; }
@media(max-width: 56.25rem) {
 .kndsb-team-page__match-grid.wp-block-columns { grid-template-columns: minmax(0, 1fr); }
 .kndsb-team-page__match-grid .kndsb-team-featured__empty { min-height: 240px; }
}
.kndsb-contact { max-width: 42rem; padding-bottom: 3rem; }
.kndsb-contact form p { margin-block: 1.25rem; }
.kndsb-contact label { display: block; color: var(--kndsb-color-blue); font-weight: 700; margin-bottom: .5rem; }
.kndsb-contact input:not([type=hidden]), .kndsb-contact textarea { display: block; box-sizing: border-box; border: 1px solid var(--kndsb-color-muted); border-radius: 0; padding: .75rem; width: 100%; background: #fff; color: var(--kndsb-color-ink); font: inherit; }
.kndsb-contact textarea { resize: vertical; }
.kndsb-contact button { background: var(--kndsb-color-blue); color: #fff; border: 0; padding: .875rem 1.5rem; font: inherit; font-weight: 700; cursor: pointer; }
.kndsb-contact button:hover { background: var(--kndsb-color-blue-dark); }
.kndsb-contact a { text-decoration: underline; }
.kndsb-contact__error { color: #a20c20; }
.kndsb-contact__trap { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.kndsb-footer__social-icons { display: flex; flex-wrap: wrap; gap: .5rem; padding: 0; margin: 0; list-style: none; }
.kndsb-footer .kndsb-footer__social-icons li { background: transparent; margin: 0; padding: 0; list-style: none; }
.kndsb-footer .kndsb-footer__social-icons a { display: flex; justify-content: center; align-items: center; width: 44px; height: 44px; padding: 0; background: var(--kndsb-color-blue); color: #fff; border-radius: 0; }
.kndsb-footer .kndsb-footer__social-icons a:hover { background: var(--kndsb-color-blue-dark); }
.kndsb-footer__social-icons svg { width: 24px; height: 24px; fill: currentColor; }
