/* ============================================================
   Knowledge Publications Block — combined styles for
   type="regional-reports" and type="research-publications"
   ============================================================ */

/* ---- SKELETON LOADER (shared) ---- */
.kp-skeleton {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
  gap: 24px;
}

.kp-skeleton--list {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: var(--spacing-large);
}

@media (width >=1023px) {
  .kp-skeleton--list {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (width >=1200px) {
  .kp-skeleton--list {
    grid-template-columns: repeat(3, 1fr);
  }
}

/* Fixed equal-width columns so cards space out evenly instead of bunching to one side */
.kp-skeleton.top-publication-cards {
  grid-template-columns: repeat(2, 1fr);
  justify-content: space-between;
}

@media (width >= 1200px) {
  .kp-skeleton.top-publication-cards {
    grid-template-columns: repeat(2, 1fr);
  }
}

.kp-skeleton-card {
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgb(0 0 0 / 8%);
}

.kp-skeleton-card .skeleton-image {
  width: 100%;
  aspect-ratio: 92/123;
  background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
  background-size: 200% 100%;
  animation: kp-skeleton-loading 1.5s infinite;
}

.kp-skeleton-card--list {
  display: flex;
  gap: var(--spacing-regular);
  align-items: flex-start;
  width: 100%;
  justify-content: flex-start;
  border-top: 2px solid var(--neutral-solid-10-s);
  padding-block-start: 20px;
  box-shadow: none;
  border-radius: 0;
  background: transparent;
}

.kp-skeleton-card--list .kp-skeleton-card-image {
  width: 92px;
  height: 115px;
  min-width: 92px;
  border-radius: var(--border-radius-medium);
  background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
  background-size: 200% 100%;
  animation: kp-skeleton-loading 1.5s infinite;
}

.kp-skeleton-card--list .kp-skeleton-card-content {
  display: flex;
  flex-direction: column;
  gap: 10px;
  flex: 1;
  padding-top: 4px;
}

.kp-skeleton-card--top {
  display: flex;
  gap: var(--spacing-regular);
  align-items: flex-start;
  width: 100%;
  background: transparent;
  box-shadow: none;
  border-radius: 0;
}

.kp-skeleton-card--top .kp-skeleton-card-image {
  width: 25%;
  aspect-ratio: 92/123;
  border-radius: var(--border-radius-medium);
  background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
  background-size: 200% 100%;
  animation: kp-skeleton-loading 1.5s infinite;
}

.kp-skeleton-card--top .kp-skeleton-card-content {
  display: flex;
  flex-direction: column;
  gap: 10px;
  flex: 1;
  padding-top: 4px;
}

.kp-skeleton-line {
  height: 14px;
  border-radius: 4px;
  background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
  background-size: 200% 100%;
  animation: kp-skeleton-loading 1.5s infinite;
}

.kp-skeleton-line--title {
  width: 78%;
  height: 18px;
}

.kp-skeleton-line--text {
  width: 100%;
}

@keyframes kp-skeleton-loading {
  0% { background-position: 200% 0; }
  100% { background-position: -200% 0; }
}

/* ============================================================
   TYPE: regional-reports  (mini-card-auto-manual-* classes)
   ============================================================ */
.mini-card-auto-manual-container {
  display: grid;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--spacing-large);
  grid-template-columns: repeat(1, 1fr);
}

.mini-card-auto-manual-container:has(.mini-card-auto-manual:nth-child(2)) {
  grid-template-columns: repeat(2, 1fr);
}

@media (width >= 768px) {
  .mini-card-auto-manual-container:has(.mini-card-auto-manual:nth-child(3)) {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (width >= 1200px) {
  .mini-card-auto-manual-container:has(.mini-card-auto-manual:nth-child(6)) {
    grid-template-columns: repeat(6, 1fr);
  }
}

.mini-cards-auto-manual-heading h2 {
  font-size: var(--font-size-1100);
  font-weight: var(--heading-font-weight);
  line-height: 112%;
  letter-spacing: -1.44px;
  margin: var(--spacing-none) 0 var(--spacing-medium) 0;
}

.mini-cards-auto-manual-heading p {
  font-size: var(--font-size-500);
  font-weight: var(--body-font-weight-regular);
  line-height: 150%;
  letter-spacing: -0.25px;
  text-transform: none;
  margin: 0 0 var(--spacing-medium) 0;
}

.mini-card-auto-manual {
  display: flex;
  gap: var(--spacing-regular);
  flex-direction: column-reverse;
  width: 100%;
  justify-content: start;
  box-sizing: border-box;
  word-break: break-word;
}

.mini-card-auto-manual-image img {
  border-radius: var(--border-radius-medium);
  transition: transform 0.2s;
}

.mini-card-auto-manual:hover .mini-card-auto-manual-image img {
  transform: scale(1.1);
}

.mini-card-auto-manual-text-wrapper a {
  text-decoration: none;
}

.mini-card-auto-manual-title {
  font-size: var(--font-size-300);
  line-height: 125%;
  letter-spacing: -0.25px;
  font-weight: var(--body-font-weight-bold);
  margin: var(--spacing-none);
  color: var(--text-on-light-link-primary-enabled);
}

.mini-card-auto-manual-title p {
  margin: var(--spacing-none);
}

.bg-primary-blue-70 .mini-card-auto-manual .mini-card-auto-manual-title p {
  color: var(--text-on-dark-emphasis);
}

.bg-primary-blue-70 .mini-card-auto-manual:hover a .mini-card-auto-manual-title p {
  color: var(--text-on-dark-emphasis);
  text-decoration: underline;
}

/* ============================================================
   TYPE: research-publications  (cards-auto-manual-* classes)
   ============================================================ */

/* Main heading */
.knowledge-publications .main-heading {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  align-items: flex-end;
  justify-content: space-between;
  column-gap: var(--spacing-regular);
}

@media (width >= 768px) {
  .knowledge-publications .main-heading {
    grid-template-columns: 1fr 0.6fr;
  }
}

@media (width >= 1024px) {
  .knowledge-publications .main-heading {
    grid-template-columns: 1fr 0.4fr;
  }
}
.card-auto-manual .main-heading h2 {
    font-size: var(--font-size-1100);
    line-height: 112%;
    letter-spacing: -1.44px;
}
.knowledge-publications .main-heading p {
  color: var(--text-on-light-default);
    font-size: var(--font-size-600);
    font-weight: var(--body-font-weight-regular);
    line-height: 150%;
    letter-spacing: -0.084px;
    word-break: break-word;
text-transform: none;
    margin: 0rem 0rem var(--spacing-large) 0rem;
}

.knowledge-publications .main-heading div:nth-child(2) > div {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-small);
  justify-content: flex-start;
}

@media (width >= 768px) {
  .knowledge-publications .main-heading div:nth-child(2) > div {
    justify-content: end;
  }
}

/* Grid section (top 4) */
.cards-auto-manual-grid {
  display: grid;
  margin-bottom: var(--spacing-large);
  align-items: flex-start;
  gap: var(--spacing-large);
}

.cards-auto-manual-grid:has(.cards-auto-manual:nth-child(2)) {
  grid-template-columns: repeat(2, 1fr);
}

@media (width >= 1200px) {
  .cards-auto-manual-grid:has(.cards-auto-manual:nth-child(4)) {
    grid-template-columns: repeat(4, 1fr);
  }
}

.cards-auto-manual-grid .cards-auto-manual {
  flex-direction: column;
  border: 0;
  padding-block-start: 0px;
}

.cards-auto-manual-grid .small-v-img img {
  aspect-ratio: 4/5;
  object-fit: cover;
  object-position: top;
}

/* List section (remaining) */
.cards-auto-manual-list {
  display: grid;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--spacing-large);
}

.cards-auto-manual-list .small-v-img img {
  aspect-ratio: 92 / 115;
  min-width: 92px;
  width: 92px;
  height: 115px;
}

/* Shared card */
.cards-auto-manual {
  display: flex;
  gap: var(--spacing-regular);
  border-top: 2px solid var(--neutral-solid-10-s);
  padding-block-start: 20px;
  width: 100%;
  justify-content: start;
  box-sizing: border-box;
  word-break: break-word;
}

.cards-auto-manual .cards-auto-manual-image img {
  border-radius: var(--border-radius-medium);
  transition: transform 0.2s;
}

.cards-auto-manual:hover .cards-auto-manual-image img {
  transform: scale(1.1);
}

.cards-auto-manual:hover a .cards-auto-manual-title p {
  color: var(--domain-interactive-on-light-hover-text);
}

.cards-auto-manual-list:has(.cards-auto-manual:nth-child(1)) {
  grid-template-columns: repeat(1, 1fr);
}

@media (width >= 1023px) {
  .cards-auto-manual-list:has(.cards-auto-manual:nth-child(2)) {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (width >= 1200px) {
  .cards-auto-manual-list:has(.cards-auto-manual:nth-child(3)) {
    grid-template-columns: repeat(3, 1fr);
  }
}

.cards-auto-manual-text-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: var(--spacing-none);
  flex-grow: 2;
  gap: var(--spacing-xxsmall);
}

.cards-auto-manual-text-wrapper a {
  text-decoration: none;
}

.cards-auto-manual-text-wrapper p {
  margin: var(--spacing-none);
}

.cards-auto-manual-tag {
  font-weight: var(--body-font-weight-bold);
  font-size: var(--font-size-150);
  line-height: 110%;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--neutral-solid-60-s);
}

.cards-auto-manual-title {
  font-weight: var(--body-font-weight-bold);
  font-size: var(--font-size-500);
  line-height: 125%;
  letter-spacing: -0.25px;
  color: var(--text-on-light-link-primary-enabled);
  margin: var(--spacing-none);
}

.cards-auto-manual-desc {
  color: var(--text-on-light-default);
  font-size: var(--font-size-200);
  font-weight: var(--body-font-weight-regular);
  line-height: 125%;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  line-clamp: 4;
  overflow: hidden;
  text-overflow: ellipsis;
}

.two-grid-column-layout .cards-auto-manual-grid:has(.cards-auto-manual:nth-child(4)) {
  display: grid;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--spacing-large);
  grid-template-columns: repeat(1, 1fr);
}

@media (width >=768px) {

  .two-grid-column-layout .cards-auto-manual-grid:has(.cards-auto-manual:nth-child(4)) {
    grid-template-columns: repeat(2, 1fr);
  }
}


.two-grid-column-layout .cards-auto-manual .cards-auto-manual-image.small-v-img {
  aspect-ratio: 92/115;
  min-width: 100%;
  width: 100%;
  height: auto;
}

.two-grid-column-layout .cards-auto-manual-grid .cards-auto-manual {
  display: grid;
  grid-template-columns: 0.5fr 1fr;
  border-top: 2px solid var(--neutral-solid-10-s);
  padding-block-start: var(--spacing-medium);
}