/* A single contact composition. The shared header, footer and preview stay intact. */
.contact-page .contact-composition{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:9vw;max-width:1600px;margin:0 auto;padding:160px 6vw 100px;align-items:start}
.contact-page .contact-intro{padding:5px 0 0}
.contact-page .contact-intro>.micro{display:block;margin-bottom:34px;color:#5c5c5c}
.contact-page .contact-intro h1{font-size:clamp(66px,7.7vw,116px);line-height:1.02;letter-spacing:-.065em}
.contact-page .contact-lead{font-size:clamp(16px,1.45vw,20px);line-height:1.7;margin-top:25px;max-width:360px;color:#565656}
.contact-page .contact-details{font-style:normal;margin-top:70px;font-size:13px;line-height:1.9}
.contact-page .contact-email{display:inline-flex;align-items:center;min-height:44px;font-size:clamp(15px,1.45vw,20px);letter-spacing:-.025em;text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px;overflow-wrap:anywhere;max-width:100%}
.contact-page .contact-details p{margin-top:20px;color:#565656}
.contact-page .contact-form{border-top:1px solid #aaa;padding-top:20px}
.contact-page .contact-required{font-size:10px;color:#666;margin:0 0 23px}
.contact-page .contact-form label{font-size:12px;margin-bottom:23px;line-height:1.65}
.contact-page .contact-form input,.contact-page .contact-form select,.contact-page .contact-form textarea{font-size:16px;line-height:1.6;min-height:48px;padding:11px 0;border-color:#aaa}
.contact-page .contact-form select{cursor:pointer;padding-right:24px}
.contact-page .contact-form textarea{min-height:110px}
.contact-page .contact-optional{color:#666;font-size:11px}
.contact-page .contact-form .contact-context{font-size:10px;color:#666;padding:12px 16px;border-left:2px solid #aaa;background:#ececec;margin-bottom:25px}
.contact-page .contact-context input{font-size:13px;line-height:1.6;min-height:32px;padding:4px 0 0;border:0;color:#333}
.contact-page .contact-local-note{color:#626262;font-size:10px;line-height:1.8;margin:3px 0 20px;max-width:540px}
.contact-page .contact-local-note a{text-decoration:underline;text-underline-offset:3px}
.contact-page .support-submit{min-height:56px;padding:17px 20px;font-size:12px}
.contact-page .support-submit:hover{background:#3a3a3a}
.contact-page .support-submit:disabled{cursor:not-allowed}
.contact-page .support-form-status{font-size:10px;margin-top:12px}
.contact-page .support-preview{margin-top:20px;padding:24px}
.contact-page .support-preview h2{font-size:32px;line-height:1.1}
.contact-page main a:focus-visible,.contact-page main button:focus-visible,.contact-page .support-preview h2:focus-visible{outline:2px solid #333;outline-offset:5px}
.contact-page [hidden]{display:none!important}
.contact-page .contact-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:950px){.contact-page .contact-composition{gap:6vw;padding:130px 6vw 75px;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}.contact-page .contact-intro h1{font-size:clamp(58px,8vw,76px)}.contact-page .contact-lead{font-size:16px}.contact-page .contact-form .form-row{grid-template-columns:1fr;gap:0}}
@media(max-width:700px){.contact-page .contact-composition{grid-template-columns:minmax(0,1fr);gap:38px;padding:120px 6vw 55px}.contact-page .contact-intro>.micro{margin-bottom:25px}.contact-page .contact-intro h1{font-size:clamp(58px,13vw,82px)}.contact-page .contact-lead{margin-top:18px;font-size:16px}.contact-page .contact-details{margin-top:24px;display:grid;grid-template-columns:minmax(0,1fr);gap:9px}.contact-page .contact-email{font-size:17px}.contact-page .contact-details p{margin-top:0;font-size:12px;line-height:1.8}.contact-page .contact-form{padding-top:18px}.contact-page .contact-required{margin-bottom:20px}.contact-page .contact-local-note{font-size:11px}.contact-page .support-preview{padding:20px}.contact-page .support-preview-actions{gap:10px 20px}}
@media(prefers-reduced-motion:reduce){.contact-page main *,.contact-page main *::before,.contact-page main *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
