/* Crée Ma Chanson — bundle CSS généré automatiquement. Ne pas éditer. */

/* source: base.css */
:root {
    --bg: #061127;
    --bg-2: #091a38;
    --pink: #ff2f87;
    --orange: #ff9857;
    --paper: #f8f2ee;
    --text: #ffffff;
    --muted: #bfc9db;
    --line: rgba(255, 255, 255, 0.11);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--bg); color: var(--text); font-family: Arial, Helvetica, sans-serif; overflow-x: hidden; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
img { display: block; max-width: 100%; }

.home-shell, .nav-shell, .section, .form-wrap {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

.section { padding: 52px 0; }
.muted { color: var(--muted); }


/* source: header.css */
/* Pages secondaires : le visuel complet de l'accueil occupe sa vraie place dans le flux.
   Le contenu commence donc seulement APRES le visuel : aucune superposition. */
.visual-header{position:relative;z-index:50;width:100%;aspect-ratio:2/3;height:auto;overflow:hidden;background:#061127;border-bottom:1px solid rgba(255,103,151,.22)}
.visual-header-art{position:absolute;z-index:0;inset:0;width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}
.visual-menu-toggle,.poster-menu-toggle{position:absolute;z-index:55;color:transparent;background:transparent;border:0;cursor:pointer;padding:0;font-size:0}
.visual-menu-toggle{right:2.4%;top:1.4%;width:9.5%;height:6.5%}
.visual-nav{display:none;position:absolute;z-index:80;right:16px;top:8.5%;width:min(310px,calc(100vw - 32px));padding:12px;background:rgba(6,17,39,.98);border:1px solid rgba(255,126,154,.28);border-radius:16px;box-shadow:0 18px 50px rgba(0,0,0,.5);flex-direction:column;gap:3px}
.visual-nav.open{display:flex}
.visual-nav a{display:block;padding:12px 14px;border-radius:10px;color:#f5f6fb;font-weight:700}
.visual-nav a:hover,.visual-nav a:focus{background:rgba(255,255,255,.08);color:#ff9aae}
.site-footer{border-top:1px solid rgba(255,255,255,.08);padding:35px 0;color:#aeb9cd}
.footer-inner{width:min(1180px,calc(100% - 40px));margin:auto;display:grid;grid-template-columns:1fr auto 1fr;gap:30px;align-items:center}
.footer-inner>div:last-child{text-align:right}.legal{display:flex;gap:15px}
@media(max-width:760px){.visual-menu-toggle{right:7%;top:1.05%;width:16%;height:7.5%;min-width:52px;min-height:52px;touch-action:manipulation}.visual-nav{right:10px;top:8.2%}.footer-inner{grid-template-columns:1fr;text-align:center}.footer-inner>div:last-child{text-align:center}.legal{justify-content:center}}

/* Zone cliquable sur le bouton CRÉE MA CHANSON déjà dessiné dans le grand header. */
.visual-header-cta{position:absolute;z-index:54;left:30%;top:45.2%;width:40%;height:6.8%;border-radius:999px}
.visual-header-cta:focus-visible{outline:3px solid rgba(255,255,255,.9);outline-offset:3px}
@media(max-width:760px){.visual-header-cta{left:23.5%;top:45.2%;width:53%;height:6.8%}}
.footer-payments{display:grid;gap:8px}.footer-payments>span{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#d6deee}.payment-marks{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.payment-marks>span{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:4px 9px;border-radius:7px;background:#fff;color:#10213f;font-weight:800;font-size:12px;line-height:1}.pay-visa{font-style:italic;font-size:15px!important}.pay-paypal{font-style:italic}.pay-mastercard{gap:0;position:relative;padding-left:32px!important}.pay-mastercard i{position:absolute;width:17px;height:17px;border-radius:50%;background:#d74334;left:7px}.pay-mastercard i:nth-child(2){background:#e89b25;left:16px;opacity:.92}.pay-mastercard b{font-size:10px;font-weight:800}

/* Mobile v2 — hamburger réellement plus grand et éloigné du coin du navigateur. */
@media(max-width:760px){
  .visual-menu-toggle{
    right:10.5%;
    top:2.15%;
    width:64px;
    height:64px;
    min-width:64px;
    min-height:64px;
    color:#fff;
    font-size:40px;
    line-height:1;
    display:flex;
    align-items:center;
    justify-content:center;
    text-indent:0;
    border-radius:14px;
    background:rgba(6,17,39,.38);
    -webkit-tap-highlight-color:transparent;
  }
  .visual-nav{right:18px;top:9.4%}
}

/* Mobile v3 — masque le hamburger imprimé dans le visuel et garde un seul vrai bouton. */
@media(max-width:760px){
  .visual-header::after{
    content:"";
    position:absolute;
    z-index:54;
    right:0;
    top:0;
    width:10.5%;
    height:4.7%;
    background:rgba(6,17,39,.96);
    border-bottom-left-radius:14px;
    pointer-events:none;
  }
  .visual-menu-toggle{
    right:13.5%;
    top:2.7%;
    width:62px;
    height:62px;
    min-width:62px;
    min-height:62px;
    font-size:38px;
    border:1px solid rgba(255,255,255,.28);
    background:rgba(6,17,39,.88);
    box-shadow:0 8px 24px rgba(0,0,0,.38);
  }
  .visual-nav{right:18px;top:10.2%}
}

/* Mobile v4 — un seul bouton, rapproché du bord droit, sans cache rectangulaire. */
@media(max-width:760px){
  .visual-header::after{display:none!important;content:none!important}
  .visual-menu-toggle{
    right:2.6%!important;
    top:2.7%!important;
    width:62px!important;
    height:62px!important;
    min-width:62px!important;
    min-height:62px!important;
    font-size:38px!important;
    background:rgba(6,17,39,.90)!important;
    border:1px solid rgba(255,255,255,.28)!important;
    box-shadow:0 8px 24px rgba(0,0,0,.38)!important;
  }
  .visual-nav{right:14px!important;top:10.2%!important}
}

/* Menu mobile CMC — zone tactile fiable sur mobile. */
@media(max-width:760px){
  .visual-menu-toggle{pointer-events:auto!important;touch-action:manipulation!important;-webkit-user-select:none;user-select:none;cursor:pointer!important;}
  .visual-nav{pointer-events:auto;}
}


/* source: home.css */
/* ACCUEIL — design validé */
.poster-hero{background:#061127;overflow:hidden;margin:0;padding:0}
.poster-wrap{position:relative;width:min(1024px,100%);margin:0 auto;overflow:hidden}
.poster-wrap>img{display:block;width:100%;height:auto}
.poster-cta{position:absolute;left:30%;top:45.2%;width:40%;height:6.8%;border-radius:999px}

@media not all and (min-width: 901px) {
.moments{padding:76px 0;background:radial-gradient(circle at 8% 30%,rgba(29,67,160,.30),transparent 28%),radial-gradient(circle at 90% 20%,rgba(146,31,117,.24),transparent 28%),#061127}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .moments{padding:76px 0;background:radial-gradient(circle at 8% 30%,rgba(29,67,160,.30),transparent 28%),radial-gradient(circle at 90% 20%,rgba(146,31,117,.24),transparent 28%),#061127}
}
.script-title{margin:0 0 14px;text-align:center;font-family:Georgia,serif;font-style:italic;font-size:46px;line-height:1.08;color:#fff}
.script-title span{color:#ff6d91}.section-lead{text-align:center;color:#d6ddeb;font-size:19px;margin:0 0 38px}
@media not all and (min-width: 901px) {
.occasion-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:1040px;margin:auto}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .occasion-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:1040px;margin:auto}
}
@media not all and (min-width: 901px) {
.occasion{display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(137,164,210,.35);border-radius:22px;background:linear-gradient(180deg,#102448,#091a36);box-shadow:0 18px 40px rgba(0,0,0,.22);text-decoration:none;color:#fff}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .occasion{display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(137,164,210,.35);border-radius:22px;background:linear-gradient(180deg,#102448,#091a36);box-shadow:0 18px 40px rgba(0,0,0,.22);text-decoration:none;color:#fff}
}
@media not all and (min-width: 901px) {
.occasion-media{width:100%;aspect-ratio:4/3;overflow:hidden;background:#09162d}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .occasion-media{width:100%;aspect-ratio:4/3;overflow:hidden;background:#09162d}
}
@media not all and (min-width: 901px) {
.occasion-media img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .occasion-media img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
}
@media not all and (min-width: 901px) {
.occasion-copy{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:108px;padding:16px;text-align:center}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .occasion-copy{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:108px;padding:16px;text-align:center}
}
@media not all and (min-width: 901px) {
.occasion-copy b{font-size:17px}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .occasion-copy b{font-size:17px}
}@media not all and (min-width: 901px) {
.occasion-copy small{margin-top:8px;color:#dbe3f2;font-size:13px;line-height:1.4}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .occasion-copy small{margin-top:8px;color:#dbe3f2;font-size:13px;line-height:1.4}
}

.prices{padding:84px 0 92px;background:radial-gradient(circle at 50% 0,rgba(117,36,122,.22),transparent 32%),#07142c}
.prices .eyebrow{text-align:center;color:#ff8a9d;letter-spacing:.16em;font-size:13px;font-weight:800;margin:0 0 12px}
.prices .script-title{font-size:44px;margin-bottom:42px}
.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:1040px;margin:0 auto 28px}
.price-card{position:relative;display:flex;flex-direction:column;align-items:center;padding:34px 24px 28px;text-align:center;border:1px solid rgba(148,171,216,.38);border-radius:26px;background:linear-gradient(160deg,#132a50 0%,#0a1832 72%);box-shadow:0 20px 48px rgba(0,0,0,.28);overflow:visible}
.price-card.featured{border:2px solid #ff6c91;box-shadow:0 20px 55px rgba(255,77,132,.20)}
.price-icon{font-size:34px;line-height:1;margin-bottom:8px}.price-card h3{margin:6px 0 8px;font-size:27px;color:#fff}.price{font-size:58px;line-height:1;font-weight:900;background:linear-gradient(90deg,#ff5d94,#ffa066);-webkit-background-clip:text;background-clip:text;color:transparent;margin:10px 0 18px}.price sup{font-size:24px}.price-card p{margin:0 0 18px;color:#dbe3f1;font-size:16px;line-height:1.45}.delivery{margin-top:auto;margin-bottom:18px;font-size:14px;font-weight:800;color:#fff}.price-btn{display:flex;width:100%;min-height:52px;align-items:center;justify-content:center;padding:13px 15px;border-radius:999px;background:linear-gradient(90deg,#ff347f,#ff965f);box-shadow:0 8px 24px rgba(255,66,127,.25);color:#fff;text-decoration:none;font-size:13px;font-weight:900;letter-spacing:.03em}.badge{position:absolute;top:-15px;left:50%;transform:translateX(-50%);padding:8px 16px;border-radius:99px;background:linear-gradient(90deg,#ff347f,#ff925d);box-shadow:0 8px 22px rgba(255,60,120,.30);font-size:11px;font-weight:900;white-space:nowrap;color:#fff}
.express{max-width:1040px;margin:0 auto;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:20px 24px;border:1px solid rgba(255,137,97,.45);border-radius:22px;background:linear-gradient(90deg,rgba(255,63,126,.11),rgba(255,150,95,.08))}.express>span{font-size:34px}.express strong,.express small{display:block}.express strong{font-size:18px;color:#fff}.express small{margin-top:3px;color:#d7dfed;font-size:13px}.express>b{font-size:26px;color:#ff9a74;white-space:nowrap}

@media not all and (min-width: 901px) {
.testimonial{padding:64px 20px;text-align:center;background:radial-gradient(circle,#17295c,#061127 68%)}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .testimonial{padding:64px 20px;text-align:center;background:radial-gradient(circle,#17295c,#061127 68%)}
}blockquote{max-width:760px;margin:0 auto 18px;font-size:20px;line-height:1.6}.stars{margin-top:8px;color:#ffc13b;font-size:25px;letter-spacing:3px}@media not all and (min-width: 901px) {
.final-cta{padding:90px 0;text-align:center;background:#061127}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .final-cta{padding:90px 0;text-align:center;background:#061127}
}@media not all and (min-width: 901px) {
.final-cta p{font-size:19px;color:#e3e9f4}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .final-cta p{font-size:19px;color:#e3e9f4}
}@media not all and (min-width: 901px) {
.final-cta .cta{margin-top:18px;min-width:300px}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .final-cta .cta{margin-top:18px;min-width:300px}
}

@media(max-width:760px){
  /* Le visuel validé est volontairement agrandi sur téléphone pour rendre ses textes lisibles. */
  .poster-wrap{width:100%;height:auto}
  .poster-wrap>img{width:100%;max-width:100%;margin-left:0}
  .poster-cta{left:23.5%;top:45.2%;width:53%;height:6.8%}
  .moments{padding:54px 0}.script-title{font-size:36px}.section-lead{font-size:17px;margin-bottom:30px}
  .occasion-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .occasion{display:flex;flex-direction:column;min-height:0;border-radius:18px}
  .occasion-media{width:100%;height:auto;aspect-ratio:16/9;min-height:0}
  .occasion-media img{width:100%;height:100%;object-fit:cover;object-position:center}
  .occasion-copy{min-height:92px;padding:13px 10px;align-items:center;text-align:center}
  .occasion-copy b{font-size:14px}.occasion-copy small{font-size:11px;line-height:1.35}
  .prices{padding:64px 0 72px}.prices .eyebrow{font-size:11px}.prices .script-title{font-size:35px;margin-bottom:30px}
  .price-grid{grid-template-columns:1fr;gap:22px;margin-bottom:20px}.price-card{padding:29px 22px 24px;border-radius:24px}.price-card h3{font-size:26px}.price{font-size:56px}.price-card p{font-size:15px;max-width:300px}.delivery{font-size:14px}.price-btn{font-size:14px;min-height:54px}
  .express{grid-template-columns:auto 1fr;padding:18px;border-radius:20px}.express>b{grid-column:2;font-size:25px}.express strong{font-size:17px}.express small{font-size:12px}
}
@media(max-width:420px){.poster-wrap>img{width:100%;margin-left:0}.script-title{font-size:33px}.occasion-copy b{font-size:13px}.occasion-copy small{font-size:10.5px}}

/* Réalisations audio */
.realisations-page{padding:56px 18px;background:linear-gradient(180deg,#071329,#0b1834)}
@media not all and (min-width: 901px) {
.home-realisations-link{padding:56px 18px;background:linear-gradient(180deg,#071329,#0b1834)}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .home-realisations-link{padding:56px 18px;background:linear-gradient(180deg,#071329,#0b1834)}
}
@media not all and (min-width: 901px) {
.realisations-teaser{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:30px;border:1px solid rgba(255,255,255,.14);border-radius:24px;background:rgba(255,255,255,.045);box-shadow:0 18px 50px rgba(0,0,0,.2)}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .realisations-teaser{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:30px;border:1px solid rgba(255,255,255,.14);border-radius:24px;background:rgba(255,255,255,.045);box-shadow:0 18px 50px rgba(0,0,0,.2)}
}
@media not all and (min-width: 901px) {
.realisations-teaser .script-title{margin:5px 0 8px}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .realisations-teaser .script-title{margin:5px 0 8px}
}@media not all and (min-width: 901px) {
.realisations-teaser p{margin:0;color:#d8deee}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .realisations-teaser p{margin:0;color:#d8deee}
}@media not all and (min-width: 901px) {
.teaser-note{font-size:34px;color:#ff759d}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .teaser-note{font-size:34px;color:#ff759d}
}
@media not all and (min-width: 901px) {
.teaser-btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 22px;border-radius:999px;background:linear-gradient(90deg,#ff557f,#ff8b55);color:white;font-weight:800;text-decoration:none;white-space:nowrap;box-shadow:0 10px 28px rgba(255,85,127,.24)}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .teaser-btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 22px;border-radius:999px;background:linear-gradient(90deg,#ff557f,#ff8b55);color:white;font-weight:800;text-decoration:none;white-space:nowrap;box-shadow:0 10px 28px rgba(255,85,127,.24)}
}
.realisations-page{min-height:70vh;padding-top:64px}.realisations-page .script-title{text-align:center;margin:8px 0 10px}.realisations-page>.home-shell>.eyebrow{text-align:center}.realisations-intro{max-width:700px;margin:0 auto 34px;text-align:center;color:#d8deee;line-height:1.65}
.audio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.audio-card{position:relative;padding:22px;border:1px solid rgba(255,255,255,.13);border-radius:20px;background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.035));box-shadow:0 14px 36px rgba(0,0,0,.18)}
.audio-note{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;margin-bottom:15px;background:linear-gradient(135deg,#ff557f,#ff9a57);font-size:23px}.audio-copy small{color:#ffb0c5;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.audio-copy h2{font-size:19px;margin:5px 0 16px;color:white}.audio-card audio{display:block;width:100%;height:42px}.realisations-cta{text-align:center;margin-top:38px}.realisations-cta p{color:#d8deee;margin-bottom:18px}
@media(max-width:800px){.realisations-teaser{flex-direction:column;text-align:center;padding:24px 18px}.teaser-btn{width:100%;white-space:normal}.audio-grid{grid-template-columns:1fr}.realisations-page{padding:42px 14px}.audio-card{padding:18px}}

/* Player audio personnalisé */
.custom-player{display:grid;grid-template-columns:48px 1fr;grid-template-areas:"play time" "play progress";gap:5px 12px;align-items:center;margin-top:16px;padding:12px 14px;border:1px solid rgba(255,255,255,.11);border-radius:16px;background:rgba(3,12,30,.56);box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.player-play{grid-area:play;width:48px;height:48px;border:0;border-radius:50%;background:linear-gradient(135deg,#ff3f80,#ff995d);color:#fff;font-size:18px;cursor:pointer;box-shadow:0 7px 20px rgba(255,72,125,.28)}
.player-time{grid-area:time;display:flex;justify-content:space-between;color:#bfc9df;font-size:12px;font-variant-numeric:tabular-nums}
.player-progress{grid-area:progress;width:100%;height:6px;appearance:none;-webkit-appearance:none;border-radius:99px;background:linear-gradient(90deg,#ff5c8a var(--progress,0%),rgba(255,255,255,.14) var(--progress,0%));cursor:pointer;outline:none}
.player-progress::-webkit-slider-thumb{-webkit-appearance:none;width:15px;height:15px;border-radius:50%;background:#fff;box-shadow:0 0 0 4px rgba(255,91,139,.18)}
.player-progress::-moz-range-thumb{width:15px;height:15px;border:0;border-radius:50%;background:#fff}
.audio-card.is-playing{border-color:rgba(255,99,145,.55);box-shadow:0 16px 42px rgba(255,62,128,.12)}
.realisations-cta .cta{display:inline-flex;align-items:center;justify-content:center;min-width:300px;min-height:58px;padding:0 28px;border-radius:999px;background:linear-gradient(90deg,#ff347f,#ff965f);color:#fff;text-decoration:none;font-weight:900;box-shadow:0 10px 30px rgba(255,66,127,.28)}

/* Zone cliquable sur le hamburger déjà dessiné dans le poster d'accueil. */
.poster-wrap{position:relative}
.poster-menu-toggle{right:1.7%;top:.65%;width:8.5%;height:6.8%}
.poster-nav{top:7.4%;right:2%;}
@media(max-width:760px){.poster-menu-toggle{right:6.5%;top:.4%;width:16%;height:8%;min-width:52px;min-height:52px;touch-action:manipulation}.poster-nav{top:7.2%;right:10px}}

/* Styles musicaux — badges des réalisations */
.track-style{margin:0 0 10px;color:#dbe3f1;font-size:14px;font-weight:650}
.style-badges{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 4px}
.style-badges span{display:inline-flex;align-items:center;min-height:25px;padding:4px 9px;border:1px solid rgba(255,116,151,.34);border-radius:999px;background:linear-gradient(90deg,rgba(255,67,126,.14),rgba(255,151,94,.10));color:#ffd3df;font-size:10px;font-weight:900;letter-spacing:.07em}

/* Avis clients vérifiés */
@media not all and (min-width: 901px) {
.testimonial .script-title{margin-top:8px}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .testimonial .script-title{margin-top:8px}
}@media not all and (min-width: 901px) {
.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:1050px;margin:28px auto 22px}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:1050px;margin:28px auto 22px}
}.review-card{padding:22px;border:1px solid rgba(159,181,222,.2);border-radius:20px;background:linear-gradient(145deg,rgba(17,40,78,.82),rgba(6,17,39,.92));text-align:left}.review-card blockquote{font-size:16px;line-height:1.55;margin:12px 0 15px}.review-card strong,.review-card small{display:block}.review-card small{margin-top:5px;color:#9eabc5}.review-link{display:inline-block;margin-top:10px;color:#ff91ad;font-weight:800}.reviews-empty{max-width:650px;margin:24px auto;padding:20px;border:1px solid rgba(159,181,222,.18);border-radius:18px;color:#b9c5da;background:rgba(255,255,255,.035)}
/* Avis en une colonne sur mobile. */
@media(max-width:760px){.reviews-grid{grid-template-columns:1fr}}

/* Final CTA: fond Navy uni, sans image */
@media not all and (min-width: 901px) {
.final-cta{background:#061127!important;background-image:none!important;}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .final-cta{background:#061127!important;background-image:none!important;}
}
@media not all and (min-width: 901px) {
.final-cta .cta{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .final-cta .cta{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;}
}

/* Bouton principal visible du bloc final */
@media not all and (min-width: 901px) {
.final-cta .cta{
  display:inline-flex!important;
  width:auto!important;
  min-width:300px;
  min-height:58px;
  padding:16px 30px!important;
  border-radius:999px;
  background:linear-gradient(90deg,#ff347f,#ff965f)!important;
  color:#fff!important;
  font-weight:900;
  text-decoration:none;
  align-items:center;
  justify-content:center;
  box-shadow:0 10px 30px rgba(255,66,127,.28);
}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .final-cta .cta{
  display:inline-flex!important;
  width:auto!important;
  min-width:300px;
  min-height:58px;
  padding:16px 30px!important;
  border-radius:999px;
  background:linear-gradient(90deg,#ff347f,#ff965f)!important;
  color:#fff!important;
  font-weight:900;
  text-decoration:none;
  align-items:center;
  justify-content:center;
  box-shadow:0 10px 30px rgba(255,66,127,.28);
}
}
@media(max-width:700px){
  .final-cta .cta{width:min(100%,500px)!important;}
}

/* Illustrations des réalisations */
.track-cover{height:170px;margin:-18px -18px 18px;border-radius:18px 18px 12px 12px;overflow:hidden;position:relative;background:#0a1935}
.track-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 48%,rgba(6,17,39,.78))}
.track-cover img{width:100%;height:100%;object-fit:cover;display:block}
@media(min-width:801px){.track-cover{margin:-22px -22px 18px;height:180px}}

/* Player signature Crée Ma Chanson */
.audio-card{overflow:hidden;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}.audio-card:hover{transform:translateY(-3px)}
.audio-card.is-featured{border-color:rgba(255,122,165,.42)}.signature-badge{position:absolute;z-index:3;top:14px;right:14px;padding:7px 10px;border-radius:999px;background:rgba(6,17,39,.82);backdrop-filter:blur(8px);border:1px solid rgba(255,174,198,.45);font-size:9px;font-weight:900;letter-spacing:.09em;color:#ffd2df}
.custom-player{position:relative;grid-template-columns:52px 1fr 34px;grid-template-areas:"play time volume" "play wave volume" "play progress volume";padding:14px 15px;background:linear-gradient(145deg,rgba(4,13,34,.92),rgba(16,31,67,.76));border-color:rgba(153,178,226,.2);overflow:hidden}
.custom-player:before{content:"";position:absolute;inset:auto -30% -70% -30%;height:110px;background:radial-gradient(circle,rgba(255,67,126,.18),transparent 66%);pointer-events:none}.player-play{width:52px;height:52px;position:relative;z-index:1}.player-time{position:relative;z-index:1}.player-wave{grid-area:wave;height:24px;display:flex;align-items:center;gap:3px;overflow:hidden;position:relative;z-index:1}.player-wave i{display:block;width:3px;flex:1;max-width:5px;border-radius:99px;background:linear-gradient(to top,#ff4b87,#ff9a66);opacity:.26}.player-wave i:nth-child(3n){height:85%}.player-wave i:nth-child(3n+1){height:42%}.player-wave i:nth-child(3n+2){height:66%}.is-playing .player-wave i{animation:cmcWave .85s ease-in-out infinite alternate}.is-playing .player-wave i:nth-child(2n){animation-delay:-.3s}.is-playing .player-wave i:nth-child(3n){animation-delay:-.55s}@keyframes cmcWave{from{transform:scaleY(.45);opacity:.38}to{transform:scaleY(1);opacity:1}}
.player-progress{position:relative;z-index:2}.player-volume{grid-area:volume;align-self:center;width:34px;height:34px;border:0;border-radius:50%;background:rgba(255,255,255,.07);color:#fff;cursor:pointer;position:relative;z-index:2}.audio-card.is-playing .track-cover img{transform:scale(1.035)}.track-cover img{transition:transform 4s ease}.audio-card.is-playing .audio-note{box-shadow:0 0 0 7px rgba(255,84,134,.10),0 0 30px rgba(255,84,134,.35)}
@media(max-width:420px){.custom-player{grid-template-columns:48px 1fr 32px;padding:12px}.player-play{width:48px;height:48px}.player-wave{height:20px}}

/* Playlist signature - un lecteur unique */
.playlist-page .home-shell{max-width:760px}.playlist-hero{position:relative;margin-top:24px;padding:18px;border:1px solid rgba(255,255,255,.14);border-radius:26px;background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.03));box-shadow:0 20px 55px rgba(0,0,0,.24);overflow:hidden}.playlist-hero.is-featured{border-color:rgba(255,122,165,.45)}.playlist-cover.track-cover{height:285px;min-height:0;margin:-18px -18px 18px;border-radius:25px 25px 15px 15px;overflow:hidden;position:relative;background:#08152e}.playlist-cover img{width:100%;height:100%;object-fit:cover;display:block;transition:opacity .2s ease,transform 4s ease}.playlist-hero.is-playing .playlist-cover img{transform:scale(1.035)}.playlist-main{position:relative;min-width:0}.playlist-main>small{display:block;color:#ff9dbb;text-transform:uppercase;letter-spacing:.09em;font-weight:850;margin-bottom:4px}.playlist-main h2{margin:0 0 5px;color:#fff;font-size:clamp(27px,5vw,36px)}.playlist-main .track-style{margin:0 0 10px}.playlist-featured{top:14px;right:14px}.playlist-player{display:grid;grid-template-columns:54px 1fr 72px 36px;grid-template-areas:"play time actions volume" "play wave actions volume" "play progress actions volume";gap:5px 10px;margin-top:18px;padding:14px 15px}.playlist-player .player-play{grid-area:play}.playlist-actions{grid-area:actions;display:flex;gap:7px;align-self:center;justify-content:center}.playlist-skip{width:32px;height:32px;border:1px solid rgba(255,255,255,.12);border-radius:50%;background:rgba(255,255,255,.07);color:#fff;font-size:24px;line-height:1;display:grid;place-items:center;cursor:pointer}.playlist-skip:hover{background:rgba(255,255,255,.14)}.playlist-list{margin-top:22px;border:1px solid rgba(255,255,255,.10);border-radius:20px;overflow:hidden;background:rgba(3,12,30,.34)}.playlist-list:before{content:"Liste des créations";display:block;padding:16px 16px 11px;color:#fff;font-size:20px;font-weight:800}.playlist-row{width:100%;display:grid;grid-template-columns:38px minmax(0,1fr) auto 34px;gap:10px;align-items:center;padding:12px 14px;border:0;border-top:1px solid rgba(255,255,255,.075);background:transparent;color:#fff;text-align:left;cursor:pointer;transition:.18s ease}.playlist-row:hover{background:rgba(255,255,255,.045)}.playlist-row.is-active{background:linear-gradient(90deg,rgba(255,63,127,.12),rgba(255,125,87,.035));box-shadow:inset 3px 0 #ff5b8e}.playlist-number{color:#8490aa;font-size:13px;font-variant-numeric:tabular-nums}.playlist-row.is-active .playlist-number,.playlist-row.is-active .playlist-row-copy strong{color:#ff7ba5}.playlist-row-copy{min-width:0}.playlist-row-copy strong,.playlist-row-copy small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.playlist-row-copy strong{font-size:15px}.playlist-row-copy small{margin-top:3px;color:#9faac2;font-size:11px}.playlist-star{color:#ffc2d5}.playlist-row-play{display:grid;place-items:center;width:29px;height:29px;border:1px solid rgba(210,220,242,.55);border-radius:50%;color:#fff;font-size:10px}.playlist-row.is-active .playlist-row-play{border-color:#ff6b9a;color:#ff86aa}.realisations-cta{margin-top:28px}@media(max-width:700px){.playlist-page .home-shell{max-width:none}.playlist-hero{padding:14px;border-radius:22px}.playlist-cover.track-cover{height:220px;margin:-14px -14px 15px;border-radius:21px 21px 13px 13px}.playlist-main h2{font-size:26px}.playlist-player{grid-template-columns:48px minmax(0,1fr) 62px 32px;padding:12px 10px;gap:4px 7px}.playlist-player .player-play{width:48px;height:48px}.playlist-actions{gap:4px}.playlist-skip{width:28px;height:28px;font-size:21px}.playlist-list:before{font-size:18px}.playlist-row{grid-template-columns:30px minmax(0,1fr) auto 30px;padding:11px 10px;gap:7px}.playlist-row-copy strong{font-size:14px}.playlist-row-copy small{font-size:10px}.playlist-row-play{width:27px;height:27px}}

/* 2026-09-09 — player final validé : plus aéré, étoile après lecture */
.playlist-player{grid-template-columns:64px minmax(0,1fr) 78px 40px;gap:8px 16px;padding:18px 18px;min-height:118px}
.playlist-player .player-play{width:64px;height:64px}
.playlist-actions{gap:10px}.playlist-skip{width:36px;height:36px}
.playlist-row{grid-template-columns:42px minmax(0,1fr) 36px 28px;gap:12px;padding:14px 16px}
.playlist-row-play{grid-column:3}.playlist-star{grid-column:4;text-align:center;font-size:18px}.playlist-row-copy{grid-column:2}.playlist-number{grid-column:1}
@media(max-width:700px){
 .playlist-player{grid-template-columns:56px minmax(0,1fr) 74px 36px;gap:7px 10px;padding:16px 12px;min-height:106px}
 .playlist-player .player-play{width:56px;height:56px}
 .playlist-actions{gap:7px}.playlist-skip{width:32px;height:32px}
 .playlist-row{grid-template-columns:34px minmax(0,1fr) 32px 24px;gap:8px;padding:13px 11px}
 .playlist-star{font-size:17px}
}


/* 2026-09-09 — rendu playlist validé, commandes aérées */
.playlist-player{
 display:grid!important;
 grid-template-columns:46px 70px 38px minmax(150px,1fr) 46px 40px!important;
 grid-template-areas:
   "prev play fav time next volume"
   "prev play fav wave next volume"
   ". progress progress progress . ."!important;
 column-gap:12px!important;row-gap:7px!important;
 align-items:center!important;padding:20px 18px!important;min-height:132px!important
}
.playlist-prev{grid-area:prev}.playlist-player .player-play{grid-area:play;width:70px!important;height:70px!important}.player-favorite{grid-area:fav;color:#ff86aa;font-size:36px;line-height:1;text-align:center}.playlist-player .player-time{grid-area:time}.playlist-player .player-wave{grid-area:wave}.playlist-player .player-progress{grid-area:progress}.playlist-next{grid-area:next}.playlist-player .player-volume{grid-area:volume}.playlist-skip{width:42px!important;height:42px!important;font-size:27px!important}
.playlist-row{grid-template-columns:42px minmax(0,1fr) 38px 30px!important;gap:12px!important;padding:14px 16px!important;min-height:72px}.playlist-row-play{grid-column:3!important;grid-row:1!important}.playlist-star{grid-column:4!important;grid-row:1!important;text-align:center;font-size:20px}.playlist-row-copy{grid-column:2!important}.playlist-number{grid-column:1!important}
@media(max-width:700px){
 .playlist-player{grid-template-columns:34px 64px 30px minmax(90px,1fr) 34px 34px!important;column-gap:7px!important;padding:18px 10px!important;min-height:124px!important}
 .playlist-player .player-play{width:64px!important;height:64px!important}.player-favorite{font-size:30px}.playlist-skip{width:34px!important;height:34px!important;font-size:23px!important}.playlist-player .player-volume{width:34px;height:34px}.playlist-row{grid-template-columns:34px minmax(0,1fr) 34px 26px!important;gap:8px!important;padding:13px 11px!important;min-height:68px}
}
@media(max-width:390px){
 .playlist-player{grid-template-columns:30px 58px 26px minmax(76px,1fr) 30px 32px!important;column-gap:5px!important;padding:16px 8px!important}.playlist-player .player-play{width:58px!important;height:58px!important}.player-favorite{font-size:26px}.playlist-skip{width:30px!important;height:30px!important;font-size:21px!important}
}

/* 2026-09-09 — correction finale mobile du lecteur uniquement.
   La playlist validée reste inchangée. */
@media (max-width:700px){
  .playlist-player{
    display:grid!important;
    grid-template-columns:34px 64px 30px minmax(0,1fr) 34px!important;
    grid-template-areas:
      "prev play fav time next"
      "prev play fav wave next"
      ". progress progress progress volume"!important;
    column-gap:8px!important;
    row-gap:8px!important;
    align-items:center!important;
    padding:18px 12px 16px!important;
    min-height:136px!important;
    overflow:hidden!important;
  }
  .playlist-player .playlist-prev{grid-area:prev!important}
  .playlist-player .player-play{grid-area:play!important;width:64px!important;height:64px!important}
  .playlist-player .player-favorite{grid-area:fav!important;font-size:30px!important;justify-self:center!important}
  .playlist-player .player-time{grid-area:time!important;width:100%!important;min-width:0!important;padding:0 2px!important}
  .playlist-player .player-wave{grid-area:wave!important;width:100%!important;min-width:0!important;height:24px!important}
  .playlist-player .player-progress{grid-area:progress!important;width:100%!important;min-width:0!important;margin:0!important}
  .playlist-player .playlist-next{grid-area:next!important}
  .playlist-player .player-volume{grid-area:volume!important;width:34px!important;height:34px!important;justify-self:end!important;margin:0!important}
  .playlist-player .playlist-skip{width:34px!important;height:34px!important;font-size:23px!important}
}
@media (max-width:380px){
  .playlist-player{
    grid-template-columns:30px 58px 26px minmax(0,1fr) 30px!important;
    column-gap:6px!important;
    padding:16px 9px 14px!important;
  }
  .playlist-player .player-play{width:58px!important;height:58px!important}
  .playlist-player .player-favorite{font-size:27px!important}
  .playlist-player .playlist-skip{width:30px!important;height:30px!important;font-size:21px!important}
  .playlist-player .player-volume{width:32px!important;height:32px!important}
}

/* 2026-09-09 — lecteur conforme à la maquette définitive.
   Playlist inchangée : photo uniquement dans le lecteur, aucune flèche ni étoile dans les commandes. */
.playlist-player{
  display:grid!important;
  grid-template-columns:112px minmax(0,1fr) 190px!important;
  grid-template-areas:
    "play time volume"
    "play wave volume"
    "progress progress volume"!important;
  gap:8px 18px!important;
  align-items:center!important;
  min-height:160px!important;
  padding:24px 22px!important;
  overflow:hidden!important;
}
.playlist-player .player-play{grid-area:play!important;width:92px!important;height:92px!important;font-size:30px!important;justify-self:center!important}
.playlist-player .player-time{grid-area:time!important;width:100%!important;display:flex!important;justify-content:space-between!important;padding:0 4px!important}
.playlist-player .player-wave{grid-area:wave!important;width:100%!important;min-width:0!important;height:42px!important}
.playlist-player .player-progress{grid-area:progress!important;width:100%!important;margin:0!important}
.player-volume-wrap{grid-area:volume;display:flex;align-items:center;gap:10px;min-width:0}
.playlist-player .player-volume{position:static!important;width:48px!important;height:48px!important;flex:0 0 48px!important;font-size:20px!important;background:rgba(255,255,255,.08)!important}
.player-volume-range{width:100%;min-width:70px;accent-color:#ff5b8e;cursor:pointer}
@media(max-width:700px){
 .playlist-player{
   grid-template-columns:92px minmax(0,1fr)!important;
   grid-template-areas:
    "play time"
    "play wave"
    "progress progress"
    "volume volume"!important;
   gap:9px 14px!important;
   min-height:190px!important;
   padding:20px 16px!important;
 }
 .playlist-player .player-play{width:78px!important;height:78px!important;font-size:27px!important}
 .playlist-player .player-wave{height:38px!important}
 .player-volume-wrap{justify-self:end;width:min(210px,58%);gap:8px}
 .playlist-player .player-volume{width:42px!important;height:42px!important;flex-basis:42px!important}
}
@media(max-width:390px){
 .playlist-player{grid-template-columns:82px minmax(0,1fr)!important;padding:18px 12px!important;gap:8px 11px!important}
 .playlist-player .player-play{width:72px!important;height:72px!important}
 .player-volume-wrap{width:62%}
}
/* Definitive player layout: no arrows, no star inside player. */
.playlist-player{display:grid!important;grid-template-columns:112px minmax(0,1fr) 190px!important;grid-template-areas:"play time volume" "play wave volume" "progress progress volume"!important;gap:8px 18px!important;align-items:center!important;min-height:160px!important;padding:24px 22px!important;overflow:hidden!important}
.playlist-player .player-play{grid-area:play!important;width:92px!important;height:92px!important;font-size:30px!important;justify-self:center!important}.playlist-player .player-time{grid-area:time!important;width:100%!important;display:flex!important;justify-content:space-between!important;padding:0 4px!important}.playlist-player .player-wave{grid-area:wave!important;width:100%!important;min-width:0!important;height:42px!important}.playlist-player .player-progress{grid-area:progress!important;width:100%!important;margin:0!important}.player-volume-wrap{grid-area:volume;display:flex;align-items:center;gap:10px;min-width:0}.playlist-player .player-volume{position:static!important;width:48px!important;height:48px!important;flex:0 0 48px!important;font-size:20px!important;background:rgba(255,255,255,.08)!important}.player-volume-range{width:100%;min-width:70px;accent-color:#ff5b8e;cursor:pointer}
@media(max-width:700px){.playlist-player{grid-template-columns:92px minmax(0,1fr)!important;grid-template-areas:"play time" "play wave" "progress progress" "volume volume"!important;gap:9px 14px!important;min-height:190px!important;padding:20px 16px!important}.playlist-player .player-play{width:78px!important;height:78px!important;font-size:27px!important}.playlist-player .player-wave{height:38px!important}.player-volume-wrap{justify-self:end;width:min(210px,58%);gap:8px}.playlist-player .player-volume{width:42px!important;height:42px!important;flex-basis:42px!important}}
@media(max-width:390px){.playlist-player{grid-template-columns:82px minmax(0,1fr)!important;padding:18px 12px!important;gap:8px 11px!important}.playlist-player .player-play{width:72px!important;height:72px!important}.player-volume-wrap{width:62%}}


/* 2026-09-10 — rendu final du lecteur, conforme à la maquette validée */
.playlist-player{display:grid!important;grid-template-columns:110px minmax(0,1fr) 175px!important;grid-template-areas:"play time volume" "play wave volume" "progress progress volume"!important;gap:7px 18px!important;align-items:center!important;min-height:154px!important;padding:22px!important;overflow:hidden!important}
.playlist-player .player-play{grid-area:play!important;width:92px!important;height:92px!important;border:0!important;border-radius:50%!important;background:linear-gradient(135deg,#ff3f7f,#ff9864)!important;color:#fff!important;font-size:31px!important;box-shadow:0 12px 30px rgba(255,65,127,.28)!important;justify-self:center!important}
.playlist-player .player-time{grid-area:time!important;display:flex!important;justify-content:space-between!important;width:100%!important;color:#bdc7db!important;font-variant-numeric:tabular-nums!important}
.playlist-player .player-wave{grid-area:wave!important;width:100%!important;height:44px!important;min-width:0!important}
.playlist-player .player-progress{grid-area:progress!important;width:100%!important;margin:0!important}
.player-volume-wrap{grid-area:volume!important;display:grid!important;grid-template-columns:48px minmax(80px,1fr)!important;align-items:center!important;gap:12px!important;width:100%!important}
.playlist-player .player-volume{width:48px!important;height:48px!important;border-radius:50%!important;background:rgba(255,255,255,.08)!important;font-size:20px!important}
.player-volume-range{width:100%!important;height:6px!important;appearance:none!important;-webkit-appearance:none!important;border-radius:99px!important;background:linear-gradient(90deg,#ff5c8a 0%,#ff8a67 100%)!important;outline:none!important;cursor:pointer!important}
.player-volume-range::-webkit-slider-thumb{-webkit-appearance:none!important;width:18px!important;height:18px!important;border-radius:50%!important;background:#fff!important;box-shadow:0 0 0 4px rgba(255,91,139,.15)!important}
.player-volume-range::-moz-range-thumb{width:18px!important;height:18px!important;border:0!important;border-radius:50%!important;background:#fff!important}
@media(max-width:700px){
 .playlist-player{grid-template-columns:104px minmax(0,1fr) 46px!important;grid-template-areas:"play time volume" "play wave volume" "progress progress progress" "blank volrange volrange"!important;gap:8px 14px!important;min-height:180px!important;padding:20px 16px!important}
 .playlist-player .player-play{width:88px!important;height:88px!important;font-size:29px!important}
 .playlist-player .player-wave{height:40px!important}
 .player-volume-wrap{display:contents!important}
 .playlist-player .player-volume{grid-area:volume!important;width:44px!important;height:44px!important;justify-self:end!important}
 .player-volume-range{grid-area:volrange!important;width:100%!important;justify-self:end!important}
}
@media(max-width:390px){
 .playlist-player{grid-template-columns:92px minmax(0,1fr) 42px!important;gap:7px 10px!important;padding:18px 12px!important}
 .playlist-player .player-play{width:80px!important;height:80px!important}
}


/* Lecteur audio unifié — même identité que Nos réalisations */
.cmc-pro-player{display:grid!important;grid-template-columns:96px minmax(0,1fr) 165px!important;grid-template-areas:"play time volume" "play wave volume" "progress progress volume"!important;gap:7px 16px!important;align-items:center!important;min-height:142px!important;padding:20px!important;margin-top:14px!important;background:linear-gradient(145deg,rgba(4,13,34,.96),rgba(16,31,67,.84))!important;border:1px solid rgba(153,178,226,.2)!important;border-radius:18px!important;overflow:hidden!important}
.cmc-pro-player .player-play{grid-area:play!important;width:78px!important;height:78px!important;border:0!important;border-radius:50%!important;background:linear-gradient(135deg,#ff3f7f,#ff9864)!important;color:#fff!important;font-size:27px!important;box-shadow:0 12px 30px rgba(255,65,127,.25)!important;justify-self:center!important}
.cmc-pro-player .player-time{grid-area:time!important;display:flex!important;justify-content:space-between!important;width:100%!important;color:#bdc7db!important;font-variant-numeric:tabular-nums!important}
.cmc-pro-player .player-wave{grid-area:wave!important;width:100%!important;height:38px!important;min-width:0!important}
.cmc-pro-player .player-progress{grid-area:progress!important;width:100%!important;margin:0!important}
.cmc-pro-player .player-volume-wrap{grid-area:volume!important;display:grid!important;grid-template-columns:44px minmax(70px,1fr)!important;align-items:center!important;gap:10px!important;width:100%!important}
.cmc-pro-player .player-volume{position:static!important;width:44px!important;height:44px!important;border-radius:50%!important;background:rgba(255,255,255,.08)!important;font-size:18px!important}
.cmc-pro-player .player-volume-range{width:100%!important;height:6px!important;appearance:none!important;-webkit-appearance:none!important;border-radius:99px!important;background:linear-gradient(90deg,#ff5c8a,#ff8a67)!important;outline:none!important}
.cmc-pro-player .player-volume-range::-webkit-slider-thumb{-webkit-appearance:none!important;width:17px!important;height:17px!important;border-radius:50%!important;background:#fff!important}
.admin-creation-cover{position:relative;margin:14px 0 4px;border-radius:16px;overflow:hidden;aspect-ratio:16/8;background:#08152f}.admin-creation-cover img{width:100%;height:100%;object-fit:cover;display:block}.admin-creation-cover .signature-badge{position:absolute;right:12px;top:12px}
@media(max-width:700px){.cmc-pro-player{grid-template-columns:88px minmax(0,1fr) 42px!important;grid-template-areas:"play time volume" "play wave volume" "progress progress progress" "blank volrange volrange"!important;gap:8px 12px!important;min-height:170px!important;padding:17px 14px!important}.cmc-pro-player .player-play{width:74px!important;height:74px!important}.cmc-pro-player .player-wave{height:36px!important}.cmc-pro-player .player-volume-wrap{display:contents!important}.cmc-pro-player .player-volume{grid-area:volume!important;justify-self:end!important}.cmc-pro-player .player-volume-range{grid-area:volrange!important}}

/* Transitions de page discrètes et rapides */


/* 2026-09-10 — animation visuelle fiable des égaliseurs des lecteurs client/admin */
.cmc-pro-player .player-wave i{transform-origin:center;transition:height .11s ease,opacity .11s ease,transform .11s ease;animation:none!important}
.cmc-pro-player:not(.is-playing) .player-wave i{opacity:.28}
.cmc-pro-player.is-playing .player-wave i{opacity:.9}

/* Barre d'actions compacte — Admin > Nos créations */
.admin-selected-actions{margin-top:14px}
.admin-track-actions{padding:12px;border:1px solid rgba(255,255,255,.09);border-radius:16px;background:rgba(5,15,38,.55)}
.admin-track-actions>details{display:inline-block;margin:0 6px 8px 0;vertical-align:top}
.admin-track-actions>details>summary{list-style:none;cursor:pointer}
.admin-track-actions>details>summary::-webkit-details-marker{display:none}
.admin-track-actions>.admin-actions{display:inline-flex!important;flex-wrap:wrap;gap:8px!important;align-items:center!important;margin:0!important;vertical-align:top}
.admin-track-actions>.admin-actions form{margin:0!important;width:auto!important}
.admin-track-actions .btn,.admin-track-actions summary.btn{width:auto!important;min-height:38px!important;padding:8px 13px!important;border-radius:10px!important;font-size:13px!important;font-weight:750!important;line-height:1.15!important;box-shadow:none!important;background:rgba(255,255,255,.07)!important;border:1px solid rgba(255,255,255,.13)!important;color:#eef3ff!important}
.admin-track-actions .btn:hover,.admin-track-actions summary.btn:hover{background:rgba(255,255,255,.12)!important;border-color:rgba(255,121,165,.35)!important}
.admin-track-actions .btn-danger{background:rgba(210,54,82,.10)!important;border-color:rgba(255,91,118,.28)!important;color:#ff9bae!important}
.admin-track-actions .btn-danger:hover{background:rgba(210,54,82,.20)!important}
.admin-edit-form{margin-top:12px;padding:14px;border-radius:14px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08)}
@media(max-width:600px){.admin-track-actions{padding:10px}.admin-track-actions>details{display:block;margin:0 0 8px}.admin-track-actions>details>summary.btn{display:flex!important;width:100%!important;justify-content:center!important}.admin-track-actions>.admin-actions{display:grid!important;grid-template-columns:1fr 1fr;width:100%!important}.admin-track-actions>.admin-actions .btn{width:100%!important;height:100%!important}.admin-track-actions>.admin-actions form:last-child{grid-column:1/-1}}

/* Admin — navigation compacte + page statistiques */
.admin-menu{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0 26px}.admin-menu a{min-height:58px;padding:10px 14px;display:flex;align-items:center;gap:10px;border:1px solid rgba(255,255,255,.11);border-radius:14px;background:rgba(255,255,255,.045);color:#eef3ff;text-decoration:none;box-shadow:none;transition:.18s ease}.admin-menu a:hover{transform:translateY(-1px);background:rgba(255,255,255,.08);border-color:rgba(255,91,139,.35)}.admin-menu a span{font-size:19px}.admin-menu a strong{font-size:14px;line-height:1.15}.admin-menu .admin-menu-stats{border-color:rgba(255,91,139,.3);background:linear-gradient(135deg,rgba(255,63,127,.12),rgba(255,152,100,.08))}.admin-orders-title{margin:8px 0 12px;font-size:24px}.admin-page-heading{margin:18px 0 22px}.admin-page-heading h1{margin:4px 0 5px}.admin-kicker{font-size:12px;font-weight:800;letter-spacing:.12em;color:#ff759c}.admin-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.admin-stat-card{min-height:126px;padding:18px;border:1px solid rgba(255,255,255,.1);border-radius:16px;background:linear-gradient(145deg,rgba(18,40,78,.7),rgba(7,19,45,.86));display:flex;flex-direction:column;justify-content:center}.admin-stat-card span{font-size:13px;color:#bfc9dc}.admin-stat-card strong{font-size:29px;margin:7px 0 2px;color:#fff}.admin-stat-card small{color:#8997b2}.admin-stat-primary{border-color:rgba(255,91,139,.28);background:linear-gradient(145deg,rgba(255,63,127,.12),rgba(13,29,61,.9))}.admin-status-panel{margin-top:16px}.admin-status-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-status-head h2{margin:0}.admin-status-head>span{font-size:12px;color:#9aa8c1}.admin-status-list{margin-top:14px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.admin-status-list>div{display:flex;justify-content:space-between;align-items:center;padding:11px 13px;border-radius:11px;background:rgba(255,255,255,.04);color:#cbd4e5}.admin-status-list strong{color:#fff;font-size:18px}
@media(max-width:760px){.admin-menu{grid-template-columns:1fr 1fr;gap:8px}.admin-menu a{min-height:52px;padding:9px 11px;border-radius:12px}.admin-menu a strong{font-size:13px}.admin-menu .admin-menu-stats{grid-column:1/-1}.admin-stat-grid{grid-template-columns:1fr 1fr}.admin-stat-card{min-height:108px;padding:14px}.admin-stat-card strong{font-size:24px}.admin-status-list{grid-template-columns:1fr}}

/* Suivi de production + priorites admin */
.admin-todo{margin:10px 0 24px;padding:16px;border:1px solid rgba(255,91,139,.25);border-radius:16px;background:linear-gradient(145deg,rgba(255,63,127,.09),rgba(7,19,45,.82))}.admin-todo-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-todo-head h2{margin:3px 0 0;font-size:21px}.admin-notif-total{display:grid;place-items:center;min-width:34px;height:34px;padding:0 9px;border-radius:999px;background:linear-gradient(90deg,#ff3b86,#ff9857);color:#fff;font-weight:900}.admin-todo-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:13px}.admin-todo-list a,.admin-todo-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;border:1px solid rgba(255,255,255,.08);border-radius:11px;background:rgba(255,255,255,.04);color:#eaf0fb;text-decoration:none}.admin-todo-list a:hover{background:rgba(255,255,255,.075)}.admin-todo-list strong{display:grid;place-items:center;min-width:27px;height:27px;padding:0 7px;border-radius:999px;background:rgba(255,91,139,.16);color:#ff8caf}.order-progress{position:relative;margin-top:18px}.order-progress-step{position:relative;display:grid;grid-template-columns:34px 1fr;gap:11px;min-height:62px;color:#8492aa}.order-progress-step:not(:last-child):before{content:"";position:absolute;left:16px;top:29px;bottom:-4px;width:2px;background:rgba(255,255,255,.1)}.order-progress-dot{position:relative;z-index:1;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;border:2px solid rgba(255,255,255,.16);background:#09162d;font-size:13px;font-weight:900}.order-progress-step strong{display:block;padding-top:6px;color:#9aa7bc}.order-progress-step small{display:block;margin-top:3px;color:#77859e}.order-progress-step.is-done .order-progress-dot{border-color:#2fa873;background:#1d8054;color:#fff}.order-progress-step.is-done:not(:last-child):before{background:#2b8e65}.order-progress-step.is-done strong{color:#dce7e2}.order-progress-step.is-active .order-progress-dot{border-color:#ff5b8b;background:linear-gradient(135deg,#ff3b86,#ff9857);color:#fff;box-shadow:0 0 0 5px rgba(255,91,139,.1)}.order-progress-step.is-active strong{color:#fff}.order-progress-note{margin-top:8px}@media(max-width:760px){.admin-todo-list{grid-template-columns:1fr}.admin-todo{padding:13px}.order-progress-step{min-height:58px}}

/* Accueil mobile v2 — même confort tactile/visuel que les pages secondaires. */
@media(max-width:760px){
  .poster-menu-toggle{
    right:10.5%;
    top:1.5%;
    width:64px;
    height:64px;
    min-width:64px;
    min-height:64px;
    color:#fff;
    font-size:40px;
    line-height:1;
    display:flex;
    align-items:center;
    justify-content:center;
    text-indent:0;
    border-radius:14px;
    background:rgba(6,17,39,.38);
    -webkit-tap-highlight-color:transparent;
  }
  .poster-nav{right:18px;top:8.4%}
}

/* Accueil mobile v3 — masque le hamburger imprimé dans l'affiche et affiche un seul vrai bouton. */
@media(max-width:760px){
  .poster-wrap::after{
    content:"";
    position:absolute;
    z-index:54;
    right:0;
    top:0;
    width:10.5%;
    height:4.7%;
    background:rgba(6,17,39,.96);
    border-bottom-left-radius:14px;
    pointer-events:none;
  }
  .poster-menu-toggle{
    right:13.5%;
    top:2.7%;
    width:62px;
    height:62px;
    min-width:62px;
    min-height:62px;
    font-size:38px;
    border:1px solid rgba(255,255,255,.28);
    background:rgba(6,17,39,.88);
    box-shadow:0 8px 24px rgba(0,0,0,.38);
  }
  .poster-nav{right:18px;top:10.2%}
}

/* Accueil mobile v4 — bouton rapproché du bord droit et placé sur l'ancien pictogramme. */
@media(max-width:760px){
  .poster-wrap::after{display:none!important;content:none!important}
  .poster-menu-toggle{
    right:2.6%!important;
    top:2.7%!important;
    width:62px!important;
    height:62px!important;
    min-width:62px!important;
    min-height:62px!important;
    font-size:38px!important;
    background:rgba(6,17,39,.90)!important;
    border:1px solid rgba(255,255,255,.28)!important;
    box-shadow:0 8px 24px rgba(0,0,0,.38)!important;
  }
  .poster-nav{right:14px!important;top:10.2%!important}
}

/* Tarifs : lecture cumulative claire des prestations. */
.formula-benefits .benefit-list{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:11px;text-align:left}
.formula-benefits .benefit-list li{position:relative;padding-left:27px;color:#f5f7ff;font-weight:800;line-height:1.35}
.formula-benefits .benefit-list li:before{content:'✓';position:absolute;left:0;top:-1px;font-size:18px;font-weight:950;background:linear-gradient(135deg,#ff3f87,#ff9857);-webkit-background-clip:text;background-clip:text;color:transparent}

/* V9 — pochettes verticales : cadrage complet dans le grand lecteur */
.playlist-cover.track-cover img{object-fit:contain;object-position:center center;background:#08152e}
.playlist-hero.is-playing .playlist-cover img{transform:none}
@media(max-width:700px){.playlist-cover.track-cover{height:250px}}



/* Accueil desktop : source unique. Les regles historiques ci-dessus ne
   s’appliquent qu’au mobile ou aux autres pages. */
@media (min-width: 901px) {
  :where(body:has(#occasions.moments)) .moments {
    padding-top: 76px;
    padding-right: 0px;
    padding-bottom: 76px;
    padding-left: 0px;
    background-color: rgb(6, 17, 39);
  }
  :where(body:has(#occasions.moments)) .occasion-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    row-gap: 22px;
    column-gap: 22px;
    max-width: 1040px;
    margin-top: auto;
    margin-right: auto;
    margin-bottom: auto;
    margin-left: auto;
  }
  :where(body:has(#occasions.moments)) .occasion {
    display: flex;
    flex-direction: column;
    overflow-x: hidden;
    overflow-y: hidden;
    border-top-width: 1px;
    border-right-width: 1px;
    border-bottom-width: 1px;
    border-left-width: 1px;
    border-top-style: solid;
    border-right-style: solid;
    border-bottom-style: solid;
    border-left-style: solid;
    border-top-color: rgba(137, 164, 210, 0.35);
    border-right-color: rgba(137, 164, 210, 0.35);
    border-bottom-color: rgba(137, 164, 210, 0.35);
    border-left-color: rgba(137, 164, 210, 0.35);
    border-image-source: none;
    border-image-slice: 100%;
    border-image-width: 1;
    border-image-outset: 0;
    border-image-repeat: stretch;
    border-top-left-radius: 22px;
    border-top-right-radius: 22px;
    border-bottom-right-radius: 22px;
    border-bottom-left-radius: 22px;
    background-image: linear-gradient(rgb(16, 36, 72), rgb(9, 26, 54));
    background-position-x: initial;
    background-position-y: initial;
    background-size: initial;
    background-repeat: initial;
    background-attachment: initial;
    background-origin: initial;
    background-clip: initial;
    background-color: initial;
    box-shadow: rgba(0, 0, 0, 0.22) 0px 18px 40px;
    text-decoration-line: none;
    text-decoration-thickness: initial;
    text-decoration-style: initial;
    text-decoration-color: initial;
    color: rgb(255, 255, 255);
  }
  :where(body:has(#occasions.moments)) .occasion-media {
    width: 100%;
    aspect-ratio: 4 / 3;
    overflow-x: hidden;
    overflow-y: hidden;
    background-image: initial;
    background-position-x: initial;
    background-position-y: initial;
    background-size: initial;
    background-repeat: initial;
    background-attachment: initial;
    background-origin: initial;
    background-clip: initial;
    background-color: rgb(9, 22, 45);
  }
  :where(body:has(#occasions.moments)) .occasion-media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
  }
  :where(body:has(#occasions.moments)) .occasion-copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    min-height: 108px;
    padding-top: 16px;
    padding-right: 16px;
    padding-bottom: 16px;
    padding-left: 16px;
    text-align: center;
  }
  :where(body:has(#occasions.moments)) .occasion-copy b {
    font-size: 17px;
  }
  :where(body:has(#occasions.moments)) .occasion-copy small {
    margin-top: 8px;
    color: rgb(219, 227, 242);
    font-size: 13px;
    line-height: 1.4;
  }
  :where(body:has(#occasions.moments)) .testimonial {
    padding-top: 32px;
    padding-right: 0px;
    padding-bottom: 32px;
    padding-left: 0px;
    text-align: center;
    background-image: radial-gradient(circle, rgb(23, 41, 92), rgb(6, 17, 39) 68%);
    background-position-x: initial;
    background-position-y: initial;
    background-size: initial;
    background-repeat: initial;
    background-attachment: initial;
    background-origin: initial;
    background-clip: initial;
    background-color: initial;
    width: 100%;
    max-width: none;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    box-sizing: border-box;
  
    background: transparent !important;
}
  :where(body:has(#occasions.moments)) .final-cta {
    padding-top: 34px;
    padding-right: 0px;
    padding-bottom: 34px;
    padding-left: 0px;
    text-align: center;
    background-image: none !important;
    background-position-x: initial !important;
    background-position-y: initial !important;
    background-size: initial !important;
    background-repeat: initial !important;
    background-attachment: initial !important;
    background-origin: initial !important;
    background-clip: initial !important;
    background-color: rgb(6, 17, 39) !important;
    width: 100%;
    max-width: none;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    box-sizing: border-box;
  
    background: transparent !important;
}
  :where(body:has(#occasions.moments)) .final-cta p {
    font-size: 19px;
    color: rgb(227, 233, 244);
    margin-top: 0px;
    margin-right: auto;
    margin-bottom: 18px;
    margin-left: auto;
    text-align: center;
  }
  :where(body:has(#occasions.moments)) .final-cta .cta {
    margin-top: 0px;
    min-width: 300px;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    text-decoration-line: none;
    text-decoration-thickness: initial;
    text-decoration-style: initial;
    text-decoration-color: initial;
    min-height: 58px;
    border-top-left-radius: 999px;
    border-top-right-radius: 999px;
    border-bottom-right-radius: 999px;
    border-bottom-left-radius: 999px;
    font-weight: 900;
    box-shadow: rgba(255, 66, 127, 0.28) 0px 10px 30px;
    width: auto !important;
    padding-top: 16px !important;
    padding-right: 30px !important;
    padding-bottom: 16px !important;
    padding-left: 30px !important;
    background-image: linear-gradient(90deg, rgb(255, 52, 127), rgb(255, 150, 95)) !important;
    background-position-x: initial !important;
    background-position-y: initial !important;
    background-size: initial !important;
    background-repeat: initial !important;
    background-attachment: initial !important;
    background-origin: initial !important;
    background-clip: initial !important;
    background-color: initial !important;
    color: rgb(255, 255, 255) !important;
  }
  :where(body:has(#occasions.moments)) .home-realisations-link {
    padding-top: 24px;
    padding-right: 0px;
    padding-bottom: 24px;
    padding-left: 0px;
    background-image: linear-gradient(rgb(7, 19, 41), rgb(11, 24, 52));
    background-position-x: initial;
    background-position-y: initial;
    background-size: initial;
    background-repeat: initial;
    background-attachment: initial;
    background-origin: initial;
    background-clip: initial;
    background-color: initial;
    width: 100%;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    box-sizing: border-box;
  
    background: transparent !important;
}
  :where(body:has(#occasions.moments)) .realisations-teaser {
    display: flex;
    align-items: center;
    justify-content: space-between;
    row-gap: 28px;
    column-gap: 28px;
    padding-top: 24px;
    padding-right: 28px;
    padding-bottom: 24px;
    padding-left: 28px;
    border-top-width: 1px;
    border-right-width: 1px;
    border-bottom-width: 1px;
    border-left-width: 1px;
    border-top-style: solid;
    border-right-style: solid;
    border-bottom-style: solid;
    border-left-style: solid;
    border-top-color: rgba(255, 255, 255, 0.14);
    border-right-color: rgba(255, 255, 255, 0.14);
    border-bottom-color: rgba(255, 255, 255, 0.14);
    border-left-color: rgba(255, 255, 255, 0.14);
    border-image-source: none;
    border-image-slice: 100%;
    border-image-width: 1;
    border-image-outset: 0;
    border-image-repeat: stretch;
    border-top-left-radius: 24px;
    border-top-right-radius: 24px;
    border-bottom-right-radius: 24px;
    border-bottom-left-radius: 24px;
    background-image: initial;
    background-position-x: initial;
    background-position-y: initial;
    background-size: initial;
    background-repeat: initial;
    background-attachment: initial;
    background-origin: initial;
    background-clip: initial;
    background-color: rgba(255, 255, 255, 0.043);
    box-shadow: rgba(0, 0, 0, 0.2) 0px 18px 50px;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    min-height: 0px;
  }
  :where(body:has(#occasions.moments)) .realisations-teaser .script-title {
    margin-top: 5px;
    margin-right: 0px;
    margin-bottom: 8px;
    margin-left: 0px;
  
    font-size: clamp(30px, 3vw, 40px);
}
  :where(body:has(#occasions.moments)) .realisations-teaser p {
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    color: rgb(216, 222, 238);
  }
  :where(body:has(#occasions.moments)) .teaser-note {
    font-size: 34px;
    color: rgb(255, 117, 157);
  }
  :where(body:has(#occasions.moments)) .teaser-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding-top: 0px;
    padding-right: 22px;
    padding-bottom: 0px;
    padding-left: 22px;
    border-top-left-radius: 999px;
    border-top-right-radius: 999px;
    border-bottom-right-radius: 999px;
    border-bottom-left-radius: 999px;
    background-image: linear-gradient(90deg, rgb(255, 85, 127), rgb(255, 139, 85));
    background-position-x: initial;
    background-position-y: initial;
    background-size: initial;
    background-repeat: initial;
    background-attachment: initial;
    background-origin: initial;
    background-clip: initial;
    background-color: initial;
    color: white;
    font-weight: 800;
    text-decoration-line: none;
    text-decoration-thickness: initial;
    text-decoration-style: initial;
    text-decoration-color: initial;
    white-space-collapse: collapse;
    text-wrap-mode: nowrap;
    box-shadow: rgba(255, 85, 127, 0.24) 0px 10px 28px;
  }
  :where(body:has(#occasions.moments)) .testimonial .script-title {
    margin-top: 7px;
    margin-bottom: 14px;
    text-align: center;
  }
  :where(body:has(#occasions.moments)) .reviews-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0px, 1fr));
    row-gap: 16px;
    column-gap: 16px;
    max-width: 1080px;
    margin-top: 16px;
    margin-right: auto;
    margin-bottom: 16px;
    margin-left: auto;
    width: 100%;
  }
  :where(body:has(#occasions.moments)) .home-price-compact {
    padding-top: 26px !important;
    padding-right: 0px !important;
    padding-bottom: 26px !important;
    padding-left: 0px !important;
  }
  :where(body:has(#occasions.moments)) .home-price-card {
    display: grid;
    grid-template-columns: auto minmax(0px, 1fr) auto;
    align-items: center;
    row-gap: 22px;
    column-gap: 22px;
    padding-top: 24px;
    padding-right: 26px;
    padding-bottom: 24px;
    padding-left: 26px;
    border-top-width: 1px;
    border-right-width: 1px;
    border-bottom-width: 1px;
    border-left-width: 1px;
    border-top-style: solid;
    border-right-style: solid;
    border-bottom-style: solid;
    border-left-style: solid;
    border-top-color: rgba(255, 96, 143, 0.28);
    border-right-color: rgba(255, 96, 143, 0.28);
    border-bottom-color: rgba(255, 96, 143, 0.28);
    border-left-color: rgba(255, 96, 143, 0.28);
    border-image-source: none;
    border-image-slice: 100%;
    border-image-width: 1;
    border-image-outset: 0;
    border-image-repeat: stretch;
    border-top-left-radius: 24px;
    border-top-right-radius: 24px;
    border-bottom-right-radius: 24px;
    border-bottom-left-radius: 24px;
    background-image: linear-gradient(145deg, rgba(18, 40, 78, 0.88), rgba(8, 20, 45, 0.96));
    background-position-x: initial;
    background-position-y: initial;
    background-size: initial;
    background-repeat: initial;
    background-attachment: initial;
    background-origin: initial;
    background-clip: initial;
    background-color: initial;
    box-shadow: rgba(0, 0, 0, 0.16) 0px 18px 40px;
  }
  :where(body:has(#occasions.moments)) .home-price-note {
    width: 58px;
    height: 58px;
    display: grid;
    align-items: center;
    justify-items: center;
    border-top-left-radius: 18px;
    border-top-right-radius: 18px;
    border-bottom-right-radius: 18px;
    border-bottom-left-radius: 18px;
    background-image: linear-gradient(135deg, rgba(255, 47, 135, 0.22), rgba(255, 152, 87, 0.16));
    background-position-x: initial;
    background-position-y: initial;
    background-size: initial;
    background-repeat: initial;
    background-attachment: initial;
    background-origin: initial;
    background-clip: initial;
    background-color: initial;
    font-size: 28px;
  }
  :where(body:has(#occasions.moments)) .home-price-copy .eyebrow {
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 5px;
    margin-left: 0px;
  }
  :where(body:has(#occasions.moments)) .home-price-copy h2 {
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 6px;
    margin-left: 0px;
    font-size: 26px;
  }
  :where(body:has(#occasions.moments)) .home-price-copy p {
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 6px;
    margin-left: 0px;
    color: rgb(216, 223, 235);
  }
  :where(body:has(#occasions.moments)) .home-price-copy small {
    color: rgb(147, 162, 187);
  }
  :where(body:has(#occasions.moments)) .home-price-action {
    text-align: right;
  }
  :where(body:has(#occasions.moments)) .home-price-action > span {
    display: block;
    color: rgb(155, 169, 191);
    font-size: 12px;
  }
  :where(body:has(#occasions.moments)) .home-price-action > strong {
    display: block;
    margin-top: 1px;
    margin-right: 0px;
    margin-bottom: 10px;
    margin-left: 0px;
    font-size: 34px;
  }
  :where(body:has(#occasions.moments)) .home-price-action .price-btn {
    white-space-collapse: collapse;
    text-wrap-mode: nowrap;
  }
  :where(body:has(#occasions.moments)) .testimonial .review-link {
    display: inline-flex;
    padding-top: 10px;
    padding-right: 16px;
    padding-bottom: 10px;
    padding-left: 16px;
    border-top-width: 1px;
    border-right-width: 1px;
    border-bottom-width: 1px;
    border-left-width: 1px;
    border-top-style: solid;
    border-right-style: solid;
    border-bottom-style: solid;
    border-left-style: solid;
    border-top-color: rgba(255, 102, 142, 0.35);
    border-right-color: rgba(255, 102, 142, 0.35);
    border-bottom-color: rgba(255, 102, 142, 0.35);
    border-left-color: rgba(255, 102, 142, 0.35);
    border-image-source: none;
    border-image-slice: 100%;
    border-image-width: 1;
    border-image-outset: 0;
    border-image-repeat: stretch;
    border-top-left-radius: 999px;
    border-top-right-radius: 999px;
    border-bottom-right-radius: 999px;
    border-bottom-left-radius: 999px;
    background-image: initial;
    background-position-x: initial;
    background-position-y: initial;
    background-size: initial;
    background-repeat: initial;
    background-attachment: initial;
    background-origin: initial;
    background-clip: initial;
    background-color: rgba(255, 70, 132, 0.07);
    text-decoration-line: none;
    text-decoration-thickness: initial;
    text-decoration-style: initial;
    text-decoration-color: initial;
  }
  :where(body:has(#occasions.moments)) .occasion-new-cover .occasion-copy {
    font-weight: 700;
  }
  :where(body:has(#occasions.moments)) #occasions .occasion-new-cover .occasion-media {
    aspect-ratio: 470 / 145 !important;
    height: auto !important;
    background-image: initial !important;
    background-position-x: initial !important;
    background-position-y: initial !important;
    background-size: initial !important;
    background-repeat: initial !important;
    background-attachment: initial !important;
    background-origin: initial !important;
    background-clip: initial !important;
    background-color: rgb(7, 21, 46) !important;
    position: relative;
    z-index: 1;
    overflow-x: hidden !important;
    overflow-y: hidden !important;
    border-top-left-radius: 19px !important;
    border-top-right-radius: 19px !important;
    border-bottom-right-radius: 0px !important;
    border-bottom-left-radius: 0px !important;
    width: 100% !important;
    min-height: 0px;
  }
  :where(body:has(#occasions.moments)) #occasions .occasion-new-cover .occasion-media img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    background-image: initial !important;
    background-position-x: initial !important;
    background-position-y: initial !important;
    background-size: initial !important;
    background-repeat: initial !important;
    background-attachment: initial !important;
    background-origin: initial !important;
    background-clip: initial !important;
    background-color: transparent !important;
    display: block !important;
    transform: none !important;
  }
  :where(body:has(#occasions.moments)) #occasions.moments {
    position: relative;
    overflow-x: hidden;
    overflow-y: hidden;
    background-image: radial-gradient(at 0% 3%, rgba(0, 132, 255, 0.22), transparent 33%), radial-gradient(at 100% 3%, rgba(255, 31, 164, 0.24), transparent 34%), linear-gradient(rgb(6, 21, 46) 0%, rgb(4, 19, 41) 100%) !important;
    background-color: initial !important;
    padding-top: 38px !important;
    padding-right: 0px !important;
    padding-bottom: 28px !important;
    padding-left: 0px !important;
  
    background: transparent !important;

    padding: 36px 0 24px;
}
  :where(body:has(#occasions.moments)) #occasions.moments::before {
    content: "\266a" !important;
    position: absolute;
    top: 58px !important;
    font-size: 30px !important;
    font-weight: 800;
    line-height: 1;
    color: rgb(65, 191, 255) !important;
    text-shadow: currentcolor 0px 0px 16px, currentcolor 0px 0px 34px;
    opacity: 1 !important;
    pointer-events: none;
    left: 18px !important;
    transform: rotate(-12deg);
    filter: drop-shadow(currentcolor 0px 0px 8px);
  }
  :where(body:has(#occasions.moments)) #occasions.moments::after {
    content: "\266a" !important;
    position: absolute;
    top: 58px !important;
    font-size: 30px !important;
    font-weight: 800;
    line-height: 1;
    color: rgb(255, 88, 173) !important;
    text-shadow: currentcolor 0px 0px 16px, currentcolor 0px 0px 34px;
    opacity: 1 !important;
    pointer-events: none;
    left: auto;
    right: 18px !important;
    transform: rotate(12deg);
    filter: drop-shadow(currentcolor 0px 0px 8px);
  }
  :where(body:has(#occasions.moments)) #occasions .script-title {
    text-shadow: rgba(255, 70, 150, 0.18) 0px 2px 18px;
    font-size: 46px !important;
    line-height: 1.05 !important;
    color: rgb(255, 255, 255) !important;
    text-align: center !important;
    margin-bottom: 5px !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-style: italic !important;
    font-weight: 700 !important;
    margin-top: 0px !important;
    margin-right: auto !important;
    margin-left: auto !important;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
  }
  :where(body:has(#occasions.moments)) #occasions .section-lead {
    position: relative;
    margin-bottom: 28px !important;
    text-align: center !important;
    font-size: 20px !important;
    color: rgb(219, 228, 242) !important;
    margin-top: 0px !important;
    margin-right: auto !important;
    margin-left: auto !important;
    font-weight: 400 !important;
  }
  :where(body:has(#occasions.moments)) #occasions .section-lead::before {
    content: "â™¡";
    display: none !important;
    margin-top: 0px;
    margin-right: auto;
    margin-bottom: 14px !important;
    margin-left: auto;
    color: rgb(255, 108, 168);
    font-size: 42px !important;
    line-height: 1;
    text-shadow: rgba(255, 70, 150, 0.65) 0px 0px 16px;
  }
  :where(body:has(#occasions.moments)) #occasions .occasion-grid {
    row-gap: 18px !important;
    column-gap: 22px !important;
    max-width: 1080px !important;
    grid-template-columns: repeat(3,minmax(0,1fr)) !important;
    display: grid !important;
    margin-top: 0px !important;
    margin-right: auto !important;
    margin-bottom: 0px !important;
    margin-left: auto !important;
    width: 100%;
  
    gap: 20px !important;
}
  :where(body:has(#occasions.moments)) #occasions .occasion-new-cover {
    position: relative;
    overflow-x: hidden !important;
    overflow-y: hidden !important;
    box-shadow: rgba(0, 0, 0, 0.24) 0px 8px 18px !important;
    transition-behavior: normal, normal, normal;
    transition-duration: 0.22s, 0.22s, 0.22s;
    transition-timing-function: ease, ease, ease;
    transition-delay: 0s, 0s, 0s;
    transition-property: transform, border-color, box-shadow;
    border-top-width: 1.5px !important;
    border-right-width: 1.5px !important;
    border-bottom-width: 1.5px !important;
    border-left-width: 1.5px !important;
    border-top-style: solid !important;
    border-right-style: solid !important;
    border-bottom-style: solid !important;
    border-left-style: solid !important;
    border-top-color: rgb(67, 141, 255) !important;
    border-right-color: rgb(67, 141, 255) !important;
    border-bottom-color: rgb(67, 141, 255) !important;
    border-left-color: rgb(67, 141, 255) !important;
    border-image-source: none !important;
    border-image-slice: 100% !important;
    border-image-width: 1 !important;
    border-image-outset: 0 !important;
    border-image-repeat: stretch !important;
    border-top-left-radius: 21px !important;
    border-top-right-radius: 21px !important;
    border-bottom-right-radius: 21px !important;
    border-bottom-left-radius: 21px !important;
    background-image: initial !important;
    background-position-x: initial !important;
    background-position-y: initial !important;
    background-size: initial !important;
    background-repeat: initial !important;
    background-attachment: initial !important;
    background-origin: initial !important;
    background-clip: initial !important;
    background-color: rgb(7, 27, 60) !important;
    display: flex !important;
    flex-direction: column !important;
    height: auto !important;
    transform: none !important;
    min-height: 0px;
  }
  :where(body:has(#occasions.moments)) #occasions .occasion-new-cover::before {
    content: "";
    position: absolute;
    top: -1px;
    right: -1px;
    bottom: -1px;
    left: -1px;
    z-index: 2;
    border-top-left-radius: inherit;
    border-top-right-radius: inherit;
    border-bottom-right-radius: inherit;
    border-bottom-left-radius: inherit;
    pointer-events: none;
    background-image: linear-gradient(120deg, rgba(55, 174, 255, 0.26), transparent 32%, transparent 68%, rgba(255, 54, 157, 0.24));
    background-position-x: initial;
    background-position-y: initial;
    background-size: initial;
    background-repeat: initial;
    background-attachment: initial;
    background-origin: initial;
    background-clip: initial;
    background-color: initial;
    opacity: 0.45;
    display: none !important;
  }
  :where(body:has(#occasions.moments)) #occasions .occasion-new-cover:hover {
    transform: translateY(-4px);
    box-shadow: rgba(0, 0, 0, 0.3) 0px 16px 34px, rgba(255, 57, 150, 0.13) 0px 0px 22px;
    border-top-color: rgba(255, 89, 164, 0.75) !important;
    border-right-color: rgba(255, 89, 164, 0.75) !important;
    border-bottom-color: rgba(255, 89, 164, 0.75) !important;
    border-left-color: rgba(255, 89, 164, 0.75) !important;
  }
  :where(body:has(#occasions.moments)) #occasions .occasion-new-cover:focus-visible {
    transform: translateY(-4px);
    box-shadow: rgba(0, 0, 0, 0.3) 0px 16px 34px, rgba(255, 57, 150, 0.13) 0px 0px 22px;
    border-top-color: rgba(255, 89, 164, 0.75) !important;
    border-right-color: rgba(255, 89, 164, 0.75) !important;
    border-bottom-color: rgba(255, 89, 164, 0.75) !important;
    border-left-color: rgba(255, 89, 164, 0.75) !important;
  }
  :where(body:has(#occasions.moments)) #occasions .occasion-new-cover .occasion-media::after {
    content: "";
    position: absolute;
    top: 0px;
    right: 0px;
    bottom: 0px;
    left: 0px;
    pointer-events: none;
    background-image: linear-gradient(transparent 55%, rgba(3, 13, 34, 0.45) 100%) !important;
    background-position-x: initial !important;
    background-position-y: initial !important;
    background-size: initial !important;
    background-repeat: initial !important;
    background-attachment: initial !important;
    background-origin: initial !important;
    background-clip: initial !important;
    background-color: initial !important;
    z-index: 1;
    display: none !important;
  }
  :where(body:has(#occasions.moments)) #occasions .occasion-new-cover .occasion-copy {
    position: relative;
    z-index: 3;
    background-image: linear-gradient(rgb(11, 45, 96) 0%, rgb(7, 27, 60) 100%) !important;
    background-position-x: initial !important;
    background-position-y: initial !important;
    background-size: initial !important;
    background-repeat: initial !important;
    background-attachment: initial !important;
    background-origin: initial !important;
    background-clip: initial !important;
    background-color: initial !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    min-height: 76px !important;
    padding-top: 9px !important;
    padding-right: 12px !important;
    padding-bottom: 11px !important;
    padding-left: 12px !important;
    display: flex !important;
    justify-content: center !important;
    border-top-width: 1px;
    border-top-style: solid;
    border-top-color: rgba(255, 255, 255, 0.04);
    height: auto !important;
  }
  :where(body:has(#occasions.moments)) #occasions .occasion-new-cover .occasion-copy b {
    letter-spacing: 0.01em !important;
    color: rgb(255, 255, 255) !important;
    text-shadow: rgba(255, 255, 255, 0.08) 0px 1px 8px;
    font-size: 15px !important;
    line-height: 1.1 !important;
    font-weight: 900 !important;
  }
  :where(body:has(#occasions.moments)) #occasions .occasion-new-cover .occasion-copy small {
    color: rgb(238, 243, 251) !important;
    margin-top: 7px !important;
    font-size: 12px !important;
    line-height: 1.25 !important;
    font-weight: 400 !important;
  }
  :where(body:has(#occasions.moments)) #occasions .home-shell {
    max-width: 1080px !important;
    padding-top: 0px !important;
    padding-right: 0px !important;
    padding-bottom: 0px !important;
    padding-left: 0px !important;
    width: min(1080px, 100% - 40px);
    margin-top: 0px;
    margin-right: auto;
    margin-bottom: 0px;
    margin-left: auto;
  }
  :where(body:has(#occasions.moments)) #occasions .script-title span {
    color: rgb(255, 111, 159) !important;
    text-shadow: none !important;
  }
  :where(body:has(#occasions.moments)) #occasions .occasion-new-cover:nth-child(2n) {
    border-top-color: rgb(163, 77, 155) !important;
    border-right-color: rgb(163, 77, 155) !important;
    border-bottom-color: rgb(163, 77, 155) !important;
    border-left-color: rgb(163, 77, 155) !important;
  }
  :where(body:has(#occasions.moments)) #occasions .occasion-new-cover .occasion-media::before {
    content: "";
    position: absolute;
    top: 0px;
    right: 0px;
    bottom: 0px;
    left: 0px;
    z-index: 2;
    background-image: linear-gradient(110deg, transparent 25%, rgba(255, 255, 255, 0.11) 46%, transparent 63%);
    background-position-x: initial;
    background-position-y: initial;
    background-size: initial;
    background-repeat: initial;
    background-attachment: initial;
    background-origin: initial;
    background-clip: initial;
    background-color: initial;
    transform: translateX(-130%);
    transition-behavior: normal;
    transition-duration: 0.65s;
    transition-timing-function: ease;
    transition-delay: 0s;
    transition-property: transform;
    pointer-events: none;
    display: none !important;
  }
  :where(body:has(#occasions.moments)) #occasions .occasion-new-cover:hover .occasion-media::before {
    transform: translateX(130%);
  }
  :where(body:has(#occasions.moments)) #occasions .occasion-grid .occasion:last-child {
    grid-column-start: 1 !important;
    grid-column-end: -1 !important;
    width: 100% !important;
    justify-self: stretch !important;
  
    grid-column: auto !important;
}
  :where(body:has(#occasions.moments)) #occasions .wow-heart {
    position: relative;
    width: 280px;
    margin-top: 0px;
    margin-right: auto;
    margin-bottom: 8px;
    margin-left: auto;
    color: rgb(255, 112, 168);
    font-size: 45px;
    line-height: 1;
    text-align: center;
    text-shadow: rgba(255, 73, 157, 0.55) 0px 0px 12px;
  }
  :where(body:has(#occasions.moments)) #occasions .wow-heart::before {
    content: "";
    position: absolute;
    top: 50%;
    width: 105px;
    height: 1px;
    background-image: linear-gradient(90deg, transparent, rgb(62, 169, 255));
    background-position-x: initial;
    background-position-y: initial;
    background-size: initial;
    background-repeat: initial;
    background-attachment: initial;
    background-origin: initial;
    background-clip: initial;
    background-color: initial;
    left: 0px;
  }
  :where(body:has(#occasions.moments)) #occasions .wow-heart::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 105px;
    height: 1px;
    background-image: linear-gradient(90deg, transparent, rgb(255, 79, 163));
    background-position-x: initial;
    background-position-y: initial;
    background-size: initial;
    background-repeat: initial;
    background-attachment: initial;
    background-origin: initial;
    background-clip: initial;
    background-color: initial;
    right: 0px;
    transform: scaleX(-1);
  }
  :where(body:has(#occasions.moments)) #occasions .wow-title .wow-title-white {
    display: block !important;
    white-space-collapse: collapse !important;
    text-wrap-mode: nowrap !important;
    color: rgb(255, 255, 255) !important;
  }
  :where(body:has(#occasions.moments)) #occasions .wow-title .wow-title-pink {
    display: block !important;
    white-space-collapse: collapse !important;
    text-wrap-mode: nowrap !important;
    color: rgb(255, 111, 159) !important;
  }
  :where(body:has(#occasions.moments)) .home-realisations-link .home-shell {
    width: min(1080px, 100% - 40px);
    margin-top: 0px;
    margin-right: auto;
    margin-bottom: 0px;
    margin-left: auto;
  }
  :where(body:has(#occasions.moments)) .prices.home-price-compact > .home-shell {
    width: min(1080px, 100% - 40px);
    margin-top: 0px;
    margin-right: auto;
    margin-bottom: 0px;
    margin-left: auto;
  }
  :where(body:has(#occasions.moments)) .testimonial > .home-shell {
    width: min(1080px, 100% - 40px);
    margin-top: 0px;
    margin-right: auto;
    margin-bottom: 0px;
    margin-left: auto;
  }
  :where(body:has(#occasions.moments)) .testimonial .reviews-grid:not(:has(> *)) {
    display: none;
  }
  :where(body:has(#occasions.moments)) .final-cta > .home-shell {
    width: min(1080px, 100% - 40px);
    margin-top: 0px;
    margin-right: auto;
    margin-bottom: 0px;
    margin-left: auto;
  }
  :where(body:has(#occasions.moments)) .final-cta .script-title {
    margin-top: 0px;
    margin-right: auto;
    margin-bottom: 12px;
    margin-left: auto;
    text-align: center;
  }

  /* Les reglages communs du site desktop sont dans style.css. */





  body:has(#occasions.moments) .prices.home-price-compact {
    background: transparent;
  }




  body:has(#occasions.moments) .realisations-teaser > div,
  body:has(#occasions.moments) .home-price-copy {
    min-width: 0;
  }
}


/* Carrousel d'avis accueil — un seul avis visible, transition douce toutes les 20 s */
.reviews-carousel{max-width:760px;margin:24px auto 18px;overflow:hidden}
.reviews-carousel-stage{display:grid;position:relative;overflow:hidden}
.review-slide{grid-area:1/1;opacity:1;visibility:hidden;transform:translateX(105%);transition:transform .9s cubic-bezier(.65,0,.35,1),visibility 0s linear .9s;pointer-events:none;will-change:transform}
.review-slide.is-active{visibility:visible;transform:translateX(0);transition-delay:0s;pointer-events:auto}
.review-slide.is-exit-left{visibility:visible;transform:translateX(-105%);transition-delay:0s}
.review-actions{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap;margin-top:10px}
.review-link-secondary{opacity:.82}
.public-reviews-page{min-height:70vh}
.public-reviews-page .page-heading{text-align:center;max-width:820px;margin:0 auto 30px}
.all-reviews-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:1000px;margin:0 auto}
.reviews-pagination{display:flex;justify-content:center;align-items:center;gap:16px;flex-wrap:wrap;margin:28px auto 0}
.reviews-pagination span{color:#b9c5da;font-weight:700}
.public-reviews-cta{text-align:center;margin-top:28px}
@media(max-width:760px){.reviews-carousel{max-width:100%}.review-slide{transform:translateX(105%)}.review-slide.is-active{transform:translateX(0)}.review-slide.is-exit-left{transform:translateX(-105%)}.all-reviews-grid{grid-template-columns:1fr}.review-actions{gap:8px}}
@media(prefers-reduced-motion:reduce){.review-slide{transition:none!important;transform:none!important}}


/* =========================================================
   HOME SHOWCASE — vidéo + chanson complète
   ========================================================= */
.home-showcase{position:relative;padding:54px 0 76px;overflow:hidden}
.home-showcase::before{content:"";position:absolute;inset:5% auto auto 50%;width:min(900px,78vw);height:420px;transform:translateX(-50%);background:radial-gradient(ellipse at center,rgba(255,87,197,.16),rgba(123,102,255,.12) 42%,transparent 72%);filter:blur(32px);pointer-events:none}
.home-showcase .home-shell{position:relative;z-index:1;width:min(1180px,calc(100% - 32px));margin:auto}
.home-showcase-heading{max-width:860px;margin:0 auto 34px;text-align:center}
.home-showcase-heading .script-title{margin:6px 0 12px;font-size:clamp(38px,5vw,64px);line-height:1.02}
.home-showcase-heading>p:last-child{max-width:720px;margin:0 auto;color:#cbd3e8;font-size:17px;line-height:1.65}
.home-showcase-grid{display:grid;grid-template-columns:minmax(300px,.78fr) minmax(0,1.35fr);gap:26px;align-items:stretch}
.showcase-video-card,.showcase-song-card{position:relative;border:1px solid rgba(207,196,255,.22);background:linear-gradient(180deg,rgba(11,19,52,.68),rgba(13,18,47,.5));box-shadow:inset 0 1px rgba(255,255,255,.09),0 24px 64px rgba(3,6,25,.26);backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%)}
.showcase-video-card{padding:16px;border-radius:30px;display:flex;flex-direction:column;gap:14px}
.showcase-card-kicker{display:flex;align-items:center;gap:9px;padding:2px 4px;color:#eef3ff;font-size:12px;font-weight:900;letter-spacing:.12em}
.showcase-dot{width:9px;height:9px;border-radius:50%;background:#ff5dcc;box-shadow:0 0 0 5px rgba(255,93,204,.10),0 0 20px rgba(255,93,204,.65);animation:showcasePulse 1.8s ease-in-out infinite}
@keyframes showcasePulse{50%{transform:scale(1.22);box-shadow:0 0 0 8px rgba(255,93,204,.05),0 0 25px rgba(255,93,204,.78)}}
.showcase-video-frame{position:relative;width:min(100%,342px);margin:auto;aspect-ratio:9/16;border-radius:24px;overflow:hidden;background:#071127;box-shadow:0 20px 42px rgba(3,6,25,.34)}
.showcase-video{display:block;width:100%;height:100%;object-fit:cover;background:#071127}
.showcase-video-copy{display:grid;gap:4px;padding:2px 6px 4px;text-align:center}
.showcase-video-copy strong{color:#fff;font-size:16px}
.showcase-video-copy span{color:#bfc8df;font-size:13px;line-height:1.45}
.showcase-song-card{border-radius:32px;padding:20px;display:grid;grid-template-columns:190px minmax(0,1fr);gap:24px;align-items:center;overflow:visible}
.showcase-song-cover{position:relative;align-self:center;width:190px;aspect-ratio:1;border-radius:26px;overflow:hidden;background:#071127;box-shadow:0 20px 42px rgba(3,6,25,.30)}
.showcase-song-cover::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 52%,rgba(5,10,29,.72));pointer-events:none}
.showcase-song-cover img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.showcase-song-badge{position:absolute;left:14px;bottom:14px;z-index:2;padding:7px 11px;border-radius:999px;background:rgba(9,15,40,.76);border:1px solid rgba(255,255,255,.16);color:#fff;font-size:11px;font-weight:900;letter-spacing:.11em;backdrop-filter:blur(12px)}
.showcase-song-content{min-width:0}
.showcase-song-overline{margin:0 0 5px;color:#ff8dd5!important;font-size:12px;font-weight:900;letter-spacing:.14em}
.showcase-song-content h3{margin:0 0 8px;font-size:clamp(34px,4vw,52px);line-height:1;color:#fff}
.showcase-song-description{margin:0 0 20px;color:#c8d1e7!important;line-height:1.55}
.showcase-player{display:grid;grid-template-columns:108px minmax(0,1fr);gap:22px;align-items:center;padding:18px 20px;border-radius:26px;background:rgba(4,10,31,.34);border:1px solid rgba(169,153,255,.14);overflow:visible}
.home-showcase-play{--beam-speed:4.6s;position:relative;isolation:isolate;width:86px;height:86px;margin:auto;border:0;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 38% 30%,rgba(255,255,255,.12),#0b173b 70%);color:#fff;font-size:30px;cursor:pointer;box-shadow:inset 0 0 0 1px rgba(255,255,255,.11),0 10px 28px rgba(4,8,28,.34);overflow:visible}
.home-showcase-play::before{content:"";position:absolute;inset:-10px;border-radius:50%;padding:5px;background:conic-gradient(from 0deg,#ff34c4,#ff8fe1 16%,#a45dff 36%,#5fe3ff 58%,#7089ff 76%,#ff34c4);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:showcaseBeam var(--beam-speed) linear infinite;z-index:-1;filter:saturate(1.35) brightness(1.25)}
.home-showcase-play::after{content:"";position:absolute;inset:-23px;border-radius:50%;background:conic-gradient(from 0deg,rgba(255,52,196,.58),rgba(164,93,255,.45),rgba(95,227,255,.56),rgba(112,137,255,.42),rgba(255,52,196,.58));filter:blur(15px);opacity:.72;animation:showcaseBeam var(--beam-speed) linear infinite;z-index:-2;-webkit-mask-image:radial-gradient(circle,transparent 0 50%,#000 61%,rgba(0,0,0,.65) 78%,transparent 100%);mask-image:radial-gradient(circle,transparent 0 50%,#000 61%,rgba(0,0,0,.65) 78%,transparent 100%)}
.home-showcase-play:hover::before,.home-showcase-play:focus-visible::before{filter:saturate(1.55) brightness(1.45)}
.home-showcase-play:hover::after,.home-showcase-play:focus-visible::after{opacity:.9}
.home-showcase-play span{position:relative;z-index:2;transform:translateX(2px)}
.home-showcase-play.is-playing span{transform:none}
@keyframes showcaseBeam{to{transform:rotate(360deg)}}
.showcase-player-main{min-width:0}
.showcase-player-meta,.showcase-player-time{display:flex;justify-content:space-between;gap:12px;align-items:center}
.showcase-player-meta{margin-bottom:7px;color:#eef3ff;font-size:13px}
.showcase-player-meta strong{color:#fff}
.showcase-player-time{margin-top:6px;color:#9eaccb;font-size:11px}
.showcase-progress{width:100%;height:22px;margin:0;background:transparent;-webkit-appearance:none;appearance:none}
.showcase-progress::-webkit-slider-runnable-track{height:7px;border-radius:999px;background:linear-gradient(90deg,#ff52cc 0%,#9d72ff var(--showcase-progress,0%),rgba(116,129,169,.38) var(--showcase-progress,0%),rgba(116,129,169,.38) 100%)}
.showcase-progress::-webkit-slider-thumb{-webkit-appearance:none;width:17px;height:17px;margin-top:-5px;border-radius:50%;border:2px solid #fff;background:#fff;box-shadow:0 0 0 4px rgba(164,103,255,.11)}
.showcase-progress::-moz-range-track{height:7px;border-radius:999px;background:rgba(116,129,169,.38)}
.showcase-progress::-moz-range-progress{height:7px;border-radius:999px;background:linear-gradient(90deg,#ff52cc,#9d72ff)}
.showcase-progress::-moz-range-thumb{width:17px;height:17px;border:2px solid #fff;border-radius:50%;background:#fff}
.showcase-listen-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:14px 0 16px}
.showcase-refrain{border:1px solid rgba(255,127,209,.28);border-radius:999px;padding:10px 15px;background:rgba(255,89,199,.08);color:#ffd8f1;font-weight:850;cursor:pointer;transition:.2s ease}
.showcase-refrain:hover{background:rgba(255,89,199,.16);border-color:rgba(255,127,209,.48);transform:translateY(-1px)}
.showcase-volume{display:flex;align-items:center;gap:9px;color:#aeb9d5;font-size:11px;font-weight:800}
.showcase-volume input{width:110px;accent-color:#9d72ff}
.showcase-proof{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 17px}
.showcase-proof span{padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08);color:#cbd4e9;font-size:11px;font-weight:750}
.showcase-cta-row{display:flex;gap:10px;flex-wrap:wrap}
.showcase-cta-primary,.showcase-cta-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 18px;border-radius:999px;font-weight:900;transition:.2s ease}
.showcase-cta-primary{background:linear-gradient(135deg,#7d43d6,#c94e9b 58%,#e65e87);color:#fff;box-shadow:0 12px 28px rgba(104,42,170,.28)}
.showcase-cta-secondary{border:1px solid rgba(202,194,255,.22);background:rgba(255,255,255,.04);color:#eef3ff}
.showcase-cta-primary:hover,.showcase-cta-secondary:hover{transform:translateY(-2px);filter:brightness(1.08)}
.showcase-price-note{margin:13px 0 0!important;color:#abb7d3!important;font-size:12px}
.showcase-price-note strong{color:#fff}
@media(max-width:900px){.home-showcase-grid{grid-template-columns:1fr}.showcase-video-card{max-width:470px;width:100%;margin:auto}.showcase-song-card{grid-template-columns:180px minmax(0,1fr)}}
@media(max-width:700px){.home-showcase{padding:36px 0 56px}.home-showcase-heading{margin-bottom:24px}.home-showcase-heading>p:last-child{font-size:15px}.showcase-song-card{grid-template-columns:1fr;padding:15px;border-radius:26px}.showcase-song-cover{width:min(100%,300px);aspect-ratio:1}.showcase-song-cover img{object-position:center}.showcase-player{grid-template-columns:88px minmax(0,1fr);gap:14px;padding:16px 13px}.home-showcase-play{width:72px;height:72px;font-size:26px}.home-showcase-play::before{inset:-9px;padding:4px}.home-showcase-play::after{inset:-19px;filter:blur(13px)}.showcase-listen-actions{align-items:flex-start;flex-direction:column}.showcase-volume{width:100%;justify-content:space-between}.showcase-volume input{flex:1;max-width:210px}.showcase-cta-row{display:grid;grid-template-columns:1fr;width:100%}.showcase-cta-primary,.showcase-cta-secondary{width:100%}}
@media(prefers-reduced-motion:reduce){.home-showcase-play::before,.home-showcase-play::after,.showcase-dot{animation:none}}


/* FINAL SHOWCASE POLISH 2026-10-10 */
.home-showcase .showcase-card-kicker{font-size:12px!important;letter-spacing:.12em!important;color:#ff8fd5!important}
.home-showcase .showcase-player{display:grid!important;grid-template-columns:76px minmax(0,1fr)!important;gap:18px!important;align-items:center!important}
.home-showcase .home-showcase-play{
  width:70px!important;height:70px!important;border-radius:50%!important;border:0!important;
  position:relative!important;isolation:isolate!important;overflow:visible!important;
  background:radial-gradient(circle at 38% 30%,rgba(255,255,255,.16),rgba(10,17,43,.98) 72%)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.14),0 10px 24px rgba(4,7,28,.24)!important;
}
.home-showcase .home-showcase-play::before{
  content:""!important;position:absolute!important;inset:-8px!important;border-radius:50%!important;padding:3px!important;
  background:conic-gradient(from 0deg,#ff2fbf,#ff76df,#9d5cff,#5c7cff,#43dcff,#8a67ff,#ff2fbf)!important;
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0)!important;
  -webkit-mask-composite:xor!important;mask-composite:exclude!important;
  filter:drop-shadow(0 0 7px rgba(255,57,202,.42)) drop-shadow(0 0 11px rgba(70,209,255,.30))!important;
  animation:cmcShowcaseBeam 4.8s linear infinite!important;z-index:-1!important;
}
.home-showcase .home-showcase-play::after{
  content:""!important;position:absolute!important;inset:-14px!important;border-radius:50%!important;
  background:radial-gradient(circle,transparent 54%,rgba(255,52,198,.16) 63%,rgba(84,209,255,.11) 72%,transparent 82%)!important;
  filter:blur(5px)!important;opacity:.72!important;z-index:-2!important;
}
@keyframes cmcShowcaseBeam{to{transform:rotate(360deg)}}
.home-showcase .showcase-song-content{padding-top:2px!important}
.home-showcase .showcase-listen-actions{margin-top:14px!important}
@media(max-width:640px){.home-showcase .showcase-player{grid-template-columns:70px minmax(0,1fr)!important;gap:14px!important}.home-showcase .home-showcase-play{width:64px!important;height:64px!important}}


/* source: components.css */
.panel,.card { background: linear-gradient(180deg,#102344,#09162d); border: 1px solid var(--line); border-radius: 18px; padding: 22px; }
.grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(220px,1fr)); gap: 18px; }
.form-wrap { max-width: 850px; padding: 45px 0; }
.form-wrap > h1,.login h1 { font-size: 40px; margin-bottom: 8px; }
.form-step { display: none; }
.form-step.active { display: block; }
.field { margin: 18px 0; }
.field label { display: block; font-weight: 700; margin-bottom: 8px; }
.field input,.field select,.field textarea { width: 100%; padding: 14px 15px; border-radius: 12px; border: 1px solid rgba(255,255,255,.15); background: #08152e; color: #fff; outline: none; }
.field input:focus,.field select:focus,.field textarea:focus { border-color: #ff668e; }
.choice { display: block; border: 1px solid rgba(255,255,255,.14); border-radius: 12px; padding: 14px; margin: 10px 0; }
.actions { display: flex; justify-content: space-between; gap: 12px; margin-top: 26px; }
.btn { border: 0; border-radius: 999px; padding: 15px 24px; background: linear-gradient(90deg,var(--pink),var(--orange)); color: #fff; font-weight: 800; cursor: pointer; }
/* Bouton Retour du parcours de commande */
.actions button[data-prev]{
    border:1px solid rgba(255,111,159,.65);
    border-radius:999px;
    padding:15px 22px;
    background:linear-gradient(135deg,rgba(19,45,86,.95),rgba(10,27,58,.95));
    color:#fff;
    font-weight:800;
    cursor:pointer;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.03);
    transition:transform .18s ease,border-color .18s ease,background .18s ease;
}



.actions button[data-prev]:hover{
    border-color:#ff6f9f;
    background:linear-gradient(135deg,rgba(30,61,108,.98),rgba(14,35,72,.98));
    transform:translateY(-1px);
}

.actions button[data-prev]:active{
    transform:translateY(0);
}

@media(max-width:600px){
    .actions button[data-prev]{
        padding:15px 18px;
        min-width:112px;
    }
}
.progress { height: 8px; background: rgba(255,255,255,.08); border-radius: 99px; overflow: hidden; margin: 22px 0; }
.progress i { display: block; height: 100%; background: linear-gradient(90deg,var(--pink),var(--orange)); width: 16%; }
.table { width: 100%; border-collapse: collapse; }
.table th,.table td { padding: 12px; border-bottom: 1px solid rgba(255,255,255,.09); text-align: left; }
.badge { display: inline-block; padding: 6px 10px; border-radius: 999px; background: rgba(255,255,255,.09); }
.timeline { display: flex; gap: 8px; flex-wrap: wrap; }
.timeline span { padding: 9px 12px; border-radius: 999px; background: rgba(255,255,255,.07); }
.timeline .done { background: #1d8054; }
.alert,.success { padding: 14px; border-radius: 12px; margin: 15px 0; }
.alert { background: #7b2639; }
.success { background: #176b4a; }
.audio { width: 100%; }
.login { max-width: 500px; margin: 55px auto; padding: 28px; }
.legal-page { max-width: 850px; margin: auto; padding: 50px 20px; line-height: 1.7; }

.legal-copy h2{margin-top:28px;margin-bottom:8px}.legal-copy p{line-height:1.7}.menu-toggle{touch-action:manipulation}

/* Pages Tarifs & FAQ */
.page-heading{text-align:center;max-width:760px;margin:0 auto 34px}.page-heading h1{font-size:clamp(34px,6vw,58px);margin:8px 0 10px}.page-heading p{color:var(--muted);font-size:18px}.eyebrow{font-size:12px;font-weight:900;letter-spacing:.18em;color:#ff7699}.pricing-page,.faq-page{padding-top:54px;padding-bottom:70px}.pricing-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.price-card{position:relative;background:linear-gradient(180deg,#102344,#09162d);border:1px solid var(--line);border-radius:22px;padding:26px;text-align:center}.price-card.featured{transform:translateY(-8px);box-shadow:0 18px 45px rgba(0,0,0,.28);border-color:rgba(255,118,153,.55)}.price-card>span{font-size:13px;font-weight:900;letter-spacing:.12em}.price-card>strong{display:block;font-size:42px;margin:12px 0}.price-card p{min-height:54px;color:var(--muted)}.price-card .btn{display:inline-block;margin-top:10px;text-decoration:none}.delivery-note{margin:28px auto 40px;padding:18px 20px;max-width:900px;text-align:center;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.04)}.compare-wrap h2{text-align:center;font-size:30px}.compare-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:20px;background:#09162d}.compare-table{width:100%;min-width:720px;border-collapse:collapse}.compare-table th,.compare-table td{padding:15px 14px;border-bottom:1px solid rgba(255,255,255,.08);text-align:center}.compare-table th:first-child,.compare-table td:first-child{text-align:left}.compare-table thead th{background:#102344;position:sticky;top:0}.compare-table tbody tr:hover{background:rgba(255,255,255,.025)}.yes,.no{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;font-weight:1000}.yes{background:rgba(44,196,119,.16);color:#59e49c}.no{background:rgba(255,75,98,.15);color:#ff6678}.faq-list{max-width:900px;margin:0 auto}.faq-item{border:1px solid var(--line);border-radius:16px;background:linear-gradient(180deg,#102344,#09162d);margin:12px 0;overflow:hidden}.faq-item summary{cursor:pointer;list-style:none;padding:19px 20px;font-weight:800;display:flex;justify-content:space-between;gap:20px}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary span{font-size:24px;line-height:18px}.faq-item[open] summary .faq-plus{transform:rotate(45deg)}.faq-answer{padding:0 20px 18px;color:var(--muted);line-height:1.7}.faq-contact{max-width:900px;margin:30px auto 0;text-align:center}.faq-contact .btn{display:inline-block;text-decoration:none;margin-top:8px}

/* FAQ premium — cohérente avec l'univers visuel Crée Ma Chanson */
.faq-page{position:relative;isolation:isolate}.faq-page:before,.faq-page:after{content:"";position:absolute;z-index:-1;border-radius:50%;filter:blur(70px);opacity:.2;pointer-events:none}.faq-page:before{width:320px;height:320px;background:#ff2f87;top:110px;left:-170px}.faq-page:after{width:360px;height:360px;background:#ff9857;top:640px;right:-210px}.faq-hero{text-align:center;max-width:780px;margin:0 auto 46px}.faq-hero h1{font-size:clamp(38px,7vw,64px);margin:8px 0 12px;letter-spacing:-.035em}.faq-hero p{color:var(--muted);font-size:18px;line-height:1.6}.faq-groups{max-width:940px;margin:0 auto;display:grid;gap:28px}.faq-group{padding:20px;border:1px solid rgba(255,255,255,.1);border-radius:26px;background:linear-gradient(145deg,rgba(17,40,78,.78),rgba(6,17,39,.86));box-shadow:0 20px 55px rgba(0,0,0,.18);backdrop-filter:blur(8px)}.faq-group-title{display:flex;align-items:center;gap:14px;padding:2px 4px 15px}.faq-group-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:15px;background:linear-gradient(135deg,#ff2f87,#ff9857);font-size:23px;font-weight:900;box-shadow:0 8px 24px rgba(255,47,135,.22)}.faq-group-title small{color:#ff91ad;font-size:10px;font-weight:900;letter-spacing:.16em}.faq-group-title h2{margin:2px 0 0;font-size:23px}.faq-list{max-width:none;margin:0;display:grid;gap:10px}.faq-item{margin:0;border:1px solid rgba(159,181,222,.18);border-radius:16px;background:rgba(7,20,45,.72);transition:border-color .2s ease,background .2s ease,transform .2s ease}.faq-item:hover{border-color:rgba(255,118,153,.4)}.faq-item[open]{border-color:rgba(255,118,153,.48);background:linear-gradient(135deg,rgba(255,47,135,.075),rgba(255,152,87,.035)),rgba(7,20,45,.82)}.faq-item summary{padding:18px 18px 18px 20px;align-items:center}.faq-question{font-size:16px;line-height:1.35}.faq-plus{flex:0 0 auto;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:rgba(255,255,255,.07);color:#ff8ca7;font-size:22px;transition:.2s ease}.faq-item[open] .faq-plus{transform:rotate(45deg);background:linear-gradient(135deg,#ff2f87,#ff9857);color:white}.faq-answer{padding:0 58px 18px 20px;color:#c9d3e5}.faq-answer p{margin:0;line-height:1.7}.faq-contact{max-width:940px;margin:34px auto 0;padding:32px 22px;text-align:center;border-radius:26px;border:1px solid rgba(255,118,153,.28);background:radial-gradient(circle at 50% 0,rgba(255,47,135,.13),transparent 52%),#0a1934}.faq-contact-note{font-size:10px;font-weight:900;letter-spacing:.18em;color:#ff91ad}.faq-contact h2{font-size:30px;margin:8px 0}.faq-contact p{color:var(--muted);margin:0 auto 16px}.faq-contact .btn{display:inline-block;text-decoration:none}
@media(max-width:760px){.faq-hero{margin-bottom:30px}.faq-hero p{font-size:16px}.faq-groups{gap:20px}.faq-group{padding:14px;border-radius:21px}.faq-group-title{padding:2px 2px 12px}.faq-group-icon{width:42px;height:42px;border-radius:13px}.faq-group-title h2{font-size:20px}.faq-item summary{padding:16px 13px 16px 15px;gap:12px}.faq-question{font-size:15px}.faq-plus{width:29px;height:29px}.faq-answer{padding:0 15px 16px;font-size:14px}.faq-contact{padding:26px 17px;border-radius:21px}}

/* Comparatif : symboles seuls, centrés sous chaque formule */
.compare-table th:not(:first-child),.compare-table td:not(:first-child){text-align:center;vertical-align:middle}.compare-table td:not(:first-child) .yes,.compare-table td:not(:first-child) .no{margin-inline:auto}.yes,.no{font-size:19px;font-family:Arial,Helvetica,sans-serif}.yes{background:rgba(44,196,119,.17);color:#59e49c;border:1px solid rgba(89,228,156,.28)}.no{background:rgba(255,75,98,.16);color:#ff6678;border:1px solid rgba(255,102,120,.28)}

/* Mot de passe sécurisé */
.password-wrap{position:relative}.password-wrap input{padding-right:50px!important}.password-toggle{position:absolute;right:9px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:#dbe3f1;width:38px;height:38px;border-radius:10px;cursor:pointer;font-size:20px}.password-toggle:hover{background:rgba(255,255,255,.06)}.password-rules{display:grid;gap:7px;margin:11px 0 0;padding:0;list-style:none}.password-rule{display:flex;align-items:center;gap:8px;color:#ff7c8d;font-size:13px;transition:.2s}.password-rule:before{content:"✕";display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:rgba(255,75,98,.14);font-weight:900}.password-rule.valid{color:#59e49c}.password-rule.valid:before{content:"✓";background:rgba(44,196,119,.14)}


/* Espace client — cartes premium cohérentes avec la FAQ */
.account-page{position:relative;isolation:isolate;padding-top:48px;padding-bottom:72px}.account-page:before{content:"";position:absolute;z-index:-1;width:330px;height:330px;border-radius:50%;background:#ff2f87;filter:blur(90px);opacity:.13;left:-210px;top:120px}.account-hero{max-width:940px;margin:0 auto 28px;padding:26px 24px;border:1px solid rgba(255,118,153,.25);border-radius:26px;background:radial-gradient(circle at 10% 0,rgba(255,47,135,.12),transparent 45%),linear-gradient(145deg,rgba(17,40,78,.88),rgba(6,17,39,.92));box-shadow:0 20px 55px rgba(0,0,0,.2)}.account-hero .eyebrow{display:block;margin-bottom:6px}.account-hero h1{margin:0 0 7px;font-size:clamp(31px,6vw,48px)}.account-hero p{margin:0;color:var(--muted)}.account-section{max-width:940px;margin:0 auto}.account-section-title{display:flex;align-items:end;justify-content:space-between;gap:14px;margin:0 4px 14px}.account-section-title h2{margin:0;font-size:27px}.orders-grid{display:grid;gap:13px}.order-card{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;padding:18px 19px;border:1px solid rgba(159,181,222,.18);border-radius:19px;background:linear-gradient(145deg,rgba(17,40,78,.78),rgba(6,17,39,.9));color:inherit;text-decoration:none;box-shadow:0 14px 34px rgba(0,0,0,.14);transition:.2s}.order-card:hover{transform:translateY(-2px);border-color:rgba(255,118,153,.48)}.order-card-main{min-width:0}.order-number{display:block;font-weight:900;font-size:18px;margin-bottom:8px}.order-meta{display:flex;flex-wrap:wrap;gap:8px 13px;color:var(--muted);font-size:14px}.order-status-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.status-pill{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.055);font-size:12px;font-weight:800}.status-pill.payment{border-color:rgba(255,152,87,.25)}.order-card-arrow{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#ff2f87,#ff9857);font-size:22px;font-weight:900}.account-empty{padding:28px;text-align:center;border:1px solid rgba(159,181,222,.18);border-radius:20px;background:rgba(7,20,45,.72);color:var(--muted)}
.order-detail{max-width:940px;margin:0 auto}.order-detail-head{padding:24px;border:1px solid rgba(255,118,153,.26);border-radius:25px;background:radial-gradient(circle at 90% 0,rgba(255,152,87,.12),transparent 44%),linear-gradient(145deg,rgba(17,40,78,.86),rgba(6,17,39,.92));margin-bottom:16px}.order-detail-head h1{margin:5px 0 12px;font-size:clamp(29px,6vw,45px)}.order-detail-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:16px}.detail-card{padding:21px;border:1px solid rgba(159,181,222,.18);border-radius:21px;background:linear-gradient(145deg,rgba(17,40,78,.72),rgba(6,17,39,.88))}.detail-card h2,.detail-card h3{margin-top:0}.detail-list{display:grid;gap:11px}.detail-row{display:grid;grid-template-columns:145px 1fr;gap:12px;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.07)}.detail-row:last-child{border-bottom:0}.detail-label{color:var(--muted);font-size:13px}.detail-value{font-weight:700;overflow-wrap:anywhere}.resume-payment{display:inline-block;margin-top:15px;text-decoration:none}.messages-card{margin-top:16px}.back-account{display:inline-block;margin-bottom:12px;color:#ff91ad;text-decoration:none;font-weight:800}
@media(max-width:760px){.account-page{padding-top:34px}.account-hero{padding:21px 17px;border-radius:21px}.account-section-title{align-items:start;flex-direction:column}.order-card{padding:16px 14px}.order-number{font-size:16px}.order-meta{font-size:13px}.order-detail-grid{grid-template-columns:1fr}.order-detail-head,.detail-card{padding:17px;border-radius:19px}.detail-row{grid-template-columns:1fr;gap:3px}.order-card-arrow{width:36px;height:36px}}

/* Comparatif tarifs — 4 colonnes visibles sans défilement horizontal */
.compare-scroll{overflow-x:visible}
.compare-table{table-layout:fixed;min-width:0;width:100%}
.compare-table th:first-child,.compare-table td:first-child{width:34%}
.compare-table th:not(:first-child),.compare-table td:not(:first-child){width:22%}
.compare-table thead th:nth-child(2){background:linear-gradient(180deg,rgba(255,47,135,.36),#102344)}
.compare-table thead th:nth-child(3){background:linear-gradient(180deg,rgba(65,82,255,.42),#102344)}
.compare-table thead th:nth-child(4){background:linear-gradient(180deg,rgba(255,139,57,.38),#102344)}
.compare-table th:nth-child(3),.compare-table td:nth-child(3){border-left:1px solid rgba(108,93,255,.48);border-right:1px solid rgba(108,93,255,.48)}
html,body{max-width:100%;overflow-x:hidden}

/* Administration : conversation et actions */
.conversation-thread{display:grid;gap:10px;margin:14px 0 20px}.message-bubble{max-width:82%;padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.09)}.message-bubble.from-admin{margin-left:auto;background:linear-gradient(135deg,rgba(255,47,135,.18),rgba(255,152,87,.09));border-color:rgba(255,118,153,.3)}.message-bubble p{margin:5px 0}.message-bubble small{color:var(--muted)}.btn-small{padding:8px 12px;font-size:12px}.admin-order-page .back-account{margin-top:8px}

/* Espace client : lecteur final et actions admin */
.client-delivery-player{margin:12px 0 14px}.admin-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.admin-actions form{margin:0}.admin-actions .btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;white-space:nowrap}

/* Footer paiements centré */
.footer-payments{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:9px;margin:16px auto}.payments-title{font-weight:700}.payment-marks{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:9px}.payment-marks>span{height:34px;min-width:54px;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;background:#fff;border-radius:7px;padding:5px 9px;color:#101b36;font-weight:900;box-shadow:0 2px 10px rgba(0,0,0,.18)}.pay-cb{flex-direction:column;line-height:.8}.pay-cb b{font-size:17px;font-style:italic;letter-spacing:-1px}.pay-cb small{font-size:5px;letter-spacing:.5px;margin-top:4px}.pay-visa{font-size:20px;font-style:italic;letter-spacing:-1px}.pay-mastercard{position:relative;min-width:82px!important;padding-left:36px!important;font-size:8px}.pay-mastercard i{position:absolute;width:18px;height:18px;border-radius:50%;background:#e64b38;left:9px}.pay-mastercard i:nth-child(2){background:#ef9c25;left:20px;opacity:.95}.pay-mastercard b{font-size:8px}.pay-paypal{font-size:15px;font-style:italic}.pay-paypal span{font-weight:700}.admin-top-actions{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 18px}.admin-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.admin-actions form{margin:0}.btn-secondary{background:#243a64!important}.btn-danger{background:#9d2842!important}.danger-delete summary{list-style:none;cursor:pointer}.danger-delete summary::-webkit-details-marker{display:none}.danger-delete form{min-width:260px;max-width:360px;margin-top:8px;padding:12px;border:1px solid #743247;border-radius:12px;background:#1c1730}.danger-delete input{width:100%;box-sizing:border-box;margin:8px 0 10px;padding:10px;border-radius:8px;border:1px solid #56617d;background:#0a1530;color:#fff}

/* Avis */
.review-form-wrap{max-width:760px;margin:0 auto}.review-form-wrap h1{font-size:clamp(34px,6vw,52px);margin:8px 0}.reviews-admin{display:grid;gap:14px}.admin-review .stars{margin:0}.review-invite{margin-top:16px}.review-invite .btn{display:inline-block;text-decoration:none;margin-top:8px}

.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.admin-audio-file,.preview-client-item{margin-top:14px;padding:14px;border:1px solid rgba(255,255,255,.10);border-radius:16px;background:rgba(3,12,30,.35)}
.preview-validation-card{margin:18px 0}.preview-actions{margin-top:14px}.preview-actions .actions{display:flex;gap:10px;flex-wrap:wrap}


/* Messagerie premium client + administration */
.premium-chat{overflow:hidden;background:radial-gradient(circle at 8% 0,rgba(255,58,139,.10),transparent 35%),radial-gradient(circle at 96% 100%,rgba(42,118,255,.10),transparent 38%),linear-gradient(145deg,rgba(13,31,64,.88),rgba(5,16,37,.94))!important}
.chat-title{display:flex;align-items:center;gap:12px;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.07)}.chat-title h3{margin:0!important}.chat-title small{display:block;margin-top:3px;color:var(--muted)}.chat-title-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:13px;background:linear-gradient(135deg,rgba(255,45,137,.24),rgba(74,118,255,.18));border:1px solid rgba(255,125,178,.22)}
.premium-chat .conversation-thread{display:flex;flex-direction:column;gap:14px;margin:18px 0 20px}.chat-row{display:flex;align-items:flex-end;gap:9px;max-width:88%}.chat-row.from-admin{align-self:flex-end;flex-direction:row-reverse}.chat-row.from-client{align-self:flex-start}.chat-avatar{flex:0 0 32px;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;font-size:12px;font-weight:900;color:#fff;background:linear-gradient(145deg,#ff3b8f,#9f4cff);box-shadow:0 6px 18px rgba(255,52,142,.18)}.chat-row.from-admin .chat-avatar{background:linear-gradient(145deg,#3479ff,#19b7e8);box-shadow:0 6px 18px rgba(42,126,255,.2)}
.premium-chat .message-bubble{position:relative;max-width:none;padding:12px 15px 10px;border-radius:18px 18px 18px 6px;background:linear-gradient(135deg,rgba(202,46,178,.78),rgba(111,49,193,.78));border:1px solid rgba(255,127,218,.24);box-shadow:0 10px 28px rgba(0,0,0,.18);backdrop-filter:blur(7px)}.premium-chat .from-admin .message-bubble{border-radius:18px 18px 6px 18px;background:linear-gradient(135deg,rgba(40,91,205,.88),rgba(20,118,188,.76));border-color:rgba(105,181,255,.25)}.premium-chat .message-bubble:after{content:"";position:absolute;bottom:0;left:-7px;width:13px;height:13px;background:rgba(111,49,193,.78);clip-path:polygon(100% 0,100% 100%,0 100%)}.premium-chat .from-admin .message-bubble:after{left:auto;right:-7px;background:rgba(20,118,188,.76);clip-path:polygon(0 0,100% 100%,0 100%)}.premium-chat .message-bubble b{display:block;font-size:13px;color:#fff}.premium-chat .message-bubble p{margin:5px 0 6px;line-height:1.45;color:#fff;overflow-wrap:anywhere}.premium-chat .message-bubble small{display:block;text-align:right;font-size:10px;color:rgba(255,255,255,.66)}
.chat-composer{padding-top:15px;border-top:1px solid rgba(255,255,255,.07)}.chat-composer .field{margin-bottom:10px}.chat-composer textarea{min-height:82px;border-radius:17px!important;background:rgba(4,14,34,.78)!important;border:1px solid rgba(126,156,214,.24)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.01)}.chat-composer textarea:focus{border-color:rgba(255,75,151,.6)!important;box-shadow:0 0 0 3px rgba(255,52,139,.09)}.chat-composer .btn{min-width:120px}
@media(max-width:600px){.chat-row{max-width:94%}.chat-avatar{width:29px;height:29px;flex-basis:29px}.premium-chat .message-bubble{padding:11px 13px 9px}.chat-composer .btn{width:100%}}

/* Facturation — intégration native à l'espace client */
.account-billing-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 18px;margin-top:18px}
.account-billing-form label{display:grid;gap:7px;min-width:0;color:#dce6f7;font-size:13px;font-weight:800}
.account-billing-form input,.account-billing-form select{width:100%;box-sizing:border-box;min-height:48px;padding:11px 13px;border:1px solid rgba(125,158,216,.28);border-radius:13px;background:#091a35;color:#eef4ff;outline:none}
.account-billing-form input:focus,.account-billing-form select:focus{border-color:rgba(255,90,149,.62);box-shadow:0 0 0 3px rgba(255,70,140,.10)}
.account-billing-form>div:last-child{display:flex;align-items:end}
.payment-billing-required{max-width:760px;margin:0 auto;border:1px solid rgba(255,118,153,.22);background:linear-gradient(145deg,rgba(17,40,78,.88),rgba(6,17,39,.94))}
.payment-billing-required ul{margin:18px 0;padding-left:22px;color:#dbe3f2;line-height:1.8}
@media(max-width:900px){.account-billing-form{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.account-billing-form{grid-template-columns:1fr;gap:13px}.account-billing-form>div:last-child{align-items:stretch}.account-billing-form .btn{width:100%}}

/* Facturation — finition visuelle espace client */
.billing-profile-card{padding:24px;background:linear-gradient(145deg,rgba(15,35,71,.9),rgba(6,17,38,.94));border:1px solid rgba(124,157,215,.20);box-shadow:0 18px 42px rgba(0,0,0,.16)}
.billing-profile-intro{max-width:760px;margin-bottom:20px}.billing-profile-intro h3{font-size:22px;margin:5px 0 7px}.billing-profile-form{margin-top:0!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.billing-profile-form label{background:rgba(3,13,31,.28);padding:0}.billing-profile-form .billing-wide{grid-column:span 2}.billing-profile-form>div:last-child{grid-column:1/-1;display:flex;justify-content:flex-end;align-items:center;padding-top:3px}.billing-profile-form .btn{min-width:220px}
@media(max-width:900px){.billing-profile-form{grid-template-columns:repeat(2,minmax(0,1fr))}.billing-profile-form .billing-wide{grid-column:1/-1}}
@media(max-width:620px){.billing-profile-card{padding:18px}.billing-profile-form{grid-template-columns:1fr}.billing-profile-form .billing-wide{grid-column:auto}.billing-profile-form>div:last-child{grid-column:auto}.billing-profile-form .btn{width:100%;min-width:0}}
.invoice-line select[name="description[]"]{font-weight:700}.invoice-line input[readonly]{color:#dfe8f8;background:#0b1d3a}.invoice-line button[data-remove-line]{min-width:42px;padding:0}


/* source: responsive.css */
@media (max-width: 900px) {
    .occasion-grid { grid-template-columns: repeat(2,1fr); }
    .studio-copy { width: 70%; }
}

@media (max-width: 700px) {
    .home-shell,.nav-shell,.section,.form-wrap { width: min(calc(100% - 30px),1180px); }
    .nav-shell { min-height: 74px; }
    .brand { font-size: 27px; line-height: 1.05; }
    .menu-toggle { display: block; font-size: 34px; padding: 8px 4px 8px 12px; line-height: 1; }
    .topbar nav { display: none; position: absolute; left: 15px; right: 15px; top: 74px; z-index: 20; padding: 15px; background: #09172f; border: 1px solid var(--line); border-radius: 14px; flex-direction: column; align-items: stretch; }
    .topbar nav.open { display: flex; }

    .home-hero { min-height: 780px; align-items: flex-end; }
    .hero-art { background-position: 58% center; }
    .hero-shade { background: linear-gradient(0deg,#061127 0%,rgba(6,17,39,.82) 32%,rgba(6,17,39,.22) 67%,rgba(6,17,39,.06) 100%); }
    .hero-content { width: min(calc(100% - 30px), 660px); padding: 0 0 58px; text-align: center; }
    .hero-content > * { max-width: none; }
    .kicker { margin-bottom: 6px; font-size: 11px; }
    .hero-logo { width: min(520px, 96%); margin: 0 auto 2px; }
    .hero-lead { margin-bottom: 16px; font-size: 18px; }
    .cta { width: 100%; max-width: 500px; padding: 18px 15px; }
    .hero-tags { justify-content: center; gap: 9px 13px; margin-top: 27px; font-size: 10px; }

    .how { padding: 48px 0 58px; }
    .hand { font-size: 36px; }
    .how-grid { grid-template-columns: 1fr 1fr; gap: 34px 16px; }
    .how-grid h3 { font-size: 16px; }
    .how-grid p { font-size: 13px; }

    .life { padding-top: 60px; }
    .section-lead { font-size: 16px; }
    .occasion-grid { grid-template-columns: 1fr 1fr; gap: 12px; }
    .occasion { border-radius: 17px; }
    .occasion-media { aspect-ratio: 4 / 3; }
    .occasion-copy { min-height: 94px; padding: 12px 8px 14px; }
    .occasion-copy b { font-size: 14px; }
    .occasion-copy small { font-size: 11px; }

    .testimonial { padding: 52px 18px; }
    blockquote { font-size: 18px; }
    .studio { min-height: 520px; align-items: flex-end; background: #061127; }
    .studio-copy { width: 100%; padding-bottom: 50px; text-align: center; }
    .studio .hand { text-align: center; font-size: 36px; }
    .studio p { font-size: 17px; }
    .footer-inner { grid-template-columns: 1fr; text-align: center; }
    .footer-inner > div:last-child { text-align: center; }
    .legal { justify-content: center; flex-wrap: wrap; }
    .table { font-size: 13px; }
    .panel { padding: 18px; }
    .actions { flex-wrap: wrap; }
    .actions .btn { flex: 1; }
    .form-wrap > h1 { font-size: 34px; }
}

@media (max-width: 420px) {
    .home-hero { min-height: 750px; }
    .hero-logo { width: 100%; }
    .occasion-copy { min-height: 98px; }
    .occasion-copy b { font-size: 13px; }
    .occasion-copy small { font-size: 10.5px; }
    .hand { font-size: 32px; }
}

/* ==========================================================
   CORRECTIONS MOBILES VALIDÉES — 08/09/2026
   1. Affiche l'intégralité du visuel principal sans couper les textes.
   2. Cartes occasions : photo 4:3 complète en haut, texte dessous.
   ========================================================== */
@media (max-width: 760px) {
    .poster-wrap {
        width: 100%;
        height: auto;
        overflow: hidden;
    }

    .poster-wrap > img {
        display: block;
        width: 100%;
        max-width: 100%;
        height: auto;
        margin: 0;
        object-fit: contain;
    }

    .poster-cta {
        left: 30%;
        top: 45.2%;
        width: 40%;
        height: 6.8%;
    }

    .occasion-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
    }

    .occasion {
        display: flex;
        flex-direction: column;
        min-height: 0;
        overflow: hidden;
        border-radius: 18px;
    }

    .occasion-media {
        width: 100%;
        height: auto;
        min-height: 0;
        aspect-ratio: 4 / 3;
        overflow: hidden;
        flex: 0 0 auto;
    }

    .occasion-media img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: contain;
        object-position: center;
    }

    .occasion-copy {
        min-height: 112px;
        padding: 15px 9px 17px;
        align-items: center;
        justify-content: center;
        text-align: center;
    }

    .occasion-copy b {
        font-size: 15px;
        line-height: 1.2;
    }

    .occasion-copy small {
        margin-top: 9px;
        font-size: 12px;
        line-height: 1.35;
    }
}

@media (max-width: 420px) {
    .poster-wrap > img {
        width: 100%;
        max-width: 100%;
        margin: 0;
    }

    .occasion {
        display: flex;
        flex-direction: column;
    }

    .occasion-copy {
        min-height: 108px;
    }

    .occasion-copy b {
        font-size: 14px;
    }

    .occasion-copy small {
        font-size: 11px;
    }
}
@media(max-width:760px){.pricing-cards{grid-template-columns:1fr}.price-card.featured{transform:none}.pricing-page,.faq-page{padding-top:36px}.compare-scroll{margin-left:-2px;margin-right:-2px}.faq-item summary{padding:17px 16px}.faq-answer{padding:0 16px 16px}.page-heading p{font-size:16px}}

/* Tarifs mobile : tout le comparatif tient dans l'écran, sans scroll horizontal */
@media(max-width:760px){
  .compare-wrap{width:100%;max-width:100%;overflow:hidden}
  .compare-wrap h2{font-size:28px;margin-bottom:18px}
  .compare-scroll{width:100%;overflow:visible;border-radius:14px}
  .compare-table{width:100%;min-width:0!important;table-layout:fixed;font-size:11px}
  .compare-table th,.compare-table td{padding:9px 3px;overflow-wrap:anywhere;word-break:normal;hyphens:auto}
  .compare-table th:first-child,.compare-table td:first-child{width:40%;padding-left:7px;padding-right:5px}
  .compare-table th:not(:first-child),.compare-table td:not(:first-child){width:20%;text-align:center}
  .compare-table thead th{font-size:10px;line-height:1.2;vertical-align:middle}
  .compare-table thead th b{font-size:11px}
  .compare-table tbody td:first-child{font-size:11px;line-height:1.25}
  .compare-table .yes,.compare-table .no{width:24px;height:24px;font-size:16px;margin:auto}
}
@media(max-width:390px){
  .compare-table{font-size:10px}
  .compare-table th,.compare-table td{padding:8px 2px}
  .compare-table th:first-child,.compare-table td:first-child{width:43%;padding-left:5px}
  .compare-table th:not(:first-child),.compare-table td:not(:first-child){width:19%}
  .compare-table thead th{font-size:9px}
  .compare-table tbody td:first-child{font-size:10px}
  .compare-table .yes,.compare-table .no{width:22px;height:22px;font-size:15px}
}

/* Comparatif mobile natif : aucune table large, aucun défilement horizontal. */
.compare-mobile{display:none}
@media(max-width:760px){
  .compare-desktop{display:none!important}
  .compare-mobile{
    display:grid;
    grid-template-columns:minmax(0,46%) repeat(3,minmax(0,18%));
    width:100%; max-width:100%; overflow:hidden;
    border:1px solid var(--line); border-radius:16px;
    background:#09162d;
  }
  .compare-mobile>*{min-width:0;box-sizing:border-box;border-bottom:1px solid rgba(255,255,255,.08)}
  .cm-head{padding:12px 2px;text-align:center;font-size:10px;line-height:1.15;font-weight:800;overflow-wrap:anywhere}
  .cm-head b{font-size:11px}
  .cm-service{text-align:left;padding-left:7px;background:#102344}
  .cm-essential{background:linear-gradient(180deg,rgba(255,47,135,.36),#102344)}
  .cm-premium{background:linear-gradient(180deg,rgba(65,82,255,.42),#102344);border-left:1px solid rgba(108,93,255,.48);border-right:1px solid rgba(108,93,255,.48)}
  .cm-event{background:linear-gradient(180deg,rgba(255,139,57,.38),#102344)}
  .cm-label{padding:10px 5px 10px 7px;font-size:10.5px;line-height:1.2;overflow-wrap:anywhere}
  .cm-value{display:grid;place-items:center;padding:7px 1px}
  .cm-value:nth-child(4n+3){border-left:1px solid rgba(108,93,255,.48);border-right:1px solid rgba(108,93,255,.48)}
  .compare-mobile .yes,.compare-mobile .no{width:23px;height:23px;font-size:15px;margin:0}
}
@media(max-width:380px){
  .compare-mobile{grid-template-columns:minmax(0,49%) repeat(3,minmax(0,17%))}
  .cm-head{font-size:9px;padding-inline:1px}.cm-head b{font-size:10px}
  .cm-label{font-size:9.5px;padding-left:5px;padding-right:3px}
  .compare-mobile .yes,.compare-mobile .no{width:21px;height:21px;font-size:14px}
}

/* FINAL — cartes occasions mobiles : photo bord à bord, sans bandes vides */
@media (max-width:760px){
  .occasion-media{aspect-ratio:16/9!important;background:transparent!important}
  .occasion-media img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important}
  .occasion-copy{min-height:88px!important;padding:12px 8px 14px!important}
}


/* source: style.css */
/* Commande dynamique â€” formules et tarifs */
.order-formulas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:22px 0}
.order-formula{position:relative;display:flex;flex-direction:column;gap:8px;padding:22px 18px;border:1px solid rgba(148,171,216,.38);border-radius:20px;background:linear-gradient(160deg,#132a50,#0a1832);cursor:pointer;transition:.2s ease}
.order-formula:hover{transform:translateY(-2px);border-color:#ff7d96}
.order-formula:has(input:checked){border:2px solid #ff6c91;box-shadow:0 12px 34px rgba(255,77,132,.18)}
.order-formula input{position:absolute;top:16px;right:16px;width:20px;height:20px;accent-color:#ff5d8f}
.order-formula-name{font-size:22px;font-weight:800;color:#fff}.order-formula strong{font-size:36px;color:#ff8b79}.order-formula small{font-size:13px;line-height:1.4;color:#dbe3f1}
.order-formula[hidden]{display:none!important}.order-express{padding:18px;border:1px solid rgba(255,137,97,.35);border-radius:18px;background:rgba(255,105,120,.06)}
.order-summary{margin:20px 0;padding:18px 20px;border-radius:18px;background:#091a36;border:1px solid rgba(148,171,216,.28)}.order-summary p{display:flex;justify-content:space-between;gap:18px;margin:8px 0}.order-summary strong{color:#ff9a7a}
@media(max-width:700px){.order-formulas{grid-template-columns:1fr}.order-formula{padding:20px 18px}.order-formula-name{font-size:20px}.order-formula strong{font-size:32px}}

/* Admin crÃ©ations : mÃªme lecteur unique que la vitrine + commandes compactes. */
.admin-creations .playlist-hero{margin-top:18px}
.admin-creations .admin-playlist{margin-top:16px}
.admin-selected-actions{margin-top:14px;padding:16px;border:1px solid rgba(148,171,216,.24);border-radius:18px;background:#0a1832}
.admin-track-actions[hidden]{display:none!important}.admin-track-actions .admin-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.admin-track-actions .admin-actions form{margin:0}.admin-edit-form{margin-top:14px}.admin-edit-form .field{margin-bottom:12px}
@media(max-width:700px){.admin-selected-actions{padding:12px}.admin-track-actions .admin-actions{gap:8px}.admin-track-actions .admin-actions .btn{width:auto}}
/* Statistiques : frÃ©quentation + revenus par moyen de paiement */
.stats-section-title{margin:30px 0 14px;font-size:19px}.payment-stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.payment-stat-card{padding:22px;border:1px solid rgba(148,171,216,.28);border-radius:20px;background:linear-gradient(160deg,#10254a,#08172f);box-shadow:0 12px 30px rgba(0,0,0,.12)}.payment-stat-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.payment-stat-head strong{font-size:20px}.payment-stat-head span{font-size:12px;color:#aebbd3}.payment-stat-total{margin:14px 0 18px;font-size:34px;font-weight:900;color:#ff8a82}.payment-stat-periods{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.payment-stat-periods div{padding:11px;border-radius:13px;background:rgba(255,255,255,.045)}.payment-stat-periods small{display:block;color:#9eacc4;margin-bottom:5px}.payment-stat-periods b{font-size:14px}.stats-note{margin-top:18px;color:#8493ad;font-size:12px}@media(max-width:700px){.payment-stats-grid{grid-template-columns:1fr}.payment-stat-card{padding:17px}.payment-stat-total{font-size:30px}.payment-stat-periods{gap:6px}.payment-stat-periods div{padding:9px 7px}.payment-stat-periods b{font-size:12px}}

/* Sauvegardes administration */
.admin-menu-backup{border-color:rgba(255,82,153,.32)!important;background:linear-gradient(135deg,rgba(255,42,124,.08),rgba(255,153,67,.06))!important}
.backup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:24px 0}
.backup-card{display:flex;flex-direction:column;gap:16px;min-height:300px}
.backup-card h2{margin:0 0 8px}.backup-card p{color:#b9c4d8;line-height:1.55}.backup-card form{margin-top:auto}.backup-card .btn{width:100%;justify-content:center}
.backup-icon{width:62px;height:62px;display:grid;place-items:center;border-radius:18px;font-size:30px;background:linear-gradient(135deg,rgba(255,42,124,.22),rgba(255,153,67,.14));border:1px solid rgba(255,82,153,.3)}
.backup-note{margin-top:20px}.backup-note p{margin-bottom:0;color:#b9c4d8}
@media(max-width:720px){.backup-grid{grid-template-columns:1fr}.backup-card{min-height:0}.backup-page h1{font-size:34px}}
/* Suite productivitÃ© administration */
.admin-page-head{display:flex;justify-content:space-between;gap:18px;align-items:center;flex-wrap:wrap}.notif-list{display:grid;gap:12px}.notif-item{display:flex;justify-content:space-between;align-items:center;gap:18px}.notif-item.is-read{opacity:.58}.notif-item h3{margin:4px 0}.notif-item p,.notif-item small{margin:0;color:#aebbd3}.production-board{display:grid;grid-template-columns:repeat(5,minmax(220px,1fr));gap:14px;overflow-x:auto;padding:6px 0 18px}.production-column{background:rgba(8,23,47,.7);border:1px solid rgba(148,171,216,.24);border-radius:20px;padding:13px;min-height:260px}.production-column h2{font-size:17px;margin:4px 4px 14px}.production-card{display:flex;flex-direction:column;gap:5px;padding:14px;margin-bottom:10px;border-radius:15px;background:linear-gradient(155deg,#17315a,#0c1b37);border:1px solid rgba(148,171,216,.25);text-decoration:none;color:#fff}.production-card:hover{border-color:#ff6d95}.production-card.is-urgent{border-color:#ff725f;box-shadow:0 0 0 1px rgba(255,114,95,.2)}.production-card span{color:#dbe3f2}.production-card small{color:#ff9a82;font-weight:700}.production-card em{font-size:11px;color:#8fa0bc;font-style:normal}.global-search{display:flex;gap:10px;margin-bottom:18px}.global-search input{flex:1}.search-result{display:flex;flex-direction:column;gap:5px;margin:10px 0;text-decoration:none;color:#fff}.search-result span,.search-result small{color:#aebbd3}.deadline-card strong{color:#ff8d80}.quick-replies{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 12px}.quick-replies button{border:1px solid rgba(74,167,255,.45);background:rgba(25,95,170,.15);color:#bfe0ff;border-radius:999px;padding:8px 11px;font:inherit;font-size:12px;cursor:pointer}.quick-replies button:hover{background:rgba(25,95,170,.3)}.backup-history{margin-top:20px}.backup-history-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 0;border-bottom:1px solid rgba(148,171,216,.15)}.backup-history-row span{display:flex;flex-direction:column;gap:3px;min-width:0}.backup-history-row strong{overflow-wrap:anywhere}.backup-history-row small{color:#9eabc5}.admin-menu a strong{overflow-wrap:anywhere}
@media(max-width:700px){.notif-item{align-items:flex-start;flex-direction:column}.production-board{grid-template-columns:repeat(5,82vw)}.global-search{flex-direction:column}.backup-history-row{align-items:flex-start;flex-direction:column}.backup-history-row .btn{width:auto}.admin-page-head{align-items:flex-start;flex-direction:column}}


/* Correctifs groupÃ©s admin â€” production, recherche, rÃ©ponses, dÃ©lais, sauvegardes */
.production-board{display:grid;grid-template-columns:repeat(3,minmax(260px,1fr));gap:18px;overflow:visible;padding:10px 0 22px}.production-column{padding:16px;min-height:220px}.production-column>header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.production-column>header>div{display:flex;align-items:center;gap:9px}.production-column h2{margin:0;font-size:18px}.production-step-icon{font-size:21px}.production-count{display:grid;place-items:center;min-width:30px;height:30px;padding:0 8px;border-radius:999px;background:rgba(255,67,133,.16);color:#ff91ad}.production-stack{display:grid;gap:12px}.production-card{display:block;margin:0;padding:16px;border-radius:18px}.production-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.production-card-top strong{font-size:16px}.express-badge{font-size:10px;font-weight:900;padding:5px 7px;border-radius:999px;background:rgba(255,120,82,.16);color:#ff9c79}.production-client{margin:10px 0;color:#dbe3f2}.production-due{display:flex;flex-direction:column;gap:3px;padding:10px 11px;border-radius:12px;background:rgba(255,255,255,.04)}.production-due small{color:#9daac0}.production-due.ok b{color:#68d5a0}.production-due.warning b{color:#ffc46b}.production-due.danger b{color:#ff7b8f}.production-open{display:flex!important;margin-top:12px;width:100%;justify-content:center}.production-empty{padding:24px 8px;text-align:center;color:#75849e;font-size:13px}
.search-page .global-search{display:block;padding:22px;margin:22px 0 28px}.global-search label{display:block;font-weight:800;margin-bottom:10px}.global-search-line{display:flex;gap:12px}.global-search-line input{min-width:0;flex:1}.search-results-head{display:flex;align-items:baseline;gap:8px;margin-bottom:14px}.search-results-head h2{margin:0}.search-results-head span{color:#9eabc5}.search-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.search-result-card{min-width:0;padding:20px;border:1px solid rgba(148,171,216,.25);border-radius:20px;background:linear-gradient(155deg,#11294f,#091a35);box-shadow:0 12px 28px rgba(0,0,0,.12)}.search-result-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.search-result-top strong{font-size:18px;overflow-wrap:anywhere}.status-chip{flex:0 0 auto;padding:5px 9px;border-radius:999px;background:rgba(70,202,151,.13);color:#76d8ac;font-size:11px;font-weight:800}.search-result-card h3{margin:14px 0 5px;font-size:19px}.search-email{margin:0;color:#b9c5d9;overflow-wrap:anywhere}.search-meta{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.search-meta span{padding:7px 9px;border-radius:10px;background:rgba(255,255,255,.045);color:#c7d1e1;font-size:12px}.search-open{display:flex!important;width:100%;justify-content:center}.search-empty{grid-column:1/-1;text-align:center}
.quick-replies{padding:16px;margin:4px 0 20px;border:1px solid rgba(148,171,216,.18);border-radius:17px;background:rgba(5,16,36,.28)}.quick-replies-title{flex-basis:100%;font-size:13px;font-weight:900;color:#ff9bad;margin-bottom:3px}.quick-replies button{padding:10px 13px;border-color:rgba(255,91,145,.3);background:linear-gradient(135deg,rgba(97,55,139,.22),rgba(31,84,145,.18));color:#eef3ff;font-weight:700}.quick-replies button:hover{border-color:#ff7b9b;background:linear-gradient(135deg,rgba(255,52,130,.18),rgba(58,96,166,.24))}
.deadline-summary{display:flex;flex-direction:column;gap:4px;padding:14px 15px;margin:12px 0 16px;border-radius:15px;background:rgba(255,255,255,.045)}.deadline-summary b{font-size:18px}.deadline-summary span{color:#b7c2d5}.deadline-summary.ok b{color:#68d5a0}.deadline-summary.warning b{color:#ffc46b}.deadline-summary.danger b{color:#ff7b8f}.deadline-actions{display:flex;gap:10px;flex-wrap:wrap}.deadline-card button:disabled,.deadline-card input:disabled{opacity:.5;cursor:not-allowed}
.storage-meter{margin:22px 0}.storage-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.storage-head h2{margin:0 0 5px}.storage-head p{margin:0;color:#9eabc5}.storage-head>strong{white-space:nowrap;color:#ff9b83;font-size:20px}.storage-bar{height:12px;margin:18px 0;border-radius:999px;background:#07162d;overflow:hidden;border:1px solid rgba(148,171,216,.16)}.storage-bar i{display:block;height:100%;min-width:2px;border-radius:inherit;background:linear-gradient(90deg,#ff2f87,#ff9857)}.storage-stats{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:10px}.storage-stats span{padding:8px 10px;border-radius:11px;background:rgba(255,255,255,.04);color:#b9c4d8}.storage-meter>small{color:#7f8da6}.backup-history-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:20px}.backup-history{margin:0}.backup-history-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.backup-history-head h2{margin:0;font-size:20px}.backup-history-head>span{padding:5px 9px;border-radius:999px;background:rgba(255,72,137,.13);color:#ff91ad;font-weight:800}.backup-history-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;padding:14px 0;border-bottom:1px solid rgba(148,171,216,.14)}.backup-file-icon{width:45px;height:45px;display:grid;place-items:center;border-radius:12px;background:rgba(73,112,177,.16);color:#c9dcff;font-size:11px;font-weight:900}.backup-file-info{min-width:0;display:flex;flex-direction:column;gap:3px}.backup-file-info strong{font-size:15px}.backup-file-info span{color:#c3ccdc;font-size:13px}.backup-file-info small{color:#8190aa;font-size:11px;overflow-wrap:anywhere}.backup-file-actions{grid-column:2;display:flex;gap:8px;flex-wrap:wrap}.backup-file-actions form{margin:0}.backup-file-actions .btn{width:auto}
@media(max-width:900px){.production-board{grid-template-columns:repeat(2,minmax(0,1fr))}.search-results,.backup-history-grid{grid-template-columns:1fr}}
@media(max-width:700px){.production-board{display:grid;grid-template-columns:1fr;overflow:visible}.production-column{min-height:0;padding:14px}.production-card{padding:15px}.global-search-line{flex-direction:column}.global-search-line .btn{width:100%}.search-results{grid-template-columns:1fr}.search-result-card{padding:17px}.quick-replies{gap:9px}.quick-replies button{flex:1 1 46%;text-align:center}.storage-head{flex-direction:column;gap:10px}.storage-head>strong{font-size:18px}.storage-stats{display:grid;grid-template-columns:1fr 1fr}.storage-stats span:first-child{grid-column:1/-1}.backup-history-grid{grid-template-columns:1fr}.backup-history-card{grid-template-columns:auto minmax(0,1fr)}.backup-file-actions{grid-column:1/-1;padding-left:57px}.backup-file-actions .btn{font-size:12px;padding:9px 11px}}

/* Administration â€” Clients : cartes responsive cohÃ©rentes avec l'interface */
.admin-clients-page{max-width:1120px;margin-inline:auto}.admin-clients-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:24px 0}.admin-clients-head h1{margin:6px 0 8px;font-size:38px}.admin-clients-head p{margin:0;color:#aebbd0}.admin-kicker{font-size:12px;letter-spacing:.2em;font-weight:900;color:#ff86a5}.clients-count{flex:0 0 auto;padding:8px 12px;border:1px solid rgba(255,102,145,.28);border-radius:999px;background:rgba(255,66,132,.09);color:#ff9ab2;font-size:12px;font-weight:800}.clients-search-panel{padding:20px;margin:0 0 22px}.clients-search-panel>label{display:block;margin-bottom:9px;font-weight:800}.clients-search-line{display:flex;gap:12px}.clients-search-line input{min-width:0;flex:1}.clients-search-line .btn{flex:0 0 auto;justify-content:center}.clients-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.client-card{min-width:0;padding:20px;border:1px solid rgba(148,171,216,.27);border-radius:22px;background:linear-gradient(155deg,#11294f,#091a35);box-shadow:0 12px 28px rgba(0,0,0,.12)}.client-card-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px}.client-avatar{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(135deg,rgba(255,47,135,.25),rgba(255,152,87,.18));border:1px solid rgba(255,100,145,.3);font-size:20px;font-weight:900;color:#fff}.client-identity{min-width:0}.client-identity h2{margin:0 0 3px;font-size:19px;line-height:1.2}.client-identity a{display:block;color:#aebbd0;font-size:13px;text-decoration:none;overflow-wrap:anywhere}.client-orders-badge{align-self:start;padding:6px 9px;border-radius:999px;background:rgba(72,135,221,.12);color:#bfd8ff;font-size:11px;font-weight:800;white-space:nowrap}.client-meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:18px 0}.client-meta-grid>div{min-width:0;padding:11px;border-radius:14px;background:rgba(255,255,255,.045)}.client-meta-grid small{display:block;margin-bottom:5px;color:#8493ad;font-size:10px}.client-meta-grid strong{display:block;color:#f3f6fc;font-size:13px;overflow-wrap:anywhere}.client-meta-grid span{display:block;margin-top:3px;color:#9eabc5;font-size:10px}.client-actions{display:flex;gap:9px;flex-wrap:wrap;padding-top:14px;border-top:1px solid rgba(148,171,216,.14)}.client-action-box{position:relative}.client-action-box>summary{list-style:none;cursor:pointer}.client-action-box>summary::-webkit-details-marker{display:none}.client-action-form{position:absolute;z-index:20;left:0;top:calc(100% + 8px);width:280px;padding:16px;border:1px solid rgba(148,171,216,.3);border-radius:17px;background:#091a35;box-shadow:0 18px 45px rgba(0,0,0,.42)}.client-action-form label{display:block;margin:9px 0 6px;font-size:12px;font-weight:800}.client-action-form input{width:100%}.client-action-form .btn{width:100%;margin-top:12px;justify-content:center}.client-action-form p{margin:0 0 8px}.clients-empty{text-align:center;color:#9eabc5}
@media(max-width:850px){.clients-grid{grid-template-columns:1fr}}
@media(max-width:700px){.admin-clients-head{align-items:flex-start;flex-direction:column;gap:12px;margin:20px 0}.admin-clients-head h1{font-size:31px}.admin-clients-head p{font-size:14px;line-height:1.45}.clients-search-panel{padding:16px}.clients-search-line{flex-direction:column}.clients-search-line .btn{width:100%}.client-card{padding:16px;border-radius:20px}.client-card-head{grid-template-columns:auto minmax(0,1fr)}.client-orders-badge{grid-column:2;justify-self:start;align-self:auto}.client-identity h2{font-size:18px}.client-meta-grid{grid-template-columns:1fr 1fr}.client-meta-grid>div:last-child{grid-column:1/-1}.client-actions{display:grid;grid-template-columns:1fr 1fr}.client-action-box>summary{width:100%;justify-content:center;text-align:center}.client-action-form{position:fixed;z-index:1000;left:16px;right:16px;top:50%;transform:translateY(-50%);width:auto;max-height:82vh;overflow:auto}.danger-delete .client-action-form{left:16px;right:16px}.client-action-form .btn{font-size:13px}.clients-count{font-size:11px}}

/* Passe visuelle globale 10/09/2026 */
.visual-header{border-bottom:0!important;box-shadow:none!important}

/* Contact : select cohÃ©rent avec les autres champs du site. */
.contact-page .field select,
form[action*="contact"] .field select{
  -webkit-appearance:none;
  appearance:none;
  min-height:58px;
  padding:14px 52px 14px 16px;
  border:1px solid rgba(148,171,216,.30);
  border-radius:16px;
  color:#f5f7fc;
  background-color:#08152e;
  background-image:linear-gradient(45deg,transparent 50%,#c8d2e5 50%),linear-gradient(135deg,#c8d2e5 50%,transparent 50%);
  background-position:calc(100% - 22px) 50%,calc(100% - 16px) 50%;
  background-size:6px 6px,6px 6px;
  background-repeat:no-repeat;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}
.contact-page .field select:focus,
form[action*="contact"] .field select:focus{border-color:#ff668e;box-shadow:0 0 0 3px rgba(255,102,142,.10)}
.contact-page .field select option,
form[action*="contact"] .field select option{background:#08152e;color:#fff}

/* Peaufinage public v4 â€” 10/09/2026 */
.visual-header{border-bottom:0!important;box-shadow:none!important}
.visual-header::after,.poster-hero::after{display:none!important}

/* Accueil : une seule offre d'appel compacte. */
@media not all and (min-width: 901px) {
.home-price-compact{padding:46px 0 34px!important}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .home-price-compact{padding:46px 0 34px!important}
}@media not all and (min-width: 901px) {
.home-price-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:22px;padding:24px 26px;border:1px solid rgba(255,96,143,.28);border-radius:24px;background:linear-gradient(145deg,rgba(18,40,78,.88),rgba(8,20,45,.96));box-shadow:0 18px 40px rgba(0,0,0,.16)}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .home-price-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:22px;padding:24px 26px;border:1px solid rgba(255,96,143,.28);border-radius:24px;background:linear-gradient(145deg,rgba(18,40,78,.88),rgba(8,20,45,.96));box-shadow:0 18px 40px rgba(0,0,0,.16)}
}@media not all and (min-width: 901px) {
.home-price-note{width:58px;height:58px;display:grid;place-items:center;border-radius:18px;background:linear-gradient(135deg,rgba(255,47,135,.22),rgba(255,152,87,.16));font-size:28px}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .home-price-note{width:58px;height:58px;display:grid;place-items:center;border-radius:18px;background:linear-gradient(135deg,rgba(255,47,135,.22),rgba(255,152,87,.16));font-size:28px}
}@media not all and (min-width: 901px) {
.home-price-copy .eyebrow{margin:0 0 5px}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .home-price-copy .eyebrow{margin:0 0 5px}
}@media not all and (min-width: 901px) {
.home-price-copy h2{margin:0 0 6px;font-size:26px}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .home-price-copy h2{margin:0 0 6px;font-size:26px}
}@media not all and (min-width: 901px) {
.home-price-copy p{margin:0 0 6px;color:#d8dfeb}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .home-price-copy p{margin:0 0 6px;color:#d8dfeb}
}@media not all and (min-width: 901px) {
.home-price-copy small{color:#93a2bb}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .home-price-copy small{color:#93a2bb}
}@media not all and (min-width: 901px) {
.home-price-action{text-align:right}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .home-price-action{text-align:right}
}@media not all and (min-width: 901px) {
.home-price-action > span{display:block;color:#9ba9bf;font-size:12px}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .home-price-action > span{display:block;color:#9ba9bf;font-size:12px}
}@media not all and (min-width: 901px) {
.home-price-action > strong{display:block;margin:1px 0 10px;font-size:34px}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .home-price-action > strong{display:block;margin:1px 0 10px;font-size:34px}
}@media not all and (min-width: 901px) {
.home-price-action .price-btn{white-space:nowrap}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .home-price-action .price-btn{white-space:nowrap}
}@media not all and (min-width: 901px) {
.testimonial .review-link{display:inline-flex;padding:10px 16px;border:1px solid rgba(255,102,142,.35);border-radius:999px;background:rgba(255,70,132,.07);text-decoration:none}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .testimonial .review-link{display:inline-flex;padding:10px 16px;border:1px solid rgba(255,102,142,.35);border-radius:999px;background:rgba(255,70,132,.07);text-decoration:none}
}@media not all and (min-width: 901px) {
.testimonial{padding-bottom:42px!important}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .testimonial{padding-bottom:42px!important}
}@media not all and (min-width: 901px) {
.final-cta{padding-top:44px!important}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .final-cta{padding-top:44px!important}
}

/* Tarifs : cartes plus compactes + guide simple. */
.pricing-page .page-heading h1{font-size:clamp(34px,6vw,52px)}.pricing-page .pricing-cards{align-items:stretch}.pricing-page .price-card{min-height:0!important;padding:22px 20px!important}.pricing-page .price-card strong{font-size:46px!important;margin:8px 0!important}.pricing-page .price-card p{margin:6px 0 14px!important}.pricing-page .delivery-note{margin-top:18px}.formula-guide{margin-top:34px}.formula-guide>h2{text-align:center;margin-bottom:18px}.formula-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.formula-guide-grid article{padding:20px;border:1px solid rgba(148,171,216,.22);border-radius:18px;background:rgba(9,25,52,.72)}.formula-guide-grid article.featured{border-color:rgba(255,84,139,.45);box-shadow:inset 0 0 0 1px rgba(255,84,139,.08)}.formula-guide-grid span{font-size:11px;font-weight:900;letter-spacing:.08em;color:#ff91ac}.formula-guide-grid h3{margin:7px 0;font-size:18px}.formula-guide-grid p{margin:0;color:#b9c4d7;line-height:1.5}

/* Menus dÃ©roulants entiÃ¨rement intÃ©grÃ©s au thÃ¨me. */
.pretty-select{position:relative;width:100%}.pretty-native-select{position:absolute!important;opacity:0!important;pointer-events:none!important;width:1px!important;height:1px!important}.pretty-select-button{width:100%;min-height:52px;padding:13px 46px 13px 15px;border:1px solid rgba(255,255,255,.15);border-radius:12px;background:#08152e;color:#fff;text-align:left;font:inherit;position:relative}.pretty-select-button::after{content:'âŒ„';position:absolute;right:16px;top:50%;transform:translateY(-55%);color:#ff8eaa;font-size:21px}.pretty-select-button:focus{outline:none;border-color:#ff668e;box-shadow:0 0 0 3px rgba(255,102,142,.1)}.pretty-select-menu{position:absolute;z-index:200;left:0;right:0;top:calc(100% + 7px);max-height:270px;overflow:auto;padding:7px;border:1px solid rgba(255,102,142,.3);border-radius:15px;background:#08172f;box-shadow:0 18px 45px rgba(0,0,0,.48)}.pretty-select-menu button{display:block;width:100%;padding:12px 13px;border:0;border-radius:10px;background:transparent;color:#e9eef8;text-align:left;font:inherit}.pretty-select-menu button:hover,.pretty-select-menu button.is-selected{background:linear-gradient(90deg,rgba(255,47,135,.16),rgba(255,152,87,.08));color:#fff}.pretty-select-menu button:disabled{display:none}.selected-formula-banner{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:15px 0 20px;padding:13px 15px;border:1px solid rgba(255,91,139,.3);border-radius:15px;background:rgba(255,65,132,.07)}.selected-formula-banner span{color:#9eabc0;font-size:12px}.selected-formula-banner strong{margin-right:auto}.selected-formula-banner a{color:#ff91ad;font-size:12px;font-weight:800}.style-other-field[hidden]{display:none!important}

/* RÃ©alisations : lÃ©ger resserrement, lecteur inchangÃ©. */
.playlist-page.section{padding-top:34px}.playlist-list{margin-top:18px}.playlist-row{padding-top:10px;padding-bottom:10px}

/* FAQ : questions longues plus respirantes sur mobile. */
.faq-page summary,.faq-item summary{line-height:1.35}

/* Pages lÃ©gales : lecture structurÃ©e sans toucher au texte juridique. */
.legal-page>h1,.legal-copy>h1{font-size:clamp(34px,6vw,50px);line-height:1.08}.legal-page>p:first-of-type{display:inline-block;padding:7px 11px;border-radius:999px;background:rgba(255,73,136,.09);color:#ff9ab4;font-size:12px}.legal-page h2,.legal-copy h2{margin-top:26px;padding:14px 16px;border-left:3px solid #ff638f;border-radius:10px;background:rgba(255,255,255,.035);font-size:20px}.legal-page p,.legal-copy p{line-height:1.62}.legal-page ul{padding:14px 18px 14px 38px;border:1px solid rgba(148,171,216,.16);border-radius:14px;background:rgba(255,255,255,.025)}

/* Connexion / inscription : plus compactes. */
.login{margin:38px auto!important;padding:24px!important}.login h1{font-size:36px!important;margin-top:0}.login form+.login-links{}.login>p{margin:11px 0 0}.login>p a{color:#ff91ad;text-decoration:none}.login .btn{min-width:150px;justify-content:center}

/* Espace client : dÃ©tails plus compacts sans retirer d'information. */
.order-details .detail-row,.request-details .detail-row{padding-top:9px!important;padding-bottom:9px!important}

@media(max-width:700px){
 .home-price-compact{padding:32px 0 24px!important}.home-price-card{grid-template-columns:1fr;text-align:center;padding:20px 17px;gap:12px}.home-price-note{margin:auto;width:50px;height:50px}.home-price-copy h2{font-size:23px}.home-price-action{text-align:center}.home-price-action>strong{font-size:31px}.home-price-action .price-btn{display:flex;width:100%;justify-content:center}
 .pricing-page .pricing-cards{gap:13px}.pricing-page .price-card{padding:18px 16px!important;border-radius:19px!important}.pricing-page .price-card strong{font-size:38px!important}.formula-guide-grid{grid-template-columns:1fr}.formula-guide-grid article{padding:16px}.delivery-note{padding:14px!important}
 .selected-formula-banner{align-items:flex-start}.selected-formula-banner strong{width:100%}.pretty-select-menu{max-height:240px}
 .faq-page summary,.faq-item summary{font-size:16px!important;line-height:1.4;padding-right:44px!important}
 .legal-page{padding:32px 17px!important}.legal-page h2,.legal-copy h2{font-size:18px;padding:12px 13px}.legal-copy{padding:18px!important}.login{margin:28px 14px!important;padding:21px 17px!important}.login h1{font-size:32px!important}
}
@media(max-width:700px){.moments{padding-top:32px!important}.moments .script-title{font-size:30px!important;line-height:1.12}.moments .section-lead{margin-top:8px!important}.home-realisations-link{padding-top:28px!important;padding-bottom:28px!important}.testimonial{padding-top:34px!important;padding-bottom:32px!important}.final-cta{padding-top:34px!important}}


/* === CatÃ©gories 2026 : nouvelles Ã©tiquettes + pochette auto admin === */
/* Nouvelles images, prÃ©sentation historique conservÃ©e. */
@media not all and (min-width: 901px) {
.occasion-new-cover .occasion-copy{font-weight:700}
}
@media (min-width: 901px) {
:where(body:not(:has(#occasions.moments))) .occasion-new-cover .occasion-copy{font-weight:700}
}
.creation-cover-preview{margin:8px 0 12px;min-height:110px;border:1px solid rgba(255,122,169,.28);border-radius:16px;background:#08162d;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:10px;color:#aeb9ce;text-align:center}
.creation-cover-preview img{display:block;width:118px;height:164px;object-fit:cover;border-radius:10px}
.creation-cover-field input[type=file]{margin-top:10px}
@media(max-width:720px){.occasion-new-cover .occasion-copy b{font-weight:800}}
/* V9 â€” derniÃ¨re carte "Autre" centrÃ©e sur mobile */
@media(max-width:760px){
  .occasion-grid .occasion:last-child{grid-column:1 / -1;width:calc((100% - 12px)/2);justify-self:center}
}

/* V10 â€” Accueil : catÃ©gories compactes, prÃ©sentation historique */
@media(max-width:760px){
  .moments .home-shell{padding-left:18px;padding-right:18px}
  .occasion-grid{gap:12px!important;align-items:start}
  .occasion-new-cover{border-radius:18px!important;min-height:0!important}
  .occasion-new-cover .occasion-media{height:124px!important;aspect-ratio:auto!important;background:#0a1730}
  .occasion-new-cover .occasion-media img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center 42%!important}
  .occasion-new-cover .occasion-copy{min-height:76px!important;padding:10px 8px!important}
  .occasion-new-cover .occasion-copy b{font-size:13px!important;line-height:1.15;font-weight:800!important}
  .occasion-new-cover .occasion-copy small{margin-top:6px!important;font-size:10.5px!important;line-height:1.25!important}
  .occasion-grid .occasion:last-child{grid-column:1 / -1;width:calc((100% - 12px)/2);justify-self:center}
}
@media(max-width:390px){
  .occasion-new-cover .occasion-media{height:112px!important}
  .occasion-new-cover .occasion-copy{min-height:72px!important;padding:9px 7px!important}
  .occasion-new-cover .occasion-copy b{font-size:12px!important}
  .occasion-new-cover .occasion-copy small{font-size:10px!important}
}

/* V11 â€” Accueil : conserver les cartes compactes, afficher les pochettes verticales sans les couper */
@media(max-width:760px){
  .occasion-new-cover .occasion-media{height:124px!important;aspect-ratio:auto!important;background:#0a1730!important}
  .occasion-new-cover .occasion-media img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;background:#0a1730!important}
  /* L'instrumental est horizontal : il remplit naturellement sa zone. */
  .occasion-new-cover .occasion-media img[src*="instrumental.webp"]{object-fit:cover!important;object-position:center!important}
}
@media(max-width:390px){
  .occasion-new-cover .occasion-media{height:112px!important}
}

/* V12 â€” Accueil : pochettes horizontales uniformes, player inchangÃ© */
@media not all and (min-width: 901px) {
#occasions .occasion-new-cover .occasion-media{aspect-ratio:4/1!important;height:auto!important;background:#0a1730!important}
}

@media not all and (min-width: 901px) {
#occasions .occasion-new-cover .occasion-media img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;background:transparent!important}
}

@media(max-width:720px){
 #occasions .occasion-grid{gap:12px!important}
 #occasions .occasion-new-cover .occasion-media{aspect-ratio:4/1!important;height:auto!important}
 #occasions .occasion-new-cover .occasion-copy{min-height:76px!important;padding:10px 8px 11px!important}
}

/* V13 â€” Accueil : Ã©quilibre visuel 60 % pochette / 40 % texte sur mobile */
@media(max-width:760px){
  #occasions .occasion-new-cover{
    height:178px!important;
    display:grid!important;
    grid-template-rows:60% 40%!important;
  }
  #occasions .occasion-new-cover .occasion-media{
    width:100%!important;
    height:100%!important;
    aspect-ratio:auto!important;
    overflow:hidden!important;
  }
  #occasions .occasion-new-cover .occasion-media img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center!important;
  }
  #occasions .occasion-new-cover .occasion-copy{
    min-height:0!important;
    height:100%!important;
    padding:8px 7px 9px!important;
    box-sizing:border-box!important;
    justify-content:center!important;
  }
  #occasions .occasion-new-cover .occasion-copy b{
    font-size:13px!important;
    line-height:1.12!important;
    font-weight:800!important;
  }
  #occasions .occasion-new-cover .occasion-copy small{
    margin-top:5px!important;
    font-size:10.5px!important;
    line-height:1.18!important;
  }
}
@media(max-width:390px){
  #occasions .occasion-new-cover{height:170px!important}
  #occasions .occasion-new-cover .occasion-copy b{font-size:12.5px!important}
  #occasions .occasion-new-cover .occasion-copy small{font-size:10px!important}
}

/* V14 â€” Accueil : conserver le 60/40 validÃ© et afficher chaque banniÃ¨re entiÃ¨re */
@media(max-width:760px){
  #occasions .occasion-new-cover .occasion-media{
    background:#0a1730!important;
  }
  #occasions .occasion-new-cover .occasion-media img{
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    object-position:center center!important;
    background:#0a1730!important;
  }
}

/* V15 â€” Accueil : fichiers dÃ©diÃ©s 16:9, indÃ©pendants des pochettes crÃ©ations/player */
@media(max-width:760px){
  #occasions .occasion-new-cover{
    height:auto!important;
    display:flex!important;
    flex-direction:column!important;
  }
  #occasions .occasion-new-cover .occasion-media{
    width:100%!important;
    height:auto!important;
    aspect-ratio:16/9!important;
    flex:0 0 auto!important;
    overflow:hidden!important;
    background:#0a1730!important;
  }
  #occasions .occasion-new-cover .occasion-media img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center!important;
    background:transparent!important;
  }
  #occasions .occasion-new-cover .occasion-copy{
    min-height:68px!important;
    height:auto!important;
    padding:8px 7px 9px!important;
    flex:1 1 auto!important;
  }
}

/* V16 â€” Accueil WOW : cartes lumineuses, composition premium, sans toucher au player */
@media not all and (min-width: 901px) {
#occasions.moments{position:relative;overflow:hidden;background:
 radial-gradient(circle at 8% 14%,rgba(0,136,255,.14),transparent 28%),
 radial-gradient(circle at 92% 18%,rgba(255,31,142,.17),transparent 30%),
 linear-gradient(180deg,#061127 0%,#07152e 48%,#061127 100%)}
}

@media not all and (min-width: 901px) {
#occasions.moments::before,#occasions.moments::after{content:"\266a";position:absolute;top:72px;font-size:58px;font-weight:800;line-height:1;color:#4fc3ff;text-shadow:0 0 16px currentColor,0 0 34px currentColor;opacity:.8;pointer-events:none}
}

@media not all and (min-width: 901px) {
#occasions.moments::before{left:max(18px,calc(50% - 560px));transform:rotate(-12deg)}
}

@media not all and (min-width: 901px) {
#occasions.moments::after{content:"\266b";left:auto;right:max(18px,calc(50% - 560px));color:#ff5cb5;transform:rotate(12deg)}
}

@media not all and (min-width: 901px) {
#occasions .script-title{text-shadow:0 2px 18px rgba(255,70,150,.18)}
}

@media not all and (min-width: 901px) {
#occasions .section-lead{position:relative;margin-bottom:34px}
}

@media not all and (min-width: 901px) {
#occasions .section-lead::before{content:"â™¡";display:block;margin:0 auto 12px;color:#ff6ca8;font-size:36px;line-height:1;text-shadow:0 0 16px rgba(255,70,150,.65)}
}

@media not all and (min-width: 901px) {
#occasions .occasion-grid{gap:18px}
}

@media not all and (min-width: 901px) {
#occasions .occasion-new-cover{position:relative;overflow:hidden;border:1px solid rgba(106,170,255,.48)!important;border-radius:20px!important;background:linear-gradient(180deg,#0b2146 0%,#091a38 100%)!important;box-shadow:0 12px 28px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.04);transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
}

@media not all and (min-width: 901px) {
#occasions .occasion-new-cover::before{content:"";position:absolute;inset:-1px;z-index:2;border-radius:inherit;pointer-events:none;background:linear-gradient(120deg,rgba(55,174,255,.26),transparent 32%,transparent 68%,rgba(255,54,157,.24));opacity:.45}
}

@media not all and (min-width: 901px) {
#occasions .occasion-new-cover:hover,#occasions .occasion-new-cover:focus-visible{transform:translateY(-4px);border-color:rgba(255,89,164,.75)!important;box-shadow:0 16px 34px rgba(0,0,0,.3),0 0 22px rgba(255,57,150,.13)}
}

@media not all and (min-width: 901px) {
#occasions .occasion-new-cover .occasion-media{position:relative;z-index:1;aspect-ratio:16/9!important;height:auto!important;background:#07152e!important;overflow:hidden!important}
}

@media not all and (min-width: 901px) {
#occasions .occasion-new-cover .occasion-media::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 62%,rgba(4,16,38,.34) 100%)}
}

@media not all and (min-width: 901px) {
#occasions .occasion-new-cover .occasion-media img{width:100%!important;height:100%!important;display:block!important;object-fit:cover!important;object-position:center!important;transform:none!important;background:transparent!important}
}

@media not all and (min-width: 901px) {
#occasions .occasion-new-cover .occasion-copy{position:relative;z-index:3;background:linear-gradient(180deg,rgba(12,38,78,.98),rgba(8,27,58,.99));min-height:84px!important;padding:12px 12px 13px!important;display:flex!important;flex-direction:column;align-items:center;justify-content:center!important;text-align:center}
}

@media not all and (min-width: 901px) {
#occasions .occasion-new-cover .occasion-copy b{font-size:16px!important;line-height:1.1!important;font-weight:900!important;letter-spacing:.01em;color:#fff;text-shadow:0 1px 8px rgba(255,255,255,.08)}
}

@media not all and (min-width: 901px) {
#occasions .occasion-new-cover .occasion-copy small{margin-top:8px!important;font-size:12px!important;line-height:1.3!important;font-weight:600!important;color:#e3e9f5}
}

@media(max-width:760px){
 #occasions.moments:before,#occasions.moments:after{top:98px;font-size:34px;opacity:.7}
 #occasions.moments:before{left:16px} #occasions.moments:after{right:16px}
 #occasions .home-shell{padding-left:18px!important;padding-right:18px!important}
 #occasions .occasion-grid{gap:12px!important}
 #occasions .occasion-new-cover{height:auto!important;display:flex!important;flex-direction:column!important;border-radius:17px!important}
 #occasions .occasion-new-cover .occasion-media{width:100%!important;aspect-ratio:16/9!important;height:auto!important;flex:0 0 auto!important}
 #occasions .occasion-new-cover .occasion-copy{min-height:72px!important;height:auto!important;padding:9px 7px 10px!important;flex:1 1 auto!important}
 #occasions .occasion-new-cover .occasion-copy b{font-size:13px!important;font-weight:900!important}
 #occasions .occasion-new-cover .occasion-copy small{font-size:10.5px!important;line-height:1.22!important;margin-top:6px!important;font-weight:600!important}
 #occasions .occasion-grid .occasion:last-child{grid-column:1/-1;width:calc((100% - 12px)/2);justify-self:center}
}

/* V17 â€” Accueil WOW renforcÃ© : rendu visuel proche de la maquette validÃ©e */
@media not all and (min-width: 901px) {
#occasions.moments{padding:62px 0 72px!important;background:
 radial-gradient(ellipse at 0% 8%,rgba(0,139,255,.25),transparent 34%),
 radial-gradient(ellipse at 100% 9%,rgba(255,20,147,.25),transparent 34%),
 radial-gradient(ellipse at 50% 42%,rgba(94,45,180,.13),transparent 50%),
 #041027!important}
}

@media not all and (min-width: 901px) {
#occasions .home-shell{max-width:1080px}
}

@media not all and (min-width: 901px) {
#occasions .script-title{font-size:48px;line-height:1.04;margin-bottom:8px!important;color:#fff;text-align:center}
}

@media not all and (min-width: 901px) {
#occasions .script-title span{color:#ff70a5;text-shadow:0 0 20px rgba(255,62,148,.22)}
}

@media not all and (min-width: 901px) {
#occasions .section-lead{font-size:20px!important;color:#dce5f6!important;margin:0 auto 38px!important;text-align:center}
}

@media not all and (min-width: 901px) {
#occasions .section-lead::before{font-size:42px!important;margin-bottom:14px!important}
}

@media not all and (min-width: 901px) {
#occasions .occasion-grid{max-width:1000px!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px 22px!important}
}

@media not all and (min-width: 901px) {
#occasions .occasion-new-cover{border:1.5px solid rgba(77,157,255,.62)!important;border-radius:20px!important;background:#071b3b!important;box-shadow:0 10px 28px rgba(0,0,0,.32),0 0 0 1px rgba(255,63,155,.08),inset 0 1px rgba(255,255,255,.06)!important}
}

@media not all and (min-width: 901px) {
#occasions .occasion-new-cover:nth-child(2n){border-color:rgba(255,79,160,.45)!important}
}

@media not all and (min-width: 901px) {
#occasions .occasion-new-cover .occasion-media{aspect-ratio:16/9!important;border-radius:18px 18px 0 0!important}
}

@media not all and (min-width: 901px) {
#occasions .occasion-new-cover .occasion-media::before{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(110deg,transparent 25%,rgba(255,255,255,.11) 46%,transparent 63%);transform:translateX(-130%);transition:transform .65s ease;pointer-events:none}
}

@media not all and (min-width: 901px) {
#occasions .occasion-new-cover:hover .occasion-media::before{transform:translateX(130%)}
}

@media not all and (min-width: 901px) {
#occasions .occasion-new-cover .occasion-media::after{z-index:1;background:linear-gradient(180deg,transparent 55%,rgba(3,13,34,.45) 100%)!important}
}

@media not all and (min-width: 901px) {
#occasions .occasion-new-cover .occasion-copy{min-height:88px!important;padding:11px 12px 13px!important;background:linear-gradient(180deg,#0b2a59 0%,#081c3e 100%)!important;border-top:1px solid rgba(255,255,255,.04)}
}

@media not all and (min-width: 901px) {
#occasions .occasion-new-cover .occasion-copy b{font-size:17px!important;letter-spacing:.025em!important}
}

@media not all and (min-width: 901px) {
#occasions .occasion-new-cover .occasion-copy small{font-size:12.5px!important;color:#eef3ff!important}
}

@media not all and (min-width: 901px) {
#occasions .occasion-grid .occasion:last-child{grid-column:1/-1!important;width:calc((100% - 22px)/2)!important;justify-self:center!important}
}

@media(max-width:760px){
 #occasions.moments{padding:42px 0 58px!important}
 #occasions .home-shell{padding-left:16px!important;padding-right:16px!important}
 #occasions .script-title{font-size:31px!important;line-height:1.06!important;margin-bottom:6px!important}
 #occasions .section-lead{font-size:16px!important;margin-bottom:28px!important}
 #occasions .section-lead:before{font-size:34px!important;margin-bottom:11px!important}
 #occasions.moments:before,#occasions.moments:after{top:48px!important;font-size:29px!important;opacity:.85!important}
 #occasions .occasion-grid{gap:12px!important}
 #occasions .occasion-new-cover{border-radius:16px!important;box-shadow:0 8px 20px rgba(0,0,0,.34),0 0 12px rgba(60,140,255,.07)!important}
 #occasions .occasion-new-cover .occasion-media{aspect-ratio:16/9!important;border-radius:14px 14px 0 0!important}
 #occasions .occasion-new-cover .occasion-copy{min-height:72px!important;padding:9px 7px 10px!important}
 #occasions .occasion-new-cover .occasion-copy b{font-size:13px!important}
 #occasions .occasion-new-cover .occasion-copy small{font-size:10.5px!important;line-height:1.22!important;margin-top:6px!important}
 #occasions .occasion-grid .occasion:last-child{width:calc((100% - 12px)/2)!important}
}


/* V18 â€” Accueil WOW rÃ©el : utilise les banniÃ¨res panoramiques natives, sans flou ni recadrage */
@media not all and (min-width: 901px) {
#occasions .occasion-new-cover .occasion-media{
  aspect-ratio:3 / 1!important;
  height:auto!important;
  background:#07152e!important;
}
}

@media not all and (min-width: 901px) {
#occasions .occasion-new-cover .occasion-media img{
  width:100%!important;
  height:100%!important;
  object-fit:fill!important;
  object-position:center!important;
  background:transparent!important;
}
}

@media not all and (min-width: 901px) {
#occasions .occasion-new-cover .occasion-copy{
  min-height:82px!important;
}
}

@media(max-width:760px){
  #occasions .occasion-new-cover .occasion-media{
    aspect-ratio:3 / 1!important;
  }
  #occasions .occasion-new-cover .occasion-copy{
    min-height:70px!important;
    padding:8px 7px 9px!important;
  }
}

/* V19 â€” visuel accueil reproduit depuis la maquette validÃ©e par Manu */
@media not all and (min-width: 901px) {
#occasions.moments{
  padding:26px 0 48px!important;
  background:
    radial-gradient(ellipse at 0% 3%,rgba(0,132,255,.22),transparent 33%),
    radial-gradient(ellipse at 100% 3%,rgba(255,31,164,.24),transparent 34%),
    linear-gradient(180deg,#06152e 0%,#041329 100%)!important;
}
}

@media not all and (min-width: 901px) {
#occasions .home-shell{max-width:1024px!important;padding:0 28px!important}
}

@media not all and (min-width: 901px) {
#occasions .script-title{font-family:Georgia,'Times New Roman',serif!important;font-style:italic!important;font-size:48px!important;font-weight:700!important;line-height:1.03!important;color:#fff!important;margin:0 auto 8px!important;text-align:center!important}
}

@media not all and (min-width: 901px) {
#occasions .script-title span{color:#ff6f9f!important;text-shadow:none!important}
}

@media not all and (min-width: 901px) {
#occasions .wow-heart{position:relative;width:280px;margin:2px auto 12px;color:#ff70a8;font-size:45px;line-height:1;text-align:center;text-shadow:0 0 12px rgba(255,73,157,.55)}
}

@media not all and (min-width: 901px) {
#occasions .wow-heart::before,#occasions .wow-heart::after{content:"";position:absolute;top:50%;width:105px;height:1px;background:linear-gradient(90deg,transparent,#3ea9ff)}
}

@media not all and (min-width: 901px) {
#occasions .wow-heart::before{left:0}
}

@media not all and (min-width: 901px) {
#occasions .wow-heart::after{right:0;transform:scaleX(-1);background:linear-gradient(90deg,transparent,#ff4fa3)}
}

@media not all and (min-width: 901px) {
#occasions .section-lead{font-size:20px!important;font-weight:400!important;color:#dbe4f2!important;margin:0 auto 27px!important;text-align:center!important}
}

@media not all and (min-width: 901px) {
#occasions .section-lead::before{display:none!important}
}

@media not all and (min-width: 901px) {
#occasions.moments::before,#occasions.moments::after{top:45px!important;font-size:64px!important;opacity:1!important;filter:drop-shadow(0 0 8px currentColor)}
}

@media not all and (min-width: 901px) {
#occasions.moments::before{content:"\266a"!important;left:max(26px,calc(50% - 490px))!important;color:#41bfff!important}
}

@media not all and (min-width: 901px) {
#occasions.moments::after{content:"\266a"!important;right:max(26px,calc(50% - 490px))!important;color:#ff58ad!important}
}

@media not all and (min-width: 901px) {
#occasions .occasion-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px 22px!important;max-width:966px!important;margin:0 auto!important}
}

@media not all and (min-width: 901px) {
#occasions .occasion-new-cover{display:flex!important;flex-direction:column!important;height:auto!important;overflow:hidden!important;border-radius:21px!important;border:1.5px solid #438dff!important;background:#071b3c!important;box-shadow:0 8px 18px rgba(0,0,0,.24)!important;transform:none!important}
}

@media not all and (min-width: 901px) {
#occasions .occasion-new-cover:nth-child(2n){border-color:#a34d9b!important}
}

@media not all and (min-width: 901px) {
#occasions .occasion-new-cover::before{display:none!important}
}

@media not all and (min-width: 901px) {
#occasions .occasion-new-cover .occasion-media{width:100%!important;height:auto!important;aspect-ratio:470/150!important;overflow:hidden!important;background:#07152e!important;border-radius:19px 19px 0 0!important}
}

@media not all and (min-width: 901px) {
#occasions .occasion-new-cover .occasion-media::before,#occasions .occasion-new-cover .occasion-media::after{display:none!important}
}

@media not all and (min-width: 901px) {
#occasions .occasion-new-cover .occasion-media img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important}
}

@media not all and (min-width: 901px) {
#occasions .occasion-new-cover .occasion-copy{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;min-height:78px!important;height:auto!important;padding:10px 10px 12px!important;background:linear-gradient(180deg,#0b2d60 0%,#071b3c 100%)!important;text-align:center!important}
}

@media not all and (min-width: 901px) {
#occasions .occasion-new-cover .occasion-copy b{font-size:17px!important;line-height:1.1!important;font-weight:900!important;color:#fff!important;letter-spacing:.01em!important}
}

@media not all and (min-width: 901px) {
#occasions .occasion-new-cover .occasion-copy small{font-size:13px!important;line-height:1.25!important;font-weight:400!important;color:#eef3fb!important;margin-top:7px!important}
}

@media not all and (min-width: 901px) {
#occasions .occasion-grid .occasion:last-child{grid-column:1/-1!important;width:66.7%!important;justify-self:center!important}
}

@media(max-width:760px){
 #occasions.moments{padding:34px 0 48px!important}
 #occasions .home-shell{padding:0 18px!important}
 #occasions .script-title{font-size:31px!important;line-height:1.08!important;padding:0 24px!important}
 #occasions .wow-heart{width:150px;font-size:39px;margin:5px auto 14px!important}
 #occasions .wow-heart:before,#occasions .wow-heart:after{width:50px}
 #occasions .section-lead{font-size:16px!important;margin-bottom:27px!important}
 #occasions.moments:before,#occasions.moments:after{top:72px!important;font-size:31px!important}
 #occasions.moments:before{left:16px!important} #occasions.moments:after{right:16px!important}
 #occasions .occasion-grid{gap:12px!important}
 #occasions .occasion-new-cover{border-radius:16px!important}
 #occasions .occasion-new-cover .occasion-media{aspect-ratio:470/150!important;border-radius:14px 14px 0 0!important}
 #occasions .occasion-new-cover .occasion-copy{min-height:72px!important;padding:9px 7px 10px!important}
 #occasions .occasion-new-cover .occasion-copy b{font-size:13px!important}
 #occasions .occasion-new-cover .occasion-copy small{font-size:10.5px!important;line-height:1.22!important;margin-top:6px!important}
 #occasions .occasion-grid .occasion:last-child{width:66.7%!important}
}

/* V20 â€” proportions mobiles calÃ©es sur le visuel validÃ© */
@media(max-width:760px){
  #occasions.moments{padding:24px 0 38px!important}
  #occasions .home-shell{width:100%!important;max-width:none!important;padding:0 14px!important}
  #occasions .script-title{font-size:30px!important;line-height:1.04!important;padding:0 18px!important;margin-bottom:4px!important}
  #occasions .wow-heart{margin:2px auto 10px!important}
  #occasions .section-lead{font-size:15px!important;margin-bottom:18px!important}
  #occasions .occasion-grid{width:100%!important;max-width:none!important;gap:9px 10px!important}
  #occasions .occasion-new-cover{width:100%!important;border-radius:14px!important}
  #occasions .occasion-new-cover .occasion-media{aspect-ratio:470/150!important;border-radius:12px 12px 0 0!important}
  #occasions .occasion-new-cover .occasion-copy{min-height:58px!important;padding:7px 5px 8px!important}
  #occasions .occasion-new-cover .occasion-copy b{font-size:12.5px!important;line-height:1.05!important}
  #occasions .occasion-new-cover .occasion-copy small{font-size:9.8px!important;line-height:1.15!important;margin-top:4px!important}
  #occasions .occasion-grid .occasion:last-child{width:66.7%!important;max-width:none!important}
}
@media(max-width:390px){
  #occasions .home-shell{padding-left:10px!important;padding-right:10px!important}
  #occasions .occasion-grid{gap:8px!important}
  #occasions .occasion-new-cover .occasion-copy{min-height:56px!important}
  #occasions .occasion-new-cover .occasion-copy small{font-size:9.3px!important}
}


/* V21 â€” accueil calÃ© sur le visuel de rÃ©fÃ©rence, sans toucher au header */
@media(max-width:760px){
  #occasions.moments{padding:18px 0 34px!important}
  #occasions .home-shell{width:100%!important;max-width:none!important;padding:0 10px!important}
  #occasions .script-title{font-size:27px!important;line-height:1.03!important;padding:0 24px!important;margin:0 auto 2px!important}
  #occasions .wow-heart{width:138px!important;font-size:34px!important;margin:0 auto 8px!important}
  #occasions .wow-heart:before,#occasions .wow-heart:after{width:45px!important}
  #occasions .section-lead{font-size:14px!important;line-height:1.2!important;margin:0 auto 14px!important}
  #occasions.moments:before,#occasions.moments:after{top:52px!important;font-size:26px!important}
  #occasions.moments:before{left:12px!important}
  #occasions.moments:after{right:12px!important}
  #occasions .occasion-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important;max-width:none!important;gap:8px!important}
  #occasions .occasion-new-cover{width:100%!important;border-radius:13px!important;border-width:1.25px!important}
  #occasions .occasion-new-cover .occasion-media{aspect-ratio:470/150!important;border-radius:11px 11px 0 0!important}
  #occasions .occasion-new-cover .occasion-copy{min-height:43px!important;padding:6px 4px 7px!important}
  #occasions .occasion-new-cover .occasion-copy b{font-size:12px!important;line-height:1.05!important}
  #occasions .occasion-new-cover .occasion-copy small{font-size:9.4px!important;line-height:1.15!important;margin-top:4px!important}
  #occasions .occasion-grid .occasion:last-child{grid-column:1/-1!important;width:66.7%!important;justify-self:center!important}
}
@media(max-width:390px){
  #occasions .home-shell{padding-left:8px!important;padding-right:8px!important}
  #occasions .occasion-grid{gap:7px!important}
  #occasions .script-title{font-size:25px!important}
  #occasions .occasion-new-cover .occasion-copy{min-height:42px!important}
  #occasions .occasion-new-cover .occasion-copy small{font-size:9px!important}
}


/* V22 â€” reproduction des proportions du visuel validÃ© (mobile) */
@media not all and (min-width: 901px) {
#occasions .wow-title .wow-title-white,#occasions .wow-title .wow-title-pink{display:block!important;white-space:nowrap!important}
}

@media not all and (min-width: 901px) {
#occasions .wow-title .wow-title-white{color:#fff!important}
}

@media not all and (min-width: 901px) {
#occasions .wow-title .wow-title-pink{color:#ff6f9f!important}
}


@media(max-width:760px){
  #occasions.moments{
    padding:18px 0 34px!important;
    background:
      radial-gradient(ellipse at -5% 2%,rgba(0,145,255,.28),transparent 34%),
      radial-gradient(ellipse at 105% 2%,rgba(255,31,164,.27),transparent 34%),
      linear-gradient(180deg,#06152e 0%,#041329 100%)!important;
  }
  #occasions .home-shell{width:100%!important;max-width:none!important;padding:0 11px!important}
  #occasions .wow-title{
    font-family:Georgia,'Times New Roman',serif!important;
    font-style:italic!important;font-weight:700!important;
    font-size:22px!important;line-height:1.06!important;
    margin:0 auto 5px!important;padding:0!important;text-align:center!important;
  }
  #occasions .wow-heart{width:156px!important;height:31px!important;font-size:32px!important;line-height:31px!important;margin:0 auto 8px!important}
  #occasions .wow-heart:before,#occasions .wow-heart:after{width:56px!important}
  #occasions .section-lead{font-size:13.5px!important;line-height:1.2!important;margin:0 auto 15px!important}
  #occasions.moments:before,#occasions.moments:after{top:28px!important;font-size:31px!important;opacity:1!important}
  #occasions.moments:before{left:10px!important}
  #occasions.moments:after{right:10px!important}

  #occasions .occasion-grid{
    display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
    width:100%!important;max-width:none!important;gap:8px 9px!important;margin:0 auto!important;
  }
  #occasions .occasion-new-cover{
    display:grid!important;grid-template-rows:64% 36%!important;
    width:100%!important;height:142px!important;min-height:0!important;
    border-radius:13px!important;overflow:hidden!important;
  }
  #occasions .occasion-new-cover .occasion-media{
    width:100%!important;height:100%!important;min-height:0!important;
    aspect-ratio:auto!important;border-radius:11px 11px 0 0!important;overflow:hidden!important;
  }
  #occasions .occasion-new-cover .occasion-media img{
    width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;
  }
  #occasions .occasion-new-cover .occasion-copy{
    width:100%!important;height:100%!important;min-height:0!important;
    padding:4px 5px 5px!important;box-sizing:border-box!important;
    display:flex!important;justify-content:center!important;align-items:center!important;
  }
  #occasions .occasion-new-cover .occasion-copy b{font-size:11.5px!important;line-height:1.05!important}
  #occasions .occasion-new-cover .occasion-copy small{font-size:8.7px!important;line-height:1.12!important;margin-top:4px!important;font-weight:400!important}
  #occasions .occasion-grid .occasion:last-child{
    grid-column:1/-1!important;width:66.7%!important;height:142px!important;justify-self:center!important;
  }
}
@media(max-width:390px){
  #occasions .home-shell{padding-left:10px!important;padding-right:10px!important}
  #occasions .wow-title{font-size:21px!important}
  #occasions .occasion-new-cover,#occasions .occasion-grid .occasion:last-child{height:136px!important}
  #occasions .occasion-new-cover .occasion-copy b{font-size:11px!important}
  #occasions .occasion-new-cover .occasion-copy small{font-size:8.2px!important}
}

/* V23 â€” calage sur le visuel de rÃ©fÃ©rence validÃ© */
@media(max-width:760px){
  /* Le grand visuel d'accueil s'arrÃªte AVANT son ancien titre de catÃ©gories. */
  body:not(.admin-body) .visual-header{
    aspect-ratio:1024/1332!important;
    overflow:hidden!important;
  }
  body:not(.admin-body) .visual-header-art{
    width:100%!important;
    height:auto!important;
    max-width:none!important;
    object-fit:initial!important;
    object-position:top center!important;
  }
  body:not(.admin-body) .visual-header-cta{top:52.1%!important}
  body:not(.admin-body) .visual-menu-toggle{top:3.1%!important}
  body:not(.admin-body) .visual-nav{top:11.8%!important}

  #occasions.moments{padding:15px 0 34px!important}
  #occasions .home-shell{width:100%!important;max-width:none!important;padding:0 19px!important}
  #occasions .wow-title{font-size:clamp(20px,5.8vw,30px)!important;line-height:1.1!important;margin:0 auto 3px!important;padding:0!important}
  #occasions .wow-heart{width:210px!important;height:42px!important;font-size:43px!important;line-height:42px!important;margin:0 auto 8px!important}
  #occasions .wow-heart:before,#occasions .wow-heart:after{width:78px!important}
  #occasions .section-lead{font-size:19px!important;line-height:1.2!important;margin:0 auto 20px!important}
  #occasions.moments:before,#occasions.moments:after{content:"\266a"!important;top:calc(20px + 2.2 * clamp(20px,5.8vw,30px))!important;font-size:30px!important}
  #occasions.moments:before{left:26px!important}
  #occasions.moments:after{right:26px!important}

  #occasions .occasion-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important;max-width:none!important;gap:12px 16px!important;margin:0 auto!important}
  #occasions .occasion-new-cover{display:flex!important;flex-direction:column!important;width:100%!important;height:auto!important;min-height:0!important;border-radius:16px!important;overflow:hidden!important}
  #occasions .occasion-new-cover .occasion-media{display:block!important;width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:470/145!important;border-radius:14px 14px 0 0!important;overflow:hidden!important}
  #occasions .occasion-new-cover .occasion-media img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important}
  #occasions .occasion-new-cover .occasion-copy{width:100%!important;height:54px!important;min-height:54px!important;padding:6px 7px 7px!important;box-sizing:border-box!important;display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important}
  #occasions .occasion-new-cover .occasion-copy b{font-size:14px!important;line-height:1.05!important}
  #occasions .occasion-new-cover .occasion-copy small{font-size:11px!important;line-height:1.12!important;margin-top:5px!important}
  #occasions .occasion-grid .occasion:last-child{grid-column:1/-1!important;width:66.7%!important;height:auto!important;justify-self:center!important}
}
@media(max-width:390px){
  #occasions .home-shell{padding-left:16px!important;padding-right:16px!important}
  #occasions .wow-title{font-size:clamp(20px,5.8vw,30px)!important}
  #occasions .section-lead{font-size:17px!important}
  #occasions .occasion-grid{gap:10px 13px!important}
  #occasions .occasion-new-cover .occasion-copy{height:51px!important;min-height:51px!important}
  #occasions .occasion-new-cover .occasion-copy b{font-size:13px!important}
  #occasions .occasion-new-cover .occasion-copy small{font-size:10px!important}
}

/* ===== ADMIN UI POLISH v24 : selects + uploads ===== */
body.admin-page select {
  appearance:none;
  -webkit-appearance:none;
  color:#f7f9ff;
  background-color:#071a38;
  background-image:
    linear-gradient(45deg,transparent 50%,#ff4f9a 50%),
    linear-gradient(135deg,#ff4f9a 50%,transparent 50%),
    linear-gradient(90deg,rgba(255,79,154,.18),rgba(55,157,255,.08));
  background-position:
    calc(100% - 20px) 50%,
    calc(100% - 14px) 50%,
    100% 0;
  background-size:6px 6px,6px 6px,48px 100%;
  background-repeat:no-repeat;
  border:1px solid rgba(109,157,224,.35);
  border-radius:14px;
  min-height:48px;
  padding:11px 54px 11px 15px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03),0 0 0 1px rgba(0,0,0,.08);
  font:inherit;
  cursor:pointer;
}
body.admin-page select:focus {
  outline:none;
  border-color:#ff4f9a;
  box-shadow:0 0 0 3px rgba(255,79,154,.13),0 0 18px rgba(42,137,255,.08);
}
body.admin-page select option {background:#071a38;color:#fff;}

/* Native upload controls, styled to match CrÃ©e Ma Chanson */
body.admin-page input[type="file"] {
  width:100%;
  min-height:52px;
  box-sizing:border-box;
  padding:7px 9px;
  color:#b9c7dc;
  background:linear-gradient(180deg,rgba(7,26,56,.96),rgba(5,20,44,.96));
  border:1px solid rgba(109,157,224,.34);
  border-radius:14px;
  font:inherit;
  overflow:hidden;
}
body.admin-page input[type="file"]::file-selector-button {
  border:0;
  border-radius:10px;
  padding:10px 14px;
  margin-right:12px;
  color:#fff;
  font-weight:800;
  font-size:.94rem;
  background:linear-gradient(135deg,#ff2f86,#ff755c);
  box-shadow:0 5px 14px rgba(255,47,134,.18);
  cursor:pointer;
}
body.admin-page input[type="file"]::-webkit-file-upload-button {
  border:0;
  border-radius:10px;
  padding:10px 14px;
  margin-right:12px;
  color:#fff;
  font-weight:800;
  background:linear-gradient(135deg,#ff2f86,#ff755c);
}
body.admin-page input[type="file"]:focus {outline:none;border-color:#ff4f9a;box-shadow:0 0 0 3px rgba(255,79,154,.12);}

@media (max-width:700px){
  body.admin-page select{width:100%;font-size:16px;}
  body.admin-page input[type="file"]{font-size:14px;}
  body.admin-page input[type="file"]::file-selector-button{padding:10px 11px;margin-right:8px;font-size:14px;}
}

/* ===== ADMIN CUSTOM SELECT v25 : remplace le sÃ©lecteur natif Android ===== */
body.admin-page .admin-custom-select{position:relative;width:100%;min-width:190px}
body.admin-page .admin-custom-select-native{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;overflow:hidden!important;clip:rect(0 0 0 0)!important}
body.admin-page .admin-custom-select-btn{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:50px;padding:11px 14px 11px 16px;border:1px solid rgba(109,157,224,.38);border-radius:14px;background:linear-gradient(180deg,#0a2043,#071a38);color:#f7f9ff;font:inherit;text-align:left;box-shadow:inset 0 1px 0 rgba(255,255,255,.035);cursor:pointer}
body.admin-page .admin-custom-select-btn::after{content:'\2304';flex:0 0 auto;color:#ff5b9c;font-size:23px;line-height:1;transform:translateY(-2px);transition:transform .18s ease}
body.admin-page .admin-custom-select.is-open .admin-custom-select-btn{border-color:#ff5797;box-shadow:0 0 0 3px rgba(255,79,154,.11),0 0 20px rgba(55,157,255,.08)}
body.admin-page .admin-custom-select.is-open .admin-custom-select-btn::after{transform:rotate(180deg) translateY(2px)}
.admin-select-portal{position:fixed;z-index:99999;display:none;max-height:min(360px,58vh);overflow:auto;padding:7px;border:1px solid rgba(255,87,151,.42);border-radius:16px;background:#071a38;box-shadow:0 22px 60px rgba(0,0,0,.62),0 0 30px rgba(41,131,255,.10);overscroll-behavior:contain}
.admin-select-portal.is-open{display:block}
.admin-select-option{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:46px;padding:11px 13px;border:0;border-radius:11px;background:transparent;color:#eaf1ff;font:inherit;text-align:left;cursor:pointer}
.admin-select-option+.admin-select-option{margin-top:2px}
.admin-select-option:hover,.admin-select-option:focus-visible{outline:none;background:rgba(58,137,255,.12)}
.admin-select-option.is-selected{background:linear-gradient(90deg,rgba(255,47,135,.22),rgba(255,117,92,.12));color:#fff;font-weight:800}
.admin-select-option.is-selected::after{content:'\2713';margin-left:12px;color:#ff79aa;font-weight:900}
.admin-select-option:disabled{display:none}
@media(max-width:700px){body.admin-page .admin-custom-select{min-width:0;width:100%}.admin-select-portal{max-height:52vh}.admin-select-option{min-height:50px;font-size:16px}}

/* SITE PUBLIC — presentation desktop commune, a partir de 901 px.
   Mobile conserve ; header desktop partage avec administration. */
@media (min-width: 901px) {
  /* Symboles des menus admin : desktop uniquement. */
  body:is(.admin-body, .admin-page, :has(.admin-menu)) .admin-custom-select-btn::after,
  body:is(.admin-body, .admin-page, :has(.admin-menu)) .pretty-select > .pretty-select-button::after {
    content: "\2304";
  }
  body:is(.admin-body, .admin-page, :has(.admin-menu)) .admin-select-option.is-selected::after {
    content: "\2713";
  }
  body:has(> .visual-header):not(.admin-body):not(.admin-page):not(:has(.admin-menu)) {
    background: radial-gradient(ellipse 72% 900px at 12% 0%, rgba(24,83,139,.24), transparent 75%), radial-gradient(ellipse 62% 1000px at 95% 160px, rgba(108,29,108,.21), transparent 78%), #061127;
  }
  body:has(> .visual-header):not(.admin-body):not(.admin-page):not(:has(.admin-menu)) > .visual-header,
  body:has(> .visual-header):is(.admin-body, .admin-page, :has(.admin-menu)) > .visual-header {
    width: min(980px, calc(100% - 52px));
    height: auto;
    aspect-ratio: 2 / 3;
    margin: 24px auto 0;
    overflow: visible;
    background: transparent;
    border: 0;
    box-shadow: none;
  }
  body:has(> .visual-header):not(.admin-body):not(.admin-page):not(:has(.admin-menu)) .visual-header-art,
  body:has(> .visual-header):is(.admin-body, .admin-page, :has(.admin-menu)) .visual-header-art {
    width: 100%;
    height: 100%;
    object-fit: contain;
    /* Fondu leger aux bords, sans recadrage de l'affiche. */
    -webkit-mask-image: linear-gradient(90deg, transparent, #000 2%, #000 98%, transparent);
    mask-image: linear-gradient(90deg, transparent, #000 2%, #000 98%, transparent);
  }
  body:has(> .visual-header):not(.admin-body):not(.admin-page):not(:has(.admin-menu)) .visual-menu-toggle,
  body:has(> .visual-header):is(.admin-body, .admin-page, :has(.admin-menu)) .visual-menu-toggle {
    top: 12px;
    right: 12px;
    width: 42px;
    height: 42px;
    font-size: 26px;
    line-height: 1;
    color: #fff;
    border: 1px solid rgba(255,255,255,.3);
    border-radius: 12px;
    background: rgba(6,17,39,.9);
  }
  body:has(> .visual-header):not(.admin-body):not(.admin-page):not(:has(.admin-menu)) .visual-nav,
  body:has(> .visual-header):is(.admin-body, .admin-page, :has(.admin-menu)) .visual-nav {
    top: 64px;
    right: 12px;
    max-height: 65vh;
    overflow-y: auto;
  }
  body:has(> .visual-header):not(.admin-body):not(.admin-page):not(:has(.admin-menu)) .site-footer {
    border-top: 0;
  }
  body:has(> .visual-header):not(.admin-body):not(.admin-page):not(:has(.admin-menu)) .site-footer .footer-inner {
    width: min(1080px, calc(100% - 40px));
    grid-template-columns: minmax(0,1fr) auto;
    gap: 20px 28px;
  }
  body:has(> .visual-header):not(.admin-body):not(.admin-page):not(:has(.admin-menu)) .site-footer .legal {
    justify-content: flex-end;
    flex-wrap: wrap;
  }
  body:has(> .visual-header):not(.admin-body):not(.admin-page):not(:has(.admin-menu)) .site-footer .footer-payments {
    text-align: left;
  }
  /* Gabarit des pages secondaires. Les formulaires et les lecteurs conservent
     leurs largeurs de lecture ; leurs composants internes ne sont pas modifies. */
  body:has(> .visual-header):not(.admin-body):not(.admin-page):not(:has(.admin-menu)):not(:has(#occasions.moments)) > main {
    width: min(1080px, calc(100% - 40px));
    margin: 0 auto;
    padding: 36px 0 40px;
    min-width: 0;
  }
  body:has(> .visual-header):not(.admin-body):not(.admin-page):not(:has(.admin-menu)):not(:has(#occasions.moments)) > main > .section {
    width: 100%;
    margin: 0 auto;
    padding-top: 0;
    padding-bottom: 0;
    background: transparent;
  }
  body:has(> .visual-header):not(.admin-body):not(.admin-page):not(:has(.admin-menu)) > main > .realisations-page {
    width: 100%;
    margin: 0;
    padding: 0;
    min-height: 0;
    background: transparent;
  }
  body:has(> .visual-header):not(.admin-body):not(.admin-page):not(:has(.admin-menu)) > main > .realisations-page > .home-shell {
    width: 100%;
  }
  body:has(> .visual-header):not(.admin-body):not(.admin-page):not(:has(.admin-menu)) > main > .form-wrap {
    width: 100%;
    margin: 0 auto;
    padding: 0;
  }
  body:has(> .visual-header):not(.admin-body):not(.admin-page):not(:has(.admin-menu)) > main > .legal-page {
    width: 100%;
    margin: 0 auto;
    padding-top: 0;
    padding-bottom: 0;
  }
  body:has(> .visual-header):not(.admin-body):not(.admin-page):not(:has(.admin-menu)) > main > .login {
    width: min(500px, 100%);
    margin: 0 auto !important;
  }
  body:has(> .visual-header):not(.admin-body):not(.admin-page):not(:has(.admin-menu)) .pricing-page .pricing-cards,
  body:has(> .visual-header):not(.admin-body):not(.admin-page):not(:has(.admin-menu)) .pricing-page .formula-guide-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  body:has(> .visual-header):not(.admin-body):not(.admin-page):not(:has(.admin-menu)) .faq-groups,
  body:has(> .visual-header):not(.admin-body):not(.admin-page):not(:has(.admin-menu)) .faq-contact {
    max-width: 1080px;
  }
  body:has(> .visual-header):not(.admin-body):not(.admin-page):not(:has(.admin-menu)) .faq-page::before,
  body:has(> .visual-header):not(.admin-body):not(.admin-page):not(:has(.admin-menu)) .faq-page::after {
    display: none;
  }

}

  /* Menus publics, mobile et desktop : chevron independant de l'encodage. */
  body:has(> .visual-header):not(.admin-body):not(.admin-page):not(:has(.admin-menu)) .pretty-select > .pretty-select-button::after {
    content: "\2304";
  }

/* Registre, blacklist et gestion d'équipe */
.admin-data-page{max-width:1240px;margin-inline:auto}.admin-data-page .admin-page-heading p{color:#aebbd0}.admin-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:18px 0}.admin-toolbar form{display:flex;gap:8px;flex:1;max-width:620px}.admin-toolbar form input{flex:1;min-width:0}.admin-table-wrap{overflow:auto;padding:8px}.admin-pretty-table{min-width:880px}.admin-pretty-table th{white-space:nowrap;color:#9fb0ca;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.admin-pretty-table.admin-mobile-cards td{vertical-align:middle}.table-sub{display:block;margin-top:4px;color:#8292ac;font-size:11px}.icon-actions{display:flex;align-items:center;gap:7px;white-space:nowrap}.icon-actions form{margin:0}.icon-action{position:relative;width:34px;height:34px;padding:0;display:inline-grid;place-items:center;border:1px solid rgba(130,164,218,.28);border-radius:10px;background:rgba(57,99,163,.13);color:#dbe8ff;text-decoration:none;font:700 15px/1 inherit;cursor:pointer;transition:.18s ease}.icon-action:hover{transform:translateY(-2px);background:rgba(72,126,210,.25);border-color:rgba(112,166,255,.5)}.icon-action[data-tip]::after{content:attr(data-tip);position:absolute;z-index:80;left:50%;bottom:calc(100% + 9px);transform:translate(-50%,5px);padding:7px 10px;border:1px solid rgba(255,255,255,.14);border-radius:9px;background:#07152e;color:#fff;box-shadow:0 10px 28px rgba(0,0,0,.4);font:600 11px/1.2 Arial,sans-serif;white-space:nowrap;opacity:0;pointer-events:none;transition:.16s}.icon-action[data-tip]:hover::after,.icon-action[data-tip]:focus-visible::after{opacity:1;transform:translate(-50%,0)}.icon-download{color:#8fd8ff}.icon-edit{color:#ffd486}.icon-invoice{color:#c8b5ff}.icon-danger{color:#ff9bae;background:rgba(210,54,82,.10);border-color:rgba(255,91,118,.28)}.icon-ok{color:#9df0bd;background:rgba(52,180,105,.1)}.admin-modal{position:fixed;z-index:2000;inset:0;display:grid;place-items:center;padding:18px;background:rgba(2,8,22,.76);backdrop-filter:blur(5px)}.admin-modal[hidden]{display:none}.admin-modal-card{position:relative;width:min(520px,100%);max-height:88vh;overflow:auto;padding:24px;border:1px solid rgba(145,170,215,.32);border-radius:22px;background:linear-gradient(155deg,#11294f,#08172f);box-shadow:0 28px 80px rgba(0,0,0,.55)}.admin-modal-card h2{margin:0 38px 18px 0}.admin-modal-card label{display:block;margin:13px 0 6px;font-weight:800;font-size:13px}.admin-modal-card input,.admin-modal-card textarea{width:100%;box-sizing:border-box}.admin-modal-card textarea{min-height:110px;resize:vertical}.admin-modal-close{position:absolute;right:14px;top:12px;width:36px;height:36px;border:0;border-radius:50%;background:rgba(255,255,255,.08);color:#fff;font-size:23px;cursor:pointer}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:20px}.status-pill{display:inline-flex;padding:6px 9px;border-radius:999px;background:rgba(70,131,216,.13);color:#c5ddff;font-size:11px;font-weight:800}.status-pill.owner{background:rgba(255,73,139,.13);color:#ffabc5}.blacklist-check{display:flex!important;align-items:flex-start;gap:8px}.blacklist-check input{width:auto!important;margin-top:3px}.client-action-form textarea{width:100%;min-height:80px;box-sizing:border-box}
@media(max-width:700px){.admin-toolbar{align-items:stretch;flex-direction:column}.admin-toolbar form{max-width:none}.admin-toolbar>.btn{width:100%;justify-content:center}.icon-action{width:38px;height:38px}.icon-action[data-tip]::after{display:none}.admin-modal-card{padding:20px}.modal-actions{flex-direction:column-reverse}.modal-actions .btn{width:100%;justify-content:center}}

/* ===== ADMIN 2026 — interface dédiée ===== */
.admin-page{background:radial-gradient(circle at 12% 5%,rgba(36,75,151,.22),transparent 34%),radial-gradient(circle at 88% 8%,rgba(236,60,141,.12),transparent 30%),#050d20;color:#eef4ff;min-height:100vh}.admin-page .admin-shell-main{width:min(1280px,calc(100% - 32px));margin:0 auto;padding:28px 0 40px}.admin-shell-header{position:sticky;top:0;z-index:1200;height:72px;padding:0 max(18px,calc((100vw - 1280px)/2));display:flex;align-items:center;justify-content:space-between;gap:18px;background:rgba(5,13,32,.88);border-bottom:1px solid rgba(130,164,218,.18);backdrop-filter:blur(16px);box-shadow:0 8px 30px rgba(0,0,0,.2)}.admin-shell-brand{display:flex;align-items:center;gap:11px}.admin-shell-mark{width:40px;height:40px;display:grid;place-items:center;border-radius:13px;background:linear-gradient(135deg,#ff3989,#795dff);box-shadow:0 8px 24px rgba(255,57,137,.22);font-size:20px}.admin-shell-brand strong{display:block;font-size:17px}.admin-shell-brand small{display:block;color:#8595b3;font-size:11px;margin-top:2px}.admin-shell-tools{display:flex;align-items:center;gap:12px}.admin-shell-user{color:#b9c7de;font-size:13px}.admin-site-menu{position:relative}.admin-site-menu>summary{list-style:none;width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(130,164,218,.25);border-radius:12px;background:rgba(30,61,111,.24);font-size:22px;cursor:pointer}.admin-site-menu>summary::-webkit-details-marker{display:none}.admin-site-menu nav{position:absolute;right:0;top:50px;width:210px;padding:8px;border:1px solid rgba(130,164,218,.28);border-radius:15px;background:#0a1935;box-shadow:0 20px 50px rgba(0,0,0,.45)}.admin-site-menu nav a{display:block;padding:11px 12px;border-radius:10px;color:#eaf1ff;text-decoration:none;font-size:13px}.admin-site-menu nav a:hover{background:rgba(255,255,255,.07)}.admin-bottom-return{width:min(1280px,calc(100% - 32px));margin:0 auto 34px;display:flex;justify-content:center}.admin-dashboard-hero{margin:0 0 26px;padding:26px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid rgba(118,152,215,.22);border-radius:24px;background:linear-gradient(135deg,rgba(22,51,99,.84),rgba(10,28,62,.9) 54%,rgba(94,31,88,.4));box-shadow:0 18px 50px rgba(0,0,0,.18)}.admin-dashboard-hero h1{margin:5px 0 8px;font-size:clamp(28px,4vw,42px)}.admin-dashboard-hero p{margin:0;max-width:700px;color:#aebbd2}.admin-dashboard-date{min-width:112px;padding:13px 16px;border:1px solid rgba(255,255,255,.11);border-radius:16px;background:rgba(255,255,255,.05);font-weight:800;text-align:center}.admin-dashboard-date small{display:block;margin-top:4px;color:#ff88ab}.admin-section-title{display:flex;justify-content:space-between;align-items:end;margin:18px 0 12px}.admin-section-title h2{margin:4px 0 0}.admin-menu-modern{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.admin-menu-modern a{min-height:104px;padding:16px;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:12px;align-content:center;border-radius:18px;background:linear-gradient(145deg,rgba(22,50,94,.72),rgba(8,23,51,.9));border-color:rgba(124,157,215,.2);box-shadow:0 12px 28px rgba(0,0,0,.13)}.admin-menu-modern a:hover{transform:translateY(-3px);border-color:rgba(255,83,148,.44);box-shadow:0 16px 32px rgba(0,0,0,.2)}.admin-menu-modern a>span{grid-row:1/3;width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:rgba(255,255,255,.06)}.admin-menu-modern a strong{font-size:14px}.admin-menu-modern a small{color:#8191ad;font-size:11px}.admin-page select,.admin-page input:not([type=checkbox]):not([type=radio]):not([type=range]),.admin-page textarea{border:1px solid rgba(125,158,216,.28)!important;border-radius:13px!important;background:#091a35!important;color:#eef4ff!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.025);outline:none}.admin-page select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#ff7fa5 50%),linear-gradient(135deg,#ff7fa5 50%,transparent 50%)!important;background-position:calc(100% - 18px) 50%,calc(100% - 13px) 50%!important;background-size:5px 5px,5px 5px!important;background-repeat:no-repeat!important;padding-right:38px!important}.admin-page select:focus,.admin-page input:focus,.admin-page textarea:focus{border-color:rgba(255,90,149,.62)!important;box-shadow:0 0 0 3px rgba(255,70,140,.10)!important}.admin-page select option{background:#091a35;color:#eef4ff}.admin-page .panel{border-color:rgba(124,157,215,.2);background:linear-gradient(150deg,rgba(17,40,78,.82),rgba(7,21,47,.9));border-radius:20px}.admin-page .btn{border-radius:12px}.admin-team-grid{display:grid;gap:14px}.admin-team-card{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(260px,1.4fr) auto;align-items:center;gap:16px;padding:18px;border:1px solid rgba(124,157,215,.2);border-radius:20px;background:linear-gradient(145deg,rgba(18,43,82,.82),rgba(8,23,50,.92))}.admin-team-avatar{width:52px;height:52px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(135deg,#ff3e8d,#6b67ff);font-weight:900}.admin-team-copy h2{margin:0 0 4px;font-size:18px}.admin-team-copy a{display:block;margin-bottom:7px;color:#aebbd2;text-decoration:none;font-size:12px}.admin-team-perms{display:flex;gap:6px;flex-wrap:wrap}.admin-team-perms span{padding:5px 8px;border-radius:999px;background:rgba(82,130,207,.12);border:1px solid rgba(107,154,228,.18);color:#bad3f7;font-size:10px}.admin-team-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.admin-team-actions form{margin:0}.admin-modal-wide{width:min(850px,100%)}.permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.permission-check{display:flex!important;gap:10px;align-items:flex-start;padding:11px;border:1px solid rgba(125,158,216,.2);border-radius:13px;background:rgba(255,255,255,.03);cursor:pointer}.permission-check input{margin-top:3px}.permission-check span{display:block}.permission-check strong{display:block;font-size:12px}.permission-check small{display:block;margin-top:2px;color:#8191ad;font-size:10px}.mail-promo-note{margin:14px 0;padding:13px 15px;border:1px solid rgba(255,123,161,.28);border-radius:13px;background:rgba(255,62,141,.07);color:#f7cada}.excerpt-maker{margin-top:12px;padding:14px;border:1px solid rgba(125,158,216,.2);border-radius:15px;background:rgba(4,15,37,.42)}.excerpt-maker audio{width:100%;margin-bottom:10px}.excerpt-maker input[type=range]{width:100%;margin:8px 0 12px}.excerpt-maker label{display:block}.excerpt-maker #excerpt-status{display:block;margin-top:8px}.admin-page .back-account{display:inline-flex;margin-bottom:12px;text-decoration:none;color:#aabbd8}.admin-page .back-account:hover{color:#fff}
@media(max-width:1000px){.admin-menu-modern{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-team-card{grid-template-columns:auto 1fr}.admin-team-perms,.admin-team-actions{grid-column:1/-1}}
@media(max-width:700px){.admin-page .admin-shell-main{width:min(100% - 20px,1280px);padding-top:18px}.admin-shell-header{height:62px;padding:0 12px}.admin-shell-user{display:none}.admin-shell-brand strong{font-size:14px}.admin-dashboard-hero{padding:20px;align-items:flex-start;flex-direction:column}.admin-dashboard-date{min-width:0}.admin-menu-modern{grid-template-columns:1fr 1fr}.admin-menu-modern a{min-height:94px;padding:13px}.permission-grid{grid-template-columns:1fr}.admin-team-card{padding:14px}.admin-bottom-return{width:calc(100% - 20px)}}

.mail-template-preview{margin:0 0 10px;max-width:240px;border:1px solid rgba(125,158,216,.2);border-radius:14px;overflow:hidden;background:#07152e}.mail-template-preview img{display:block;width:100%;height:auto}


/* === Ajustement cartes permissions personnel === */
.permission-check{
    display:flex!important;
    gap:12px;
    align-items:center;
    padding:10px 12px;
    min-height:62px;
    border:1px solid rgba(125,158,216,.2);
    border-radius:13px;
    background:rgba(255,255,255,.03);
    cursor:pointer;
}

.permission-check input{
    width:20px;
    height:20px;
    margin:0;
    flex:0 0 auto;
}

.permission-check span{
    display:block;
    line-height:1.25;
}

.permission-check strong{
    display:block;
    font-size:14px;
    font-weight:800;
}

.permission-check small{
    display:block;
    margin-top:3px;
    color:#8191ad;
    font-size:11px;
}

/* Correctifs ergonomie admin validés pendant les tests */
.admin-page input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]):not([type="hidden"]):not([type="submit"]):not([type="button"]),
.admin-page select{
    min-height:48px;
    padding:12px 14px;
    font-size:16px;
    box-sizing:border-box;
}
.admin-page textarea{font-size:16px;line-height:1.45}
.admin-toolbar form input,.global-search-line input,.clients-search-line input{min-height:50px!important}

/* Avis admin */
.admin-reviews-page .reviews-admin{display:grid;gap:14px;margin-top:18px}
.admin-reviews-page .admin-review{padding:18px}
.admin-review-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.admin-reviews-page .admin-review h3{margin:10px 0 8px}
.admin-reviews-page .admin-review small{display:block;margin:12px 0;color:#9eabc5;overflow-wrap:anywhere}

/* Description longue : défilement doux uniquement sur le titre actif si nécessaire */
.admin-playlist .playlist-row-copy small{position:relative;text-overflow:clip!important}
.admin-playlist .playlist-row-copy small>span{display:inline-block;white-space:nowrap;will-change:transform}
.admin-playlist .playlist-row.is-active .playlist-row-copy small.is-overflowing>span{animation:adminCreationTicker 9s linear infinite alternate}
@keyframes adminCreationTicker{from{transform:translateX(0)}to{transform:translateX(calc(-1 * var(--ticker-shift,0px)))}}

/* Les grands tableaux admin deviennent des cartes lisibles sur téléphone. */
@media(max-width:700px){
  .admin-table-wrap.admin-mobile-cards-wrap{overflow:visible!important;padding:0!important;background:transparent!important;border:0!important}
  .admin-pretty-table.admin-mobile-cards{min-width:0!important;width:100%!important;border-collapse:separate!important;border-spacing:0 12px!important}
  .admin-pretty-table.admin-mobile-cards thead,.admin-pretty-table.admin-mobile-cards>tbody>tr>th,.admin-pretty-table.admin-mobile-cards>tr>th{display:none!important}
  .admin-pretty-table.admin-mobile-cards tbody,.admin-pretty-table.admin-mobile-cards>tbody,.admin-pretty-table.admin-mobile-cards>tr{display:block;width:100%}
  .admin-pretty-table.admin-mobile-cards tr{display:block!important;margin:0 0 12px;padding:10px 14px;border:1px solid rgba(124,157,215,.2);border-radius:17px;background:linear-gradient(150deg,rgba(17,40,78,.82),rgba(7,21,47,.9))}
  .admin-pretty-table.admin-mobile-cards td{display:grid!important;grid-template-columns:minmax(92px,35%) minmax(0,1fr);gap:10px;align-items:start;width:100%!important;padding:9px 0!important;border:0!important;border-bottom:1px solid rgba(124,157,215,.10)!important;white-space:normal!important;overflow-wrap:anywhere}
  .admin-pretty-table.admin-mobile-cards td:last-child{border-bottom:0!important}
  .admin-pretty-table.admin-mobile-cards td[data-label]::before{content:attr(data-label);color:#8fa1be;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
  .admin-pretty-table.admin-mobile-cards td[colspan]{display:block!important;text-align:center;padding:18px!important}
  .admin-pretty-table.admin-mobile-cards td[colspan]::before{display:none}
  .admin-pretty-table.admin-mobile-cards .icon-actions{white-space:normal;flex-wrap:wrap}
  .admin-pretty-table.admin-mobile-cards td form{margin:0}
}

/* Codes promo : bouton Modifier sans triangle natif du <details>. */
.promo-edit-details>summary{list-style:none}
.promo-edit-details>summary::-webkit-details-marker{display:none}


/* === Correctif final ergonomie admin 13/09/2026 === */
/* Les retours vers le tableau de bord restent uniquement en bas de page. */


/* Recherches réellement larges et confortables. */
.admin-toolbar{align-items:stretch}
.admin-toolbar form{
    width:min(760px,100%);
    max-width:760px;
    min-width:0;
}
.admin-toolbar form input{
    width:100%;
    min-width:0;
    min-height:52px!important;
    padding:13px 16px!important;
    font-size:16px!important;
}
.admin-toolbar form .btn{
    min-width:52px;
    min-height:52px;
    justify-content:center;
}
.global-search-line input,.clients-search-line input{
    width:100%;
    min-height:52px!important;
    padding:13px 16px!important;
    font-size:16px!important;
}
@media(max-width:700px){
    .admin-toolbar form{width:100%;max-width:none}
    .admin-toolbar form input{flex:1 1 auto}
    .admin-toolbar form .btn{flex:0 0 52px;width:52px;padding:0}
    .global-search-line,.clients-search-line{width:100%}
}


/* === Correctif Nos créations mobile 13/09/2026 === */
/* L'attribut hidden doit réellement masquer l'aperçu tant qu'aucune pochette n'est sélectionnée. */
.creation-cover-preview img[hidden]{display:none!important}

/* Le morceau complet utilise le même lecteur sombre que le catalogue, jamais le player HTML natif. */
.excerpt-maker .excerpt-preview-player{margin:0 0 16px;width:100%}
.excerpt-maker #excerpt-start{width:100%;height:8px;margin:12px 0 18px;accent-color:#ff4b87}
@media(max-width:600px){
  .excerpt-maker{padding:12px}
  .excerpt-maker .excerpt-preview-player{margin-bottom:14px}
}

/* === Position du lien Retour à l’administration === */
.admin-page .admin-top-return{
    margin-top:14px;
    margin-bottom:18px;
}

@media(max-width:700px){
    .admin-page .admin-top-return{
        margin-top:12px;
        margin-bottom:16px;
    }
}

/* === Newsletter accueil intégrée au footer — 13/09/2026 === */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.home-newsletter{position:relative;overflow:hidden;border-top:1px solid rgba(255,70,150,.28);border-bottom:1px solid rgba(102,91,255,.22);background:radial-gradient(circle at 13% 50%,rgba(255,37,144,.20),transparent 31%),radial-gradient(circle at 85% 20%,rgba(111,76,255,.14),transparent 32%),linear-gradient(135deg,#07132c 0%,#0a1733 48%,#120d2d 100%)}
.home-newsletter::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(circle,rgba(255,255,255,.42) 0 1px,transparent 1.7px);background-size:58px 58px;opacity:.13}
.home-newsletter-inner{position:relative;z-index:1;width:min(1180px,calc(100% - 32px));margin:0 auto;min-height:270px;padding:34px 0;display:grid;grid-template-columns:minmax(270px,.75fr) minmax(0,1.55fr);align-items:center;gap:42px}
.newsletter-art{position:relative;height:205px;display:grid;place-items:center;isolation:isolate}
.newsletter-envelope{position:relative;width:190px;height:126px;border:3px solid rgba(233,229,255,.88);border-radius:18px;background:linear-gradient(145deg,rgba(65,64,199,.82),rgba(33,41,119,.92));box-shadow:0 0 18px rgba(89,116,255,.85),0 0 44px rgba(255,48,151,.62),inset 0 0 20px rgba(255,255,255,.08);transform:rotate(-5deg);z-index:3}
.newsletter-envelope::before,.newsletter-envelope::after{content:"";position:absolute;left:12px;right:12px;top:10px;height:92px;border-bottom:3px solid rgba(255,224,246,.72);transform-origin:center bottom}
.newsletter-envelope::before{transform:skewY(-29deg)}
.newsletter-envelope::after{transform:skewY(29deg)}
.newsletter-envelope span{position:absolute;left:50%;top:50%;transform:translate(-50%,-48%);width:66px;height:66px;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle,#ff77bd 0%,#ff2788 55%,#d60072 100%);color:#fff;font-size:34px;text-shadow:0 0 12px #fff;box-shadow:0 0 20px rgba(255,57,153,.95),0 0 46px rgba(255,57,153,.56);z-index:4}
.newsletter-orbit{position:absolute;left:50%;top:50%;border:2px solid rgba(255,67,170,.66);border-radius:50%;transform:translate(-50%,-50%) rotate(-10deg);filter:drop-shadow(0 0 9px rgba(255,65,177,.9));z-index:1}
.newsletter-orbit-one{width:290px;height:125px}.newsletter-orbit-two{width:325px;height:150px;transform:translate(-50%,-50%) rotate(12deg);border-color:rgba(95,151,255,.52)}
.newsletter-note{position:absolute;z-index:4;font-weight:900;color:#ff74c1;text-shadow:0 0 13px currentColor,0 0 26px currentColor}.newsletter-note-one{left:12%;top:11%;font-size:38px;transform:rotate(-8deg)}.newsletter-note-two{right:10%;top:20%;font-size:44px;color:#b8a3ff;transform:rotate(10deg)}.newsletter-note-three{right:18%;bottom:8%;font-size:32px}
.newsletter-copy{min-width:0}.newsletter-script{margin:0 0 -2px;color:#ff5fa8;font-size:clamp(28px,4vw,47px);line-height:1;font-family:cursive;font-style:italic;text-shadow:0 0 22px rgba(255,64,153,.35);transform:rotate(-2deg);transform-origin:left center}.newsletter-copy h2{margin:0;color:#fff;font-size:clamp(34px,4.2vw,57px);line-height:1.04;letter-spacing:.02em;text-shadow:0 0 18px rgba(255,255,255,.16)}.newsletter-copy h2 span{color:#ff5aa9;text-shadow:0 0 18px rgba(255,68,160,.78)}
.newsletter-lead{max-width:780px;margin:14px 0 6px;color:#edf3ff;font-size:17px;line-height:1.55}.newsletter-tagline{margin:0 0 20px;color:#ff78b5;font-size:16px;font-style:italic}
.newsletter-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;max-width:800px}.newsletter-email-wrap{min-width:0;min-height:58px;display:flex;align-items:center;gap:11px;padding:0 18px;border:1px solid rgba(255,75,155,.66);border-radius:999px;background:rgba(3,13,34,.72);box-shadow:inset 0 0 18px rgba(72,68,166,.12)}.newsletter-email-wrap>span:first-child{color:#fff;font-size:21px}.newsletter-email-wrap input{min-width:0;width:100%;height:56px;padding:0!important;border:0!important;background:transparent!important;color:#fff!important;font-size:16px!important;box-shadow:none!important;outline:none!important}.newsletter-email-wrap input::placeholder{color:#8f9bb5}.newsletter-email-wrap:focus-within{border-color:#ff73b4;box-shadow:0 0 0 3px rgba(255,57,145,.10),0 0 24px rgba(255,57,145,.10)}
.newsletter-form button{min-height:58px;padding:0 30px;border:0;border-radius:999px;background:linear-gradient(100deg,#ee2291,#ff4d8e 48%,#ff9a54);color:#fff;font:inherit;font-size:16px;font-weight:900;cursor:pointer;box-shadow:0 10px 28px rgba(255,46,140,.24);transition:transform .18s ease,filter .18s ease}.newsletter-form button:hover{transform:translateY(-2px);filter:brightness(1.06)}.newsletter-form button span{margin-left:8px;font-size:22px}
.newsletter-consent{margin:10px 10px 0;color:#8998b3;font-size:11px;line-height:1.45}.newsletter-consent a{color:#b7c6e0}.newsletter-hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.newsletter-error{margin:0 0 12px;padding:10px 13px;border:1px solid rgba(255,112,129,.28);border-radius:12px;background:rgba(165,24,53,.14);color:#ffbdc7;font-size:13px}
.newsletter-success{width:min(1180px,calc(100% - 32px));margin:22px auto;display:flex;align-items:center;gap:12px;padding:14px 17px;border:1px solid rgba(79,210,155,.32);border-radius:16px;background:rgba(32,134,99,.13);color:#ddfff2}.newsletter-success>span{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:rgba(74,210,156,.18);color:#73e3b4;font-weight:900}.newsletter-success strong,.newsletter-success small{display:block}.newsletter-success small{margin-top:2px;color:#9fc8b8}

@media(max-width:800px){
 .home-newsletter-inner{grid-template-columns:1fr;gap:8px;padding:28px 0 30px;text-align:center}
 .newsletter-art{height:170px}.newsletter-envelope{width:150px;height:102px}.newsletter-envelope::before,.newsletter-envelope::after{height:72px}.newsletter-envelope span{width:54px;height:54px;font-size:28px}.newsletter-orbit-one{width:235px;height:100px}.newsletter-orbit-two{width:270px;height:124px}.newsletter-note-one{left:18%}.newsletter-note-two{right:17%}
 .newsletter-script{transform:none;transform-origin:center}.newsletter-lead{margin-left:auto;margin-right:auto}.newsletter-form{grid-template-columns:1fr;max-width:560px;margin:0 auto}.newsletter-form button{width:100%}.newsletter-consent{max-width:560px;margin:10px auto 0}
}
@media(max-width:480px){
 .home-newsletter-inner{width:min(100% - 24px,1180px);padding-top:23px}.newsletter-art{height:145px}.newsletter-envelope{width:132px;height:90px}.newsletter-envelope::before,.newsletter-envelope::after{height:62px}.newsletter-envelope span{width:48px;height:48px;font-size:24px}.newsletter-orbit-one{width:205px;height:87px}.newsletter-orbit-two{width:235px;height:108px}.newsletter-note-one{left:12%;font-size:30px}.newsletter-note-two{right:11%;font-size:35px}.newsletter-note-three{font-size:26px}.newsletter-copy h2{font-size:36px}.newsletter-script{font-size:29px}.newsletter-lead{font-size:15px}.newsletter-tagline{font-size:14px}.newsletter-email-wrap,.newsletter-form button{min-height:54px}.newsletter-email-wrap input{height:52px;font-size:16px!important}.newsletter-success{width:calc(100% - 24px);margin:14px auto}
}


/* === Newsletter toujours visible + suppression du trait avant le footer === */
.home-newsletter{border-bottom:0!important}
.site-footer{border-top:0!important}

/* === Correctif champ newsletter Chrome / autofill === */
.newsletter-email-wrap input,
.newsletter-email-wrap input:focus,
.newsletter-email-wrap input:active{
    background:transparent!important;
    color:#fff!important;
    caret-color:#fff!important;
}
.newsletter-email-wrap input:-webkit-autofill,
.newsletter-email-wrap input:-webkit-autofill:hover,
.newsletter-email-wrap input:-webkit-autofill:focus,
.newsletter-email-wrap input:-webkit-autofill:active{
    -webkit-text-fill-color:#fff!important;
    caret-color:#fff!important;
    -webkit-box-shadow:0 0 0 1000px #07152e inset!important;
    box-shadow:0 0 0 1000px #07152e inset!important;
    border:0!important;
    border-radius:0 999px 999px 0!important;
    transition:background-color 9999s ease-out 0s!important;
}

/* === Productivité admin : délais, exports et journal === */
.deadline-pill{display:inline-flex;align-items:center;justify-content:center;min-width:92px;padding:6px 9px;border-radius:999px;border:1px solid rgba(148,171,216,.22);font-size:11px;font-weight:900;white-space:nowrap}
.deadline-date{display:block;margin-top:5px;color:#8796af;font-size:10px;white-space:nowrap}
.deadline-ok{background:rgba(54,180,121,.10);border-color:rgba(91,220,158,.24);color:#8ce0b0}
.deadline-soon{background:rgba(255,174,64,.11);border-color:rgba(255,185,78,.30);color:#ffc56f}
.deadline-overdue{background:rgba(222,55,91,.14);border-color:rgba(255,91,121,.35);color:#ff9caf}
.deadline-paused{background:rgba(104,126,164,.10);color:#aebbd0}
.admin-todo-list a.todo-danger{border-color:rgba(255,91,121,.28);background:rgba(191,36,67,.09)}
.admin-todo-list a.todo-warning{border-color:rgba(255,185,78,.26);background:rgba(185,117,27,.08)}
.admin-menu-export{border-color:rgba(79,210,155,.24)!important}
.admin-menu-journal{border-color:rgba(130,119,255,.28)!important}
.export-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:22px 0}
.export-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start;padding:20px;text-decoration:none;color:inherit;transition:transform .18s ease,border-color .18s ease}
.export-card:hover{transform:translateY(-3px);border-color:rgba(255,91,149,.42)}
.export-card>span{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:rgba(255,255,255,.055);font-size:24px}
.export-card h2{margin:0 0 5px;font-size:18px}.export-card p{margin:0;color:#99a8c1;font-size:12px;line-height:1.5}.export-card>strong{grid-column:2;color:#ff9ab6;font-size:12px}
.export-note p{margin:7px 0 0;color:#9aa8bf}.activity-chip{display:inline-flex;padding:6px 9px;border-radius:999px;background:rgba(94,110,255,.10);border:1px solid rgba(124,137,255,.24);color:#c9ceff;font-size:11px;font-weight:800}
@media(max-width:850px){.export-grid{grid-template-columns:1fr}.export-card{padding:17px}}


/* Commande — bloc permanent "Comment ça marche ?" */
.order-how{
    position:relative;
    margin:34px 0 8px;
    padding:30px;
    overflow:hidden;
    border:1px solid rgba(109,157,224,.28);
    border-radius:26px;
    background:
      radial-gradient(circle at 12% 0%,rgba(255,47,135,.10),transparent 30%),
      radial-gradient(circle at 92% 100%,rgba(255,152,87,.08),transparent 28%),
      linear-gradient(155deg,rgba(13,35,70,.98),rgba(6,20,44,.98));
    box-shadow:0 20px 55px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.035);
}
.order-how::before{
    content:"";
    position:absolute;
    left:34px;
    right:34px;
    top:0;
    height:2px;
    background:linear-gradient(90deg,transparent,#ff3b86,#ff9857,transparent);
    opacity:.82;
}
.order-how-head{text-align:center;max-width:760px;margin:0 auto 28px}
.order-how-kicker{display:inline-block;margin-bottom:9px;color:#ff91ad;font-size:11px;font-weight:900;letter-spacing:.13em}
.order-how-head h2{margin:0;font-size:clamp(28px,4vw,40px);line-height:1.08;color:#fff}
.order-how-head h2 span{color:#ff6f98}
.order-how-head p{max-width:650px;margin:12px auto 0;color:#aebbd3;line-height:1.65}
.order-how-steps{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.order-how-steps::before{
    content:"";
    position:absolute;
    left:10%;
    right:10%;
    top:27px;
    height:1px;
    background:linear-gradient(90deg,rgba(255,47,135,.15),rgba(255,152,87,.52),rgba(255,47,135,.15));
    z-index:0;
}
.order-how-card{
    position:relative;
    z-index:1;
    min-width:0;
    padding:22px 17px 20px;
    border:1px solid rgba(148,171,216,.23);
    border-radius:19px;
    background:linear-gradient(160deg,rgba(20,47,88,.92),rgba(8,25,52,.92));
    box-shadow:0 12px 28px rgba(0,0,0,.13);
    text-align:center;
}
.order-how-number{
    width:42px;
    height:42px;
    margin:-2px auto 13px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:linear-gradient(135deg,#ff2f87,#ff9857);
    color:#fff;
    font-size:18px;
    font-weight:900;
    box-shadow:0 0 0 6px rgba(255,72,132,.07),0 8px 20px rgba(255,72,132,.18);
}
.order-how-icon{height:30px;margin-bottom:4px;color:#ff9a82;font-size:25px;line-height:30px}
.order-how-card h3{margin:8px 0 9px;color:#fff;font-size:17px;line-height:1.25}
.order-how-card p{margin:0;color:#aebbd3;font-size:13px;line-height:1.58}
.order-how-reassurance{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:14px;
    margin-top:18px;
    padding:15px 18px;
    border:1px solid rgba(255,99,143,.22);
    border-radius:16px;
    background:linear-gradient(90deg,rgba(255,47,135,.07),rgba(255,152,87,.045));
}
.order-how-heart{flex:0 0 auto;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:rgba(255,84,139,.12);color:#ff86a6;font-size:22px}
.order-how-reassurance strong{display:block;color:#fff;margin-bottom:3px}
.order-how-reassurance p{margin:0;color:#aebbd3;font-size:13px;line-height:1.45}
@media(max-width:900px){
  .order-how-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .order-how-steps::before{display:none}
}
@media(max-width:620px){
  .order-how{margin-top:26px;padding:24px 15px 18px;border-radius:22px}
  .order-how::before{left:20px;right:20px}
  .order-how-head{margin-bottom:20px}
  .order-how-head p{font-size:14px}
  .order-how-steps{grid-template-columns:1fr;gap:11px}
  .order-how-card{display:grid;grid-template-columns:46px 34px 1fr;grid-template-rows:auto auto;column-gap:10px;align-items:center;text-align:left;padding:17px 15px}
  .order-how-number{grid-row:1/3;width:40px;height:40px;margin:0}
  .order-how-icon{grid-column:2;grid-row:1/3;height:auto;margin:0;font-size:21px;display:grid;place-items:center}
  .order-how-card h3{grid-column:3;margin:0 0 5px;font-size:16px}
  .order-how-card p{grid-column:3;margin:0;font-size:12.5px}
  .order-how-reassurance{align-items:flex-start;padding:14px}
}

/* === Brouillons de commande / reprise plus tard === */
.order-draft-resumed{
  margin:18px 0 20px;
  padding:16px 18px;
  border:1px solid rgba(255,105,145,.34);
  border-radius:18px;
  background:linear-gradient(145deg,rgba(255,61,134,.08),rgba(255,151,87,.05));
  box-shadow:0 12px 30px rgba(0,0,0,.12);
}
.order-draft-resumed strong{display:block;color:#fff;font-size:16px;margin-bottom:5px}
.order-draft-resumed span{display:block;color:#b9c7dc;line-height:1.5;font-size:13px}

.order-draft-tools{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin:14px 0 18px;
  padding:12px 14px;
  border:1px solid rgba(125,158,216,.24);
  border-radius:16px;
  background:rgba(8,25,53,.72);
}
.order-draft-state{display:flex;align-items:center;gap:9px;min-width:0;color:#aebbd3;font-size:12px;line-height:1.35}
.order-draft-dot{width:9px;height:9px;border-radius:999px;flex:0 0 auto;background:linear-gradient(135deg,#ff3b86,#ff9857);box-shadow:0 0 0 4px rgba(255,91,139,.08)}
.order-draft-save-later{
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  padding:10px 14px;
  background:rgba(255,255,255,.045);
  color:#fff;
  font-weight:800;
  font-size:12px;
  cursor:pointer;
  white-space:nowrap;
}
.order-draft-save-later:hover{border-color:#ff7598;background:rgba(255,96,143,.08)}

.draft-account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.draft-account-card{
  position:relative;
  overflow:hidden;
  padding:20px;
  border:1px solid rgba(125,158,216,.28);
  border-radius:20px;
  background:linear-gradient(155deg,#10264a,#09182f);
  box-shadow:0 14px 34px rgba(0,0,0,.16);
}
.draft-account-card::before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:3px;background:linear-gradient(90deg,#ff3b86,#ff9857);opacity:.9}
.draft-account-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.draft-account-top small{color:#8392aa;text-align:right;font-size:11px}
.draft-account-badge{display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;background:rgba(255,91,139,.11);border:1px solid rgba(255,91,139,.26);color:#ff8dad;font-size:10px;font-weight:900;letter-spacing:.08em}
.draft-account-card h3{margin:0 0 7px;color:#fff;font-size:20px}
.draft-account-card>p{margin:0;color:#aebbd3;line-height:1.5}
.draft-account-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-top:18px}
.draft-account-actions form{margin:0}
.draft-account-reminders{margin-top:14px;padding-top:12px;border-top:1px solid rgba(125,158,216,.16);color:#7f8ea7;font-size:11px;line-height:1.45}

@media(max-width:700px){
  .order-draft-tools{align-items:stretch;flex-direction:column}
  .order-draft-save-later{width:100%}
  .draft-account-grid{grid-template-columns:1fr}
  .draft-account-top{align-items:flex-start;flex-direction:column}
  .draft-account-top small{text-align:left}
  .draft-account-actions{align-items:stretch;flex-direction:column}
  .draft-account-actions .btn,.draft-account-actions form,.draft-account-actions form .btn{width:100%}
}

/* === Pack croissance / productivité : brouillons, parrainage, pièces jointes, timeline === */
.referral-account-card{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.referral-account-card>div{flex:1;min-width:240px}.referral-account-kicker{display:block;color:#ff8da7;font-size:11px;font-weight:900;letter-spacing:.12em;margin-bottom:8px}
.referral-code-box{display:inline-block;margin:0 0 12px;padding:12px 16px;border-radius:14px;border:1px dashed rgba(255,124,157,.65);background:#07152e;color:#fff;font-size:20px;font-weight:900;letter-spacing:.08em}
.referral-reward-note{display:flex;flex-direction:column;gap:4px;margin:16px 0;padding:14px 16px;border:1px solid rgba(255,126,154,.28);border-radius:15px;background:linear-gradient(90deg,rgba(255,47,135,.08),rgba(255,152,87,.05))}.referral-reward-note strong{color:#fff}.referral-reward-note span{color:#aebbd3;font-size:13px}
.order-attachments-field input[type=file],.chat-attachment-field input[type=file]{width:100%;padding:11px;border:1px solid rgba(148,171,216,.28);border-radius:12px;background:#08182f;color:#dce6f7}
.order-attachment-list{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.attachment-chip,.chat-attachment-link{display:inline-flex;align-items:center;gap:6px;padding:8px 10px;border-radius:11px;background:rgba(255,255,255,.06);border:1px solid rgba(148,171,216,.22);color:#dce6f7;text-decoration:none;font-size:13px}.attachment-chip:hover,.chat-attachment-link:hover{border-color:rgba(255,111,152,.55);color:#fff}.message-bubble .chat-attachment-link{display:flex;margin-top:7px;width:max-content;max-width:100%;overflow-wrap:anywhere}
.draft-admin-list{display:grid;gap:14px}.draft-admin-card{padding:18px}.draft-admin-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.draft-admin-head h3{margin:7px 0 2px}.draft-admin-head p{margin:0;color:#9eacc4}.draft-admin-age{text-align:right}.draft-admin-age strong,.draft-admin-age small{display:block}.draft-admin-age small{color:#9eacc4;margin-top:3px}.draft-admin-meta{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}.draft-admin-meta span{padding:8px 10px;border-radius:10px;background:rgba(255,255,255,.045);color:#9eacc4}.draft-admin-meta strong{color:#fff}.draft-reminder-status{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}.draft-reminder-status span{padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.045);color:#aebbd3;font-size:12px}.draft-reminder-status span.is-done{background:rgba(80,190,130,.10);color:#bce8cd}.draft-stat-grid{margin-top:18px}
.order-timeline{position:relative;display:grid;gap:0;margin-top:12px}.order-timeline-item{position:relative;display:grid;grid-template-columns:20px 1fr;gap:11px;padding:0 0 18px}.order-timeline-item:not(:last-child)::before{content:"";position:absolute;left:7px;top:17px;bottom:0;width:1px;background:rgba(148,171,216,.22)}.order-timeline-dot{width:15px;height:15px;border-radius:50%;margin-top:3px;background:linear-gradient(135deg,#ff2f87,#ff9857);box-shadow:0 0 0 4px rgba(255,76,135,.08)}.order-timeline-item strong{display:block;color:#fff}.order-timeline-item p{margin:3px 0;color:#c1cbe0}.order-timeline-item small{display:block;margin-top:4px;color:#8291ad}
.quick-replies{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.quick-replies-title{width:100%;font-size:12px;font-weight:800;color:#9eacc4}.quick-replies button{border:1px solid rgba(148,171,216,.25);border-radius:999px;padding:8px 11px;background:rgba(255,255,255,.04);color:#dbe4f5;cursor:pointer}.quick-replies button:hover{border-color:rgba(255,111,152,.55);color:#fff}
@media(max-width:650px){.draft-admin-head{flex-direction:column}.draft-admin-age{text-align:left}.referral-account-card{align-items:stretch}.referral-account-card .btn{width:100%}.order-timeline-card{padding-left:14px;padding-right:14px}}

/* Brouillons visiteurs — e-mail de sauvegarde sans création de compte */
.order-draft-email-field{
  margin:0 0 20px;
  padding:16px;
  border:1px solid rgba(255,112,151,.24);
  border-radius:16px;
  background:linear-gradient(145deg,rgba(255,61,132,.055),rgba(255,152,87,.035));
}
.order-draft-email-field label{display:block;margin-bottom:8px;color:#fff;font-weight:800}
.order-draft-email-field input{width:100%}
.order-draft-email-field small{display:block;margin-top:8px;line-height:1.5}
@media(max-width:620px){.order-draft-email-field{padding:14px}}


/* Rétractation en ligne — 04/10/2026 */
.retractation-offer-panel{display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:1000px;margin:0 auto 42px;padding:22px 24px;border:1px solid rgba(255,102,142,.28);border-radius:22px;background:linear-gradient(145deg,rgba(255,47,135,.08),rgba(255,152,87,.045)),rgba(7,20,45,.82);box-shadow:0 18px 42px rgba(0,0,0,.16)}
.retractation-offer-panel h2{margin:4px 0 6px;font-size:22px}.retractation-offer-panel p{margin:0;color:var(--muted);line-height:1.55}.retractation-cta{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;white-space:nowrap}
.retractation-cta{min-height:48px;padding:12px 18px;border-radius:999px;background:linear-gradient(90deg,#ff347f,#ff965f);box-shadow:0 8px 24px rgba(255,66,127,.25);color:#fff;font-weight:900}
.retractation-page{max-width:850px;margin:0 auto;padding:52px 20px 70px}.retractation-hero{padding:26px;border:1px solid rgba(255,102,142,.28);border-radius:24px;background:linear-gradient(145deg,rgba(255,47,135,.08),rgba(255,152,87,.04)),#09162d}.retractation-hero h1{margin:4px 0 10px}.retractation-hero p{color:#cbd5e6;line-height:1.7}.retractation-choice{display:grid;gap:12px;margin-top:20px}.retractation-choice label{display:block}.retractation-choice select,.retractation-choice input,.retractation-choice textarea{width:100%;box-sizing:border-box;padding:14px 15px;border-radius:14px;border:1px solid rgba(148,171,216,.3);background:#08152e;color:#fff}.retractation-choice textarea{min-height:140px;resize:vertical}.retractation-info{margin-top:18px;padding:16px;border-radius:16px;background:rgba(255,255,255,.04);border:1px solid rgba(148,171,216,.18);color:#b9c6dc;line-height:1.65}.retractation-confirm{max-width:760px;margin:60px auto;padding:40px 24px;text-align:center}.execution-choice-box{margin:20px 0;padding:18px 20px;border:1px solid rgba(255,118,153,.28);border-radius:18px;background:linear-gradient(145deg,rgba(255,47,135,.08),rgba(255,152,87,.035)),rgba(7,20,45,.62)}.execution-choice-label{display:flex;align-items:flex-start;gap:12px;cursor:pointer}.execution-choice-label input{margin-top:5px;flex:0 0 auto;width:18px;height:18px;accent-color:#ff4b8a}.execution-choice-label>span{display:grid;gap:5px}.execution-choice-label strong{font-size:15px;color:#fff}.execution-choice-label span span{color:#d4dced;line-height:1.6}.execution-choice-note{margin:10px 0 0;padding-left:30px;color:#9eabc5;font-size:13px;line-height:1.55}.retraction-status-panel{margin-top:18px;padding:16px;border-radius:16px;border:1px solid rgba(255,118,153,.28);background:rgba(255,47,135,.06)}
@media(max-width:760px){.retractation-offer-panel{align-items:flex-start;flex-direction:column;padding:19px}.retractation-cta{width:100%;box-sizing:border-box}.retractation-page{padding-top:34px}.execution-choice-note{padding-left:30px}}


/* source: refonte-2026.css */
/* ==========================================================
   CRÉE MA CHANSON — Refonte visuelle 2026
   Objectifs : continuité visuelle, fond Aurora, cartes opaques,
   header validé sans démarcation, navigation CSS Border Beam.
   ========================================================== */

:root{
  /* Palette extraite du dégradé validé par Manu : prune profond -> bleu nuit. */
  --cmc-bg-left:#201436;
  --cmc-bg-left-soft:#2e173d;
  --cmc-bg-mid:#1b1737;
  --cmc-bg-right:#091631;
  --cmc-bg-0:#091631;
  --cmc-bg-1:#151633;
  --cmc-bg-2:#241637;
  --cmc-card:#151a37;
  --cmc-card-2:#19183b;
  --cmc-line:rgba(157,137,255,.17);
  --cmc-text:#f8f7ff;
  --cmc-muted:#b8bfd3;
  --cmc-pink:#ff57c8;
  --cmc-orange:#ff9b45;
  --cmc-violet:#946fff;
  --cmc-blue:#46cfff;
  --cmc-radius:24px;
  --cmc-shadow:0 22px 58px rgba(2,5,20,.28);
}

html{background:var(--cmc-bg-right);scroll-behavior:smooth}
body:not(.admin-page){
  min-height:100vh;
  color:var(--cmc-text);
  /* Dégradé principal : référence validée + miroir côté opposé. */
  background:
    linear-gradient(90deg,
      var(--cmc-bg-left) 0%,
      var(--cmc-bg-left-soft) 18%,
      var(--cmc-bg-mid) 38%,
      #111833 58%,
      var(--cmc-bg-right) 100%);
  position:relative;
  overflow-x:hidden;
  isolation:isolate;
}
/* Voile Aurora : grandes formes lentes et diffuses, jamais de petites bulles nerveuses. */
body:not(.admin-page)::before,
body:not(.admin-page)::after{
  content:"";
  position:fixed;
  z-index:-2;
  pointer-events:none;
  width:105vw;
  height:72vh;
  min-width:980px;
  min-height:520px;
  border-radius:47% 53% 61% 39% / 55% 42% 58% 45%;
  filter:blur(105px) saturate(118%);
  opacity:.28;
  will-change:transform,border-radius;
  transform-origin:center;
}
body:not(.admin-page)::before{
  left:-42vw;
  top:10vh;
  background:
    radial-gradient(ellipse at 62% 48%,rgba(80,191,255,.52) 0%,rgba(105,86,255,.40) 31%,rgba(214,74,213,.24) 52%,transparent 73%);
  animation:cmcAuroraA 34s ease-in-out infinite alternate;
}
body:not(.admin-page)::after{
  right:-44vw;
  top:45vh;
  background:
    radial-gradient(ellipse at 38% 50%,rgba(255,88,194,.47) 0%,rgba(150,82,255,.34) 30%,rgba(255,139,68,.18) 54%,transparent 74%);
  animation:cmcAuroraB 39s ease-in-out infinite alternate;
}
/* Une couche de voile très douce donne l'impression de formes qui jouent derrière le fond. */
body:not(.admin-page) main::before{
  content:"";
  position:fixed;
  z-index:-1;
  pointer-events:none;
  inset:-18vh -16vw;
  background:
    radial-gradient(ellipse 44vw 28vh at 24% 34%,rgba(255,95,205,.095),transparent 72%),
    radial-gradient(ellipse 48vw 31vh at 78% 61%,rgba(69,194,255,.09),transparent 73%),
    radial-gradient(ellipse 38vw 26vh at 52% 82%,rgba(145,91,255,.075),transparent 72%);
  filter:blur(42px);
  animation:cmcAuroraVeil 46s ease-in-out infinite alternate;
}
@keyframes cmcAuroraA{
  0%{transform:translate3d(0,0,0) scale(1) rotate(-4deg);border-radius:47% 53% 61% 39% / 55% 42% 58% 45%}
  50%{transform:translate3d(16vw,8vh,0) scale(1.10,1.18) rotate(7deg);border-radius:58% 42% 46% 54% / 43% 59% 41% 57%}
  100%{transform:translate3d(27vw,19vh,0) scale(1.18,1.07) rotate(14deg);border-radius:41% 59% 55% 45% / 62% 40% 60% 38%}
}
@keyframes cmcAuroraB{
  0%{transform:translate3d(0,0,0) scale(1.02) rotate(5deg);border-radius:54% 46% 42% 58% / 47% 61% 39% 53%}
  50%{transform:translate3d(-17vw,-10vh,0) scale(1.12,1.20) rotate(-7deg);border-radius:43% 57% 60% 40% / 60% 44% 56% 40%}
  100%{transform:translate3d(-29vw,-19vh,0) scale(1.19,1.08) rotate(-14deg);border-radius:61% 39% 48% 52% / 42% 57% 43% 58%}
}
@keyframes cmcAuroraVeil{
  0%{transform:translate3d(-3vw,-2vh,0) scale(1)}
  50%{transform:translate3d(4vw,4vh,0) scale(1.08,1.12)}
  100%{transform:translate3d(-1vw,8vh,0) scale(1.13,1.04)}
}
@media(prefers-reduced-motion:reduce){
  body:not(.admin-page)::before,body:not(.admin-page)::after,body:not(.admin-page) main::before{animation:none}
}

/* ---------- Header accueil validé ---------- */
.cmc-hero-home{
  width:100%;
  position:relative;
  margin:0;
  padding:0;
  line-height:0;
  overflow:hidden;
  background:#071127;
}
.cmc-hero-art{
  display:block;
  width:100%;
  height:auto;
  margin:0;
  object-fit:cover;
  object-position:center top;
  -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 97.5%,rgba(0,0,0,.82) 99%,transparent 100%);
  mask-image:linear-gradient(to bottom,#000 0%,#000 97.5%,rgba(0,0,0,.82) 99%,transparent 100%);
}
.cmc-hero-nav{
  position:absolute;
  z-index:5;
  left:13.2%;
  right:13.2%;
  bottom:3.9%;
  height:13.2%;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  align-items:center;
  line-height:1.15;
}
.cmc-menu-item{
  min-width:0;
  height:100%;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:5px;
  color:#f9f8ff;
  font-size:clamp(9px,.72vw,14px);
  font-weight:800;
  text-align:center;
  text-decoration:none;
  text-shadow:0 2px 9px rgba(0,0,0,.55);
  transition:transform .25s ease,filter .25s ease,color .25s ease;
}
.cmc-menu-item:hover,.cmc-menu-item:focus-visible{transform:translateY(-4px);filter:brightness(1.16);outline:none}
.cmc-menu-icon{
  --beam-1:#ff5ad0;--beam-2:#ff94d9;--beam-3:#976cff;--icon:#ff67d4;--speed:5.4s;
  position:relative;
  isolation:isolate;
  width:clamp(29px,2.35vw,45px);
  height:clamp(29px,2.35vw,45px);
  display:grid;
  place-items:center;
  border-radius:50%;
  color:var(--icon);
  font-size:clamp(16px,1.35vw,25px);
  line-height:1;
  background:radial-gradient(circle at 50% 42%,rgba(255,255,255,.06),rgba(11,14,40,.96) 72%);
  text-shadow:0 0 9px currentColor;
  box-shadow:inset 0 0 10px rgba(255,255,255,.03);
}
.cmc-menu-icon i{position:absolute;inset:-2px;border-radius:50%;border:1px solid color-mix(in srgb,var(--beam-1) 30%,transparent);z-index:-3}
.cmc-menu-icon::before{
  content:"";position:absolute;inset:-3px;border-radius:50%;padding:2px;z-index:-1;
  background:conic-gradient(from 0deg,transparent 0 30deg,var(--beam-1) 40deg 72deg,transparent 84deg 176deg,var(--beam-2) 190deg 224deg,transparent 238deg 287deg,var(--beam-3) 300deg 331deg,transparent 342deg 360deg);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;
  animation:cmcBeam var(--speed) linear infinite;
}
.cmc-menu-icon::after{
  content:"";position:absolute;inset:-7px;border-radius:50%;z-index:-2;opacity:.58;filter:blur(6px);
  background:conic-gradient(from 0deg,transparent 0 34deg,var(--beam-1) 42deg 64deg,transparent 76deg 183deg,var(--beam-2) 194deg 218deg,transparent 230deg 292deg,var(--beam-3) 303deg 325deg,transparent 337deg 360deg);
  animation:cmcBeam var(--speed) linear infinite;
}
@keyframes cmcBeam{to{transform:rotate(360deg)}}
.cmc-menu-occasions .cmc-menu-icon{--icon:#ffa048;--beam-1:#ff8d34;--beam-2:#ffd166;--beam-3:#ff617c;--speed:5.8s}
.cmc-menu-method .cmc-menu-icon{--icon:#4bd0ff;--beam-1:#39c3ff;--beam-2:#5ceaff;--beam-3:#8879ff;--speed:6.1s}
.cmc-menu-price .cmc-menu-icon{--icon:#a47cff;--beam-1:#9367ff;--beam-2:#c35fff;--beam-3:#5f96ff;--speed:5.6s}
.cmc-menu-reviews .cmc-menu-icon{--icon:#ffd55c;--beam-1:#ffd251;--beam-2:#ff9744;--beam-3:#ff69ae;--speed:6s}
.cmc-menu-account .cmc-menu-icon{--icon:#ff72cc;--beam-1:#ff62ca;--beam-2:#9479ff;--beam-3:#4cd2ff;--speed:5.7s}

/* ---------- Header pages internes ---------- */
body.cmc-inner-page .visual-header{display:none!important}
.cmc-inner-header{position:sticky;top:0;z-index:70;padding:12px 0;background:rgba(7,13,33,.90);backdrop-filter:blur(18px);border-bottom:1px solid rgba(149,122,255,.15);box-shadow:0 12px 34px rgba(0,0,0,.20)}
.cmc-inner-header-shell{width:min(1220px,calc(100% - 36px));margin:auto;display:flex;align-items:center;gap:26px}
.cmc-inner-brand{flex:0 0 auto;display:block;width:190px;line-height:0}
.cmc-inner-brand img{display:block;width:100%;height:auto;max-height:76px;object-fit:contain}
.cmc-inner-nav{margin-left:auto;display:flex;align-items:center;gap:4px;flex-wrap:wrap;justify-content:flex-end}
.cmc-inner-nav a{padding:10px 12px;border-radius:999px;color:#eef1fb;text-decoration:none;font-weight:760;font-size:13px;transition:.2s ease}
.cmc-inner-nav a:hover{background:rgba(255,255,255,.065);color:#fff}
.cmc-inner-nav .cmc-inner-account{background:linear-gradient(135deg,#9a64ff,#ff57c8);box-shadow:0 8px 24px rgba(177,73,255,.22)}
.cmc-inner-toggle{display:none;margin-left:auto;width:46px;height:46px;border:1px solid rgba(255,255,255,.15);border-radius:14px;background:rgba(255,255,255,.06);color:#fff;font-size:24px}

/* ---------- Continuité globale : aucune démarcation franche ---------- */
body:not(.admin-page) main{position:relative;z-index:1;background:transparent!important}
body:not(.admin-page) main>section:first-child{margin-top:0!important}
.section,.moments,.home-realisations-link,.prices,.testimonial,.final-cta,.pricing-page,.faq-page,.realisations-page{background:transparent!important;border:0!important}
.home-shell,.container,.section{width:min(1180px,calc(100% - 36px));margin-left:auto;margin-right:auto}

/* ---------- Cartes opaques : l'Aurora ne traverse pas ---------- */
.panel,.card,.price-card,.formula-card,.review-card,.faq-item,.home-price-card,.realisations-teaser,.playlist-hero,.playlist-list,.billing-profile-card,.contact-card,.account-card,.order-card,.legal-copy,.delivery-note,.retractation-offer-panel,.faq-contact,.reviews-empty{
  background:linear-gradient(145deg,rgba(17,26,52,.985),rgba(19,20,52,.985))!important;
  border:1px solid var(--cmc-line)!important;
  box-shadow:var(--cmc-shadow)!important;
  backdrop-filter:none!important;
}

/* sections/cartes génériques */
body:not(.admin-page) .panel,body:not(.admin-page) .card{border-radius:var(--cmc-radius)!important}
body:not(.admin-page) h1,body:not(.admin-page) h2,body:not(.admin-page) h3{color:#fff}
body:not(.admin-page) p,body:not(.admin-page) li,body:not(.admin-page) .muted{color:var(--cmc-muted)}
body:not(.admin-page) .eyebrow{color:#ff87d4;letter-spacing:.12em}
body:not(.admin-page) .script-title{color:#fff;text-shadow:0 0 24px rgba(169,94,255,.16)}

/* boutons */
body:not(.admin-page) .btn,body:not(.admin-page) .cta,body:not(.admin-page) .price-btn,body:not(.admin-page) .teaser-btn,body:not(.admin-page) button[type="submit"]{
  border:1px solid rgba(255,255,255,.16)!important;
  background:linear-gradient(135deg,#8e64ff 0%,#db55da 48%,#ff7b7f 100%)!important;
  color:#fff!important;
  box-shadow:0 10px 28px rgba(153,72,255,.22)!important;
  transition:transform .2s ease,box-shadow .2s ease,filter .2s ease!important;
}
body:not(.admin-page) .btn:hover,body:not(.admin-page) .cta:hover,body:not(.admin-page) .price-btn:hover,body:not(.admin-page) .teaser-btn:hover,body:not(.admin-page) button[type="submit"]:hover{transform:translateY(-2px);filter:brightness(1.08);box-shadow:0 14px 34px rgba(175,78,255,.30)!important}

/* formulaire : surfaces solides et lisibles */
body:not(.admin-page) input,body:not(.admin-page) select,body:not(.admin-page) textarea{
  background:#0b1730!important;
  color:#f6f8ff!important;
  border:1px solid rgba(142,159,208,.28)!important;
  border-radius:13px!important;
}
body:not(.admin-page) input:focus,body:not(.admin-page) select:focus,body:not(.admin-page) textarea:focus{outline:none!important;border-color:rgba(255,92,202,.66)!important;box-shadow:0 0 0 3px rgba(255,82,195,.10)!important}

/* ---------- Accueil ---------- */
.moments{padding-top:54px!important}
.moments .home-shell{text-align:center}
.occasion-grid{gap:18px!important}
.occasion-new-cover{
  border-radius:22px!important;
  overflow:hidden!important;
  background:#111a34!important;
  border:1px solid rgba(153,135,255,.20)!important;
  box-shadow:0 16px 38px rgba(3,6,22,.28)!important;
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease!important;
}
.occasion-new-cover:hover{transform:translateY(-6px)!important;border-color:rgba(255,91,203,.46)!important;box-shadow:0 22px 48px rgba(3,6,22,.36),0 0 24px rgba(153,79,255,.10)!important}
.occasion-new-cover .occasion-copy{background:#111a34!important}
.occasion-new-cover .occasion-copy b{color:#fff!important}
.occasion-new-cover .occasion-copy small{color:#b7bfd4!important}
.home-realisations-link,.prices,.testimonial,.final-cta{padding-top:34px!important;padding-bottom:34px!important}
.realisations-teaser,.home-price-card{border-radius:26px!important;padding:clamp(22px,3vw,34px)!important}
.final-cta .home-shell{padding:38px 28px;border-radius:28px;background:linear-gradient(145deg,#141a38,#18153d);border:1px solid rgba(157,129,255,.22);box-shadow:var(--cmc-shadow);text-align:center}

/* ---------- Pages internes ---------- */
.cmc-inner-page main{padding-top:34px}
.cmc-inner-page .page-heading,.cmc-inner-page .faq-hero,.cmc-inner-page .realisations-page>.home-shell>p:first-child{margin-top:0}
.page-heading,.faq-hero{text-align:center;max-width:900px;margin-left:auto;margin-right:auto;margin-bottom:30px}
.page-heading h1,.faq-hero h1,.realisations-page h1{font-size:clamp(34px,5vw,58px);line-height:1.02;margin:.2em 0 .35em}
.pricing-cards,.formula-guide-grid,.all-reviews-grid{gap:18px!important}
.price-card,.formula-card{border-radius:24px!important;overflow:hidden}
.faq-group{margin-bottom:26px}
.faq-group-title{padding:18px 4px}
.faq-item{border-radius:18px!important;margin-bottom:10px!important;overflow:hidden}
.faq-item summary{padding:18px 20px!important}
.faq-answer{padding:0 20px 18px!important}
.legal-page,.legal-copy{max-width:960px!important}
.legal-page{padding-top:20px;padding-bottom:56px}
.legal-page>*,.legal-copy{line-height:1.75}

/* Players : structure fonctionnelle inchangée, seulement palette */
.custom-player,.playlist-player{background:#0b1630!important;border:1px solid rgba(131,113,255,.25)!important;box-shadow:inset 0 1px rgba(255,255,255,.03),0 14px 30px rgba(0,0,0,.20)!important}
.player-play{background:linear-gradient(135deg,#ff57c8,#866dff)!important;box-shadow:0 0 24px rgba(255,75,199,.24)!important}
.playlist-row.is-active{background:#151a3a!important;box-shadow:inset 3px 0 #ff5bc8!important}

/* Footer intégré au fond */
.site-footer{margin-top:40px!important;border:0!important;padding:42px 0 34px!important;background:linear-gradient(180deg,transparent,rgba(5,10,28,.50))!important;color:#aeb9cd!important}
.site-footer .footer-inner{border-top:0!important}
.site-footer a{color:#d8d9ff}
.site-footer a:hover{color:#ff7bd1}

/* ---------- Admin : cohérence légère, sans toucher l'ergonomie ---------- */
body.admin-page{background:#091126!important;color:#eef3ff}
body.admin-page .admin-shell-header{background:#101a34!important;border-bottom:1px solid rgba(137,111,255,.22)!important}
body.admin-page .panel,body.admin-page .card{background:#111b36!important;border-color:rgba(127,142,198,.18)!important}

/* ---------- Responsive ---------- */
@media(max-width:900px){
  .cmc-inner-nav{display:none;position:absolute;left:18px;right:18px;top:82px;padding:12px;flex-direction:column;align-items:stretch;background:#0d1730;border:1px solid rgba(145,126,255,.22);border-radius:18px;box-shadow:0 18px 44px rgba(0,0,0,.42)}
  .cmc-inner-nav.is-open{display:flex}
  .cmc-inner-nav a{text-align:center}
  .cmc-inner-toggle{display:block}
  .cmc-inner-brand{width:156px}
}
@media(max-width:760px){
  .cmc-hero-home{min-height:0}
  .cmc-hero-art{width:160%;max-width:none;transform:translateX(-18.5%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 98%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0%,#000 98%,transparent 100%)}
  .cmc-hero-nav{left:4%;right:4%;bottom:2.4%;height:18.8%;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,1fr);gap:0 2px}
  .cmc-menu-item{font-size:10px;gap:3px}
  .cmc-menu-icon{width:30px;height:30px;font-size:16px}
  .cmc-inner-header-shell{width:calc(100% - 24px)}
  .home-shell,.container,.section{width:min(100% - 24px,1180px)}
  .moments{padding-top:32px!important}
  .home-realisations-link,.prices,.testimonial,.final-cta{padding-top:22px!important;padding-bottom:22px!important}
  .page-heading h1,.faq-hero h1,.realisations-page h1{font-size:clamp(31px,10vw,44px)}
}
@media(max-width:480px){
  .cmc-hero-art{width:182%;transform:translateX(-24.5%)}
  .cmc-hero-nav{bottom:1.7%;height:20.5%}
  .cmc-menu-item{font-size:9px}
  .cmc-menu-icon{width:27px;height:27px;font-size:14px}
  .cmc-inner-brand{width:132px}
}

/* ==========================================================
   Correctifs brief 10/10/2026 — continuité absolue du design
   ========================================================== */

/* 1) Zéro démarcation entre le hero, les sections, la newsletter et le footer. */
body:not(.admin-page) main,
body:not(.admin-page) main>section,
body:not(.admin-page) .moments,
body:not(.admin-page) .home-realisations-link,
body:not(.admin-page) .prices,
body:not(.admin-page) .testimonial,
body:not(.admin-page) .final-cta,
body:not(.admin-page) .home-newsletter,
body:not(.admin-page) .site-footer{
  border-top:0!important;
  border-bottom:0!important;
  box-shadow:none;
}
body:not(.admin-page) .home-newsletter{
  margin:0!important;
  background:transparent!important;
  overflow:hidden;
}
body:not(.admin-page) .home-newsletter::before,
body:not(.admin-page) .home-newsletter::after{
  content:none!important;
  display:none!important;
}
body:not(.admin-page) .home-newsletter-inner{
  min-height:260px;
  padding-top:34px!important;
  padding-bottom:34px!important;
}
body:not(.admin-page) .site-footer{
  margin-top:0!important;
  background:linear-gradient(180deg,rgba(9,22,49,0) 0%,rgba(8,18,42,.48) 100%)!important;
}

/* 2) Retirer les notes de musique flottantes décoratives demandées. */
body:not(.admin-page) #occasions.moments::before,
body:not(.admin-page) #occasions.moments::after,
body:not(.admin-page) #occasions .section-lead::before,
body:not(.admin-page) .newsletter-note{
  content:none!important;
  display:none!important;
}

/* 3) Les sections restent réellement transparentes pour laisser vivre le BG/Aurora. */
body:not(.admin-page) .moments,
body:not(.admin-page) .home-realisations-link,
body:not(.admin-page) .prices,
body:not(.admin-page) .testimonial,
body:not(.admin-page) .final-cta,
body:not(.admin-page) .pricing-page,
body:not(.admin-page) .faq-page,
body:not(.admin-page) .realisations-page,
body:not(.admin-page) .legal-page{
  background:transparent!important;
  background-image:none!important;
}

/* 4) Cartes recalibrées sur le nouveau prune/bleu nuit ; opaques pour bloquer l'Aurora. */
body:not(.admin-page) .panel,
body:not(.admin-page) .card,
body:not(.admin-page) .price-card,
body:not(.admin-page) .formula-card,
body:not(.admin-page) .review-card,
body:not(.admin-page) .faq-item,
body:not(.admin-page) .home-price-card,
body:not(.admin-page) .realisations-teaser,
body:not(.admin-page) .playlist-hero,
body:not(.admin-page) .playlist-list,
body:not(.admin-page) .billing-profile-card,
body:not(.admin-page) .contact-card,
body:not(.admin-page) .account-card,
body:not(.admin-page) .order-card,
body:not(.admin-page) .legal-copy,
body:not(.admin-page) .delivery-note,
body:not(.admin-page) .retractation-offer-panel,
body:not(.admin-page) .faq-contact,
body:not(.admin-page) .reviews-empty,
body:not(.admin-page) .final-cta .home-shell{
  background:linear-gradient(138deg,#171a3a 0%,#1e1739 52%,#111b39 100%)!important;
  border-color:rgba(171,145,255,.16)!important;
  box-shadow:0 18px 46px rgba(3,6,22,.25),inset 0 1px rgba(255,255,255,.025)!important;
  backdrop-filter:none!important;
}
body:not(.admin-page) .occasion-new-cover,
body:not(.admin-page) .occasion-new-cover .occasion-copy{
  background:#151a37!important;
  border-color:rgba(168,142,255,.15)!important;
}

/* La newsletter est greffée dans le fond : seul son contenu existe, pas un rectangle de section. */
body:not(.admin-page) .newsletter-art,
body:not(.admin-page) .newsletter-copy{
  position:relative;
}
body:not(.admin-page) .newsletter-envelope{
  filter:drop-shadow(0 12px 30px rgba(184,68,255,.20));
}

/* 5) Hero -> premier contenu : aucun trait ou fond parasite sous l'image. */
.cmc-hero-home{border:0!important;box-shadow:none!important;background:transparent!important}
.cmc-hero-home::after{content:none!important;display:none!important}
.cmc-hero-art{margin-bottom:-1px!important}
body:not(.admin-page) #occasions.moments{margin-top:0!important;border-top:0!important}

/* ==========================================================
   Pass correctifs finaux 10/10/2026 — header/footer/bg/aurora
   ========================================================== */

/* BG miroir : il revient progressivement à son état d'origine. */
body:not(.admin-page){
  background:
    linear-gradient(90deg,
      var(--cmc-bg-left) 0%,
      var(--cmc-bg-left-soft) 14%,
      var(--cmc-bg-mid) 30%,
      var(--cmc-bg-right) 50%,
      var(--cmc-bg-mid) 70%,
      var(--cmc-bg-left-soft) 86%,
      var(--cmc-bg-left) 100%) !important;
}

/* Aurora plus visible, plus lumineuse, grandes formes souples. */
body:not(.admin-page)::before,
body:not(.admin-page)::after{
  width:128vw !important;
  height:86vh !important;
  min-width:1180px !important;
  min-height:640px !important;
  filter:blur(112px) saturate(132%) !important;
  opacity:.46 !important;
}
body:not(.admin-page)::before{
  left:-48vw !important;
  top:4vh !important;
  background:
    radial-gradient(ellipse at 62% 48%,rgba(76,201,255,.78) 0%,rgba(103,92,255,.62) 26%,rgba(215,74,214,.40) 48%,transparent 72%) !important;
  animation:cmcAuroraA2 18.2s ease-in-out infinite alternate !important;
}
body:not(.admin-page)::after{
  right:-48vw !important;
  top:42vh !important;
  background:
    radial-gradient(ellipse at 38% 50%,rgba(255,92,202,.68) 0%,rgba(149,83,255,.50) 28%,rgba(255,147,69,.30) 50%,transparent 72%) !important;
  animation:cmcAuroraB2 17.6s ease-in-out infinite alternate !important;
}
body:not(.admin-page) main::before{
  inset:-14vh -13vw !important;
  background:
    radial-gradient(ellipse 46vw 30vh at 22% 34%,rgba(255,95,205,.16),transparent 72%),
    radial-gradient(ellipse 50vw 33vh at 78% 60%,rgba(69,194,255,.15),transparent 73%),
    radial-gradient(ellipse 40vw 28vh at 50% 82%,rgba(145,91,255,.12),transparent 72%) !important;
  filter:blur(40px) !important;
  animation:cmcAuroraVeil2 18.9s ease-in-out infinite alternate !important;
}
@keyframes cmcAuroraA2{
  0%{transform:translate3d(0,0,0) scale(1) rotate(-4deg);border-radius:47% 53% 61% 39% / 55% 42% 58% 45%}
  50%{transform:translate3d(8vw,4vh,0) scale(1.09,1.16) rotate(5deg);border-radius:58% 42% 46% 54% / 43% 59% 41% 57%}
  100%{transform:translate3d(14vw,10vh,0) scale(1.14,1.06) rotate(10deg);border-radius:41% 59% 55% 45% / 62% 40% 60% 38%}
}
@keyframes cmcAuroraB2{
  0%{transform:translate3d(0,0,0) scale(1.02) rotate(5deg);border-radius:54% 46% 42% 58% / 47% 61% 39% 53%}
  50%{transform:translate3d(-9vw,-5vh,0) scale(1.10,1.18) rotate(-5deg);border-radius:43% 57% 60% 40% / 60% 44% 56% 40%}
  100%{transform:translate3d(-15vw,-10vh,0) scale(1.16,1.07) rotate(-10deg);border-radius:61% 39% 48% 52% / 42% 57% 43% 58%}
}
@keyframes cmcAuroraVeil2{
  0%{transform:translate3d(-1.5vw,-1vh,0) scale(1)}
  50%{transform:translate3d(2.5vw,2.6vh,0) scale(1.06,1.10)}
  100%{transform:translate3d(-.8vw,5vh,0) scale(1.11,1.03)}
}

/* Fusion header -> première section : on élimine la cassure nette. */
.cmc-hero-home{
  margin-bottom:-42px !important;
  background:transparent !important;
}
.cmc-hero-art{
  display:block;
  margin-bottom:0 !important;
  -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 95%,rgba(0,0,0,.78) 98%,transparent 100%) !important;
  mask-image:linear-gradient(to bottom,#000 0%,#000 95%,rgba(0,0,0,.78) 98%,transparent 100%) !important;
}
body:not(.admin-page) #occasions.moments{
  position:relative;
  margin-top:0 !important;
  padding-top:82px !important;
}
body:not(.admin-page) #occasions.moments::before{
  content:"" !important;
  position:absolute;
  left:0; right:0; top:-44px;
  height:84px;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(16,23,44,0) 0%,rgba(19,23,52,.45) 40%,rgba(25,22,54,.95) 100%);
  filter:blur(8px);
}
body:not(.admin-page) #occasions .home-shell{position:relative;z-index:1}

/* Newsletter : champ unifié, aucun sous-rectangle intérieur. */
body:not(.admin-page) .newsletter-form{gap:14px !important;align-items:stretch}
body:not(.admin-page) .newsletter-email-wrap{
  position:relative;
  overflow:hidden;
  min-height:58px;
  border-radius:999px !important;
  background:rgba(5,16,40,.78) !important;
  box-shadow:inset 0 0 0 1px rgba(255,84,183,.22),0 10px 26px rgba(4,8,26,.18) !important;
}
body:not(.admin-page) .newsletter-email-wrap::before,
body:not(.admin-page) .newsletter-email-wrap::after{content:none !important;display:none !important}
body:not(.admin-page) .newsletter-email-wrap input,
body:not(.admin-page) .newsletter-email-wrap input:focus,
body:not(.admin-page) .newsletter-email-wrap input:active{
  width:100% !important;
  min-width:0 !important;
  appearance:none !important;
  -webkit-appearance:none !important;
  border:0 !important;
  outline:none !important;
  box-shadow:none !important;
  -webkit-box-shadow:none !important;
  background:transparent !important;
  border-radius:0 !important;
  padding:0 !important;
}
body:not(.admin-page) .newsletter-email-wrap input:-webkit-autofill,
body:not(.admin-page) .newsletter-email-wrap input:-webkit-autofill:hover,
body:not(.admin-page) .newsletter-email-wrap input:-webkit-autofill:focus,
body:not(.admin-page) .newsletter-email-wrap input:-webkit-autofill:active{
  -webkit-text-fill-color:#fff !important;
  transition:background-color 99999s ease-out 0s,color 99999s ease-out 0s !important;
  -webkit-box-shadow:0 0 0 1000px transparent inset !important;
  box-shadow:0 0 0 1000px transparent inset !important;
  background:transparent !important;
  border-radius:0 !important;
}

/* Footer plus propre et mieux équilibré. */
body:not(.admin-page) .site-footer{
  padding:26px 0 30px !important;
  background:linear-gradient(180deg,rgba(9,22,49,0) 0%,rgba(8,18,42,.34) 35%,rgba(8,18,42,.52) 100%) !important;
}
body:not(.admin-page) .site-footer .footer-inner{
  width:min(1180px,calc(100% - 36px));
  margin:0 auto;
  display:grid !important;
  grid-template-columns:minmax(260px,1.15fr) minmax(280px,1.2fr) auto;
  grid-template-areas:
    "company links payments"
    "meta meta meta";
  gap:20px 28px;
  align-items:end;
}
body:not(.admin-page) .site-footer .footer-company{grid-area:company;align-self:start}
body:not(.admin-page) .site-footer .footer-company strong:first-child{display:block;color:#fff;font-size:28px;line-height:1.05;margin-bottom:8px}
body:not(.admin-page) .site-footer .footer-company > span{display:block;color:#dbe5ff;margin-bottom:12px}
body:not(.admin-page) .site-footer .footer-identity{font-size:13px;line-height:1.45;color:#c2c9de}
body:not(.admin-page) .site-footer .legal{
  grid-area:links;
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:center;
  gap:10px 18px;
  margin:0;
  align-self:center;
}
body:not(.admin-page) .site-footer .legal a{font-weight:600;color:#edf1ff}
body:not(.admin-page) .site-footer .footer-payments{
  grid-area:payments;
  justify-self:end;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:10px;
  margin:0;
}
body:not(.admin-page) .site-footer .payments-title{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#eef3ff;font-weight:800}
body:not(.admin-page) .site-footer .payment-marks{justify-content:flex-end;gap:8px}
body:not(.admin-page) .site-footer .footer-meta{
  grid-area:meta;
  text-align:center;
  padding-top:8px;
  color:#cfd7eb;
}
body:not(.admin-page) .site-footer .footer-meta a{font-weight:700}

/* Responsive footer */
@media(max-width:900px){
  body:not(.admin-page) .site-footer .footer-inner{
    grid-template-columns:1fr;
    grid-template-areas:"company" "links" "payments" "meta";
    gap:18px;
    text-align:center;
  }
  body:not(.admin-page) .site-footer .footer-company,
  body:not(.admin-page) .site-footer .footer-payments,
  body:not(.admin-page) .site-footer .legal,
  body:not(.admin-page) .site-footer .footer-meta{justify-self:center;align-items:center;text-align:center}
  body:not(.admin-page) .site-footer .payment-marks{justify-content:center}
}

/* ==========================================================
   Correctif boutons publics — palette plus sombre / premium
   ========================================================== */
body:not(.admin-page) .btn,
body:not(.admin-page) .cta,
body:not(.admin-page) .price-btn,
body:not(.admin-page) .teaser-btn,
body:not(.admin-page) button[type="submit"],
body:not(.admin-page) .newsletter-form button{
  background:linear-gradient(100deg,#7a43d6 0%,#b73f9e 48%,#d85579 100%) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.10) !important;
  box-shadow:
    0 10px 24px rgba(60,20,105,.24),
    inset 0 1px 0 rgba(255,255,255,.10) !important;
  filter:saturate(.96) brightness(.92);
}
body:not(.admin-page) .btn:hover,
body:not(.admin-page) .cta:hover,
body:not(.admin-page) .price-btn:hover,
body:not(.admin-page) .teaser-btn:hover,
body:not(.admin-page) button[type="submit"]:hover,
body:not(.admin-page) .newsletter-form button:hover{
  background:linear-gradient(100deg,#8548df 0%,#c347a9 48%,#df5b7f 100%) !important;
  filter:saturate(1.02) brightness(.98);
  box-shadow:
    0 13px 28px rgba(73,22,124,.28),
    0 0 18px rgba(181,67,169,.14),
    inset 0 1px 0 rgba(255,255,255,.12) !important;
}

/* ==========================================================
   Pass complète verrouillée — favicon + aurora + cartes + player + footer
   ========================================================== */

/* Rythme/fond final : aurora visible derrière le contenu, sans traverser les cartes. */
body:not(.admin-page){
  background:
    linear-gradient(90deg,
      #4d2a74 0%,
      #3f2769 12%,
      #2f2459 28%,
      #18264f 50%,
      #2f2459 72%,
      #3f2769 88%,
      #4d2a74 100%) !important;
}
body:not(.admin-page)::before,
body:not(.admin-page)::after{
  z-index:0 !important;
  opacity:.58 !important;
  mix-blend-mode:screen;
  filter:blur(120px) saturate(145%) !important;
}
body:not(.admin-page)::before{
  left:-32vw !important;
  top:6vh !important;
  width:104vw !important;
  height:76vh !important;
  min-width:1100px !important;
  background:radial-gradient(ellipse at 58% 45%, rgba(103,224,255,.96) 0%, rgba(102,146,255,.68) 18%, rgba(163,101,255,.52) 34%, rgba(255,93,208,.34) 52%, transparent 74%) !important;
  animation:cmcAuroraMasterA 18.6s ease-in-out infinite alternate !important;
}
body:not(.admin-page)::after{
  right:-32vw !important;
  top:42vh !important;
  width:104vw !important;
  height:76vh !important;
  min-width:1100px !important;
  background:radial-gradient(ellipse at 42% 56%, rgba(255,115,199,.90) 0%, rgba(193,111,255,.58) 24%, rgba(89,179,255,.46) 42%, rgba(255,154,77,.28) 58%, transparent 76%) !important;
  animation:cmcAuroraMasterB 17.9s ease-in-out infinite alternate !important;
}
body:not(.admin-page) main::before{
  z-index:0 !important;
  inset:-12vh -10vw !important;
  opacity:1 !important;
  background:
    radial-gradient(ellipse 50vw 30vh at 22% 32%, rgba(255,118,211,.24), transparent 72%),
    radial-gradient(ellipse 54vw 34vh at 76% 57%, rgba(83,187,255,.22), transparent 72%),
    radial-gradient(ellipse 36vw 22vh at 50% 82%, rgba(149,102,255,.14), transparent 74%) !important;
  filter:blur(46px) !important;
  animation:cmcAuroraMasterVeil 18.3s ease-in-out infinite alternate !important;
}
.cmc-hero-home,
.cmc-inner-header,
body:not(.admin-page) main,
body:not(.admin-page) .home-newsletter,
body:not(.admin-page) .site-footer,
body:not(.admin-page) .newsletter-success{position:relative;z-index:1}
@keyframes cmcAuroraMasterA{
  0%{transform:translate3d(0,0,0) scale(1) rotate(-3deg);border-radius:46% 54% 59% 41% / 56% 43% 57% 44%}
  50%{transform:translate3d(7vw,2vh,0) scale(1.10,1.14) rotate(4deg);border-radius:56% 44% 47% 53% / 42% 57% 43% 58%}
  100%{transform:translate3d(12vw,7vh,0) scale(1.15,1.06) rotate(9deg);border-radius:40% 60% 52% 48% / 61% 39% 58% 42%}
}
@keyframes cmcAuroraMasterB{
  0%{transform:translate3d(0,0,0) scale(1.02) rotate(4deg);border-radius:55% 45% 44% 56% / 48% 59% 41% 52%}
  50%{transform:translate3d(-7vw,-3vh,0) scale(1.08,1.16) rotate(-4deg);border-radius:42% 58% 61% 39% / 60% 43% 57% 40%}
  100%{transform:translate3d(-12vw,-8vh,0) scale(1.15,1.08) rotate(-9deg);border-radius:62% 38% 49% 51% / 43% 58% 42% 57%}
}
@keyframes cmcAuroraMasterVeil{
  0%{transform:translate3d(-1vw,-1vh,0) scale(1)}
  50%{transform:translate3d(2vw,2vh,0) scale(1.05,1.09)}
  100%{transform:translate3d(-1vw,4vh,0) scale(1.1,1.03)}
}

/* Tous les blocs publics : même langage visuel, glass léger et premium. */
body:not(.admin-page) .panel,
body:not(.admin-page) .card,
body:not(.admin-page) .price-card,
body:not(.admin-page) .formula-card,
body:not(.admin-page) .review-card,
body:not(.admin-page) .faq-item,
body:not(.admin-page) .home-price-card,
body:not(.admin-page) .realisations-teaser,
body:not(.admin-page) .playlist-hero,
body:not(.admin-page) .playlist-list,
body:not(.admin-page) .billing-profile-card,
body:not(.admin-page) .contact-card,
body:not(.admin-page) .account-card,
body:not(.admin-page) .order-card,
body:not(.admin-page) .legal-copy,
body:not(.admin-page) .delivery-note,
body:not(.admin-page) .retractation-offer-panel,
body:not(.admin-page) .faq-contact,
body:not(.admin-page) .reviews-empty{
  background:
    linear-gradient(180deg, rgba(16,22,53,.86) 0%, rgba(18,23,57,.78) 100%) !important;
  border:1px solid rgba(162,145,255,.18) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.06),
    0 18px 45px rgba(4,7,24,.28),
    0 0 0 1px rgba(255,255,255,.02) !important;
  backdrop-filter:blur(18px) saturate(145%) !important;
  -webkit-backdrop-filter:blur(18px) saturate(145%) !important;
}
body:not(.admin-page) .panel::before,
body:not(.admin-page) .card::before,
body:not(.admin-page) .price-card::before,
body:not(.admin-page) .formula-card::before,
body:not(.admin-page) .review-card::before,
body:not(.admin-page) .home-price-card::before,
body:not(.admin-page) .playlist-hero::before,
body:not(.admin-page) .playlist-list::before,
body:not(.admin-page) .contact-card::before,
body:not(.admin-page) .account-card::before,
body:not(.admin-page) .order-card::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,0) 22%);
  opacity:.7;
}
body:not(.admin-page) .panel,
body:not(.admin-page) .card,
body:not(.admin-page) .price-card,
body:not(.admin-page) .formula-card,
body:not(.admin-page) .review-card,
body:not(.admin-page) .home-price-card,
body:not(.admin-page) .playlist-hero,
body:not(.admin-page) .playlist-list,
body:not(.admin-page) .contact-card,
body:not(.admin-page) .account-card,
body:not(.admin-page) .order-card{position:relative;overflow:hidden}

/* Réalisations : player plus attractif, plus musical, plus premium. */
body:not(.admin-page) .playlist-page .home-shell{max-width:900px !important}
body:not(.admin-page) .playlist-hero{
  margin-top:28px !important;
  padding:20px !important;
  border-radius:30px !important;
}
body:not(.admin-page) .playlist-cover.track-cover{
  height:300px !important;
  margin:-20px -20px 20px !important;
  border-radius:28px 28px 18px 18px !important;
  background:linear-gradient(135deg,#091532,#121b42) !important;
}
body:not(.admin-page) .playlist-cover::after{
  content:"";
  position:absolute;inset:auto 0 0 0;height:40%;
  background:linear-gradient(180deg,rgba(10,16,41,0),rgba(10,16,41,.32) 38%,rgba(10,16,41,.88));
  pointer-events:none;
}
body:not(.admin-page) .playlist-main > small{
  color:#ff9fc5 !important;
  font-size:13px !important;
  letter-spacing:.1em !important;
  font-weight:900 !important;
  margin-bottom:6px !important;
}
body:not(.admin-page) .playlist-main h2{font-size:clamp(32px,4.8vw,44px) !important;line-height:1.04 !important;margin-bottom:6px !important}
body:not(.admin-page) .playlist-main .track-style{color:#d8dff2 !important;margin-bottom:12px !important}
body:not(.admin-page) .style-badges span{
  background:rgba(255,105,191,.09) !important;
  color:#ffb9d7 !important;
  border:1px solid rgba(255,154,213,.28) !important;
  padding:6px 12px !important;
  border-radius:999px !important;
  font-weight:700 !important;
}
body:not(.admin-page) .playlist-player{
  position:relative;
  margin-top:18px !important;
  padding:18px 18px 16px !important;
  border-radius:24px !important;
  border:1px solid rgba(106,150,255,.22) !important;
  background:
    linear-gradient(180deg, rgba(7,18,46,.88), rgba(8,16,42,.75)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.06),
    0 14px 34px rgba(5,9,27,.28),
    0 0 0 1px rgba(255,255,255,.02) !important;
}
body:not(.admin-page) .playlist-player::before{
  content:"";
  position:absolute;inset:auto -8% -36% -8%;height:120px;pointer-events:none;
  background:radial-gradient(circle, rgba(255,103,203,.18) 0%, rgba(103,201,255,.10) 36%, transparent 68%);
}
body:not(.admin-page) .playlist-player .player-play{
  width:72px !important;
  height:72px !important;
  border-radius:50% !important;
  border:1px solid rgba(255,255,255,.10) !important;
  background:linear-gradient(135deg,#ff5dc6 0%, #ff7f8a 48%, #966cff 100%) !important;
  color:#fff !important;
  font-size:28px !important;
  box-shadow:0 14px 34px rgba(255,87,200,.24), inset 0 1px 0 rgba(255,255,255,.16) !important;
}
body:not(.admin-page) .playlist-player .player-time{
  font-weight:700 !important;
  color:#dfe7ff !important;
  padding-inline:4px !important;
}
body:not(.admin-page) .playlist-player .player-wave{
  height:34px !important;
  gap:4px !important;
  align-items:flex-end !important;
}
body:not(.admin-page) .playlist-player .player-wave i{
  width:4px !important;
  max-width:6px !important;
  border-radius:999px !important;
  background:linear-gradient(180deg,#60d9ff 0%, #9270ff 48%, #ff68c6 100%) !important;
  opacity:.48 !important;
  min-height:22% !important;
}
body:not(.admin-page) .playlist-player.is-playing .player-wave i,
body:not(.admin-page) .is-playing .player-wave i{
  animation:cmcWavePulse .88s ease-in-out infinite alternate !important;
}
body:not(.admin-page) .playlist-player .player-wave i:nth-child(2n){animation-delay:-.18s !important}
body:not(.admin-page) .playlist-player .player-wave i:nth-child(3n){animation-delay:-.37s !important}
@keyframes cmcWavePulse{from{transform:scaleY(.48);opacity:.38}to{transform:scaleY(1.14);opacity:1}}
body:not(.admin-page) .player-progress,
body:not(.admin-page) .player-volume-range{
  accent-color:#ff79c9;
}
body:not(.admin-page) .player-volume-wrap{
  align-items:center !important;
  gap:10px !important;
}
body:not(.admin-page) .player-volume{
  width:42px !important;height:42px !important;border-radius:50% !important;
  border:1px solid rgba(255,255,255,.10) !important;
  background:rgba(255,255,255,.06) !important;color:#f4f7ff !important;
}
body:not(.admin-page) .playlist-list{
  margin-top:24px !important;
  border-radius:24px !important;
  border:1px solid rgba(157,137,255,.18) !important;
}
body:not(.admin-page) .playlist-list::before{
  padding:18px 18px 14px !important;
  font-size:18px !important;
  letter-spacing:-.01em;
}
body:not(.admin-page) .playlist-row{
  min-height:74px !important;
  padding:14px 16px !important;
  border-top:1px solid rgba(255,255,255,.07) !important;
  transition:background .18s ease, transform .18s ease !important;
}
body:not(.admin-page) .playlist-row:hover{
  transform:translateX(2px);
  background:rgba(255,255,255,.03) !important;
}
body:not(.admin-page) .playlist-row.is-active{
  background:linear-gradient(90deg, rgba(255,98,193,.16), rgba(102,161,255,.06)) !important;
  box-shadow:inset 3px 0 #ff66c3 !important;
}
body:not(.admin-page) .playlist-row-copy strong{font-size:18px !important;color:#f9fbff !important}
body:not(.admin-page) .playlist-row-copy small{font-size:12px !important;color:#b8c3db !important}
body:not(.admin-page) .playlist-row-play{
  width:34px !important;height:34px !important;border-radius:50% !important;
  border:1px solid rgba(221,228,255,.55) !important;
  background:rgba(255,255,255,.04) !important;
}
body:not(.admin-page) .playlist-row.is-active .playlist-row-play{
  border-color:#ff77c9 !important;color:#ff9ada !important;
  box-shadow:0 0 16px rgba(255,106,198,.16) !important;
}
body:not(.admin-page) .realisations-cta{margin-top:30px !important;text-align:center !important}

/* Footer premium refait proprement. */
body:not(.admin-page) .site-footer{
  margin-top:48px !important;
  padding:32px 0 34px !important;
  background:linear-gradient(180deg, rgba(8,18,42,0) 0%, rgba(8,18,42,.18) 20%, rgba(8,18,42,.34) 100%) !important;
}
body:not(.admin-page) .site-footer .footer-inner{
  width:min(1180px,calc(100% - 36px)) !important;
  grid-template-columns:minmax(260px,1.2fr) minmax(280px,1fr) auto !important;
  grid-template-areas:"company links payments" "meta meta meta" !important;
  align-items:start !important;
  gap:22px 32px !important;
}
body:not(.admin-page) .site-footer .footer-company{grid-area:company !important;max-width:340px}
body:not(.admin-page) .site-footer .footer-brandline{
  font-size:24px;
  line-height:1.05;
  font-weight:900;
  letter-spacing:-.02em;
  color:#fff;
  margin:0 0 8px;
}
body:not(.admin-page) .site-footer .footer-tagline{
  margin:0 0 14px;
  color:#dfe5f6;
  font-size:16px;
  font-weight:600;
}
body:not(.admin-page) .site-footer .footer-owner{
  color:#fff;
  font-size:18px;
  font-weight:800;
  margin-bottom:6px;
}
body:not(.admin-page) .site-footer .footer-status{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 12px;
  border-radius:999px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.08);
  color:#eff2ff;
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.08em;
  margin-bottom:10px;
}
body:not(.admin-page) .site-footer .footer-registry,
body:not(.admin-page) .site-footer .footer-address{
  color:#c8d0e3;
  font-size:13px;
  line-height:1.5;
}
body:not(.admin-page) .site-footer .footer-address{font-style:normal;margin-top:6px}
body:not(.admin-page) .site-footer .legal{
  align-self:center !important;
  justify-content:center !important;
  gap:10px 16px !important;
}
body:not(.admin-page) .site-footer .legal a{font-size:14px !important}
body:not(.admin-page) .site-footer .footer-payments{align-self:center !important}
body:not(.admin-page) .site-footer .payments-title{margin-bottom:2px}
body:not(.admin-page) .site-footer .footer-meta{
  padding-top:2px !important;
  text-align:center !important;
  font-size:13px;
}

/* Newsletter toujours greffée et propre. */
body:not(.admin-page) .home-newsletter{padding-block:20px 8px !important}
body:not(.admin-page) .home-newsletter-inner{gap:24px !important}
body:not(.admin-page) .newsletter-email-wrap{background:rgba(7,18,46,.74) !important}

/* Responsive principal */
@media(max-width:900px){
  body:not(.admin-page) .playlist-cover.track-cover{height:240px !important}
  body:not(.admin-page) .playlist-main h2{font-size:30px !important}
  body:not(.admin-page) .playlist-player .player-play{width:62px !important;height:62px !important;font-size:25px !important}
  body:not(.admin-page) .site-footer .footer-inner{grid-template-columns:1fr !important;grid-template-areas:"company" "links" "payments" "meta" !important;text-align:center !important}
  body:not(.admin-page) .site-footer .footer-company,
  body:not(.admin-page) .site-footer .footer-payments,
  body:not(.admin-page) .site-footer .legal,
  body:not(.admin-page) .site-footer .footer-meta{justify-self:center !important;text-align:center !important;align-items:center !important}
  body:not(.admin-page) .site-footer .payment-marks{justify-content:center !important}
}
@media(max-width:680px){
  body:not(.admin-page) .playlist-page .home-shell{max-width:none !important}
  body:not(.admin-page) .playlist-hero{padding:14px !important;border-radius:22px !important}
  body:not(.admin-page) .playlist-cover.track-cover{height:208px !important;margin:-14px -14px 16px !important;border-radius:20px 20px 14px 14px !important}
  body:not(.admin-page) .playlist-player{padding:14px 12px !important;border-radius:20px !important}
  body:not(.admin-page) .playlist-row{min-height:66px !important;padding:12px 12px !important}
  body:not(.admin-page) .playlist-row-copy strong{font-size:15px !important}
}

/* Correctif spécifique : le pseudo-élément de la playlist garde son rôle de titre, pas de voile générique. */
body:not(.admin-page) .playlist-list::before{
  position:static !important;
  inset:auto !important;
  display:block !important;
  background:rgba(255,255,255,.02) !important;
  pointer-events:none !important;
  opacity:1 !important;
  border-bottom:1px solid rgba(255,255,255,.06);
}

/* Le verre reste lisible : les zones de texte gardent une matière légèrement plus dense. */
body:not(.admin-page) .playlist-main,
body:not(.admin-page) .faq-answer,
body:not(.admin-page) .legal-copy,
body:not(.admin-page) .footer-inner{
  position:relative;
  z-index:1;
}

/* ==========================================================
   PASS 7 — corrections réelles ciblées demandées par l'utilisateur
   Aurora plus visible / glass distortion visible / boutons plus foncés
   Player réellement refondu / favicon plus lisible
   ========================================================== */

/* 1) Aurora : beaucoup plus visible, avec nappes larges et lumineuses */
body:not(.admin-page){
  background:
    radial-gradient(circle at 18% 28%, rgba(129,146,255,.22) 0%, rgba(129,146,255,0) 24%),
    radial-gradient(circle at 82% 32%, rgba(255,104,189,.18) 0%, rgba(255,104,189,0) 22%),
    linear-gradient(90deg, #522b76 0%, #45286f 14%, #32255f 28%, #192650 50%, #32255f 72%, #45286f 86%, #522b76 100%) !important;
  background-attachment: fixed !important;
}
body:not(.admin-page)::before,
body:not(.admin-page)::after{
  content:"" !important;
  position:fixed !important;
  pointer-events:none !important;
  z-index:0 !important;
  mix-blend-mode:screen !important;
  opacity:.82 !important;
  filter:blur(86px) saturate(165%) !important;
}
body:not(.admin-page)::before{
  left:-18vw !important;
  top:5vh !important;
  width:78vw !important;
  height:66vh !important;
  min-width:980px !important;
  background:
    radial-gradient(ellipse at 45% 40%, rgba(83,211,255,.82) 0%, rgba(113,145,255,.70) 26%, rgba(168,94,255,.44) 52%, rgba(255,88,201,.12) 72%, transparent 84%) !important;
  animation:cmcAuroraVisibleA 19s ease-in-out infinite alternate !important;
}
body:not(.admin-page)::after{
  right:-18vw !important;
  top:36vh !important;
  width:78vw !important;
  height:64vh !important;
  min-width:980px !important;
  background:
    radial-gradient(ellipse at 55% 54%, rgba(255,92,199,.76) 0%, rgba(199,111,255,.58) 32%, rgba(76,189,255,.40) 56%, rgba(255,160,89,.10) 74%, transparent 86%) !important;
  animation:cmcAuroraVisibleB 18.4s ease-in-out infinite alternate !important;
}
body:not(.admin-page) main::before{
  content:"" !important;
  position:fixed !important;
  inset:0 !important;
  pointer-events:none !important;
  z-index:0 !important;
  background:
    radial-gradient(ellipse 44vw 22vh at 24% 56%, rgba(255,95,194,.12), transparent 74%),
    radial-gradient(ellipse 46vw 24vh at 78% 42%, rgba(95,188,255,.12), transparent 74%) !important;
  filter:blur(36px) !important;
  opacity:1 !important;
  animation:cmcAuroraVisibleVeil 19.2s ease-in-out infinite alternate !important;
}
@keyframes cmcAuroraVisibleA{
  0%{transform:translate3d(0,0,0) scale(1) rotate(-3deg)}
  50%{transform:translate3d(6vw,2vh,0) scale(1.08,1.12) rotate(3deg)}
  100%{transform:translate3d(10vw,7vh,0) scale(1.12,1.06) rotate(7deg)}
}
@keyframes cmcAuroraVisibleB{
  0%{transform:translate3d(0,0,0) scale(1.01) rotate(4deg)}
  50%{transform:translate3d(-6vw,-2vh,0) scale(1.07,1.12) rotate(-3deg)}
  100%{transform:translate3d(-10vw,-7vh,0) scale(1.12,1.06) rotate(-8deg)}
}
@keyframes cmcAuroraVisibleVeil{
  0%{transform:translate3d(0,0,0) scale(1)}
  50%{transform:translate3d(1vw,2vh,0) scale(1.05,1.08)}
  100%{transform:translate3d(-1vw,4vh,0) scale(1.09,1.03)}
}

/* 2) Cartes public : vrai glass distortion visible */
body:not(.admin-page) .panel,
body:not(.admin-page) .card,
body:not(.admin-page) .price-card,
body:not(.admin-page) .formula-card,
body:not(.admin-page) .review-card,
body:not(.admin-page) .faq-item,
body:not(.admin-page) .home-price-card,
body:not(.admin-page) .realisations-teaser,
body:not(.admin-page) .playlist-hero,
body:not(.admin-page) .playlist-list,
body:not(.admin-page) .billing-profile-card,
body:not(.admin-page) .contact-card,
body:not(.admin-page) .account-card,
body:not(.admin-page) .order-card,
body:not(.admin-page) .legal-copy,
body:not(.admin-page) .delivery-note,
body:not(.admin-page) .retractation-offer-panel,
body:not(.admin-page) .faq-contact,
body:not(.admin-page) .reviews-empty,
body:not(.admin-page) .final-cta .home-shell,
body:not(.admin-page) .home-newsletter-inner{
  position:relative !important;
  overflow:hidden !important;
  background:linear-gradient(180deg, rgba(12,20,54,.54) 0%, rgba(14,21,56,.44) 100%) !important;
  border:1px solid rgba(193,185,255,.22) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.16),
    inset 0 -1px 0 rgba(255,255,255,.04),
    0 18px 44px rgba(5,8,25,.26),
    0 0 0 1px rgba(255,255,255,.03) !important;
  backdrop-filter: blur(24px) saturate(175%) brightness(1.08) !important;
  -webkit-backdrop-filter: blur(24px) saturate(175%) brightness(1.08) !important;
}
body:not(.admin-page) .panel::before,
body:not(.admin-page) .card::before,
body:not(.admin-page) .price-card::before,
body:not(.admin-page) .formula-card::before,
body:not(.admin-page) .review-card::before,
body:not(.admin-page) .faq-item::before,
body:not(.admin-page) .home-price-card::before,
body:not(.admin-page) .realisations-teaser::before,
body:not(.admin-page) .playlist-hero::before,
body:not(.admin-page) .playlist-list::before,
body:not(.admin-page) .billing-profile-card::before,
body:not(.admin-page) .contact-card::before,
body:not(.admin-page) .account-card::before,
body:not(.admin-page) .order-card::before,
body:not(.admin-page) .final-cta .home-shell::before,
body:not(.admin-page) .home-newsletter-inner::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.22) 0%, rgba(255,255,255,.08) 12%, rgba(255,255,255,0) 28%),
    radial-gradient(circle at 12% 18%, rgba(255,255,255,.16) 0%, rgba(255,255,255,0) 24%),
    radial-gradient(circle at 86% 90%, rgba(122,178,255,.12) 0%, rgba(122,178,255,0) 24%) !important;
}
body:not(.admin-page) .panel::after,
body:not(.admin-page) .card::after,
body:not(.admin-page) .price-card::after,
body:not(.admin-page) .formula-card::after,
body:not(.admin-page) .review-card::after,
body:not(.admin-page) .faq-item::after,
body:not(.admin-page) .home-price-card::after,
body:not(.admin-page) .realisations-teaser::after,
body:not(.admin-page) .playlist-hero::after,
body:not(.admin-page) .playlist-list::after,
body:not(.admin-page) .billing-profile-card::after,
body:not(.admin-page) .contact-card::after,
body:not(.admin-page) .account-card::after,
body:not(.admin-page) .order-card::after,
body:not(.admin-page) .final-cta .home-shell::after,
body:not(.admin-page) .home-newsletter-inner::after{
  content:"" !important;
  position:absolute !important;
  width:170px !important;
  height:170px !important;
  right:-34px !important;
  bottom:-48px !important;
  border-radius:50% !important;
  pointer-events:none !important;
  background:radial-gradient(circle, rgba(255,255,255,.08) 0%, rgba(255,255,255,.03) 28%, rgba(255,255,255,0) 68%) !important;
  filter:blur(14px) !important;
}

/* 3) Boutons : plus foncés, mieux détachés des cartes */
body:not(.admin-page) .btn,
body:not(.admin-page) .cta,
body:not(.admin-page) .price-btn,
body:not(.admin-page) .teaser-btn,
body:not(.admin-page) button[type="submit"]{
  background:linear-gradient(135deg, #7240d7 0%, #c74d8e 58%, #d45a67 100%) !important;
  border:1px solid rgba(255,255,255,.14) !important;
  color:#fff !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.14),
    0 12px 30px rgba(95,41,160,.32),
    0 0 0 1px rgba(70,26,130,.20) !important;
  text-shadow:0 1px 0 rgba(0,0,0,.14) !important;
}
body:not(.admin-page) .btn:hover,
body:not(.admin-page) .cta:hover,
body:not(.admin-page) .price-btn:hover,
body:not(.admin-page) .teaser-btn:hover,
body:not(.admin-page) button[type="submit"]:hover{
  transform:translateY(-2px) !important;
  filter:brightness(1.08) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.16),
    0 16px 36px rgba(92,44,168,.38),
    0 0 0 1px rgba(255,255,255,.06) !important;
}

/* 4) Player : refonte visuelle claire et visible */
body:not(.admin-page) .playlist-page .home-shell{max-width:860px !important}
body:not(.admin-page) .playlist-hero{
  margin-top:28px !important;
  border-radius:30px !important;
  padding:22px !important;
}
body:not(.admin-page) .playlist-cover.track-cover{
  height:330px !important;
  margin:-22px -22px 22px !important;
  border-radius:30px 30px 18px 18px !important;
  background:#07132d !important;
}
body:not(.admin-page) .playlist-cover.track-cover::before{
  content:"" !important;
  position:absolute !important;
  inset:auto 0 0 0 !important;
  height:48% !important;
  background:linear-gradient(180deg, rgba(8,16,42,0) 0%, rgba(8,16,42,.38) 36%, rgba(8,16,42,.96) 100%) !important;
  pointer-events:none !important;
}
body:not(.admin-page) .playlist-player{
  display:grid !important;
  grid-template-columns:84px minmax(0,1fr) 48px !important;
  grid-template-areas:
    "play time volume"
    "play wave volume"
    "play progress volume" !important;
  gap:10px 18px !important;
  min-height:132px !important;
  padding:18px 18px !important;
  margin-top:20px !important;
  border-radius:24px !important;
  border:1px solid rgba(137,167,255,.24) !important;
  background:
    linear-gradient(180deg, rgba(4,18,50,.94) 0%, rgba(7,17,43,.84) 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.10),
    0 18px 44px rgba(5,9,27,.34),
    0 0 0 1px rgba(255,255,255,.04) !important;
}
body:not(.admin-page) .playlist-player .player-play{
  width:84px !important;
  height:84px !important;
  grid-area:play !important;
  justify-self:center !important;
  align-self:center !important;
  border-radius:50% !important;
  border:1px solid rgba(255,255,255,.16) !important;
  background:linear-gradient(135deg, #ff67bf 0%, #ff7d83 58%, #8d7dff 100%) !important;
  box-shadow:0 18px 36px rgba(255,94,194,.28), inset 0 1px 0 rgba(255,255,255,.18) !important;
  color:#fff !important;
  font-size:32px !important;
}
body:not(.admin-page) .playlist-player .player-time{
  grid-area:time !important;
  width:100% !important;
  display:flex !important;
  justify-content:space-between !important;
  align-items:center !important;
  color:#ecf2ff !important;
  font-weight:800 !important;
  font-size:13px !important;
}
body:not(.admin-page) .playlist-player .player-wave{
  grid-area:wave !important;
  width:100% !important;
  min-width:0 !important;
  height:44px !important;
  display:flex !important;
  align-items:flex-end !important;
  gap:5px !important;
}
body:not(.admin-page) .playlist-player .player-wave i{
  width:5px !important;
  min-height:24% !important;
  border-radius:999px !important;
  background:linear-gradient(180deg, #62e0ff 0%, #9470ff 44%, #ff67c0 100%) !important;
  opacity:.92 !important;
  box-shadow:0 0 10px rgba(115,194,255,.24) !important;
  transform-origin:center bottom !important;
}
body:not(.admin-page) .playlist-player .player-progress{
  grid-area:progress !important;
  width:100% !important;
  margin:0 !important;
  accent-color:#ff78c8 !important;
}
body:not(.admin-page) .playlist-player .player-volume-wrap{
  grid-area:volume !important;
  align-self:center !important;
  justify-self:end !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  gap:10px !important;
}
body:not(.admin-page) .playlist-player .player-volume{
  width:44px !important;
  height:44px !important;
  border-radius:50% !important;
  border:1px solid rgba(255,255,255,.12) !important;
  background:rgba(255,255,255,.08) !important;
  color:#fff !important;
  font-size:18px !important;
}
body:not(.admin-page) .playlist-player .player-volume-range{
  writing-mode:bt-lr;
  -webkit-appearance:slider-vertical;
  width:18px !important;
  height:84px !important;
}
body:not(.admin-page) .playlist-list{
  margin-top:22px !important;
  border-radius:24px !important;
}
body:not(.admin-page) .playlist-list:before{
  padding:18px 18px 12px !important;
  font-size:21px !important;
  font-weight:900 !important;
}
body:not(.admin-page) .playlist-row{
  min-height:78px !important;
  padding:14px 18px !important;
  grid-template-columns:42px minmax(0,1fr) auto 36px !important;
}
body:not(.admin-page) .playlist-row.is-active{
  background:linear-gradient(90deg, rgba(255,93,191,.20), rgba(102,164,255,.10)) !important;
  box-shadow:inset 4px 0 #ff6ac4 !important;
}
body:not(.admin-page) .playlist-row-copy strong{font-size:17px !important;color:#fff !important}
body:not(.admin-page) .playlist-row-copy small{font-size:12px !important;color:#c2cde4 !important}
body:not(.admin-page) .playlist-row-play{
  width:34px !important;
  height:34px !important;
  border-radius:50% !important;
  background:rgba(255,255,255,.05) !important;
  border:1px solid rgba(234,239,255,.56) !important;
}
body:not(.admin-page) .playlist-row.is-active .playlist-row-play{
  border-color:#ff7fca !important;
  color:#ffafda !important;
  box-shadow:0 0 18px rgba(255,105,198,.16) !important;
}

/* Player mobile */
@media (max-width:700px){
  body:not(.admin-page) .playlist-cover.track-cover{height:246px !important;margin:-18px -18px 18px !important}
  body:not(.admin-page) .playlist-player{
    grid-template-columns:70px minmax(0,1fr) 40px !important;
    gap:8px 10px !important;
    padding:16px 12px !important;
    min-height:118px !important;
  }
  body:not(.admin-page) .playlist-player .player-play{width:70px !important;height:70px !important;font-size:28px !important}
  body:not(.admin-page) .playlist-player .player-wave{height:36px !important;gap:4px !important}
  body:not(.admin-page) .playlist-player .player-wave i{width:4px !important}
  body:not(.admin-page) .playlist-player .player-volume{width:38px !important;height:38px !important}
  body:not(.admin-page) .playlist-player .player-volume-range{height:70px !important}
  body:not(.admin-page) .playlist-row{min-height:70px !important;padding:12px 12px !important;grid-template-columns:34px minmax(0,1fr) auto 30px !important}
}

/* ==========================================================
   PASS 9 — Pages publiques internes réellement intégrées à la refonte
   Base: PASS 7 (header compact) + corrections ciblées de cohérence
   ========================================================== */

/* Header interne : compact, premium, cohérent, sans ancien hero géant */
body.cmc-inner-page .cmc-inner-header{
  position:sticky !important;
  top:0 !important;
  z-index:80 !important;
  padding:10px 0 !important;
  background:rgba(6,12,31,.82) !important;
  backdrop-filter:blur(20px) saturate(145%) !important;
  -webkit-backdrop-filter:blur(20px) saturate(145%) !important;
  border-bottom:1px solid rgba(177,151,255,.14) !important;
  box-shadow:0 12px 36px rgba(0,0,0,.18) !important;
}
body.cmc-inner-page .cmc-inner-header-shell{
  width:min(1180px,calc(100% - 36px)) !important;
  min-height:72px !important;
}
body.cmc-inner-page .cmc-inner-brand{width:168px !important}
body.cmc-inner-page .cmc-inner-brand img{max-height:62px !important}
body.cmc-inner-page .cmc-inner-nav{gap:2px !important}
body.cmc-inner-page .cmc-inner-nav a{
  padding:9px 12px !important;
  color:#f1f4ff !important;
  font-size:13px !important;
  font-weight:800 !important;
  border:1px solid transparent;
}
body.cmc-inner-page .cmc-inner-nav a:hover{
  background:rgba(255,255,255,.055) !important;
  border-color:rgba(255,255,255,.07) !important;
}
body.cmc-inner-page .cmc-inner-nav .cmc-inner-account{
  background:linear-gradient(135deg,#6c3dc6 0%,#b43e9e 58%,#c64e73 100%) !important;
  box-shadow:0 8px 24px rgba(101,46,160,.28) !important;
}

/* Base des pages internes */
body.cmc-inner-page main{
  position:relative !important;
  z-index:1 !important;
  width:100% !important;
  min-height:calc(100vh - 90px) !important;
  padding:0 !important;
  background:transparent !important;
}
body.cmc-inner-page main > .section,
body.cmc-inner-page main > .pricing-page,
body.cmc-inner-page main > .faq-page,
body.cmc-inner-page main > .realisations-page{
  padding:72px 18px 74px !important;
}
body.cmc-inner-page .page-heading,
body.cmc-inner-page .faq-hero{
  width:min(900px,100%) !important;
  margin:0 auto 34px !important;
  text-align:center !important;
}
body.cmc-inner-page .page-heading .eyebrow,
body.cmc-inner-page .faq-hero .eyebrow{
  display:inline-block !important;
  color:#ff8fd1 !important;
  font-size:12px !important;
  font-weight:900 !important;
  letter-spacing:.14em !important;
  margin-bottom:12px !important;
}
body.cmc-inner-page .page-heading h1,
body.cmc-inner-page .faq-hero h1{
  margin:0 0 14px !important;
  font-size:clamp(36px,5vw,62px) !important;
  line-height:1.02 !important;
  letter-spacing:-.035em !important;
  color:#fff !important;
  text-shadow:0 8px 30px rgba(0,0,0,.18) !important;
}
body.cmc-inner-page .page-heading p,
body.cmc-inner-page .faq-hero p{
  max-width:760px !important;
  margin:0 auto !important;
  color:#cbd4e8 !important;
  font-size:17px !important;
  line-height:1.65 !important;
}

/* Méthode : vraie composition de cartes cohérente */
body.cmc-page-comment-creons-nous-votre-chanson .formula-guide{
  width:min(1080px,100%) !important;
  margin:30px auto 0 !important;
}
body.cmc-page-comment-creons-nous-votre-chanson .formula-guide > h2{
  text-align:center !important;
  margin:0 0 22px !important;
  font-size:28px !important;
}
body.cmc-page-comment-creons-nous-votre-chanson .formula-guide-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:18px !important;
}
body.cmc-page-comment-creons-nous-votre-chanson .formula-guide-grid > *{
  min-height:220px !important;
  padding:24px !important;
  border-radius:24px !important;
  background:linear-gradient(180deg,rgba(13,24,61,.52),rgba(15,21,56,.42)) !important;
  border:1px solid rgba(188,174,255,.20) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 18px 44px rgba(5,8,24,.22) !important;
  backdrop-filter:blur(24px) saturate(165%) !important;
  -webkit-backdrop-filter:blur(24px) saturate(165%) !important;
}
body.cmc-page-comment-creons-nous-votre-chanson .formula-guide-grid > * strong,
body.cmc-page-comment-creons-nous-votre-chanson .formula-guide-grid > * h3{color:#fff !important}
body.cmc-page-comment-creons-nous-votre-chanson .formula-guide-grid > * p{line-height:1.6 !important}
body.cmc-page-comment-creons-nous-votre-chanson .delivery-note{
  width:min(900px,100%) !important;
  margin:22px auto 36px !important;
  padding:18px 22px !important;
  border-radius:18px !important;
  text-align:center !important;
  background:rgba(12,19,50,.58) !important;
  border:1px solid rgba(166,147,255,.18) !important;
  backdrop-filter:blur(20px) !important;
}
body.cmc-page-comment-creons-nous-votre-chanson .final-cta{
  width:min(920px,100%) !important;
  margin:44px auto 0 !important;
  padding:34px 26px !important;
  border-radius:28px !important;
  background:linear-gradient(180deg,rgba(12,21,57,.50),rgba(14,21,56,.42)) !important;
  border:1px solid rgba(190,179,255,.18) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 20px 48px rgba(4,7,24,.24) !important;
  backdrop-filter:blur(24px) saturate(160%) !important;
}
body.cmc-page-comment-creons-nous-votre-chanson .final-cta .cta{margin:10px 7px 0 !important}

/* Tarifs : plus de vieux blocs plats */
body.cmc-page-tarifs .pricing-page{width:min(1180px,100%) !important;margin:auto !important}
body.cmc-page-tarifs .pricing-cards{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:20px !important;
  align-items:stretch !important;
  width:min(1080px,100%) !important;
  margin:0 auto 24px !important;
}
body.cmc-page-tarifs .price-card{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  min-height:320px !important;
  padding:30px 24px 24px !important;
  border-radius:28px !important;
  text-align:center !important;
}
body.cmc-page-tarifs .price-card.featured{
  transform:translateY(-8px) !important;
  border-color:rgba(255,114,199,.34) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 26px 58px rgba(54,29,107,.32),0 0 34px rgba(204,88,217,.10) !important;
}
body.cmc-page-tarifs .price-card > span{
  color:#ff9cd4 !important;
  font-size:12px !important;
  font-weight:900 !important;
  letter-spacing:.12em !important;
}
body.cmc-page-tarifs .price-card > strong{
  display:block !important;
  margin:14px 0 12px !important;
  color:#fff !important;
  font-size:54px !important;
  line-height:1 !important;
}
body.cmc-page-tarifs .price-card p{min-height:72px !important;line-height:1.55 !important}
body.cmc-page-tarifs .price-card .btn{margin-top:auto !important;width:100% !important;max-width:250px !important}
body.cmc-page-tarifs .delivery-note{width:min(850px,100%) !important;margin:20px auto 30px !important}
body.cmc-page-tarifs .retractation-offer-panel{
  width:min(960px,100%) !important;
  margin:0 auto 38px !important;
  padding:22px 24px !important;
  border-radius:22px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:24px !important;
}
body.cmc-page-tarifs .retractation-cta{
  flex:0 0 auto !important;
  padding:12px 18px !important;
  border-radius:999px !important;
  color:#fff !important;
  text-decoration:none !important;
  font-weight:800 !important;
  background:linear-gradient(135deg,#6c3dc6,#bb438f 58%,#cf5a70) !important;
  box-shadow:0 10px 24px rgba(94,42,157,.28) !important;
}
body.cmc-page-tarifs .formula-benefits{width:min(1080px,100%) !important;margin:36px auto 0 !important}

/* Avis : cartes plus riches, respiration correcte */
body.cmc-page-avis-clients .public-reviews-page .home-shell{width:min(1080px,calc(100% - 36px)) !important}
body.cmc-page-avis-clients .all-reviews-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:18px !important;
  margin-top:26px !important;
}
body.cmc-page-avis-clients .review-card{
  min-height:180px !important;
  padding:24px !important;
  border-radius:24px !important;
}
body.cmc-page-avis-clients .review-card .stars{
  color:#ffd35a !important;
  font-size:22px !important;
  letter-spacing:.05em !important;
  margin-bottom:14px !important;
}
body.cmc-page-avis-clients .review-card blockquote{
  margin:0 0 18px !important;
  color:#f5f7ff !important;
  font-size:16px !important;
  line-height:1.65 !important;
}
body.cmc-page-avis-clients .public-reviews-cta{text-align:center !important;margin-top:30px !important}

/* Connexion / formulaires : pas de vieux panneau perdu au milieu */
body.cmc-page-login main,
body.cmc-page-register main,
body.cmc-page-mot-de-passe-oublie main,
body.cmc-page-reinitialiser-mot-de-passe main,
body.cmc-page-contact main{
  padding:72px 18px 80px !important;
}
body.cmc-page-login .login,
body.cmc-page-register .login,
body.cmc-page-mot-de-passe-oublie .login,
body.cmc-page-reinitialiser-mot-de-passe .login,
body.cmc-page-contact .form-wrap{
  width:min(620px,100%) !important;
  margin:0 auto !important;
}
body.cmc-page-login .login.panel,
body.cmc-page-contact .form-wrap > .panel,
body.cmc-page-register .panel,
body.cmc-page-mot-de-passe-oublie .panel,
body.cmc-page-reinitialiser-mot-de-passe .panel{
  padding:30px !important;
  border-radius:28px !important;
}
body.cmc-page-login .login h1,
body.cmc-page-contact h1,
body.cmc-page-register h1,
body.cmc-page-mot-de-passe-oublie h1,
body.cmc-page-reinitialiser-mot-de-passe h1{
  margin:0 0 24px !important;
  font-size:38px !important;
  letter-spacing:-.03em !important;
}
body.cmc-inner-page .field{margin-bottom:18px !important}
body.cmc-inner-page .field label{display:block !important;margin-bottom:8px !important;color:#eef2ff !important;font-weight:800 !important}
body.cmc-inner-page .field input,
body.cmc-inner-page .field select,
body.cmc-inner-page .field textarea{
  width:100% !important;
  border:1px solid rgba(164,178,222,.22) !important;
  border-radius:14px !important;
  background:rgba(238,245,255,.96) !important;
  color:#111a31 !important;
  box-shadow:inset 0 1px 2px rgba(3,9,24,.06) !important;
}
body.cmc-inner-page .field input:focus,
body.cmc-inner-page .field select:focus,
body.cmc-inner-page .field textarea:focus{
  outline:none !important;
  border-color:#aa70ff !important;
  box-shadow:0 0 0 3px rgba(157,102,255,.15) !important;
}

/* FAQ */
body.cmc-page-faq .faq-page{width:min(1100px,100%) !important;margin:auto !important}
body.cmc-page-faq .faq-groups{display:grid !important;gap:24px !important}
body.cmc-page-faq .faq-group{
  padding:24px !important;
  border-radius:26px !important;
  background:linear-gradient(180deg,rgba(13,22,58,.48),rgba(14,21,56,.38)) !important;
  border:1px solid rgba(188,174,255,.18) !important;
  backdrop-filter:blur(22px) saturate(160%) !important;
}
body.cmc-page-faq .faq-group-title{display:flex !important;align-items:center !important;gap:14px !important;margin-bottom:18px !important}
body.cmc-page-faq .faq-group-icon{font-size:28px !important}
body.cmc-page-faq .faq-item{border-radius:16px !important;margin-top:10px !important}
body.cmc-page-faq .faq-contact{margin-top:28px !important;padding:30px !important;border-radius:26px !important;text-align:center !important}

/* Legal / autres panneaux publics : même finition */
body.cmc-inner-page .legal-page,
body.cmc-inner-page .form-wrap,
body.cmc-inner-page .account-wrap,
body.cmc-inner-page .order-wrap{
  width:min(1040px,calc(100% - 36px)) !important;
  margin:0 auto !important;
}
body.cmc-inner-page .legal-copy{padding:28px !important;border-radius:26px !important}

/* Footer toujours sans cassure nette */
body.cmc-inner-page .site-footer{margin-top:0 !important}

/* Courbe du menu accueil : les items suivent visuellement le dock */
.cmc-home-page .cmc-menu-item{--curve-y:0px;transform:translateY(var(--curve-y)) !important}
.cmc-home-page .cmc-menu-item:nth-child(1),
.cmc-home-page .cmc-menu-item:nth-child(6){--curve-y:7px}
.cmc-home-page .cmc-menu-item:nth-child(2),
.cmc-home-page .cmc-menu-item:nth-child(5){--curve-y:2px}
.cmc-home-page .cmc-menu-item:nth-child(3),
.cmc-home-page .cmc-menu-item:nth-child(4){--curve-y:-3px}
.cmc-home-page .cmc-menu-item:hover,
.cmc-home-page .cmc-menu-item:focus-visible{transform:translateY(calc(var(--curve-y) - 4px)) !important}

@media(max-width:900px){
  body.cmc-page-comment-creons-nous-votre-chanson .formula-guide-grid,
  body.cmc-page-tarifs .pricing-cards,
  body.cmc-page-avis-clients .all-reviews-grid{grid-template-columns:1fr !important}
  body.cmc-page-tarifs .price-card.featured{transform:none !important}
  body.cmc-page-tarifs .retractation-offer-panel{flex-direction:column !important;text-align:center !important}
}
@media(max-width:760px){
  body.cmc-inner-page main > .section,
  body.cmc-inner-page main > .pricing-page,
  body.cmc-inner-page main > .faq-page,
  body.cmc-inner-page main > .realisations-page{padding:46px 14px 56px !important}
  body.cmc-inner-page .page-heading h1,
  body.cmc-inner-page .faq-hero h1{font-size:clamp(32px,11vw,44px) !important}
  body.cmc-inner-page .cmc-inner-header-shell{min-height:64px !important}
  body.cmc-inner-page .cmc-inner-brand{width:142px !important}
  .cmc-home-page .cmc-menu-item:nth-child(1),.cmc-home-page .cmc-menu-item:nth-child(6){--curve-y:4px}
  .cmc-home-page .cmc-menu-item:nth-child(2),.cmc-home-page .cmc-menu-item:nth-child(5){--curve-y:1px}
  .cmc-home-page .cmc-menu-item:nth-child(3),.cmc-home-page .cmc-menu-item:nth-child(4){--curve-y:-1px}
}


/* source: public-final-2026.css */
/* =========================================================
   CRÉE MA CHANSON — PUBLIC FINAL 2026
   Rôle : verrouiller une seule identité publique cohérente.
   Pas d'ancien hero interne, pas de mélange de générations.
   ========================================================= */

:root{
  --cmc-final-bg-a:#4a2c74;
  --cmc-final-bg-b:#2f2f69;
  --cmc-final-bg-c:#203d70;
  --cmc-final-ink:#f7f8ff;
  --cmc-final-muted:#c4cae0;
  --cmc-final-glass:rgba(10,18,50,.50);
  --cmc-final-line:rgba(198,190,255,.20);
  --cmc-final-pink:#ff63c8;
  --cmc-final-violet:#9b74ff;
  --cmc-final-cyan:#62d8ff;
}

html{background:#10182f}
body:not(.admin-page){
  color:var(--cmc-final-ink) !important;
  background:
    radial-gradient(ellipse 54vw 34vh at 12% 38%,rgba(78,190,255,.24),transparent 68%),
    radial-gradient(ellipse 52vw 36vh at 88% 56%,rgba(255,91,201,.20),transparent 70%),
    linear-gradient(90deg,var(--cmc-final-bg-a) 0%,#473074 14%,#39336f 30%,var(--cmc-final-bg-c) 50%,#39336f 70%,#473074 86%,var(--cmc-final-bg-a) 100%) !important;
  background-attachment:fixed !important;
}

/* Une seule couche Aurora publique, lisible mais derrière les contenus. */
body:not(.admin-page)::before,
body:not(.admin-page)::after{
  content:"" !important;
  position:fixed !important;
  pointer-events:none !important;
  z-index:0 !important;
  width:74vw !important;
  height:62vh !important;
  filter:blur(92px) saturate(155%) !important;
  opacity:.62 !important;
  mix-blend-mode:screen !important;
}
body:not(.admin-page)::before{
  left:-18vw !important;
  top:8vh !important;
  background:radial-gradient(ellipse at center,rgba(69,207,255,.78) 0%,rgba(100,124,255,.50) 32%,rgba(178,90,255,.28) 55%,transparent 76%) !important;
  animation:cmcFinalAuroraA 20s ease-in-out infinite alternate !important;
}
body:not(.admin-page)::after{
  right:-18vw !important;
  top:40vh !important;
  background:radial-gradient(ellipse at center,rgba(255,83,194,.72) 0%,rgba(179,103,255,.44) 34%,rgba(81,180,255,.28) 56%,transparent 78%) !important;
  animation:cmcFinalAuroraB 19s ease-in-out infinite alternate !important;
}
@keyframes cmcFinalAuroraA{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(9vw,7vh,0) scale(1.13,1.08)}}
@keyframes cmcFinalAuroraB{from{transform:translate3d(0,0,0) scale(1.02)}to{transform:translate3d(-9vw,-7vh,0) scale(1.12,1.08)}}

body:not(.admin-page) > *,
body:not(.admin-page) main,
body:not(.admin-page) .site-footer,
body:not(.admin-page) .home-newsletter{position:relative;z-index:1}

/* Ancien hero des pages internes : définitivement neutralisé. */
body.cmc-inner-page .visual-header,
body.cmc-inner-page .poster,
body.cmc-inner-page .header-poster{display:none !important}

/* Header interne actuel : compact et unique. */
body.cmc-inner-page .cmc-inner-header{
  position:sticky !important;
  top:0 !important;
  z-index:90 !important;
  padding:10px 0 !important;
  background:rgba(7,13,34,.88) !important;
  border-bottom:1px solid rgba(164,147,255,.14) !important;
  box-shadow:0 14px 34px rgba(2,5,20,.18) !important;
  backdrop-filter:blur(18px) saturate(145%) !important;
  -webkit-backdrop-filter:blur(18px) saturate(145%) !important;
}
body.cmc-inner-page .cmc-inner-header-shell{width:min(1120px,calc(100% - 34px)) !important}
body.cmc-inner-page .cmc-inner-brand{width:155px !important}
body.cmc-inner-page .cmc-inner-brand img{max-height:62px !important}
body.cmc-inner-page .cmc-inner-nav{gap:2px !important}
body.cmc-inner-page .cmc-inner-nav a{
  padding:9px 11px !important;
  border-radius:999px !important;
  color:#f5f6ff !important;
  font-size:12px !important;
  font-weight:800 !important;
}
body.cmc-inner-page .cmc-inner-nav a:hover{background:rgba(255,255,255,.07) !important}
body.cmc-inner-page .cmc-inner-nav .cmc-inner-account{
  background:linear-gradient(135deg,#7843d6,#c94d95) !important;
  box-shadow:0 8px 22px rgba(116,49,181,.24) !important;
}

/* Accueil : alignement réel sur les séparateurs et la courbe du dock intégré à l'image. */
.cmc-home-page .cmc-hero-nav{
  left:13.2% !important;
  right:13.2% !important;
  bottom:3.9% !important;
  height:13.2% !important;
  display:grid !important;
  grid-template-columns:1.21fr .98fr 1fr 1fr 1.02fr 1.29fr !important;
  align-items:center !important;
}
.cmc-home-page .cmc-menu-item{
  --curve-y:0px;
  min-width:0 !important;
  transform:translateY(var(--curve-y)) !important;
  transition:transform .22s ease,filter .22s ease !important;
}
.cmc-home-page .cmc-menu-item:nth-child(1){--curve-y:8px}
.cmc-home-page .cmc-menu-item:nth-child(2){--curve-y:-12px}
.cmc-home-page .cmc-menu-item:nth-child(3){--curve-y:-20px}
.cmc-home-page .cmc-menu-item:nth-child(4){--curve-y:-14px}
.cmc-home-page .cmc-menu-item:nth-child(5){--curve-y:-2px}
.cmc-home-page .cmc-menu-item:nth-child(6){--curve-y:10px}
.cmc-home-page .cmc-menu-item:hover,
.cmc-home-page .cmc-menu-item:focus-visible{transform:translateY(calc(var(--curve-y) - 3px)) !important}

/* Blocs publics : même matière partout. */
body:not(.admin-page) :is(.panel,.card,.price-card,.formula-card,.review-card,.faq-item,.home-price-card,.realisations-teaser,.playlist-hero,.playlist-list,.billing-profile-card,.contact-card,.account-card,.order-card,.legal-copy,.delivery-note,.retractation-offer-panel,.faq-contact,.reviews-empty,.login,.form-wrap > .panel){
  background:linear-gradient(180deg,rgba(10,18,50,.58),rgba(12,18,48,.44)) !important;
  border:1px solid var(--cmc-final-line) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 20px 48px rgba(4,7,25,.24) !important;
  backdrop-filter:blur(24px) saturate(165%) !important;
  -webkit-backdrop-filter:blur(24px) saturate(165%) !important;
}

/* Titres / textes */
body:not(.admin-page) h1,
body:not(.admin-page) h2,
body:not(.admin-page) h3{color:#fff !important}
body:not(.admin-page) :is(p,li,.muted,.realisations-intro){color:var(--cmc-final-muted) !important}
body:not(.admin-page) .eyebrow{color:#ff91d6 !important;font-weight:900 !important;letter-spacing:.12em !important}

/* Boutons publics plus sombres, nets. */
body:not(.admin-page) :is(.btn,.cta,.price-btn,.teaser-btn,button[type="submit"]){
  background:linear-gradient(135deg,#6d3ec9 0%,#a33d9b 52%,#c64c76 100%) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.12) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 10px 26px rgba(74,27,126,.26) !important;
}
body:not(.admin-page) :is(.btn,.cta,.price-btn,.teaser-btn,button[type="submit"]):hover{
  filter:brightness(1.08) !important;
  transform:translateY(-2px) !important;
}

/* Pages internes : pas de vieille mise en page plein écran. */
body.cmc-inner-page main{padding:0 !important;background:transparent !important}
body.cmc-inner-page main > :is(.section,.pricing-page,.realisations-page,.faq-page,.retractation-page,.container,.form-wrap,.login){
  width:min(1120px,calc(100% - 36px)) !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
body.cmc-inner-page main > :is(.section,.pricing-page,.realisations-page,.faq-page,.retractation-page){padding-top:56px !important;padding-bottom:64px !important}
body.cmc-inner-page .page-heading,
body.cmc-inner-page .faq-hero{text-align:center !important;max-width:900px !important;margin:0 auto 34px !important}
body.cmc-inner-page .page-heading h1,
body.cmc-inner-page .faq-hero h1,
body.cmc-inner-page .realisations-page h1{font-size:clamp(36px,5vw,60px) !important;line-height:1.02 !important}

/* Connexion / compte / contact */
body.cmc-page-login .login,
body.cmc-page-register .login,
body.cmc-page-mot-de-passe-oublie .login,
body.cmc-page-reinitialiser-mot-de-passe .login,
body.cmc-page-contact .form-wrap{
  max-width:620px !important;
  margin-top:64px !important;
  margin-bottom:70px !important;
}
body.cmc-page-login .login,
body.cmc-page-register .login,
body.cmc-page-mot-de-passe-oublie .login,
body.cmc-page-reinitialiser-mot-de-passe .login{padding:30px !important;border-radius:28px !important}
body:not(.admin-page) input,
body:not(.admin-page) textarea,
body:not(.admin-page) select{
  background:rgba(235,241,255,.94) !important;
  color:#14192c !important;
  border:1px solid rgba(255,255,255,.35) !important;
  border-radius:13px !important;
}

/* Tarifs / méthode / avis */
body.cmc-page-tarifs .pricing-cards,
body.cmc-page-comment-creons-nous-votre-chanson .formula-guide-grid,
body.cmc-page-avis-clients .all-reviews-grid{gap:20px !important}
body.cmc-page-tarifs .price-card,
body.cmc-page-comment-creons-nous-votre-chanson .formula-card,
body.cmc-page-avis-clients .review-card{border-radius:26px !important}

/* Footer raccordé au même fond, sans bande cassée. */
body:not(.admin-page) .site-footer{background:linear-gradient(180deg,rgba(8,16,42,0),rgba(8,16,42,.28)) !important;border:0 !important}

@media(max-width:900px){
  body.cmc-inner-page .cmc-inner-brand{width:135px !important}
  .cmc-home-page .cmc-hero-nav{
    left:4% !important;
    right:4% !important;
    bottom:2.4% !important;
    height:18.8% !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    grid-template-rows:repeat(2,minmax(0,1fr)) !important;
    gap:0 2px !important;
  }
  .cmc-home-page .cmc-menu-item:nth-child(n){--curve-y:0px}
  body.cmc-page-tarifs .pricing-cards,
  body.cmc-page-comment-creons-nous-votre-chanson .formula-guide-grid,
  body.cmc-page-avis-clients .all-reviews-grid{grid-template-columns:1fr !important}
}

@media(max-width:700px){
  body.cmc-inner-page main > :is(.section,.pricing-page,.realisations-page,.faq-page,.retractation-page){padding-top:38px !important;padding-bottom:48px !important}
  body.cmc-inner-page .page-heading h1,
  body.cmc-inner-page .faq-hero h1,
  body.cmc-inner-page .realisations-page h1{font-size:clamp(32px,10vw,46px) !important}
}

/* =========================================================
   CMC UNIFIED PUBLIC PASS - 2026-10-10
   Header public coherent, Aurora visible, dock precisely aligned.
   ========================================================= */
body:not(.admin-page){
  background:
    linear-gradient(90deg,#241337 0%,#25183f 18%,#111b3a 50%,#25183f 82%,#241337 100%) !important;
}
body:not(.admin-page)::before,
body:not(.admin-page)::after{
  z-index:0 !important;
  width:88vw !important;
  height:68vh !important;
  filter:blur(74px) saturate(165%) !important;
  opacity:.82 !important;
  mix-blend-mode:screen !important;
}
body:not(.admin-page)::before{
  left:-26vw !important;
  top:6vh !important;
  background:radial-gradient(ellipse at center,rgba(62,220,255,.86) 0%,rgba(102,104,255,.56) 30%,rgba(210,74,255,.34) 52%,transparent 74%) !important;
  animation:cmcUnifiedAuroraA 17s ease-in-out infinite alternate !important;
}
body:not(.admin-page)::after{
  right:-26vw !important;
  top:38vh !important;
  background:radial-gradient(ellipse at center,rgba(255,70,190,.80) 0%,rgba(182,85,255,.52) 32%,rgba(76,189,255,.34) 56%,transparent 76%) !important;
  animation:cmcUnifiedAuroraB 18s ease-in-out infinite alternate !important;
}
body:not(.admin-page) main::before{content:none !important;display:none !important}
@keyframes cmcUnifiedAuroraA{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(12vw,8vh,0) scale(1.15,1.10)}}
@keyframes cmcUnifiedAuroraB{from{transform:translate3d(0,0,0) scale(1.02)}to{transform:translate3d(-12vw,-8vh,0) scale(1.14,1.09)}}

/* Home: six centers follow the dock drawn in the image. */
.cmc-home-page .cmc-hero-nav{
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  display:block !important;
  pointer-events:none !important;
}
.cmc-home-page .cmc-menu-item{
  position:absolute !important;
  width:12.2% !important;
  height:13.2% !important;
  pointer-events:auto !important;
  transform:translate(-50%,-50%) !important;
  transition:transform .22s ease,filter .22s ease !important;
}
.cmc-home-page .cmc-menu-item:nth-child(1){left:19.95% !important;top:91.1% !important}
.cmc-home-page .cmc-menu-item:nth-child(2){left:32.40% !important;top:89.0% !important}
.cmc-home-page .cmc-menu-item:nth-child(3){left:43.95% !important;top:88.3% !important}
.cmc-home-page .cmc-menu-item:nth-child(4){left:56.05% !important;top:88.3% !important}
.cmc-home-page .cmc-menu-item:nth-child(5){left:68.00% !important;top:89.0% !important}
.cmc-home-page .cmc-menu-item:nth-child(6){left:79.55% !important;top:91.1% !important}
.cmc-home-page .cmc-menu-item:hover,
.cmc-home-page .cmc-menu-item:focus-visible{transform:translate(-50%,calc(-50% - 4px)) !important}

/* Inner public pages: compact version of the same design language. */
body.cmc-inner-page .cmc-inner-header{
  position:sticky !important;
  top:0 !important;
  z-index:100 !important;
  padding:9px 0 !important;
  background:linear-gradient(180deg,rgba(8,14,39,.94),rgba(10,16,45,.88)) !important;
  border-bottom:1px solid rgba(124,195,255,.20) !important;
  box-shadow:0 14px 38px rgba(2,5,22,.30),0 0 30px rgba(164,72,255,.08) !important;
  backdrop-filter:blur(20px) saturate(155%) !important;
}
body.cmc-inner-page .cmc-inner-header::after{
  content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;pointer-events:none;
  background:linear-gradient(90deg,transparent,#ff58cc 18%,#9a70ff 50%,#5ad8ff 82%,transparent);
  opacity:.72;
}
body.cmc-inner-page .cmc-inner-header-shell{
  width:min(1240px,calc(100% - 32px)) !important;
  display:flex !important;align-items:center !important;gap:24px !important;
}
body.cmc-inner-page .cmc-inner-brand{width:160px !important;flex:0 0 auto !important}
body.cmc-inner-page .cmc-inner-nav{
  margin-left:auto !important;
  display:grid !important;
  grid-template-columns:repeat(6,minmax(78px,1fr)) !important;
  gap:6px !important;
  align-items:center !important;
}
body.cmc-inner-page .cmc-inner-nav-item{
  min-width:0 !important;
  min-height:68px !important;
  padding:5px 7px !important;
  border-radius:18px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:4px !important;
  color:#f7f8ff !important;
  font-size:11px !important;
  font-weight:800 !important;
  text-align:center !important;
  background:rgba(255,255,255,.025) !important;
  border:1px solid transparent !important;
}
body.cmc-inner-page .cmc-inner-nav-item .cmc-menu-icon{
  width:30px !important;height:30px !important;font-size:16px !important;
}
body.cmc-inner-page .cmc-inner-nav-item:hover,
body.cmc-inner-page .cmc-inner-nav-item:focus-visible{
  background:rgba(255,255,255,.055) !important;
  border-color:rgba(174,153,255,.16) !important;
  transform:translateY(-2px) !important;
}
body.cmc-inner-page .cmc-inner-nav .cmc-inner-account{
  background:linear-gradient(145deg,rgba(116,61,205,.20),rgba(207,62,145,.16)) !important;
  box-shadow:none !important;
}

/* Player reference: stable 16:9 cover. */
body.cmc-page-realisations .playlist-cover.track-cover{
  height:auto !important;
  aspect-ratio:16/9 !important;
}
body.cmc-page-realisations .playlist-cover.track-cover img{
  width:100% !important;height:100% !important;object-fit:cover !important;object-position:center !important;
}

@media(max-width:900px){
  body.cmc-inner-page .cmc-inner-nav{
    display:none !important;
    position:absolute !important;
    left:12px !important;right:12px !important;top:78px !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    padding:12px !important;
    background:rgba(7,13,35,.97) !important;
    border:1px solid rgba(160,145,255,.22) !important;
    border-radius:20px !important;
    box-shadow:0 22px 50px rgba(0,0,0,.42) !important;
  }
  body.cmc-inner-page .cmc-inner-nav.is-open{display:grid !important}
  body.cmc-inner-page .cmc-inner-toggle{display:block !important}
}
@media(max-width:760px){
  .cmc-home-page .cmc-hero-art{
    width:160% !important;max-width:none !important;transform:none !important;margin-left:-30% !important;
  }
  .cmc-home-page .cmc-hero-nav{
    width:160% !important;left:-30% !important;right:auto !important;
  }
}
@media(max-width:480px){
  .cmc-home-page .cmc-hero-art{width:182% !important;margin-left:-41% !important}
  .cmc-home-page .cmc-hero-nav{width:182% !important;left:-41% !important}
}
/* =========================================================
   CMC MOBILE FINAL LOCK — neutralise les anciens recadrages.
   ========================================================= */
@media(max-width:760px){
  html,body{max-width:100%;overflow-x:hidden!important}
  .cmc-home-page .cmc-hero-home{width:100%!important;overflow:hidden!important}
  .cmc-home-page .cmc-hero-art{
    width:100%!important;max-width:100%!important;height:auto!important;
    margin:0!important;transform:none!important;object-fit:contain!important;object-position:center top!important;
  }
  .cmc-home-page .cmc-hero-nav{
    width:100%!important;height:100%!important;left:0!important;right:0!important;top:0!important;bottom:auto!important;
  }
  .cmc-home-page .cmc-menu-item{width:14.2%!important;height:14.5%!important;font-size:7.5px!important;gap:1px!important}
  .cmc-home-page .cmc-menu-icon{width:21px!important;height:21px!important;font-size:11px!important}

  .cmc-home-page main,.cmc-home-page main>section,.cmc-home-page .home-shell{
    max-width:100%!important;min-width:0!important;overflow-x:clip!important;
  }
  #occasions.moments{padding:38px 0 52px!important}
  #occasions .home-shell{width:calc(100% - 24px)!important;padding:0!important;margin-inline:auto!important}
  #occasions .script-title{
    width:100%!important;max-width:100%!important;margin-inline:auto!important;
    font-size:clamp(29px,9vw,38px)!important;line-height:1.05!important;
    white-space:normal!important;overflow-wrap:normal!important;word-break:normal!important;text-align:center!important;
  }
  #occasions .script-title span{display:block!important;max-width:100%!important}
  #occasions .section-lead{width:100%!important;max-width:100%!important;padding-inline:4px!important;font-size:15px!important}
  #occasions .occasion-grid{
    width:100%!important;max-width:100%!important;display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;
    margin-inline:auto!important;padding:0!important;overflow:visible!important;
  }
  #occasions .occasion-grid .occasion,
  #occasions .occasion-grid .occasion:last-child{
    min-width:0!important;width:100%!important;max-width:100%!important;grid-column:auto!important;justify-self:stretch!important;
  }
  #occasions .occasion-grid .occasion:last-child{grid-column:1/-1!important;width:calc((100% - 12px)/2)!important;justify-self:center!important}
  #occasions .occasion-new-cover .occasion-media{aspect-ratio:16/9!important;height:auto!important}
  #occasions .occasion-new-cover .occasion-media img{width:100%!important;height:100%!important;object-fit:cover!important}
  #occasions .occasion-new-cover .occasion-copy{min-width:0!important}

  .cmc-home-page .realisations-teaser,
  .cmc-home-page .home-price-card,
  .cmc-home-page .review-card,
  .cmc-home-page .final-cta .home-shell{max-width:100%!important;min-width:0!important}
  .cmc-home-page .script-title{white-space:normal!important;overflow-wrap:normal!important}
}
@media(max-width:420px){
  #occasions .occasion-grid{grid-template-columns:1fr!important}
  #occasions .occasion-grid .occasion:last-child{grid-column:auto!important;width:100%!important}
  .cmc-home-page .cmc-menu-item{font-size:6.5px!important}
  .cmc-home-page .cmc-menu-icon{width:18px!important;height:18px!important;font-size:10px!important}
}
@media(max-width:760px){#occasions .script-title span,#occasions .wow-title-white,#occasions .wow-title-pink{white-space:normal!important;width:100%!important;max-width:100%!important;overflow:visible!important}}
/* CMC MOBILE TITLE EXACT FIT */
@media(max-width:420px){
  #occasions .script-title{font-size:29px!important;line-height:1.08!important}
  #occasions .script-title .wow-title-white,
  #occasions .script-title .wow-title-pink{display:block!important;width:100%!important;max-width:100%!important;white-space:nowrap!important;font-size:inherit!important;overflow:visible!important}
}


/* Restore the validated visual header on inner public pages.
   The compact navigation remains the only menu; the legacy visual nav is not restored. */
body.cmc-inner-page .visual-header.cmc-inner-visual{display:block !important}


/* INNER HERO 2026 - compact crop of current refonte hero */
body.cmc-inner-page .cmc-inner-visual{
  display:block!important;position:relative!important;
  width:100%!important;max-width:none!important;height:clamp(320px,30vw,500px)!important;
  aspect-ratio:auto!important;margin:0!important;overflow:hidden!important;
  background:#061127!important;border:0!important;box-shadow:none!important;
}
body.cmc-inner-page .cmc-inner-visual .visual-header-art{
  display:block!important;position:absolute!important;inset:0!important;
  width:100%!important;height:100%!important;max-width:none!important;
  object-fit:cover!important;object-position:center top!important;
  -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 91%,transparent 100%)!important;
  mask-image:linear-gradient(to bottom,#000 0%,#000 91%,transparent 100%)!important;
}
@media(max-width:760px){
  body.cmc-inner-page .cmc-inner-visual{height:clamp(190px,52vw,270px)!important}
  body.cmc-inner-page .cmc-inner-visual .visual-header-art{object-position:center top!important}
}


/* INNER NAV COMPACT 2026 */
body.cmc-inner-page .cmc-inner-header{padding:4px 0!important}
body.cmc-inner-page .cmc-inner-header-shell{min-height:58px!important;gap:16px!important}
body.cmc-inner-page .cmc-inner-brand{width:136px!important}
body.cmc-inner-page .cmc-inner-brand img{max-height:48px!important}
body.cmc-inner-page .cmc-inner-nav{gap:4px!important}
body.cmc-inner-page .cmc-inner-nav-item{min-height:52px!important;padding:3px 6px!important;border-radius:15px!important}
body.cmc-inner-page .cmc-inner-nav-item .cmc-menu-icon{width:27px!important;height:27px!important;font-size:15px!important}
body.cmc-inner-page .cmc-inner-nav-item>span:last-child{font-size:10px!important;line-height:1.05!important}
@media(max-width:760px){body.cmc-inner-page .cmc-inner-header{padding:3px 0!important}body.cmc-inner-page .cmc-inner-header-shell{min-height:56px!important}body.cmc-inner-page .cmc-inner-brand{width:124px!important}}

/* INNER HEADER 2026 — menu overlay, no separate top band */
body.cmc-inner-page .cmc-inner-header{
  position:absolute!important;top:0!important;left:0!important;right:0!important;
  z-index:120!important;padding:0!important;margin:0!important;
  background:transparent!important;border:0!important;box-shadow:none!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  pointer-events:none!important;
}
body.cmc-inner-page .cmc-inner-header::after{display:none!important}
body.cmc-inner-page .cmc-inner-header-shell{
  width:min(1240px,calc(100% - 28px))!important;min-height:0!important;
  padding-top:10px!important;display:flex!important;justify-content:flex-end!important;
  pointer-events:none!important;
}
body.cmc-inner-page .cmc-inner-brand{display:none!important}
body.cmc-inner-page .cmc-inner-nav,
body.cmc-inner-page .cmc-inner-toggle{pointer-events:auto!important}
@media(max-width:760px){
  body.cmc-inner-page .cmc-inner-header-shell{padding-top:8px!important}
}


/* UNIFIED PUBLIC HEADER — same component as index on every non-admin page */
body.cmc-inner-page .cmc-hero-home{width:100%!important;position:relative!important;margin:0!important;padding:0!important;line-height:0!important;overflow:hidden!important;background:#071127!important}
body.cmc-inner-page .cmc-hero-art{display:block!important;width:100%!important;height:auto!important;max-width:none!important;margin:0!important;transform:none!important;object-fit:cover!important;object-position:center top!important}
body.cmc-inner-page .cmc-hero-nav{inset:0!important;width:100%!important;height:100%!important;display:block!important;pointer-events:none!important}
body.cmc-inner-page .cmc-menu-item{position:absolute!important;width:12.2%!important;height:13.2%!important;pointer-events:auto!important;transform:translate(-50%,-50%)!important;transition:transform .22s ease,filter .22s ease!important}
body.cmc-inner-page .cmc-menu-item:nth-child(1){left:19.95%!important;top:91.1%!important}
body.cmc-inner-page .cmc-menu-item:nth-child(2){left:32.40%!important;top:89.0%!important}
body.cmc-inner-page .cmc-menu-item:nth-child(3){left:43.95%!important;top:88.3%!important}
body.cmc-inner-page .cmc-menu-item:nth-child(4){left:56.05%!important;top:88.3%!important}
body.cmc-inner-page .cmc-menu-item:nth-child(5){left:68.00%!important;top:89.0%!important}
body.cmc-inner-page .cmc-menu-item:nth-child(6){left:79.55%!important;top:91.1%!important}
body.cmc-inner-page .cmc-menu-item:hover,body.cmc-inner-page .cmc-menu-item:focus-visible{transform:translate(-50%,calc(-50% - 4px))!important}
@media(max-width:760px){
  body.cmc-inner-page .cmc-hero-home{width:100%!important;overflow:hidden!important}
  body.cmc-inner-page .cmc-hero-art{width:100%!important;max-width:100%!important;height:auto!important;margin:0!important;transform:none!important;object-fit:contain!important;object-position:center top!important}
  body.cmc-inner-page .cmc-hero-nav{width:100%!important;height:100%!important;left:0!important;right:0!important;top:0!important;bottom:auto!important}
  body.cmc-inner-page .cmc-menu-item{width:14.2%!important;height:14.5%!important;font-size:7.5px!important;gap:1px!important}
  body.cmc-inner-page .cmc-menu-icon{width:21px!important;height:21px!important;font-size:11px!important}
}
@media(max-width:420px){body.cmc-inner-page .cmc-menu-item{font-size:6.5px!important}body.cmc-inner-page .cmc-menu-icon{width:18px!important;height:18px!important;font-size:10px!important}}


/* PUBLIC CONTENT RETURN + HERO SEAM 2026-10-10 */
/* Les pages internes utilisent le meme hero que l'accueil : aucun fond opaque sous son fondu. */
body.cmc-inner-page .cmc-hero-home{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
body.cmc-inner-page .cmc-hero-art{
  -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 95%,rgba(0,0,0,.78) 98%,transparent 100%) !important;
  mask-image:linear-gradient(to bottom,#000 0%,#000 95%,rgba(0,0,0,.78) 98%,transparent 100%) !important;
}
body.cmc-inner-page main{background:transparent !important;border-top:0 !important;box-shadow:none !important}

/* Le lien est dans le contenu de chaque page publique, jamais dans le hero. */
body.cmc-inner-page .cmc-page-return-wrap{
  width:min(1120px,calc(100% - 36px));
  margin:18px auto 0;
  text-align:left;
  line-height:1.2;
}
body.cmc-inner-page .cmc-page-return{
  display:inline-block;
  padding:7px 2px;
  color:#d6dcf1;
  font-size:14px;
  font-weight:800;
  letter-spacing:.01em;
  text-decoration:none;
  transition:color .2s ease,text-shadow .2s ease,transform .2s ease;
}
body.cmc-inner-page .cmc-page-return:hover,
body.cmc-inner-page .cmc-page-return:focus-visible{
  color:#ff79d1;
  text-shadow:0 0 14px rgba(255,91,202,.42);
  transform:translateY(-1px);
  outline:none;
}
@media(max-width:760px){
  body.cmc-inner-page .cmc-page-return-wrap{width:calc(100% - 28px);margin-top:12px}
  body.cmc-inner-page .cmc-page-return{font-size:13px;padding:6px 0}
}


/* FINAL TARIFS + FOOTER POLISH 2026-10-10 */
body.cmc-page-tarifs .formula-benefits{margin-top:34px!important}
body.cmc-page-tarifs .formula-benefits>h2{text-align:center!important;margin:0 0 22px!important;font-size:clamp(30px,4vw,44px)!important}
body.cmc-page-tarifs .formula-guide-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important}
body.cmc-page-tarifs .formula-guide-grid>article{
  position:relative!important;overflow:hidden!important;padding:26px 22px 24px!important;border-radius:26px!important;
  background:linear-gradient(165deg,rgba(21,31,73,.76),rgba(10,16,48,.58))!important;
  border:1px solid rgba(183,170,255,.24)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 18px 42px rgba(3,6,24,.22)!important;
  backdrop-filter:blur(22px) saturate(155%)!important;
}
body.cmc-page-tarifs .formula-guide-grid>article::before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:3px;background:linear-gradient(90deg,#57dfff,#8c73ff,#ff65c8);opacity:.85}
body.cmc-page-tarifs .formula-guide-grid>article.featured{transform:translateY(-5px)!important;border-color:rgba(172,113,255,.45)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 24px 56px rgba(91,48,168,.20)!important}
body.cmc-page-tarifs .formula-guide-grid>article>span{display:block!important;color:#ff91d6!important;font-weight:900!important;letter-spacing:.08em!important;font-size:12px!important;margin-bottom:8px!important}
body.cmc-page-tarifs .formula-guide-grid>article h3{font-size:24px!important;margin:0 0 16px!important}
body.cmc-page-tarifs .benefit-list{gap:10px!important}
body.cmc-page-tarifs .benefit-list li{font-weight:650!important;color:#e8ecf8!important;padding-left:25px!important}
body.cmc-page-tarifs .benefit-list li::before{color:#79dcff!important;background:none!important;-webkit-background-clip:initial!important}
@media(max-width:900px){body.cmc-page-tarifs .formula-guide-grid{grid-template-columns:1fr!important}body.cmc-page-tarifs .formula-guide-grid>article.featured{transform:none!important}}

body:not(.admin-page) .site-footer .legal a,
body:not(.admin-page) .site-footer .footer-meta a{transition:color .2s ease,text-shadow .2s ease,transform .2s ease!important}
body:not(.admin-page) .site-footer .legal a:hover,
body:not(.admin-page) .site-footer .legal a:focus-visible,
body:not(.admin-page) .site-footer .footer-meta a:hover,
body:not(.admin-page) .site-footer .footer-meta a:focus-visible{
  color:#ff79d1!important;text-shadow:0 0 14px rgba(255,91,202,.42)!important;transform:translateY(-1px)!important;outline:none!important;
}
body:not(.admin-page) .footer-registry{display:grid!important;gap:3px!important;margin-top:8px!important}
body:not(.admin-page) .footer-registry span{display:block!important}
body:not(.admin-page) .footer-address{margin-top:4px!important;font-style:normal!important}


/* TARIFS DETAIL CARDS V2 — aérées, graphiques, détail à la demande */
body.cmc-page-tarifs .formula-benefits-v2{margin-top:52px!important}
body.cmc-page-tarifs .formula-benefits-head{max-width:760px;margin:0 auto 30px;text-align:center}
body.cmc-page-tarifs .formula-benefits-head h2{margin:6px 0 10px!important;font-size:clamp(34px,4.2vw,50px)!important}
body.cmc-page-tarifs .formula-benefits-head p{margin:0!important;color:#c6cee3!important;font-size:16px!important;line-height:1.6!important}
body.cmc-page-tarifs .formula-benefits-v2 .formula-guide-grid{align-items:start!important;gap:22px!important}
body.cmc-page-tarifs .formula-detail-card{padding:30px 26px 24px!important;min-height:0!important;text-align:left!important}
body.cmc-page-tarifs .formula-detail-icon{width:54px;height:54px;display:grid;place-items:center;margin:0 0 22px;border-radius:18px;background:linear-gradient(145deg,rgba(85,221,255,.16),rgba(155,112,255,.16));border:1px solid rgba(170,197,255,.20);font-size:25px;color:#fff}
body.cmc-page-tarifs .formula-detail-card h3{margin:0 0 12px!important;font-size:27px!important;line-height:1.1!important}
body.cmc-page-tarifs .formula-detail-lead{margin:0 0 22px!important;min-height:76px;color:#c8d0e4!important;font-size:15px!important;line-height:1.62!important;font-weight:500!important}
body.cmc-page-tarifs .formula-highlights{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 24px}
body.cmc-page-tarifs .formula-highlights b{display:inline-flex;align-items:center;min-height:34px;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.055);border:1px solid rgba(189,180,255,.16);color:#f2f5ff;font-size:12px;font-weight:800}
body.cmc-page-tarifs .formula-detail-more{border-top:1px solid rgba(255,255,255,.09);padding-top:16px}
body.cmc-page-tarifs .formula-detail-more summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#ff93d7;font-size:13px;font-weight:900}
body.cmc-page-tarifs .formula-detail-more summary::-webkit-details-marker{display:none}
body.cmc-page-tarifs .formula-detail-more summary::after{content:'+';width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10);color:#fff;font-size:18px}
body.cmc-page-tarifs .formula-detail-more[open] summary::after{content:'−';background:rgba(255,104,202,.12)}
body.cmc-page-tarifs .formula-detail-more .benefit-list{margin:18px 0 0!important;gap:9px!important}
body.cmc-page-tarifs .formula-detail-more .benefit-list li{padding:9px 10px 9px 34px!important;border-radius:12px;background:rgba(255,255,255,.035);font-weight:600!important;line-height:1.4!important}
body.cmc-page-tarifs .formula-detail-more .benefit-list li::before{left:11px!important;top:8px!important}
body.cmc-page-tarifs .formula-detail-badge{position:absolute;top:18px;right:18px;padding:7px 10px;border-radius:999px;background:linear-gradient(90deg,rgba(149,92,255,.22),rgba(255,86,190,.20));border:1px solid rgba(255,138,221,.24);color:#ffd9f2;font-size:10px;font-weight:900;letter-spacing:.08em}
@media(max-width:900px){body.cmc-page-tarifs .formula-detail-lead{min-height:0!important}body.cmc-page-tarifs .formula-benefits-v2 .formula-guide-grid{gap:16px!important}}


/* PUBLIC REFONTE PASS 1 — conversion + confiance */
body.cmc-page-commande .form-wrap.order-page{max-width:980px!important}
body.cmc-page-commande .order-intro{margin:0 0 26px;padding:30px 32px 28px;border-radius:30px;background:linear-gradient(145deg,rgba(16,28,72,.78),rgba(79,27,116,.58));border:1px solid rgba(181,163,255,.24);box-shadow:0 20px 60px rgba(4,7,28,.20),inset 0 1px 0 rgba(255,255,255,.07);backdrop-filter:blur(18px)}
body.cmc-page-commande .order-kicker,body.cmc-page-contact .contact-kicker,body.cmc-page-register .register-kicker{display:block;margin-bottom:10px;color:#ff8fd5;font-size:12px;font-weight:900;letter-spacing:.13em}
body.cmc-page-commande .order-intro h1{margin:0 0 10px!important;font-size:clamp(34px,5vw,48px)!important;line-height:1.05!important}
body.cmc-page-commande .order-intro>p{max-width:760px;margin:0;color:#cdd5e9;line-height:1.65;font-size:16px}
body.cmc-page-commande .order-trust-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:24px}
body.cmc-page-commande .order-trust-grid>span{display:grid;grid-template-columns:34px 1fr;grid-template-rows:auto auto;column-gap:10px;align-items:center;padding:14px 15px;border-radius:18px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08)}
body.cmc-page-commande .order-trust-grid b{grid-row:1/3;width:34px;height:34px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(145deg,rgba(255,93,197,.16),rgba(83,210,255,.14));color:#fff;font-size:18px}
body.cmc-page-commande .order-trust-grid strong{font-size:13px;color:#fff}
body.cmc-page-commande .order-trust-grid small{font-size:11px;color:#aeb8d1;line-height:1.4}
body.cmc-page-commande .form-step.panel{border-radius:26px!important;padding:26px!important;background:linear-gradient(160deg,rgba(20,33,78,.82),rgba(12,21,58,.68))!important;border:1px solid rgba(173,159,255,.18)!important;box-shadow:0 18px 44px rgba(3,7,28,.18)!important}
body.cmc-page-commande .form-step h2{font-size:24px!important;margin-bottom:18px!important}

body.cmc-page-contact .contact-premium{max-width:760px!important}
body.cmc-page-contact .contact-premium>.panel{padding:34px!important;border-radius:30px!important;background:linear-gradient(155deg,rgba(22,35,80,.82),rgba(74,28,108,.62))!important;border:1px solid rgba(183,167,255,.22)!important;box-shadow:0 22px 60px rgba(3,6,25,.22)!important}
body.cmc-page-contact .contact-premium h1{margin:0 0 10px!important;font-size:clamp(34px,5vw,46px)!important}
body.cmc-page-contact .contact-lead{margin:0 0 18px;color:#cbd3e8;line-height:1.65}
body.cmc-page-contact .contact-trust,body.cmc-page-register .register-trust{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 24px}
body.cmc-page-contact .contact-trust span,body.cmc-page-register .register-trust span{padding:8px 11px;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.10);font-size:12px;font-weight:800;color:#eef2ff}

body.cmc-page-register .register-premium{max-width:650px!important;padding:34px!important;border-radius:30px!important;background:linear-gradient(155deg,rgba(22,35,80,.82),rgba(74,28,108,.62))!important;border:1px solid rgba(183,167,255,.22)!important;box-shadow:0 22px 60px rgba(3,6,25,.22)!important}
body.cmc-page-register .register-premium h1{margin:0 0 10px!important;font-size:clamp(34px,5vw,46px)!important}
body.cmc-page-register .register-lead{margin:0 0 18px;color:#cbd3e8;line-height:1.65}
@media(max-width:760px){body.cmc-page-commande .order-intro{padding:22px 18px}body.cmc-page-commande .order-trust-grid{grid-template-columns:1fr}body.cmc-page-commande .form-step.panel{padding:20px!important}body.cmc-page-contact .contact-premium>.panel,body.cmc-page-register .register-premium{padding:24px 18px!important}}


/* source: public-refinement-2026.css */
/* =========================================================
   CRÉE MA CHANSON — PUBLIC REFINEMENT 2026
   Chargé en dernier : cohérence formulaires / CTA / légal / avis / commande.
   ========================================================= */

:root{
  --cmc-ui-bg:#0d183d;
  --cmc-ui-bg-2:#151d4a;
  --cmc-ui-line:rgba(178,164,255,.25);
  --cmc-ui-text:#f7f8ff;
  --cmc-ui-muted:#bfc8e0;
  --cmc-ui-pink:#ff76cf;
  --cmc-ui-violet:#8f61ff;
}

/* ---------- FORMULAIRES : plus aucun champ blanc ---------- */
body:not(.admin-page) input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="submit"]):not([type="button"]):not([type="reset"]):not([type="image"]):not([type="hidden"]):not([type="color"]),
body:not(.admin-page) textarea,
body:not(.admin-page) select{
  width:100%!important;
  min-height:50px!important;
  padding:13px 15px!important;
  border:1px solid var(--cmc-ui-line)!important;
  border-radius:14px!important;
  background:linear-gradient(180deg,rgba(11,20,52,.97),rgba(17,27,67,.94))!important;
  color:var(--cmc-ui-text)!important;
  caret-color:var(--cmc-ui-pink)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055),0 8px 24px rgba(2,6,24,.10)!important;
  outline:none!important;
  color-scheme:dark!important;
  transition:border-color .2s ease,box-shadow .2s ease,background .2s ease!important;
}
body:not(.admin-page) textarea{
  min-height:150px!important;
  resize:vertical!important;
  line-height:1.55!important;
}
body:not(.admin-page) input::placeholder,
body:not(.admin-page) textarea::placeholder{color:rgba(210,217,239,.55)!important}
body:not(.admin-page) input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="submit"]):not([type="button"]):not([type="reset"]):not([type="image"]):not([type="hidden"]):not([type="color"]):focus,
body:not(.admin-page) textarea:focus,
body:not(.admin-page) select:focus{
  border-color:rgba(255,115,210,.82)!important;
  background:linear-gradient(180deg,rgba(15,26,67,.99),rgba(22,32,78,.96))!important;
  box-shadow:0 0 0 3px rgba(255,99,200,.10),0 0 24px rgba(143,93,255,.18),inset 0 1px 0 rgba(255,255,255,.08)!important;
}
body:not(.admin-page) select{
  appearance:none!important;
  -webkit-appearance:none!important;
  padding-right:48px!important;
  background-image:
    linear-gradient(180deg,rgba(11,20,52,.97),rgba(17,27,67,.94)),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23ff8fd5' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat,no-repeat!important;
  background-position:0 0,calc(100% - 16px) 50%!important;
  background-size:100% 100%,18px 18px!important;
}
body:not(.admin-page) select option{background:#101a42!important;color:#f7f8ff!important}
body:not(.admin-page) input:-webkit-autofill,
body:not(.admin-page) input:-webkit-autofill:hover,
body:not(.admin-page) input:-webkit-autofill:focus{
  -webkit-text-fill-color:#f7f8ff!important;
  -webkit-box-shadow:0 0 0 1000px #111d49 inset!important;
}
body:not(.admin-page) input[type="file"]{
  padding:7px!important;
  overflow:hidden!important;
}
body:not(.admin-page) input[type="file"]::file-selector-button,
body:not(.admin-page) input[type="file"]::-webkit-file-upload-button{
  min-height:36px!important;
  margin:0 12px 0 0!important;
  padding:8px 14px!important;
  border:1px solid rgba(189,171,255,.30)!important;
  border-radius:10px!important;
  background:linear-gradient(135deg,rgba(113,69,225,.96),rgba(206,67,166,.94))!important;
  color:#fff!important;
  font:inherit!important;
  font-size:12px!important;
  font-weight:900!important;
  cursor:pointer!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 6px 16px rgba(7,9,35,.18)!important;
  transition:filter .18s ease,box-shadow .18s ease!important;
}
body:not(.admin-page) input[type="file"]:hover::file-selector-button,
body:not(.admin-page) input[type="file"]:focus-visible::file-selector-button{
  filter:brightness(1.08) saturate(1.08)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 8px 20px rgba(83,34,142,.24)!important;
}

/* Select custom historique : chevron indépendant de l'encodage. */
body:not(.admin-page) .pretty-select-button{
  background:linear-gradient(180deg,rgba(11,20,52,.97),rgba(17,27,67,.94))!important;
  color:#f7f8ff!important;
  border-color:var(--cmc-ui-line)!important;
}
body:not(.admin-page) .pretty-select-button::after{
  content:""!important;
  width:18px!important;height:18px!important;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23ff8fd5' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") center/18px 18px no-repeat!important;
}
body:not(.admin-page) .pretty-select-list,
body:not(.admin-page) .pretty-select-options{
  background:#101a42!important;
  border-color:var(--cmc-ui-line)!important;
  color:#f7f8ff!important;
}

/* ---------- BOUTONS / CTA : langage unique premium ---------- */
body:not(.admin-page) :is(.btn,.cta,.price-btn,.teaser-btn,button[type="submit"],button[data-next],a.btn,input[type="submit"],input[type="button"],input[type="reset"]){
  min-height:48px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  padding:12px 22px!important;
  border-radius:999px!important;
  text-decoration:none!important;
  font-weight:900!important;
  letter-spacing:.015em!important;
  background:linear-gradient(135deg,#874bff 0%,#d64eac 54%,#ff6c91 100%)!important;
  border:1px solid rgba(255,255,255,.17)!important;
  color:#fff!important;
  cursor:pointer!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 12px 30px rgba(107,42,173,.28)!important;
  transition:transform .2s ease,filter .2s ease,box-shadow .2s ease,border-color .2s ease!important;
}
body:not(.admin-page) :is(.btn,.cta,.price-btn,.teaser-btn,button[type="submit"],button[data-next],a.btn,input[type="submit"],input[type="button"],input[type="reset"]):hover,
body:not(.admin-page) :is(.btn,.cta,.price-btn,.teaser-btn,button[type="submit"],button[data-next],a.btn,input[type="submit"],input[type="button"],input[type="reset"]):focus-visible{
  transform:translateY(-2px)!important;
  filter:brightness(1.08) saturate(1.08)!important;
  border-color:rgba(255,208,241,.48)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.20),0 16px 36px rgba(111,42,181,.34),0 0 26px rgba(255,100,203,.18)!important;
  outline:none!important;
}
body:not(.admin-page) :is(.btn-secondary,.btn.ghost,.btn.secondary,button[data-prev]){
  background:linear-gradient(145deg,rgba(24,37,82,.94),rgba(16,26,63,.90))!important;
  border:1px solid rgba(174,160,255,.30)!important;
  color:#eef1ff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 10px 25px rgba(2,5,24,.20)!important;
}
body:not(.admin-page) :is(.btn-secondary,.btn.ghost,.btn.secondary,button[data-prev]):hover,
body:not(.admin-page) :is(.btn-secondary,.btn.ghost,.btn.secondary,button[data-prev]):focus-visible{
  border-color:rgba(255,113,205,.58)!important;
  color:#fff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 12px 30px rgba(2,5,24,.25),0 0 22px rgba(255,99,200,.12)!important;
}
body:not(.admin-page) .btn-small{
  min-height:38px!important;
  padding:8px 15px!important;
  font-size:12px!important;
  letter-spacing:.01em!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 8px 20px rgba(4,7,28,.18)!important;
}
body:not(.admin-page) :is(.btn,.cta,.price-btn,.teaser-btn,button[type="submit"],button[data-next],button[data-prev],input[type="submit"],input[type="button"],input[type="reset"])[disabled],
body:not(.admin-page) :is(.btn,.cta,.price-btn,.teaser-btn,button[type="submit"],button[data-next],button[data-prev],input[type="submit"],input[type="button"],input[type="reset"]).is-disabled,
body:not(.admin-page) a.btn[aria-disabled="true"]{
  opacity:.48!important;
  filter:saturate(.65)!important;
  cursor:not-allowed!important;
  pointer-events:none!important;
  transform:none!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 6px 16px rgba(3,6,24,.12)!important;
}

/* Accueil : flèches du carrousel d'avis, jamais en bouton navigateur brut. */
body.cmc-home-page .reviews-carousel-controls button[data-review-prev],
body.cmc-home-page .reviews-carousel-controls button[data-review-next]{
  width:44px!important;
  min-width:44px!important;
  height:44px!important;
  min-height:44px!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  border:1px solid rgba(181,165,255,.28)!important;
  border-radius:50%!important;
  background:linear-gradient(145deg,rgba(24,37,82,.96),rgba(18,24,60,.94))!important;
  color:#fff!important;
  font-size:25px!important;
  line-height:1!important;
  cursor:pointer!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 9px 22px rgba(3,6,24,.20)!important;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease!important;
}
body.cmc-home-page .reviews-carousel-controls button[data-review-prev]:hover,
body.cmc-home-page .reviews-carousel-controls button[data-review-prev]:focus-visible,
body.cmc-home-page .reviews-carousel-controls button[data-review-next]:hover,
body.cmc-home-page .reviews-carousel-controls button[data-review-next]:focus-visible{
  transform:translateY(-1px)!important;
  border-color:rgba(255,119,210,.56)!important;
  outline:none!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 12px 26px rgba(3,6,24,.24),0 0 20px rgba(255,100,203,.12)!important;
}

/* ---------- AVIS : pagination volontaire, pas bouton perdu ---------- */
body.cmc-page-avis-clients .reviews-pagination{
  max-width:620px!important;
  margin:34px auto 10px!important;
  padding:12px!important;
  display:grid!important;
  grid-template-columns:1fr auto 1fr!important;
  align-items:center!important;
  gap:12px!important;
  border:1px solid rgba(174,160,255,.20)!important;
  border-radius:22px!important;
  background:linear-gradient(145deg,rgba(14,25,64,.78),rgba(34,20,67,.66))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 16px 38px rgba(3,6,25,.18)!important;
  backdrop-filter:blur(18px)!important;
}
body.cmc-page-avis-clients .reviews-pagination>span{
  padding:9px 13px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.055)!important;
  border:1px solid rgba(255,255,255,.08)!important;
  color:#dce2f6!important;
  font-size:12px!important;
  font-weight:900!important;
  white-space:nowrap!important;
}
body.cmc-page-avis-clients .reviews-pagination a:first-child{justify-self:start!important}
body.cmc-page-avis-clients .reviews-pagination a:last-child{justify-self:end!important}

/* ---------- PAGES LÉGALES : même ambiance que Confidentialité ---------- */
body:is(.cmc-page-cgv,.cmc-page-mentions-legales,.cmc-page-confidentialite) :is(.legal-page,.legal-copy){
  width:min(980px,calc(100% - 36px))!important;
  margin:40px auto 72px!important;
  padding:clamp(24px,4vw,46px)!important;
  border-radius:30px!important;
  background:linear-gradient(160deg,rgba(15,27,67,.78),rgba(35,22,72,.62))!important;
  border:1px solid rgba(187,171,255,.20)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 24px 60px rgba(3,6,26,.22)!important;
  backdrop-filter:blur(22px) saturate(150%)!important;
}
body:is(.cmc-page-cgv,.cmc-page-mentions-legales,.cmc-page-confidentialite) :is(.legal-page,.legal-copy) h1{
  margin:0 0 10px!important;
  font-size:clamp(34px,5vw,52px)!important;
  letter-spacing:-.035em!important;
}
body:is(.cmc-page-cgv,.cmc-page-mentions-legales,.cmc-page-confidentialite) :is(.legal-page,.legal-copy) h2{
  margin:34px 0 12px!important;
  padding-top:22px!important;
  border-top:1px solid rgba(255,255,255,.08)!important;
  font-size:clamp(21px,3vw,28px)!important;
}
body:is(.cmc-page-cgv,.cmc-page-mentions-legales,.cmc-page-confidentialite) :is(.legal-page,.legal-copy) :is(p,li){font-size:15px!important;line-height:1.72!important}
body:is(.cmc-page-cgv,.cmc-page-mentions-legales,.cmc-page-confidentialite) :is(.legal-page,.legal-copy) a{color:#ff91d6!important;text-underline-offset:3px!important}

/* ---------- COMMANDE : hauteur naturelle, rien de coupé ---------- */
body.cmc-page-commande :is(.order-page,.order-page form,.form-step,.form-step.panel){
  max-height:none!important;
  height:auto!important;
  overflow:visible!important;
}
body.cmc-page-commande .form-step.panel{
  background:linear-gradient(160deg,rgba(17,30,73,.84),rgba(31,21,70,.74))!important;
  border-color:rgba(186,169,255,.22)!important;
}
body.cmc-page-commande .choice{
  background:rgba(255,255,255,.035)!important;
  border-color:rgba(173,160,255,.16)!important;
}
body.cmc-page-commande input[type="checkbox"],
body.cmc-page-commande input[type="radio"]{accent-color:#ff69c8!important}

@media(max-width:640px){
  body.cmc-page-avis-clients .reviews-pagination{grid-template-columns:1fr 1fr!important}
  body.cmc-page-avis-clients .reviews-pagination>span{grid-column:1/-1!important;grid-row:1!important;justify-self:center!important}
  body.cmc-page-avis-clients .reviews-pagination a{grid-row:2!important}
  body:not(.admin-page) input[type="file"]::file-selector-button,
  body:not(.admin-page) input[type="file"]::-webkit-file-upload-button{margin-right:8px!important;padding-inline:11px!important}
}

@media(hover:none){
  body:not(.admin-page) :is(.btn,.cta,.price-btn,.teaser-btn,button[type="submit"],button[data-next],a.btn,input[type="submit"],input[type="button"],input[type="reset"]):hover,
  body.cmc-home-page .reviews-carousel-controls button[data-review-prev]:hover,
  body.cmc-home-page .reviews-carousel-controls button[data-review-next]:hover{transform:none!important}
}

@media(prefers-reduced-motion:reduce){
  body:not(.admin-page) *,
  body:not(.admin-page) *::before,
  body:not(.admin-page) *::after{
    scroll-behavior:auto!important;
    transition-duration:.01ms!important;
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
  }
}


/* source: public-controls-refinement-2026.css */
/* =========================================================
   CRÉE MA CHANSON — PUBLIC CONTROLS REFINEMENT 2026
   Checkbox / radio / range publics, hors administration.
   ========================================================= */

body:not(.admin-page) input[type="checkbox"],
body:not(.admin-page) input[type="radio"]{
  width:20px!important;
  height:20px!important;
  min-width:20px!important;
  margin:0!important;
  accent-color:#ff69c8!important;
  cursor:pointer!important;
  filter:drop-shadow(0 2px 5px rgba(7,9,35,.20));
}

body:not(.admin-page) input[type="checkbox"]:focus-visible,
body:not(.admin-page) input[type="radio"]:focus-visible{
  outline:2px solid rgba(255,132,216,.92)!important;
  outline-offset:3px!important;
}

body:not(.admin-page) input[type="range"]{
  appearance:none!important;
  -webkit-appearance:none!important;
  width:100%;
  height:7px;
  padding:0!important;
  border:0!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,rgba(255,99,201,.38),rgba(139,98,255,.40),rgba(83,211,255,.34))!important;
  box-shadow:inset 0 1px 4px rgba(0,0,0,.42),0 0 0 1px rgba(255,255,255,.045)!important;
  cursor:pointer!important;
  color-scheme:dark;
}

body:not(.admin-page) input[type="range"]::-webkit-slider-runnable-track{
  height:7px!important;
  border-radius:999px!important;
  background:transparent!important;
}

body:not(.admin-page) input[type="range"]::-webkit-slider-thumb{
  width:18px!important;
  height:18px!important;
  margin-top:-5.5px!important;
  border:2px solid rgba(255,255,255,.94)!important;
  border-radius:50%!important;
  -webkit-appearance:none!important;
  background:linear-gradient(135deg,#ff65c9,#8d66ff 54%,#59dcff)!important;
  box-shadow:0 0 0 4px rgba(157,101,255,.12),0 0 14px rgba(255,91,199,.34)!important;
}

body:not(.admin-page) input[type="range"]::-moz-range-track{
  height:7px!important;
  border:0!important;
  border-radius:999px!important;
  background:rgba(83,100,160,.22)!important;
  box-shadow:inset 0 1px 4px rgba(0,0,0,.34)!important;
}

body:not(.admin-page) input[type="range"]::-moz-range-progress{
  height:7px!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,#ff63c9,#8b62ff 58%,#53d3ff)!important;
}

body:not(.admin-page) input[type="range"]::-moz-range-thumb{
  width:16px!important;
  height:16px!important;
  border:2px solid rgba(255,255,255,.94)!important;
  border-radius:50%!important;
  background:linear-gradient(135deg,#ff65c9,#8d66ff 54%,#59dcff)!important;
  box-shadow:0 0 0 4px rgba(157,101,255,.12),0 0 14px rgba(255,91,199,.34)!important;
}

body:not(.admin-page) input[type="range"]:focus-visible{
  outline:2px solid rgba(255,132,216,.92)!important;
  outline-offset:5px!important;
}

body:not(.admin-page) input[type="range"]:disabled,
body:not(.admin-page) input[type="checkbox"]:disabled,
body:not(.admin-page) input[type="radio"]:disabled{
  opacity:.45!important;
  cursor:not-allowed!important;
}

@media(max-width:640px){
  body:not(.admin-page) input[type="checkbox"],
  body:not(.admin-page) input[type="radio"]{
    width:22px!important;
    height:22px!important;
    min-width:22px!important;
  }
}

@media(pointer:coarse){
  body:not(.admin-page) :is(input[type="checkbox"],input[type="radio"],input[type="range"]){
    touch-action:manipulation;
  }
  body:not(.admin-page) input[type="checkbox"],
  body:not(.admin-page) input[type="radio"]{
    width:24px!important;
    height:24px!important;
    min-width:24px!important;
  }
  body:not(.admin-page) input[type="range"]::-webkit-slider-thumb{
    width:22px!important;
    height:22px!important;
    margin-top:-7.5px!important;
  }
  body:not(.admin-page) input[type="range"]::-moz-range-thumb{
    width:20px!important;
    height:20px!important;
  }
}

@media(forced-colors:active){
  body:not(.admin-page) :is(input[type="checkbox"],input[type="radio"],input[type="range"]){
    forced-color-adjust:auto;
  }
}

@media(prefers-reduced-motion:reduce){
  body:not(.admin-page) input[type="range"],
  body:not(.admin-page) input[type="checkbox"],
  body:not(.admin-page) input[type="radio"]{
    transition:none!important;
  }
}


/* source: public-accessibility-refinement-2026.css */
/* =========================================================
   CRÉE MA CHANSON — PUBLIC ACCESSIBILITY REFINEMENT 2026
   Focus clavier, validation, états passifs et contraste forcé.
   ========================================================= */

body:not(.admin-page) main a:not(.btn):not(.cta):not(.price-btn):not(.teaser-btn):not(.showcase-cta-primary):not(.showcase-cta-secondary):focus-visible,
body:not(.admin-page) main summary:focus-visible,
body:not(.admin-page) main button:not(.btn):not(.home-showcase-play):not(.showcase-refrain):focus-visible,
body:not(.admin-page) .cmc-hero-nav a:focus-visible{
  outline:2px solid rgba(255,132,216,.95)!important;
  outline-offset:4px!important;
  border-radius:6px;
}

body:not(.admin-page) .cmc-hero-nav a{
  -webkit-tap-highlight-color:transparent;
  touch-action:manipulation;
}

/* =========================================================
   FORMULAIRES PUBLICS — PALETTE UNIQUE
   Harmonise input / select / textarea sur toutes les pages publiques.
   ========================================================= */
body:not(.admin-page) main input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]):not([type="submit"]):not([type="button"]):not([type="reset"]):not([type="color"]),
body:not(.admin-page) main select,
body:not(.admin-page) main textarea{
  width:100%;
  max-width:100%;
  color:#fff!important;
  caret-color:#ff8bd8;
  background:linear-gradient(135deg,rgba(12,29,73,.96),rgba(17,25,68,.96))!important;
  background-color:#101d46!important;
  border:1px solid rgba(108,130,255,.30)!important;
  border-radius:13px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 8px 22px rgba(3,8,35,.10)!important;
  outline:0!important;
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease!important;
}

body:not(.admin-page) main input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]):not([type="submit"]):not([type="button"]):not([type="reset"]):not([type="color"]),
body:not(.admin-page) main select{
  min-height:48px;
  padding:0 14px!important;
}

body:not(.admin-page) main textarea{
  min-height:130px;
  padding:14px!important;
  resize:vertical;
}

body:not(.admin-page) main :is(input,textarea)::placeholder{
  color:rgba(222,228,255,.48)!important;
  opacity:1!important;
}

body:not(.admin-page) main select option{
  color:#fff;
  background:#101d46;
}

body:not(.admin-page) main input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]):not([type="submit"]):not([type="button"]):not([type="reset"]):not([type="color"]):focus,
body:not(.admin-page) main select:focus,
body:not(.admin-page) main textarea:focus{
  border-color:rgba(255,125,211,.80)!important;
  background:linear-gradient(135deg,rgba(15,33,82,.98),rgba(22,28,76,.98))!important;
  box-shadow:0 0 0 3px rgba(255,104,205,.10),0 0 20px rgba(117,83,255,.14),inset 0 1px 0 rgba(255,255,255,.05)!important;
}

body:not(.admin-page) main input:-webkit-autofill,
body:not(.admin-page) main input:-webkit-autofill:hover,
body:not(.admin-page) main input:-webkit-autofill:focus,
body:not(.admin-page) main textarea:-webkit-autofill,
body:not(.admin-page) main select:-webkit-autofill{
  -webkit-text-fill-color:#fff!important;
  -webkit-box-shadow:0 0 0 1000px #101d46 inset!important;
  transition:background-color 9999s ease-out 0s!important;
}

body:not(.admin-page) :is(input,textarea,select)[aria-invalid="true"],
body:not(.admin-page) :is(input,textarea,select):user-invalid{
  border-color:rgba(255,112,132,.88)!important;
  box-shadow:0 0 0 3px rgba(255,80,116,.10),0 0 18px rgba(255,70,107,.12)!important;
}

body:not(.admin-page) :is(input,textarea,select):disabled,
body:not(.admin-page) :is(input,textarea)[readonly]{
  opacity:.62!important;
  cursor:not-allowed!important;
}

body:not(.admin-page) :is(input,textarea)[readonly]{
  cursor:default!important;
}

body:not(.admin-page) :is(button,input[type="submit"],input[type="button"],input[type="reset"]):disabled,
body:not(.admin-page) button[aria-disabled="true"]{
  opacity:.5!important;
  cursor:not-allowed!important;
  pointer-events:none!important;
  transform:none!important;
}

body:not(.admin-page) a[aria-disabled="true"]{
  opacity:.5!important;
  cursor:not-allowed!important;
  pointer-events:none!important;
}

body:not(.admin-page) [aria-busy="true"]{
  cursor:progress!important;
}

body:not(.admin-page) [role="alert"]{
  overflow-wrap:anywhere;
}

/* Garde-fous de largeur sur les pages publiques à contenu variable. */
body.cmc-page-contact .contact-premium :is(h1,.contact-lead,.contact-trust span,label),
body.cmc-page-avis-clients .public-reviews-page :is(h1,.page-heading>p,.review-card>small),
body:is(.cmc-page-cgv,.cmc-page-mentions-legales,.cmc-page-confidentialite) .legal-copy :is(h1,h2,p,li,strong){
  overflow-wrap:anywhere;
}
body.cmc-page-contact .contact-premium :is(form,.field),
body.cmc-page-avis-clients .public-reviews-page :is(.all-reviews-grid,.review-card),
body:is(.cmc-page-cgv,.cmc-page-mentions-legales,.cmc-page-confidentialite) .legal-copy{
  min-width:0;
}
body.cmc-page-avis-clients .all-reviews-grid .review-card>small{
  max-width:100%;
  white-space:normal;
}

@media(pointer:coarse){
  body:not(.admin-page) main :is(button,a[role="button"],summary){
    touch-action:manipulation;
  }
}

@media(forced-colors:active){
  body:not(.admin-page) :is(a,button,input,textarea,select,summary):focus-visible{
    outline:2px solid Highlight!important;
    outline-offset:3px!important;
  }
  body:not(.admin-page) :is(.btn,.cta,.price-btn,.teaser-btn,.showcase-cta-primary,.showcase-cta-secondary){
    border:1px solid ButtonText!important;
  }
  body:not(.admin-page) :is(input,textarea,select)[aria-invalid="true"],
  body:not(.admin-page) :is(input,textarea,select):user-invalid{
    border-color:Highlight!important;
    outline:2px solid Highlight!important;
    outline-offset:2px!important;
  }
}

@media(prefers-reduced-motion:reduce){
  body:not(.admin-page) main :is(a,button,summary):focus-visible,
  body:not(.admin-page) .cmc-hero-nav a,
  body:not(.admin-page) main :is(input,textarea,select){
    transition:none!important;
  }
}


/* source: home-showcase-refinement-2026.css */
/* =========================================================
   CRÉE MA CHANSON — HOME SHOWCASE REFINEMENT 2026
   Player + mise en avant commerciale de la dernière création.
   ========================================================= */

body.cmc-home-page .showcase-song-card{
  position:relative;
  overflow:visible;
  border:1px solid rgba(188,171,255,.22)!important;
  background:linear-gradient(155deg,rgba(12,23,61,.92),rgba(31,19,70,.84))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 24px 64px rgba(2,5,24,.28)!important;
}

body.cmc-home-page .showcase-song-content{
  display:flex;
  min-height:100%;
  flex-direction:column;
  justify-content:flex-start;
  gap:0;
}

body.cmc-home-page .showcase-song-overline{
  display:inline-flex;
  align-items:center;
  gap:8px;
  width:max-content;
  max-width:100%;
  margin:0 0 8px!important;
  padding:7px 11px;
  border:1px solid rgba(255,117,207,.20);
  border-radius:999px;
  background:rgba(255,92,194,.07);
  color:#ff99db!important;
  font-size:11px!important;
  font-weight:950!important;
  letter-spacing:.12em!important;
}
body.cmc-home-page .showcase-live-dot{
  width:7px;height:7px;border-radius:50%;
  background:#ff5dcc;
  box-shadow:0 0 0 4px rgba(255,93,204,.09),0 0 14px rgba(255,93,204,.48);
}

body.cmc-home-page .showcase-song-content h3{
  margin:4px 0 6px!important;
  font-size:clamp(38px,4.2vw,56px)!important;
  line-height:.98!important;
  letter-spacing:-.035em!important;
}
body.cmc-home-page .showcase-song-meta{
  margin:0 0 12px!important;
  color:#9fb0d9!important;
  font-size:12px!important;
  font-weight:850!important;
  letter-spacing:.035em!important;
}
body.cmc-home-page .showcase-song-description{
  max-width:720px;
  margin:0 0 20px!important;
  color:#d3dbef!important;
  font-size:16px!important;
  line-height:1.62!important;
}

body.cmc-home-page .showcase-player{
  grid-template-columns:92px minmax(0,1fr)!important;
  gap:20px!important;
  padding:20px!important;
  overflow:visible!important;
  border:1px solid rgba(177,159,255,.18)!important;
  border-radius:28px!important;
  background:linear-gradient(145deg,rgba(5,12,36,.58),rgba(14,21,57,.44))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045)!important;
}

body.cmc-home-page .home-showcase-play{
  position:relative!important;
  display:grid!important;
  place-items:center!important;
  flex:0 0 auto!important;
  width:78px!important;
  height:78px!important;
  padding:0!important;
  border:0!important;
  border-radius:50%!important;
  isolation:isolate!important;
  overflow:visible!important;
  background:radial-gradient(circle at 38% 28%,rgba(255,255,255,.18),rgba(9,17,44,.99) 70%)!important;
  color:#fff!important;
  font-size:28px!important;
  line-height:1!important;
  cursor:pointer!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.16),0 12px 28px rgba(3,7,27,.28)!important;
  transition:transform .2s ease,box-shadow .2s ease,background .2s ease!important;
}
body.cmc-home-page .home-showcase-play>span{
  display:block!important;
  transform:translateX(2px)!important;
  filter:drop-shadow(0 2px 4px rgba(0,0,0,.35));
}
body.cmc-home-page .home-showcase-play::before{
  content:""!important;
  position:absolute!important;
  inset:-10px!important;
  border-radius:50%!important;
  padding:4px!important;
  background:conic-gradient(from 0deg,#ff22be 0%,#ff8ee7 17%,#9e56ff 35%,#5575ff 54%,#3ee3ff 69%,#9868ff 84%,#ff22be 100%)!important;
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0)!important;
  -webkit-mask-composite:xor!important;
  mask-composite:exclude!important;
  animation:cmcHomeBeam 4.4s linear infinite!important;
  filter:saturate(1.45) brightness(1.18) drop-shadow(0 0 8px rgba(255,48,193,.48)) drop-shadow(0 0 10px rgba(55,220,255,.34))!important;
  z-index:-1!important;
}
body.cmc-home-page .home-showcase-play::after{
  content:""!important;
  position:absolute!important;
  inset:-17px!important;
  border-radius:50%!important;
  background:radial-gradient(circle,rgba(255,79,200,.10) 0 44%,rgba(121,91,255,.10) 50%,rgba(65,214,255,.10) 58%,transparent 72%)!important;
  filter:blur(6px)!important;
  opacity:.82!important;
  z-index:-2!important;
}
body.cmc-home-page .home-showcase-play:hover,
body.cmc-home-page .home-showcase-play:focus-visible{
  transform:translateY(-2px) scale(1.025)!important;
  outline:none!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.22),0 16px 34px rgba(3,7,27,.34),0 0 0 4px rgba(152,104,255,.10)!important;
}
body.cmc-home-page .home-showcase-play:hover::before,
body.cmc-home-page .home-showcase-play:focus-visible::before{
  filter:saturate(1.62) brightness(1.34) drop-shadow(0 0 9px rgba(255,48,193,.60)) drop-shadow(0 0 13px rgba(55,220,255,.46))!important;
}
@keyframes cmcHomeBeam{to{transform:rotate(360deg)}}

body.cmc-home-page .showcase-player-main{
  min-width:0;
  align-self:center;
}
body.cmc-home-page .showcase-player-meta,
body.cmc-home-page .showcase-player-time{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
}
body.cmc-home-page .showcase-player-meta{
  margin-bottom:10px!important;
  color:#dbe5ff!important;
  font-size:12px!important;
  font-weight:800!important;
}
body.cmc-home-page .showcase-player-meta strong{
  color:#fff!important;
  font-variant-numeric:tabular-nums;
}
body.cmc-home-page .showcase-progress{
  width:100%!important;
  height:7px!important;
  margin:0!important;
  border:0!important;
  border-radius:999px!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  background:linear-gradient(90deg,rgba(255,91,199,.34),rgba(126,92,255,.34),rgba(61,211,255,.30))!important;
  box-shadow:inset 0 1px 4px rgba(0,0,0,.45),0 0 0 1px rgba(255,255,255,.045)!important;
  cursor:pointer!important;
}
body.cmc-home-page .showcase-progress::-webkit-slider-thumb{
  width:16px!important;
  height:16px!important;
  border:2px solid rgba(255,255,255,.92)!important;
  border-radius:50%!important;
  -webkit-appearance:none!important;
  background:linear-gradient(135deg,#ff64ca,#8d65ff 52%,#5bdcff)!important;
  box-shadow:0 0 0 4px rgba(157,101,255,.13),0 0 14px rgba(255,91,199,.42)!important;
}
body.cmc-home-page .showcase-progress::-moz-range-thumb{
  width:14px!important;
  height:14px!important;
  border:2px solid rgba(255,255,255,.92)!important;
  border-radius:50%!important;
  background:linear-gradient(135deg,#ff64ca,#8d65ff 52%,#5bdcff)!important;
  box-shadow:0 0 0 4px rgba(157,101,255,.13),0 0 14px rgba(255,91,199,.42)!important;
}
body.cmc-home-page .showcase-player-time{
  margin-top:9px!important;
  color:#8fa0c8!important;
  font-size:10px!important;
  font-weight:750!important;
  letter-spacing:.03em!important;
}

body.cmc-home-page .showcase-listen-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  margin-top:14px!important;
  padding:12px 14px!important;
  border:1px solid rgba(158,140,255,.12)!important;
  border-radius:18px!important;
  background:rgba(4,11,35,.25)!important;
}
body.cmc-home-page .showcase-refrain{
  min-height:40px!important;
  padding:0 15px!important;
  border:1px solid rgba(255,117,207,.25)!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,rgba(255,81,193,.14),rgba(127,93,255,.13))!important;
  color:#ffd6f0!important;
  font-weight:900!important;
  cursor:pointer!important;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease!important;
}
body.cmc-home-page .showcase-refrain:hover,
body.cmc-home-page .showcase-refrain:focus-visible{
  transform:translateY(-1px)!important;
  border-color:rgba(255,134,218,.48)!important;
  outline:none!important;
  box-shadow:0 8px 22px rgba(73,40,143,.20),0 0 18px rgba(255,91,199,.10)!important;
}
body.cmc-home-page .showcase-volume{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  color:#9dadd1!important;
  font-size:11px!important;
  font-weight:800!important;
}
body.cmc-home-page .showcase-volume input{
  width:110px!important;
  accent-color:#b16cff!important;
}

body.cmc-home-page .showcase-proof{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin:18px 0 14px!important;
}
body.cmc-home-page .showcase-proof span{
  display:inline-flex!important;
  align-items:center!important;
  min-height:30px!important;
  padding:0 11px!important;
  border:1px solid rgba(124,211,255,.12)!important;
  border-radius:999px!important;
  background:rgba(35,129,176,.06)!important;
  color:#b8c9e9!important;
  font-size:10px!important;
  font-weight:850!important;
  letter-spacing:.025em!important;
}
body.cmc-home-page .showcase-proof span::before{
  content:"✓";
  margin-right:6px;
  color:#72ddff;
  font-size:10px;
  font-weight:950;
}

body.cmc-home-page .showcase-offer{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:22px;
  align-items:center;
  margin:0 0 16px;
  padding:18px 20px;
  border:1px solid rgba(255,130,215,.18);
  border-radius:24px;
  background:radial-gradient(circle at 86% 18%,rgba(255,83,195,.10),transparent 34%),linear-gradient(145deg,rgba(18,28,70,.82),rgba(35,20,73,.68));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055);
}
body.cmc-home-page .showcase-offer-copy>span{
  display:block;
  margin-bottom:5px;
  color:#ff91d7;
  font-size:10px;
  font-weight:950;
  letter-spacing:.12em;
}
body.cmc-home-page .showcase-offer-copy>strong{
  display:block;
  color:#fff;
  font-size:clamp(19px,2vw,25px);
  line-height:1.15;
}
body.cmc-home-page .showcase-offer-copy>strong b{color:#ff99dc;font-weight:950}
body.cmc-home-page .showcase-offer-copy p{
  max-width:650px;
  margin:8px 0 0!important;
  color:#bcc8e4!important;
  font-size:13px!important;
  line-height:1.5!important;
}
body.cmc-home-page .showcase-offer-price{
  min-width:108px;
  padding:12px 15px;
  border-left:1px solid rgba(255,255,255,.09);
  text-align:right;
}
body.cmc-home-page .showcase-offer-price small{
  display:block;
  color:#9fadd0;
  font-size:10px;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.08em;
}
body.cmc-home-page .showcase-offer-price b{
  display:block;
  margin-top:1px;
  background:linear-gradient(90deg,#ff72d0,#a874ff,#66dfff);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  font-size:31px;
  line-height:1;
  font-weight:950;
}

body.cmc-home-page .showcase-cta-row{
  display:grid!important;
  grid-template-columns:minmax(190px,1fr) minmax(190px,1fr)!important;
  gap:10px!important;
}
body.cmc-home-page .showcase-cta-primary,
body.cmc-home-page .showcase-cta-secondary{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:50px!important;
  padding:0 18px!important;
  border-radius:16px!important;
  text-align:center!important;
  font-weight:950!important;
  letter-spacing:.035em!important;
  text-decoration:none!important;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease!important;
}
body.cmc-home-page .showcase-cta-primary{
  border:1px solid rgba(255,145,218,.52)!important;
  background:linear-gradient(135deg,#cc3ba2,#8c4adf 58%,#536ee9)!important;
  color:#fff!important;
  box-shadow:0 10px 28px rgba(111,48,180,.24),inset 0 1px 0 rgba(255,255,255,.18)!important;
}
body.cmc-home-page .showcase-cta-secondary{
  border:1px solid rgba(153,166,255,.20)!important;
  background:rgba(11,20,52,.62)!important;
  color:#dce5ff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045)!important;
}
body.cmc-home-page .showcase-cta-primary:hover,
body.cmc-home-page .showcase-cta-primary:focus-visible,
body.cmc-home-page .showcase-cta-secondary:hover,
body.cmc-home-page .showcase-cta-secondary:focus-visible{
  transform:translateY(-2px)!important;
  outline:none!important;
}
body.cmc-home-page .showcase-cta-primary:hover,
body.cmc-home-page .showcase-cta-primary:focus-visible{
  box-shadow:0 14px 34px rgba(111,48,180,.32),0 0 24px rgba(255,91,199,.15),inset 0 1px 0 rgba(255,255,255,.20)!important;
}
body.cmc-home-page .showcase-cta-secondary:hover,
body.cmc-home-page .showcase-cta-secondary:focus-visible{
  border-color:rgba(171,154,255,.38)!important;
  box-shadow:0 10px 26px rgba(16,12,58,.24),inset 0 1px 0 rgba(255,255,255,.07)!important;
}

@media(max-width:700px){
  body.cmc-home-page .showcase-song-overline{font-size:10px!important;letter-spacing:.08em!important}
  body.cmc-home-page .showcase-player{grid-template-columns:78px minmax(0,1fr)!important;gap:14px!important;padding:16px!important}
  body.cmc-home-page .home-showcase-play{width:68px!important;height:68px!important;font-size:25px!important}
  body.cmc-home-page .showcase-listen-actions{align-items:stretch!important;flex-direction:column!important}
  body.cmc-home-page .showcase-volume{justify-content:space-between!important}
  body.cmc-home-page .showcase-volume input{width:min(46vw,180px)!important}
  body.cmc-home-page .showcase-offer{grid-template-columns:1fr;gap:12px}
  body.cmc-home-page .showcase-offer-price{border-left:0;border-top:1px solid rgba(255,255,255,.08);padding:12px 0 0;text-align:left}
  body.cmc-home-page .showcase-cta-row{grid-template-columns:1fr!important}
}
@media(max-width:460px){
  body.cmc-home-page .showcase-player{grid-template-columns:1fr!important;text-align:center!important}
  body.cmc-home-page .home-showcase-play{margin:0 auto 4px!important}
  body.cmc-home-page .showcase-player-meta,
  body.cmc-home-page .showcase-player-time{text-align:left!important}
  body.cmc-home-page .showcase-proof span{width:100%!important;justify-content:center!important}
}
@media(prefers-reduced-motion:reduce){
  body.cmc-home-page .home-showcase-play,
  body.cmc-home-page .showcase-refrain,
  body.cmc-home-page .showcase-cta-primary,
  body.cmc-home-page .showcase-cta-secondary{transition:none!important}
  body.cmc-home-page .home-showcase-play::before{animation:none!important}
}


/* source: home-video-refinement-2026.css */
/* =========================================================
   CRÉE MA CHANSON — HOME VIDEO REFINEMENT 2026
   Carte vidéo commerciale de l'accueil uniquement.
   ========================================================= */

body.cmc-home-page .home-showcase-grid{
  align-items:stretch!important;
}

body.cmc-home-page .showcase-video-card{
  position:relative;
  min-width:0;
  overflow:hidden!important;
  border:1px solid rgba(188,171,255,.22)!important;
  border-radius:30px!important;
  background:
    radial-gradient(circle at 12% 0,rgba(86,126,255,.11),transparent 36%),
    linear-gradient(155deg,rgba(12,23,61,.92),rgba(31,19,70,.84))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 24px 64px rgba(2,5,24,.28)!important;
}

body.cmc-home-page .showcase-card-kicker{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  min-width:0;
  margin:0!important;
  padding:16px 18px!important;
  border-bottom:1px solid rgba(255,255,255,.065)!important;
  color:#e8edff!important;
  font-size:11px!important;
  font-weight:950!important;
  letter-spacing:.10em!important;
  line-height:1.35!important;
  overflow-wrap:anywhere;
}

body.cmc-home-page .showcase-dot{
  width:8px!important;
  height:8px!important;
  flex:0 0 8px!important;
  border-radius:50%!important;
  background:#ff63c9!important;
  box-shadow:0 0 0 4px rgba(255,99,201,.09),0 0 15px rgba(255,99,201,.48)!important;
}

body.cmc-home-page .showcase-video-frame{
  position:relative!important;
  width:100%!important;
  aspect-ratio:16/9!important;
  overflow:hidden!important;
  background:#060d24!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.025)!important;
}

body.cmc-home-page .showcase-video-frame::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(to bottom,transparent 68%,rgba(5,10,28,.25));
  box-shadow:inset 0 -1px 0 rgba(255,255,255,.04);
}

body.cmc-home-page .showcase-video{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  background:#060d24!important;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
}

body.cmc-home-page .showcase-video:focus-visible{
  outline:2px solid rgba(255,132,216,.95)!important;
  outline-offset:-4px!important;
}

body.cmc-home-page .showcase-video-copy{
  display:grid!important;
  gap:7px!important;
  min-width:0;
  padding:20px 20px 22px!important;
}

body.cmc-home-page .showcase-video-copy strong{
  color:#fff!important;
  font-size:clamp(18px,2vw,23px)!important;
  line-height:1.22!important;
  letter-spacing:-.015em!important;
  overflow-wrap:anywhere;
}

body.cmc-home-page .showcase-video-copy span{
  color:#bac6e1!important;
  font-size:13px!important;
  line-height:1.58!important;
  overflow-wrap:anywhere;
}

@media(max-width:900px){
  body.cmc-home-page .home-showcase-grid{
    grid-template-columns:1fr!important;
  }
}

@media(max-width:700px){
  body.cmc-home-page .showcase-video-card{
    border-radius:24px!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 16px 38px rgba(2,5,24,.20)!important;
  }
  body.cmc-home-page .showcase-card-kicker{padding:13px 14px!important;font-size:10px!important;letter-spacing:.08em!important}
  body.cmc-home-page .showcase-video-copy{padding:17px 16px 19px!important}
}

@media(max-width:460px){
  body.cmc-home-page .showcase-video-card{border-radius:20px!important}
  body.cmc-home-page .showcase-video-copy strong{font-size:18px!important}
  body.cmc-home-page .showcase-video-copy span{font-size:12.5px!important}
}

@media(max-width:360px){
  body.cmc-home-page .showcase-card-kicker{padding:11px 12px!important;font-size:9.5px!important;letter-spacing:.06em!important}
  body.cmc-home-page .showcase-video-copy{padding:15px 13px 17px!important}
  body.cmc-home-page .showcase-video-copy strong{font-size:17px!important}
  body.cmc-home-page .showcase-video-copy span{font-size:12px!important}
}

@media(forced-colors:active){
  body.cmc-home-page .showcase-video-card,
  body.cmc-home-page .showcase-video-frame{
    border:1px solid CanvasText!important;
  }
  body.cmc-home-page .showcase-video:focus-visible{
    outline:2px solid Highlight!important;
    outline-offset:-4px!important;
  }
  body.cmc-home-page .showcase-video-frame::after{
    display:none!important;
  }
}

@media(prefers-reduced-motion:reduce){
  body.cmc-home-page .showcase-video{scroll-behavior:auto!important}
}


/* source: home-sections-refinement-2026.css */
/* =========================================================
   CRÉE MA CHANSON — HOME SECTIONS REFINEMENT 2026
   Méthode / réalisations / tarifs de l'accueil.
   ========================================================= */

body.cmc-home-page :is(#occasions,#tarifs,#avis){
  scroll-margin-top:24px;
}

body.cmc-home-page .home-realisations-link .realisations-teaser{
  position:relative;
  overflow:hidden;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:28px!important;
  align-items:center!important;
  padding:clamp(24px,4vw,38px)!important;
  border:1px solid rgba(181,165,255,.18)!important;
  border-radius:30px!important;
  background:
    radial-gradient(circle at 88% 12%,rgba(255,91,199,.09),transparent 30%),
    linear-gradient(155deg,rgba(14,27,68,.82),rgba(31,21,69,.70))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 22px 52px rgba(3,6,25,.20)!important;
}

body.cmc-home-page .home-realisations-link .realisations-teaser>div{
  min-width:0;
}

body.cmc-home-page .home-realisations-link .teaser-note{
  display:grid!important;
  place-items:center!important;
  width:42px!important;
  height:42px!important;
  margin-bottom:14px!important;
  border:1px solid rgba(255,130,215,.22)!important;
  border-radius:50%!important;
  background:linear-gradient(145deg,rgba(255,91,199,.12),rgba(139,98,255,.13))!important;
  color:#ff93d8!important;
  font-size:20px!important;
  box-shadow:0 0 22px rgba(255,91,199,.08)!important;
}

body.cmc-home-page .home-realisations-link .script-title{
  margin:7px 0 10px!important;
  font-size:clamp(31px,4.3vw,48px)!important;
  line-height:1.06!important;
  letter-spacing:-.03em!important;
  overflow-wrap:anywhere;
}

body.cmc-home-page .home-realisations-link .realisations-teaser p:not(.eyebrow){
  max-width:760px;
  margin:0!important;
  color:#c6d0e7!important;
  font-size:15px!important;
  line-height:1.68!important;
  overflow-wrap:anywhere;
}

body.cmc-home-page .home-realisations-link .teaser-btn{
  min-width:230px!important;
  text-align:center!important;
  white-space:normal!important;
  overflow-wrap:anywhere;
}

body.cmc-home-page .home-price-compact .home-price-card{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  gap:24px!important;
  align-items:center!important;
  padding:clamp(24px,4vw,36px)!important;
  border:1px solid rgba(255,132,216,.19)!important;
  border-radius:30px!important;
  background:
    radial-gradient(circle at 92% 12%,rgba(255,91,199,.11),transparent 30%),
    linear-gradient(150deg,rgba(17,30,73,.88),rgba(36,22,76,.76))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 24px 58px rgba(3,6,25,.22)!important;
}

body.cmc-home-page .home-price-compact .home-price-note{
  display:grid!important;
  place-items:center!important;
  width:54px!important;
  height:54px!important;
  border:1px solid rgba(255,132,216,.24)!important;
  border-radius:18px!important;
  background:linear-gradient(145deg,rgba(255,91,199,.12),rgba(139,98,255,.15))!important;
  color:#ff91d7!important;
  font-size:24px!important;
}

body.cmc-home-page .home-price-copy{
  min-width:0;
}

body.cmc-home-page .home-price-copy h2{
  margin:6px 0 7px!important;
  color:#fff!important;
  font-size:clamp(25px,3vw,34px)!important;
  line-height:1.1!important;
  letter-spacing:-.025em!important;
  overflow-wrap:anywhere;
}

body.cmc-home-page .home-price-copy>p:not(.eyebrow){
  margin:0 0 7px!important;
  color:#c9d2e8!important;
  line-height:1.55!important;
  overflow-wrap:anywhere;
}

body.cmc-home-page .home-price-copy small{
  display:block;
  color:#94a5c9!important;
  line-height:1.45!important;
  overflow-wrap:anywhere;
}

body.cmc-home-page .home-price-action{
  min-width:0;
  width:auto;
  padding-left:24px;
  border-left:1px solid rgba(255,255,255,.09);
  text-align:right;
}

body.cmc-home-page .home-price-action>span{
  display:block;
  color:#9fadd0!important;
  font-size:10px!important;
  font-weight:850!important;
  text-transform:uppercase;
  letter-spacing:.08em;
}

body.cmc-home-page .home-price-action>strong{
  display:block;
  margin:3px 0 12px!important;
  background:linear-gradient(90deg,#ff72d0,#a874ff,#66dfff);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent!important;
  font-size:clamp(34px,4vw,44px)!important;
  line-height:1!important;
  font-weight:950!important;
  overflow-wrap:anywhere;
}

body.cmc-home-page :is(.home-realisations-link .teaser-btn,.home-price-action .price-btn){
  -webkit-tap-highlight-color:transparent;
  touch-action:manipulation;
}

body.cmc-home-page :is(.home-realisations-link .teaser-btn,.home-price-action .price-btn):active{
  transform:translateY(0)!important;
}

@media(max-width:860px){
  body.cmc-home-page .home-realisations-link .realisations-teaser{
    grid-template-columns:1fr!important;
    gap:20px!important;
  }
  body.cmc-home-page .home-realisations-link .teaser-btn{
    width:100%!important;
    min-width:0!important;
  }
  body.cmc-home-page .home-price-compact .home-price-card{
    grid-template-columns:auto minmax(0,1fr)!important;
  }
  body.cmc-home-page .home-price-action{
    grid-column:1/-1;
    padding:18px 0 0!important;
    border-left:0!important;
    border-top:1px solid rgba(255,255,255,.09);
    text-align:left!important;
  }
  body.cmc-home-page .home-price-action .price-btn{width:100%!important}
}

@media(max-width:560px){
  body.cmc-home-page .home-realisations-link .realisations-teaser,
  body.cmc-home-page .home-price-compact .home-price-card{
    border-radius:22px!important;
    padding:20px 16px!important;
  }
  body.cmc-home-page .home-realisations-link .script-title{
    font-size:clamp(28px,9vw,38px)!important;
  }
  body.cmc-home-page .home-price-compact .home-price-card{
    grid-template-columns:1fr!important;
    gap:16px!important;
  }
  body.cmc-home-page .home-price-compact .home-price-note{
    width:46px!important;
    height:46px!important;
    border-radius:15px!important;
  }
  body.cmc-home-page .home-price-action{
    grid-column:1;
  }
}

@media(max-width:360px){
  body.cmc-home-page .home-realisations-link .realisations-teaser,
  body.cmc-home-page .home-price-compact .home-price-card{
    padding:17px 13px!important;
    border-radius:19px!important;
  }
  body.cmc-home-page .home-realisations-link .script-title{font-size:clamp(26px,9.2vw,34px)!important}
  body.cmc-home-page .home-realisations-link .realisations-teaser p:not(.eyebrow),
  body.cmc-home-page .home-price-copy>p:not(.eyebrow){font-size:14px!important}
  body.cmc-home-page .home-price-action>strong{font-size:34px!important}
}

@media(pointer:coarse){
  body.cmc-home-page :is(.home-realisations-link .teaser-btn,.home-price-action .price-btn){
    min-height:48px!important;
  }
}

@media(forced-colors:active){
  body.cmc-home-page :is(.home-realisations-link .realisations-teaser,.home-price-compact .home-price-card){
    border:1px solid CanvasText!important;
  }
  body.cmc-home-page :is(.home-realisations-link .teaser-btn,.home-price-action .price-btn):focus-visible{
    outline:2px solid Highlight!important;
    outline-offset:3px!important;
  }
  body.cmc-home-page .home-price-action>strong{
    color:CanvasText!important;
    background:none!important;
  }
}

@media(prefers-reduced-motion:reduce){
  body.cmc-home-page .home-realisations-link .teaser-btn,
  body.cmc-home-page .home-price-action .price-btn{
    transition:none!important;
  }
}


/* source: home-occasions-refinement-2026.css */
/* =========================================================
   CRÉE MA CHANSON — HOME OCCASIONS REFINEMENT 2026
   Grille des occasions sur l'accueil.
   ========================================================= */

body.cmc-home-page .moments .wow-title{
  max-width:900px;
  margin:0 auto!important;
  text-align:center!important;
  font-size:clamp(34px,5.2vw,56px)!important;
  line-height:1.04!important;
  letter-spacing:-.035em!important;
  overflow-wrap:anywhere;
}

body.cmc-home-page .moments .wow-title span{
  display:block;
}

body.cmc-home-page .moments .wow-heart{
  margin:8px auto 4px!important;
  color:#ff8fd5!important;
  font-size:24px!important;
  line-height:1!important;
  text-align:center!important;
  text-shadow:0 0 18px rgba(255,101,204,.22);
}

body.cmc-home-page .moments .section-lead{
  max-width:680px;
  margin:0 auto 26px!important;
  color:#aebbd8!important;
  font-size:15px!important;
  line-height:1.6!important;
  text-align:center!important;
  overflow-wrap:anywhere;
}

body.cmc-home-page .moments .occasion-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important;
}

body.cmc-home-page .moments .occasion{
  min-width:0;
  overflow:hidden!important;
  border:1px solid rgba(180,164,255,.16)!important;
  border-radius:24px!important;
  background:linear-gradient(155deg,rgba(14,27,68,.80),rgba(30,21,68,.70))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 16px 36px rgba(3,6,25,.16)!important;
  text-decoration:none!important;
  -webkit-tap-highlight-color:transparent;
  touch-action:manipulation;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease!important;
}

body.cmc-home-page .moments .occasion:hover,
body.cmc-home-page .moments .occasion:focus-visible{
  transform:translateY(-3px)!important;
  border-color:rgba(255,119,210,.44)!important;
  outline:none!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 22px 44px rgba(3,6,25,.22),0 0 22px rgba(255,91,199,.08)!important;
}

body.cmc-home-page .moments .occasion:active{
  transform:translateY(-1px)!important;
}

body.cmc-home-page .moments .occasion-media{
  position:relative;
  aspect-ratio:16/10!important;
  overflow:hidden!important;
  background:#09132f!important;
}

body.cmc-home-page .moments .occasion-media::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(to bottom,transparent 54%,rgba(6,12,34,.28));
}

body.cmc-home-page .moments .occasion-media img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  transition:transform .28s ease,filter .28s ease!important;
}

body.cmc-home-page .moments .occasion:hover .occasion-media img,
body.cmc-home-page .moments .occasion:focus-visible .occasion-media img{
  transform:scale(1.025)!important;
  filter:saturate(1.05) contrast(1.02)!important;
}

body.cmc-home-page .moments .occasion-copy{
  display:grid!important;
  gap:6px!important;
  min-width:0;
  padding:17px 18px 19px!important;
}

body.cmc-home-page .moments .occasion-copy b{
  color:#fff!important;
  font-size:13px!important;
  font-weight:950!important;
  letter-spacing:.055em!important;
  overflow-wrap:anywhere;
}

body.cmc-home-page .moments .occasion-copy small{
  color:#aebbd8!important;
  font-size:12.5px!important;
  line-height:1.5!important;
  overflow-wrap:anywhere;
}

@media(max-width:900px){
  body.cmc-home-page .moments .occasion-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:14px!important;
  }
}

@media(max-width:560px){
  body.cmc-home-page .moments .wow-title{
    font-size:clamp(30px,10vw,40px)!important;
  }
  body.cmc-home-page .moments .section-lead{
    margin-bottom:20px!important;
    font-size:14px!important;
  }
  body.cmc-home-page .moments .occasion-grid{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  body.cmc-home-page .moments .occasion{
    border-radius:20px!important;
  }
  body.cmc-home-page .moments .occasion-media{
    aspect-ratio:16/9!important;
  }
  body.cmc-home-page .moments .occasion-copy{
    padding:15px 15px 17px!important;
  }
}

@media(max-width:360px){
  body.cmc-home-page .moments .wow-title{font-size:clamp(28px,9.5vw,34px)!important}
  body.cmc-home-page .moments .wow-heart{font-size:21px!important}
  body.cmc-home-page .moments .section-lead{font-size:13.5px!important;margin-bottom:17px!important}
  body.cmc-home-page .moments .occasion{border-radius:18px!important}
  body.cmc-home-page .moments .occasion-copy{padding:13px 13px 15px!important}
  body.cmc-home-page .moments .occasion-copy b{font-size:12.5px!important;letter-spacing:.04em!important}
  body.cmc-home-page .moments .occasion-copy small{font-size:12px!important}
}

@media(hover:none){
  body.cmc-home-page .moments .occasion:hover{
    transform:none!important;
  }
  body.cmc-home-page .moments .occasion:hover .occasion-media img{
    transform:none!important;
  }
}

@media(pointer:coarse){
  body.cmc-home-page .moments .occasion:active{
    transform:scale(.995)!important;
  }
}

@media(forced-colors:active){
  body.cmc-home-page .moments .occasion{
    border:1px solid CanvasText!important;
  }
  body.cmc-home-page .moments .occasion:focus-visible{
    outline:2px solid Highlight!important;
    outline-offset:3px!important;
  }
}

@media(prefers-reduced-motion:reduce){
  body.cmc-home-page .moments .occasion,
  body.cmc-home-page .moments .occasion-media img{
    transition:none!important;
  }
}


/* source: home-reviews-refinement-2026.css */
/* =========================================================
   CRÉE MA CHANSON — HOME REVIEWS REFINEMENT 2026
   Carrousel d'avis de l'accueil.
   ========================================================= */

body.cmc-home-page .testimonial>.home-shell>.eyebrow{
  display:block!important;
  margin:0 0 8px!important;
  text-align:center!important;
}

body.cmc-home-page .testimonial>.home-shell>.script-title{
  max-width:820px;
  margin:0 auto!important;
  text-align:center!important;
  font-size:clamp(34px,5vw,52px)!important;
  line-height:1.05!important;
  letter-spacing:-.035em!important;
  overflow-wrap:anywhere;
}

body.cmc-home-page .testimonial .reviews-carousel{
  max-width:860px!important;
  margin:24px auto 0!important;
}

body.cmc-home-page .testimonial .reviews-carousel-stage{
  position:relative!important;
  min-height:220px!important;
}

body.cmc-home-page .testimonial .review-card{
  min-width:0;
  padding:clamp(24px,4vw,34px)!important;
  border:1px solid rgba(183,168,255,.18)!important;
  border-radius:28px!important;
  background:
    radial-gradient(circle at 88% 8%,rgba(255,91,199,.08),transparent 32%),
    linear-gradient(155deg,rgba(14,27,68,.86),rgba(31,21,69,.74))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 20px 48px rgba(3,6,25,.20)!important;
  text-align:center!important;
}

body.cmc-home-page .testimonial .review-card .stars{
  margin-bottom:14px!important;
  color:#ffd76e!important;
  font-size:19px!important;
  letter-spacing:.09em!important;
  text-shadow:0 0 16px rgba(255,204,81,.16)!important;
}

body.cmc-home-page .testimonial .review-card p{
  max-width:700px;
  margin:0 auto 16px!important;
  color:#e4e9f7!important;
  font-size:clamp(15px,2.2vw,18px)!important;
  line-height:1.7!important;
  overflow-wrap:anywhere;
}

body.cmc-home-page .testimonial .review-card strong{
  color:#fff!important;
  font-size:14px!important;
  font-weight:900!important;
  overflow-wrap:anywhere;
}

body.cmc-home-page .testimonial .reviews-carousel-controls{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  margin-top:16px!important;
}

body.cmc-home-page .testimonial .reviews-carousel-controls button,
body.cmc-home-page .testimonial .reviews-carousel-dots button{
  -webkit-tap-highlight-color:transparent;
  touch-action:manipulation;
}

body.cmc-home-page .testimonial .reviews-carousel-controls button:disabled,
body.cmc-home-page .testimonial .reviews-carousel-controls button[aria-disabled="true"]{
  opacity:.42!important;
  cursor:not-allowed!important;
  transform:none!important;
  filter:saturate(.55)!important;
  box-shadow:none!important;
}

body.cmc-home-page .testimonial .reviews-carousel-dots{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex-wrap:wrap!important;
  gap:1px!important;
  min-width:0;
  min-height:30px;
}

body.cmc-home-page .testimonial .reviews-carousel-dots button{
  position:relative!important;
  width:28px!important;
  min-width:28px!important;
  height:28px!important;
  min-height:28px!important;
  padding:0!important;
  border:0!important;
  border-radius:50%!important;
  background:transparent!important;
  box-shadow:none!important;
  cursor:pointer!important;
}

body.cmc-home-page .testimonial .reviews-carousel-dots button::before{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:8px;
  height:8px;
  border-radius:50%;
  background:rgba(180,190,222,.32);
  transform:translate(-50%,-50%);
  transition:transform .18s ease,background .18s ease,box-shadow .18s ease;
}

body.cmc-home-page .testimonial .reviews-carousel-dots button.is-active::before,
body.cmc-home-page .testimonial .reviews-carousel-dots button[aria-current="true"]::before{
  transform:translate(-50%,-50%) scale(1.35);
  background:#ff72cf;
  box-shadow:0 0 10px rgba(255,101,204,.35);
}

body.cmc-home-page .testimonial .reviews-carousel-dots button:focus-visible{
  outline:2px solid rgba(255,132,216,.92)!important;
  outline-offset:1px!important;
}

body.cmc-home-page .testimonial .reviews-trust{
  max-width:720px;
  margin:18px auto 0!important;
  color:#9cabc9!important;
  font-size:12px!important;
  line-height:1.55!important;
  text-align:center!important;
  overflow-wrap:anywhere;
}

body.cmc-home-page .testimonial .reviews-trust a{
  color:#ff91d6!important;
  text-decoration-thickness:1px!important;
  text-underline-offset:3px!important;
}

@media(max-width:560px){
  body.cmc-home-page .testimonial>.home-shell>.script-title{font-size:clamp(30px,10vw,40px)!important}
  body.cmc-home-page .testimonial .reviews-carousel-stage{min-height:250px!important}
  body.cmc-home-page .testimonial .review-card{padding:20px 16px!important;border-radius:22px!important}
  body.cmc-home-page .testimonial .reviews-carousel-controls{gap:6px!important}
}

@media(pointer:coarse){
  body.cmc-home-page .testimonial .reviews-carousel-dots button{
    width:36px!important;
    min-width:36px!important;
    height:36px!important;
    min-height:36px!important;
  }
}

@media(max-width:360px){
  body.cmc-home-page .testimonial>.home-shell>.script-title{font-size:clamp(28px,9.4vw,34px)!important}
  body.cmc-home-page .testimonial .reviews-carousel{margin-top:18px!important}
  body.cmc-home-page .testimonial .reviews-carousel-stage{min-height:270px!important}
  body.cmc-home-page .testimonial .review-card{padding:17px 13px!important;border-radius:19px!important}
  body.cmc-home-page .testimonial .review-card .stars{font-size:17px!important;letter-spacing:.06em!important}
  body.cmc-home-page .testimonial .review-card p{font-size:14px!important;line-height:1.65!important}
  body.cmc-home-page .testimonial .reviews-trust{font-size:11.5px!important}
}

@media(forced-colors:active){
  body.cmc-home-page .testimonial .review-card,
  body.cmc-home-page .testimonial .reviews-carousel-controls button,
  body.cmc-home-page .testimonial .reviews-carousel-dots button:focus-visible{
    border:1px solid CanvasText!important;
  }
}

@media(prefers-reduced-motion:reduce){
  body.cmc-home-page .testimonial .reviews-carousel-dots button::before{
    transition:none!important;
  }
}


/* source: home-mobile-performance-2026.css */
/* =========================================================
   CRÉE MA CHANSON — HOME MOBILE PERFORMANCE 2026
   Même direction visuelle, effets GPU allégés sur petits écrans tactiles.
   ========================================================= */

@media(max-width:560px){
  body.cmc-home-page :is(.showcase-song-card,.showcase-video-card,.realisations-teaser,.home-price-card,.occasion,.review-card){
    box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 12px 28px rgba(2,5,24,.16)!important;
  }

  body.cmc-home-page .home-showcase-play::after{
    inset:-13px!important;
    filter:blur(3px)!important;
    opacity:.58!important;
  }

  body.cmc-home-page .home-showcase-play::before{
    filter:saturate(1.28) brightness(1.10) drop-shadow(0 0 5px rgba(255,48,193,.32)) drop-shadow(0 0 6px rgba(55,220,255,.22))!important;
  }
}

/* Newsletter : neutralisation ferme de l'ancien champ imbriqué */
body.cmc-home-page #newsletter .newsletter-form .newsletter-email-wrap::before,
body.cmc-home-page #newsletter .newsletter-form .newsletter-email-wrap::after{
  content:none!important;
  display:none!important;
  background:none!important;
  box-shadow:none!important;
  border:0!important;
}

body.cmc-home-page #newsletter .newsletter-form .newsletter-email-wrap input[type="email"],
body.cmc-home-page #newsletter .newsletter-form .newsletter-email-wrap input[type="email"]:hover,
body.cmc-home-page #newsletter .newsletter-form .newsletter-email-wrap input[type="email"]:focus,
body.cmc-home-page #newsletter .newsletter-form .newsletter-email-wrap input[type="email"]:active{
  position:static!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  outline:0!important;
  border-radius:0!important;
  background:none!important;
  background-color:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  filter:none!important;
  -webkit-appearance:none!important;
  appearance:none!important;
}

body.cmc-home-page #newsletter .newsletter-form .newsletter-email-wrap input[type="email"]:-webkit-autofill,
body.cmc-home-page #newsletter .newsletter-form .newsletter-email-wrap input[type="email"]:-webkit-autofill:hover,
body.cmc-home-page #newsletter .newsletter-form .newsletter-email-wrap input[type="email"]:-webkit-autofill:focus{
  -webkit-text-fill-color:#fff!important;
  -webkit-box-shadow:0 0 0 1000px transparent inset!important;
  box-shadow:0 0 0 1000px transparent inset!important;
  transition:background-color 9999s ease-out 0s!important;
}

@media(pointer:coarse){
  body.cmc-home-page .home-showcase-play,
  body.cmc-home-page .showcase-refrain,
  body.cmc-home-page .showcase-progress,
  body.cmc-home-page .showcase-volume input[type="range"]{
    -webkit-tap-highlight-color:transparent;
    touch-action:manipulation;
  }

  body.cmc-home-page .showcase-progress::-webkit-slider-thumb,
  body.cmc-home-page .showcase-volume input[type="range"]::-webkit-slider-thumb{
    width:22px!important;
    height:22px!important;
  }

  body.cmc-home-page .showcase-progress::-moz-range-thumb,
  body.cmc-home-page .showcase-volume input[type="range"]::-moz-range-thumb{
    width:20px!important;
    height:20px!important;
  }
}

@media(max-width:420px) and (pointer:coarse){
  body.cmc-home-page .home-showcase-play::before{
    animation-duration:7s!important;
  }

  body.cmc-home-page :is(.showcase-song-card,.showcase-video-card,.realisations-teaser,.home-price-card,.occasion,.review-card){
    box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 9px 20px rgba(2,5,24,.13)!important;
  }
}

@media(forced-colors:active){
  body.cmc-home-page :is(.home-showcase-play,.showcase-refrain,.showcase-progress,.showcase-volume input[type="range"]){
    border:1px solid CanvasText!important;
    forced-color-adjust:auto;
  }
  body.cmc-home-page :is(.home-showcase-play,.showcase-refrain,.showcase-progress,.showcase-volume input[type="range"]):focus-visible{
    outline:2px solid Highlight!important;
    outline-offset:3px!important;
  }
}

@media(prefers-reduced-motion:reduce){
  body.cmc-home-page .home-showcase-play::before{
    animation:none!important;
  }
  body.cmc-home-page :is(.home-showcase-play,.showcase-refrain,.showcase-progress,.showcase-volume input[type="range"]){
    transition:none!important;
  }
}


/* source: home-accessibility-final-2026.css */
/* =========================================================
   CRÉE MA CHANSON — HOME ACCESSIBILITY FINAL 2026
   Focus, tactile et contraste des CTA / player / offre commerciale.
   ========================================================= */

body.cmc-home-page :is(.home-showcase-play,.showcase-refrain,.showcase-cta-primary,.showcase-cta-secondary):focus-visible{
  outline:2px solid rgba(255,132,216,.96)!important;
  outline-offset:3px!important;
}

body.cmc-home-page :is(.showcase-cta-primary,.showcase-cta-secondary,.showcase-refrain,.home-showcase-play){
  -webkit-tap-highlight-color:transparent;
  touch-action:manipulation;
}

body.cmc-home-page :is(.showcase-cta-primary,.showcase-cta-secondary):active{
  transform:translateY(0)!important;
}

body.cmc-home-page .showcase-offer-copy,
body.cmc-home-page .showcase-offer-price,
body.cmc-home-page .showcase-cta-row{
  min-width:0;
}

body.cmc-home-page .showcase-offer-copy :is(span,strong,p),
body.cmc-home-page .showcase-offer-price :is(small,b),
body.cmc-home-page .showcase-proof span{
  overflow-wrap:anywhere;
}

/* =========================================================
   FINAL LAYOUT PASS — SHOWCASE SONG
   Empêche la composition de se tasser entre 460 et 760 px.
   ========================================================= */
@media(max-width:760px){
  body.cmc-home-page .showcase-song-card{
    display:block!important;
    padding:20px!important;
  }

  body.cmc-home-page .showcase-song-cover{
    width:min(210px,52vw)!important;
    max-width:210px!important;
    margin:0 auto 22px!important;
  }

  body.cmc-home-page .showcase-song-cover img{
    width:100%!important;
    aspect-ratio:1/1!important;
    object-fit:cover!important;
    border-radius:24px!important;
  }

  body.cmc-home-page .showcase-song-content{
    width:100%!important;
    min-width:0!important;
    padding:0!important;
  }

  body.cmc-home-page .showcase-song-overline{
    margin-left:auto!important;
    margin-right:auto!important;
  }

  body.cmc-home-page .showcase-song-content h3,
  body.cmc-home-page .showcase-song-meta,
  body.cmc-home-page .showcase-song-description{
    text-align:center!important;
  }

  body.cmc-home-page .showcase-song-content h3{
    font-size:clamp(34px,8vw,48px)!important;
    line-height:1.02!important;
    margin-bottom:8px!important;
  }

  body.cmc-home-page .showcase-song-description{
    max-width:560px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  body.cmc-home-page .showcase-player{
    width:100%!important;
    margin-top:4px!important;
  }

  body.cmc-home-page .showcase-listen-actions{
    margin-top:14px!important;
  }

  body.cmc-home-page .showcase-proof{
    justify-content:center!important;
    margin:16px 0 18px!important;
  }

  body.cmc-home-page .showcase-offer{
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:18px!important;
    align-items:center!important;
    margin:0 0 16px!important;
    padding:18px!important;
  }

  body.cmc-home-page .showcase-offer-copy>span{
    margin-bottom:7px!important;
    line-height:1.35!important;
  }

  body.cmc-home-page .showcase-offer-copy>strong{
    font-size:20px!important;
    line-height:1.2!important;
  }

  body.cmc-home-page .showcase-offer-copy p{
    margin-top:9px!important;
  }

  body.cmc-home-page .showcase-offer-price{
    display:flex!important;
    min-width:118px!important;
    flex-direction:column!important;
    align-items:flex-end!important;
    justify-content:center!important;
    gap:5px!important;
    padding:10px 0 10px 18px!important;
    border-top:0!important;
    border-left:1px solid rgba(255,255,255,.10)!important;
    text-align:right!important;
  }

  body.cmc-home-page .showcase-offer-price small,
  body.cmc-home-page .showcase-offer-price b{
    margin:0!important;
    white-space:nowrap!important;
  }

  body.cmc-home-page .showcase-cta-row{
    grid-template-columns:1fr 1fr!important;
    gap:12px!important;
  }

  /* Header mobile : le menu desktop n’est plus compressé. */
  body.cmc-home-page .cmc-hero-home{
    min-height:0!important;
    padding:12px 12px 14px!important;
    overflow:visible!important;
  }

  body.cmc-home-page .cmc-hero-art{
    display:block!important;
    position:relative!important;
    inset:auto!important;
    width:min(100%,560px)!important;
    height:auto!important;
    max-height:170px!important;
    margin:0 auto 12px!important;
    object-fit:cover!important;
    object-position:center!important;
  }

  body.cmc-home-page .cmc-hero-nav{
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    max-width:620px!important;
    margin:0 auto!important;
    padding:0!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:9px!important;
    transform:none!important;
  }

  body.cmc-home-page .cmc-hero-nav .cmc-menu-item{
    position:relative!important;
    inset:auto!important;
    transform:none!important;
    width:100%!important;
    min-width:0!important;
    min-height:52px!important;
    margin:0!important;
    padding:9px 10px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:9px!important;
    border:1px solid rgba(161,140,255,.24)!important;
    border-radius:15px!important;
    background:linear-gradient(145deg,rgba(18,29,72,.94),rgba(35,24,78,.92))!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 8px 20px rgba(2,6,28,.14)!important;
    color:#f4f2ff!important;
    text-align:left!important;
    font-size:12px!important;
    line-height:1.2!important;
    white-space:normal!important;
  }

  body.cmc-home-page .cmc-hero-nav .cmc-menu-item>span:last-child{
    display:block!important;
    min-width:0!important;
    overflow:visible!important;
    text-overflow:clip!important;
    white-space:normal!important;
    opacity:1!important;
    visibility:visible!important;
  }

  body.cmc-home-page .cmc-hero-nav .cmc-menu-icon{
    flex:0 0 30px!important;
    width:30px!important;
    height:30px!important;
    min-width:30px!important;
    display:grid!important;
    place-items:center!important;
    font-size:16px!important;
  }
}

@media(max-width:520px){
  body.cmc-home-page .showcase-song-card{
    padding:16px!important;
  }

  body.cmc-home-page .showcase-song-cover{
    width:min(180px,56vw)!important;
    margin-bottom:18px!important;
  }

  body.cmc-home-page .showcase-player{
    grid-template-columns:72px minmax(0,1fr)!important;
    gap:12px!important;
    padding:14px!important;
    text-align:left!important;
  }

  body.cmc-home-page .home-showcase-play{
    width:62px!important;
    height:62px!important;
    margin:0!important;
  }

  body.cmc-home-page .showcase-listen-actions{
    padding:10px 12px!important;
  }

  body.cmc-home-page .showcase-proof span{
    width:auto!important;
    min-height:28px!important;
    padding:0 9px!important;
  }

  body.cmc-home-page .showcase-offer{
    grid-template-columns:1fr!important;
    gap:14px!important;
    padding:16px!important;
  }

  body.cmc-home-page .showcase-offer-copy{
    text-align:center!important;
  }

  body.cmc-home-page .showcase-offer-price{
    min-width:0!important;
    width:100%!important;
    flex-direction:row!important;
    align-items:baseline!important;
    justify-content:center!important;
    gap:8px!important;
    padding:13px 0 0!important;
    border-left:0!important;
    border-top:1px solid rgba(255,255,255,.10)!important;
    text-align:center!important;
  }

  body.cmc-home-page .showcase-offer-price small{
    font-size:11px!important;
  }

  body.cmc-home-page .showcase-offer-price b{
    font-size:30px!important;
  }

  body.cmc-home-page .showcase-cta-row{
    grid-template-columns:1fr!important;
  }

  body.cmc-home-page .showcase-cta-primary,
  body.cmc-home-page .showcase-cta-secondary{
    min-height:52px!important;
  }
}

@media(max-width:430px){
  body.cmc-home-page .cmc-hero-home{padding-left:9px!important;padding-right:9px!important}
  body.cmc-home-page .cmc-hero-nav{gap:7px!important}
  body.cmc-home-page .cmc-hero-nav .cmc-menu-item{
    min-height:50px!important;
    padding:8px!important;
    gap:7px!important;
    border-radius:13px!important;
    font-size:11px!important;
  }
  body.cmc-home-page .cmc-hero-nav .cmc-menu-icon{
    flex-basis:27px!important;
    width:27px!important;
    height:27px!important;
    min-width:27px!important;
    font-size:14px!important;
  }
}

/* =========================================================
   NEWSLETTER — CHAMP UNIQUE / DESIGN FINAL
   Neutralise les anciens styles d'input imbriqués.
   ========================================================= */
body.cmc-home-page .newsletter-form{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:18px!important;
  align-items:stretch!important;
  padding-right:24px!important;
}

body.cmc-home-page .newsletter-email-wrap{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  min-width:0!important;
  min-height:50px!important;
  margin:0!important;
  padding:0 16px!important;
  border:1px solid rgba(255,126,211,.52)!important;
  border-radius:18px!important;
  background:linear-gradient(135deg,rgba(36,25,86,.86),rgba(20,31,78,.86))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 10px 28px rgba(27,11,73,.16)!important;
}

body.cmc-home-page .newsletter-email-wrap>span[aria-hidden="true"]{
  flex:0 0 auto!important;
  color:#ffd2ef!important;
  font-size:18px!important;
  line-height:1!important;
}

body.cmc-home-page .newsletter-email-wrap input[type="email"]{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  outline:0!important;
  background:transparent!important;
  background-color:transparent!important;
  box-shadow:none!important;
  color:#fff!important;
  font:inherit!important;
  line-height:1.35!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}

body.cmc-home-page .newsletter-email-wrap input[type="email"]::placeholder{
  color:rgba(231,226,255,.62)!important;
  opacity:1!important;
}

body.cmc-home-page .newsletter-email-wrap:focus-within{
  border-color:rgba(255,156,224,.96)!important;
  box-shadow:0 0 0 3px rgba(255,104,205,.12),0 0 22px rgba(158,87,255,.20),inset 0 1px 0 rgba(255,255,255,.10)!important;
}

body.cmc-home-page .newsletter-form>button[type="submit"]{
  min-height:50px!important;
  margin:0!important;
  padding:0 20px!important;
  border:1px solid rgba(255,179,231,.55)!important;
  border-radius:18px!important;
  background:linear-gradient(135deg,#b353d5,#df5ca7 58%,#f07e9e)!important;
  color:#fff!important;
  box-shadow:0 10px 26px rgba(106,45,151,.22),inset 0 1px 0 rgba(255,255,255,.22)!important;
  font-weight:900!important;
  white-space:nowrap!important;
}

body.cmc-home-page .newsletter-form>button[type="submit"]:hover,
body.cmc-home-page .newsletter-form>button[type="submit"]:focus-visible{
  transform:translateY(-1px)!important;
  border-color:rgba(255,205,239,.88)!important;
  box-shadow:0 14px 30px rgba(106,45,151,.28),0 0 20px rgba(255,100,196,.14),inset 0 1px 0 rgba(255,255,255,.24)!important;
}

body.cmc-home-page .newsletter-hp{
  position:absolute!important;
  left:-9999px!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
}

@media(max-width:700px){
  body.cmc-home-page .newsletter-form{
    grid-template-columns:1fr!important;
    gap:12px!important;
    padding-right:0!important;
  }
  body.cmc-home-page .newsletter-form>button[type="submit"]{
    width:100%!important;
  }
}

@media(pointer:coarse){
  body.cmc-home-page :is(.showcase-cta-primary,.showcase-cta-secondary,.showcase-refrain){
    min-height:48px!important;
  }
}

@media(forced-colors:active){
  body.cmc-home-page :is(.showcase-song-card,.showcase-offer,.showcase-listen-actions,.showcase-proof span){
    border:1px solid CanvasText!important;
    background:Canvas!important;
    box-shadow:none!important;
  }

  body.cmc-home-page :is(.showcase-cta-primary,.showcase-cta-secondary,.showcase-refrain,.home-showcase-play){
    border:1px solid ButtonText!important;
    background:ButtonFace!important;
    color:ButtonText!important;
    box-shadow:none!important;
  }

  body.cmc-home-page :is(.home-showcase-play,.showcase-refrain,.showcase-cta-primary,.showcase-cta-secondary):focus-visible{
    outline:2px solid Highlight!important;
    outline-offset:3px!important;
  }

  body.cmc-home-page .showcase-offer-price b,
  body.cmc-home-page .showcase-offer-copy>strong b{
    color:CanvasText!important;
    background:none!important;
  }

  body.cmc-home-page :is(.showcase-song-description,.showcase-song-meta,.showcase-player-meta,.showcase-player-time,.showcase-volume,.showcase-proof span,.showcase-offer-copy>span,.showcase-offer-copy p,.showcase-offer-price small){
    color:CanvasText!important;
    text-shadow:none!important;
  }
}

@media(prefers-reduced-motion:reduce){
  body.cmc-home-page :is(.home-showcase-play,.showcase-refrain,.showcase-cta-primary,.showcase-cta-secondary){
    transition:none!important;
  }
}

