/* Carte Mood – Crousty Mood. Pastels de la marque, encre cacao ; jamais de rose. Téléphone d'abord. */
@font-face{font-family:"Crousty Display";src:url(/a/crousty-display.woff2) format("woff2");font-display:swap}
@font-face{font-family:Montserrat;font-weight:500;src:url(/a/montserrat-500.woff2) format("woff2");font-display:swap}
@font-face{font-family:Montserrat;font-weight:700;src:url(/a/montserrat-700.woff2) format("woff2");font-display:swap}
@font-face{font-family:Montserrat;font-weight:800;src:url(/a/montserrat-800.woff2) format("woff2");font-display:swap}
:root{--encre:#2A1A12;--vanille:#FFF4E3;--blanc:#FFFDF8;--beurre:#FFE8A3;--beurre2:#F7CB5A;--menthe:#C3EBD6;
  --lilas:#DDD0F7;--ciel:#C8E4F7;--miel:#C9821A;--piment:#E2662A;--gris:#6B5548}
*{box-sizing:border-box;margin:0}
html{-webkit-text-size-adjust:100%}
html,body{overflow-x:hidden}
body{font-family:Montserrat,system-ui,sans-serif;font-weight:500;color:var(--encre);background:var(--vanille);
  min-height:100vh;line-height:1.5}
main{max-width:460px;margin:0 auto;padding:20px 18px 40px}
h1,h2,.titre{font-family:"Crousty Display",Montserrat,sans-serif;font-weight:400;letter-spacing:.01em;line-height:1.05}
h1{font-size:2.3rem}
h2{font-size:1.5rem;margin-top:22px}
p{margin-top:8px}
a{color:var(--encre)}
.haut{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.haut img{width:64px;height:auto}
.haut .marque{font-family:"Crousty Display",sans-serif;font-size:1.25rem}
.visage{display:block;margin:6px auto 0;width:150px;height:auto;animation:flotte 3.2s ease-in-out infinite}
@keyframes flotte{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-8px) rotate(2deg)}}
@media (prefers-reduced-motion:reduce){.visage{animation:none}}
.bloc{background:var(--blanc);border-radius:22px;padding:18px;margin-top:16px;box-shadow:0 6px 0 rgba(42,26,18,.08)}
label{display:block;font-weight:700;margin-top:14px}
input[type=text],input[type=email],input[type=tel],input[type=password],input[inputmode]{width:100%;font:inherit;font-size:1.05rem;
  padding:13px 14px;margin-top:6px;border:2px solid var(--encre);border-radius:14px;background:#fff;color:var(--encre)}
input:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid var(--miel);outline-offset:2px}
.case{display:flex;gap:10px;align-items:flex-start;margin-top:16px;font-weight:500}
.case label{margin-top:0;font-weight:500}
.case input{width:22px;height:22px;flex:none;margin-top:2px;accent-color:var(--encre)}
button,.bouton{display:block;width:100%;font:inherit;font-weight:800;font-size:1.05rem;text-align:center;text-decoration:none;
  padding:15px;margin-top:18px;border:0;border-radius:16px;background:var(--encre);color:var(--beurre);cursor:pointer}
button.doux{background:var(--beurre);color:var(--encre)}
button.alerte{background:var(--blanc);color:var(--encre);border:2px solid var(--encre)}
button:disabled{opacity:.45;cursor:default}
.piege{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.message{margin-top:12px;font-weight:700;min-height:1.5em}
.message.ok{color:#1F6B45}
.message.ko{color:#9C3A0E}
.petit{font-size:.85rem;color:var(--gris)}
.tampons{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:14px}
.tampon{aspect-ratio:1;min-width:0;overflow:hidden;border-radius:50%;border:2px dashed rgba(42,26,18,.35);display:flex;align-items:center;justify-content:center;
  font-weight:800;color:rgba(42,26,18,.45);background:var(--vanille)}
.tampon.plein{border:2px solid var(--encre);background:var(--beurre)}
.tampon.plein img{width:78%;height:auto}
.tampon.cadeau{border:2px solid var(--encre);background:var(--menthe);color:var(--encre);font-size:.58rem;text-align:center;line-height:1.05;padding:1px}
.tampon.cadeau.pret{background:var(--beurre2);animation:pulse 1.6s ease-in-out infinite}
@keyframes pulse{50%{transform:scale(1.07)}}
.compte{font-family:"Crousty Display",sans-serif;font-size:1.7rem;margin-top:10px}
.qr{display:block;margin:12px auto 0;width:220px;height:220px;background:#fff;padding:10px;border-radius:16px}
.code{font-family:Montserrat,monospace;font-weight:800;font-size:1.35rem;letter-spacing:.18em;text-align:center;margin-top:8px}
.pret-banniere{background:var(--beurre2);border-radius:16px;padding:12px 14px;font-weight:800;margin-top:14px;text-align:center}
.hors-ligne{background:var(--ciel);border-radius:12px;padding:8px 12px;margin-top:10px;font-size:.9rem}
footer{margin-top:28px;font-size:.85rem;color:var(--gris);text-align:center}
footer a{color:var(--gris)}
/* staff */
.staff{background:var(--menthe)}
video{width:100%;border-radius:16px;background:#000;margin-top:10px;aspect-ratio:4/3;object-fit:cover}
.fiche{background:var(--blanc);border-radius:18px;padding:16px;margin-top:14px}
.fiche .prenom{font-family:"Crousty Display",sans-serif;font-size:1.8rem}
.rang{display:flex;gap:10px}
.rang button{margin-top:12px}
.cache{display:none!important}
.texte h1{font-size:1.9rem}
.texte ul{padding-left:20px;margin-top:8px}
.texte li{margin-top:4px}
.tampon.cadeau{flex-direction:column;font-size:.8rem}
.tampon.cadeau small{font-size:.56rem;font-weight:800;text-transform:uppercase}
.tab{width:100%;border-collapse:collapse;margin-top:10px;font-size:.92rem}
.tab th,.tab td{border:1px solid rgba(42,26,18,.2);padding:6px 8px;text-align:left;vertical-align:top}
.tab th{background:var(--beurre)}
