/* Boutique : promo, rassurance, inscription e-mail, pages légales (clair par défaut, s'adapte au thème Néon) */
.promo{margin:0 0 14px}.promo-toggle{background:none;border:0;padding:4px 0;color:var(--green,#276a5a);font:600 13px var(--mono,monospace);cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.promo-form{display:flex;gap:8px;margin-top:8px}.promo-form[hidden]{display:none}.promo-form input{flex:1;min-width:0;height:42px;padding:0 12px;border:1px solid var(--line,#c9ccbd);background:rgba(255,255,255,.08);color:inherit;font:600 14px var(--mono,monospace);letter-spacing:.08em;text-transform:uppercase;border-radius:10px}
.promo-form .btn{height:42px;padding:0 16px;gap:0}
.promo-msg{margin:8px 0 0;font-size:13px;min-height:1px}.promo-msg.ok{color:#2fbf8a}.promo-msg.bad{color:#ff6b8a}
.trust{display:flex;flex-wrap:wrap;gap:6px 14px;margin:14px 0 0;font:500 11.5px var(--mono,monospace);color:var(--muted,#6a7a74)}
.nl{display:flex;flex-wrap:wrap;gap:18px 40px;align-items:center;justify-content:space-between;max-width:1180px;margin:0 auto 40px;padding:28px 32px;border:1px solid var(--line,#ccc);border-radius:20px;background:var(--glass,rgba(0,0,0,.03))}
.next-up .nl{margin:18px 0 0;padding:16px 18px;border-radius:14px}
.nl h3{margin:0 0 4px;font:700 22px var(--head,inherit)}.nl p{margin:0;color:var(--muted,#6a7a74)}
.nl-form{display:grid;grid-template-columns:1fr auto;gap:10px;flex:1;min-width:280px;max-width:520px}
.nl-form input[type=email]{height:46px;padding:0 14px;border:1px solid var(--line,#c9ccbd);background:rgba(255,255,255,.08);color:inherit;border-radius:12px;font-size:15px}
.nl-ok{grid-column:1/-1;font-size:12px;color:var(--muted,#6a7a74);display:flex;gap:8px;align-items:flex-start;line-height:1.4}.nl-ok input{margin-top:2px}.nl-ok a{text-decoration:underline}
.nl-msg{grid-column:1/-1;font-size:13px}.nl-msg.ok{color:#2fbf8a}.nl-msg.bad{color:#ff6b8a}.hp{position:absolute!important;left:-9999px!important}
.legal-links{display:flex;gap:6px 18px;flex-wrap:wrap;font-size:12.5px}.legal-links a{color:inherit;opacity:.75;text-decoration:underline;text-underline-offset:3px}.legal-links a:hover{opacity:1}
.footer .wrap{flex-wrap:wrap;gap:10px 24px}
.legal-page{max-width:820px;padding-top:56px;padding-bottom:80px;line-height:1.75}.legal-page h1{font-size:clamp(34px,5vw,54px);margin:14px 0 26px}.legal-page h2{font:700 20px var(--head,inherit);margin:32px 0 8px}.legal-page p,.legal-page li{color:var(--ink,#222);opacity:.92}.legal-page ul{padding-left:20px}
.legal-page mark{background:#ffe27a;color:#3a2a00;padding:0 4px;border-radius:4px}.shop-notice{background:rgba(255,95,162,.14);border:1px solid rgba(255,95,162,.6);padding:12px 14px;border-radius:12px;margin-bottom:24px}
.faq details{border:1px solid var(--line,#ccc);border-radius:14px;margin:10px 0;background:var(--glass,rgba(0,0,0,.02))}.faq summary{cursor:pointer;padding:14px 18px;font-weight:700;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:"+";float:right;font-size:20px;line-height:1}.faq details[open] summary::after{content:"−"}.faq details p{margin:0;padding:0 18px 16px}
@media(max-width:600px){.nl-form{grid-template-columns:1fr}}
