.contact-page{min-height:100vh;background-color:#fff}.contact-hero{position:relative;background:linear-gradient(135deg,#f8fafc,#e2e8f0);text-align:center;overflow:hidden;padding:10rem 2.5rem 4rem}.contact-hero-background{position:absolute;inset:0;background-image:linear-gradient(rgba(0,0,0,.03) .0625rem,transparent .0625rem),linear-gradient(90deg,rgba(0,0,0,.03) .0625rem,transparent .0625rem);background-size:3.125rem 3.125rem;opacity:.5}.contact-hero-content{position:relative;z-index:1}.contact-hero h1{font-size:clamp(2.5rem,5vw,4rem);font-weight:300;color:#1e293b;margin-bottom:1.5rem;letter-spacing:-.02em;line-height:1.1}.contact-hero .highlight{font-weight:400;background:linear-gradient(135deg,#2563eb,#06b6d4);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.contact-hero p{font-size:1.25rem;color:#64748b;max-width:32rem;margin:0 auto;font-weight:300;line-height:1.6}.contact-main-content{padding:5rem 2.5rem}.contact-section{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start}.section-header{margin-bottom:3rem}.section-header h2{font-size:2.5rem;font-weight:300;color:#1e293b;margin-bottom:1rem;letter-spacing:-.01em}.section-header p{font-size:1.125rem;color:#64748b;font-weight:300}.contact-items{display:flex;flex-direction:column;gap:2rem}.contact-item{position:relative}.contact-card{display:flex;align-items:flex-start;gap:1rem;padding:1.5rem;background:#fff;border:.0625rem solid #e2e8f0;border-radius:1rem;transition:all .3s ease;position:relative;overflow:hidden}.contact-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#2563eb05,#06b6d405);opacity:0;transition:opacity .3s ease}.contact-card:hover{border-color:#cbd5e1;box-shadow:0 .625rem 1.5625rem -.1875rem #0000001a,0 .25rem .375rem -.125rem #0000000d;transform:translateY(-.125rem)}.contact-card:hover:before{opacity:1}.contact-icon{flex-shrink:0;width:3rem;height:3rem;background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border-radius:.75rem;display:flex;align-items:center;justify-content:center;transition:all .3s ease;position:relative;z-index:1}.contact-card:hover .contact-icon{background:linear-gradient(135deg,#dbeafe,#bfdbfe)}.contact-icon svg{width:1.25rem;height:1.25rem;color:#64748b;transition:color .3s ease}.contact-card:hover .contact-icon svg{color:#2563eb}.contact-content{flex:1;min-width:0;position:relative;z-index:1}.contact-label{font-size:.875rem;font-weight:500;color:#64748b;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem}.contact-value{font-size:1.125rem;font-weight:500;color:#1e293b;margin-bottom:.25rem;text-decoration:none;transition:color .2s ease}.contact-value:hover{color:#2563eb}.contact-description{font-size:.875rem;color:#64748b;line-height:1.4}.contact-form-wrapper{position:sticky;top:2rem}.contact-form{background:#fff;border-radius:1.5rem;border:.0625rem solid #e2e8f0;padding:2.5rem;box-shadow:0 1.5625rem 3.125rem -.75rem #00000040}.form-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem}.form-header h2{font-size:2rem;font-weight:300;color:#1e293b}.success-badge{display:flex;align-items:center;gap:.5rem;color:#059669;background:#ecfdf5;padding:.5rem .75rem;border-radius:3.125rem;font-size:.875rem;font-weight:500}.success-badge svg{width:1rem;height:1rem}.form{display:flex;flex-direction:column;gap:1.5rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.875rem;font-weight:500;color:#374151}.form-group input,.form-group select,.form-group textarea{width:100%;padding:1rem;border:.0625rem solid #e2e8f0;border-radius:.75rem;background:#f8fafc;font-size:1rem;font-family:inherit;color:#1e293b;transition:all .2s ease;outline:none;box-sizing:border-box}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{background:#fff;border-color:#2563eb;box-shadow:0 0 0 .25rem #2563eb1a}.form-group input::placeholder,.form-group textarea::placeholder{color:#9ca3af}.form-group textarea{resize:vertical;min-height:7.5rem;font-family:inherit}.form-group select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 1rem center;background-size:1rem;padding-right:2.5rem}.submit-btn{background:linear-gradient(135deg,#1e293b,#374151);color:#fff;font-weight:500;padding:1rem 1.5rem;border:none;border-radius:.75rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;font-size:1rem}.submit-btn:hover:not(:disabled){opacity:.9;transform:translateY(-.0625rem)}.submit-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.submit-btn svg{width:1rem;height:1rem;transition:transform .2s ease}.submit-btn:hover:not(:disabled) svg{transform:translate(.125rem)}.spinner{width:1rem;height:1rem;border:.125rem solid rgba(255,255,255,.3);border-top:.125rem solid white;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.cta-section{position:relative;padding:5rem 0 7.5rem;background:linear-gradient(135deg,#1e293b,#374151);text-align:center;overflow:hidden}.cta-background{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) .0625rem,transparent .0625rem),linear-gradient(90deg,rgba(255,255,255,.05) .0625rem,transparent .0625rem);background-size:3.125rem 3.125rem;opacity:.3}.cta-content{position:relative;z-index:1;max-width:56rem;margin:0 auto}.cta-section h2{font-size:clamp(2rem,4vw,3rem);font-weight:300;color:#fff;margin-bottom:1.5rem;letter-spacing:-.01em}.cta-section p{font-size:1.25rem;color:#cbd5e1;margin-bottom:2.5rem;font-weight:300;line-height:1.6}.cta-buttons{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.cta-btn{display:inline-flex;align-items:center;gap:.5rem;padding:1rem 2rem;font-weight:500;border-radius:.75rem;text-decoration:none;transition:all .2s ease;font-size:1rem}.cta-btn.primary{background:#fff;color:#1e293b}.cta-btn.primary:hover{background:#f8fafc;transform:translateY(-.0625rem)}.cta-btn.secondary{border:.0625rem solid rgba(255,255,255,.2);color:#fff;background:#ffffff1a;backdrop-filter:blur(.625rem)}.cta-btn.secondary:hover{background:#fff3;transform:translateY(-.0625rem)}.cta-btn svg{width:1rem;height:1rem;transition:transform .2s ease}.cta-btn:hover svg{transform:scale(1.1)}@media (max-width: 1024px){.contact-section{gap:3.75rem}.contact-form{padding:2rem}}@media (max-width: 768px){.container{padding:0 1.25rem}.contact-hero{padding:10rem 0 3.75rem}.contact-main-content{padding:3.75rem 0 5rem}.contact-section{grid-template-columns:1fr;gap:3.75rem;padding:0rem 1.5rem}.contact-form-wrapper{position:static}.form-row{grid-template-columns:1fr}.contact-form{padding:1.5rem}.cta-section{padding:3.75rem 0 5rem}.section-header h2,.form-header h2,.cta-section h2{font-size:2rem}.cta-buttons{flex-direction:column;align-items:center}.cta-btn{width:100%;max-width:17.5rem;justify-content:center}}@media (max-width: 480px){.container{padding:0 1rem}.contact-section{padding:0rem 2rem!important}.contact-hero h1{font-size:2.5rem}.contact-hero p{font-size:1.5rem}.contact-form{padding:1.25rem}.section-header h2,.form-header h2,.cta-section h2{font-size:2.1rem}.contact-value{font-size:1.3rem}.contact-items{gap:1.25rem}.contact-card{padding:1.25rem}}.form-group.error input,.form-group.error textarea,.form-group.error select{border-color:#ef4444;box-shadow:0 0 0 .25rem #ef44440f;background:#fff}.error-text{display:block;margin-top:.5rem;font-size:.875rem;color:#ef4444;line-height:1}.form-group.error label{color:#b91c1c}.inputError-container{margin:1rem 0;display:flex;flex-direction:column;gap:.5rem}.inputError-container .grecaptcha-badge,.inputError-container iframe{max-width:100%}.inputError-container .error-text,.form-row .form-group .error-text{margin-left:0}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none}.submit-btn:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 420px){.inputError-container iframe{transform:scale(.9);transform-origin:left top}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.error-text{animation:fadeInDown .16s ease-in-out}
