/* Lauren's 2026 portraits. Scoped additions preserve the existing design system. */
.otw-photo-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  gap: clamp(32px, 5vw, 72px);
  align-items: center;
}
.otw-photo-grid > * { min-width: 0; }
.otw-photo-copy { position: relative; z-index: 1; }
.otw-photo {
  display: block;
  min-width: 0;
  margin: 0;
  position: relative;
  background: #e5e3db;
  border: 1px solid rgba(184,153,104,.3);
  scroll-margin-top: 96px;
}
.otw-photo img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  object-position: var(--photo-position, 50% 50%);
}

.otw-photo figcaption { padding: 12px 0 0; font-size: .75rem; }
.page-hero.otw-photo-hero { padding: 138px 0 80px; text-align: left; }
.otw-photo-hero .wrap { position: relative; max-width: 1160px; }
.otw-photo-hero .intro { margin-left: 0; margin-right: 0; }
.otw-photo-hero .otw-photo { max-width: 440px; width: 100%; justify-self: end; }
.otw-photo-hero .about-roles { line-height: 2; letter-spacing: .1em; }
.otw-photo-hero .fellow { line-height: 1.45; }
.otw-course-hero h1 { font-size: clamp(1.8rem, 3.2vw, 2.65rem); }
.page-index .creed.otw-home-belief { padding: 88px 0; text-align: left; }
.otw-home-belief .wrap { max-width: 1200px; grid-template-columns: 1.1fr 1fr; }
.page-index .otw-home-belief .creed-zh {
  font-size: clamp(1.05rem, 1.65vw, 1.25rem);
  line-height: 2.25;
  letter-spacing: .035em;
}
.otw-home-belief .creed-zh br { display: none; }
.philo .wrap.otw-home-founder { max-width: 1080px; text-align: left; grid-template-columns: .8fr 1.2fr; }
.otw-home-founder .rule { margin: 28px 0 0; height: 40px; }
.otw-home-founder .cred { color: var(--navy-70); margin-top: 28px; line-height: 2; }
.otw-home-founder .cred br { display: none; }
.otw-editorial-break {
  padding: clamp(72px, 9vw, 120px) 0;
  overflow: hidden;
  background: var(--paper);
}
.otw-editorial-scene {
  position: relative;
  margin: 0;
  isolation: isolate;
}
.otw-editorial-scene::before {
  content: "";
  position: absolute;
  inset: clamp(18px, 2.8vw, 34px) clamp(-16px, -1.5vw, -8px) clamp(-16px, -1.5vw, -8px) clamp(18px, 2.8vw, 34px);
  border: 1px solid rgba(184,153,104,.48);
  z-index: -1;
}
.otw-editorial-scene img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 8.2;
  object-fit: cover;
  object-position: 50% 45%;
  filter: saturate(.86) contrast(1.02);
}
.otw-editorial-scene figcaption {
  position: absolute;
  left: clamp(24px, 5vw, 68px);
  bottom: clamp(-38px, -3vw, -26px);
  width: min(410px, calc(100% - 48px));
  padding: 24px 30px 26px;
  background: rgba(244,237,224,.96);
  border: 1px solid rgba(184,153,104,.36);
  box-shadow: 0 18px 44px rgba(20,35,55,.09);
}
.otw-editorial-scene figcaption span,
.otw-about-editorial figcaption span {
  display: block;
  font-family: var(--mono);
  font-size: .64rem;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--gold);
}
.otw-editorial-scene figcaption strong {
  display: block;
  margin-top: 10px;
  font-family: var(--tc);
  font-size: clamp(1rem, 1.6vw, 1.25rem);
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: .06em;
  color: var(--navy);
}
.otw-about-editorial {
  position: relative;
  min-height: 650px;
  margin: clamp(68px, 9vw, 108px) 0 clamp(72px, 9vw, 116px);
  background: var(--navy);
  overflow: visible;
}
.otw-about-editorial__mat {
  position: absolute;
  left: clamp(22px, 5vw, 68px);
  top: 30px;
  font-family: var(--disp);
  font-size: clamp(4rem, 10vw, 8.6rem);
  line-height: 1;
  letter-spacing: .08em;
  color: rgba(244,237,224,.055);
  writing-mode: vertical-rl;
}
.otw-about-editorial img {
  position: absolute;
  top: clamp(42px, 6vw, 74px);
  right: clamp(34px, 7vw, 92px);
  width: min(43%, 460px);
  height: min(32.25vw, 345px);
  object-fit: cover;
  object-position: 52% 42%;
  border: 10px solid var(--paper);
  box-shadow: 0 24px 54px rgba(0,0,0,.24);
}
.otw-about-editorial figcaption {
  position: absolute;
  left: clamp(38px, 8vw, 112px);
  bottom: clamp(56px, 9vw, 108px);
  width: min(39%, 390px);
  color: var(--paper);
}
.otw-about-editorial figcaption strong {
  display: block;
  margin-top: 18px;
  font-family: var(--tc);
  font-size: clamp(1.2rem, 2.4vw, 1.75rem);
  font-weight: 300;
  line-height: 1.8;
  letter-spacing: .07em;
}

.otw-instructor-grid { grid-template-columns: .8fr 1.2fr; }

@media (max-width: 820px) {
  .otw-photo-grid,
  .otw-home-belief .wrap,
  .philo .wrap.otw-home-founder{ grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .page-hero.otw-photo-hero { padding: 116px 0 56px; }
  .otw-photo-hero .otw-photo { max-width: 480px; justify-self: center; }
  .otw-photo-hero .otw-photo img { aspect-ratio: 1 / 1; }
  .otw-course-hero .otw-photo img { aspect-ratio: 4 / 3; object-position: 0% 50%; }
  .otw-photo-hero h1 { font-size: clamp(1.8rem, 6.4vw, 2.6rem); }
  .page-about .otw-photo-hero .about-name { font-size: 3.6rem; }
  .otw-photo-hero .about-roles { font-size: .88rem; }
  .otw-photo-hero .fellow { margin-top: 24px; }
  .page-index .creed.otw-home-belief { padding: 56px 0; }
  .otw-home-belief .otw-photo { order: 2; }
  .otw-home-founder .otw-photo { max-width: 400px; width: 100%; justify-self: center; }
  .otw-editorial-break { padding: 58px 0 82px; }
  .otw-editorial-scene img { aspect-ratio: 4 / 5; object-position: 38% 50%; }
  .otw-editorial-scene figcaption {
    left: 18px;
    bottom: -44px;
    width: calc(100% - 36px);
    padding: 20px 22px 22px;
  }
  .otw-about-editorial {
    min-height: 780px;
    margin: 64px 0 82px;
  }
  .otw-about-editorial__mat { left: 14px; top: 20px; font-size: 4.1rem; }
  .otw-about-editorial img {
    top: 34px;
    right: 24px;
    width: calc(100% - 68px);
    height: calc((100vw - 68px) * .75);
    object-position: 52% 42%;
    border-width: 8px;
  }
  .otw-about-editorial figcaption {
    left: 24px;
    bottom: 30px;
    width: calc(100% - 48px);
    padding: 20px 22px;
    background: rgba(20,35,55,.94);
    border-left: 1px solid var(--gold);
  }
  .otw-about-editorial figcaption strong { margin-top: 12px; font-size: 1.12rem; }
  
  
  
  .otw-instructor-grid .otw-photo,
  .split > .otw-photo { max-width: 440px; width: 100%; justify-self: center; }
}
@media (prefers-reduced-motion: reduce) {
  .otw-photo, .otw-photo img { animation: none; transition: none; }
}
