/* Pages commande, remerciement et pages légales : même univers que l'accueil. */
:root{
  --bg:#120F16; --bg-2:#1B1622; --bg-3:#241D2D; --line:rgba(244,239,234,.12);
  --ink:#F4EFEA; --muted:#B4ABBA; --accent:#E0461F; --accent-hi:#FF6A3D; --gold:#F2A93B; --violet:#7C6CF2;
  --ok:#5FD08E; --err:#FF8A6B;
  --f-serif:'Instrument Serif','Iowan Old Style',Georgia,serif;
  --f-display:'Stack Sans Headline','Helvetica Neue',Arial,sans-serif;
  --f-text:'Stack Sans Text','Helvetica Neue',Arial,sans-serif;
  --gl:max(clamp(16px,2.4vw,40px), env(safe-area-inset-left,0px));
  --gr:max(clamp(16px,2.4vw,40px), env(safe-area-inset-right,0px));
  --ease:cubic-bezier(.2,.8,.2,1);
  color-scheme:dark;
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--f-text);font-size:1.0625rem;line-height:1.55;-webkit-font-smoothing:antialiased;
  background-image:radial-gradient(60vw 60vw at 100% 0%,rgba(224,70,31,.16),rgba(224,70,31,0) 60%),radial-gradient(50vw 50vw at 0% 100%,rgba(124,108,242,.16),rgba(124,108,242,0) 60%);background-attachment:fixed;min-height:100vh;display:flex;flex-direction:column}
a{color:inherit}
h1,h2,h3{margin:0;font-family:var(--f-display);font-weight:300;letter-spacing:-.025em;line-height:1.05;text-wrap:balance}
.serif{font-family:var(--f-serif);font-style:italic;font-weight:400;color:var(--gold)}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:10px}
.swrap{max-width:1180px;margin:0 auto;padding-left:var(--gl);padding-right:var(--gr)}
.sbar{padding-top:calc(env(safe-area-inset-top,0px) + 18px)}
.sbar-in{display:flex;justify-content:space-between;align-items:center;gap:16px;height:60px}
.smark{display:flex;align-items:center;gap:10px;text-decoration:none;font:500 1.25rem/1 var(--f-display)}
.smark i{width:28px;height:28px;border-radius:50%;background:radial-gradient(circle at 35% 30%,var(--accent-hi),var(--accent) 60%,#8f2410);display:grid;place-items:center}
.smark svg{width:12px;height:14px}
.sback{color:var(--muted);text-decoration:none;font-size:.95rem}
.sback:hover{color:var(--ink)}
.smain{flex:1;padding-block:40px 100px}
.sfoot{border-top:1px solid var(--line);padding-block:28px 36px;font-size:.9rem;color:var(--muted)}
.sfoot .swrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px}
.sfoot nav{display:flex;flex-wrap:wrap;gap:18px}
.sfoot a{text-decoration:none}.sfoot a:hover{color:var(--ink)}

.page-title{font-size:clamp(2.6rem,1.4rem + 3.6vw,4.6rem);margin-bottom:12px}
.lead{color:var(--muted);max-width:52ch}

/* commande */
.co{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:28px;margin-top:40px;align-items:start}
.card{background:rgba(27,22,34,.82);border:1px solid var(--line);border-radius:28px;padding:clamp(20px,3vw,36px);backdrop-filter:blur(10px)}
.card h2{font-size:1.6rem;margin-bottom:20px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.full{grid-column:1 / -1}
.f{display:flex;flex-direction:column;gap:6px}
.f label{font-size:.88rem;color:var(--muted)}
.f input,.f select,.f textarea{width:100%;height:52px;padding:0 16px;border-radius:14px;border:1px solid var(--line);background:rgba(18,15,22,.7);color:var(--ink);font:400 1rem var(--f-text);transition:border-color .2s}
.f textarea{height:90px;padding:12px 16px;resize:vertical}
.f input:focus,.f select:focus,.f textarea:focus{outline:none;border-color:var(--gold)}
.check{display:flex;gap:12px;align-items:flex-start;margin-top:18px;font-size:.95rem;color:var(--muted)}
.check input{width:20px;height:20px;margin-top:2px;accent-color:var(--accent)}
.summary{position:sticky;top:24px}
.line{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}
.line .q{display:flex;align-items:center;gap:8px}
.qty{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px}
.qty button{width:34px;height:34px;border:0;background:transparent;color:var(--ink);font-size:1.1rem;cursor:pointer;border-radius:50%}
.qty button:hover{background:rgba(244,239,234,.08)}
.qty span{min-width:22px;text-align:center;font-variant-numeric:tabular-nums}
.tot{display:flex;justify-content:space-between;padding-top:12px;color:var(--muted)}
.tot.big{color:var(--ink);font:500 1.5rem/1.2 var(--f-display);padding-top:18px}
.num{font-variant-numeric:tabular-nums}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;height:60px;width:100%;margin-top:22px;padding:0 28px;border:0;border-radius:999px;background:var(--accent);color:#fff;font:500 1.0625rem/1 var(--f-display);cursor:pointer;text-decoration:none;transition:background .3s}
.btn:hover{background:var(--accent-hi)}
.btn[disabled]{opacity:.5;cursor:wait}
.btn.ghost{background:rgba(244,239,234,.08);border:1px solid var(--line);color:var(--ink);width:auto}
.msg{min-height:1.4em;margin-top:12px;font-size:.95rem;color:var(--err)}
.secure{display:flex;gap:10px;align-items:center;justify-content:center;margin-top:14px;font-size:.85rem;color:var(--muted)}
.empty{text-align:center;padding:40px 0}
@media (max-width:900px){.co{grid-template-columns:minmax(0,1fr)}.summary{position:static;order:-1}}
@media (max-width:560px){.grid2{grid-template-columns:minmax(0,1fr)}}

/* merci */
.thanks{max-width:640px;margin:40px auto 0;text-align:center}
.seal{width:96px;height:96px;margin:0 auto 26px;border-radius:50%;display:grid;place-items:center;background:rgba(242,169,59,.15);color:var(--gold)}
.seal svg{width:44px;height:44px}
.seal.ok{background:rgba(95,208,142,.15);color:var(--ok)}
.seal.err{background:rgba(255,138,107,.15);color:var(--err)}
.spin{animation:spin 1.2s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.thanks .actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:28px}
.thanks .btn{width:auto}

/* pages légales */
.legal{max-width:760px}
.legal h2{font-size:1.6rem;margin:40px 0 12px}
.legal p,.legal li{color:#DCD4DE}
.legal .draft{border:1px dashed var(--gold);border-radius:16px;padding:14px 18px;color:var(--gold);font-size:.95rem;margin-top:24px}
