/* Catalunyaar — Upcoming Events Roundup — scoped under .cyr-events-post */
/* Theme accent this week: festival coral (#FF6A4D) over the brand's dark-gradient + gold base */

.cyr-events-post {
  --cyr-bg-dark-1: #14101c;
  --cyr-bg-dark-2: #241a33;
  --cyr-gold: #e8b84b;
  --cyr-gold-soft: #f3d489;
  --cyr-accent: #ff6a4d;
  --cyr-accent-soft: #ff9478;
  --cyr-free-green: #3ecf8e;
  --cyr-free-green-bg: rgba(62, 207, 142, 0.14);
  --cyr-paid-bg: rgba(232, 184, 75, 0.16);
  --cyr-text-light: #f7f3ec;
  --cyr-text-muted: #cfc6da;
  --cyr-card-bg: #1d1628;
  --cyr-card-border: rgba(232, 184, 75, 0.18);
  --cyr-radius: 16px;

  font-family: 'Space Grotesk', -apple-system, BlinkMacSystemFont, sans-serif;
  color: var(--cyr-text-light);
  background: var(--cyr-bg-dark-1);
  line-height: 1.5;
}

.cyr-events-post * {
  box-sizing: border-box;
}

.cyr-events-post a {
  color: inherit !important;
  text-decoration: none !important;
}

/* ---------- HERO ---------- */
.cyr-hero {
  background: radial-gradient(circle at 15% 0%, rgba(255, 106, 77, 0.28), transparent 55%),
              linear-gradient(160deg, var(--cyr-bg-dark-1) 0%, var(--cyr-bg-dark-2) 55%, #1a1226 100%);
  padding: 56px 24px 44px;
  text-align: center;
  border-radius: var(--cyr-radius);
}

.cyr-hero-inner {
  max-width: 720px;
  margin: 0 auto;
}

.cyr-eyebrow {
  text-transform: uppercase;
  letter-spacing: 0.14em;
  font-size: 12px;
  font-weight: 600;
  color: var(--cyr-gold-soft);
  margin: 0 0 6px;
}

.cyr-daterange {
  font-size: 15px;
  font-weight: 600;
  color: var(--cyr-accent-soft);
  margin: 0 0 16px;
  letter-spacing: 0.02em;
}

.cyr-headline {
  font-family: 'Anton', 'Space Grotesk', sans-serif;
  font-weight: 400;
  font-size: clamp(34px, 6vw, 58px);
  letter-spacing: 0.01em;
  margin: 0 0 16px;
  line-height: 1.02;
  background: linear-gradient(95deg, var(--cyr-gold) 0%, var(--cyr-accent) 60%, var(--cyr-accent-soft) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.cyr-subtitle {
  font-size: 16px;
  color: var(--cyr-text-muted);
  max-width: 560px;
  margin: 0 auto 28px;
}

.cyr-lang-toggle {
  display: inline-flex;
  gap: 6px;
  background: rgba(255, 255, 255, 0.06);
  padding: 5px;
  border-radius: 999px;
  border: 1px solid rgba(232, 184, 75, 0.2);
}

.cyr-lang-btn {
  border: none;
  background: transparent;
  color: var(--cyr-text-muted);
  font-family: 'Space Grotesk', sans-serif;
  font-weight: 600;
  font-size: 13px;
  padding: 7px 16px;
  border-radius: 999px;
  cursor: pointer;
  transition: background 0.2s ease, color 0.2s ease;
}

.cyr-lang-btn.is-active {
  background: linear-gradient(95deg, var(--cyr-gold), var(--cyr-accent));
  color: #1a1226;
}

/* ---------- SECTIONS ---------- */
.cyr-section {
  padding: 40px 24px 8px;
}

.cyr-section-title {
  font-family: 'Anton', 'Space Grotesk', sans-serif;
  font-weight: 400;
  font-size: clamp(22px, 3.4vw, 30px);
  letter-spacing: 0.01em;
  color: var(--cyr-gold-soft);
  margin: 0 0 22px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(232, 184, 75, 0.2);
}

.cyr-card-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}

/* ---------- EVENT CARDS ---------- */
.cyr-card {
  background: var(--cyr-card-bg);
  border: 1px solid var(--cyr-card-border);
  border-radius: var(--cyr-radius);
  padding: 22px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  transition: transform 0.2s ease, border-color 0.2s ease;
}

.cyr-card:hover {
  transform: translateY(-3px);
  border-color: var(--cyr-accent);
}

.cyr-card-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.cyr-event-name {
  font-size: 17px;
  font-weight: 700;
  margin: 0;
  color: var(--cyr-text-light);
  line-height: 1.3;
}

.cyr-chip {
  flex-shrink: 0;
  font-size: 12px;
  font-weight: 700;
  padding: 5px 11px;
  border-radius: 999px;
  white-space: nowrap;
}

.cyr-chip-free {
  background: var(--cyr-free-green-bg);
  color: var(--cyr-free-green);
  border: 1px solid rgba(62, 207, 142, 0.4);
}

.cyr-chip-paid {
  background: var(--cyr-paid-bg);
  color: var(--cyr-gold-soft);
  border: 1px solid rgba(232, 184, 75, 0.45);
}

.cyr-event-meta {
  font-size: 13.5px;
  color: var(--cyr-text-muted);
  margin: 0;
  display: flex;
  align-items: center;
  gap: 6px;
}

.cyr-event-meta i {
  color: var(--cyr-accent-soft);
  font-size: 15px;
}

.cyr-event-desc {
  font-size: 14.5px;
  color: var(--cyr-text-muted);
  margin: 6px 0 8px;
}

.cyr-indian-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #1a1226;
  background: linear-gradient(95deg, var(--cyr-gold), var(--cyr-accent-soft));
  padding: 4px 10px;
  border-radius: 999px;
  width: fit-content;
}

.cyr-events-post a.cyr-event-link,
.cyr-events-post .cyr-event-link {
  margin-top: auto;
  font-weight: 700;
  font-size: 14px;
  color: #ff8563 !important;
  padding-top: 6px;
  text-decoration: none !important;
}

.cyr-events-post a.cyr-event-link:hover,
.cyr-events-post .cyr-event-link:hover {
  color: var(--cyr-gold) !important;
  text-decoration: underline !important;
}

.cyr-events-post a.cyr-event-link:visited {
  color: #ff8563 !important;
}

/* ---------- CTA ---------- */
.cyr-cta {
  margin: 48px 24px 0;
  padding: 40px 24px;
  border-radius: var(--cyr-radius);
  text-align: center;
  background: linear-gradient(135deg, rgba(255, 106, 77, 0.18), rgba(232, 184, 75, 0.14));
  border: 1px solid rgba(232, 184, 75, 0.25);
}

.cyr-cta-heading {
  font-family: 'Anton', 'Space Grotesk', sans-serif;
  font-weight: 400;
  font-size: clamp(20px, 3vw, 28px);
  margin: 0 0 8px;
  color: var(--cyr-text-light);
}

.cyr-cta-text {
  color: var(--cyr-text-muted);
  margin: 0 0 22px;
  font-size: 15px;
}

.cyr-cta-buttons {
  display: flex;
  justify-content: center;
  gap: 14px;
  flex-wrap: wrap;
}

.cyr-cta-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-weight: 700;
  font-size: 14px;
  padding: 12px 22px;
  border-radius: 999px;
  transition: transform 0.2s ease, opacity 0.2s ease;
}

