.section-padding{padding:4rem 0}.contact-intro-section{background-color:var(--c-bone);justify-content:center;align-items:center;min-height:100vh;padding-top:5rem;display:flex}.contact-subtitle{max-width:800px;color:var(--c-charcoal);margin:1.5rem auto 0;font-size:1.2rem}.contact-form-section{background-color:var(--c-bone);align-items:center;min-height:100vh;display:flex}.contact-grid{background:#fff;border-radius:1rem;grid-template-columns:1fr;gap:3rem;min-height:calc(100vh - 8rem);display:grid;overflow:hidden;box-shadow:0 10px 30px #0000000d}.contact-image-wrapper{width:100%;height:100%;display:flex}.contact-image-wrapper img{object-fit:cover;width:100%;height:100%;min-height:400px}.contact-form-wrapper{border-left:2px solid var(--c-bone);flex-direction:column;gap:2rem;padding:3rem;display:flex}.form-header{text-align:center;flex-direction:column;gap:1.5rem;display:flex}.form-company-details{border-bottom:1px solid #eee;justify-content:center;align-items:center;gap:2rem;padding-bottom:1.5rem;display:flex}.form-contact-info{text-align:left;justify-content:center;align-items:center;gap:2.5rem;width:100%;font-size:.9rem;display:flex}.contact-highlight{color:var(--c-charcoal);font-size:1.15rem;font-weight:700}.contact-details-list{flex-direction:column;gap:.2rem;display:flex}.form-heading{letter-spacing:1px;font-size:1.8rem;font-weight:600}.form-group{flex-direction:column;gap:.5rem;margin-bottom:1.5rem;display:flex}.form-row{flex-direction:column;gap:1rem;margin-bottom:.5rem;display:flex}.form-row .form-group{margin-bottom:0}@media (min-width:900px){.form-row-2{flex-direction:row}.form-row-2>.form-group{flex:1;min-width:0}.form-row-3{flex-direction:row}.form-row-3>.form-group{flex:1;min-width:0}}.form-group label{color:var(--c-charcoal);font-size:.95rem;font-weight:600}.form-group input,.form-group textarea,.form-group select{border:1px solid var(--c-highlight);width:100%;font-size:1rem;font-family:var(--f-sans);background-color:#fafafa;border-radius:.25rem;padding:1rem;transition:all .3s}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--c-accent);background-color:#fff;outline:none;box-shadow:0 0 0 2px #9a876233}.form-group.has-error input,.form-group.has-error textarea,.form-group.has-error select{border-color:var(--c-error);animation:.4s cubic-bezier(.36,.07,.19,.97) both shake;box-shadow:0 0 0 2px #d32f2f33}.error-msg{color:var(--c-error);margin-top:.25rem;font-size:.85rem;display:none}.form-group.has-error .error-msg{display:block}.submit-btn{cursor:pointer;border:none;border-radius:.25rem;justify-content:center;align-items:center;width:100%;padding:1.2rem;font-size:1.1rem;font-weight:600;transition:all .3s;display:flex;position:relative;overflow:hidden}.submit-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #9a876266}.submit-btn:active{transform:translateY(0)}.submit-btn:disabled{opacity:.7;cursor:not-allowed;box-shadow:none;transform:none}.modal-overlay{z-index:9999;opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;justify-content:center;align-items:center;width:100%;height:100%;transition:opacity .3s;display:flex;position:fixed;top:0;left:0}.modal-overlay.active{opacity:1;pointer-events:auto}.modal-content{text-align:center;background:#fff;border-radius:1rem;width:90%;max-width:500px;padding:3rem;transition:transform .3s;transform:translateY(20px);box-shadow:0 20px 40px #0003}.modal-overlay.active .modal-content{transform:translateY(0)}.loader{vertical-align:middle;border:3px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:20px;height:20px;animation:1s linear infinite spin;display:inline-block}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes shake{10%,90%{transform:translate(-1px)}20%,80%{transform:translate(2px)}30%,50%,70%{transform:translate(-4px)}40%,60%{transform:translate(4px)}}@media (min-width:900px){.contact-grid{grid-template-columns:60% 40%}}@media (max-width:899px){.contact-image-wrapper{order:-1}.contact-form-wrapper{border-left:none;padding:2rem 1.5rem}.form-company-details{flex-direction:column;gap:1rem}}.section-cta{background-color:var(--c-bone);border-top:1px solid #e1e1e1;padding:5rem 0}
