.contact-page{--text-on-paper-strong:var(--dark);--text-on-paper-current:var(--dark);--text-on-paper-soft:var(--dark);color:var(--dark)}
.contact-page .site-header{background:var(--surface-strong)}.contact-page .page-opening{background:var(--surface-accent-alt)}
.contact-request{padding-block:34px}.contact-layout{display:grid;gap:28px;align-items:start}
.contact-form{min-width:0}.contact-form h2,.contact-aside h2{margin:0 0 16px;color:var(--dark);font-size:clamp(28px,3vw,36px);line-height:1.1;letter-spacing:-.025em}
.contact-form-help{margin:0 0 24px;font-size:13px}.contact-form .form-field label{font-size:14px}.contact-form .form-field label span{font-size:12px;font-weight:450}
.contact-form :is(input,select,textarea){color:var(--dark)}.contact-form textarea{line-height:1.5}
.contact-check{display:flex;align-items:flex-start;gap:11px;font-size:14px;line-height:1.5;margin-top:18px;cursor:pointer}.contact-check input{flex:0 0 auto;width:18px;height:18px;margin:2px 0 0;accent-color:var(--dark)}
.contact-aside{padding:25px;background:var(--surface-calm-alt);color:var(--dark)}.contact-aside>p:not(.kicker){font-size:14px}.contact-phone{display:inline-block;margin:8px 0 12px;font-size:clamp(23px,2.3vw,30px);font-weight:700;white-space:nowrap}.contact-address{padding-top:18px;border-top:1px solid var(--line)}
.contact-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.legal-email-access{margin:14px 0}.legal-email-access button{padding:10px 15px;background:var(--surface-calm-alt);border:1px solid var(--dark);color:var(--dark);font:inherit;cursor:pointer}
.legal-email-page{margin:0;background:var(--surface-accent-alt);color:var(--dark);font:17px/1.6 system-ui,sans-serif}.legal-email-page main{width:min(700px,calc(100% - 40px));margin:8vh auto}.legal-email-page h1{font-size:clamp(28px,5vw,44px);line-height:1.15}.legal-email-page a{color:inherit;overflow-wrap:anywhere}
.contact-status{margin:18px 0 0;font-size:14px}.contact-status:empty{display:none}.contact-status.is-error{padding:14px;border:1px solid var(--dark);background:var(--surface-accent-alt)}
.contact-form a{text-decoration:underline;text-underline-offset:3px}.contact-form .button{min-width:210px}.contact-form .button:disabled{opacity:.6;cursor:wait}
@media(min-width:850px){.contact-layout{grid-template-columns:minmax(0,1.65fr) minmax(260px,1fr);gap:48px}.contact-request{padding-block:42px}.contact-aside{position:sticky;top:100px}}

.contact-phone-consent{margin-top:25px;padding:20px;border:1px solid var(--line);background:var(--surface-calm-alt);color:var(--dark)}.contact-phone-consent h3{margin:0 0 14px;font-size:19px}.contact-phone-consent .contact-check{margin-top:13px}.contact-consent-help{margin:15px 0 0;font-size:12px;line-height:1.6}

