/* ==========================================================================
   Profile Section — Bio text + photo
   ========================================================================== */

.profile__grid {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: 80px;
  align-items: center;
}

/* ---- Bio Text ---- */
.profile__bio {
  order: 1;
}

.profile__bio .section__heading {
  margin-bottom: 8px;
}

.profile__title {
  font-family: var(--font-body);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--color-gold);
  margin-bottom: 24px;
}

.profile__text {
  font-size: 0.9rem;
  line-height: 1.75;
  color: var(--color-text-muted);
  font-weight: 300;
}

.profile__text p + p {
  margin-top: 16px;
}

.profile__cta {
  margin-top: 32px;
}

/* ---- Photo ---- */
.profile__photo {
  order: 2;
  overflow: hidden;
  position: relative;
}

/* Subtle glow behind the photo */
.profile__photo::before {
  content: '';
  position: absolute;
  top: 10%;
  left: -5%;
  right: -5%;
  bottom: 10%;
  background: radial-gradient(ellipse at center, rgba(var(--color-sage-rgb), 0.08) 0%, transparent 70%);
  z-index: 0;
  filter: blur(40px);
  pointer-events: none;
}

.profile__photo img {
  width: 100%;
  height: auto;
  max-height: 600px;
  object-fit: contain;
  margin: 0 auto;
  position: relative;
  z-index: 1;
  filter: drop-shadow(0 8px 32px rgba(0, 0, 0, 0.3));
}

/* ==========================================================================
   Responsive
   ========================================================================== */

@media (max-width: 768px) {
  .profile__grid {
    grid-template-columns: 1fr;
    gap: 40px;
  }

  .profile__photo {
    order: -1;
  }

  .profile__photo img {
    max-height: 450px;
    margin: 0 auto;
  }
}

@media (max-width: 480px) {
  .profile__grid {
    gap: 32px;
  }

  .profile__photo img {
    max-height: 350px;
  }

  .profile__cta {
    margin-top: 24px;
  }
}