.cyr-cta-whatsapp {
  background: #25d366;
  color: #0c1a12;
}

.cyr-cta-website {
  background: linear-gradient(95deg, var(--cyr-gold), var(--cyr-accent));
  color: #1a1226;
}

.cyr-cta-btn:hover {
  transform: translateY(-2px);
  opacity: 0.92;
}

/* ---------- SOCIAL FOOTER ---------- */
.cyr-social-footer {
  text-align: center;
  padding: 36px 24px 44px;
}

.cyr-social-label {
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--cyr-text-muted);
  margin: 0 0 16px;
}

.cyr-social-icons {
  display: flex;
  justify-content: center;
  gap: 16px;
}

.cyr-social-icons a {
  width: 40px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(232, 184, 75, 0.25);
  font-size: 18px;
  color: var(--cyr-gold-soft);
  transition: background 0.2s ease, transform 0.2s ease;
}

.cyr-social-icons a:hover {
  background: linear-gradient(95deg, var(--cyr-gold), var(--cyr-accent));
  color: #1a1226;
  transform: translateY(-2px);
}

/* ---------- MOBILE ---------- */
@media (max-width: 700px) {
  .cyr-hero {
    padding: 44px 18px 36px;
  }

  .cyr-section {
    padding: 32px 16px 8px;
  }

  .cyr-card-grid {
    grid-template-columns: 1fr;
  }

  .cyr-cta {
    margin: 40px 16px 0;
    padding: 32px 18px;
  }

  .cyr-cta-buttons {
    flex-direction: column;
  }

  .cyr-cta-btn {
    justify-content: center;
    width: 100%;
  }
}