.contact-modal-overlay{background:var(--overlay-heavy);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:2000;justify-content:center;align-items:center;width:100%;height:100%;padding:1rem;animation:.3s contactFadeIn;display:flex;position:fixed;top:0;left:0}@keyframes contactFadeIn{0%{opacity:0}to{opacity:1}}.contact-modal-content{background:linear-gradient(145deg,var(--bg-secondary)0%,var(--bg-primary)100%);border:1px solid var(--border-accent);width:100%;max-width:900px;max-height:90vh;box-shadow:var(--shadow-soft),0 0 0 1px var(--color-brand-subtle);border-radius:20px;animation:.35s cubic-bezier(.16,1,.3,1) contactSlideUp;position:relative;overflow:hidden}@keyframes contactSlideUp{0%{opacity:0;transform:translateY(40px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.contact-modal-close{background:var(--bg-glass);border:1px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;z-index:20;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:all .3s;display:flex;position:absolute;top:1rem;right:1rem}.contact-modal-close:hover{background:var(--color-brand-subtle);border-color:var(--color-brand);color:var(--text-primary);transform:rotate(90deg)}.contact-modal-layout{grid-template-columns:320px 1fr;min-height:500px;display:grid}.contact-info-section{background:linear-gradient(180deg,var(--color-brand-subtle)0%,var(--color-brand-hover)100%);border-right:1px solid var(--border-accent);flex-direction:column;padding:2.5rem 1.75rem;display:flex}.contact-info-header{margin-bottom:2rem}.contact-info-title{color:var(--text-primary);letter-spacing:.02em;margin-bottom:.5rem;font-family:Outfit,sans-serif;font-size:1.5rem;font-weight:600}.contact-info-subtitle{color:var(--text-secondary);font-family:Inter,sans-serif;font-size:.875rem;line-height:1.5}.contact-info-items{flex-direction:column;gap:1.25rem;display:flex}.contact-info-item{align-items:flex-start;gap:.875rem;display:flex}.contact-info-icon{background:var(--color-brand-subtle);border:1px solid var(--border-accent);width:40px;height:40px;color:var(--color-brand);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.contact-info-text{flex-direction:column;gap:.25rem;padding-top:.25rem;display:flex}.contact-info-label{letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary);font-family:Inter,sans-serif;font-size:.7rem;font-weight:600}.contact-info-link,.contact-info-value{color:var(--text-primary);font-family:Inter,sans-serif;font-size:.9rem}.contact-info-link{text-decoration:none;transition:color .3s}.contact-info-link:hover{color:var(--color-brand)}.contact-info-divider{background:linear-gradient(90deg,transparent,var(--border-accent),transparent);height:1px;margin:1.5rem 0}.contact-info-note{margin-top:auto;padding-top:1rem}.contact-info-note p{color:var(--text-secondary);font-family:Inter,sans-serif;font-size:.8rem;font-style:italic;line-height:1.6}.contact-form-section{flex-direction:column;justify-content:center;max-height:90vh;padding:2.5rem;display:flex;overflow-y:auto}.progressive-form-simple{flex-direction:column;gap:2.5rem;display:flex}.reveal-section>.form-group,.reveal-section>.form-row{margin-bottom:1.5rem}.reveal-section>.form-group:last-child,.reveal-section>.form-row:last-child{margin-bottom:0}.form-step-simple{animation:.4s stepFadeIn}@keyframes stepFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.reveal-section{opacity:0;max-height:0;transition:all .5s cubic-bezier(.16,1,.3,1);overflow:hidden}.reveal-section.revealed{opacity:1;max-height:600px}.form-row{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}.form-group{flex-direction:column;gap:0;display:flex}.form-group-full{grid-column:1/-1}.form-label{color:var(--text-secondary);letter-spacing:.02em;margin-bottom:.25rem;font-family:Inter,sans-serif;font-size:.8rem;font-weight:500}.form-input,.form-select,.form-textarea{color:var(--text-primary);background:var(--bg-glass);border:1px solid var(--border-subtle);border-radius:10px;width:100%;padding:1rem 1.125rem;font-family:Inter,sans-serif;font-size:.95rem;transition:all .3s}.form-input::-moz-placeholder{color:var(--text-secondary)}.form-textarea::-moz-placeholder{color:var(--text-secondary)}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-secondary)}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--color-brand);background:var(--color-brand-subtle);outline:none;box-shadow:0 0 0 3px #ff6b001a}.form-input:focus-visible,.form-select:focus-visible,.form-textarea:focus-visible{outline:2px solid var(--color-brand);outline-offset:2px}.form-select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23a0a0a0' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat;padding-right:2.5rem}.form-select option{background:var(--bg-secondary);color:var(--text-primary)}.form-textarea{resize:vertical;min-height:120px;line-height:1.6}.form-btn{letter-spacing:.02em;cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;gap:.5rem;padding:.875rem 1.5rem;font-family:Outfit,sans-serif;font-size:.9rem;font-weight:600;transition:all .3s;display:flex}.form-btn-primary{background:linear-gradient(135deg,var(--color-brand)0%,var(--color-brand-hover)100%);color:var(--text-inverse);box-shadow:0 4px 15px -5px var(--color-brand-subtle);margin-top:.5rem}.form-btn-primary:hover:not(:disabled){box-shadow:0 8px 25px -10px var(--color-brand-subtle);transform:translateY(-2px)}.form-btn-primary:disabled{opacity:.5;cursor:not-allowed}.form-btn-secondary{background:var(--bg-glass);border:1px solid var(--border-subtle);color:var(--text-secondary)}.form-btn-secondary:hover{background:var(--bg-hover);color:var(--text-primary);transform:translate(-2px)}.form-btn-submit{color:#fff;background:linear-gradient(135deg,#22c55e 0%,#16a34a 100%);box-shadow:0 4px 15px -5px #22c55e66}.form-btn-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px -10px #22c55e80}.form-btn-submit:disabled{opacity:.7;cursor:not-allowed}.form-btn-success-close{background:var(--bg-glass);border:1px solid var(--border-subtle);color:var(--text-primary);margin-top:.5rem;padding:.75rem 2rem}.form-btn-success-close:hover{background:var(--bg-hover);border-color:var(--border-subtle);transform:translateY(-2px)}.btn-spinner{border:2px solid var(--border-subtle);border-top-color:var(--text-primary);border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.form-preview-container{animation:.3s stepFadeIn}.preview-header{margin-bottom:1.5rem}.preview-title{color:var(--text-primary);margin-bottom:.375rem;font-family:Outfit,sans-serif;font-size:1.25rem;font-weight:600}.preview-subtitle{color:var(--text-secondary);font-family:Inter,sans-serif;font-size:.875rem}.form-review{background:var(--bg-glass);border:1px solid var(--border-subtle);border-radius:12px;flex-direction:column;gap:1rem;margin-bottom:1.5rem;padding:1.25rem;display:flex}.review-section{border-bottom:1px solid var(--border-subtle);flex-direction:column;gap:.375rem;padding-bottom:.75rem;display:flex}.review-section:last-child{border-bottom:none;padding-bottom:0}.review-label{letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary);font-family:Inter,sans-serif;font-size:.7rem;font-weight:600}.review-value{color:var(--text-primary);font-family:Inter,sans-serif;font-size:.9rem}.review-section-message .review-value{line-height:1.6}.review-message{white-space:pre-wrap;color:var(--text-secondary)}.preview-actions{justify-content:space-between;gap:1rem;display:flex}.contact-success{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:3rem 2rem;animation:.4s stepFadeIn;display:flex}.contact-success-icon{color:#22c55e;background:linear-gradient(135deg,#22c55e26 0%,#22c55e0d 100%);border:2px solid #22c55e4d;border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin-bottom:1.5rem;display:flex}.contact-success-title{color:var(--text-primary);margin-bottom:.5rem;font-family:Outfit,sans-serif;font-size:1.5rem;font-weight:600}.contact-success-message{color:var(--text-secondary);margin-bottom:1.5rem;font-family:Inter,sans-serif;font-size:.95rem;line-height:1.5}@media (max-width:768px){.contact-modal-content{border-radius:16px;max-width:100%;max-height:95vh}.contact-modal-layout{grid-template-columns:1fr;min-height:auto}.contact-info-section{display:none}.contact-form-section{max-height:95vh;padding:1.75rem}.form-row{gap:.875rem}.form-input,.form-select,.form-textarea{padding:.75rem .875rem;font-size:.9rem}.form-textarea{min-height:100px}.form-review{padding:1rem}.preview-actions{flex-direction:column-reverse;gap:.75rem}}@media (max-width:480px){.contact-modal-overlay{align-items:flex-end;padding:0}.contact-modal-content{border-radius:20px 20px 0 0;max-height:95vh;animation:.35s cubic-bezier(.16,1,.3,1) contactSlideUpMobile}@keyframes contactSlideUpMobile{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.contact-modal-close{width:32px;height:32px;top:.75rem;right:.75rem}.contact-form-section{padding:1.5rem}.progressive-form-simple{gap:1.25rem}.form-row{grid-template-columns:1fr;gap:1rem}.form-input,.form-select,.form-textarea{padding:.625rem .875rem;font-size:16px}.form-textarea{min-height:100px}.form-btn{padding:.75rem 1.25rem;font-size:.9rem}.form-review{gap:.875rem;padding:.875rem}.review-label{font-size:.65rem}.review-value{font-size:.85rem}.preview-actions{flex-direction:column-reverse;gap:.625rem}}
