.tlm-instructors { background: var(--tlm-white, #fff); }
.tlm-instructors h1,
.tlm-instructors h2,
.tlm-instructors h3 { color: var(--tlm-deep-black, #0c1212); }

.tlm-instructors-hero { padding-top: clamp(40px, 6vw, 88px); }
.tlm-instructors-hero__grid { display: grid; grid-template-columns: minmax(0, .9fr) minmax(420px, 1.1fr); gap: var(--tlm-space-2xl, 48px); align-items: stretch; }
.tlm-instructors-hero__content { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; min-height: 560px; padding: clamp(24px, 4vw, 64px); border-radius: var(--tlm-radius-lg, 30px); background: #fff; }
.tlm-instructors-hero__content h1 { max-width: 10ch; margin: 0 0 24px; font-size: clamp(54px, 6vw, 94px); line-height: .92; letter-spacing: -.055em; font-weight: 500; }
.tlm-instructors-hero__content > p:not(.tlm-eyebrow) { max-width: 54ch; margin: 0 0 32px; color: var(--tlm-muted); font-size: 16px; line-height: 1.75; }
.tlm-instructors-hero__visual { position: relative; min-height: 560px; overflow: hidden; border-radius: var(--tlm-radius-lg, 30px); background: linear-gradient(135deg, #f0e2de 0%, #ebc1cf 38%, #e180b1 100%); isolation: isolate; }
.tlm-instructors-hero__visual::before { content: ''; position: absolute; inset: 0; background: radial-gradient(circle at 22% 24%, rgba(255,255,255,.72), transparent 32%), radial-gradient(circle at 78% 75%, rgba(255,255,255,.28), transparent 34%); }
.tlm-instructors-hero__orb { position: absolute; border-radius: 50%; border: 1px solid rgba(255,255,255,.75); }
.tlm-instructors-hero__orb--1 { width: 58%; aspect-ratio: 1; right: -8%; top: -14%; }
.tlm-instructors-hero__orb--2 { width: 34%; aspect-ratio: 1; left: 10%; bottom: 8%; }
.tlm-instructors-hero__mark { position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); color: #fff; font-size: clamp(46px, 6vw, 92px); font-weight: 300; letter-spacing: -.06em; white-space: nowrap; }
.tlm-instructors-hero__mark span { font-style: italic; font-family: Georgia, serif; }

.tlm-instructors-team__head { display: grid; grid-template-columns: .45fr 1fr; gap: 24px; align-items: end; margin-bottom: clamp(40px, 5vw, 72px); }
.tlm-instructors-team__head h2 { max-width: 13ch; margin: 0; font-size: clamp(42px, 5vw, 76px); line-height: .94; letter-spacing: -.05em; font-weight: 500; }
.tlm-instructors-team__list { display: grid; gap: clamp(56px, 7vw, 112px); }
.tlm-instructor { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(32px, 5vw, 80px); align-items: center; }
.tlm-instructor--reverse .tlm-instructor__media { order: 2; }
.tlm-instructor--reverse .tlm-instructor__content { order: 1; }
.tlm-instructor__media { overflow: hidden; border-radius: var(--tlm-radius-lg, 30px); background: #f0e2de; aspect-ratio: 4 / 4.75; }
.tlm-instructor__media img { width: 100%; height: 100%; object-fit: cover; object-position: center top; transition: transform var(--tlm-duration-normal, .3s) var(--tlm-ease, ease); }
.tlm-instructor:hover .tlm-instructor__media img { transform: scale(1.018); }
.tlm-instructor__content { position: relative; padding: clamp(12px, 2vw, 24px) 0; }
.tlm-instructor__number { margin-bottom: 28px; color: #e180b1; font-size: 12px; letter-spacing: .18em; font-weight: 700; }
.tlm-instructor__role { margin: 0 0 8px; color: #a66180; font-size: 11px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.tlm-instructor__content h3 { margin: 0; font-size: clamp(40px, 4.6vw, 72px); line-height: .95; letter-spacing: -.05em; font-weight: 500; }
.tlm-instructor__city { margin: 14px 0 24px; color: #3a1f22; font-size: 14px; font-weight: 700; }
.tlm-instructor__specialties { max-width: 56ch; margin: 0 0 26px; padding-bottom: 24px; border-bottom: 1px solid rgba(58,31,34,.14); color: #3a1f22; font-size: 15px; line-height: 1.7; font-weight: 650; }
.tlm-instructor__bio { max-width: 62ch; color: var(--tlm-muted); font-size: 15px; line-height: 1.8; }
.tlm-instructor__bio p { margin: 0; }

.tlm-instructors-statement { background: #e180b1; color: #fff; }
.tlm-instructors-statement .tlm-container { padding-block: clamp(24px, 2vw, 34px); }
.tlm-instructors-statement p { max-width: 18ch; margin: 0; font-size: clamp(42px, 5.3vw, 82px); line-height: .98; letter-spacing: -.05em; font-weight: 500; }

.tlm-instructors-cta__inner { display: flex; align-items: end; justify-content: space-between; gap: 40px; padding: clamp(34px, 5vw, 72px); border-radius: var(--tlm-radius-lg, 30px); background: #f0e2de; }
.tlm-instructors-cta__inner > div { max-width: 820px; }
.tlm-instructors-cta h2 { margin: 8px 0 18px; max-width: 13ch; font-size: clamp(40px, 4.4vw, 68px); line-height: .96; letter-spacing: -.045em; font-weight: 500; }
.tlm-instructors-cta__inner > div > p:not(.tlm-eyebrow) { max-width: 58ch; margin: 0; color: #66575a; line-height: 1.7; }
.tlm-instructors-cta .tlm-btn { flex: 0 0 auto; }

@media (max-width: 1024px) {
  .tlm-instructors-hero__grid { grid-template-columns: 1fr; }
  .tlm-instructors-hero__content { min-height: auto; padding-inline: 0; }
  .tlm-instructors-hero__visual { min-height: 420px; }
  .tlm-instructors-team__head { grid-template-columns: 1fr; }
  .tlm-instructor { grid-template-columns: 1fr 1fr; gap: 32px; }
}
@media (max-width: 768px) {
  .tlm-instructors-hero { padding-top: 24px; }
  .tlm-instructors-hero__content h1 { font-size: clamp(48px, 14vw, 68px); }
  .tlm-instructors-hero__visual { min-height: 330px; border-radius: var(--tlm-radius-md, 20px); }
  .tlm-instructors-team__list { gap: 56px; }
  .tlm-instructor,
  .tlm-instructor--reverse { grid-template-columns: 1fr; }
  .tlm-instructor--reverse .tlm-instructor__media,
  .tlm-instructor--reverse .tlm-instructor__content { order: initial; }
  .tlm-instructor__media { border-radius: var(--tlm-radius-md, 20px); aspect-ratio: 4 / 4.8; }
  .tlm-instructor__number { margin-bottom: 16px; }
  .tlm-instructor__content h3 { font-size: clamp(38px, 12vw, 54px); }
  .tlm-instructors-statement p { font-size: clamp(38px, 11vw, 58px); }
  .tlm-instructors-cta__inner { display: grid; align-items: start; border-radius: var(--tlm-radius-md, 20px); padding: 28px 24px; }
}
