/*
Theme Name: FESTCIN Garanhuns Theme
Theme URI: https://festcingaranhuns.com.br
Author: Focus Mídia Filmes
Description: Tema oficial do Festival de Cinema de Garanhuns com identidade visual do FESTCIN.
Version: 1.0.0
Text Domain: festcin-theme
*/

:root {
  /* Cores Embratur */
  --embratur-green: #007236;
  --embratur-blue: #005CA9;
  --embratur-yellow: #FFC700;
  --embratur-red: #E30613;
  --embratur-teal: #00D0C5;

  /* Cores Oficiais FESTCIN */
  --fest-magenta: #D81B60;
  --fest-orange: #FF6F00;
  --fest-yellow: #FFB300;
  --fest-purple: #7E22CE;
  --fest-purple-light: #A855F7;
  --fest-black: #121212;
  --fest-gradient: linear-gradient(135deg, #D81B60 0%, #FF6F00 50%, #FFB300 100%);

  /* Neutros */
  --dark-bg: #0B0F0C;
  --dark-card: #141C16;
  --light-bg: #F8FAF8;
  --light-card: #FFFFFF;
  --text-dark: #1A1A1A;
  --text-muted: #64748B;
  --border-color: #E2E8F0;
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  font-family: 'Plus Jakarta Sans', sans-serif;
}

body {
  background-color: #050806;
  color: var(--text-dark);
  padding: 40px 20px;
  min-height: 100vh;
}

.site-container {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 40px;
}

/* Badges */
.badge {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  border-radius: 100px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}

.badge-fest { background: var(--fest-gradient); color: #FFFFFF; }
.badge-green { background: rgba(0, 114, 54, 0.12); color: var(--embratur-green); }
.badge-blue { background: rgba(0, 92, 169, 0.12); color: var(--embratur-blue); }
.badge-magenta { background: rgba(216, 27, 96, 0.12); color: var(--fest-magenta); }
.badge-purple { background: rgba(168, 85, 247, 0.15); color: var(--fest-purple-light); }

/* Cards */
.card {
  background: var(--light-card);
  border: 1px solid var(--border-color);
  border-radius: 12px;
  padding: 20px;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.03);
}

.card-dark {
  background: var(--dark-card);
  border-color: rgba(255, 255, 255, 0.08);
  color: #FFFFFF;
}

.card-accent-top { border-top: 4px solid var(--fest-magenta); }
.card-accent-green { border-top: 4px solid var(--embratur-green); }
.card-accent-blue { border-top: 4px solid var(--embratur-blue); }

/* Grids */
.grid-2 { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
.grid-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.grid-4 { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }

@media (max-width: 900px) {
  .grid-2, .grid-3, .grid-4 { grid-template-columns: 1fr; }
}