/* Bande-annonce du hors-série — styles entièrement préfixés. */
.lcdm-bahs{--lcdm-accent:#cea461;--lcdm-bg:#080e19;--lcdm-cream:#f5eee3;width:100%;max-width:100%;margin:0;box-sizing:border-box;isolation:isolate;font-family:Arial,Helvetica,sans-serif;color:var(--lcdm-cream)}
.lcdm-bahs *{box-sizing:border-box}
.lcdm-bahs button,.lcdm-bahs input{font:inherit}
.lcdm-bahs-shell{width:100%;position:relative;border:1px solid color-mix(in srgb,var(--lcdm-accent) 42%,#101723);background:#0a0e15;box-shadow:0 20px 56px rgba(0,0,0,.23);overflow:hidden}
.lcdm-bahs-screen{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;background:radial-gradient(circle at 50% 50%,#152436,#060a11 70%);min-height:215px}
.lcdm-bahs-canvas,.lcdm-bahs-vignette{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.lcdm-bahs-canvas{display:block;opacity:.95}
.lcdm-bahs-vignette{z-index:1;background:radial-gradient(ellipse at 50% 52%,transparent 0%,rgba(0,0,0,.06) 34%,rgba(0,0,0,.72) 100%),linear-gradient(0deg,rgba(0,0,0,.64),transparent 20%,transparent 85%,rgba(0,0,0,.42))}
.lcdm-bahs-brand{position:absolute;top:6.5%;left:5%;z-index:3;display:flex;align-items:center;gap:9px;font-size:clamp(7px,.92vw,12px);font-weight:700;letter-spacing:.25em;color:#e6d8bb;text-shadow:0 2px 9px #000;pointer-events:none}
.lcdm-bahs-brand-dot{font-size:1.75em;color:var(--lcdm-accent)}
.lcdm-bahs-brand-line{width:25px;height:1px;background:rgba(255,255,255,.4)}
.lcdm-bahs-corner{position:absolute;z-index:2;width:35px;height:35px;border-color:color-mix(in srgb,var(--lcdm-accent) 70%,transparent);border-style:solid;pointer-events:none;opacity:.5}
.lcdm-bahs-corner--tl{left:3%;top:5%;border-width:1px 0 0 1px}
.lcdm-bahs-corner--br{right:3%;bottom:6%;border-width:0 1px 1px 0}
.lcdm-bahs-ghost{position:absolute;bottom:15%;left:50%;transform:translateX(-50%);font-family:Georgia,serif;font-size:clamp(40px,8vw,120px);letter-spacing:clamp(18px,4vw,60px);color:rgba(217,196,152,.045);white-space:nowrap;pointer-events:none;z-index:1}
.lcdm-bahs-ghost span{font-size:.7em}
.lcdm-bahs-footmark{position:absolute;z-index:4;right:4.5%;bottom:5.5%;font-size:clamp(7px,.9vw,12px);color:#d2bea0;letter-spacing:.04em;opacity:.8;pointer-events:none}
.lcdm-bahs-sequence{position:absolute;inset:8% 9% 8%;z-index:2;display:flex;align-items:center;justify-content:center;text-align:center;pointer-events:none}
.lcdm-bahs-scene{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(9px,1.8vw,24px);opacity:0;visibility:hidden;transition:opacity .85s ease,visibility .85s ease;perspective:600px}
.lcdm-bahs-scene.is-current{opacity:1;visibility:visible}
.lcdm-bahs-eyebrow{font-weight:700;font-size:clamp(8px,1.18vw,15px);letter-spacing:.36em;color:var(--lcdm-accent);text-transform:uppercase;text-shadow:0 1px 20px #000}
.lcdm-bahs-headline{width:100%;max-width:1050px;margin:0!important;padding:0!important;font-family:'Playfair Display',Georgia,'Times New Roman',serif!important;font-weight:500!important;font-size:clamp(25px,5.1vw,78px)!important;line-height:1.12!important;letter-spacing:.045em!important;color:#fff8ec!important;text-shadow:0 4px 25px rgba(0,0,0,.88),0 0 58px rgba(205,152,75,.22)!important;overflow-wrap:break-word;text-wrap:balance;text-transform:uppercase}
.lcdm-bahs-subtitle{max-width:760px;margin:0!important;font-size:clamp(12px,1.7vw,25px)!important;line-height:1.5!important;letter-spacing:.05em;color:#e7dece!important;text-shadow:0 2px 16px #000}
.lcdm-bahs-scene-tag{font-size:clamp(8px,1vw,14px);letter-spacing:.25em;color:#dec99d;border-top:1px solid rgba(224,190,125,.46);padding-top:clamp(9px,1.3vw,18px);margin-top:clamp(6px,1.4vw,22px)}
.lcdm-bahs-scene.is-current .lcdm-bahs-eyebrow{animation:lcdm-bahs-slide .95s both}
.lcdm-bahs-scene.is-current .lcdm-bahs-headline{animation:lcdm-bahs-grand 1.5s cubic-bezier(.19,1,.22,1) .14s both}
.lcdm-bahs-scene.is-current .lcdm-bahs-subtitle{animation:lcdm-bahs-slide 1.2s ease 1.2s both}
.lcdm-bahs-scene.is-current .lcdm-bahs-scene-tag{animation:lcdm-bahs-slide .8s ease 2.4s both}
.lcdm-bahs-scene[data-effect="secret"] .lcdm-bahs-headline{color:#ffdfab!important}
.lcdm-bahs-scene[data-effect="final"] .lcdm-bahs-headline{color:#fff0d6!important;font-size:clamp(28px,5.3vw,84px)!important}
.lcdm-bahs-scene[data-effect="final"] .lcdm-bahs-subtitle{color:var(--lcdm-accent)!important;font-family:'Playfair Display',Georgia,serif;font-size:clamp(19px,3.1vw,46px)!important;font-weight:600}
@keyframes lcdm-bahs-slide{0%{opacity:0;transform:translateY(24px);filter:blur(7px)}100%{opacity:1;transform:translateY(0);filter:blur(0)}}
@keyframes lcdm-bahs-grand{0%{opacity:0;transform:scale(1.22) translateY(8px);filter:blur(12px)}100%{opacity:1;transform:scale(1);filter:blur(0)}}
.lcdm-bahs-cover{position:absolute;inset:0;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:clamp(8px,1.65vw,21px);padding:2% 10%;background:radial-gradient(ellipse at 50% 50%,rgba(19,33,46,.38),rgba(3,7,14,.8) 80%);transition:opacity .85s,visibility .85s}
.lcdm-bahs.is-started .lcdm-bahs-cover{opacity:0;visibility:hidden;pointer-events:none}
.lcdm-bahs-cover-rim{width:clamp(48px,7vw,105px);height:clamp(48px,7vw,105px);border:1px solid color-mix(in srgb,var(--lcdm-accent) 80%,transparent);border-radius:50%;display:grid;place-items:center;box-shadow:0 0 0 9px rgba(214,178,108,.055),0 0 48px rgba(216,164,82,.18);position:relative;margin-bottom:clamp(4px,1.5vw,16px)}
.lcdm-bahs-cover-rim::before,.lcdm-bahs-cover-rim::after{content:"";position:absolute;inset:-7px;border:1px dashed rgba(224,179,96,.26);border-radius:50%;animation:lcdm-bahs-rotate 20s linear infinite}
.lcdm-bahs-cover-rim::after{inset:7px;border-style:dotted;animation-direction:reverse}
.lcdm-bahs-cover-rim span{font-family:Georgia,serif;font-style:italic;font-size:clamp(33px,5vw,78px);color:var(--lcdm-accent)}
@keyframes lcdm-bahs-rotate{to{transform:rotate(360deg)}}
.lcdm-bahs-cover-top{font-size:clamp(8px,1.2vw,15px);letter-spacing:.31em;color:var(--lcdm-accent);font-weight:700}
.lcdm-bahs-cover-title{font-family:'Playfair Display',Georgia,serif;font-size:clamp(28px,5.6vw,83px);line-height:1.03;letter-spacing:.09em;color:#fff5e4;text-shadow:0 6px 32px #000}
.lcdm-bahs-cover-title em{font-weight:400;color:var(--lcdm-accent);font-style:normal;letter-spacing:.17em}
.lcdm-bahs-cover-desc{font-size:clamp(11px,1.43vw,20px);line-height:1.6;color:#e7ddd1}
.lcdm-bahs-start{border:1px solid rgba(245,204,139,.73)!important;border-radius:2px!important;appearance:none;cursor:pointer;color:#f9ecda!important;background:rgba(7,12,17,.74)!important;padding:clamp(9px,1.13vw,17px) clamp(13px,2vw,32px)!important;margin:clamp(5px,1.3vw,20px) 0 0!important;display:inline-flex;gap:clamp(6px,.9vw,12px);align-items:center;justify-content:center;font-family:Arial,Helvetica,sans-serif!important;font-size:clamp(10px,1.15vw,15px)!important;line-height:1.4!important;font-weight:700;letter-spacing:.11em;transition:background .25s,transform .25s,box-shadow .25s}
.lcdm-bahs-start:hover,.lcdm-bahs-start:focus-visible{background:#a3783d!important;box-shadow:0 0 28px rgba(222,163,80,.36);transform:translateY(-2px);color:#fff!important}
.lcdm-bahs-start small{font-weight:400;font-size:.73em;opacity:.72;border-left:1px solid rgba(255,255,255,.38);padding-left:12px;white-space:nowrap}
.lcdm-bahs-controls{display:flex;align-items:center;gap:10px;height:52px;background:#0a101b;padding:4px clamp(8px,1.7vw,22px);border-top:1px solid rgba(219,173,101,.3)}
.lcdm-bahs-control{flex:0 0 auto;appearance:none;background:transparent!important;border:0!important;box-shadow:none!important;color:#dfc9a6!important;padding:5px!important;margin:0!important;min-width:27px;min-height:32px;display:grid;place-items:center;cursor:pointer!important;font-size:23px!important;line-height:1!important;border-radius:3px!important;transition:color .2s,background .2s}
.lcdm-bahs-control:hover,.lcdm-bahs-control:focus-visible{color:#fff!important;background:rgba(209,169,101,.16)!important}
.lcdm-bahs-time{font-size:11px;font-variant-numeric:tabular-nums;letter-spacing:.04em;color:#d3c2a8;white-space:nowrap}
.lcdm-bahs-seek{flex:1;min-width:35px;max-width:100%;height:5px!important;appearance:none;-webkit-appearance:none;background:linear-gradient(to right,var(--lcdm-accent) 0%,var(--lcdm-accent) var(--seek,0%),rgba(216,206,191,.24) var(--seek,0%),rgba(216,206,191,.24) 100%)!important;border:0!important;border-radius:5px;outline-offset:6px;cursor:pointer!important;padding:0!important;margin:0 5px!important;box-shadow:none!important}
.lcdm-bahs-seek::-webkit-slider-thumb{-webkit-appearance:none;width:13px;height:13px;border-radius:50%;background:#f1ca91;border:2px solid #141b27;box-shadow:0 0 0 1px #b6894f}
.lcdm-bahs-seek::-moz-range-thumb{width:13px;height:13px;border-radius:50%;background:#f1ca91;border:2px solid #141b27}
.lcdm-bahs-a11y{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}
.lcdm-bahs--popup{position:fixed!important;z-index:2147482000!important;inset:0!important;width:100vw!important;height:100dvh!important;max-height:100dvh!important;display:none;align-items:center;justify-content:center;padding:clamp(12px,3.5vw,54px);overflow-y:auto}
.lcdm-bahs--popup.is-popup-visible{display:flex}
.lcdm-bahs-modal-backdrop{position:fixed;inset:0;background:rgba(4,6,11,.89);backdrop-filter:blur(12px)}
.lcdm-bahs--popup .lcdm-bahs-shell{width:min(1200px,96vw);max-height:calc(100dvh - 36px);z-index:1;box-shadow:0 30px 100px #000;overflow:visible}
.lcdm-bahs--popup .lcdm-bahs-screen{max-height:calc(100dvh - 110px);min-height:0}
.lcdm-bahs-close{position:absolute;right:12px;top:12px;z-index:8;background:rgba(0,0,0,.65)!important;color:#fff!important;border:1px solid rgba(255,255,255,.45)!important;border-radius:50%!important;width:34px;height:34px;font-size:23px!important;line-height:1!important;cursor:pointer;padding:0!important;display:grid;place-items:center}
.lcdm-bahs-close:hover{background:#7b5931!important}
body.lcdm-bahs-modal-lock{overflow:hidden!important}
.lcdm-bahs:fullscreen{display:flex;flex-direction:column;justify-content:center;background:#030509;padding:0}
.lcdm-bahs:fullscreen .lcdm-bahs-shell{height:auto;max-height:100vh;box-shadow:none}
.lcdm-bahs:fullscreen .lcdm-bahs-screen{max-height:calc(100vh - 52px)}
@media(max-width:600px){
 .lcdm-bahs-brand{top:5%;left:7%;gap:5px;letter-spacing:.09em;font-size:7px}.lcdm-bahs-brand-line{width:9px}
 .lcdm-bahs-sequence{inset:11% 7% 8%}
 .lcdm-bahs-scene{gap:6px}.lcdm-bahs-headline{font-size:clamp(22px,6vw,39px)!important}.lcdm-bahs-subtitle{font-size:clamp(11px,2.8vw,17px)!important}.lcdm-bahs-scene-tag{font-size:8px;letter-spacing:.12em;margin-top:3px;padding-top:8px}.lcdm-bahs-eyebrow{font-size:8px;letter-spacing:.17em}
 .lcdm-bahs-cover{gap:7px;padding:5%}.lcdm-bahs-cover-rim{width:45px;height:45px;margin:4px}.lcdm-bahs-cover-rim span{font-size:32px}.lcdm-bahs-cover-title{font-size:clamp(26px,7vw,42px)}.lcdm-bahs-cover-desc{font-size:11px}.lcdm-bahs-cover-top{letter-spacing:.14em;font-size:8px}.lcdm-bahs-start{font-size:9px!important;padding:8px!important;margin-top:5px!important}.lcdm-bahs-start small{display:none}
 .lcdm-bahs-controls{height:47px;gap:5px}.lcdm-bahs-control{font-size:19px!important;min-width:25px}.lcdm-bahs-time{font-size:9px}.lcdm-bahs-footmark{font-size:8px}
 .lcdm-bahs--popup{padding:4px}.lcdm-bahs--popup .lcdm-bahs-shell{width:98vw}.lcdm-bahs--popup .lcdm-bahs-screen{min-height:200px}
}
@media(prefers-reduced-motion:reduce){.lcdm-bahs-scene.is-current .lcdm-bahs-eyebrow,.lcdm-bahs-scene.is-current .lcdm-bahs-headline,.lcdm-bahs-scene.is-current .lcdm-bahs-subtitle,.lcdm-bahs-scene.is-current .lcdm-bahs-scene-tag,.lcdm-bahs-cover-rim::before,.lcdm-bahs-cover-rim::after{animation:none!important}.lcdm-bahs-scene{transition:none}}

/* Le carton d'ouverture doit masquer les scènes suivantes. */
.lcdm-bahs:not(.is-started) .lcdm-bahs-sequence{opacity:0;visibility:hidden}
.lcdm-bahs:not(.is-started) .lcdm-bahs-brand{opacity:0}
.lcdm-bahs:not(.is-started) .lcdm-bahs-footmark{z-index:6;opacity:.9}
@media(max-width:600px){
 .lcdm-bahs:not(.is-started) .lcdm-bahs-footmark{display:none}
}

@media(max-width:600px){ .lcdm-bahs-scene-tag{display:none} }
