.sp-home{
  display:grid;
  gap:var(--sp-section-gap-small);
  min-width:0;
  max-width:100%;
}

.sp-home-hero{
  display:grid;
  grid-template-columns:minmax(0,60%) minmax(0,40%);
  gap:clamp(22px,4vw,54px);
  align-items:center;
  min-width:0;
}

.sp-home-hero__media,
.sp-home-hero__text{
  min-width:0;
}

.sp-home-hero__media{
  overflow:hidden;
  border:1px solid var(--sp-card-border);
  border-radius:var(--sp-radius-md);
  background:var(--sp-white-04);
}

.sp-home-hero__image{
  display:block;
  width:100%;
  height:auto;
  max-width:100%;
  object-fit:cover;
}

.sp-home-hero__text{
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.sp-home-hero__heading{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:.18em;
  margin-top:14px;
  font-family:var(--sp-font-display);
  color:var(--sp-text);
  font-size:clamp(36px,4.6vw,72px);
  font-weight:var(--sp-fw-medium);
  line-height:.96;
  letter-spacing:-.07em;
}

.sp-home-hero__heading h1,
.sp-home-hero__heading h2{
  display:inline;
  margin:0;
  font:inherit;
  line-height:inherit;
  letter-spacing:inherit;
}

.sp-home-hero__heading span{
  display:inline;
  color:var(--sp-text-soft);
  font:inherit;
  line-height:inherit;
  letter-spacing:inherit;
}

.sp-home-hero__heading h2{
  color:var(--sp-accent);
}

.sp-home-hero__lead{
  max-width:620px;
  margin:22px 0 0;
  color:var(--sp-text-soft);
  font-size:var(--sp-fs-body-lg);
}

.sp-home-nav{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  min-width:0;
}

.sp-home-nav-card{
  position:relative;
  overflow:hidden;
  display:grid;
  gap:8px;
  min-height:154px;
  padding:18px;
  border:1px solid var(--sp-card-border);
  border-radius:var(--sp-radius-md);
  background:var(--sp-white-04);
  color:var(--sp-text);
  text-decoration:none;
  transition:
    transform var(--sp-transition-fast),
    border-color var(--sp-transition-fast),
    background var(--sp-transition-fast);
}

.sp-home-nav-card::after{
  content:"";
  position:absolute;
  right:-34px;
  bottom:-42px;
  width:118px;
  height:118px;
  border-radius:50%;
  background:var(--sp-accent-alpha-075);
  opacity:.75;
}

.sp-home-nav-card:hover{
  transform:translateY(-2px);
  border-color:var(--sp-card-border-hover);
  background:var(--sp-gradient-card-hover);
}

.sp-home-nav-card span{
  position:relative;
  z-index:1;
  width:max-content;
  padding:6px 9px;
  border-radius:var(--sp-radius-pill);
  background:var(--sp-accent-alpha-08);
  color:var(--sp-accent);
  font-size:var(--sp-fs-xs);
  font-weight:var(--sp-fw-black);
}

.sp-home-nav-card strong{
  position:relative;
  z-index:1;
  align-self:end;
  font-size:var(--sp-fs-xl);
  font-weight:var(--sp-fw-norm);
  line-height:1;
  letter-spacing:-.04em;
}

.sp-home-nav-card em{
  position:relative;
  z-index:1;
  color:var(--sp-muted);
  font-style:normal;
  font-size:var(--sp-fs-sm);
}

.sp-home-matches__grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  align-items:start;
  min-width:0;
}

.sp-home-matches__grid--single{
  grid-template-columns:1fr;
}

.sp-home-panel{
  min-width:0;
  padding:18px;
  background:var(--sp-white-035);
}

.sp-home-panel__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:14px;
}

.sp-home-panel__head span{
  display:block;
  margin-bottom:6px;
  color:var(--sp-accent);
  font-size:var(--sp-fs-xs);
  font-weight:var(--sp-fw-black);
  letter-spacing:.12em;
  text-transform:uppercase;
}

.sp-home-panel__head h3,
.sp-home-clubs__intro h3{
  margin:0;
  font-family:var(--sp-font-display);
  letter-spacing:-.045em;
  line-height:1.03;
}

