.application-upload{min-width:0;border:1px dashed var(--taupe-300,#b59b84);border-radius:12px;background:var(--taupe-50,#f6f1ed);padding:19px;margin:22px 0}
.application-upload legend{font-size:12px;font-weight:600;padding-inline:7px;color:var(--taupe-800,#392f27)}
.application-upload>p{font-size:11px;line-height:1.75}
.contact .upload-picker{display:block;margin:16px 0 10px;font-size:11px;font-weight:550}
.upload-picker input{display:block;width:100%;min-width:0;max-width:100%;border:0;background:transparent;border-radius:0;padding:8px 0;font-size:11px;line-height:1.6;cursor:pointer}
.upload-picker input::file-selector-button{font:inherit;border:1px solid var(--taupe-300,#b59b84);background:white;color:var(--taupe-800,#392f27);border-radius:7px;padding:10px 14px;margin-right:10px;cursor:pointer}
.attachment-list,.inquiry-attachments{list-style:none;padding:0;margin:0}
.attachment-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line,#e6ded6);padding:10px 0}
.attachment-list li>span{min-width:0;font-size:11px;line-height:1.5;overflow-wrap:anywhere}
.attachment-list small{display:block;color:var(--muted,#756c63);font-size:10px;margin-top:3px}
.attachment-list button{flex-shrink:0;min-width:38px;min-height:38px;background:white;border:1px solid var(--line,#e6ded6);border-radius:50%;font-size:20px;color:var(--taupe-700,#4b3f34)}
#attachment-status:not(:empty){margin:8px 0 12px;color:var(--taupe-800,#392f27);font-weight:550}
.application-upload .upload-note{font-size:10px;color:var(--muted,#756c63);margin-top:12px}
#attachment-progress{width:100%;height:8px;accent-color:var(--taupe-600,#635347);margin-top:15px}
.inquiry-attachments{margin:18px 0;padding:8px 15px;background:var(--taupe-50,#f6f1ed);border-radius:9px}
.inquiry-attachments li+li{border-top:1px solid var(--line,#e6ded6)}
.inquiry-attachments .text-link{display:flex;justify-content:space-between;gap:15px;overflow-wrap:anywhere;min-height:48px;font-size:13px}
.inquiry-attachments .text-link span{font-size:11px;flex-shrink:0}
@media(max-width:580px){.application-upload{padding:16px}.upload-picker input{font-size:12px}.inquiry-attachments .text-link{display:block;padding:10px 0}.inquiry-attachments .text-link span{display:block;margin-top:4px}}

/* Keep the native accessible file picker; selected files are listed below. */
.contact .upload-picker{position:relative;display:inline-flex;align-items:center;min-height:43px;background:white;border:1px solid var(--taupe-300);border-radius:7px;padding:10px 15px;cursor:pointer;overflow:hidden}
.upload-picker input{position:absolute;inset:0;margin:0;width:100%;height:100%;padding:0;opacity:0;cursor:pointer}
.upload-picker:has(input:focus-visible){outline:3px solid var(--taupe-500);outline-offset:4px}

/* Visitor-facing confirmation, shared by contact and application forms. */
.contact-success{align-self:start;background:#fff;border:1px solid #e8d9ce;border-radius:20px;padding:clamp(28px,4vw,56px);box-shadow:0 16px 50px #392f2709}.contact-success[hidden],#contact-form[hidden]{display:none!important}.success-mark{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:#f6f1ed;color:#635347;margin-bottom:28px}.success-mark svg{width:32px;height:32px;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.contact-success .eyebrow{font-size:11px;letter-spacing:.12em}.contact-success h2{font-size:clamp(25px,3vw,38px);line-height:1.18;letter-spacing:-.035em;margin:14px 0 20px}.contact-success>p:not(.eyebrow){font-size:16px;line-height:1.8;max-width:48ch}.success-signature{display:block;font-size:13px;color:#635347;margin:24px 0 30px}.contact-success .button{max-width:100%;white-space:normal;text-align:left}.contact-success:focus-within{outline:none}@media(prefers-reduced-motion:no-preference){.contact-success{animation:contact-confirm .35s ease-out}.success-mark svg{animation:contact-confirm .5s ease-out}@keyframes contact-confirm{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}}
