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