.contact-form{background:var(--card);border:1px solid var(--border);border-radius:20px;padding:28px 24px 32px;position:relative;box-shadow:0 1px 2px #0e17260a,0 24px 60px -24px #0e172640}@media (min-width:48rem){.contact-form{padding:36px 40px 40px}}.contact-form__scope{background:linear-gradient(#9fb0c824 1px, transparent 1px) 0 0 / 100% 12px, linear-gradient(90deg, #9fb0c824 1px, transparent 1px) 0 0 / 20px 100%, var(--board-deep);border-radius:10px;width:calc(100% + 2px);height:48px;margin:-8px -1px 22px;display:block}.contact-form__scope path{fill:none;stroke:var(--signal);stroke-width:1.6px;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 3px #f2c94ccc)}.contact-form fieldset{border:0;margin:0;padding:0}.contact-form__topics{background:var(--muted);border-radius:12px;grid-template-columns:repeat(3,1fr);padding:4px;display:grid;position:relative}.contact-form__topic-indicator{background:var(--card);width:calc(33.3333% - 2.66667px);transform:translateX(calc(var(--index) * 100%));border-radius:9px;transition:transform .35s cubic-bezier(.3,1.2,.4,1);position:absolute;top:4px;bottom:4px;left:4px;box-shadow:0 1px 3px #0e17261f}.contact-form__topic{text-align:center;color:var(--muted-foreground);cursor:pointer;border-radius:9px;padding:10px 8px;font-size:14px;font-weight:500;transition:color .2s;position:relative}.contact-form__topic[data-checked]{color:var(--foreground)}.contact-form__topic:has(:focus-visible){outline:2px solid var(--ring);outline-offset:2px}.contact-form__label{margin-bottom:6px;font-size:14px;font-weight:500;display:block}.contact-form__input{border:1px solid var(--input);background:var(--background);border-radius:10px;width:100%;padding:11px 14px;font-size:16px;transition:border-color .15s,box-shadow .15s;display:block}.contact-form__input::placeholder{color:color-mix(in srgb, var(--muted-foreground) 75%, transparent)}.contact-form__input:focus{border-color:var(--primary);box-shadow:0 0 0 4px color-mix(in srgb, var(--primary) 18%, transparent);outline:none}.contact-form__input[aria-invalid=true]{border-color:var(--destructive)}.contact-form__error{color:var(--destructive);margin-top:6px;font-size:13px}.contact-form__reveal{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .4s cubic-bezier(.3,.9,.3,1),opacity .3s;display:grid}.contact-form__reveal>div{overflow:hidden}.contact-form__reveal.is-open{opacity:1;grid-template-rows:1fr}.contact-form--sent{text-align:center;flex-direction:column;align-items:center;padding-block:56px;animation:.5s cubic-bezier(.2,.9,.3,1) contact-sent-in;display:flex}.contact-form__check{width:72px;height:72px}.contact-form__check circle,.contact-form__check path{fill:none;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.contact-form__check circle{stroke:var(--primary);stroke-dasharray:151;stroke-dashoffset:151px;animation:.6s ease-out .1s forwards contact-draw}.contact-form__check path{stroke:var(--primary);stroke-dasharray:36;stroke-dashoffset:36px;animation:.4s ease-out .6s forwards contact-draw}@keyframes contact-draw{to{stroke-dashoffset:0}}@keyframes contact-sent-in{0%{opacity:0;transform:scale(.97)}}@media (prefers-reduced-motion:reduce){.contact-form__topic-indicator,.contact-form__reveal{transition:none}.contact-form--sent{animation:none}.contact-form__check circle,.contact-form__check path{stroke-dashoffset:0;animation:none}}
