/* Local portrait composition: warm ivory, the real stage, generous reading space. */
.experience.portrait-edition {
  scroll-margin-top: 100px;
  background: radial-gradient(ellipse at 3% 15%, #d4c2a64d, transparent 53%), #e6e3dc;
  padding-top: 55px;
  padding-bottom: 76px;
}
.portrait-edition .section-index { margin-bottom: 34px; }
.portrait-edition .experience-layout {
  grid-template-columns: minmax(0, .97fr) minmax(0, 1.03fr);
  gap: clamp(40px, 6.5vw, 105px);
  align-items: start;
}
.portrait-edition .experience-lead { display: block; min-width: 0; }
.portrait-edition .portrait-frame {
  margin: 0;
  position: relative;
  aspect-ratio: 1 / 1.08;
  overflow: hidden;
  background: #302b23;
}
.portrait-frame > img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 48%;
}
.portrait-frame::after {
  content: "";
  position: absolute;
  inset: 65% 0 0;
  background: linear-gradient(transparent, #151713b3);
  pointer-events: none;
}
.portrait-frame figcaption {
  position: absolute;
  z-index: 1;
  bottom: 23px;
  left: 25px;
  right: 25px;
  display: flex;
  justify-content: space-between;
  align-items: end;
  color: #efe8da;
}
.portrait-frame figcaption span { font: 8px/1.8 ui-monospace, monospace; letter-spacing: 1.3px; }
.portrait-frame figcaption strong { font-size: clamp(29px, 3vw, 48px); line-height: .9; font-weight: 400; letter-spacing: -.055em; }
.portrait-edition .portrait-caption {
  display: flex;
  justify-content: space-between;
  gap: 15px;
  padding: 12px 0 16px;
  border-bottom: 1px solid #25252230;
  font: 8px/1.7 ui-monospace, monospace;
  letter-spacing: 1px;
  color: #696152;
}
.portrait-edition .experience-lead h2 {
  margin: 24px 0 22px;
  font-size: clamp(28px, 2.8vw, 45px);
  color: #2a2a25;
}
.portrait-edition .experience-lead h2 em { color: #756345; }
.portrait-edition .biography { padding-top: 0; }
.portrait-edition .biography > p.bio-lead {
  font-size: clamp(21px, 1.65vw, 26px);
  line-height: 1.55;
  margin-bottom: 28px;
}
.portrait-edition .biography > p { font-size: 13px; line-height: 1.95; margin-bottom: 23px; }
.portrait-edition .certification { margin-top: 30px; }
@media (max-width: 1050px) and (min-width: 701px) {
  .portrait-edition .experience-layout { gap: 35px; }
  .portrait-edition .portrait-frame { aspect-ratio: 3 / 4; }
  .portrait-edition .biography > p { font-size: 12px; }
  .portrait-edition .experience-lead h2 { font-size: 29px; }
}
@media (max-width: 700px) {
  .experience.portrait-edition { padding: 38px 20px 50px; }
  .portrait-edition .section-index { margin-bottom: 23px; }
  .portrait-edition .experience-layout { display: block; }
  .portrait-edition .experience-lead { margin-bottom: 36px; }
  .portrait-edition .portrait-frame { aspect-ratio: 1 / 1.1; }
  .portrait-frame figcaption { left: 19px; right: 19px; bottom: 20px; }
  .portrait-frame figcaption strong { font-size: 38px; }
  .portrait-frame figcaption span, .portrait-edition .portrait-caption { font-size: 7px; }
  .portrait-edition .experience-lead h2 { font-size: 29px; margin: 21px 0; }
  .portrait-edition .biography > p.bio-lead { font-size: 21px; }
  .portrait-edition .biography > p { font-size: 13px; }
}
@media (forced-colors: active) {
  .portrait-edition .experience-lead h2 em { color: CanvasText; }
  .portrait-frame figcaption { forced-color-adjust: none; }
}
