.contact-form,.careers-form{max-width:700px;margin:0 auto}.form-instructions{font-size:var(--text-sm);color:var(--color-text-muted);margin-bottom:var(--space-6)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4) var(--space-6)}@media (max-width: 640px){.form-grid{grid-template-columns:1fr}}.form-group{display:flex;flex-direction:column;gap:var(--space-2)}.form-group-full{grid-column:1 / -1}.form-group label,.form-group legend{font-family:var(--font-body);font-weight:600;font-size:var(--text-sm);color:var(--color-text-primary)}.form-group label span[aria-hidden=true]{color:var(--color-tan-dark, #b89b72);margin-left:2px;font-weight:400}.form-group input[type=text],.form-group input[type=email],.form-group input[type=tel],.form-group select,.form-group textarea{width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border-medium);border-radius:var(--radius-md);font-size:var(--text-base);font-family:var(--font-body);background-color:var(--color-white);color:var(--color-text-primary);transition:border-color .2s ease,box-shadow .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}@media (forced-colors: active){.form-group input:focus,.form-group select:focus,.form-group textarea:focus,.file-input-button:focus{outline:2px solid Highlight}}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{background-color:var(--color-cream-dark);cursor:not-allowed;opacity:.7}.form-group input[aria-invalid=true],.form-group select[aria-invalid=true],.form-group textarea[aria-invalid=true]{border-color:var(--color-error)}.form-group input[aria-invalid=true]:focus,.form-group select[aria-invalid=true]:focus,.form-group textarea[aria-invalid=true]:focus{box-shadow:0 0 0 3px #dc262633}.form-group textarea{resize:vertical;min-height:120px}.form-group select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%234a4a4a' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-4) center;padding-right:var(--space-10)}.form-group fieldset{border:none;padding:0;margin:0}.form-group legend{margin-bottom:var(--space-2)}.radio-group{display:flex;gap:var(--space-4)}.radio-label{display:flex;align-items:center;gap:var(--space-2);cursor:pointer;font-weight:400;font-size:var(--text-base)}.radio-label input[type=radio]{appearance:none;-webkit-appearance:none;width:20px;height:20px;margin:0;border:2px solid var(--color-border, #c8c0b4);border-radius:50%;background:var(--color-cream-light, #faf8f4);cursor:pointer;transition:border-color .2s ease,background-color .2s ease;position:relative;flex-shrink:0}.radio-label input[type=radio]:checked{border-color:var(--color-sage, #2d4a3e);background:var(--color-sage, #2d4a3e)}.radio-label input[type=radio]:checked:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:8px;height:8px;border-radius:50%;background:var(--color-cream, #f5f1e8)}.radio-label input[type=radio]:focus-visible{outline:2px solid var(--color-tan, #d4b896);outline-offset:2px}.file-input-wrapper{display:flex;flex-direction:column;gap:var(--space-2)}.file-input-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.file-input-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-4) var(--space-6);border:2px dashed var(--color-border-medium);border-radius:var(--radius-md);background-color:var(--color-cream-light);color:var(--color-text-secondary);font-family:var(--font-body);font-size:var(--text-sm);cursor:pointer;transition:border-color .2s ease,background-color .2s ease,color .2s ease;width:100%;min-height:60px}.file-input-button:hover{border-color:var(--color-sage, #2d4a3e);background-color:var(--color-cream-dark);color:var(--color-sage, #2d4a3e)}.file-input-button:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.file-input-button:disabled{opacity:.7;cursor:not-allowed}.file-name{font-size:var(--text-sm);color:var(--color-text-primary)}.field-hint{font-size:var(--text-xs);color:var(--color-text-secondary)}.field-error{font-size:var(--text-sm);color:var(--color-error);display:flex;align-items:center;gap:var(--space-1)}.field-error:before{content:"";width:16px;height:16px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%23dc2626'%3E%3Cpath fill-rule='evenodd' d='M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7 4a1 1 0 11-2 0 1 1 0 012 0zm-1-9a1 1 0 00-1 1v4a1 1 0 102 0V6a1 1 0 00-1-1z' clip-rule='evenodd'/%3E%3C/svg%3E");background-size:contain;flex-shrink:0}.form-error-banner{background-color:#dc262614;border:1px solid var(--color-error);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-6);display:flex;align-items:flex-start;gap:var(--space-3)}.form-error-banner:before{content:"";width:20px;height:20px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%23dc2626'%3E%3Cpath fill-rule='evenodd' d='M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7 4a1 1 0 11-2 0 1 1 0 012 0zm-1-9a1 1 0 00-1 1v4a1 1 0 102 0V6a1 1 0 00-1-1z' clip-rule='evenodd'/%3E%3C/svg%3E");background-size:contain;flex-shrink:0;margin-top:2px}.form-error-banner p{margin:0;color:var(--color-error-dark);font-size:var(--text-sm)}.form-error-banner a{color:var(--color-error-dark);font-weight:600}.form-success-banner{background-color:#05966914;border:1px solid var(--color-success);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-6)}.form-success-banner p{margin:0;color:var(--color-success-dark);font-size:var(--text-sm)}.form-actions{margin-top:var(--space-6)}.submit-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-8);background-color:var(--color-primary);color:var(--color-white);border:2px solid var(--color-primary);border-radius:var(--radius-md);font-family:var(--font-body);font-size:var(--text-base);font-weight:600;cursor:pointer;transition:background-color .2s ease,transform .1s ease;min-height:44px;min-width:44px}.submit-button:hover:not(:disabled){background-color:var(--color-primary-dark);border-color:var(--color-primary-dark)}.submit-button:active:not(:disabled){transform:translateY(1px)}.submit-button:focus-visible{outline:2px solid var(--color-secondary);outline-offset:2px}.submit-button:disabled{opacity:.7;cursor:not-allowed}@media (max-width: 640px){.submit-button{width:100%}}.spinner{display:inline-block;width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:var(--color-white);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.careers-form{max-width:100%}.form-section{position:relative;margin-bottom:var(--space-8);padding-bottom:var(--space-8);border-bottom:1px solid var(--color-border-light)}.form-section:last-of-type{border-bottom:none;margin-bottom:var(--space-6);padding-bottom:0}.form-section__header{display:flex;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-6)}.form-section__number{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--color-sage);color:var(--color-cream);font-family:var(--font-headline);font-size:var(--text-sm);font-weight:400;border-radius:var(--radius-full);flex-shrink:0;letter-spacing:.05em}.form-section__title-group{padding-top:2px}.form-section__title{font-family:var(--font-headline);font-size:var(--text-lg);font-weight:400;color:var(--color-charcoal);margin:0 0 var(--space-1) 0;letter-spacing:-.01em}.form-section__subtitle{font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-text-secondary);margin:0;font-weight:400;letter-spacing:.02em}.form-section__content{padding-left:calc(40px + var(--space-4))}@media (max-width: 640px){.form-section__content{padding-left:0}.form-section__header{flex-direction:column;gap:var(--space-3)}.form-section__number{width:32px;height:32px;font-size:var(--text-xs)}}.optional-label{font-weight:400;color:var(--color-text-secondary);font-size:var(--text-xs);margin-left:var(--space-1)}.file-upload-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-8) var(--space-6);border:2px dashed var(--color-border-medium);border-radius:var(--radius-lg);background:linear-gradient(180deg,var(--color-cream-light) 0%,var(--color-white) 100%);cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);text-align:center;min-height:160px}.file-upload-zone:hover{border-color:var(--color-sage);background:linear-gradient(180deg,var(--color-cream) 0%,var(--color-cream-light) 100%);transform:translateY(-2px);box-shadow:0 8px 24px #2d4a3e14}.file-upload-zone:focus{outline:none;border-color:var(--color-sage);box-shadow:0 0 0 3px var(--color-focus-ring)}.file-upload-zone--has-file{border-style:solid;border-color:var(--color-sage);background:linear-gradient(180deg,#2d4a3e0a,#2d4a3e05)}.file-upload-zone__content{display:flex;flex-direction:column;align-items:center;gap:var(--space-3)}.file-upload-zone__icon{color:var(--color-text-secondary);opacity:.6;transition:all .3s ease}.file-upload-zone:hover .file-upload-zone__icon{color:var(--color-sage);opacity:1;transform:translateY(-4px)}.file-upload-zone__icon--success{color:var(--color-sage);opacity:1}.file-upload-zone__text{font-family:var(--font-body);font-size:var(--text-base);color:var(--color-text-secondary)}.file-upload-zone__text strong{color:var(--color-sage);font-weight:600}.file-upload-zone__formats{font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.file-upload-zone__filename{font-family:var(--font-body);font-size:var(--text-base);font-weight:600;color:var(--color-sage);word-break:break-all;max-width:100%}.file-upload-zone__change{font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-text-secondary);text-decoration:underline;text-underline-offset:2px}.form-submit-section{display:flex;flex-direction:column;align-items:center;gap:var(--space-5);padding-top:var(--space-6);border-top:1px solid var(--color-border-light);margin-top:var(--space-2)}.form-submit-note{display:flex;align-items:center;gap:var(--space-2);font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-text-secondary);margin:0}.form-submit-note svg{color:var(--color-sage);opacity:.7;flex-shrink:0}.submit-button--careers{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-4) var(--space-10);background:var(--color-tan);color:var(--color-sage);border:2px solid var(--color-tan);border-radius:var(--radius-md);font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;text-transform:uppercase;letter-spacing:.1em;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);min-height:52px;box-shadow:0 4px 15px #d4b89666}.submit-button--careers:hover:not(:disabled){background:var(--color-tan-dark);border-color:var(--color-tan-dark);transform:translateY(-2px);box-shadow:0 8px 25px #d4b89680}.submit-button--careers:active:not(:disabled){transform:translateY(0)}.submit-button--careers:focus-visible{outline:2px solid var(--color-sage);outline-offset:3px}.submit-button--careers:disabled{opacity:.7;cursor:not-allowed}.submit-button--careers svg{transition:transform .3s ease}.submit-button--careers:hover:not(:disabled) svg{transform:translate(4px)}@media (max-width: 640px){.submit-button--careers{width:100%}}@media (prefers-reduced-motion: reduce){.submit-button{transition:none}.submit-button:active:not(:disabled){transform:none}.spinner{animation-duration:1.5s}.form-group input,.form-group select,.form-group textarea,.file-input-button{transition:none}}
