@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400&display=swap');

/* Evercrest Container Homes (Atlas) - Luxury Theme CSS Stylesheet */

:root {
  --font-serif: 'Playfair Display', Georgia, serif;
  --font-sans: 'Inter', system-ui, -apple-system, sans-serif;
  
  /* Shared Luxury Palette Fallbacks */
  --primary-gold: #B39257;
  --primary-gold-dark: #967B47;
  --primary-gold-light: #C5A875;
  --slate-800: #1E293B;
  --slate-700: #334155;
  --slate-600: #475569;
  --slate-100: #F1F5F9;
  --cream-bg: #FAF9F6;
}

body {
  font-family: var(--font-sans);
  background-color: var(--cream-bg);
  color: var(--slate-700);
  scroll-behavior: smooth;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5, h6, .font-serif {
  font-family: var(--font-serif);
  color: var(--slate-800);
}

/* Custom Micro-Animations */
@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes slideUp {
  from { transform: translateY(20px); opacity: 0; }
  to { transform: translateY(0); opacity: 1; }
}

@keyframes shimmer {
  0% { background-position: -200% 0; }
  100% { background-position: 200% 0; }
}

.animate-fade-in {
  animation: fadeIn 0.6s ease-out forwards;
}

.animate-slide-up {
  animation: slideUp 0.8s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

/* Glassmorphism Card Style */
.glass-card {
  background: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 255, 255, 0.4);
}

/* Custom Scrollbar for Luxury Aesthetics */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

::-webkit-scrollbar-track {
  background: #F1F5F9;
}

::-webkit-scrollbar-thumb {
  background: var(--primary-gold-light);
  border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
  background: var(--primary-gold);
}

/* Interactive customizer button styling */
.customizer-swatch {
  transition: transform 0.2s cubic-bezier(0.4, 0, 0.2, 1), border-color 0.2s;
}
.customizer-swatch:hover {
  transform: scale(1.1);
}

/* Premium Gold Text Gradient */
.text-gold-gradient {
  background: linear-gradient(135deg, #B39257 0%, #E5C185 50%, #967B47 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* Interactive Slider styling */
input[type="range"] {
  accent-color: var(--primary-gold);
}

/* Lead quote stepper progress bar styling */
.step-dot.active {
  background-color: var(--primary-gold);
  box-shadow: 0 0 0 4px rgba(179, 146, 87, 0.2);
}
.step-dot.complete {
  background-color: #10B981;
}

/* Accordion max height transitions */
.faq-accordion-content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.35s ease-out;
}
.faq-accordion-item.active .faq-accordion-content {
  max-height: 500px;
}
.faq-accordion-item.active svg {
  transform: rotate(180deg);
}

/* Hover Zoom effects for large container pictures */
.img-zoom-container {
  overflow: hidden;
}
.img-zoom-container img {
  transition: transform 0.5s ease;
}
.img-zoom-container:hover img {
  transform: scale(1.05);
}
