/* Compact illustrations and consistent, responsive image framing. */
.rita-home-photo img {
  height: clamp(170px, 24vw, 240px);
  aspect-ratio: auto;
  object-position: center 55%;
}
#what .diagram { max-width: 340px; align-self: start; }

.rita-receive-options .rita-option-photo {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: 12px;
  margin: 0 0 20px;
}
.rita-receive-options .rita-option-photo--salon { object-position: center bottom; }
.rita-receive-options .rita-option-photo--visit { object-position: 35% center; }
.rita-receive-options .rita-option-photo--home { object-position: 60% center; }
.rita-receive-options .step h3 { margin-top: 0; }

.ph.has-img.rita-director-portrait {
  width: 100%;
  max-width: 320px;
  min-height: 0;
  aspect-ratio: 4 / 5;
  justify-self: center;
}
.ph.has-img.rita-director-portrait img { object-position: center top; }
.member .face img.rita-director-face { object-position: center top; }

.rita-services a.btn-primary,
.rita-services a.btn-primary:visited {
  color: #fff;
}
.rita-services .cv-band a.btn-primary {
  color: #fff;
  background: var(--red-dark);
  border: 1px solid rgba(255,255,255,.6);
}
.rita-services .cv-band a.btn-primary:hover {
  color: #fff;
  background: #a9000e;
}
@media (max-width: 700px) {
  .rita-home-photo { margin-bottom: 28px; }
  .rita-home-photo img { height: 180px; }
  #what .diagram { max-width: 310px; }
  .rita-receive-options .rita-option-photo { aspect-ratio: 3 / 2; }
  .ph.has-img.rita-director-portrait { max-width: 300px; }
}
