/* Image credits — quiet utility page, intentionally lighter than an editorial feature. */

.cw-image-credits__hero {
  padding-block: clamp(3.5rem, 7vw, 6rem);
  background: var(--cw-navy);
  color: var(--cw-cream);
}

.cw-image-credits__hero-inner {
  max-width: 920px;
}

.cw-image-credits__hero .cw-eyebrow {
  margin-bottom: 1rem;
  color: var(--cw-gold-soft);
}

.cw-image-credits__hero h1 {
  max-width: 12ch;
  margin: 0 0 1.25rem;
  color: inherit;
  font-size: var(--cw-fs-h1);
}

.cw-image-credits__hero p:last-child {
  max-width: 62ch;
  margin: 0;
  color: var(--cw-on-dark-muted);
  font-size: var(--cw-fs-body-lg);
  line-height: var(--cw-lh-body);
}

.cw-image-credits__content {
  background: var(--cw-cream);
}

.cw-image-credits__layout {
  display: grid;
  grid-template-columns: minmax(240px, 0.72fr) minmax(0, 1.55fr);
  gap: clamp(3rem, 7vw, 7rem);
  align-items: start;
}

.cw-image-credits__licence {
  position: sticky;
  top: calc(var(--cw-header-height, 88px) + 2rem);
  padding: clamp(1.5rem, 3vw, 2rem);
  background: var(--cw-surface-zone);
  border-top: 3px solid var(--cw-gold);
}

.cw-image-credits__licence .cw-eyebrow {
  margin-bottom: 0.75rem;
}

.cw-image-credits__licence h2 {
  margin: 0 0 1rem;
  font-size: var(--cw-fs-h3);
}

.cw-image-credits__licence p {
  margin: 0 0 1.25rem;
  color: var(--cw-text-muted);
  font-size: 1rem;
  line-height: 1.7;
}

.cw-image-credits__licence-link,
.cw-image-credits__source {
  display: inline-flex;
  align-items: baseline;
  gap: 0.35rem;
  color: var(--cw-navy);
  font-weight: 700;
  text-underline-offset: 0.24em;
}

.cw-image-credits__group + .cw-image-credits__group {
  margin-top: clamp(2.75rem, 5vw, 4.5rem);
}

.cw-image-credits__group > h2 {
  margin: 0 0 0.75rem;
  padding-bottom: 0.75rem;
  border-bottom: 1px solid var(--cw-gold-soft);
  font-size: var(--cw-fs-h2);
}

.cw-image-credits__group ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.cw-image-credits__group li {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1.5rem;
  align-items: center;
  padding-block: 1.25rem;
  border-bottom: 1px solid var(--cw-border);
}

.cw-image-credits__group h3 {
  margin: 0 0 0.25rem;
  font-family: var(--cw-font-body);
  font-size: 1.0625rem;
  line-height: 1.4;
}

.cw-image-credits__group p {
  margin: 0;
  color: var(--cw-text-muted);
  font-size: 1rem;
  line-height: 1.6;
}

.cw-image-credits__group p a {
  color: var(--cw-navy);
  text-underline-offset: 0.2em;
}

.cw-image-credits__source {
  white-space: nowrap;
  font-size: 0.9375rem;
}

.cw-image-credits__contact {
  margin: clamp(2.5rem, 5vw, 4rem) 0 0;
  padding-top: 1.5rem;
  border-top: 1px solid var(--cw-border);
  font-size: 1rem;
}

@media (max-width: 800px) {
  .cw-image-credits__layout {
    grid-template-columns: 1fr;
    gap: 3rem;
  }

  .cw-image-credits__licence {
    position: static;
  }
}

@media (max-width: 560px) {
  .cw-image-credits__hero {
    padding-block: 3rem;
  }

  .cw-image-credits__group li {
    grid-template-columns: 1fr;
    gap: 0.65rem;
  }
}
