/* * Contact Page Styles */ .contact-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 1.5rem; margin-bottom: 4rem; } .contact-card { background: var(--bg-card); border: 1px solid var(--glass-border); border-radius: 20px; padding: 2rem; backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); transition: all 0.3s ease; position: relative; overflow: hidden; } .contact-card::after { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px; background: linear-gradient(90deg, transparent, var(--accent), transparent); opacity: 0; transition: opacity 0.3s; } .contact-card:hover { border-color: var(--glass-border-hover); transform: translateY(-4px); box-shadow: 0 16px 40px var(--shadow-deep); } .contact-card:hover::after { opacity: 1; } .contact-card-icon { width: 44px; height: 44px; background: linear-gradient(135deg, var(--accent-dark) 0%, var(--accent) 100%); border-radius: 12px; display: flex; align-items: center; justify-content: center; margin-bottom: 1.25rem; box-shadow: 0 4px 12px var(--accent-glow); } .contact-card-icon svg { width: 20px; height: 20px; stroke: #fff; } .contact-card h3 { font-size: 1.1rem; font-weight: 700; color: var(--text); margin-bottom: 0.5rem; } .contact-card p { color: var(--text-muted); font-size: 0.9rem; line-height: 1.65; margin-bottom: 1.25rem; } .contact-card a.contact-email { display: inline-flex; align-items: center; gap: 0.4rem; color: var(--accent); text-decoration: none; font-weight: 600; font-size: 0.9rem; transition: all 0.2s; } .contact-card a.contact-email:hover { color: var(--accent-light); gap: 0.7rem; } .contact-note { background: var(--bg-card); border: 1px solid var(--glass-border); border-left: 3px solid var(--accent); border-radius: 0 12px 12px 0; padding: 1.25rem 1.5rem; color: var(--text-muted); font-size: 0.9rem; line-height: 1.7; } .contact-note strong { color: var(--text-2); } /* Coming soon */ .coming-soon-hero { min-height: 100vh; display: flex; align-items: center; justify-content: center; text-align: center; position: relative; padding: 8rem 2rem 6rem; overflow: hidden; } .coming-soon-content { position: relative; z-index: 1; max-width: 600px; } .coming-soon-badge { display: inline-block; padding: 0.5rem 1.25rem; background: var(--accent-glow-sm); border: 1px solid var(--accent-glow); color: var(--accent-light); font-size: 0.75rem; font-weight: 700; border-radius: 100px; text-transform: uppercase; letter-spacing: 0.1em; margin-bottom: 2rem; } .coming-soon-cta { display: flex; gap: 1rem; justify-content: center; flex-wrap: wrap; margin-top: 2.5rem; }