/* Spiritum — Me prévenir du retour en stock */
.spa{--spa-wine:#6e1e2b;--spa-ink:#141414;--spa-muted:#5c5650;--spa-line:#e8e2d8;--spa-cream:#f6f0e6;margin:14px 0 6px}
.spa-open{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--spa-wine);background:#fff;color:var(--spa-wine);border-radius:6px;padding:11px 16px;font:inherit;font-weight:600;cursor:pointer;width:100%;justify-content:center}
.spa-open:hover,.spa-open:focus-visible{background:var(--spa-wine);color:#fff}
.spa-open .material-icons,.spa-done .material-icons{font-size:20px}
.spa-done{display:flex;align-items:center;gap:8px;margin:0;padding:10px 14px;border-radius:6px;background:var(--spa-cream);color:var(--spa-ink);font-size:14px}
.spa-done[hidden],.spa-open[hidden]{display:none}
html.spa-lock{overflow:hidden}
.spa-modal{position:fixed;inset:0;z-index:1060;background:rgba(20,20,20,.55);display:flex;align-items:center;justify-content:center;padding:16px}
.spa-modal[hidden]{display:none}
.spa-box{--spa-wine:#6e1e2b;--spa-muted:#5c5650;--spa-line:#e8e2d8;position:relative;background:#fff;color:#141414;border-radius:12px;box-shadow:0 18px 50px rgba(20,20,20,.3);width:100%;max-width:440px;max-height:calc(100vh - 32px);overflow:auto;padding:24px 24px 18px}
.spa-x{position:absolute;top:10px;right:12px;border:0;background:none;font-size:28px;line-height:1;color:var(--spa-muted);cursor:pointer;padding:4px}
.spa-kicker{margin:0 0 4px;font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--spa-wine);font-weight:700}
.spa-title{margin:0 28px 8px 0;font-family:Fraunces,georgia,serif;font-size:21px;line-height:1.25;font-weight:600}
.spa-lead{margin:0 0 14px;color:var(--spa-muted);font-size:14.5px}
.spa-form{display:flex;flex-direction:column;gap:6px}
.spa-label{font-weight:600;font-size:14px;margin:6px 0 0}
.spa-opt{font-weight:400;color:var(--spa-muted)}
.spa-check{display:flex;align-items:center;gap:8px;margin:8px 0 0;font-size:14px;cursor:pointer}
.spa-check input{width:18px;height:18px;accent-color:var(--spa-wine)}
.spa-phone[hidden]{display:none}
.spa-phone{display:flex;flex-direction:column;gap:6px}
.spa-qty{max-width:120px}
.spa-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.spa-err{margin:6px 0 0;color:#a3122a;font-size:13.5px}
.spa-err[hidden]{display:none}
.spa-submit{margin-top:12px;width:100%;background:var(--spa-wine)!important;border-color:var(--spa-wine)!important}
.spa-legal{margin:10px 0 0;font-size:12px;color:var(--spa-muted)}
.spa-legal a{color:inherit;text-decoration:underline}
