/* ==========================================================================
   SHN Ceylon — We page
   ========================================================================== */

/* ---- Hero ---- */
.shn-we-hero {
  background-color: var(--shn-black);
  padding-block: clamp(48px, 7vw, 96px);
}

.shn-we-hero__eyebrow {
  display: block;
  color: #E64545;
  font-size: var(--fs-eyebrow);
  font-weight: 700;
  letter-spacing: 0.03em;
  margin-bottom: 14px;
}

.shn-we-hero__title {
  color: var(--shn-white);
  font-size: clamp(2rem, 1.4rem + 2.8vw, 3.4rem);
  font-weight: 600;
  line-height: 1.12;
  margin: 0;
}

/* ---- Management ---- */
.shn-we-team {
  padding-block: clamp(48px, 6vw, 90px);
}

.shn-we-team__title {
  font-size: 58px;
  line-height: 54px;
  letter-spacing: -0.02em;
  color: #121212;
  margin-top: 10px;
  margin-bottom: 16px;
}

.shn-we-team__text {
  color: var(--shn-gray-600);
  font-size: var(--fs-body-lg);
  max-width: 80ch;
  margin-bottom: 40px;
}

.shn-we-team__row {
  display: flex;
  align-items: flex-start;
  gap: 48px;
}

.shn-we-team__col {
  flex: 1;
  min-width: 0;
}

.shn-we-team__divider {
  align-self: stretch;
  width: 1px;
  background-color: var(--shn-gray-200);
}

.shn-we-team__grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 32px;
}

.shn-we-team__grid .shn-we-card {
  width: 280px;
}

.shn-we-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  text-align: left;
}

.shn-we-card__media {
  position: relative;
  width: 100%;
  max-width: 280px;
  border-radius: var(--radius-md);
  overflow: hidden;
  margin-bottom: 20px;
}

.shn-we-card__photo {
  display: block;
  width: 100%;
  height: auto;
}

.shn-we-card__photo--base {
  position: relative;
}

.shn-we-card__photo--hover {
  position: absolute;
  inset: 0;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  transform: scale(1.04);
  transition: opacity 0.5s ease, transform 0.5s ease;
}

.shn-we-card:hover .shn-we-card__photo--hover {
  opacity: 1;
  transform: scale(1);
}

.shn-we-card__role {
  display: block;
  color: var(--shn-gray-600);
  font-size: 0.95rem;
  margin-bottom: 6px;
  max-width: 280px;
}

.shn-we-card__name {
  color: var(--shn-ink);
  font-size: 1.4rem;
  font-weight: 700;
  margin-bottom: 10px;
  max-width: 280px;
}

.shn-we-card__bio {
  color: var(--shn-gray-600);
  font-size: 0.9rem;
  line-height: 1.55;
  max-width: 280px;
}

/* ---- Committed to Excellence ---- */
.shn-we-values {
  padding-block: clamp(48px, 6vw, 90px);
}

.shn-we-values__title {
  font-size: 58px;
  line-height: 54px;
  letter-spacing: -0.02em;
  color: #121212;
  margin-top: 10px;
  margin-bottom: 40px;
}

.shn-we-values__list {
  max-width: 100%;
  display: flex;
  flex-direction: column;
}

.shn-we-value {
  padding-block: 24px;
  border-top: 1px solid var(--shn-gray-200);
}

.shn-we-value:last-child {
  border-bottom: 1px solid var(--shn-gray-200);
}

.shn-we-value__title {
  display: flex;
  align-items: center;
  gap: 6px;
  color: var(--shn-ink);
  font-size: 1.3rem;
  font-weight: 600;
  margin-bottom: 14px;
}

.shn-we-value__title span {
  color: var(--shn-gray-500);
  font-weight: 400;
}

.shn-we-value__text {
  color: var(--shn-gray-600);
  font-size: 0.95rem;
  line-height: 1.6;
  max-width: 64ch;
}

/* ==========================================================================
   Breakpoints
   ========================================================================== */

@media (max-width: 991.98px) {
  .shn-we-team__row {
    flex-direction: column;
    gap: 40px;
  }

  .shn-we-team__divider {
    width: 100%;
    height: 1px;
  }

  .shn-we-team__grid {
    justify-content: center;
  }

  .shn-we-card {
    align-items: center;
    text-align: center;
  }

  .shn-we-card__media {
    margin-inline: auto;
  }
}

@media (max-width: 767.98px) {
  .shn-we-team__grid {
    justify-content: center;
  }
}