/* Contact contextuel, sans allonger les autres pages. */
.contact-form [hidden],.buyer-tunnel [hidden]{display:none!important}
.contact-page .shell{max-width:1040px}
.contact-page .page-opening{padding-top:106px;padding-bottom:20px}.contact-page .page-opening .kicker{margin-bottom:9px}
.contact-page .page-opening h1{font-size:clamp(30px,3.4vw,40px)}.contact-page .opening-grid{grid-template-columns:1fr;gap:8px}
.contact-page .opening-grid>p{font-size:15px;line-height:1.45}
.contact-page .contact-request{padding-block:24px}.contact-page .contact-layout{gap:28px}
.contact-mode{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 18px;padding:0;border:0}
.contact-mode legend{margin-bottom:10px;font-size:14px;font-weight:650}.contact-mode label{position:relative;cursor:pointer}
.contact-mode input{position:absolute;width:1px;height:1px;opacity:0}.contact-mode span{display:flex;min-height:42px;align-items:center;justify-content:center;padding:8px;border:1px solid var(--line);font-size:14px;font-weight:650}
.contact-mode label:has(:checked) span{background:var(--dark);color:var(--white);border-color:var(--dark)}.contact-mode label:has(:focus-visible) span{outline:2px solid var(--dark);outline-offset:3px}
.contact-form .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.contact-form .form-field.full{grid-column:1/-1}
.contact-form .form-field{gap:5px}.contact-form .form-field label{font-size:12px}
.contact-form .form-field :is(input,select,textarea){min-height:42px;padding:8px 10px;font-size:16px}
.contact-form .form-field textarea{min-height:82px;line-height:1.4}
.contact-phone-details{margin-top:14px;padding:0;border:0}.contact-phone-details summary{cursor:pointer;font-size:13px;font-weight:600}.contact-phone-details summary span{font-weight:400}
.contact-phone-details .contact-check{font-size:12px;line-height:1.5;margin:12px 0}.contact-phone-details .form-field{margin-top:10px}
.contact-phone-details.is-callback{padding:12px 14px;background:var(--surface-calm-alt)}.contact-phone-details.is-callback .contact-check{margin:0}
.contact-form .form-privacy{margin:14px 0 0;font-size:11px;line-height:1.5}.contact-data-credit{font-size:10px}
.contact-form .form-actions{margin-top:14px;align-items:center;gap:12px}.contact-form .button{min-height:42px;min-width:180px;padding:11px 18px;font-size:11px}.contact-required{font-size:10px}
.contact-page .contact-aside{padding:20px}.contact-page .contact-aside h2{font-size:24px;line-height:1.15;margin-bottom:12px}
.contact-page .contact-aside>p{font-size:13px;margin-bottom:0}.contact-page .contact-phone{font-size:25px;margin:4px 0}
.buyer-tunnel [data-buyer-phone]{margin-top:12px}
@media(min-width:850px){.contact-page .contact-layout{grid-template-columns:minmax(0,1.9fr) minmax(230px,1fr);gap:32px}}
@media(max-width:699px){.contact-page .page-opening{padding-top:92px;padding-bottom:18px}.contact-page .contact-request{padding-block:20px}.contact-mode span{font-size:12px}.contact-form .contact-check input{width:17px;height:17px}}
@media(max-width:699px){.contact-page .contact-aside{padding:14px;display:grid;gap:6px}.contact-page .contact-aside h2{font-size:18px;margin:0}.contact-page .contact-phone{font-size:22px;margin:0}.contact-page .contact-aside>p{display:none}}

.phone-legal-notice{margin:10px 0 14px;padding:12px 14px;border-left:2px solid var(--dark);background:var(--surface-calm-alt);color:var(--dark);font-size:12px;line-height:1.5}.phone-legal-notice p{margin:0 0 8px}.phone-legal-notice p:last-of-type{margin-bottom:5px}.phone-legal-notice a{text-decoration:underline;text-underline-offset:2px}.phone-legal-notice>a{font-size:11px}.contact-phone-details.is-callback .phone-legal-notice{padding:0;border:0;background:transparent}

/* L'essentiel accompagne le choix ; le texte complet reste immédiatement accessible. */
.phone-consent-overview{margin:10px 0 12px;font-size:13px;line-height:1.5;color:var(--dark)}.phone-consent-overview p{margin:0 0 10px}.phone-consent-overview ul{margin:0;padding-left:19px;display:grid;gap:5px}.phone-consent-overview a{text-decoration:underline;text-underline-offset:2px}
.phone-legal-more{margin:0 0 14px}.phone-legal-more>summary{font-size:12px;font-weight:500;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.phone-legal-more .phone-legal-notice{margin:12px 0;padding:12px;border-left:1px solid var(--line);background:var(--surface-calm-alt)}
.contact-phone-details.is-callback{padding:0;background:transparent}.contact-phone-details.is-callback .phone-legal-more .phone-legal-notice{padding:12px;border-left:1px solid var(--line);background:var(--surface-calm-alt)}
.contact-phone-details>.contact-check{font-size:14px;font-weight:600;line-height:1.45;margin:12px 0}
.contact-phone-details>.contact-check:has(input:not(:checked)) [data-consent-label]{color:#b02a37}
.contact-form .contact-consent-step{margin:14px 0 8px;font-size:13px;font-weight:650;line-height:1.5;color:var(--dark)}
.contact-topics{grid-column:1/-1;border:0;padding:0;margin:1px 0 3px;min-width:0}.contact-topics legend{font-size:12px;font-weight:650;margin-bottom:7px}.contact-topic-options{display:flex;flex-wrap:wrap;gap:6px}.contact-topic-options label{display:flex;align-items:center;gap:7px;padding:7px 9px;border:1px solid var(--line);font-size:12px;line-height:1.3;cursor:pointer}.contact-topic-options label:has(:checked){background:var(--surface-accent-alt);border-color:var(--dark)}.contact-topic-options input{width:15px!important;height:15px!important;min-height:0!important;padding:0!important;margin:0;accent-color:var(--dark);flex:none}.contact-topic-options label:has(:focus-visible){outline:2px solid var(--dark);outline-offset:2px}.consent-retry{background:var(--surface-calm-alt);color:var(--dark);border:1px solid var(--dark);padding:8px 12px;font:inherit;cursor:pointer}
