.tm-page section { position: relative; }

.tm-hero-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0,1fr));
  gap: var(--space-4);
  align-items: center;
}
.tm-hero-text { grid-column: span 5; max-width: 600px; }
.tm-hero-image { grid-column: span 7; }
.tm-hero-image img { width: 100%; border-radius: var(--radius-sm); }

.tm-types-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: var(--space-4);
  text-align: center;
}
.tm-card { min-width: 0; }

.tm-feature-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0,1fr));
  gap: var(--space-4);
  align-items: center;
}
.tm-feature-grid.reverse { direction: rtl; }
.tm-feature-grid.reverse * { direction: ltr; }
.tm-feature-text { grid-column: span 6; max-width: 700px; }
.tm-feature-image { grid-column: span 6; }
.tm-feature-image img { width: 100%; border-radius: var(--radius-sm); }

.tm-tech-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: var(--space-4);
  text-align: center;
}

.tm-gallery-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: var(--space-4);
  text-align: center;
}
.tm-gallery-grid img { border-radius: var(--radius-sm); margin-bottom: var(--space-2); }

.tm-cta-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-4);
  text-align: center;
  background: var(--bg-glass);
  border: 1px solid var(--border-glass);
}

@media (max-width: 1100px) {
  .tm-hero-grid { grid-template-columns: 1fr; }
  .tm-hero-text, .tm-hero-image { grid-column: span 1; }

  .tm-feature-grid { grid-template-columns: 1fr; }
  .tm-feature-text, .tm-feature-image { grid-column: span 1; }

  .tm-types-grid,
  .tm-tech-grid,
  .tm-gallery-grid { grid-template-columns: 1fr; }
}
