.contact-page{position:relative;max-width:80rem;margin:0 auto;padding:0 1rem 4rem}.contact-hero{position:relative;text-align:center;padding:5rem 1rem}.contact-hero-bg{inset:0;z-index:0}.contact-hero-bg,.contact-hero-orb{position:absolute;pointer-events:none}.contact-hero-orb{border-radius:50%}.contact-hero-orb--1{width:500px;height:500px;top:-60px;left:-40px;background:#0284c773;filter:blur(90px);animation:ch-orb1 9s ease-in-out infinite alternate}.contact-hero-orb--2{width:420px;height:420px;top:-30px;right:-40px;background:#8b5cf673;filter:blur(90px);animation:ch-orb2 11s ease-in-out infinite alternate;animation-delay:-3s}.contact-hero-orb--3{width:340px;height:340px;bottom:-40px;left:35%;background:#6366f159;filter:blur(80px);animation:ch-orb3 14s ease-in-out infinite alternate;animation-delay:-6s}@keyframes ch-orb1{0%{transform:translate(0) scale(1)}to{transform:translate(30px,-20px) scale(1.12)}}@keyframes ch-orb2{0%{transform:translate(0) scale(1.05)}to{transform:translate(-25px,18px) scale(1)}}@keyframes ch-orb3{0%{transform:translate(0) scale(1)}to{transform:translate(18px,-14px) scale(1.08)}}.contact-hero-grid{position:absolute;inset:0;background-image:radial-gradient(circle,var(--border) 1px,#0000 1px);background-size:28px 28px;opacity:.5;mask-image:radial-gradient(ellipse 70% 70% at 50% 40%,#000 20%,#0000 100%);-webkit-mask-image:radial-gradient(ellipse 70% 70% at 50% 40%,#000 20%,#0000 100%);pointer-events:none;z-index:1}.contact-hero-content{position:relative;z-index:3;display:flex;flex-direction:column;align-items:center;gap:1.25rem}.contact-hero-eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--accent);letter-spacing:.1em;text-transform:uppercase;background:color-mix(in srgb,var(--accent) 10%,#0000);border:1px solid color-mix(in srgb,var(--accent) 22%,#0000);padding:.3rem .9rem;border-radius:var(--radius-full)}.contact-hero-eyebrow-dot{width:6px;height:6px;border-radius:50%;background:#22c55e;flex-shrink:0;animation:contact-dot-pulse 2.5s ease-in-out infinite}@keyframes contact-dot-pulse{0%,to{opacity:1;box-shadow:0 0 0 0 #22c55e66}50%{opacity:.7;box-shadow:0 0 0 5px #22c55e00}}.contact-hero-title{font-size:clamp(2.4rem,6vw,4.25rem);font-weight:800;line-height:1.08;letter-spacing:-.03em;color:var(--text-primary);margin:0;perspective:800px}.contact-hero-word{display:inline-block;margin-right:.22em}.contact-hero-word:last-child{margin-right:0}.contact-hero-accent{background:linear-gradient(130deg,var(--accent) 0,#8b5cf6 60%,#a78bfa 100%);-webkit-background-clip:text;-webkit-text-fill-color:#0000;background-clip:text}.contact-hero-sub{font-size:var(--text-lg);color:var(--text-secondary);line-height:1.6;margin:0;max-width:420px}.contact-modal-wrapper .contact-hero{display:none}.contact-modal-wrapper .contact-page{padding:2rem 1.5rem}.contact-inner{display:grid;grid-template-columns:1fr 1.4fr;gap:4rem;align-items:start}@media(max-width:640px){.contact-inner{grid-template-columns:1fr;gap:2.5rem}}.contact-availability{display:inline-flex;align-items:center;gap:.5rem;font-size:var(--text-xs);color:var(--text-secondary);padding:.3rem .75rem;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-full);margin-bottom:1.25rem}.availability-dot{width:7px;height:7px;border-radius:50%;background:#22c55e;flex-shrink:0;animation:pulse-dot 2.5s ease-in-out infinite}@keyframes pulse-dot{0%,to{opacity:1;box-shadow:0 0 0 0 #22c55e73}50%{opacity:.75;box-shadow:0 0 0 5px #22c55e00}}.contact-title{font-size:var(--text-3xl);font-weight:var(--font-bold);margin:0 0 .75rem;background:linear-gradient(135deg,var(--text-primary) 50%,var(--accent));-webkit-background-clip:text;-webkit-text-fill-color:#0000;background-clip:text}.contact-subtitle{font-size:var(--text-base);color:var(--text-secondary);line-height:var(--leading-relaxed);margin:0 0 2rem}.contact-email-label{font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:.4rem}.contact-email-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--text-sm);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast);margin-bottom:1.75rem}.contact-email-btn:hover{background:var(--border)}.contact-email-btn.is-copied{border-color:var(--accent);color:var(--accent)}.contact-email-btn i{font-size:.9rem;flex-shrink:0}.contact-social{display:flex;gap:.5rem}.contact-social-link{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:var(--radius-full);background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-primary);font-size:1rem;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.contact-social-link:hover{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.contact-form-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:2rem;box-shadow:0 2px 20px #0000000f,0 1px 4px #0000000a;will-change:transform;transition:box-shadow var(--transition-base)}.contact-form-card:hover{box-shadow:0 8px 40px #0000001a,0 2px 8px #0000000f}.contact-form{gap:1.25rem}.contact-form,.form-group{display:flex;flex-direction:column}.form-group{gap:.4rem}.form-label{font-weight:var(--font-medium)}.form-input,.form-label,.form-textarea{font-size:var(--text-sm);color:var(--text-primary)}.form-input,.form-textarea{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);padding:.6rem .85rem;width:100%;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);font-family:inherit}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-muted)}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #0284c721}.form-textarea{resize:vertical;min-height:160px}.contact-honeypot{position:absolute;opacity:0;pointer-events:none;height:0}.contact-submit{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:.65rem 1.5rem;background:var(--accent);color:var(--accent-text);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--font-semibold);border:none;cursor:pointer;align-self:flex-start;transition:opacity var(--transition-fast)}.contact-submit:hover:not(:disabled){opacity:.9}.contact-submit:disabled{opacity:.6;cursor:not-allowed}.contact-submit:hover:not(:disabled) .submit-shimmer{animation:shimmer .65s ease forwards}.submit-shimmer{position:absolute;inset:0;background:linear-gradient(105deg,#0000 30%,#ffffff40 50%,#0000 70%);transform:translateX(-100%);pointer-events:none}@keyframes shimmer{to{transform:translateX(200%)}}@keyframes spin{to{transform:rotate(1turn)}}.contact-spinner{display:inline-block;animation:spin .8s linear infinite}.contact-modal-overlay{position:fixed;inset:0;z-index:50;background:#0009;display:flex;align-items:center;justify-content:center;padding:1rem}.contact-faq{padding:3.5rem 0 1rem}.contact-faq-heading{font-size:var(--text-xl);font-weight:var(--font-bold);color:var(--text-primary);margin:0 0 1.75rem;text-align:center}.contact-faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}@media(max-width:640px){.contact-faq-grid{grid-template-columns:1fr}}.contact-faq-item{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.4rem 1.6rem;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.contact-faq-item:hover{border-color:color-mix(in srgb,var(--accent) 30%,#0000);box-shadow:0 4px 20px #0000000f}.contact-faq-item h3{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary);margin:0 0 .45rem}.contact-faq-item p{font-size:var(--text-sm);color:var(--text-secondary);line-height:var(--leading-relaxed);margin:0}.contact-modal-wrapper{width:100%;max-width:480px;max-height:90vh;overflow-y:auto;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:2rem}.contact-modal-wrapper .contact-page{padding:0}.contact-modal-wrapper .contact-inner{grid-template-columns:1fr;gap:1.5rem}