/* css/landing.css */ :root { --bg: #eef3f8; --text: #0f172a; --muted: #5b6b82; --accent: #165dff; --accent-2: #0ea5e9; --accent-soft: #eaf1ff; --shadow-soft: 0 12px 36px rgba(15, 23, 42, .06); --shadow-hover: 0 24px 48px rgba(22, 93, 255, .15); --radius-lg: 24px; --font: 'Inter', sans-serif; --font-head: 'Space Grotesk', sans-serif; } * { box-sizing: border-box; } body { margin: 0; font-family: var(--font); color: var(--text); background: radial-gradient(circle at 10% 20%, rgba(22, 93, 255, 0.15) 0%, transparent 40%), radial-gradient(circle at 90% 80%, rgba(14, 165, 233, 0.12) 0%, transparent 40%), linear-gradient(135deg, #f8fbff 0%, var(--bg) 100%); min-height: 100vh; display: flex; flex-direction: column; } /* Navbar */ .landing-header { padding: 24px 48px; display: flex; justify-content: space-between; align-items: center; background: rgba(255, 255, 255, 0.6); backdrop-filter: blur(12px); border-bottom: 1px solid rgba(255, 255, 255, 0.8); position: sticky; top: 0; z-index: 10; } .brand { text-decoration: none; display: flex; flex-direction: column; } .brand-title { font-family: var(--font-head); font-weight: 700; font-size: 22px; color: var(--text); letter-spacing: -0.04em; background: linear-gradient(90deg, var(--accent), var(--accent-2)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; } .brand-sub { font-size: 13px; color: var(--muted); } /* Hero Section */ .hero { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 60px 24px; text-align: center; position: relative; overflow: hidden; } .hero h1 { font-family: var(--font-head); font-size: 48px; font-weight: 800; letter-spacing: -0.05em; margin: 0 0 16px; max-width: 800px; line-height: 1.1; color: var(--text); } .hero p { font-size: 18px; color: var(--muted); max-width: 600px; margin: 0 0 48px; line-height: 1.6; } /* Grid Menu */ .features-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 24px; width: 100%; max-width: 1100px; padding: 0 24px; } .feature-card { background: rgba(255, 255, 255, 0.9); border: 1px solid rgba(255, 255, 255, 1); border-radius: var(--radius-lg); padding: 32px 24px; text-decoration: none; color: var(--text); transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1); box-shadow: var(--shadow-soft); display: flex; flex-direction: column; align-items: center; text-align: center; position: relative; overflow: hidden; } .feature-card::before { content: ''; position: absolute; inset: 0; background: linear-gradient(135deg, rgba(22,93,255,0.05), rgba(14,165,233,0.02)); opacity: 0; transition: opacity 0.3s ease; } .feature-card:hover { transform: translateY(-8px); box-shadow: var(--shadow-hover); border-color: rgba(22, 93, 255, 0.2); } .feature-card:hover::before { opacity: 1; } .feature-icon { width: 72px; height: 72px; border-radius: 20px; display: flex; align-items: center; justify-content: center; font-size: 32px; margin-bottom: 24px; background: linear-gradient(135deg, var(--accent-soft), #fff); color: var(--accent); box-shadow: 0 8px 16px rgba(22, 93, 255, 0.1); transition: transform 0.3s ease; } .feature-card:hover .feature-icon { transform: scale(1.1) rotate(5deg); } .feature-title { font-family: var(--font-head); font-size: 20px; font-weight: 700; margin: 0 0 12px; position: relative; } .feature-desc { font-size: 14px; color: var(--muted); line-height: 1.5; position: relative; } /* Footer */ .footer { text-align: center; padding: 32px 24px; font-size: 13px; color: var(--muted); border-top: 1px solid rgba(0,0,0,0.05); } @media (max-width: 768px) { .hero h1 { font-size: 36px; } .features-grid { grid-template-columns: 1fr; } }