.sp-home-panel__head h3{
  font-size:var(--sp-fs-xl);
}

.sp-home-panel__head a{
  color:var(--sp-muted);
  font-size:var(--sp-fs-xs);
  font-weight:var(--sp-fw-bold);
  white-space:nowrap;
  text-decoration:none;
}

.sp-home-panel__head a:hover{
  color:var(--sp-accent);
}

/* Главная — блок "Календарь и результаты" */

.sp-home-matches{
  min-width:0;
  max-width:100%;
}

.sp-home-matches__head{
  align-items:end;
}

.sp-home-matches__more{
  text-decoration:none;
}

.sp-home-matches__more--mobile{
  display:none;
}

.sp-home-matches-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:18px;
}

.sp-home-matches-tab{
  display:inline-flex;
  min-height:38px;
  align-items:center;
  justify-content:center;
  padding:9px 15px;
  border:1px solid var(--sp-card-border);
  border-radius:var(--sp-radius-pill);
  background:var(--sp-white-04);
  color:var(--sp-text-soft);
  font:inherit;
  font-size:var(--sp-fs-xs);
  font-weight:var(--sp-fw-norm);
  line-height:1;
  cursor:pointer;
  transition:
    transform var(--sp-transition-fast),
    color var(--sp-transition-fast),
    border-color var(--sp-transition-fast),
    background var(--sp-transition-fast),
    box-shadow var(--sp-transition-fast);
}

.sp-home-matches-tab:hover{
  transform:translateY(-1px);
  border-color:var(--sp-card-border-hover);
  background:var(--sp-accent-alpha-08);
  color:var(--sp-accent);
}

.sp-home-matches-tab.is-active{
  border-color:transparent;
  background:var(--sp-gradient-accent);
  color:var(--sp-accent-contrast);
  box-shadow:var(--sp-shadow-filter-active);
}

.sp-home-matches-panels,
.sp-home-matches-panel,
.sp-home-matches-scroll,
.sp-home-matches-grid{
  min-width:0;
  max-width:100%;
}

.sp-home-matches-panel[hidden]{
  display:none !important;
}

.sp-home-matches-scroll{
  width:100%;
  max-width:100%;
  overflow:visible;
}

.sp-home-matches-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.sp-home-match-card{
  overflow:hidden;
  display:grid;
  min-width:0;
  gap:14px;
  padding:16px;
  border:1px solid var(--sp-card-border);
  border-radius:var(--sp-radius-md);
  background:var(--sp-gradient-card);
  color:var(--sp-text);
  text-decoration:none;
  box-shadow:var(--sp-shadow-soft);
  transition:
    transform var(--sp-transition-fast),
    border-color var(--sp-transition-fast),
    background var(--sp-transition-fast);
}

.sp-home-match-card:hover{
  transform:translateY(-2px);
  border-color:var(--sp-card-border-hover);
  background:var(--sp-gradient-card-hover);
}

.sp-home-match-card__teams{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  gap:12px;
  align-items:center;
}

.sp-home-match-card__team{
  display:grid;
  min-width:0;
  gap:8px;
  justify-items:center;
  text-align:center;
}

.sp-home-match-card__logo-wrap{
  overflow:hidden;
  display:flex;
  width:48px;
  height:48px;
  align-items:center;
  justify-content:center;
  border:1px solid var(--sp-card-border);
  border-radius:50%;
  background:var(--sp-white-04);
  transition:
    border-color var(--sp-transition-fast),
    background var(--sp-transition-fast);
}

.sp-home-match-card:hover .sp-home-match-card__logo-wrap{
  border-color:var(--sp-card-border-hover);
  background:var(--sp-accent-alpha-08);
}

.sp-home-match-card__logo{
  display:block;
  width:36px;
  height:36px;
  object-fit:contain;
}

.sp-home-match-card__logo--placeholder{
  display:flex;
  width:36px;
  height:36px;
  align-items:center;
  justify-content:center;
  color:var(--sp-accent);
  font-size:var(--sp-fs-xs);
  font-weight:var(--sp-fw-black);
}

.sp-home-match-card__team-name{
  overflow:hidden;
  width:100%;
  color:var(--sp-text);
  font-size:var(--sp-fs-sm);
  font-weight:var(--sp-fw-medium);
  line-height:1.12;
  white-space:nowrap;
  text-overflow:ellipsis;
}

