.tt-services { padding-top: 132px; background: var(--tt-bg); }
.tt-services > .e-con-inner > .tt-section-copy { margin-bottom: 54px; }
.tt-services-grid > .e-con-inner { display: grid !important; min-height: 740px; grid-template-columns: 1.42fr 1fr; grid-template-rows: 1fr 1fr; gap: 12px; }
.tt-service-card { position: relative; min-height: 0; overflow: hidden !important; padding: 0 !important; border: 1px solid rgba(255,255,255,.08); border-radius: 2px; background: var(--tt-surface); justify-content: flex-end !important; transition: border-color 500ms var(--tt-ease); }
.tt-service-card:first-child { grid-row: 1 / 3; }
.tt-service-card .elementor-widget-image, .tt-service-card .elementor-widget-image .elementor-widget-container { position: absolute !important; inset: 0; width: 100%; height: 100%; }
.tt-service-card img { width: 100%; height: 100%; object-fit: cover; filter: brightness(.7) contrast(1.1) saturate(.82); transition: filter 500ms var(--tt-ease), transform 700ms var(--tt-ease); }
.tt-service-card:first-child img { object-position: 58% center; }
.tt-service-card::after { content: ""; position: absolute; z-index: 1; inset: 0; background: linear-gradient(0deg, rgba(5,6,7,.96), rgba(5,6,7,.08) 70%), linear-gradient(90deg, rgba(5,6,7,.48), transparent 58%); transition: opacity 500ms var(--tt-ease); }
.tt-service-copy { position: relative; z-index: 2; width: 100%; margin-top: auto !important; padding: 30px 32px !important; }
.tt-service-card:first-child .tt-service-copy { padding: 44px !important; }
.tt-service-copy::before { content: ""; display: block; width: 28px; height: 1px; margin-bottom: 18px; background: var(--tt-gold-light); transform-origin: left; transition: transform 500ms var(--tt-ease); }
.tt-service-copy h3 { max-width: 80%; margin: 0 0 8px; font-size: clamp(22px, 2vw, 34px); font-weight: 380; }
.tt-service-copy p { max-width: 44ch; margin: 0; color: rgba(244,241,235,.62); font-size: 13px; line-height: 1.55; }
@media (hover:hover) and (pointer:fine) {
  .tt-service-card:hover { border-color: rgba(231,197,110,.48); }
  .tt-service-card:hover img { filter: brightness(.86) contrast(1.1) saturate(.86); transform: scale(1.035); }
  .tt-service-card:hover::after { opacity: .86; }
  .tt-service-card:hover .tt-service-copy::before { transform: scaleX(1.55); }
  .tt-service-card:hover .tt-service-copy { transform: translateY(-2px); }
}

