:root { --color-bg: #ffffff; --color-text: #1a202c; --color-text-muted: #4a5568; --color-primary: #1a202c; --color-accent: #3182ce; --color-border: #e2e8f0; --color-surface: #f7fafc; --font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; --radius: 4px; --spacing-unit: 1rem; } body { font-family: var(--font-family); background-color: var(--color-bg); color: var(--color-text); line-height: 1.6; margin: 0; -webkit-font-smoothing: antialiased; } h1, h2, h3, h4 { font-weight: 700; letter-spacing: -0.02em; margin-bottom: 1rem; color: var(--color-primary); } .container { max-width: 1000px; margin: 0 auto; padding: 0 1.5rem; } /* Header */ header { border-bottom: 1px solid var(--color-border); padding: 1.5rem 0; position: sticky; top: 0; background: rgba(255, 255, 255, 0.95); backdrop-filter: blur(8px); z-index: 100; } .nav-brand { font-weight: 800; font-size: 1.25rem; text-decoration: none; color: var(--color-primary); text-transform: uppercase; letter-spacing: 0.05em; } /* Sections */ section { padding: 4rem 0; border-bottom: 1px solid var(--color-border); } section:last-of-type { border-bottom: none; } .section-title { font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.1em; color: var(--color-accent); margin-bottom: 2rem; display: block; } /* Cards & Components */ .card-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 2rem; } .news-card { border: 1px solid var(--color-border); padding: 1.5rem; border-radius: var(--radius); transition: border-color 0.2s; } .news-card:hover { border-color: var(--color-accent); } .news-date { font-size: 0.875rem; color: var(--color-text-muted); margin-bottom: 0.5rem; } .news-title { font-size: 1.125rem; margin-bottom: 0.5rem; } /* Editorial / Our View */ .editorial { max-width: 700px; } .editorial-meta { display: flex; align-items: center; gap: 1rem; margin-bottom: 1.5rem; font-size: 0.875rem; color: var(--color-text-muted); } .editorial-content { font-size: 1.25rem; font-weight: 400; color: var(--color-text); } /* Activities */ .activity-item { display: flex; align-items: flex-start; gap: 1.5rem; margin-bottom: 2rem; } .activity-icon { width: 48px; height: 48px; background: var(--color-surface); display: flex; align-items: center; justify-content: center; border-radius: var(--radius); flex-shrink: 0; border: 1px solid var(--color-border); } /* Forms */ .form-group { margin-bottom: 1.5rem; } label { display: block; font-size: 0.875rem; font-weight: 600; margin-bottom: 0.5rem; } input[type="email"], input[type="text"] { width: 100%; padding: 0.75rem; border: 1px solid var(--color-border); border-radius: var(--radius); font-family: var(--font-family); font-size: 1rem; } input:focus { outline: none; border-color: var(--color-accent); box-shadow: 0 0 0 3px rgba(49, 130, 206, 0.1); } .btn { display: inline-block; padding: 0.75rem 1.5rem; background: var(--color-primary); color: #fff; border: none; border-radius: var(--radius); font-weight: 600; cursor: pointer; text-decoration: none; font-size: 1rem; transition: background 0.2s; } .btn:hover { background: #000; } .btn-secondary { background: var(--color-surface); color: var(--color-primary); border: 1px solid var(--color-border); } .btn-secondary:hover { background: var(--color-border); } footer { padding: 4rem 0; background: var(--color-surface); border-top: 1px solid var(--color-border); font-size: 0.875rem; color: var(--color-text-muted); } @media (max-width: 768px) { h1 { font-size: 2rem; } .card-grid { grid-template-columns: 1fr; } } /* Toast/Notification */ #notification { position: fixed; bottom: 2rem; right: 2rem; padding: 1rem 1.5rem; background: var(--color-primary); color: #fff; border-radius: var(--radius); display: none; z-index: 1000; box-shadow: 0 4px 12px rgba(0,0,0,0.1); }