.tm-editorial-hero { padding-top: 42px; padding-bottom: 56px; }
.tm-hero-intro { position: relative; z-index: 2; margin-bottom: -54px; pointer-events: none; }
.tm-hero-intro .tm-eyebrow { margin-bottom: 16px; }
.tm-hero-intro h1 { font-size: clamp(64px,6.5vw,88px); line-height: 1.03; max-width: 980px; margin: 0; letter-spacing: -.06em; }
.tm-hero-intro h1 em { font-weight: 400; }
.tm-hero-image { margin-left: 17%; }
.tm-hero-image :is(img,picture,.tm-photo-placeholder) { display: block; width: 100%; aspect-ratio: 16/9; height: auto; object-fit: cover; }
.tm-hero-image .tm-photo-placeholder { display: flex; min-height: 0; }
.tm-hero-footer { display: grid; grid-template-columns: .75fr 1.5fr 1fr; gap: 36px; align-items: center; padding-top: 28px; }
.tm-hero-footer .tm-eyebrow { margin: 0; }
.tm-hero-description { max-width: 320px; font-size: 14px; color: var(--tm-muted); margin: 0!important; }
.tm-hero-footer .tm-button-row { gap: 25px; }
.tm-hero-footer .tm-button { background: transparent; color: var(--tm-ink); }
.tm-hero-footer .tm-button:hover { background: var(--tm-pink); }
.tm-featured .tm-grid-featured { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 26px; }
.tm-story-edit { padding-top: 20px; }
.tm-story-image { margin-right: 10px; }
.tm-story-image :is(img,.tm-photo-placeholder) { width: 100%; aspect-ratio: 4/5; object-fit: cover; }
.tm-story-copy { padding-top: 95px; max-width: 390px; }
.tm-story-copy h2 { font-size: clamp(38px,4.2vw,56px); }
.tm-story-copy p:not(.tm-eyebrow) { color: var(--tm-muted); font-size: 15px; }
.tm-story-copy .tm-text-link { display: inline-block; margin-top: 8px; }
.tm-worktable-edit { display: grid; grid-template-columns: .7fr 1fr; gap: 100px; align-items: center; }
.tm-worktable-copy { max-width: 350px; }
.tm-worktable-copy p:not(.tm-eyebrow) { color: var(--tm-muted); font-size: 15px; }
.tm-worktable-image :is(img,.tm-photo-placeholder) { width: 100%; aspect-ratio: 3/2; object-fit: cover; }
.tm-detail-tags { display: flex; flex-wrap: wrap; gap: 20px; margin-top: 32px; font-size: 10px; text-transform: uppercase; letter-spacing: .14em; color: var(--tm-muted); }
.tm-contact-edit { padding: 86px 36px; text-align: center; background: var(--tm-sand); position: relative; }
.tm-contact-edit::before { content: '✳'; display: block; color: var(--tm-pink); font-size: 42px; line-height: 1; margin-bottom: 28px; }
.tm-contact-edit h2 { max-width: 650px; margin: 0 auto 24px; font-size: clamp(42px,4.8vw,64px); }
.tm-contact-edit p:not(.tm-eyebrow) { max-width: 420px; margin: 0 auto 28px; color: var(--tm-muted); font-size: 15px; }
.tm-contact-edit .tm-button-row { justify-content: center; }
.tm-social-heading { display: flex; align-items: end; justify-content: space-between; gap: 25px; margin-bottom: 36px; }
.tm-social-heading h2 { font-size: 42px; margin-bottom: 0; }
.tm-social-heading p { margin: 0; font-size: 13px; color: var(--tm-muted); }
.tm-reveal { animation: tm-rise .6s ease-out both; }
@keyframes tm-rise { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }
@media(max-width:1100px) {
  .tm-hero-footer { grid-template-columns: 1.5fr 1fr; gap: 26px; }.tm-hero-footer>.tm-eyebrow { display: none; }.tm-worktable-edit { gap: 55px; }.tm-featured .tm-grid-featured { gap: 22px; }
}
@media(max-width:800px) {
  .tm-editorial-hero { padding-top: 32px; padding-bottom: 18px; }.tm-hero-intro { margin-bottom: 24px; }.tm-hero-intro h1 { font-size: clamp(38px,10.7vw,48px); line-height: 1.06; }.tm-hero-intro .tm-eyebrow { font-size: 9px; max-width: 240px; }
  .tm-hero-image { margin-left: 0; }.tm-hero-image :is(img,picture,.tm-photo-placeholder) { aspect-ratio: 4/5; }.tm-hero-footer { display: flex; flex-direction: column-reverse; align-items: start; gap: 23px; padding-top: 24px; }.tm-hero-description { max-width: 390px; font-size: 15px; }.tm-hero-footer .tm-button-row { gap: 22px; }
  .tm-featured .tm-grid-featured { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 30px 16px; }.tm-story-copy { padding-top: 0; max-width: none; }.tm-story-image { margin-right: 0; }.tm-story-copy h2 { font-size: 38px; }.tm-worktable-edit { grid-template-columns: 1fr; gap: 30px; }.tm-worktable-copy { max-width: none; }.tm-worktable-image { order: -1; }
  .tm-contact-edit { padding: 58px 24px; }.tm-contact-edit h2 { font-size: 40px; }.tm-social-heading { display: block; }.tm-social-heading h2 { font-size: 34px; }.tm-social-heading p { margin-top: 18px; }
}
