/* Premier contact : confirmation accessible, avant toute transmission. */
.contact-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
#contact-confirm{max-width:600px;width:calc(100% - 32px);padding:0;border:1px solid #cbdfe5;border-radius:18px;color:#213f50;box-shadow:0 22px 90px #17384933}
#contact-confirm::backdrop{background:#17384999}
.contact-dialog-inner{padding:32px}.contact-dialog-inner h2{font-size:30px;line-height:1.15;margin:8px 0 20px}.contact-dialog-inner p{line-height:1.65}
#contact-confirm .actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}#contact-confirm .button{white-space:normal;text-align:center}
#contact-confirm button:disabled{opacity:.55;cursor:wait}#contact-send-status{font-size:14px}#contact-antispam{margin-top:18px;min-height:0}
@media(max-width:600px){.contact-dialog-inner{padding:24px}.contact-dialog-inner h2{font-size:26px}#contact-confirm .actions{flex-direction:column}#contact-confirm .button{width:100%}}

/* Un premier message accessible sans traverser une page d'explications. */
.contact-page .request-intro{display:block;max-width:850px;padding:23px 28px;margin:4px auto 18px;border-radius:10px}
.contact-page .request-intro h1{font-size:clamp(30px,3.7vw,43px);line-height:1.12;margin:0 0 10px}
.contact-page .request-intro>div>p:not(.eyebrow){font-size:16px;line-height:1.5;margin:0;max-width:none}
.contact-page .request-intro .contact-reassurance{font-size:14px;margin-top:11px;color:#315b6b}
.contact-page .contact-choice{margin-bottom:15px;gap:10px}
.contact-page .contact-choice button,.contact-page .contact-choice button[aria-pressed=true]{padding:12px 17px;min-height:65px}
.contact-page .contact-choice button{border-width:2px}
.contact-page .contact-choice strong{font-size:17px;line-height:1.25}
.contact-page .contact-choice span{font-size:12px;line-height:1.4;margin-top:3px}
.contact-page .contact-privacy{max-width:850px}
body.contact-page .data-notice.data-notice-quiet{border:0;background:transparent;padding:0;margin:0 0 16px;color:#456170}
body.contact-page .data-notice.data-notice-quiet p{font-size:13px;line-height:1.55;margin:0}
.contact-page .quick-contact{margin-top:0;margin-bottom:25px}
.contact-page .quick-contact .form-surface{padding:20px 26px 24px}
.contact-page .quick-contact form{margin-top:0}
.contact-page #quick-form .field-columns label{margin-top:0}
.contact-page .form-layout{padding-top:0}
.contact-page .contact-context{max-width:850px;background:#eef6fa;border:1px solid #c6dde7;border-radius:8px;padding:11px 15px;margin-bottom:14px}
.contact-context-heading{display:flex;gap:12px;align-items:center;justify-content:space-between}
.contact-context-heading strong{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#456170}
.contact-context-heading>div{display:flex;gap:14px}
.contact-context-heading button{border:0;background:transparent;color:#155b7b;text-decoration:underline;text-underline-offset:3px;font-size:12px;padding:3px 0;min-height:28px;cursor:pointer}
#contact-context-label{font-size:14px;line-height:1.45;color:#194c64;margin:2px 0 0}
#context-editor{margin-top:12px}
#context-editor label{display:block;font-size:12px;margin-bottom:5px}
#context-editor>div{display:flex;gap:8px}
#context-input{flex:1;width:100%;min-width:0;padding:9px;border:1px solid #abc5d2;border-radius:4px;color:#194c64;font-size:14px;background:white}
#context-save{background:#194c64;color:white;padding:8px 12px;border:0;border-radius:4px;cursor:pointer}
.contact-confirm-preview{margin-top:16px;border-block:1px solid #d4e1e7;padding:13px 0}
.contact-confirm-preview summary{font-size:14px;color:#155b7b;cursor:pointer}
#contact-confirm-summary{white-space:pre-wrap;overflow-wrap:anywhere;font-family:inherit;font-size:12px;line-height:1.6;max-height:220px;overflow:auto;background:#f3f7f9;padding:15px;margin:13px 0 0}
@media(max-width:700px){
 .contact-page .breadcrumb{margin-block:13px;padding-top:10px}
 .contact-page .request-intro{padding:17px 19px!important;margin-bottom:14px;gap:0!important}
 .contact-page .request-intro h1{font-size:31px;margin-bottom:9px}
 .contact-page .request-intro>div>p:not(.eyebrow){font-size:14px;line-height:1.45;margin:0}
 .contact-page .request-intro .contact-reassurance{font-size:12px!important;margin-top:9px!important;line-height:1.45!important}
 .contact-page .contact-choice{gap:8px;margin-bottom:12px}
 .contact-page .contact-choice button,.contact-page .contact-choice button[aria-pressed=true]{padding:10px 11px;min-height:62px}
 .contact-page .contact-choice strong{font-size:15px}
 .contact-page .contact-choice span{font-size:11px}
 body.contact-page .data-notice.data-notice-quiet{margin-bottom:13px}
 body.contact-page .data-notice.data-notice-quiet p{font-size:12px;line-height:1.5}
 .contact-page .quick-contact .form-surface{padding:17px 18px 21px}
 .contact-page .contact-context{padding:8px 11px;margin-bottom:12px}
 .contact-context-heading{gap:8px}
 .contact-context-heading strong{font-size:10px;letter-spacing:.03em}
 .contact-context-heading>div{gap:11px}
 #contact-context-label{font-size:13px}
 .contact-page .form-layout .form-surface{padding:21px}
}
