main .overline{display:block;text-align:center}main .section-divider{margin-left:auto;margin-right:auto}.contact-header{text-align:center}.contact-header h1{margin-bottom:var(--space-lg)}.section-header{text-align:center}.contact-hero{min-height:40vh;display:flex;align-items:center;justify-content:center;padding:var(--space-section);position:relative;background:linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 50%,var(--bg-primary) 100%);border-bottom:1px solid var(--border)}.contact-hero-content{max-width:700px;text-align:center}.contact-hero h1{font-size:var(--text-2xl);font-family:var(--font-display);color:var(--text-primary);font-weight:700;line-height:1.2;margin:0 0 var(--space-lg) 0}.contact-hero p{font-size:var(--text-base);color:var(--text-secondary);line-height:1.6;margin:0}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3xl);max-width:1200px;margin:0 auto;padding:var(--space-section) var(--space-lg)}.calendly-container{min-height:700px;border:1px solid var(--border);background:var(--bg-card)}.contact-right{display:flex;flex-direction:column}.contact-form-section{padding:var(--space-2xl);background:var(--bg-card);border:1px solid var(--border)}.contact-form-section h2{font-family:var(--font-display);font-size:var(--text-xl);color:var(--text-primary);margin:0 0 var(--space-lg) 0}.contact-form{display:flex;flex-direction:column;gap:var(--space-lg)}.form-group{display:flex;flex-direction:column;gap:var(--space-sm)}.form-group label{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em}.form-group input,.form-group textarea{background:var(--bg-primary);border:1px solid var(--border);padding:var(--space-md) var(--space-lg);font-family:var(--font-body);font-size:var(--text-base);color:var(--text-primary);transition:border-color .2s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--accent)}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-muted)}.form-group textarea{resize:vertical;min-height:120px;line-height:1.6}.form-submit{margin-top:var(--space-md)}.contact-info{margin-top:var(--space-2xl)}.contact-info h3{font-family:var(--font-display);font-size:var(--text-lg);color:var(--text-primary);margin:0 0 var(--space-xl) 0}.contact-method{display:flex;gap:var(--space-md);align-items:flex-start;padding:var(--space-md) 0;border-bottom:1px solid var(--border)}.contact-method:last-child{border-bottom:none}.contact-method-label{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;min-width:80px;flex-shrink:0;padding-top:2px}.contact-method-value{color:var(--text-secondary);font-family:var(--font-body);font-size:var(--text-base);word-break:normal}.contact-method-value a{color:var(--accent);text-decoration:none;transition:color .2s ease}.contact-method-value a:hover{color:var(--accent-hover)}@media(max-width:768px){.contact-grid{grid-template-columns:1fr;gap:var(--space-2xl)}.calendly-container{min-height:500px}.calendly-container .calendly-inline-widget{min-width:100%!important}.contact-form-section{padding:var(--space-xl)}}@media(max-width:480px){.contact-form-section{padding:var(--space-lg)}}.expect-section{max-width:700px;margin:0 auto;padding:var(--space-section) var(--space-lg);border-top:1px solid var(--border);border-bottom:1px solid var(--border);text-align:center}.expect-section h2{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--text-primary);margin-bottom:var(--space-xl)}.expect-section>p{font-size:var(--text-base);color:var(--text-secondary);line-height:1.6;margin-bottom:var(--space-2xl)}.expect-steps{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2xl);margin-top:var(--space-2xl);text-align:left}.expect-step{padding:var(--space-lg);background:var(--bg-card);border:1px solid var(--border)}.expect-step-number{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--space-md)}.expect-step h3{font-family:var(--font-display);font-size:var(--text-lg);color:var(--text-primary);margin:0 0 var(--space-md) 0}.expect-step p{font-size:var(--text-base);color:var(--text-secondary);line-height:1.6;margin:0}@media(max-width:768px){.expect-steps{grid-template-columns:1fr}.expect-section{text-align:center}.expect-step{text-align:left}}.contact-fallback{max-width:700px;margin:0 auto;padding:var(--space-section) var(--space-lg);text-align:center}.contact-fallback h2{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--text-primary);margin-bottom:var(--space-lg)}.contact-fallback p{font-size:var(--text-base);color:var(--text-secondary);line-height:1.6;margin-bottom:var(--space-2xl)}.form-success{background:var(--bg-card);border:1px solid var(--border);padding:var(--space-2xl);text-align:center;margin-bottom:var(--space-2xl);display:none}.form-success.show{display:block}.form-success h3{font-family:var(--font-display);font-size:var(--text-lg);color:var(--accent);margin:0 0 var(--space-md) 0}.form-success p{font-size:var(--text-base);color:var(--text-secondary);margin:0;line-height:1.6}.form-honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.form-status{margin-top:var(--space-md);font-size:var(--text-sm);color:var(--text-muted)}.form-group input.valid,.form-group textarea.valid{border-color:var(--success)}.form-group input.invalid,.form-group textarea.invalid{border-color:var(--error)}.form-hint{font-family:var(--font-mono);font-size:var(--text-xs);margin-top:4px;opacity:0;transform:translateY(-4px);transition:opacity var(--transition-fast),transform var(--transition-fast)}.form-hint.visible{opacity:1;transform:translateY(0)}.form-hint.error{color:var(--error)}.btn-submit{position:relative;overflow:hidden;transition:background-color var(--transition-base),border-color var(--transition-base),color var(--transition-base),transform .1s var(--ease-standard);min-width:160px}.btn-submit .btn-label,.btn-submit .btn-spinner,.btn-submit .btn-check{transition:opacity var(--transition-fast),transform var(--transition-fast)}.btn-submit .btn-spinner,.btn-submit .btn-check{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);opacity:0;pointer-events:none}.btn-submit.sending .btn-label{opacity:0;transform:translateY(8px)}.btn-submit.sending .btn-spinner{opacity:1}.btn-submit.sending{pointer-events:none}.btn-submit.sent .btn-label{opacity:0;transform:translateY(8px)}.btn-submit.sent .btn-check{opacity:1}.btn-submit.sent{background-color:var(--success);border-color:var(--success);pointer-events:none}@keyframes spin{to{transform:translate(-50%,-50%) rotate(360deg)}}.btn-spinner svg{animation:spin .8s linear infinite}.contact-form-section form{transition:opacity var(--transition-slow),transform var(--transition-slow)}.contact-form-section form.fade-out{opacity:0;transform:translateY(-8px);pointer-events:none}.form-confirmation{display:none;text-align:center;padding:var(--space-2xl) 0;opacity:0;transform:translateY(8px);transition:opacity var(--transition-slow),transform var(--transition-slow)}.form-confirmation.visible{display:block;opacity:1;transform:translateY(0)}.form-confirmation .confirm-icon{width:48px;height:48px;margin:0 auto var(--space-lg);color:var(--success)}.form-confirmation h3{font-family:var(--font-display);font-size:var(--text-lg);color:var(--text-primary);margin:0 0 var(--space-md) 0}.form-confirmation p{font-size:var(--text-base);color:var(--text-secondary);line-height:1.6;margin:0}.form-status.error a{color:inherit;text-decoration:underline;text-underline-offset:2px}.form-status.error a:hover{opacity:.8}.form-offline-notice{display:none;padding:var(--space-md) var(--space-lg);background-color:#c9a85c1a;border:1px solid var(--warning);color:var(--warning);font-family:var(--font-mono);font-size:var(--text-xs);text-align:center;margin-bottom:var(--space-lg)}.form-offline-notice.visible{display:block}@media(prefers-reduced-motion:reduce){.form-hint,.btn-submit .btn-label,.btn-submit .btn-spinner,.btn-submit .btn-check,.contact-form-section form,.form-confirmation{transition:none}.btn-spinner svg{animation:none}}
