/* Composant autonome : ne modifie ni Divi, ni le header GCSMS. */
.gcsms-cinema,.gcsms-cinema-sites{--gcsms-ink:#073f42;--gcsms-sea:#0eb1a6;box-sizing:border-box;font-family:Inter,'Segoe UI',Arial,sans-serif;color:var(--gcsms-ink)}
.gcsms-cinema *,.gcsms-cinema-sites *{box-sizing:border-box}
.gcsms-cinema{position:relative;height:clamp(350px,39vw,590px);border-radius:30px;overflow:hidden;background:#214b4a;isolation:isolate;box-shadow:0 25px 65px rgba(4,55,54,.15);margin:0;outline-offset:4px}
.gcsms-cinema--site{height:clamp(310px,36vw,500px)}
.gcsms-cinema-photos{position:absolute;inset:0}
.gcsms-cinema-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;pointer-events:none;transform:scale(1.035)}
.gcsms-cinema-photo.is-current{opacity:1;z-index:1;animation:gcsmsSlowPan 7s linear both}
.gcsms-cinema-photo.is-incoming-next{z-index:2;opacity:1;animation:gcsmsRevealRight .95s cubic-bezier(.62,.04,.17,1) both}
.gcsms-cinema-photo.is-incoming-prev{z-index:2;opacity:1;animation:gcsmsRevealLeft .95s cubic-bezier(.62,.04,.17,1) both}
@keyframes gcsmsSlowPan{from{transform:scale(1)}to{transform:scale(1.06)}}
@keyframes gcsmsRevealRight{from{clip-path:inset(0 100% 0 0);transform:scale(1.09)}to{clip-path:inset(0 0 0 0);transform:scale(1)}}
@keyframes gcsmsRevealLeft{from{clip-path:inset(0 0 0 100%);transform:scale(1.09)}to{clip-path:inset(0 0 0 0);transform:scale(1)}}
.gcsms-cinema-shade{position:absolute;inset:0;z-index:3;pointer-events:none;background:linear-gradient(to bottom,rgba(0,35,37,.25),transparent 40%,rgba(0,28,30,.08) 57%,rgba(0,26,29,.72) 100%)}
.gcsms-cinema-top{position:absolute;z-index:4;top:24px;left:29px;right:28px;display:flex;align-items:center;gap:10px;font-size:10px;letter-spacing:1.5px;font-weight:800;color:white}
.gcsms-cinema-spark{width:7px;height:7px;border-radius:100%;background:#20e0d0;box-shadow:0 0 0 5px rgba(32,224,208,.18)}
.gcsms-cinema-count{margin-left:auto;letter-spacing:1px}
.gcsms-cinema-bottom{position:absolute;z-index:5;left:30px;right:28px;bottom:46px;display:flex;align-items:end;justify-content:space-between;gap:15px}
.gcsms-cinema-copy{max-width:65%;color:#fff;line-height:1.13;text-shadow:0 4px 14px rgba(0,0,0,.35)}
.gcsms-cinema-tag{display:block;color:#76e5db;font-size:10px;letter-spacing:1.8px;font-weight:800;text-transform:uppercase;margin-bottom:9px}
.gcsms-cinema-title{display:block;font-size:clamp(23px,3vw,38px);font-weight:850;letter-spacing:-.04em}
.gcsms-cinema--site .gcsms-cinema-title{font-size:clamp(19px,2vw,29px)}
.gcsms-cinema-controls{display:flex;gap:8px;flex-shrink:0}
.gcsms-cinema-controls button{display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid rgba(255,255,255,.5);background:rgba(255,255,255,.17);backdrop-filter:blur(9px);color:white;border-radius:50%;font-size:26px;cursor:pointer;transition:background .2s}
.gcsms-cinema-controls button:hover,.gcsms-cinema-controls button:focus-visible{background:rgba(255,255,255,.35)}
.gcsms-cinema-controls .gcsms-cinema-pause{font-size:12px}
.gcsms-cinema-progress{position:absolute;z-index:5;bottom:19px;left:30px;right:30px;display:flex;gap:7px}
.gcsms-cinema-segment{flex:1;display:block;height:3px;background:rgba(255,255,255,.38);border:0;padding:0;border-radius:5px;overflow:hidden;cursor:pointer}
.gcsms-cinema-segment span{height:100%;display:block;width:0;background:#23d9c9}
.gcsms-cinema-segment.is-current span{animation:gcsmsProgress 7s linear both}
@keyframes gcsmsProgress{from{width:0}to{width:100%}}
.gcsms-cinema.is-hovered .gcsms-cinema-segment.is-current span,.gcsms-cinema.is-paused .gcsms-cinema-segment.is-current span{animation-play-state:paused}
.gcsms-cinema-sites{width:100%;max-width:1600px;margin:65px auto;padding:0 clamp(18px,4vw,65px)}
.gcsms-cinema-site-head{display:flex;align-items:end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:25px}
.gcsms-cinema-kicker{font-weight:800;color:#118c86;font-size:11px;letter-spacing:1.7px;margin:0 0 8px;text-transform:uppercase}
.gcsms-cinema-site-head h2{font-family:Inter,'Segoe UI',Arial,sans-serif;color:#073f42;font-size:clamp(29px,3.1vw,47px);font-weight:820;letter-spacing:-.045em;margin:0;line-height:1.05}
.gcsms-cinema-site-head h2 em,.gcsms-cinema-sites h3 em{color:#0eb1a6;font-family:Georgia,serif;font-weight:400}
.gcsms-cinema-site-tabs{display:flex;gap:8px;flex-wrap:wrap}
.gcsms-cinema-site-tab{border:1px solid #b9d2cd;background:#fffdf9;color:#24595a;padding:12px 22px;border-radius:30px;cursor:pointer;font-size:13px;font-weight:750}
.gcsms-cinema-site-tab.is-active{background:#0c595b;border-color:#0c595b;color:#fff;box-shadow:0 6px 15px rgba(0,70,69,.15)}
.gcsms-cinema-site-panel[hidden],.gcsms-cinema-contact-details[hidden]{display:none!important}
.gcsms-cinema-site-panel{animation:gcsmsSiteEnter .32s ease}
@keyframes gcsmsSiteEnter{from{opacity:.5;transform:translateY(8px)}to{opacity:1;transform:none}}
.gcsms-cinema-site-visual{position:relative;padding:0 36px 42px 0}
.gcsms-cinema-site-visual .gcsms-cinema{min-height:300px}
.gcsms-cinema-site-visual .gcsms-cinema-copy{max-width:calc(100% - 200px)}
.gcsms-cinema-video-card{position:absolute;right:0;bottom:10px;border:7px solid white;background:#073f42;padding:0;width:220px;height:224px;border-radius:22px;overflow:hidden;box-shadow:0 18px 45px rgba(5,65,66,.25);cursor:pointer;z-index:6;text-align:left}
.gcsms-cinema-video-card>img{display:block;width:100%;height:100%;object-fit:cover}
.gcsms-cinema-video-card:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(2,39,41,.96));pointer-events:none}
.gcsms-cinema-video-play{position:absolute;right:13px;top:12px;width:39px;height:39px;border-radius:50%;background:#0eb1a6;color:#073f42;display:grid;place-items:center;z-index:2;font-size:16px}
.gcsms-cinema-video-caption{position:absolute;bottom:12px;left:12px;right:12px;color:white;z-index:2;font-size:12px;font-weight:780;line-height:1.4}
.gcsms-cinema-video-caption small{display:block;color:#5ce7d9;font-size:9px;letter-spacing:1px;margin-bottom:4px}
.gcsms-cinema-video-dialog{width:min(94vw,1000px);max-width:1000px;max-height:90vh;padding:16px;border:0;border-radius:18px;background:#061d1f;color:white;box-shadow:0 25px 80px rgba(0,0,0,.5)}
.gcsms-cinema-video-dialog::backdrop{background:rgba(0,24,25,.84)}
.gcsms-cinema-video-close{display:block;margin:0 0 12px auto;background:transparent;color:#fff;border:1px solid #7aa;border-radius:50%;font-size:26px;width:37px;height:37px;cursor:pointer}
.gcsms-cinema-video-embed{aspect-ratio:16/9}.gcsms-cinema-video-embed iframe,.gcsms-cinema-video-content video{width:100%;height:100%;max-height:75vh;aspect-ratio:16/9;border:0}
.gcsms-cinema-site-desc{max-width:850px;margin:6px 0 28px;color:#527174;font-size:15px;line-height:1.7}
.gcsms-cinema-stat{display:flex;gap:24px;align-items:center;background:#fff;border-block:1px solid #dfe8e5;padding:23px 15px;margin:30px 0}
.gcsms-cinema-stat-total{display:flex;align-items:center;gap:13px;min-width:210px}
.gcsms-cinema-stat-total strong{font-size:clamp(37px,4.2vw,62px);letter-spacing:-.07em;color:#0e565a;line-height:1}
.gcsms-cinema-stat-total span,.gcsms-cinema-stat-item span{font-size:11px;line-height:1.5;letter-spacing:.05em;text-transform:uppercase;color:#587678}
.gcsms-cinema-stat-rule{width:1px;height:58px;background:#d3e0dd;flex:none}
.gcsms-cinema-stat-items{flex:1;display:flex;gap:12px 23px;flex-wrap:wrap}
.gcsms-cinema-stat-item{display:flex;align-items:center;gap:9px;flex:1 1 130px}
.gcsms-cinema-stat-item strong{font-size:29px;color:#0e565a;line-height:1}
.gcsms-cinema-services-section{padding:26px 0 36px}.gcsms-cinema-services-section h3,.gcsms-cinema-contact h3{font-size:clamp(24px,2.5vw,33px);font-weight:800;letter-spacing:-.04em;margin:0 0 23px}
.gcsms-cinema-contact{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,80px);padding:48px clamp(20px,5vw,70px);background:#edf5f1;border-radius:26px;margin-top:30px}
.gcsms-cinema-contact-details p{color:#365c5c;font-size:15px;line-height:1.7;margin:0 0 13px}
.gcsms-cinema-contact-details a{color:#0b6664}
.gcsms-cinema-contact-form .wpforms-container{margin:0}
.gcsms-editor-placeholder{border:1px dashed #90b9af;padding:25px;background:#f2faf7;color:#0b5957}
@media(max-width:780px){.gcsms-cinema{height:340px;border-radius:22px}.gcsms-cinema--site{height:345px}.gcsms-cinema-photos img{object-position:center}.gcsms-cinema-top{top:15px;left:17px;right:17px}.gcsms-cinema-bottom{left:17px;right:17px;bottom:39px}.gcsms-cinema-progress{left:17px;right:17px}.gcsms-cinema-copy{max-width:65%}.gcsms-cinema-controls button{width:32px;height:32px;font-size:21px}.gcsms-cinema-site-visual{padding-right:12px;padding-bottom:32px}.gcsms-cinema-video-card{width:155px;height:166px;right:0}.gcsms-cinema-site-visual .gcsms-cinema-copy{max-width:58%}.gcsms-cinema-stat{flex-wrap:wrap;gap:14px}.gcsms-cinema-stat-rule{display:none}.gcsms-cinema-stat-items{flex-basis:100%;border-top:1px solid #dfe8e5;padding-top:17px}.gcsms-cinema-contact{grid-template-columns:1fr}.gcsms-cinema-sites{margin:40px auto}}
@media(prefers-reduced-motion:reduce){.gcsms-cinema-photo.is-current,.gcsms-cinema-photo.is-incoming-next,.gcsms-cinema-photo.is-incoming-prev,.gcsms-cinema-site-panel{animation:none!important}.gcsms-cinema-segment span{animation:none!important}}