.sp-home-match-card__score{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  min-width:74px;
  color:var(--sp-text);
  font-family:var(--sp-font-display);
  font-size:var(--sp-fs-2xl);
  font-weight:var(--sp-fw-black);
  line-height:1;
  letter-spacing:-.05em;
}

.sp-home-match-card__score em{
  color:var(--sp-muted);
  font-style:normal;
  font-weight:var(--sp-fw-medium);
}

.sp-home-match-card__meta{
  display:grid;
  gap:7px;
  padding-top:12px;
  border-top:1px solid var(--sp-card-border);
  color:var(--sp-muted);
  font-size:var(--sp-fs-xs);
  font-weight:var(--sp-fw-bold);
  line-height:1.2;
}

.sp-home-match-card__meta-top{
  display:flex;
  min-width:0;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}

.sp-home-match-card__date{
  overflow:hidden;
  min-width:0;
  color:var(--sp-text-soft);
  font-weight:var(--sp-fw-norm);
  white-space:nowrap;
  text-overflow:ellipsis;
}

.sp-home-match-card__tournament{
  overflow:hidden;
  color:var(--sp-muted);
  white-space:nowrap;
  text-overflow:ellipsis;
}

.sp-home-match-card__status{
  display:inline-flex;
  flex:0 0 auto;
  width:max-content;
  max-width:48%;
  align-items:center;
  justify-content:center;
  margin-left:auto;
  overflow:hidden;
  padding:5px 9px;
  border:1px solid var(--sp-card-border);
  border-radius:999px;
  background:var(--sp-white-04);
  color:var(--sp-text);
  font-size:11px;
  font-weight:var(--sp-fw-norm);
  line-height:1;
  letter-spacing:.04em;
  text-transform:uppercase;
  white-space:nowrap;
  text-overflow:ellipsis;
}

.sp-home-match-card__status--scheduled{
  color:var(--sp-accent);
}

.sp-home-match-card__status--finished{
  color:var(--sp-muted);
}

.sp-home-match-card__status--live{
  border-color:var(--sp-card-border-hover);
  background:var(--sp-accent-alpha-08);
  color:var(--sp-text);
}

.sp-home-match-card__status--postponed,
.sp-home-match-card__status--cancelled{
  color:var(--sp-muted);
}

@media (max-width:1200px){
  .sp-home-matches-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:767px){
  .sp-home-matches__head{
    align-items:flex-start;
  }

  .sp-home-matches__more--desktop{
    display:none;
  }

  .sp-home-matches__more--mobile{
    display:inline-flex;
    width:max-content;
    margin-top:16px;
  }

  .sp-home-matches-tabs{
    overflow-x:auto;
    flex-wrap:nowrap;
    margin-bottom:14px;
    padding-bottom:2px;
    scrollbar-width:none;
    -ms-overflow-style:none;
  }

  .sp-home-matches-tabs::-webkit-scrollbar{
    display:none;
  }

  .sp-home-matches-tab{
    flex:0 0 auto;
  }

  .sp-home-matches-scroll{
    width:100%;
    max-width:100%;
    overflow-x:auto;
    overflow-y:hidden;
    margin-inline:0;
    padding-inline:0;
    padding-bottom:4px;
    overscroll-behavior-x:contain;
    scrollbar-width:none;
    -ms-overflow-style:none;
  }

  .sp-home-matches-scroll::-webkit-scrollbar{
    display:none;
  }

  .sp-home-matches-grid{
    display:flex;
    width:100%;
    max-width:none;
    min-width:0;
    gap:14px;
    grid-template-columns:none;
  }

  .sp-home-match-card{
    flex:0 0 86%;
    width:86%;
    min-width:86%;
    max-width:86%;
    border-radius:var(--sp-radius-mobile);
  }

  .sp-home-match-card__teams{
    gap:10px;
  }

  .sp-home-match-card__logo-wrap{
    width:44px;
    height:44px;
  }

  .sp-home-match-card__logo{
    width:32px;
    height:32px;
  }

  .sp-home-match-card__score{
    min-width:62px;
    font-size:var(--sp-fs-xl);
  }
}

/* Главная — блок "Лиги" */

