.contact-page{width:min(1280px,100%);padding:0 24px calc(96px + env(safe-area-inset-bottom));margin:0 auto}.contact-hero{place-items:center;min-height:min(680px,100dvh - 72px);padding:96px 0;display:grid}.contact-hero-copy{text-align:center;width:100%;max-width:700px;margin:0 auto}.contact-kicker{color:var(--accent);font-family:var(--font-sans);letter-spacing:.08em;text-transform:uppercase;margin:0 0 16px;font-size:13px;font-weight:500}.contact-hero h1,.contact-section-heading h2,.contact-form-intro h2{color:var(--text-primary);font-family:var(--font-sans);letter-spacing:-.02em;margin:0;font-weight:700}.contact-page h1,.contact-page h2,.contact-page h3{text-align:center}.contact-hero h1{font-size:56px;line-height:1.08}.contact-hero-subtitle{max-width:620px;color:var(--text-secondary);margin:24px auto 0;font-size:18px;line-height:1.7}.contact-hero-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:32px;display:flex}.contact-primary-cta,.contact-secondary-cta,.contact-submit,.contact-copy-button{min-height:48px;font-family:var(--font-sans);letter-spacing:.01em;cursor:pointer;border-radius:12px;justify-content:center;align-items:center;padding:12px 28px;font-size:16px;font-weight:600;text-decoration:none;transition:background-color .22s ease-out,border-color .22s ease-out,box-shadow .22s ease-out,color .22s ease-out,transform .22s ease-out;display:inline-flex}.contact-primary-cta,.contact-submit{border:1px solid var(--accent);background:var(--accent);color:var(--bg-primary)}.contact-primary-cta:hover,.contact-submit:hover{background:var(--accent-hover);box-shadow:0 0 24px #06b6d459}.contact-secondary-cta,.contact-copy-button{color:var(--text-primary);background:0 0;border:1px solid #ffffff1f}.contact-secondary-cta:hover,.contact-copy-button:hover{border-color:var(--accent);background:#ffffff0a}.contact-primary-cta:focus-visible,.contact-secondary-cta:focus-visible,.contact-submit:focus-visible,.contact-copy-button:focus-visible,.contact-detail-link:focus-visible,.contact-form a:focus-visible,.contact-form input:focus-visible,.contact-form select:focus-visible,.contact-form textarea:focus-visible{box-shadow:var(--focus-ring);outline:none}.contact-trust-line{color:var(--text-secondary);margin:20px 0 0;font-size:16px}.contact-details,.contact-workflow,.contact-form-section{border-top:1px solid var(--border);padding:96px 0}.contact-details{grid-template-columns:55% 45%;gap:32px;display:grid}.contact-section-heading{margin-bottom:32px}.contact-section-heading h2,.contact-form-intro h2{font-size:32px;line-height:1.2}.contact-details-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.contact-detail-card,.contact-form{border:1px solid var(--border);background:var(--bg-surface);border-radius:20px}.contact-detail-card{text-align:center;min-width:0;padding:24px}.contact-detail-card h3{color:var(--text-primary);margin:0 0 12px;font-size:20px;font-weight:600}.contact-detail-card p{color:var(--text-secondary);margin:8px 0 0;font-size:16px;line-height:1.7}.contact-detail-link{color:var(--accent-hover);overflow-wrap:anywhere;font-size:16px}.contact-copy-button{min-height:44px;margin-top:20px;padding:10px 14px}.workflow-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:0;padding:0;list-style:none;display:grid}.workflow-steps li{min-width:0;color:var(--text-primary);align-items:center;gap:14px;font-size:16px;animation:.3s ease-out both contact-reveal;display:flex}.workflow-steps li:nth-child(2){animation-delay:60ms}.workflow-steps li:nth-child(3){animation-delay:.12s}.workflow-steps span{background:var(--accent);width:44px;height:44px;color:var(--bg-primary);border-radius:50%;flex:0 0 44px;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.contact-form-section{grid-template-columns:55% 45%;align-items:start;gap:32px;display:grid}.contact-form-intro{max-width:560px}.contact-form-intro>p:not(.contact-kicker){color:var(--text-secondary);font-size:18px;line-height:1.7}.contact-reassurance{border-left:3px solid var(--accent);color:var(--text-secondary);gap:6px;margin-top:24px;padding-left:16px;font-size:15px;line-height:1.6;display:grid}.contact-reassurance strong{color:var(--text-primary)}.contact-form{box-shadow:var(--card-shadow);gap:18px;padding:40px;animation:.3s ease-out both contact-reveal;display:grid;position:relative}.contact-form:before{background:linear-gradient(90deg, var(--accent), var(--accent-indigo));content:"";height:1px;position:absolute;top:-1px;left:24px;right:24px}.contact-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.contact-form label{min-width:0;color:var(--text-primary);gap:8px;font-size:14px;font-weight:500;display:grid}.contact-form input:not([type=checkbox]):not([type=file]),.contact-form select,.contact-form textarea{border:1px solid var(--border);background:var(--bg-surface);width:100%;min-height:52px;color:var(--text-primary);font:inherit;border-radius:12px;padding:0 16px;font-size:16px;font-weight:400;transition:border-color .22s ease-out,box-shadow .22s ease-out,background-color .22s ease-out}.contact-form select{background-color:var(--bg-surface)}.contact-form textarea{resize:vertical;min-height:140px;padding-top:14px}.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--text-secondary)}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--accent);box-shadow:var(--focus-ring);outline:none}.contact-optional{color:var(--text-muted);font-weight:400}.contact-consent{grid-template-columns:auto 1fr;align-items:flex-start;line-height:1.5;color:var(--text-secondary)!important;gap:10px!important;font-size:14px!important;font-weight:400!important;display:flex!important}.contact-consent input{width:20px;height:20px;accent-color:var(--accent);flex:0 0 20px;margin-top:2px}.contact-consent a{color:var(--accent-hover);text-decoration:underline}.contact-honeypot{opacity:0;width:1px;height:1px;position:absolute;left:-10000px}.contact-submit{width:100%}.contact-submit:disabled{cursor:wait;opacity:.65}.contact-form-status{min-height:24px;color:var(--text-muted);margin:0;font-size:13px}.contact-form-status-success{color:var(--success)}.contact-form-status-error{color:var(--error)}.contact-form-success{text-align:center;place-content:center;gap:12px;min-height:420px;animation:.3s ease-out both contact-reveal;display:grid}.contact-success-mark{border:1px solid var(--success);width:56px;height:56px;color:var(--success);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 8px;font-size:28px;display:inline-flex}.contact-form-success h3{color:var(--text-primary);margin:0;font-size:20px;font-weight:600}.contact-form-success p{color:var(--text-secondary);margin:0;font-size:16px}.quick-chat-toggle{z-index:810;right:max(24px, env(safe-area-inset-right));bottom:calc(88px + env(safe-area-inset-bottom));border:1px solid var(--accent);background:var(--accent);min-height:48px;color:var(--bg-primary);font:inherit;cursor:pointer;box-shadow:var(--card-shadow);border-radius:999px;padding:12px 20px;font-weight:600;position:fixed}.quick-chat-toggle:focus-visible,.quick-chat-save:focus-visible,.quick-chat-form input:focus-visible,.quick-chat-form textarea:focus-visible{box-shadow:var(--focus-ring);outline:none}.quick-chat-panel{z-index:810;right:max(24px, env(safe-area-inset-right));bottom:calc(148px + env(safe-area-inset-bottom));border:1px solid var(--border);background:var(--bg-surface);width:min(360px,100vw - 32px);max-height:min(540px,100dvh - 180px);color:var(--text-primary);box-shadow:var(--card-shadow);border-radius:20px;grid-template-rows:auto auto;gap:12px;padding:20px;display:grid;position:fixed;overflow:hidden}.quick-chat-header h2{margin:0;font-size:20px}.quick-chat-header p,.quick-chat-status{color:var(--text-secondary);margin:8px 0 0;font-size:13px;line-height:1.5}.quick-chat-form{gap:8px;display:grid}.quick-chat-form label{color:var(--text-primary);font-size:13px;font-weight:500}.quick-chat-form input,.quick-chat-form textarea{border:1px solid var(--border);background:var(--bg-primary);width:100%;color:var(--text-primary);font:inherit;border-radius:12px;padding:10px 12px;font-size:14px}.quick-chat-form input{min-height:42px}.quick-chat-form textarea{resize:vertical;min-height:76px}.quick-chat-form input:focus,.quick-chat-form textarea:focus{border-color:var(--accent);outline:none}.quick-chat-form textarea::placeholder{color:var(--text-secondary)}.quick-chat-save{background:var(--accent);min-height:42px;color:var(--bg-primary);font:inherit;cursor:pointer;border:0;border-radius:10px;padding:10px 14px;font-weight:600}.quick-chat-status{min-height:20px;margin:0}.quick-chat-status-success{color:var(--success)}.quick-chat-status-error{color:var(--error)}.quick-chat-save:disabled{cursor:wait;opacity:.65}.quick-chat-honeypot{opacity:0;width:1px;height:1px;position:absolute;left:-10000px}@keyframes contact-reveal{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.workflow-steps,.contact-form{animation:none}.contact-primary-cta,.contact-secondary-cta,.contact-submit,.contact-copy-button{transition:none}}@media (max-width:900px){.contact-details,.contact-form-section{grid-template-columns:1fr}.contact-form-intro{max-width:none}}@media (max-width:700px){.contact-page{padding:0 16px calc(112px + env(safe-area-inset-bottom))}.contact-hero{min-height:calc(100dvh - 64px);padding:64px 0}.contact-hero-copy{width:100%}.contact-hero h1{font-size:34px}.contact-hero-subtitle{font-size:16px}.contact-hero-actions,.contact-details-grid,.workflow-steps,.contact-form-grid{grid-template-columns:1fr}.contact-hero-actions{display:grid}.contact-primary-cta,.contact-secondary-cta{width:100%}.contact-details,.contact-workflow,.contact-form-section{padding:64px 0}.contact-section-heading h2,.contact-form-intro h2{font-size:24px}.contact-form{border-radius:20px;padding:24px}.contact-form input:not([type=checkbox]):not([type=file]),.contact-form select,.contact-form textarea{font-size:16px}.quick-chat-toggle{right:max(16px, env(safe-area-inset-right))}.quick-chat-panel{right:max(16px, env(safe-area-inset-right));width:min(360px,100vw - 32px)}}
