/* BSG v31 – teaser fit + standardized match report visual */

/* News teasers: show the COMPLETE title artwork on desktop and mobile. */
.news-card img.report-teaser,
.news-card img.report-teaser--contain {
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:16/10;
  object-fit:contain !important;
  object-position:center;
  background:#05070c;
  padding:.35rem;
  box-sizing:border-box;
}

/* Responsive game-report cover built from real site assets instead of baked-in text. */
.match-cover {
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);
  min-height:470px;
  margin:0 0 1.5rem;
  border:1px solid rgba(255,255,255,.11);
  border-radius:20px;
  background:
    radial-gradient(circle at 78% 32%, rgba(0,229,255,.23), transparent 27%),
    radial-gradient(circle at 91% 68%, rgba(255,28,141,.22), transparent 31%),
    linear-gradient(135deg,#05070c 0%,#07131b 52%,#090912 100%);
  isolation:isolate;
}
.match-cover::before,
.match-cover::after {
  content:"";
  position:absolute;
  inset:auto;
  width:38%;
  height:70%;
  filter:blur(1px);
  opacity:.28;
  z-index:-1;
  transform:skewX(-18deg);
}
.match-cover::before { left:-12%; top:-12%; background:var(--mem-teal); }
.match-cover::after { right:-15%; bottom:-20%; background:var(--miami-pink); }
.match-cover__content {
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:clamp(1.5rem,3vw,3.2rem);
  z-index:2;
}
.match-cover__kicker {
  display:inline-flex;
  align-self:flex-start;
  padding:.42rem .8rem;
  margin-bottom:1rem;
  border:1px solid rgba(255,62,142,.7);
  border-radius:999px;
  background:rgba(255,62,142,.12);
  color:var(--miami-pink);
  font-family:var(--font-ui);
  font-weight:800;
  font-size:.72rem;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.match-cover__title {
  margin:0 0 1.25rem;
  font-family:var(--font-display);
  font-size:clamp(2.1rem,5.7vw,5rem);
  line-height:.9;
  letter-spacing:-.02em;
  text-transform:uppercase;
  color:#fff;
}
.match-cover__title span { color:var(--mem-teal); }
.match-cover__scoreboard {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  gap:1rem;
  align-items:center;
  margin-top:.35rem;
  padding:1.05rem;
  border:1px solid rgba(255,255,255,.12);
  border-radius:16px;
  background:rgba(3,7,12,.76);
  backdrop-filter:blur(9px);
}
.match-cover__team { text-align:center; min-width:0; }
.match-cover__logo {
  width:70px;
  height:70px;
  object-fit:contain;
  display:block;
  margin:0 auto .55rem;
  border-radius:14px;
  background:#fff;
  padding:.28rem;
  box-sizing:border-box;
}
.match-cover__team--bsg .match-cover__logo { background:#080808; padding:.15rem; }
.match-cover__team strong {
  display:block;
  font-family:var(--font-ui);
  font-size:.76rem;
  line-height:1.25;
  color:#fff;
}
.match-cover__score {
  font-family:var(--font-display);
  font-size:clamp(2.55rem,6vw,4.6rem);
  line-height:1;
  color:#fff;
  letter-spacing:.01em;
  white-space:nowrap;
}
.match-cover__score .away { color:var(--mem-teal); }
.match-cover__quarters {
  display:flex;
  flex-wrap:wrap;
  gap:.45rem .8rem;
  margin-top:1rem;
  color:rgba(245,245,240,.72);
  font-family:var(--font-ui);
  font-size:.78rem;
}
.match-cover__quarters strong { color:#fff; }
.match-cover__player {
  position:relative;
  min-height:470px;
  align-self:stretch;
  overflow:hidden;
}
.match-cover__player img {
  position:absolute;
  inset:auto 0 0 auto;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:bottom center;
  filter:drop-shadow(0 0 24px rgba(0,229,255,.25));
}
.match-cover__player::after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,#071017 0%,transparent 24%,transparent 100%);
  pointer-events:none;
}

/* Game result box within body: same CI language as the transfer announcement. */
.news-article--feature .score-box.score-box--ci {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  align-items:center;
  gap:1rem;
  border:1px solid rgba(0,212,200,.28);
  background:linear-gradient(135deg,rgba(0,212,200,.07),rgba(255,62,142,.07));
}
.score-box--ci .score-team { min-width:0; }
.score-box--ci .score-team-logo {
  width:54px;height:54px;object-fit:contain;display:block;margin:0 auto .45rem;
  border-radius:11px;background:#fff;padding:.2rem;box-sizing:border-box;
}
.score-box--ci .score-team--bsg .score-team-logo { background:#080808;padding:.1rem; }
.score-box--ci .score-result { font-family:var(--font-display); letter-spacing:.015em; }

@media (max-width:760px) {
  .news-card img.report-teaser,
  .news-card img.report-teaser--contain { aspect-ratio:1/1; padding:.25rem; }
  .match-cover { grid-template-columns:1fr; min-height:0; }
  .match-cover__content { padding:1.25rem; }
  .match-cover__title { font-size:clamp(2.2rem,15vw,4rem); }
  .match-cover__scoreboard { gap:.5rem; padding:.75rem; }
  .match-cover__logo { width:52px;height:52px; }
  .match-cover__team strong { font-size:.64rem; }
  .match-cover__score { font-size:clamp(2rem,13vw,3.2rem); }
  .match-cover__player { min-height:300px; order:-1; }
  .match-cover__player img { width:100%; height:108%; object-position:center bottom; }
  .match-cover__player::after { background:linear-gradient(180deg,transparent 55%,#071017 100%); }
  .news-article--feature .score-box.score-box--ci { grid-template-columns:1fr auto 1fr; gap:.45rem; padding:.85rem .5rem; }
  .score-box--ci .score-team-logo { width:44px;height:44px; }
  .score-box--ci .score-team-short { font-size:.86rem; }
  .score-box--ci .score-result { font-size:2rem; }
}

/* Compact match teaser for homepage – no baked-in jersey-number badge. */
.match-teaser {
  position:relative;
  min-height:220px;
  aspect-ratio:16/10;
  overflow:hidden;
  background:
    radial-gradient(circle at 82% 28%,rgba(0,212,200,.22),transparent 30%),
    radial-gradient(circle at 95% 78%,rgba(255,62,142,.22),transparent 34%),
    linear-gradient(135deg,#05070c,#07141b 58%,#0a0810);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.match-teaser__player { position:absolute; right:1%; bottom:0; width:44%; height:96%; object-fit:contain; object-position:bottom center; filter:drop-shadow(0 0 16px rgba(0,212,200,.25)); }
.match-teaser__content { position:absolute; inset:0; z-index:2; display:flex; flex-direction:column; justify-content:center; width:66%; padding:1rem 1.1rem; }
.match-teaser__kicker { font-family:var(--font-ui); font-weight:800; font-size:.58rem; letter-spacing:.12em; color:var(--miami-pink); text-transform:uppercase; margin-bottom:.45rem; }
.match-teaser__headline { font-family:var(--font-display); color:#fff; font-size:clamp(1.25rem,3vw,2rem); line-height:.92; text-transform:uppercase; margin-bottom:.75rem; }
.match-teaser__scoreline { display:grid; grid-template-columns:42px auto 42px; gap:.45rem; align-items:center; width:max-content; max-width:100%; padding:.4rem .5rem; background:rgba(3,7,12,.76); border:1px solid rgba(255,255,255,.12); border-radius:10px; }
.match-teaser__scoreline img { width:38px; height:38px; object-fit:contain; border-radius:8px; background:#fff; padding:.15rem; box-sizing:border-box; }
.match-teaser__scoreline img:last-child { background:#080808; padding:.08rem; }
.match-teaser__score { font-family:var(--font-display); font-size:1.6rem; white-space:nowrap; color:#fff; }
.match-teaser__score span { color:var(--mem-teal); }
@media (max-width:760px) {
  .match-teaser { aspect-ratio:1/1; min-height:0; }
  .match-teaser__player { width:55%; height:82%; right:-3%; }
  .match-teaser__content { width:72%; justify-content:flex-end; padding:1rem; background:linear-gradient(180deg,transparent 20%,rgba(3,7,12,.93) 92%); }
  .match-teaser__headline { font-size:1.45rem; }
}
