/* MDC · Carrousel de Services — moderne épuré */
.mdc-sv{ --mdc-accent:#b8252e; --mdc-dark:#080a0a; --mdc-gap:24px; --mdc-slides:3; position:relative; }
.mdc-sv-viewport{ overflow:hidden; }
.mdc-sv-track{ display:flex; gap:var(--mdc-gap); transition:transform .5s cubic-bezier(.4,0,.2,1); }
.mdc-sv-slide{ flex:0 0 calc((100% - (var(--mdc-slides) - 1) * var(--mdc-gap)) / var(--mdc-slides)); box-sizing:border-box; }

.mdc-sv-card{
    background:#fff; border-radius:16px; padding:34px 28px; height:100%;
    box-shadow:0 6px 24px rgba(8,10,10,.06); border:1px solid #f0f0f0;
    transition:transform .35s cubic-bezier(.4,0,.2,1), box-shadow .35s ease;
    display:flex; flex-direction:column; position:relative; overflow:hidden;
}
.mdc-sv-card::before{ content:''; position:absolute; top:0; left:0; right:0; height:4px; background:var(--mdc-accent); transform:scaleX(0); transform-origin:left; transition:transform .35s ease; }
.mdc-sv-card:hover{ transform:translateY(-6px); box-shadow:0 18px 44px rgba(8,10,10,.13); }
.mdc-sv-card:hover::before{ transform:scaleX(1); }

.mdc-sv-img{ margin:-34px -28px 22px; height:180px; overflow:hidden; }
.mdc-sv-img img{ width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.mdc-sv-card:hover .mdc-sv-img img{ transform:scale(1.06); }

.mdc-sv-ico{
    width:60px; height:60px; border-radius:14px; display:flex; align-items:center; justify-content:center;
    background:rgba(184,37,46,.08); color:var(--mdc-accent); font-size:26px; margin-bottom:20px;
    transition:.35s ease;
}
.mdc-sv-ico svg{ width:28px; height:28px; fill:currentColor; }
.mdc-sv-ico i{ font-size:inherit; }
.mdc-sv-card:hover .mdc-sv-ico{ background:var(--mdc-accent); color:#fff; }
.mdc-sv-card:hover .mdc-sv-ico svg{ fill:#fff; }
.mdc-sv-card:hover .mdc-sv-ico i{ color:#fff; }

/* mode image + icône superposée : l'icône chevauche le bas de l'image */
.mdc-sv-card.mode-both{ position:relative; }
.mdc-sv-card.mode-both .mdc-sv-ico{ margin-top:-50px; position:relative; z-index:2; box-shadow:0 8px 20px rgba(8,10,10,.15); background:#fff; }
.mdc-sv-card.mode-both:hover .mdc-sv-ico{ background:var(--mdc-accent); }
/* mode image seule : pas de marge haute négative résiduelle gérée par img */

.mdc-sv-title{ margin:0 0 10px; font-size:19px; font-weight:700; color:var(--mdc-dark); }
.mdc-sv-text{ margin:0 0 18px; font-size:14.5px; line-height:1.6; color:#666; flex:1; }
.mdc-sv-link{
    display:inline-flex; align-items:center; gap:6px; color:var(--mdc-accent);
    font-weight:700; font-size:14px; text-decoration:none; transition:gap .2s ease; margin-top:auto;
}
.mdc-sv-link:hover{ gap:11px; }

/* Bouton "Demander un devis" */
.mdc-sv-btn{
    display:inline-flex; align-items:center; justify-content:center; gap:8px;
    margin-top:auto; align-self:flex-start;
    background:var(--mdc-accent); color:#fff; text-decoration:none;
    font-family:inherit; font-weight:700; font-size:14px; line-height:1;
    padding:13px 26px; border:2px solid var(--mdc-accent); border-radius:30px;
    box-shadow:0 8px 20px rgba(184,37,46,.18);
    transition:background .28s ease, color .28s ease, border-color .28s ease, transform .28s ease, box-shadow .28s ease;
}
.mdc-sv-btn svg{ stroke:#fff; transition:transform .25s ease; }
.mdc-sv-btn:hover{ background:var(--mdc-dark); border-color:var(--mdc-dark); transform:translateY(-2px); box-shadow:0 12px 26px rgba(8,10,10,.2); }
.mdc-sv-btn:hover svg{ transform:translateX(4px); }
.mdc-sv-btn[style*="width:100%"], .mdc-sv-btn[style*="width: 100%"]{ align-self:stretch; }

/* Nav */
.mdc-sv-nav{ display:flex; align-items:center; justify-content:center; gap:18px; margin-top:30px; }
.mdc-sv-arrow{
    flex:0 0 auto; width:48px; height:48px; border-radius:50%;
    border:2px solid var(--mdc-sv-arrow-border,#e6e6e6); background:var(--mdc-sv-arrow-bg,#fff);
    color:var(--mdc-sv-arrow-color,#080a0a); cursor:pointer;
    display:flex; align-items:center; justify-content:center; transition:.25s ease; box-shadow:0 4px 14px rgba(8,10,10,.08);
}
.mdc-sv-chev{ font-size:28px; line-height:1; font-weight:700; color:var(--mdc-sv-arrow-color,#080a0a); display:block; margin-top:-4px; }
.mdc-sv-arrow{ color:var(--mdc-sv-arrow-color,#080a0a); }
.mdc-sv-arrow:hover{ background:var(--mdc-sv-arrow-hover,var(--mdc-accent)); border-color:var(--mdc-sv-arrow-hover,var(--mdc-accent)); color:#fff; transform:scale(1.08); }
.mdc-sv-arrow:hover .mdc-sv-chev{ color:#fff; }
.mdc-sv-arrow:disabled{ opacity:.35; cursor:default; }
.mdc-sv-arrow:disabled:hover{ background:var(--mdc-sv-arrow-bg,#fff); border-color:var(--mdc-sv-arrow-border,#e6e6e6); color:var(--mdc-sv-arrow-color,#080a0a); transform:none; }

.mdc-sv-dots{ display:flex; align-items:center; justify-content:center; gap:8px; }
.mdc-sv-dot{ width:9px; height:9px; border-radius:50%; background:var(--mdc-sv-dot,#d8d8d8); border:0; padding:0; cursor:pointer; transition:.25s ease; }
.mdc-sv-dot.is-active{ background:var(--mdc-sv-dot-active,var(--mdc-accent)); width:28px; border-radius:5px; }

@media (max-width:1024px){ .mdc-sv{ --mdc-slides:var(--mdc-slides-t,2); } }
@media (max-width:767px){ .mdc-sv{ --mdc-slides:var(--mdc-slides-m,1); --mdc-gap:16px; } }
