.tm-head { padding: clamp(64px, 8vw, 112px) 0; background: #05080c; color: #fff; font-family: var(--cx-sans); }
.tm-head__grid { display: grid; grid-template-columns: minmax(0, 380px) minmax(0, 1fr); gap: 40px clamp(40px, 6vw, 96px); align-items: end; }
.tm-head__media { overflow: hidden; background: #0a1016; }
.tm-head__media img { display: block; width: 100%; height: auto; aspect-ratio: 1 / 1; object-fit: cover; object-position: center top; }
.tm-trail { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 22px; font-family: var(--cx-mono); font-size: 12px; letter-spacing: .08em; text-transform: uppercase; color: #8f939a; }
.tm-trail a { color: #b4bcc4; }
.tm-trail a:hover { color: #fff; }
.tm-head__title { margin: 0; font-family: var(--cx-sans); font-size: clamp(40px, 5.4vw, 76px); font-weight: 500; line-height: 1.02; letter-spacing: -.02em; color: #fff; }
.tm-head__role { margin: 18px 0 0; font-family: var(--cx-mono); font-size: 14px; color: #b4bcc4; }
.tm-head__links { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 32px; }
.tm-head__links .cx-btn { margin: 0; }
.cx .tm-head em.accent { background-image: linear-gradient(102deg, #7fd4f5 0%, var(--accent) 42%, var(--accent-secondary) 100%); }
.cx .tm-certs em.accent { background-image: linear-gradient(102deg, var(--accent) 0%, var(--accent-secondary) 45%, var(--accent-strong) 100%); }

.tm-body { padding: clamp(88px, 10vw, 136px) 0; background: #fff; font-family: var(--cx-sans); }
.tm-row { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: 32px clamp(32px, 5vw, 80px); }
.tm-row + .tm-row { margin-top: clamp(56px, 6vw, 88px); padding-top: clamp(56px, 6vw, 88px); border-top: 1px solid var(--cx-line); }
.tm-row__title { margin: 0; font-size: clamp(32px, 3vw, 44px); font-weight: 500; line-height: 1.08; letter-spacing: -.015em; color: var(--cx-ink); }
.tm-prose { font-size: 17px; line-height: 1.7; color: var(--cx-ink-2); }
.tm-prose p { margin: 0 0 18px; }
.tm-prose > :last-child { margin-bottom: 0; }

.tm-gallery { padding: clamp(88px, 10vw, 136px) 0; background: #05080c; font-family: var(--cx-sans); }
.tm-gallery .tm-row__title { margin-bottom: clamp(40px, 5vw, 64px); color: #fff; }
.tm-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(16px, 2vw, 24px); }
.tm-grid figure { margin: 0; overflow: hidden; background: #0a1016; }
.tm-grid figure img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }

.tm-news .cx-card__media img { object-fit: cover; }

.tm-certs { padding: clamp(88px, 10vw, 136px) 0; background: var(--cx-paper); font-family: var(--cx-sans); }
.tm-certs .tm-row__title { margin-bottom: clamp(40px, 5vw, 64px); }
.tm-certs .tm-grid figure { display: grid; place-items: center; padding: 20px; background: #fff; }
.tm-certs .tm-grid figure img { aspect-ratio: 3 / 2; object-fit: contain; }

@media (max-width: 991px) {
    .tm-head__grid,
    .tm-row { grid-template-columns: minmax(0, 1fr); }
    .tm-head__media { max-width: 380px; }
    .tm-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 575px) {
    .tm-grid { grid-template-columns: minmax(0, 1fr); }
}
