/* ── Telegram block ─────────────────────────────────────────── */

.tg-section {
  padding: var(--spacing-section, 80px) 0;
}

.tg-inner {
  max-width: 680px;
  margin: 0 auto;
  padding: 0 var(--container-px, 24px);
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 24px;
}

/* Header: icon + title */
.tg-header {
  display: flex;
  align-items: center;
  gap: 14px;
}

.tg-icon {
  flex-shrink: 0;
}

.tg-title {
  font-family: var(--font-serif, "Playfair Display", serif);
  font-size: 28px;
  font-weight: 700;
  color: var(--color-ink, #1e1e2e);
  line-height: 1.2;
  margin: 0 0 12px;
}

/* Channel description */
.tg-description {
  font-family: var(--font-sans, "DM Sans", sans-serif);
  font-size: 15px;
  color: #555;
  line-height: 1.5;
  margin: 0 0 24px;
  max-width: 400px;
}

/* Subscribe button */
.tg-subscribe-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #0088cc;
  color: #fff;
  font-family: var(--font-sans, "DM Sans", sans-serif);
  font-weight: 600;
  font-size: 15px;
  padding: 13px 28px;
  border-radius: 999px;
  text-decoration: none;
  align-self: flex-start;
  transition: opacity 0.3s ease;
}

.tg-subscribe-btn:hover,
.tg-subscribe-btn:focus-visible {
  opacity: 0.88;
}

/* Mobile */
@media (max-width: 600px) {
  .tg-subscribe-btn {
    width: 100%;
    justify-content: center;
    align-self: stretch;
  }
}
