.contact-dialog{padding:0;border:1px solid #d3d4dd;border-radius:24px;background:#f0f0f3;color:var(--ink);width:min(960px,calc(100vw - 48px));max-height:calc(100dvh - 48px);overflow:auto;box-shadow:0 24px 110px #161c3b3b;overscroll-behavior:contain}
.contact-dialog::backdrop{background:#14182670;backdrop-filter:blur(12px)}
.contact-dialog[open]{animation:contact-in .28s ease-out}
.contact-close{position:absolute;right:18px;top:18px;z-index:3}
.contact-layout{display:grid;grid-template-columns:.72fr 1fr;min-height:640px}
.contact-art{position:relative;overflow:hidden;background:#e2e4ec;padding:34px 30px;border-right:1px solid #d3d4dd}
.contact-wordmark{font:800 44px/1 var(--display);letter-spacing:-4px}.contact-wordmark>span{vertical-align:top;font:12px var(--sans);letter-spacing:0;margin-left:7px}
.contact-art>p{position:relative;z-index:1;font:500 29px/1.25 var(--display);letter-spacing:-1.1px;margin-top:39px}.contact-art em{font-family:Georgia,serif;font-weight:400}
.contact-art>img{position:absolute;left:-17%;bottom:27px;width:134%;height:68%;object-fit:contain;object-position:50% 100%;mask-image:linear-gradient(#000 85%,transparent)}
.contact-art-caption{position:absolute;bottom:23px;left:30px;font:8px var(--sans);letter-spacing:1.2px;color:#5e6478}
.contact-content{padding:76px 40px 32px;min-width:0}.contact-kicker{font:9px/1.6 var(--sans);letter-spacing:1.6px;color:#666c81}
.contact-content h2{font:500 40px/1.07 var(--display);letter-spacing:-2px;margin:17px 0 16px}.contact-content h2 em{font-family:Georgia,serif;font-weight:400}
#contact-intro{font-size:14px;line-height:1.7;color:#686c7b;margin:0 0 24px}
#contact-form label{display:flex;flex-direction:column;gap:8px;margin-bottom:18px;font-size:11px;font-weight:600;letter-spacing:.2px}
.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}
#contact-form input:not([type=hidden]),#contact-form select,#contact-form textarea{display:block;width:100%;min-width:0;border:0;border-bottom:1px solid #bbbfcf;border-radius:0;padding:10px 0;background:transparent;font:400 14px/1.5 var(--sans);color:var(--ink);outline-offset:4px}
#contact-form input::placeholder,#contact-form textarea::placeholder{color:#818595;opacity:1}#contact-form textarea{resize:vertical;max-height:230px;min-height:86px}#contact-form select{min-height:43px}
.contact-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.contact-actions>a{font-size:11px;text-decoration:underline;text-underline-offset:4px;color:#626a80}
.contact-note{font-size:10px;line-height:1.7;color:#787e91;margin:16px 0 0}.contact-status{font-size:12px;line-height:1.6;color:#973938;margin:0 0 16px}.contact-status:empty{display:none}
.contact-dialog button:disabled{opacity:.6;cursor:wait}.contact-dialog [hidden]{display:none!important}
.contact-success{padding:24px 0 45px}.contact-success-mark{font-size:44px;color:#536bca}.contact-success h3{font:500 29px var(--display);letter-spacing:-1px;margin:18px 0}.contact-success p{font-size:15px;line-height:1.8;color:#686c7b;margin-bottom:28px}
@keyframes contact-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(max-width:720px){.contact-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);border-radius:18px}.contact-layout{display:block;min-height:0}.contact-art{display:none}.contact-content{padding:72px 24px 26px}.contact-content h2{font-size:36px}.contact-kicker{font-size:8px}.contact-fields{grid-template-columns:1fr;gap:0}#contact-form input:not([type=hidden]),#contact-form select,#contact-form textarea{font-size:16px}.contact-actions{gap:16px}.contact-close{top:14px;right:14px}.contact-note{font-size:11px}.contact-actions>a{font-size:12px}}
@media(prefers-reduced-motion:reduce){.contact-dialog[open]{animation:none}.contact-dialog::backdrop{backdrop-filter:none}}