.sp-home-leagues{
  min-width:0;
  max-width:100%;
}

.sp-home-leagues__head{
  align-items:end;
}

.sp-home-leagues__more{
  text-decoration:none;
}

.sp-home-leagues__more--mobile{
  display:none;
}

.sp-home-leagues-scroll{
  width:100%;
  max-width:100%;
  overflow:visible;
}

.sp-home-league-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  min-width:0;
  max-width:100%;
}

.sp-home-league-card{
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:112px minmax(0,1fr);
  min-width:0;
  min-height:178px;
  border:1px solid var(--sp-card-border);
  border-radius:var(--sp-radius-md);
  background:var(--sp-gradient-card);
  box-shadow:var(--sp-shadow-soft);
  transition:
    transform var(--sp-transition-fast),
    border-color var(--sp-transition-fast),
    background var(--sp-transition-fast);
}

.sp-home-league-card:hover{
  transform:translateY(-2px);
  border-color:var(--sp-card-border-hover);
  background:var(--sp-gradient-card-hover);
}

.sp-home-league-card__cover{
  position:absolute;
  inset:0;
  z-index:1;
  border-radius:inherit;
  text-decoration:none;
}

.sp-home-league-card__logo-side{
  position:relative;
  z-index:2;
  display:flex;
  min-width:0;
  align-items:center;
  justify-content:center;
  padding:16px;
  border-right:1px solid var(--sp-card-border);
  background:
    radial-gradient(120px 90px at 50% 25%, var(--sp-accent-alpha-16), transparent 66%),
    var(--sp-white-04);
  transition:
    border-color var(--sp-transition-fast),
    background var(--sp-transition-fast);
  pointer-events:none;
}

.sp-home-league-card:hover .sp-home-league-card__logo-side{
  border-color:var(--sp-card-border-hover);
  background:
    radial-gradient(120px 90px at 50% 25%, var(--sp-accent-alpha-22), transparent 66%),
    var(--sp-accent-alpha-08);
}

.sp-home-league-card__logo{
  display:flex;
  width:72px;
  height:72px;
  align-items:center;
  justify-content:center;
}

.sp-home-league-card__logo img,
.sp-home-league-card__logo .sp-league-logo{
  display:block;
  width:72px;
  height:72px;
  object-fit:contain;
}

.sp-home-league-card__logo-placeholder{
  display:flex;
  width:72px;
  height:72px;
  align-items:center;
  justify-content:center;
  border:1px solid var(--sp-card-border);
  border-radius:50%;
  background:var(--sp-white-04);
  color:var(--sp-accent);
  font-size:var(--sp-fs-lg);
  font-weight:var(--sp-fw-black);
}

.sp-home-league-card__body{
  position:relative;
  z-index:2;
  display:flex;
  min-width:0;
  flex-direction:column;
  justify-content:center;
  gap:14px;
  padding:18px 58px 18px 18px;
  pointer-events:none;
}

.sp-home-league-card__text{
  display:grid;
  min-width:0;
  gap:6px;
}

.sp-home-league-card__text strong{
  overflow:hidden;
  display:block;
  color:var(--sp-text);
  font-family:var(--sp-font-display);
  font-size:var(--sp-fs-2xl);
  font-weight:var(--sp-fw-norm);
  line-height:1;
  letter-spacing:-.055em;
  white-space:nowrap;
  text-overflow:ellipsis;
}

.sp-home-league-card__text em{
  overflow:hidden;
  display:block;
  color:var(--sp-muted);
  font-style:normal;
  font-size:var(--sp-fs-sm);
  font-weight:var(--sp-fw-bold);
  line-height:1.2;
  white-space:nowrap;
  text-overflow:ellipsis;
}

.sp-home-league-card__links{
  position:relative;
  z-index:3;
  display:flex;
  flex-wrap:nowrap;
  align-items:center;
  gap:8px;
  min-width:0;
  pointer-events:auto;
}

