:root { /* Light Theme */ --light-bg: #ffffff; --light-surface: #f8f9fa; --light-text: #333333; --light-text-secondary: #666666; --light-accent: #1a365d; --light-accent-hover: #2a466d; --light-border: #e0e0e0; /* Dark Theme */ --dark-bg: #030303; --dark-surface: #121212; --dark-text: #f0f0f0; --dark-text-secondary: #b0b0b0; --dark-accent: #00f3ff; --dark-accent-hover: #33f5ff; --dark-border: #2a2a2a; /* Common */ --transition-speed: 0.3s; --container-width: 1200px; --space-xs: 0.5rem; --space-sm: 1rem; --space-md: 2rem; --space-lg: 4rem; } /* Base Styles */ * { margin: 0; padding: 0; box-sizing: border-box; } html { scroll-behavior: smooth; } body { font-family: 'Space Grotesk', sans-serif; line-height: 1.6; transition: background-color var(--transition-speed), color var(--transition-speed); overflow-x: hidden; } /* Theme Styles */ body.light-theme { background-color: var(--light-bg); color: var(--light-text); } body.dark-theme { background-color: var(--dark-bg); color: var(--dark-text); } /* Container */ .container { max-width: var(--container-width); margin: 0 auto; padding: 0 var(--space-sm); } /* Header */ .main-header { position: fixed; top: 0; left: 0; right: 0; z-index: 1000; backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); } .header-content { display: flex; justify-content: space-between; align-items: center; padding: var(--space-sm) 0; } .logo h1 { font-family: 'Orbitron', sans-serif; font-size: 2rem; background: linear-gradient(45deg, var(--dark-accent), #fff); -webkit-background-clip: text; background-clip: text; color: transparent; } /* Theme Toggle */ #theme-toggle { background: none; border: none; cursor: pointer; width: 40px; height: 40px; border-radius: 50%; position: relative; transition: transform var(--transition-speed); } #theme-toggle:hover { transform: scale(1.1); } .theme-toggle-icon { display: block; width: 24px; height: 24px; border-radius: 50%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); } .light-theme .theme-toggle-icon { background: #ffd700; box-shadow: 0 0 15px #ffd700; } .dark-theme .theme-toggle-icon { background: #c6c6c6; box-shadow: 0 0 15px #c6c6c6; } /* Hero Section */ .hero { min-height: 100vh; display: flex; align-items: center; position: relative; padding: var(--space-lg) 0; overflow: hidden; } .hero-title { font-family: 'Orbitron', sans-serif; font-size: clamp(2rem, 5vw, 4rem); margin-bottom: var(--space-md); line-height: 1.2; } .hero-subtitle { font-size: clamp(1.2rem, 2vw, 1.5rem); margin-bottom: var(--space-lg); opacity: 0.9; } /* Stars Background */ .stars-background { position: fixed; top: 0; left: 0; width: 100%; height: 100%; pointer-events: none; z-index: -1; } .dark-theme .stars-background { background: radial-gradient(circle at center, rgba(0, 243, 255, 0.1) 0%, rgba(3, 3, 3, 1) 100%); } .light-theme .stars-background { background: radial-gradient(circle at center, rgba(26, 54, 93, 0.1) 0%, rgba(255, 255, 255, 1) 100%); } /* CTA Button */ .cta-button { display: inline-block; padding: 1rem 2rem; font-family: 'Orbitron', sans-serif; font-size: 1.1rem; text-decoration: none; border-radius: 30px; transition: all var(--transition-speed); position: relative; overflow: hidden; } .dark-theme .cta-button { background: var(--dark-accent); color: var(--dark-bg); box-shadow: 0 0 20px var(--dark-accent); } .light-theme .cta-button { background: var(--light-accent); color: var(--light-bg); box-shadow: 0 0 20px var(--light-accent); } .cta-button:hover { transform: scale(1.05); } /* Services Section */ .services { padding: var(--space-lg) 0; } .services h2 { text-align: center; margin-bottom: var(--space-lg); font-family: 'Orbitron', sans-serif; } .services-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: var(--space-md); padding: var(--space-md) 0; } .service-card { padding: var(--space-md); border-radius: 15px; transition: transform var(--transition-speed); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); } .dark-theme .service-card { background: rgba(255, 255, 255, 0.05); border: 1px solid var(--dark-border); } .light-theme .service-card { background: rgba(26, 54, 93, 0.05); border: 1px solid var(--light-border); } .service-card:hover { transform: translateY(-10px); } .service-icon { width: 60px; height: 60px; margin-bottom: var(--space-sm); } .service-icon svg { width: 100%; height: 100%; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; } .dark-theme .service-icon svg { stroke: var(--dark-accent); } .light-theme .service-icon svg { stroke: var(--light-accent); } /* Contact Section */ .contact { padding: var(--space-lg) 0; } .contact h2 { text-align: center; margin-bottom: var(--space-lg); font-family: 'Orbitron', sans-serif; } .contact-form { max-width: 600px; margin: 0 auto; padding: var(--space-md); border-radius: 15px; } .dark-theme .contact-form { background: rgba(255, 255, 255, 0.05); border: 1px solid var(--dark-border); } .light-theme .contact-form { background: rgba(26, 54, 93, 0.05); border: 1px solid var(--light-border); } .form-group { margin-bottom: var(--space-md); } .form-group label { display: block; margin-bottom: var(--space-xs); } .form-group input, .form-group textarea { width: 100%; padding: var(--space-sm); border-radius: 8px; border: 1px solid; background: transparent; color: inherit; font-family: inherit; transition: border-color var(--transition-speed); } .dark-theme .form-group input, .dark-theme .form-group textarea { border-color: var(--dark-border); } .light-theme .form-group input, .light-theme .form-group textarea { border-color: var(--light-border); } .form-group input:focus, .form-group textarea:focus { outline: none; border-color: currentColor; } .form-group textarea { min-height: 150px; resize: vertical; } .submit-button { display: block; width: 100%; padding: var(--space-sm); border: none; border-radius: 8px; font-family: 'Orbitron', sans-serif; cursor: pointer; transition: all var(--transition-speed); } .dark-theme .submit-button { background: var(--dark-accent); color: var(--dark-bg); } .light-theme .submit-button { background: var(--light-accent); color: var(--light-bg); } .submit-button:hover { transform: scale(1.02); } /* Social Links */ .social-links { display: flex; justify-content: center; gap: var(--space-md); margin-top: var(--space-lg); } .social-icon { width: 30px; height: 30px; transition: transform var(--transition-speed); } .dark-theme .social-icon { fill: var(--dark-text); } .light-theme .social-icon { fill: var(--light-text); } .social-icon:hover { transform: scale(1.2); } /* Footer */ .main-footer { padding: var(--space-md) 0; text-align: center; border-top: 1px solid; } .dark-theme .main-footer { border-color: var(--dark-border); } .light-theme .main-footer { border-color: var(--light-border); } .footer-link { color: inherit; text-decoration: none; margin-left: var(--space-sm); transition: opacity var(--transition-speed); } .footer-link:hover { opacity: 0.8; } /* Responsive Design */ @media (max-width: 768px) { :root { --space-lg: 3rem; --space-md: 1.5rem; } .hero-title { font-size: 2rem; } .hero-subtitle { font-size: 1.1rem; } .services-grid { grid-template-columns: 1fr; } } @media (max-width: 480px) { :root { --space-lg: 2rem; --space-md: 1rem; } .container { padding: 0 var(--space-sm); } .hero-title { font-size: 1.8rem; } .social-links { gap: var(--space-sm); } }