#tours { padding: 7rem 0; background: var(--bg2); }

.thdr {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 4rem;
}

.tg {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
}

.tc { position: relative; overflow: hidden; cursor: pointer; }

.timg { width: 100%; height: 480px; object-fit: cover; transition: transform .7s ease; }
.tc:hover .timg { transform: scale(1.05); }

.tov {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(10,10,11,.95) 0%, transparent 55%);
  pointer-events: none;
}

.tcnt { position: absolute; bottom: 0; left: 0; right: 0; padding: 2rem; }

.ttag { font-size: .6rem; letter-spacing: .3em; text-transform: uppercase; color: var(--sky); margin-bottom: .75rem; display: block; }

.tc h3 { font-family: 'Cormorant Garamond', serif; font-size: 1.6rem; font-weight: 300; color: #fff; margin-bottom: .5rem; }

.tmeta { display: flex; gap: 1.25rem; margin-bottom: 1.25rem; }
.tmeta span { font-size: .72rem; font-weight: 200; color: rgba(255,255,255,.55); letter-spacing: .1em; }

.tprice { font-family: 'Cormorant Garamond', serif; font-size: 1.1rem; font-weight: 300; color: var(--gold); }

.tlink {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  font-size: .7rem;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--gold);
  text-decoration: none;
  border-bottom: 1px solid var(--gold);
  padding-bottom: 2px;
  opacity: 0;
  transform: translateY(10px);
  transition: all .3s;
}
.tc:hover .tlink { opacity: 1; transform: none; }
