/* Sete Tronos - Site Publico */
:root{
  --brand-700:#15803d;
  --brand-800:#166534;
  --gold-400:#fbbf24;
}
html { scroll-behavior: smooth; }
body { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; }
.font-display { font-family: 'Fraunces', serif; }

/* Hero pattern */
.hero-pattern{
  background:
    radial-gradient(circle at 85% 15%, rgba(251,191,36,0.20) 0, transparent 50%),
    radial-gradient(circle at 12% 80%, rgba(34,197,94,0.16) 0, transparent 45%),
    linear-gradient(135deg, #14532d 0%, #166534 55%, #15803d 100%);
}

/* Carrossel simples */
.carousel{position:relative; overflow:hidden; border-radius:1rem;}
.carousel-track{display:flex; transition:transform .5s ease;}
.carousel-track > *{flex: 0 0 100%;}
.carousel-btn{
  position:absolute; top:50%; transform:translateY(-50%);
  width:44px; height:44px; border-radius:9999px;
  background:rgba(255,255,255,.92); color:#15803d;
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 4px 12px rgba(0,0,0,.15); cursor:pointer; border:none;
  transition: background .15s;
}
.carousel-btn:hover{background:#fff;}
.carousel-btn.prev{left:.75rem}
.carousel-btn.next{right:.75rem}
.carousel-dots{display:flex; gap:.4rem; justify-content:center; margin-top:1rem;}
.carousel-dots button{width:.55rem; height:.55rem; border-radius:9999px; background:#cbd5e1; border:none; cursor:pointer; transition:.2s;}
.carousel-dots button.active{background:#15803d; width:1.4rem;}

/* Cards de doacao - active */
.donation-tab.active{ background:#15803d; color:#fff; }
.donation-tab.active i{ color:#fbbf24; }

/* Linhas de citacao */
.quote{
  border-left: 4px solid #fbbf24;
  padding: 1rem 1.5rem;
  background: linear-gradient(to right, #f0fdf4, transparent);
  border-radius: 0 .75rem .75rem 0;
  font-family: 'Fraunces', serif;
  font-style: italic;
  color:#166534;
  white-space: pre-line;
}

/* Acessibilidade - texto maior padrao */
@media (max-width: 640px){
  body{font-size:16px}
}

/* Galeria simples */
.gallery{display:grid; grid-template-columns:repeat(auto-fill, minmax(160px,1fr)); gap:.75rem;}
.gallery a{display:block; aspect-ratio:1/1; overflow:hidden; border-radius:.75rem; background:#f3f4f6;}
.gallery img{width:100%; height:100%; object-fit:cover; transition:.3s}
.gallery a:hover img{transform:scale(1.05)}

/* Tabs */
.tab-btn{padding:.6rem 1rem; border-radius:9999px; background:#f3f4f6; color:#374151; font-size:.875rem; font-weight:500; border:none; cursor:pointer; transition:.15s;}
.tab-btn.active{background:#15803d; color:#fff;}
.tab-btn:hover:not(.active){background:#e5e7eb;}
