@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');
:root {
  --apple-white: #f5f5f7;
  --apple-black: #1d1d1f;
  --apple-gray: #86868b;
  --apple-light-gray: #d2d2d7;
  --apple-blue: #0071e3;
  --apple-dark-blue: #0066cc;
  --nyt-serif: 'Imperial', Georgia, serif;
  --nyt-sans: 'Helvetica Neue', Arial, sans-serif;
}

body {
  font-family: var(--nyt-sans);
  background-color: var(--apple-white);
  color: var(--apple-black);
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}
/* Custom scrollbar */
::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

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

::-webkit-scrollbar-thumb {
    background: #888;
    border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
    background: #555;
}
/* Apple-inspired animations */
@keyframes appleFade {
  from { opacity: 0; transform: translateY(20px); }
  to { opacity: 1; transform: translateY(0); }
}

/* NYT-inspired typography */
h1, h2, h3, h4 {
  font-family: var(--nyt-serif);
  font-weight: 300;
}

h1 {
  font-size: 2.5rem;
  letter-spacing: -0.5px;
  line-height: 1.15;
}

/* Apple-style cards */
.apple-card {
  background: white;
  border-radius: 18px;
  box-shadow: 0 4px 20px rgba(0,0,0,0.08);
  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
  border: 1px solid rgba(0,0,0,0.04);
}

.apple-card:hover {
  box-shadow: 0 8px 30px rgba(0,0,0,0.12);
  transform: translateY(-2px);
}

/* NYT-style divider */
.nyt-divider {
  height: 1px;
  background: linear-gradient(to right, transparent, var(--apple-light-gray), transparent);
  margin: 2rem 0;
}
/* Gradient text for headers */
.gradient-text {
    background: linear-gradient(90deg, #3b82f6, #8b5cf6);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

/* Hover effects */
.hover-scale {
    transition: transform 0.2s ease;
}

.hover-scale:hover {
    transform: scale(1.02);
}