/* Production motion poster must remain visible if the video is disabled/paused.
 * FR lacked a fallback and displayed a blank empty laboratory panel.
 */
html[data-cosmoya-r13] #laboratoire .lab-media.wc-lab-motion{
 position:relative;
 isolation:isolate;
 overflow:hidden;
 background:#cad6c8;
}
html[data-cosmoya-r13] #laboratoire .lab-media .r13-lab-poster{
 position:absolute;inset:0;
 display:block;width:100%;height:100%;
 object-fit:cover;object-position:center;
 filter:saturate(.84) contrast(1.035);
 z-index:0;
}
html[data-cosmoya-r13] #laboratoire .lab-media.wc-lab-motion::after{
 content:"";
 position:absolute;inset:0;
 z-index:1;
 pointer-events:none;
 background:linear-gradient(180deg,transparent 50%,rgba(10,35,25,.67) 100%);
}
html[data-cosmoya-r13] #laboratoire .lab-media.wc-lab-motion video:not([hidden]){
 position:absolute;inset:0;width:100%;height:100%;z-index:2;object-fit:cover;
}
html[data-cosmoya-r13] #laboratoire .lab-media .wc-lab-motion-caption{
 position:absolute!important;inset:auto auto 17px 19px!important;
 z-index:3!important;color:#fffdf8!important;
 font-size:10px;font-weight:800;letter-spacing:.14em;line-height:1.4;
 text-shadow:0 2px 8px rgba(0,0,0,.45);
}
/* COSMOYA R13 visual QA refinement pass.
 * Fixes observed on real screenshot, not speculative changes.
 */
html[data-cosmoya-r13] #about .about-media__inset{display:none!important;}
html[data-cosmoya-r13] #about .about-media{
 border-radius:14px;
 overflow:hidden;
 box-shadow:0 12px 34px rgba(17,54,28,.08);
}
html[data-cosmoya-r13] #about .about-media__main{
 border-radius:14px;overflow:hidden;
}
html[data-cosmoya-r13] #about .about-card--commitment{
 background:#23493a!important;
 color:#fffdf9!important;
}
html[data-cosmoya-r13] #about .about-card--commitment :is(h3,p,.about-card__copy){
 color:#f5f8f0!important;
 opacity:1!important;
}
html[data-cosmoya-r13] #about .about-card--commitment p{
 color:#e0ebdf!important;
}
html[data-cosmoya-r13] #about .about-card--commitment .about-card__icon{
 color:#f7f7ee!important;
 border-color:rgba(255,255,255,.42);
}
html[data-cosmoya-r13] #about{
 padding-bottom:clamp(72px,7vw,105px);
}
html[data-cosmoya-r13] #processus .eyebrow{
 color:#e7bd92!important;
}
html[data-cosmoya-r13] #processus .process-interactive .r13-process-cta{
 margin:0 24px 23px;
 min-width:232px;
}
html[data-cosmoya-r13] #brief .brief-intro h2{
 font-weight:750;
 letter-spacing:-.045em;
 line-height:1.15;
 font-size:clamp(29px,3.1vw,44px);
}
html[dir=rtl][data-cosmoya-r13] #brief .brief-intro h2{
 font-weight:700;
 letter-spacing:0;
 line-height:1.37;
}
/* Last-mile mobile tap targets: legacy RTL rules previously reset min-height. */
html[data-cosmoya-r13] #gammes .catalogue-family-card a,
html[dir="rtl"][data-cosmoya-r13] #gammes .catalogue-family-card a{
 min-height:49px!important;
}
html[dir="rtl"][data-cosmoya-r13] .r13-brief-cta,
html[dir="rtl"][data-cosmoya-r13] .r13-process-cta{
 font-size:14px!important;
 font-weight:800!important;
 line-height:1.5;
}
/* Card rows must fit their real media height, not a legacy fixed 175px row.
 * Without this fix the SOLUTION B2B kicker lies over the photos on mobile.
 */
@media(max-width:767px){
 html[data-cosmoya-r13] #solutions .solution-card{
  grid-template-rows:auto auto!important;
 }
 html[data-cosmoya-r13] #solutions .solution-label{
  margin-top:0!important;
 }
 html[data-cosmoya-r13] #processus .process-interactive .r13-process-cta{
  width:calc(100% - 32px);
  min-width:0;
  margin:0 16px 19px;
 }
 html[data-cosmoya-r13] #brief .brief-intro h2{
  font-size:clamp(29px,8.0vw,33px);
  line-height:1.16;
 }
 html[dir=rtl][data-cosmoya-r13] #brief .brief-intro h2{line-height:1.45}
}
