/* Page Contact (en-tête épinglé et barre mobile désactivée : gérés par site.css) */

/* Bandeau */
.contact__top{padding:12px var(--gutter-lg) 0}
.contact__panel{position:relative;overflow:hidden;max-width:1420px;margin:0 auto;border-radius:clamp(24px,3vw,36px);background:var(--bleu);color:#fff}
.contact__wm{position:absolute;right:-3%;top:-30%;height:170%;aspect-ratio:.832;background:#fff;opacity:.06;-webkit-mask:url(../../logos/mark-c-lg.png) center/contain no-repeat;mask:url(../../logos/mark-c-lg.png) center/contain no-repeat;pointer-events:none}
.contact__in{position:relative;max-width:1320px;margin:0 auto;padding:clamp(32px,5vw,72px) var(--gutter);display:flex;flex-direction:column;gap:20px}
.contact__crumbs{display:flex;gap:10px;align-items:center;font:400 13.5px/1 var(--sans);color:#fff}
.contact__crumbs a{color:#fff;opacity:.8;transition:opacity .2s}
.contact__crumbs a:hover{opacity:1;color:#fff}
.contact__crumb-dot{width:4px;height:4px;border-radius:50%;background:var(--sable)}
.contact__h1{max-width:880px;font:400 clamp(40px,5.4vw,78px)/.98 var(--serif);letter-spacing:-.015em;color:#fff;text-wrap:balance}
.contact__h1-dot{color:var(--sable)}
.contact__lead{max-width:560px;font:400 16.5px/1.6 var(--sans);color:#fff;opacity:.9;text-wrap:pretty}
.contact__actions{display:flex;flex-wrap:wrap;gap:10px;padding-top:6px}
.contact__act{display:inline-flex;align-items:center;gap:10px;height:54px;border-radius:999px;font:500 15px/1 var(--sans);white-space:nowrap;transition:background .2s}
.contact__act svg{flex:none}
.contact__act--white{padding:0 24px;background:#fff;color:var(--encre);font-size:15.5px}
.contact__act--white:hover{background:var(--creme);color:var(--encre)}
.contact__act--ghost{padding:0 22px;border:1px solid rgba(255,255,255,.45);color:#fff}
.contact__act--ghost:hover{background:rgba(255,255,255,.1);color:#fff}

/* Formulaire + coordonnées */
.contact__body{max-width:1360px;margin:0 auto;padding:clamp(40px,6vw,88px) var(--gutter) clamp(56px,8vw,120px);display:flex;flex-wrap:wrap;gap:clamp(20px,3vw,40px);align-items:flex-start}
.contact__card{flex:1.6 1 480px;min-width:0;border-radius:28px;border:1px solid var(--lin);padding:clamp(20px,2.8vw,40px)}
.contact__form{display:flex;flex-direction:column;gap:20px}
.contact__form[hidden]{display:none}
.contact__h2{font:400 clamp(26px,2.8vw,38px)/1.08 var(--serif);color:var(--encre)}
.contact__subject{display:flex;flex-direction:column;gap:10px}
.contact__lbl{font:500 13.5px/1.2 var(--sans);color:var(--encre)}
.contact__chips{display:flex;flex-wrap:wrap;gap:8px}
.contact__chip{height:44px;padding:0 18px;border-radius:999px;border:1px solid var(--lin);background:#fff;color:var(--encre);font:400 14.5px/1 var(--sans);cursor:pointer;transition:border-color .2s,background .2s,color .2s}
.contact__chip:hover{border-color:var(--sable)}
.contact__chip[aria-pressed="true"]{border-color:var(--encre);background:var(--encre);color:#fff;font-weight:500}
.contact__hint{display:flex;gap:14px;align-items:center;padding:16px 18px;border-radius:20px;background:var(--creme);color:var(--encre);transition:background .2s}
.contact__hint:hover{background:var(--lin);color:var(--encre)}
.contact__hint[hidden]{display:none}
.contact__hint > span{flex:1;display:flex;flex-direction:column;gap:4px}
.contact__hint svg{flex:none}
.contact__hint-t{font:500 14.5px/1.3 var(--sans)}
.contact__hint-d{font:400 13.5px/1.4 var(--sans);color:rgba(27,43,63,.8)}
.contact__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:12px}
.contact__field{display:flex;flex-direction:column;gap:9px;min-width:0}
.contact__input{height:56px;font-size:15.5px}
textarea.contact__input{height:auto;min-height:0;line-height:1.5}
.contact__consent{display:flex;flex-direction:column;gap:10px;padding:14px 16px;border-radius:16px;background:var(--creme)}
.contact__consent-t{font:500 13.5px/1.3 var(--sans);color:var(--encre)}
.contact__consent-opt{font-weight:400;color:rgba(27,43,63,.7)}
.contact__check{display:flex;gap:12px;align-items:flex-start;cursor:pointer;font:400 13.5px/1.5 var(--sans);color:var(--encre-86)}
.contact__check input{flex:none;width:20px;height:20px;margin:0;accent-color:var(--terracotta)}
.contact__consent-n{font:400 12.5px/1.5 var(--sans);color:rgba(27,43,63,.72)}
.contact__legal{font:400 13px/1.55 var(--sans);color:var(--encre-78);text-wrap:pretty}
.contact__legal a{color:var(--bleu);text-decoration:underline;text-underline-offset:3px}
.contact__err{display:flex;align-items:center;gap:10px;font:400 14px/1.4 var(--sans);color:var(--encre)}
.contact__err[hidden]{display:none}
.contact__err-dot{flex:none;width:8px;height:8px;border-radius:50%;background:var(--terracotta)}
.contact__submit{align-self:flex-start}

/* Confirmation */
.contact__done{display:flex;flex-direction:column;gap:18px}
.contact__done[hidden]{display:none}
.contact__done-ico{width:60px;height:60px;border-radius:50%;background:var(--lin);color:var(--bleu);display:flex;align-items:center;justify-content:center}
.contact__done-h2{font:400 clamp(28px,3vw,40px)/1.08 var(--serif);color:var(--encre)}
.contact__done-p{font:400 15.5px/1.6 var(--sans);color:rgba(27,43,63,.84)}
.contact__done-acts{display:flex;flex-wrap:wrap;gap:10px;padding-top:6px}
.contact__btn{height:52px}
.contact__btn.btn--dark{padding-left:22px}
.contact__btn .btn__circle{width:40px;height:40px}

/* Colonne agence */
.contact__aside{flex:1 1 300px;min-width:0;display:flex;flex-direction:column;gap:12px}
.contact__photo{position:relative;aspect-ratio:4 / 3;border-radius:26px;overflow:hidden;background:var(--lin)}
.contact__photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 40%}
.contact__agence{border-radius:26px;background:var(--creme);padding:clamp(22px,2.4vw,30px);display:flex;flex-direction:column}
.contact__agence-t{font:400 24px/1.15 var(--serif);color:var(--encre);padding-bottom:16px}
.contact__row{display:flex;align-items:center;gap:12px;padding:14px 0;border-top:1px solid var(--lin);color:var(--encre)}
.contact__row:hover{color:var(--bleu)}
.contact__row svg{flex:none}
.contact__row--addr{align-items:flex-start;font:400 15px/1.5 var(--sans)}
.contact__row--addr svg{margin-top:2px}
.contact__map{position:relative;aspect-ratio:4/3;border-radius:26px;overflow:hidden;background:var(--lin)}
.contact__map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.contact__row--hours{align-items:flex-start;font:400 15px/1.5 var(--sans)}
.contact__row--hours:hover{color:var(--encre)}
.contact__row--hours svg{margin-top:2px}
.contact__row--tel{font:500 17px/1 var(--sans)}
.contact__row--mail{font:400 15.5px/1 var(--sans)}
.contact__row--wa svg{flex:none}
.contact__social{display:flex;gap:10px;padding-top:16px;border-top:1px solid var(--lin)}
.contact__social a{width:44px;height:44px;border-radius:50%;border:1px solid var(--sable);display:flex;align-items:center;justify-content:center;color:var(--encre);transition:background .2s,border-color .2s,color .2s}
.contact__social a:hover{background:var(--encre);border-color:var(--encre);color:#fff}