.sp-home-league-card__links a{
  display:inline-flex;
  flex:0 0 auto;
  min-height:34px;
  align-items:center;
  justify-content:center;
  padding:8px 12px;
  border:1px solid var(--sp-card-border);
  border-radius:var(--sp-radius-pill);
  background:var(--sp-white-04);
  color:var(--sp-text-soft);
  font-size:var(--sp-fs-xs);
  font-weight:var(--sp-fw-bold);
  line-height:1;
  white-space:nowrap;
  text-decoration:none;
  transition:
    transform var(--sp-transition-fast),
    color var(--sp-transition-fast),
    border-color var(--sp-transition-fast),
    background var(--sp-transition-fast);
}

.sp-home-league-card__links a:hover{
  transform:translateY(-1px);
  border-color:var(--sp-card-border-hover);
  background:var(--sp-accent-alpha-08);
  color:var(--sp-accent);
}

.sp-home-league-card__arrow{
  position:absolute;
  z-index:2;
  right:16px;
  top:16px;
  display:flex;
  width:34px;
  height:34px;
  align-items:center;
  justify-content:center;
  border:1px solid var(--sp-card-border);
  border-radius:50%;
  background:var(--sp-white-04);
  color:var(--sp-accent);
  font-size:var(--sp-fs-sm);
  font-weight:var(--sp-fw-black);
  transition:
    transform var(--sp-transition-fast),
    border-color var(--sp-transition-fast),
    background var(--sp-transition-fast);
  pointer-events:none;
}

.sp-home-league-card:hover .sp-home-league-card__arrow{
  transform:translateX(2px);
  border-color:var(--sp-card-border-hover);
  background:var(--sp-accent-alpha-08);
}

.sp-home-chip-list{
  margin-top:18px;
}

/* Главная — блок "Хоккейные новости" */

.sp-home-news{
  min-width:0;
  max-width:100%;
  overflow:visible;
}

.sp-home-news__head{
  align-items:end;
}

.sp-home-news__more{
  text-decoration:none;
}

.sp-home-news__more--mobile{
  display:none;
}

/* Адаптив главной */

@media (max-width:1180px){
  .sp-home-matches__grid,
  .sp-home-clubs__layout{
    grid-template-columns:1fr;
  }

  .sp-home-clubs__intro{
    position:relative;
    top:auto;
  }

  .sp-home-nav{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:1024px){
  .sp-home-hero{
    grid-template-columns:1fr;
  }

  .sp-home-hero__text{
    order:1;
  }

  .sp-home-hero__media{
    order:2;
  }

  .sp-home-hero__heading{
    max-width:860px;
  }

  .sp-home-hero__lead{
    max-width:780px;
  }
}

@media (max-width:900px){
  .sp-home-league-grid,
  .sp-home-clubs__grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:767px){
  .sp-home{
    gap:34px;
  }

  .sp-home-hero{
    gap:22px;
  }

  .sp-home-hero__media{
    border-radius:var(--sp-radius-mobile);
  }

  .sp-home-hero__heading{
    margin-top:12px;
    font-size:clamp(32px,10vw,46px);
    line-height:.96;
    letter-spacing:-.07em;
  }

  .sp-home-hero__lead{
    margin-top:16px;
    font-size:var(--sp-fs-mobile-body);
  }

  .sp-home-clubs__grid{
    grid-template-columns:1fr;
  }

  .sp-home-nav{
    display:flex;
    overflow-x:auto;
    gap:12px;
    padding-bottom:4px;
    overscroll-behavior-x:contain;
    scrollbar-width:none;
    -ms-overflow-style:none;
  }

  .sp-home-nav::-webkit-scrollbar{
    display:none;
  }

  .sp-home-nav-card{
    flex:0 0 82%;
    width:82%;
    min-width:82%;
    max-width:82%;
    min-height:128px;
  }

  .sp-home-panel,
  .sp-home-clubs__intro{
    border-radius:var(--sp-radius-mobile);
  }

  .sp-home-panel__head{
    flex-direction:column;
  }

  .sp-home-news__head{
    align-items:flex-start;
  }

  .sp-home-news__more--desktop{
    display:none;
  }

  .sp-home-news__more--mobile{
    display:inline-flex;
    width:max-content;
    margin-top:16px;
  }

  .sp-home-leagues__head{
    align-items:flex-start;
  }

  .sp-home-leagues__more--desktop{
    display:none;
  }

  .sp-home-leagues__more--mobile{
    display:inline-flex;
    width:max-content;
    margin-top:16px;
  }

  .sp-home-leagues-scroll{
    width:100%;
    max-width:100%;
    overflow-x:auto;
    overflow-y:hidden;
    margin-inline:0;
    padding-inline:0;
    padding-bottom:4px;
    overscroll-behavior-x:contain;
    scrollbar-width:none;
    -ms-overflow-style:none;
  }

  .sp-home-leagues-scroll::-webkit-scrollbar{
    display:none;
  }

  .sp-home-league-grid{
    display:flex;
    width:100%;
    max-width:none;
    min-width:0;
    gap:14px;
    grid-template-columns:none;
  }

  .sp-home-league-card{
    flex:0 0 86%;
    width:86%;
    min-width:86%;
    max-width:86%;
    min-height:166px;
    grid-template-columns:96px minmax(0,1fr);
    border-radius:var(--sp-radius-mobile);
  }

  .sp-home-league-card__logo-side{
    padding:12px;
  }

  .sp-home-league-card__logo,
  .sp-home-league-card__logo img,
  .sp-home-league-card__logo .sp-league-logo,
  .sp-home-league-card__logo-placeholder{
    width:62px;
    height:62px;
  }

  .sp-home-league-card__body{
    padding:16px 48px 16px 14px;
  }

  .sp-home-league-card__text strong{
    font-size:var(--sp-fs-xl);
  }

  .sp-home-league-card__text em{
    overflow:hidden;
    display:-webkit-box;
    color:var(--sp-muted);
    font-size:var(--sp-fs-xs);
    white-space:normal;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
  }

  .sp-home-league-card__links{
    flex-wrap:nowrap;
    gap:6px;
  }

  .sp-home-league-card__links a{
    min-height:32px;
    padding:7px 10px;
    white-space:nowrap;
  }

  .sp-home-league-card__arrow{
    top:12px;
    right:12px;
    width:30px;
    height:30px;
  }
}

/* Главная — блок "Хоккейные команды" */

.sp-home-clubs{
  min-width:0;
  max-width:100%;
}

.sp-home-clubs__head{
  align-items:end;
}

.sp-home-clubs__more{
  text-decoration:none;
}

.sp-home-clubs__more--mobile{
  display:none;
}

.sp-home-clubs-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:18px;
}

