@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); }