section[data-section=contact] fieldset{border:0;min-inline-size:0;margin:0;padding:0}section[data-section=contact] fieldset+fieldset{border-block-start:1px solid var(--Keyline);padding-block-start:var(--size-6)}section[data-section=contact] legend{color:var(--Ink);float:inline-start;font-size:17px;font-weight:var(--font-weight-semibold);inline-size:100%;padding:0}section[data-section=contact] legend+*{clear:both}section[data-section=contact] .form-alert{background-color:color-mix(in srgb, var(--Error), transparent 90%);border:1px solid var(--Error);gap:var(--size-1);padding:var(--size-4);display:grid}section[data-section=contact] .form-alert icon-l{color:var(--Ink)}section[data-section=contact] .form-alert icon-l>svg{fill:var(--Error)}section[data-section=contact] .form-alert p{color:var(--Ink)}section[data-section=contact] .form-reassure{color:var(--Muted)}section[data-section=contact] .form-sent{--space:var(--size-7);background-color:var(--Alt-surface);border:1px solid var(--Keyline)}section[data-section=contact] .form-sent h2:focus{outline:none}section[data-section=contact] .form-sent p{color:var(--Muted)}section[data-section=contact] .form-sent p a{font-size:inherit;padding-block:0;display:inline}section[data-section=contact] .form-sent__mark>svg{--size:32px;fill:var(--Accent)}contact-form{display:contents}contact-form [aria-invalid=true]{border-color:var(--Error)}contact-form .dropzone{border:1px dashed var(--Muted);color:var(--Muted);cursor:pointer;min-block-size:3lh;padding:var(--size-4);transition:border-color .2s var(--ease-out), color .2s var(--ease-out);justify-content:center;align-items:center;display:flex}contact-form .dropzone[hidden]{display:none}contact-form .dropzone icon-l{--space:var(--size-2)}contact-form .dropzone icon-l>svg{--size:20px}contact-form .dropzone span{font-size:var(--font-size-sm);display:inline}contact-form .dropzone strong{color:var(--Ink);font-weight:var(--font-weight-semibold)}contact-form .dropzone:hover,contact-form .dropzone[data-dragging]{border-color:var(--Ink);color:var(--Ink)}contact-form label:has(input[type=file]:focus-visible) .dropzone{outline:2px solid var(--Accent);outline-offset:3px}contact-form label:has(input[type=file][aria-invalid=true]) .dropzone{border-color:var(--Error)}contact-form .file-list{border-block-start:1px solid var(--Keyline)}contact-form .file-list[hidden]{display:none}contact-form .file-list li{border-block-end:1px solid var(--Keyline);align-items:center;gap:var(--size-3);max-inline-size:none;padding-block:var(--size-2);display:flex}contact-form .file-list .file-name{color:var(--Ink);font-size:var(--font-size-sm);text-overflow:ellipsis;white-space:nowrap;flex:1;min-inline-size:0;overflow:hidden}contact-form .file-list button{all:unset;block-size:44px;color:var(--Muted);cursor:pointer;inline-size:44px;margin-block:calc(var(--size-2) * -1);justify-content:center;align-items:center;display:inline-flex}contact-form .file-list button:hover{color:var(--Ink)}contact-form .file-list button:focus-visible{outline:2px solid var(--Accent);outline-offset:-2px}contact-form .file-list .file-total{border-block-end:0;justify-content:flex-end}contact-form form[aria-busy=true] button[type=submit]{cursor:progress}
