/* PIXEART · machine à leads : formulaire rapide + barre de contact mobile
   Charte PixeImmo : nuit #0D1220 · or #D9AE2B · ivoire #F1EDE2 — aucun dégradé. */

/* ---------- Formulaire rapide ---------- */
.pxq,.pxq *,.pxb,.pxb *{box-sizing:border-box}
.pxq{background:#1B2440;border:1px solid rgba(217,174,43,.35);border-radius:22px;padding:clamp(20px,3.4vw,30px);color:#F1EDE2;text-align:left;font-family:inherit;scroll-margin-top:96px}
.pxq-h{margin:0 0 16px}
.pxq-h b{display:block;font-size:clamp(19px,2.4vw,22px);line-height:1.2;letter-spacing:-.01em;color:#F1EDE2;font-weight:800}
.pxq-h span{display:block;margin-top:5px;font-size:13.5px;line-height:1.45;color:#B4B0A4;font-weight:500}
.pxq .pxq-f{display:grid;gap:12px;margin:0}
.pxq .pxq-f label{display:block;margin:0 0 6px;font-size:12.5px;font-weight:700;letter-spacing:.02em;color:#B4B0A4}
.pxq .pxq-f input[type=text],.pxq .pxq-f input[type=tel],.pxq .pxq-f input[type=email]{display:block;width:100%;min-height:50px;margin:0;padding:12px 14px;border-radius:12px;border:1.5px solid rgba(241,237,226,.22);background:#0D1220;color:#F1EDE2;font:inherit;font-size:16px;line-height:1.3;box-shadow:none;-webkit-appearance:none;appearance:none}
.pxq .pxq-f input::placeholder{color:#8E8A80;opacity:1}
.pxq .pxq-f input:focus{outline:none;border-color:#D9AE2B;box-shadow:0 0 0 3px rgba(217,174,43,.28)}
.pxq .pxq-f input[aria-invalid=true]{border-color:#F08A7C}
.pxq .pxq-hp{position:absolute!important;left:-9999px!important;top:auto!important;width:1px!important;height:1px!important;margin:0!important;padding:0!important;border:0!important;opacity:0!important;overflow:hidden!important}
.pxq .pxq-go{display:inline-flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:54px;margin:4px 0 0;padding:14px 26px;border:0;border-radius:100px;background:#D9AE2B;color:#0D1220;font:inherit;font-weight:800;font-size:16.5px;line-height:1.2;cursor:pointer;box-shadow:0 12px 28px -14px rgba(217,174,43,.6);transition:transform .2s,box-shadow .2s}
.pxq .pxq-go:hover{transform:translateY(-2px);box-shadow:0 18px 34px -14px rgba(217,174,43,.7)}
.pxq .pxq-go:focus-visible{outline:3px solid #F1EDE2;outline-offset:3px}
.pxq .pxq-go[disabled]{opacity:.75;cursor:wait;transform:none}
.pxq p.pxq-note{margin:12px 0 0;max-width:none;font-size:12.5px;line-height:1.5;color:#B4B0A4;text-align:center;opacity:1}
.pxq p.pxq-note a{color:#D9AE2B;text-decoration:underline;text-underline-offset:2px}
p.pxq-or,.cta-band p.pxq-or{margin:16px auto 0;max-width:none;text-align:center;font-size:14.5px;line-height:1.7;color:#B4B0A4;opacity:1;font-weight:500}
p.pxq-or a,.cta-band p.pxq-or a{color:#F1EDE2;font-weight:700;text-decoration:none;border-bottom:1px solid rgba(217,174,43,.65);white-space:nowrap}
p.pxq-or a:hover{color:#D9AE2B}
.pxq .pxq-msg{margin:0;font-size:14px;line-height:1.5;color:#F1EDE2}
.pxq .pxq-msg:empty{display:none}
.pxq .pxq-msg.err{margin-top:12px;padding:11px 14px;border-radius:12px;background:rgba(240,138,124,.12);border:1px solid rgba(240,138,124,.45);color:#FFD9D3;text-align:left}
.pxq .pxq-msg.err a{color:#F1EDE2;font-weight:700;text-decoration:underline;text-underline-offset:2px}
.pxq-ok{text-align:center}
.pxq-ok .ck{display:flex;align-items:center;justify-content:center;width:52px;height:52px;margin:0 auto 14px;border-radius:50%;background:#D9AE2B;color:#0D1220}
.pxq-ok .ck svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.pxq-ok h3{margin:0 0 8px;font-size:22px;line-height:1.2;color:#F1EDE2;font-weight:800;letter-spacing:-.01em}
.pxq-ok p{margin:0 0 8px;max-width:none;font-size:15px;line-height:1.55;color:#B4B0A4;opacity:1;text-align:center}
.pxq-ok p strong{color:#F1EDE2}
.pxq-ok .acts{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:16px}
.pxq-ok .acts a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border-radius:100px;font-weight:700;font-size:14.5px;text-decoration:none}
.pxq-ok .acts .a1{background:#D9AE2B;color:#0D1220}
.pxq-ok .acts .a2{border:1.5px solid rgba(241,237,226,.3);color:#F1EDE2}

/* variante « bande » : à l'intérieur des .cta-band des pages intérieures (la bande fait déjà carte) */
.cta-band .pxq{max-width:960px;margin:28px auto 0;padding:0;background:transparent;border:0;border-radius:0}
.cta-band .pxq .pxq-h{display:none}
.cta-band .pxq .pxq-f{text-align:left}
@media(min-width:900px){
  .cta-band .pxq .pxq-f{grid-template-columns:1fr 1fr 1.25fr auto;align-items:end;gap:12px}
  .cta-band .pxq .pxq-go{width:auto;margin:0;white-space:nowrap}
}

/* variante « section contact » (accueil / devis) */
#contact .pxq{margin:0}

/* ---------- Barre de contact mobile ---------- */
.pxb{display:none}
@media(max-width:820px){
  .pxb{position:fixed;left:0;right:0;bottom:0;z-index:900;display:flex;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(8,11,20,.98);border-top:1px solid rgba(217,174,43,.3);box-shadow:0 -14px 30px -18px rgba(0,0,0,.75);transform:translateY(115%);transition:transform .28s cubic-bezier(.16,1,.3,1);font-family:inherit}
  .pxb.on{transform:none}
  .pxb a{flex:1 1 0;min-width:0;display:flex;align-items:center;justify-content:center;gap:7px;min-height:48px;padding:0 8px;border-radius:100px;font-weight:800;font-size:14px;line-height:1.05;text-align:center;text-decoration:none;color:#F1EDE2;-webkit-tap-highlight-color:transparent}
  .pxb a svg{flex:none;width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
  .pxb .c1{background:#D9AE2B;color:#0D1220}
  .pxb .c2{border:1.5px solid rgba(241,237,226,.32)}
  .pxb .c3{flex-grow:1.35;border:1.5px solid #D9AE2B;color:#D9AE2B}
  body.pxl{padding-bottom:calc(70px + env(safe-area-inset-bottom))}
  body.pxl .iris-fab{bottom:calc(78px + env(safe-area-inset-bottom))!important;right:12px!important;transition:opacity .2s,transform .2s}
  body.pxl .iris-fab .av img{width:68px!important}
  body.pxl.pxq-in .iris-fab{opacity:0;transform:translateY(16px);pointer-events:none}
  body:has(.iris-panel.open) .pxb{display:none}
  body.pxq-done .pxb .c3{display:none}
}
@media(max-width:360px){.pxb a{font-size:13px;gap:5px;padding:0 5px}.pxb a svg{display:none}}
@media(prefers-reduced-motion:reduce){.pxb{transition:none}.pxq .pxq-go{transition:none}}
@media print{.pxb{display:none!important}}
