.contact-dialog{width:min(640px,100vw - 24px);max-height:calc(100svh - 24px);color:var(--foreground);overscroll-behavior:contain;background:0 0;border:0;margin:auto;padding:0;position:fixed;inset:0;overflow:visible}.contact-dialog:focus{outline:none}.contact-dialog::backdrop{background:color-mix(in srgb, var(--background) 62%, transparent)}.contact-dialog[open]{animation:.32s cubic-bezier(.16,1,.3,1) both contact-in}.contact-dialog[open]::backdrop{animation:.98s cubic-bezier(.2,.7,.25,1) both contact-fade}.contact-dialog.is-closing{pointer-events:none;animation:.32s cubic-bezier(.45,0,.3,1) both contact-out}.contact-dialog.is-closing::backdrop{animation:.98s cubic-bezier(.45,0,.3,1) both contact-fade-out}@keyframes contact-in{0%{opacity:0;transform:translateY(14px)scale(.985)}}@keyframes contact-out{to{opacity:0;transform:translateY(8px)scale(.99)}}@keyframes contact-fade{0%{opacity:0}}@keyframes contact-fade-out{to{opacity:0}}.contact-panel{background:color-mix(in srgb, var(--background) 97%, var(--foreground));border:1px solid color-mix(in srgb, var(--foreground) 16%, transparent);max-height:calc(100svh - 24px);box-shadow:0 40px 90px -30px #000a, inset 0 1px 0 color-mix(in srgb, var(--foreground) 10%, transparent);border-radius:24px;padding:clamp(20px,4vw,34px);overflow:auto}.contact-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:22px;display:flex}.contact-head h2{font:500 clamp(1.7rem,4.4vw,2.5rem)/1 var(--font-display),sans-serif;letter-spacing:-.05em;text-wrap:balance;margin:0}.contact-head em{font-style:normal;font-family:var(--font-geist-sans),Arial,sans-serif;color:var(--accent);font-weight:450;display:block}.contact-close{cursor:pointer;width:42px;height:42px;color:var(--foreground);border:1px solid color-mix(in srgb, var(--foreground) 18%, transparent);background:0 0;border-radius:50%;flex:none;place-items:center;transition:background .2s,color .2s;display:grid}.contact-close:hover{background:var(--accent);color:var(--accent-foreground)}.contact-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.contact-grid .wide{grid-column:1/-1}.contact-grid .half{max-width:calc(50% - 7px)}.contact-grid label{letter-spacing:.04em;color:var(--muted-foreground);gap:7px;font-size:.78rem;display:grid}.contact-grid small{font-size:inherit;opacity:.7}.contact-grid :is(input,textarea,select){border:1px solid color-mix(in srgb, var(--foreground) 20%, transparent);background:color-mix(in srgb, var(--foreground) 5%, transparent);width:100%;color:var(--foreground);font:400 16px/1.4 var(--font-geist-sans),Arial,sans-serif;letter-spacing:0;border-radius:12px;padding:12px 14px}.contact-grid textarea{resize:vertical;min-height:120px}.contact-grid select{-webkit-appearance:none;appearance:none;background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:calc(100% - 20px) 55%,calc(100% - 14px) 55%;background-repeat:no-repeat;background-size:6px 6px,6px 6px;padding-right:36px}.contact-grid select option{color:#111}.contact-grid :is(input,textarea,select)::placeholder{color:color-mix(in srgb, var(--foreground) 40%, transparent)}.contact-grid :is(input,textarea,select):focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-color:#0000}.contact-trap{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;left:-9999px}.contact-foot{flex-wrap:wrap;align-items:center;gap:18px;margin-top:20px;display:flex}.contact-send{background:var(--accent);height:52px;color:var(--accent-foreground);font:560 1rem var(--font-geist-sans),Arial,sans-serif;cursor:pointer;border:0;border-radius:999px;align-items:center;padding:0 28px;transition:transform .16s cubic-bezier(.23,1,.32,1),opacity .2s;display:inline-flex}.contact-send:hover{transform:translateY(-1px)}.contact-send:active{transform:scale(.97)}.contact-send:disabled{opacity:.6;cursor:progress}.contact-send:focus-visible{outline:2px solid var(--foreground);outline-offset:3px}.contact-note{min-width:200px;color:var(--muted-foreground);flex:1;margin:0;font-size:.85rem;line-height:1.45}.contact-note a{color:var(--foreground);text-underline-offset:3px;text-decoration:underline}.contact-sent{justify-items:start;gap:10px;padding:6px 0 4px;display:grid}.contact-sent p{color:var(--muted-foreground);margin:0;line-height:1.5}.contact-sent .contact-sent-title{font:500 1.5rem/1.1 var(--font-display),sans-serif;letter-spacing:-.04em;color:var(--foreground)}.contact-sent .contact-send{margin-top:14px}@media (max-width:560px){.contact-grid{grid-template-columns:1fr}.contact-grid .half{max-width:none}}@media (prefers-reduced-motion:reduce){.contact-dialog[open],.contact-dialog.is-closing,.contact-send,.contact-close{transition:none;animation:none}.contact-dialog[open]::backdrop{transition:none;animation:none}.contact-dialog.is-closing::backdrop{transition:none;animation:none}}
