@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&family=Playfair+Display:wght@400;500;600;700&display=swap");

:root {
  --color-primary: #d4a853;
  --color-secondary: #6b2d5b;
  --color-cream: #fdf8f3;
  --color-charcoal: #2d2d2d;
  --color-gray-light: #f5f5f5;
}

html {
  font-family: "Inter", sans-serif;
  color: var(--color-charcoal);
  background-color: #ffffff;
  scroll-behavior: smooth;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Playfair Display", serif;
}

.container-custom {
  margin-left: auto;
  margin-right: auto;
  padding-left: 1rem;
  padding-right: 1rem;
  max-width: 1440px;
}

@media (min-width: 640px) {
  .container-custom {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}

@media (min-width: 1024px) {
  .container-custom {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}

/* Mobile Menu Animation */
#mobile-menu {
  display: block; /* Override Tailwind hidden class */
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transition:
    max-height 0.4s ease-in-out,
    opacity 0.3s ease-in-out;
}

#mobile-menu.open {
  max-height: 500vh; /* Large enough to fit content */
  opacity: 1;
}

@media (min-width: 768px) {
  #mobile-menu {
    display: none !important;
  }
}

/* SOP Compliance: Moved from what-we-believe.html */
.faith-item.active {
  border-color: rgba(212, 168, 83, 0.3);
  box-shadow: 0 10px 30px -10px rgba(0, 0, 0, 0.1);
}
.faith-item.active .faith-content {
  max-height: 500px;
}
.faith-item.active i[data-lucide="chevron-down"] {
  transform: rotate(180deg);
}

/* Utility for grid pattern */
.bg-grid-white-pattern {
  background-image:
    linear-gradient(#fff 1px, transparent 1px),
    linear-gradient(90deg, #fff 1px, transparent 1px);
  background-size: 40px 40px;
}

/* Utility for cube pattern */
.bg-pattern-cubes {
  background-image: url("https://www.transparenttextures.com/patterns/cubes.png");
}

/* Utility for radial dots pattern */
.bg-pattern-dots {
  background-image: radial-gradient(#fff 1px, transparent 1px);
  background-size: 30px 30px;
}

/* Iframe border reset */
.border-0 {
  border: 0;
}
