/* BaltiCo v0.17.3 — robust image presentation + text-only Karriere cards */

/* Shared image modes. The position is supplied by PHP/SCF per image. */
.baltico-media--cover {
  object-fit: cover !important;
  object-position: var(--baltico-image-position, 50% 50%) !important;
}

.baltico-media--contain {
  box-sizing: border-box;
  object-fit: contain !important;
  object-position: var(--baltico-image-position, 50% 50%) !important;
  padding: clamp(14px, 2.1vw, 34px);
  background: #f4f7f9;
}

/* Service gallery: keep every slide exactly the same size while allowing
   technical/portrait images to remain fully visible. */
.service-gallery__media--cover,
.service-gallery__media--contain {
  overflow: hidden;
}

.service-gallery__media--contain {
  background: linear-gradient(180deg, #f8fafb 0%, #f1f4f6 100%);
}

.service-gallery__media--contain .service-gallery__image {
  padding: clamp(22px, 3.2vw, 48px);
}

.service-gallery__media--cover .service-gallery__image,
.service-gallery__media--contain .service-gallery__image {
  object-position: var(--baltico-image-position, 50% 50%);
}

/* News/research funding graphics should read as documents/logos rather than
   being cropped as photographs. */
.news-feature-card--contain {
  background: #f4f7f9;
}

.news-feature-card--contain .news-feature-card__shade {
  background: linear-gradient(180deg,
    rgba(6,24,38,0) 12%,
    rgba(6,24,38,.32) 28%,
    rgba(6,24,38,.78) 48%,
    rgba(6,24,38,.88) 66%,
    rgba(6,24,38,.98) 100%
  );
}

.news-feature-card--contain .news-feature-card__image {
  padding: clamp(26px, 4vw, 62px) clamp(24px, 4vw, 58px) clamp(110px, 10vw, 155px);
}

.article-featured-image--contain,
.content-drawer-article__media--contain {
  background: #f4f7f9;
}

.article-featured-image--contain img,
.content-drawer-article__media--contain img {
  padding: clamp(28px, 5vw, 72px);
}

/* Karriere: no invented grey gradient when no job photography exists. */
.career-card--text-only {
  grid-template-columns: minmax(0, 1fr);
  min-height: 158px;
  background: var(--color-surface);
}

.career-card--text-only .career-card__body {
  min-height: 158px;
  padding: 25px clamp(26px, 3vw, 38px) 26px;
}

.career-card--has-media .career-card__body {
  padding-top: 21px;
  padding-bottom: 21px;
}

.career-card__eyebrow {
  margin: 0 0 7px !important;
  color: var(--color-primary) !important;
  font-family: var(--font-accent);
  font-size: 10px !important;
  font-weight: 700;
  line-height: 1.2 !important;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.career-card--text-only h3 {
  max-width: 24ch;
  font-size: clamp(1.22rem, 1.65vw, 1.52rem);
}

.career-card--text-only .text-link {
  margin-top: 1px;
}

/* Legacy safety: should no longer render, but never show a decorative
   placeholder if an old cached fragment still contains this class. */
.career-placeholder {
  background: #f4f7f9 !important;
}

/* Career articles without a supplied image flow straight into the content. */
.content-drawer-article--career .content-drawer-article__header + .content-drawer-article__content {
  margin-top: 12px;
}

@media (max-width: 760px) {
  .baltico-media--contain {
    padding: 14px;
  }

  .service-gallery__media--contain .service-gallery__image {
    padding: 20px;
  }

  .career-card--text-only,
  .career-card--text-only .career-card__body {
    min-height: 0;
  }

  .career-card--text-only .career-card__body {
    padding: 22px 22px 24px;
  }
}
