/* CDB – Cartes cadeaux : encadré cliente « Vous avez une carte cadeau ? ». */
.cdb-cc-ma-carte { --cdb-cc-couleur: #8a6a5c; --cdb-cc-clair: #f6f1ee; background: var(--cdb-cc-clair); border-radius: 12px; padding: 1.1rem 1.3rem; margin: 0 auto 2rem; max-width: 760px; line-height: 1.5; }
.cdb-cc-ma-carte *, .cdb-cc-ma-carte *::before, .cdb-cc-ma-carte *::after { box-sizing: border-box; }
.cdb-cc-ma-carte [hidden] { display: none !important; }
.cdb-cc-ma-carte__tete strong { display: block; font-size: 1.1rem; }
.cdb-cc-ma-carte__tete span { opacity: .8; font-size: .95rem; }
.cdb-cc-ma-carte__form { display: flex; gap: .5rem; margin-top: .7rem; }
.cdb-cc-ma-carte__form input { flex: 1; min-width: 0; padding: .7rem .85rem; border: 1px solid rgba(0,0,0,.18); border-radius: 8px; font: inherit; font-family: ui-monospace, Menlo, Consolas, monospace; letter-spacing: .06em; text-transform: uppercase; background: #fff; }
.cdb-cc-ma-carte__form button, .cdb-cc-ma-carte__bouton { text-decoration: none !important; display: inline-block; padding: .7rem 1.1rem; border: 0; border-radius: 999px; background: var(--cdb-cc-couleur); color: #fff !important; font: inherit; font-weight: 600; text-decoration: none; cursor: pointer; white-space: nowrap; }
.cdb-cc-ma-carte__form button:hover, .cdb-cc-ma-carte__bouton:hover { filter: brightness(.92); }
.cdb-cc-ma-carte__retour { margin: .7rem 0 0; font-size: .95rem; }
.cdb-cc-ma-carte__retour.is-erreur { color: #8a1c13; }
.cdb-cc-ma-carte__resultat { margin-top: .9rem; padding-top: .9rem; border-top: 1px solid rgba(0,0,0,.08); }
.cdb-cc-ma-carte__resultat p { margin: 0 0 .6rem; }
.cdb-cc-ma-carte__bonjour { font-weight: 600; }
.cdb-cc-ma-carte__alerte { color: #8a1c13; }
.cdb-cc-ma-carte__solde { font-size: 1.1rem; }
.cdb-cc-ma-carte__soins { list-style: none; margin: 0 0 .8rem; padding: 0; }
.cdb-cc-ma-carte__soins li { display: flex; justify-content: space-between; align-items: center; gap: .8rem; padding: .55rem 0; border-bottom: 1px solid rgba(0,0,0,.06); }
.cdb-cc-ma-carte__soins li.is-fait { opacity: .55; }
.cdb-cc-ma-carte__soins .cdb-cc-ma-carte__bouton { padding: .45rem .9rem; font-size: .92rem; }
.cdb-cc-ma-carte__note { font-size: .88rem; opacity: .75; }
.cdb-cc-ma-carte__offrir { margin: .8rem 0 0; font-size: .92rem; }
@media (max-width: 520px) { .cdb-cc-ma-carte__soins li { flex-direction: column; align-items: flex-start; } }
.cdb-cc-ma-carte__resultat > .cdb-cc-ma-carte__bouton { margin: .2rem 0 .7rem; }
