* { box-sizing: border-box }
.accent-text, .group:hover .group-hover\:accent-text, .hover\:accent-text:hover { color: var(--accent); transition: color 0.2s ease }
.card-enhanced { -webkit-backdrop-filter: blur(15px); backdrop-filter: blur(15px); background: var(--glass-bg); border-radius: 1.25rem; border: 1px solid var(--border); overflow: hidden; position: relative; transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) }
.card-enhanced::before { background: var(--accent-gradient); content: ""; height: 2px; left: 0; opacity: 0; position: absolute; right: 0; top: 0; transition: opacity 0.3s ease }
.card-enhanced:hover { border-color: var(--accent); box-shadow: var(--shadow-primary), var(--shadow-secondary); transform: translatey(-8px) }
.card-enhanced:hover::before { opacity: 1 }
.cta-button { align-items: center; background: var(--accent-gradient); border-radius: 0.75rem; border: none; color: white; display: inline-flex; font-weight: 700; gap: 0.5rem; overflow: hidden; padding: 1rem 2.5rem; position: relative; text-decoration: none; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); z-index: 1 }
.cta-button::before { background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.25), transparent); content: ""; height: 100%; left: -100%; position: absolute; top: 0; transition: left 0.6s ease; width: 100% }
.cta-button:hover { box-shadow: 0 10px 30px rgba(240, 180, 79, 0.3); transform: translatey(-4px) }
.cta-button:hover::before { left: 100% }
.light-mode { --accent-gradient: linear-gradient(135deg, #F0B44F 0%, #40C0C0 100%); --accent-secondary: #1A7A7A; --accent: #D4861F; --bg-secondary: #F1F7F9; --bg: #F7FAFB; --border: #E1EEF2; --card-bg: #FFF; --card-hover: #F8FCFD; --glass-bg: rgba(255, 255, 255, 0.7); --gradient-mesh: radial-gradient(circle at 20% 30%, rgba(212, 134, 31, 0.02) 0%, transparent 40%), radial-gradient(circle at 80% 70%, rgba(26, 122, 122, 0.03) 0%, transparent 40%), radial-gradient(circle at 40% 80%, rgba(212, 134, 31, 0.015) 0%, transparent 50%); --header-bg: rgba(255, 255, 255, 0.85); --shadow-primary: 0 4px 32px rgba(212, 134, 31, 0.08); --shadow-secondary: 0 8px 64px rgba(26, 122, 122, 0.05); --tag-bg: #E8F8F9; --tag-text: #1A7A7A; --text-muted: #5B7A86; --text-primary: #0A2329; --text-secondary: #2A4853 }
.section-title::after { background: var(--accent-gradient); border-radius: 2px; bottom: 0; content: ""; height: 3px; left: 50%; position: absolute; transform: translatex(-50%); width: 60px }
.stagger-animation { animation-delay: var(--stagger-delay, 0ms); animation: fadeIn 0.8s ease-out forwards; opacity: 0 }
.stats-card { -webkit-backdrop-filter: blur(15px); backdrop-filter: blur(15px); background: var(--glass-bg); border-radius: 1rem; border: 1px solid var(--border); overflow: hidden; padding: 1.5rem; position: relative; text-align: center; transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) }
.stats-card::before { background: var(--accent-gradient); content: ""; height: 2px; left: 0; opacity: 0; position: absolute; right: 0; top: 0; transition: opacity 0.3s ease }
.stats-card:hover { border-color: var(--accent); box-shadow: var(--shadow-primary); transform: translatey(-4px) }
.stats-card:hover::before { opacity: 1 }
.tech-icon { background: var(--glass-bg); border-radius: 1rem; border: 1px solid var(--border); padding: 1rem; position: relative; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) }
.tech-icon:hover i { color: var(--accent); filter: drop-shadow(0 0 15px var(--accent)) }
.tech-icon:hover { border-color: var(--accent); box-shadow: var(--shadow-primary); transform: translatey(-4px) scale(1.05) }
.timeline { padding: 2rem 0; position: relative }
.timeline-content { backdrop-filter: blur(15px); background: var(--glass-bg); border-radius: 1rem; border: 1px solid var(--border); overflow: hidden; padding: 2rem; position: relative; transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) }
.timeline-content::before { background: var(--accent-gradient); content: ""; height: 2px; left: 0; opacity: 0; position: absolute; right: 0; top: 0; transition: opacity 0.3s ease }
.timeline-item { margin-bottom: 3rem; padding: 0 2rem; position: relative; width: 50% }
.timeline-item::after { background: var(--accent-gradient); border-radius: 50%; border: 4px solid var(--bg); box-shadow: 0 0 0 3px var(--border), 0 0 20px rgba(240, 180, 79, 0.4); content: ""; height: 20px; position: absolute; top: 0.25rem; transition: all 0.3s ease; width: 20px; z-index: 2 }
.timeline-item:hover .timeline-content { border-color: var(--accent); box-shadow: var(--shadow-primary), var(--shadow-secondary); transform: translatey(-4px) }
.timeline-item:hover .timeline-content::before { opacity: 1 }
.timeline-item:hover::after { box-shadow: 0 0 0 3px var(--accent), 0 0 30px rgba(240, 180, 79, 0.6); transform: scale(1.3) }
.timeline-item:nth-child(even) { left: 50% }
.timeline-item:nth-child(even)::after { left: -10px }
.timeline-item:nth-child(odd) { left: 0 }
.timeline-item:nth-child(odd)::after { right: -10px }
.timeline::before { background: linear-gradient(to bottom, var(--accent), var(--accent-secondary)); border-radius: 2px; box-shadow: 0 0 10px rgba(240, 180, 79, 0.3); content: ""; height: 100%; left: 50%; position: absolute; top: 0; transform: translatex(-50%); width: 3px }
body { -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; background-image: var(--gradient-mesh); background: var(--bg); color: var(--text-secondary); font-family: "Inter", -apple-system, BlinkMacSystemFont, system-ui, sans-serif; line-height: 1.6; scroll-behavior: smooth; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) }