
/* Portfolio refinements: related cards, carousel scale, Cornerstone, and collage. */

/* Move the homepage lockup slightly farther left while retaining its existing vertical position. */
.page-home .hero__lockup {
  transform: translateX(-3.2vw) translateY(-5vh) !important;
}

/* Learn More cards now mirror the homepage project cards. */
.learn-more {
  padding-inline: var(--site-page-gutter, 32px) !important;
}
.learn-more__inner {
  width: min(100%, var(--site-content-wide, 1320px)) !important;
  margin-inline: auto !important;
}
.learn-more__grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: var(--grid-gap, 30px) !important;
}
.learn-more-card,
.learn-more-card:nth-child(n) {
  display: block !important;
  min-width: 0 !important;
  margin: 0 !important;
}
.learn-more-card__link {
  display: block !important;
  height: 100% !important;
  overflow: hidden !important;
  border-radius: 2px !important;
  background: var(--brown, #3d332c) !important;
  color: var(--cream, #faf5ed) !important;
  box-shadow: 0 9px 22px rgba(61, 51, 44, .09) !important;
  text-decoration: none !important;
  transition: transform 180ms ease, box-shadow 180ms ease !important;
}
.learn-more-card__link:hover,
.learn-more-card__link:focus-visible {
  transform: translateY(-4px) !important;
  box-shadow: 0 15px 30px rgba(61, 51, 44, .16) !important;
}
.learn-more-card__cover {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 4 / 3 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #eee7de !important;
  object-fit: cover !important;
  object-position: center !important;
  box-shadow: none !important;
  transform: none !important;
}
.learn-more-card__content {
  display: block !important;
  min-height: 94px !important;
  padding: 17px 16px 16px !important;
  background: var(--brown, #3d332c) !important;
  color: var(--cream, #faf5ed) !important;
}
.learn-more-card__title {
  margin: 0 0 7px !important;
  color: inherit !important;
  font-family: "Raleway", Arial, sans-serif !important;
  font-size: .9375rem !important;
  font-weight: 400 !important;
  line-height: 1.25 !important;
}
.learn-more-card__action {
  display: block !important;
  color: inherit !important;
  font-size: .6875rem !important;
  font-style: italic !important;
  line-height: 1.45 !important;
  opacity: .92 !important;
}
.learn-more-card__link[href="progeny-health.html"] .learn-more-card__cover,
.learn-more-card__link[href="cornerstone.html"] .learn-more-card__cover {
  object-fit: contain !important;
  background: var(--page-bg, #f8f4f0) !important;
}

/* Center the Interactive Process Book. */
.source-case-section--uga .interactive-book {
  margin-inline: auto !important;
}

/* Size horizontal carousels so two complete items are visible on desktop. */
.source-infinite-carousel__item {
  display: flex !important;
  flex: 0 0 auto !important;
  width: min(620px, calc((100vw - (2 * var(--site-page-gutter, 32px)) - 24px) / 2)) !important;
  max-width: none !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}
.source-infinite-carousel__item img {
  width: auto !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: 100% !important;
  object-fit: contain !important;
}
.source-browser-carousel-wrap {
  width: min(100%, var(--site-content-wide, 1320px)) !important;
  max-width: none !important;
}
.source-browser-carousel__item {
  flex: 0 0 calc(50% - 17px) !important;
  max-width: none !important;
}
.source-website-frame {
  width: 100% !important;
  max-width: none !important;
}

/* Remove the white rounded-card corners around Alston & Bird images. */
.source-case-section--alston .source-infinite-carousel__item {
  overflow: visible !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.source-case-section--alston .source-infinite-carousel__item img {
  border-radius: 0 !important;
  background: transparent !important;
}

/* Natural two-column personal collage; every image stays fully visible. */
.page-profile .person-collage {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  align-items: start !important;
  gap: clamp(16px, 1.8vw, 24px) !important;
}
.page-profile .person-collage__column {
  display: flex !important;
  flex-direction: column !important;
  gap: clamp(16px, 1.8vw, 24px) !important;
}
.page-profile .person-image,
.page-profile .person-image:nth-child(n) {
  overflow: visible !important;
  height: auto !important;
  background: transparent !important;
  transform: none !important;
}
.page-profile .person-image img,
.page-profile .person-image:nth-child(n) img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: center !important;
  transform: none !important;
}

/* Cornerstone project gallery and cover use the complete uploaded artwork. */
.page-home .project-card__link[href="cornerstone.html"] .project-card__cover {
  object-fit: contain !important;
  object-position: center !important;
  background: var(--page-bg, #f8f4f0) !important;
}
.project-cornerstone .cornerstone-gallery {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(20px, 2.5vw, 34px) !important;
  width: min(100%, var(--site-content-wide, 1320px)) !important;
  margin-inline: auto !important;
  padding-inline: var(--site-page-gutter, 32px) !important;
}
.project-cornerstone .cornerstone-gallery figure {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  background: transparent !important;
}
.project-cornerstone .cornerstone-gallery img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
}

@media (max-width: 920px) {
  .learn-more__grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .source-infinite-carousel__item { width: calc(50vw - 34px) !important; min-width: 300px !important; }
  .source-browser-carousel__item { flex-basis: calc(50% - 12px) !important; }
  .project-cornerstone .cornerstone-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}

@media (max-width: 680px) {
  .page-home .hero__lockup { transform: translateX(-1.2vw) translateY(-3.5vh) !important; }
  .source-infinite-carousel__item { width: 82vw !important; min-width: 0 !important; }
  .source-browser-carousel__item { flex-basis: 86vw !important; }
  .learn-more__grid { grid-template-columns: 1fr !important; }
  .project-cornerstone .cornerstone-gallery { grid-template-columns: 1fr !important; }
}