.sp-home-clubs-tab{
  display:inline-flex;
  min-height:38px;
  align-items:center;
  justify-content:center;
  padding:9px 15px;
  border:1px solid var(--sp-card-border);
  border-radius:var(--sp-radius-pill);
  background:var(--sp-white-04);
  color:var(--sp-text-soft);
  font:inherit;
  font-size:var(--sp-fs-xs);
  font-weight:var(--sp-fw-norm);
  line-height:1;
  cursor:pointer;
  transition:
    transform var(--sp-transition-fast),
    color var(--sp-transition-fast),
    border-color var(--sp-transition-fast),
    background var(--sp-transition-fast),
    box-shadow var(--sp-transition-fast);
}

.sp-home-clubs-tab:hover{
  transform:translateY(-1px);
  border-color:var(--sp-card-border-hover);
  background:var(--sp-accent-alpha-08);
  color:var(--sp-accent);
}

.sp-home-clubs-tab.is-active{
  border-color:transparent;
  background:var(--sp-gradient-accent);
  color:var(--sp-accent-contrast);
  box-shadow:var(--sp-shadow-filter-active);
}

.sp-home-clubs-panels,
.sp-home-clubs-panel,
.sp-home-clubs-scroll,
.sp-home-clubs-grid{
  min-width:0;
  max-width:100%;
}

.sp-home-clubs-panel[hidden]{
  display:none !important;
}

.sp-home-clubs-scroll{
  width:100%;
  max-width:100%;
  overflow:visible;
}

.sp-home-clubs-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:14px;
}

.sp-home-club-card{
  overflow:hidden;
  display:flex;
  min-width:0;
  align-items:center;
  gap:12px;
  padding:14px;
  border:1px solid var(--sp-card-border);
  border-radius:var(--sp-radius-md);
  background:var(--sp-gradient-card);
  color:var(--sp-text);
  text-decoration:none;
  box-shadow:var(--sp-shadow-soft);
  transition:
    transform var(--sp-transition-fast),
    border-color var(--sp-transition-fast),
    background var(--sp-transition-fast);
}

