/* ================================================
   MAIN — main.css
   Single entry point. Import order matters:
   1. Tokens (variables) must come first
   2. Base (reset) before anything
   3. glass.css after tokens so glass vars are defined
   4. Components in any order
   ================================================ */

/* Layer 1 — Foundation */
@import './tokens.css';
@import './base.css';

/* Layer 2 — Glassmorphism system */
@import './glass.css';

/* Layer 3 — Shared primitives */
@import './components/sections.css';
@import './components/buttons.css';

/* Layer 4 — Layout components */
@import './components/nav.css';
@import './components/footer.css';
@import './components/floaters.css';

/* Layer 5 — Page sections (top to bottom) */
@import './components/hero.css';
@import './components/impact.css';
@import './components/model.css';
@import './components/journey.css';
@import './components/resources.css';
@import './components/testimonials.css';
@import './components/community.css';
@import './components/give.css';
@import './components/outreach.css';
@import './components/newsletter.css';

/* Homepage rhythm: tighten section spacing without changing secondary pages */
body.home-page .hero {
   padding: var(--space-4xl) 0 var(--space-2xl);
}

body.home-page .impact-section {
   padding: calc(var(--space-2xl) + 0.5rem) 0;
}

body.home-page .model-section,
body.home-page .testimonials-section,
body.home-page .cta-banner {
   padding-top: var(--space-3xl);
   padding-bottom: var(--space-3xl);
}

body.home-page .testimonials-section {
   padding-bottom: calc(var(--space-3xl) + 0.5rem);
}

body.home-page .section-header {
   margin: 0 auto calc(var(--space-xl) + 0.5rem);
}

@media (max-width: 768px) {
   body.home-page .hero {
      padding: var(--space-3xl) 0 var(--space-xl);
   }

   body.home-page .impact-section,
   body.home-page .model-section,
   body.home-page .testimonials-section,
   body.home-page .cta-banner {
      padding-top: var(--space-2xl);
      padding-bottom: var(--space-2xl);
   }

   body.home-page .testimonials-section {
      padding-bottom: calc(var(--space-2xl) + 0.5rem);
   }

   body.home-page .section-header {
      margin-bottom: var(--space-xl);
   }
}

/* Secondary pages: match the landing page's tighter rhythm and card polish */
body.secondary-page .page-hero {
   padding: var(--space-4xl) 0 var(--space-2xl);
}

body.secondary-page .page-hero .hero-title {
   max-width: none;
}

body.secondary-page .page-hero .hero-subtitle {
   max-width: 600px;
}

body.secondary-page .resources-section,
body.secondary-page .community-section,
body.secondary-page .give-section,
body.secondary-page .give-impact-section,
body.secondary-page .testimonials-section,
body.secondary-page .cta-banner {
   padding-top: var(--space-3xl);
   padding-bottom: var(--space-3xl);
}

body.secondary-page .testimonials-section {
   padding-bottom: calc(var(--space-3xl) + 0.5rem);
}

body.secondary-page .section-header {
   margin: 0 auto calc(var(--space-xl) + 0.5rem);
}

body.secondary-page .resource-search,
body.secondary-page .resource-filters {
   justify-content: center;
}

body.secondary-page .resource-search-wrap {
   max-width: 560px;
   margin: 0 auto;
}

body.secondary-page .resource-search {
   margin-bottom: var(--space-xl);
}

body.secondary-page .resource-grid,
body.secondary-page .community-grid,
body.secondary-page .give-grid,
body.secondary-page .give-impact-grid {
   gap: 1.5rem;
}

body.secondary-page .resource-card,
body.secondary-page .community-card,
body.secondary-page .give-tier,
body.secondary-page .give-impact-card,
body.secondary-page .testimonial-card {
   box-shadow: var(--glass-shadow);
}

body.secondary-page .resource-card:hover,
body.secondary-page .community-card:hover,
body.secondary-page .give-tier:hover,
body.secondary-page .give-impact-card:hover,
body.secondary-page .testimonial-card:hover {
   transform: translateY(-6px);
   box-shadow: var(--shadow-lg);
}

@media (max-width: 768px) {
   body.secondary-page .page-hero {
      padding: var(--space-3xl) 0 var(--space-xl);
   }

   body.secondary-page .resources-section,
   body.secondary-page .community-section,
   body.secondary-page .give-section,
   body.secondary-page .give-impact-section,
   body.secondary-page .testimonials-section,
   body.secondary-page .cta-banner {
      padding-top: var(--space-2xl);
      padding-bottom: var(--space-2xl);
   }

   body.secondary-page .testimonials-section {
      padding-bottom: calc(var(--space-2xl) + 0.5rem);
   }

   body.secondary-page .section-header {
      margin-bottom: var(--space-xl);
   }
}
