dialog.contact-modal{background:0 0;border:none;border-radius:1rem;width:calc(100% - 2rem);max-width:32rem;max-height:85vh;margin:auto;padding:0;position:fixed;inset:0;overflow:visible}dialog.contact-modal::backdrop{-webkit-backdrop-filter:blur(4px);background:#0f172a99}dialog.contact-modal[open]{animation:.2s ease-out tod-modal-in}@keyframes tod-modal-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.contact-modal-panel{background:#fff;border-radius:1rem;max-height:85vh;padding:1.75rem;position:relative;overflow-y:auto;box-shadow:0 20px 60px #00000040}.contact-modal-close{color:#64748b;cursor:pointer;background:#f1f5f9;border:none;border-radius:9999px;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:1.25rem;line-height:1;display:flex;position:absolute;top:.75rem;right:.75rem}.contact-modal-close:hover{background:#e2e8f0}#contact-modal .tod-submit{font:inherit;background:linear-gradient(to bottom, var(--color-accent-400) 0%, var(--color-accent-500) 55%, var(--color-accent-600) 100%);color:var(--color-ink-950);border:1px solid var(--color-accent-600);border-radius:999px;padding:.75rem 1.5rem;font-weight:600;transition:box-shadow .15s,transform 50ms;position:relative;overflow:hidden;box-shadow:inset 0 1px 1px #ffffffa6,inset 0 -4px 8px #8c460059,0 3px 6px #00000040}#contact-modal .tod-submit:before{content:"";pointer-events:none;background:linear-gradient(#ffffff8c,#fff0);border-radius:999px 999px 60% 60%;height:40%;position:absolute;inset:8% 5% auto}#contact-modal .tod-submit:hover{background:linear-gradient(to bottom, #ffc56b 0%, var(--color-accent-400) 55%, var(--color-accent-500) 100%)}#contact-modal .tod-submit:active{transform:translateY(1px);box-shadow:inset 0 1px 1px #ffffff80,inset 0 2px 5px #8c460073}#contact-modal .tod-submit:focus-visible{outline:2px solid var(--color-brand-600);outline-offset:2px}#contact-modal .tod-submit:disabled{opacity:.6;cursor:default}@keyframes tod-glow-orange{0%,to{transform:scale(1)translate(0)}33%{transform:scale(1.12)translate(30px,-25px)}66%{transform:scale(.95)translate(-15px,20px)}}@keyframes tod-glow-amber{0%,to{transform:scale(1)translate(0)}40%{transform:scale(1.18)translate(-20px,20px)}75%{transform:scale(.9)translate(25px,-10px)}}@keyframes tod-glow-indigo{0%,to{transform:translate(-50%)scaleX(1)}50%{transform:translate(-50%)scaleX(1.2)}}@keyframes tod-gradient-shift{0%,to{background-position:0%}50%{background-position:100%}}@keyframes tod-float-1{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes tod-float-2{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes tod-float-3{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes tod-card-enter{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:translate(0)}}@keyframes tod-shimmer{0%{background-position:-200%}to{background-position:200%}}.tod-glow-orange{animation:18s ease-in-out infinite tod-glow-orange}.tod-glow-amber{animation:24s ease-in-out infinite tod-glow-amber}.tod-glow-indigo{animation:30s ease-in-out infinite tod-glow-indigo}.tod-gradient-text{background:linear-gradient(90deg,var(--color-accent-400),var(--color-accent-500),var(--color-accent-600),var(--color-accent-500),var(--color-accent-400));-webkit-text-fill-color:transparent;background-size:300% 100%;background-clip:text;animation:6s ease-in-out infinite tod-gradient-shift}.tod-card-1{animation:.5s ease-out .1s both tod-card-enter,5s ease-in-out .6s infinite tod-float-1}.tod-card-2{animation:.5s ease-out .3s both tod-card-enter,6s ease-in-out .8s infinite tod-float-2}.tod-card-3{animation:.5s ease-out .5s both tod-card-enter,5.5s ease-in-out 1s infinite tod-float-3}.tod-card-shimmer{position:relative;overflow:hidden}.tod-card-shimmer:after{content:"";pointer-events:none;border-radius:inherit;background:linear-gradient(105deg,#0000 40%,#ffffff0f 50%,#0000 60%) 0 0/200% 100%;animation:4s ease-in-out infinite tod-shimmer;position:absolute;inset:0}@media (prefers-reduced-motion:reduce){.tod-glow-orange,.tod-glow-amber,.tod-glow-indigo,.tod-gradient-text,.tod-card-1,.tod-card-2,.tod-card-3,.tod-card-shimmer:after{animation:none!important}.tod-gradient-text{background:linear-gradient(90deg,var(--color-accent-400) 0%,var(--color-accent-600) 100%);background-clip:text}}
