.contact-section{background-color:var(--surface-background)}.contact-container{max-width:var(--container-max-width);margin-left:auto;margin-right:auto;padding:0 1.5rem}.contact-header{text-align:center;margin-bottom:3rem}.contact-title{font-size:2.441rem;font-weight:700;color:var(--primary-text);margin-bottom:.5rem;line-height:1.2}.contact-subtitle{color:var(--secondary-text);font-size:1.125rem;max-width:42rem;margin-left:auto;margin-right:auto}.contact-divider{width:6rem;height:4px;background-color:var(--interactive-blue);margin-left:auto;margin-right:auto;margin-top:1rem}.contact-form-wrapper{max-width:48rem;margin-left:auto;margin-right:auto;background-color:var(--primary-background);padding:2rem;border-radius:.5rem;box-shadow:var(--custom-shadow)}@media (min-width:768px){.contact-form-wrapper{padding:3rem}}.contact-form{display:flex;flex-direction:column;gap:1.5rem}.contact-form-grid{display:grid;gap:1.5rem}@media (min-width:768px){.contact-form-grid{grid-template-columns:repeat(2,1fr)}}.contact-input,.contact-textarea{width:100%;padding:1rem;border:1px solid var(--border-color);border-radius:.5rem;transition:box-shadow .2s;background-color:var(--primary-background);color:var(--primary-text)}.contact-input:focus,.contact-textarea:focus{outline:2px solid transparent;outline-offset:2px;box-shadow:0 0 0 2px var(--interactive-blue);border-color:var(--interactive-blue)}.contact-submit-wrapper{text-align:center}.contact-submit-button{background:var(--btn-gradient-primary);color:white;font-size:1.125rem;font-weight:600;padding:.875rem 2.5rem;border-radius:.75rem;transition:all .4s cubic-bezier(.175,.885,.32,1.275);border:1px solid rgba(255,255,255,.1);box-shadow:var(--btn-glow-primary);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.contact-submit-button:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 15px 30px rgba(79,70,229,.5);filter:brightness(1.1)}.contact-submit-button:disabled{background-color:#9ca3af;transform:scale(1);cursor:not-allowed}@media (min-width:768px){.contact-submit-button{width:auto}}.contact-feedback{text-align:center;padding:2rem;border-radius:.5rem}.contact-feedback.success{background-color:#f0fdf4;border:1px solid #bbf7d0;color:#166534}.contact-feedback.error{background-color:#fef2f2;border:1px solid #fecaca;color:#b91c1c;margin-top:1rem;padding:1rem}.contact-feedback h3{font-size:1.5rem;font-weight:700;margin-bottom:.5rem}.contact-feedback-button{margin-top:1.5rem;background:none;border:none;color:var(--interactive-blue);font-weight:600;cursor:pointer;text-decoration:underline}.contact-file-label{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1rem;border:1px solid var(--border-color);border-radius:.5rem;cursor:pointer;transition:all .2s;font-weight:500;color:var(--secondary-text)}.contact-file-label:hover{background-color:var(--surface-background);border-color:var(--interactive-blue);color:var(--interactive-blue)}.contact-file-label .w-5{width:1.25rem}.contact-file-label .h-5{height:1.25rem}.contact-file-preview{display:flex;align-items:center;gap:.75rem;margin-top:.75rem;padding:.5rem .75rem;background-color:var(--surface-background);border-radius:.5rem;font-size:.875rem}.contact-file-name{color:var(--primary-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.contact-file-remove{background:none;border:none;cursor:pointer;color:var(--secondary-text);font-size:1.25rem;line-height:1;padding:.25rem;border-radius:9999px}.contact-file-remove:hover{color:var(--primary-text);background-color:var(--border-color)}