/* MEDIACREA V2.2: overrides visuels non destructifs, compatibles avec le BO */
:root{--accent:#18dcc5}
.site-header .mediacrea-brand-logo{display:block;width:clamp(205px,23vw,370px)!important;height:auto!important;max-height:88px!important;object-fit:contain}
.site-header{min-height:92px;align-items:center}
.hero{min-height:clamp(590px,78vh,850px);position:relative;overflow:hidden}
.hero-media,.hero-media img,.hero-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-media img{object-position:58% center}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,8,12,.94) 0%,rgba(2,8,12,.73) 43%,rgba(2,8,12,.12) 100%),linear-gradient(0deg,rgba(2,8,12,.7),transparent 35%)}
.hero-content{position:relative;z-index:2}
.service-card{overflow:hidden;border:1px solid rgba(24,220,197,.17);border-radius:12px;transition:transform .3s,border-color .3s,box-shadow .3s}
.service-card:hover{transform:translateY(-5px);border-color:rgba(24,220,197,.58);box-shadow:0 18px 40px rgba(0,0,0,.25)}
.service-card>img{display:block;width:100%;height:210px;object-fit:cover;filter:saturate(.9);transition:transform .5s}
.service-card:hover>img{transform:scale(1.035)}
.service-card .card-copy{position:relative;z-index:1;background:#0c151c}
.service-card .card-placeholder,.service-card .placeholder-mark{display:none}
.method{position:relative;isolation:isolate}
.method:before{content:"";position:absolute;inset:0 0 0 45%;background-image:var(--home-method-image);background-position:center;background-size:cover;background-repeat:no-repeat;opacity:.22;z-index:-1;mask-image:linear-gradient(to right,transparent,#000 55%)}
.v22-demo-projects{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:12px;margin-top:25px}
.v22-demo-projects figure{margin:0;overflow:hidden;border-radius:10px;border:1px solid #234047}
.v22-demo-projects img{display:block;width:100%;height:210px;object-fit:cover;transition:transform .35s}
.v22-demo-projects figure:hover img{transform:scale(1.04)}
.contact{position:relative;isolation:isolate}
.contact:before{content:"";position:absolute;inset:0 45% 0 0;background-image:var(--home-contact-image);background-position:center;background-size:cover;background-repeat:no-repeat;opacity:.2;z-index:-1;mask-image:linear-gradient(to right,#000,transparent)}
.footer-brand img{width:260px;max-width:100%;height:auto;object-fit:contain}
@media(max-width:900px){.site-header .mediacrea-brand-logo{width:clamp(190px,40vw,280px)!important}.v22-demo-projects{grid-template-columns:repeat(2,1fr)}.hero-overlay{background:linear-gradient(90deg,rgba(2,8,12,.88),rgba(2,8,12,.4)),linear-gradient(0deg,#030a0f,transparent 40%)}}
@media(max-width:580px){.site-header{min-height:74px}.site-header .mediacrea-brand-logo{width:min(62vw,245px)!important;max-height:60px!important}.hero{min-height:680px}.hero-media img{object-position:62% center}.hero-overlay{background:linear-gradient(0deg,rgba(2,8,12,.97) 0%,rgba(2,8,12,.8) 45%,rgba(2,8,12,.22) 100%)}.v22-demo-projects{grid-template-columns:repeat(2,1fr);gap:8px}.v22-demo-projects img{height:125px}.service-card>img{height:195px}}
@media(prefers-reduced-motion:reduce){.service-card,.service-card>img,.v22-demo-projects img{transition:none}}
/* Neutralise les formes decoratives des anciennes cartes */
.service-card::before,.service-card::after,.service-card>img::before{content:none!important;display:none!important}
.service-card>img{clip-path:none!important;mask:none!important}

/* V2.8 : rendre visibles les photographies MEDIACREA */
.hero-media{z-index:0!important;opacity:1!important;visibility:visible!important}
.hero-media img{opacity:1!important;visibility:visible!important;filter:none!important}
.hero-overlay{z-index:1;background:linear-gradient(90deg,rgba(2,8,12,.78) 0%,rgba(2,8,12,.40) 48%,rgba(2,8,12,.06) 100%),linear-gradient(0deg,rgba(2,8,12,.45),transparent 32%)!important;pointer-events:none}
.hero-content{z-index:2}
.method:before{inset:0 0 0 30%;opacity:.52;z-index:0;mask-image:linear-gradient(to right,transparent,#000 40%)}
.method-shade{z-index:0}
.method>.wrap{position:relative;z-index:1}
.contact:before{inset:0 38% 0 0;opacity:.42;z-index:0;mask-image:linear-gradient(to right,#000,transparent)}
.contact-grid{position:relative;z-index:1}
@media(max-width:760px){.hero-overlay{background:linear-gradient(0deg,rgba(2,8,12,.90),rgba(2,8,12,.55) 50%,rgba(2,8,12,.17))!important}.method:before{inset:0;opacity:.25}.contact:before{inset:0;opacity:.20}}
