/* ============================================================
   Tablet layout (min-width: 768px)
   ============================================================ */

/* ── Artist grid: 2 columns ─────────────────────────────── */
.view-artists .view-content {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.5rem;
}

.ft-artist-card__title {
  font-size: 1.15rem;
}

/* ── Package grid: 2 columns ────────────────────────────── */
.view-travel-packages .view-content {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.5rem;
}

/* ── Package detail: 2-col grid ─────────────────────────── */
.ft-package-hero__grid {
  grid-template-columns: 1.15fr .85fr;
  gap: 2.5rem;
}

.ft-package-content__grid {
  grid-template-columns: minmax(0, 1fr) 340px;
  gap: 2.5rem;
}

/* ── Homepage hero ──────────────────────────────────────── */
.ft-home-hero--media {
  min-height: 72vh;
}

.ft-home-hero {
  padding: 5rem 0 4rem;
}

.ft-home-hero__actions {
  flex-direction: row;
  align-items: flex-start;
}

.ft-home-hero__actions .ft-btn {
  width: auto;
  max-width: none;
}

/* ── Section spacing ────────────────────────────────────── */
.ft-home-section {
  padding: 4rem 0;
}

/* ── Why grid: 3 columns on tablet ─────────────────────── */
.ft-home-why__grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0 2rem;
}

.ft-home-why__item {
  padding: 1.5rem 0 1.25rem;
}

/* ── Events teaser: side-by-side ────────────────────────── */
.ft-home-events__inner {
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}

/* ── CTA block ──────────────────────────────────────────── */
.ft-home-cta__inner {
  padding: 3.5rem 3rem;
}

.ft-home-cta__actions {
  flex-direction: row;
  justify-content: center;
}

.ft-home-cta__actions .ft-btn {
  width: auto;
  max-width: none;
}

/* ── Events listing: 2 columns ──────────────────────────── */
.view-events-festivals .view-content {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.25rem;
}

/* ── Footer: 3 columns — contact column wide enough for address ── */
.site-footer__top {
  grid-template-columns: 1.4fr 1fr 1.8fr;
  gap: 2.5rem;
}

/* Ensure footer items fill their column width */
.site-footer__top > * {
  min-width: 0;
}

.ft-footer-contact__item-text {
  word-break: break-word;
  min-width: 0;
}

.ft-footer-bottom {
  flex-direction: row;
  justify-content: space-between;
}

/* ── Event detail: 2-col hero ───────────────────────────── */
.ft-event-hero__grid {
  grid-template-columns: 1.15fr .85fr;
}

/* ── Artist detail: 2-col hero ──────────────────────────── */
.ft-artist-hero__grid {
  grid-template-columns: .7fr 1.3fr;
}

/* ── Contact page: 2-col layout ─────────────────────────── */
.ft-contact-layout {
  grid-template-columns: 1fr 1.4fr;
  gap: 2.5rem;
}

/* ── Hero actions: row on tablet ────────────────────────── */
.ft-event-hero__actions,
.ft-artist-hero__actions {
  flex-direction: row;
  align-items: flex-start;
}

.ft-event-card__image-placeholder,
.ft-event-card__image {
  height: 180px;
}
