@import url("https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;600;700&display=swap"); :root { color: #1c1b1f; background: linear-gradient(160deg, #fdf1e5 0%, #f7f2ec 40%, #eef1ff 100%); font-family: "Space Grotesk", "Trebuchet MS", sans-serif; } * { box-sizing: border-box; } body { margin: 0; min-height: 100vh; } .page { max-width: 1100px; margin: 0 auto; padding: 48px 24px 80px; } .hero { display: flex; flex-direction: column; gap: 16px; padding: 32px; border-radius: 24px; background: rgba(255, 255, 255, 0.8); box-shadow: 0 20px 40px rgba(26, 26, 26, 0.08); } .eyebrow { letter-spacing: 0.2em; text-transform: uppercase; font-size: 12px; font-weight: 700; } h1 { font-size: 40px; margin: 0; } .subtitle { font-size: 18px; margin: 0; max-width: 640px; } .search input { width: 100%; max-width: 520px; padding: 14px 16px; border-radius: 12px; border: 1px solid #dad3ca; font-size: 16px; } .results { margin-top: 48px; } .grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 20px; margin-top: 20px; } .card { background: white; padding: 20px; border-radius: 16px; box-shadow: 0 12px 24px rgba(21, 21, 21, 0.08); display: flex; flex-direction: column; gap: 12px; } .card-header { display: flex; justify-content: space-between; align-items: center; } .rating { background: #ffcc80; padding: 4px 8px; border-radius: 999px; font-weight: 700; } .meta { display: flex; justify-content: space-between; color: #5c5a5f; font-size: 14px; } .error { color: #b00020; } @media (max-width: 600px) { h1 { font-size: 30px; } .hero { padding: 24px; } }