/* CEO layout only. Original homepage typography, colors and Services title are unchanged. */
.rest .ceo {
  --ceo-rule: #c2a267;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr);
  align-items: center;
  gap: clamp(32px, 6vw, 96px);
  background: #faf7f0;
  border-top: 1px solid var(--ceo-rule);
  padding: clamp(64px, 9vw, 120px) max(var(--gutter), calc((100vw - 1160px) / 2));
  scroll-margin-top: calc(var(--bar-h) + 16px);
}
.ceo__portrait {
  margin: 0;
  width: 100%;
  max-width: 460px;
  justify-self: center;
  padding: 10px;
  border: 1px solid var(--ceo-rule);
  box-sizing: border-box;
}
.ceo__portrait img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1;
}
.ceo__copy { min-width: 0; }
.rest #ceo-h {
  max-width: 12ch;
  margin: 0 0 clamp(32px, 4vw, 60px);
}
.ceo__name {
  margin: 0 0 8px;
  font: 600 clamp(24px, 2.7vw, 38px)/1.2 var(--font-display);
  color: #1d1d1f;
  text-wrap: balance;
}
.rest .ceo__role {
  margin: 0;
}
.ceo ::selection { background: #e5c482; color: #1d1d1f; }
@media (max-width: 680px) {
  .rest .ceo { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .ceo__copy { grid-row: 1; }
  .rest #ceo-h { max-width: none; margin-bottom: 24px; }
  .ceo__portrait { max-width: 420px; }
}
@media (forced-colors: active) {
  .rest #ceo-h, .ceo__name, .rest .ceo__role { color: CanvasText; }
  .ceo__portrait, .rest .ceo { border-color: CanvasText; }
}
