@font-face {
  font-family: "Font Awesome 6 Free";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src:
    url(vendor/fontawesome/webfonts/fa-solid-900.woff2) format("woff2"),
    url(vendor/fontawesome/webfonts/fa-solid-900.ttf) format("truetype");
}

@font-face {
  font-family: "Font Awesome 6 Brands";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src:
    url(vendor/fontawesome/webfonts/fa-brands-400.woff2) format("woff2"),
    url(vendor/fontawesome/webfonts/fa-brands-400.ttf) format("truetype");
}

img.partner-logo {
  vertical-align: top;
}

[data-theme="dark"] img.partner-logo {
  filter: none !important;
}

a:has(> img.partner-logo),
a:hover:has(> img.partner-logo),
a:focus:has(> img.partner-logo) {
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  background: transparent !important;
  text-decoration: none !important;
}

a:has(> img.partner-logo)::before,
a:has(> img.partner-logo)::after {
  display: none !important;
  content: none !important;
}

/* Event flyer on the landing-page card: show the full landscape banner,
   never crop it, and keep it compact so it doesn't dominate the page. */
img.event-flyer-thumb {
  display: block;
  width: auto;
  max-width: 100%;
  max-height: 200px;
  height: auto;
  margin: 0 auto;
}

/* Clickable cards use a stretched-link overlay (z-index: 1) that covers the
   whole card. Lift real inline links in the card body above it so they stay
   clickable, while the rest of the card still routes to the card link. */
.sd-card-body a.reference:not(.sd-stretched-link) {
  position: relative;
  z-index: 2;
}

.sci-collab-event-hero {
  margin: 1.5rem 0 3rem;
  padding: clamp(0.65rem, 2vw, 1.1rem);
  border: 1px solid var(--pst-color-primary);
  border: 1px solid
    color-mix(in srgb, var(--pst-color-primary), transparent 75%);
  border-radius: 18px;
  background: var(--pst-color-surface);
  background:
    linear-gradient(
      135deg,
      color-mix(in srgb, var(--pst-color-primary), transparent 91%),
      transparent 42%
    ),
    linear-gradient(
      315deg,
      color-mix(in srgb, #ffeb3b, transparent 78%),
      transparent 36%
    ),
    var(--pst-color-surface);
  box-shadow: 0 16px 42px rgba(0, 0, 0, 0.12);
  box-shadow: 0 16px 42px
    color-mix(in srgb, var(--pst-color-primary), transparent 88%);
}

.sci-collab-event-hero img.event-flyer {
  display: block;
  width: 100%;
  max-width: 960px;
  border-radius: 12px;
  box-shadow: 0 10px 26px rgba(0, 51, 102, 0.14);
}

.sci-collab-event-actions {
  display: flex;
  justify-content: center;
  margin-top: 1rem;
}

.sci-collab-event-actions a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 0.65rem 1rem;
  border: 1px solid var(--pst-color-primary);
  border-radius: 999px;
  background: var(--pst-color-primary);
  color: #fff;
  font-weight: 700;
  text-decoration: none;
  transition:
    transform 180ms cubic-bezier(0.4, 0, 0.2, 1),
    box-shadow 180ms cubic-bezier(0.4, 0, 0.2, 1);
}

.sci-collab-event-actions a:hover,
.sci-collab-event-actions a:focus {
  transform: translateY(-1px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
  box-shadow: 0 8px 20px
    color-mix(in srgb, var(--pst-color-primary), transparent 72%);
  color: #fff;
}

[data-theme="dark"] .sci-collab-event-hero {
  background: var(--pst-color-surface);
  background:
    linear-gradient(
      135deg,
      color-mix(in srgb, var(--pst-color-primary), transparent 86%),
      transparent 42%
    ),
    linear-gradient(
      315deg,
      color-mix(in srgb, #ffeb3b, transparent 88%),
      transparent 36%
    ),
    var(--pst-color-surface);
}

@media (max-width: 600px) {
  .sci-collab-event-hero {
    margin-bottom: 2.25rem;
    border-radius: 14px;
  }
}
