/** * ═══════════════════════════════════════════════════════ * BLACKROAD OS — OFFICIAL DESIGN SYSTEM * ═══════════════════════════════════════════════════════ * * ⚠️ IMPORTANT: THIS IS THE ONLY APPROVED DESIGN SYSTEM * * DO NOT CREATE DESIGNS OUTSIDE OF THIS SYSTEM. * ALL CLOUDFLARE PROJECTS MUST USE THESE EXACT VALUES. * * Brand Colors, Spacing, Typography, Animations * Source: blackroad-template-01-homepage.html * * ═══════════════════════════════════════════════════════ */ :root { /* ========== BRAND COLORS (OFFICIAL) ========== */ --black: #000000; --deep-black: #0A0A0A; --charcoal: #1A1A1A; --white: #FFFFFF; --sunrise-orange: #FF9D00; --warm-orange: #FF6B00; --hot-pink: #FF0066; --electric-magenta: #FF006B; --deep-magenta: #D600AA; --vivid-purple: #7700FF; --cyber-blue: #0066FF; /* ========== BRAND GRADIENTS ========== */ --gradient-br: linear-gradient(180deg, var(--sunrise-orange) 0%, var(--warm-orange) 25%, var(--hot-pink) 75%, var(--electric-magenta) 100% ); --gradient-os: linear-gradient(180deg, var(--electric-magenta) 0%, var(--deep-magenta) 25%, var(--vivid-purple) 75%, var(--cyber-blue) 100% ); --gradient-full: linear-gradient(180deg, var(--sunrise-orange) 0%, var(--warm-orange) 14%, var(--hot-pink) 28%, var(--electric-magenta) 42%, var(--deep-magenta) 57%, var(--vivid-purple) 71%, var(--cyber-blue) 100% ); --gradient-brand: var(--gradient-full); /* ========== GOLDEN RATIO SPACING ========== */ --phi: 1.618; --space-xs: 8px; --space-sm: 13px; --space-md: 21px; --space-lg: 34px; --space-xl: 55px; --space-2xl: 89px; --space-3xl: 144px; /* ========== ANIMATIONS ========== */ --ease: cubic-bezier(0.25, 0.1, 0.25, 1); --ease-out: cubic-bezier(0, 0, 0.2, 1); --ease-spring: cubic-bezier(0.175, 0.885, 0.32, 1.275); } /* ========== RESET ========== */ * { margin: 0; padding: 0; box-sizing: border-box; } html { scroll-behavior: smooth; } body { font-family: 'JetBrains Mono', 'SF Mono', 'Fira Code', 'Courier New', monospace; background: var(--deep-black); color: var(--white); overflow-x: hidden; line-height: 1.618; -webkit-font-smoothing: antialiased; } /* ========== TYPOGRAPHY ========== */ h1, h2, h3, h4, h5, h6 { font-weight: 600; line-height: 1.2; } h1 { font-size: calc(2.5rem * var(--phi)); } h2 { font-size: calc(2rem * var(--phi)); } h3 { font-size: calc(1.5rem * var(--phi)); } h4 { font-size: calc(1.25rem * var(--phi)); } h5 { font-size: calc(1rem * var(--phi)); } h6 { font-size: 1rem; } /* ========== BUTTONS ========== */ .btn { padding: var(--space-sm) var(--space-lg); border-radius: var(--space-xs); border: none; font-weight: 600; cursor: pointer; transition: all 0.3s var(--ease); } .btn-primary { background: var(--gradient-brand); color: var(--white); } .btn-primary:hover { transform: translateY(-2px); box-shadow: 0 10px 25px rgba(255, 157, 0, 0.3); } .btn-secondary { background: transparent; color: var(--white); border: 2px solid var(--white); } .btn-secondary:hover { background: var(--white); color: var(--black); } /* ========== CARDS ========== */ .card { background: rgba(255, 255, 255, 0.05); backdrop-filter: blur(10px); border-radius: var(--space-md); padding: var(--space-xl); border: 1px solid rgba(255, 255, 255, 0.1); } /* ========== NAVIGATION ========== */ nav { position: fixed; top: 0; left: 0; right: 0; z-index: 1000; padding: var(--space-md) var(--space-xl); display: flex; justify-content: space-between; align-items: center; background: rgba(0, 0, 0, 0.85); backdrop-filter: saturate(180%) blur(20px); } /* ========== SCROLL PROGRESS ========== */ .scroll-progress { position: fixed; top: 0; left: 0; height: 2px; background: var(--gradient-brand); z-index: 9999; width: 0%; } /* ========== GRADIENTS ========== */ .gradient-text { background: var(--gradient-brand); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; } .gradient-border { position: relative; background: var(--black); } .gradient-border::before { content: ''; position: absolute; inset: 0; border-radius: inherit; padding: 2px; background: var(--gradient-brand); -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0); -webkit-mask-composite: xor; mask-composite: exclude; } /* ========== ANIMATIONS ========== */ @keyframes fadeIn { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } } @keyframes slideInLeft { from { opacity: 0; transform: translateX(-30px); } to { opacity: 1; transform: translateX(0); } } @keyframes slideInRight { from { opacity: 0; transform: translateX(30px); } to { opacity: 1; transform: translateX(0); } } @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } } @keyframes float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-10px); } } /* ========== UTILITY CLASSES ========== */ .container { max-width: 1200px; margin: 0 auto; padding: 0 var(--space-xl); } .text-center { text-align: center; } .text-left { text-align: left; } .text-right { text-align: right; } .mt-xs { margin-top: var(--space-xs); } .mt-sm { margin-top: var(--space-sm); } .mt-md { margin-top: var(--space-md); } .mt-lg { margin-top: var(--space-lg); } .mt-xl { margin-top: var(--space-xl); } .mb-xs { margin-bottom: var(--space-xs); } .mb-sm { margin-bottom: var(--space-sm); } .mb-md { margin-bottom: var(--space-md); } .mb-lg { margin-bottom: var(--space-lg); } .mb-xl { margin-bottom: var(--space-xl); } .flex { display: flex; } .flex-col { flex-direction: column; } .items-center { align-items: center; } .justify-center { justify-content: center; } .justify-between { justify-content: space-between; } .gap-xs { gap: var(--space-xs); } .gap-sm { gap: var(--space-sm); } .gap-md { gap: var(--space-md); } .gap-lg { gap: var(--space-lg); } /* ========== RESPONSIVE ========== */ @media (max-width: 768px) { h1 { font-size: calc(1.5rem * var(--phi)); } h2 { font-size: calc(1.25rem * var(--phi)); } h3 { font-size: calc(1rem * var(--phi)); } .container { padding: 0 var(--space-md); } }