.sp-home-club-card:hover{
  transform:translateY(-2px);
  border-color:var(--sp-card-border-hover);
  background:var(--sp-gradient-card-hover);
}

.sp-home-club-card__logo-wrap{
  overflow:hidden;
  display:flex;
  flex:0 0 48px;
  width:48px;
  height:48px;
  align-items:center;
  justify-content:center;
  border:1px solid var(--sp-card-border);
  border-radius:50%;
  background:var(--sp-white-04);
  transition:
    border-color var(--sp-transition-fast),
    background var(--sp-transition-fast),
    box-shadow var(--sp-transition-fast);
}

.sp-home-club-card:hover .sp-home-club-card__logo-wrap{
  border-color:var(--sp-card-border-hover);
}

.sp-home-club-card__logo{
  display:block;
  width:36px;
  height:36px;
  object-fit:contain;
}

.sp-home-club-card__logo--placeholder{
  display:flex;
  width:36px;
  height:36px;
  align-items:center;
  justify-content:center;
  color:var(--sp-accent);
  font-size:var(--sp-fs-sm);
  font-weight:var(--sp-fw-black);
}

.sp-home-club-card__body{
  display:grid;
  min-width:0;
  gap:5px;
}

.sp-home-club-card__title{
  overflow:hidden;
  margin:0;
  color:var(--sp-text);
  font-size:var(--sp-fs-md);
  font-weight:var(--sp-fw-medium);
  line-height:1.1;
  letter-spacing:-.035em;
  white-space:nowrap;
  text-overflow:ellipsis;
}

.sp-home-club-card__meta{
  overflow:hidden;
  color:var(--sp-muted);
  font-size:var(--sp-fs-xs);
  font-weight:var(--sp-fw-norm);
  line-height:1.15;
  white-space:nowrap;
  text-overflow:ellipsis;
}

@media (max-width:1200px){
  .sp-home-clubs-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
}

@media (max-width:1024px){
  .sp-home-clubs-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media (max-width:900px){
  .sp-home-clubs-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:767px){
  .sp-home-clubs__head{
    align-items:flex-start;
  }

  .sp-home-clubs__more--desktop{
    display:none;
  }

  .sp-home-clubs__more--mobile{
    display:inline-flex;
    width:max-content;
    margin-top:16px;
  }

  .sp-home-clubs-tabs{
    overflow-x:auto;
    flex-wrap:nowrap;
    margin-bottom:14px;
    padding-bottom:2px;
    scrollbar-width:none;
    -ms-overflow-style:none;
  }

  .sp-home-clubs-tabs::-webkit-scrollbar{
    display:none;
  }

  .sp-home-clubs-tab{
    flex:0 0 auto;
  }

  .sp-home-clubs-scroll{
    width:100%;
    max-width:100%;
    overflow-x:auto;
    overflow-y:hidden;
    margin-inline:0;
    padding-inline:0;
    padding-bottom:4px;
    overscroll-behavior-x:contain;
    scrollbar-width:none;
    -ms-overflow-style:none;
  }

  .sp-home-clubs-scroll::-webkit-scrollbar{
    display:none;
  }

  .sp-home-clubs-grid{
    display:grid;
    width:max-content;
    max-width:none;
    min-width:100%;
    grid-auto-flow:column;
    grid-auto-columns:76vw;
    grid-template-rows:repeat(2, minmax(60px, auto));
    grid-template-columns:none;
    gap:12px;
  }

  .sp-home-club-card{
    width:100%;
    min-width:0;
    max-width:none;
    border-radius:var(--sp-radius-mobile);
  }

  .sp-home-club-card__logo-wrap{
    flex-basis:44px;
    width:44px;
    height:44px;
  }

  .sp-home-club-card__logo{
    width:32px;
    height:32px;
  }
}

@media (hover:none), (pointer:coarse){
  .sp-home-nav-card:hover,
  .sp-home-matches-tab:hover,
  .sp-home-match-card:hover,
  .sp-home-league-card:hover,
  .sp-home-league-card__links a:hover,
  .sp-home-clubs-tab:hover,
  .sp-home-club-card:hover{
    transform:none;
  }
}