
/* =====================================================================
 * MWP : pages villes (Agence WordPress a ...). Prefixe mwp-vi-.
 * ===================================================================== */
.mwp-vi-intro,.mwp-vi-collab,.mwp-vi-prestas,.mwp-vi-adv,.mwp-vi-meet{padding-left:var(--wp--preset--spacing--medium-1)!important;padding-right:var(--wp--preset--spacing--medium-1)!important}
.mwp-vi-collab,.mwp-vi-prestas,.mwp-vi-adv{padding-top:var(--wp--preset--spacing--large-1)!important;padding-bottom:var(--wp--preset--spacing--large-1)!important}

/* Intro : chapeau + bloc illustration */
.mwp-vi-intro{padding-top:var(--wp--preset--spacing--small-1)!important;padding-bottom:var(--wp--preset--spacing--large-1)!important}
.mwp-vi-lead{max-width:880px!important;margin:var(--wp--preset--spacing--medium-1) auto 0!important;text-align:center}
.mwp-vi-lead p{font-size:1.15rem;line-height:1.7;color:#374151}
.mwp-vi-lead p:first-child{font-family:var(--wp--preset--font-family--open-sans);font-size:var(--wp--preset--font-size--normal);font-weight:700;color:var(--wp--preset--color--primary-dark);line-height:1.4}
.mwp-vi-feature{gap:clamp(2rem,5vw,4.5rem)!important;margin-top:var(--wp--preset--spacing--large-1)!important}
.mwp-vi-feature__visual{position:relative;border-radius:24px;padding:clamp(1.5rem,4vw,3rem)!important;background:radial-gradient(circle at 15% 20%,rgba(239,71,75,.14),transparent 45%),radial-gradient(circle at 85% 85%,rgba(73,169,229,.14),transparent 45%),#f5f9fc;border:1px solid #eef1f5}
.mwp-vi-feature__visual figure{margin:0!important}
.mwp-vi-feature__visual img{width:100%!important;height:auto!important;display:block}
.mwp-vi-feature p{line-height:1.7}

/* Collaborer : cartes icone */
.mwp-vi-collab__intro{max-width:760px;margin:0 auto!important;font-family:var(--wp--preset--font-family--open-sans);font-weight:700;font-size:var(--wp--preset--font-size--normal);line-height:1.4;color:var(--wp--preset--color--primary-dark)}
.mwp-vi-collab__grid{list-style:none;padding:0!important;margin-top:2.5rem!important}
.mwp-vi-collab__grid>li::before,.mwp-vi-collab__grid>li::marker{content:none!important;display:none!important}
.mwp-vi-collab__grid>li{list-style:none!important;padding-left:var(--wp--preset--spacing--small-1)!important}
.mwp-vi-collab__grid>li{position:relative;padding-top:calc(var(--wp--preset--spacing--small-1) + 60px)!important}
.mwp-vi-collab__grid>li::after{content:"";position:absolute;top:var(--wp--preset--spacing--small-1);left:var(--wp--preset--spacing--small-1);width:44px;height:44px;border-radius:10px;background:var(--wp--preset--color--secondary-extra-light,#fff0f0) var(--mwp-ag-i-red) center/22px no-repeat}
.mwp-vi-collab__grid>li>p{margin:0!important}
.mwp-vi-collab__grid>li{transition:box-shadow .2s ease,transform .2s ease}
.mwp-vi-collab__grid>li:hover{box-shadow:0 18px 40px -18px rgb(15 22 41/.35);transform:translateY(-3px)}
.mwp-ag-mini .encart-presta-icon,.mwp-vi-presta .encart-presta-icon{width:44px;height:44px;border-radius:10px;background:var(--wp--preset--color--secondary-extra-light,#fff0f0);color:var(--mwp-ag-red);display:flex;align-items:center;justify-content:center;padding:0!important;margin:0 0 .9rem!important}
.mwp-vi-presta:not(.mwp-vi-presta--cta)::before{content:"";display:block;width:44px;height:44px;border-radius:10px;margin-bottom:1.1rem;background:var(--wp--preset--color--secondary-extra-light,#fff0f0) var(--mwp-ag-i-red) center/22px no-repeat;flex:0 0 auto}
.mwp-vi-presta.is-dark::before{background-color:rgba(255,255,255,.08)!important}

/* Nous rencontrer : carte flottante */
.mwp-vi-meet{padding-top:0!important;padding-bottom:var(--wp--preset--spacing--medium-1)!important}
.mwp-vi-meet__card{margin-top:-80px!important;position:relative;z-index:2;background:#fff;border-radius:20px;border:1px solid #dde2eb;box-shadow:0 18px 40px -18px rgb(15 22 41/.35);padding:clamp(1.5rem,3vw,2.5rem)!important;gap:clamp(1.5rem,4vw,3rem)!important}
.mwp-vi-meet__card h2{font-size:var(--wp--preset--font-size--medium-large)!important;margin-top:0}
.mwp-vi-meet__card p{line-height:1.65}
.mwp-vi-meet__card .wp-block-buttons{margin-top:1.5rem}
.mwp-vi-meet__map{border-radius:16px;overflow:hidden;min-height:350px}
.mwp-vi-mapmock{height:350px;display:flex;align-items:center;justify-content:center;background:repeating-linear-gradient(45deg,#eef1f5 0 10px,#e5e9f0 10px 20px);color:#6b7280;font-size:14px}

/* Prestations : grille encart-presta */
.mwp-vi-prestas__head{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}
.mwp-vi-prestas__head h2{margin:0!important}
.mwp-vi-prestas__head .wp-block-buttons{margin:0!important}
.mwp-vi-prestas__grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem!important;margin-top:2.5rem!important}
.mwp-vi-prestas__grid>*{margin:0!important}
.mwp-vi-presta{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid #dedede;border-radius:1rem;padding:1.75rem!important;box-shadow:0 1px 3px 0 rgb(0 0 0/.1),0 1px 2px -1px rgb(0 0 0/.1);overflow:hidden;transition:box-shadow .2s ease,transform .2s ease}
.mwp-vi-presta:hover{box-shadow:0 18px 40px -18px rgb(15 22 41/.35);transform:translateY(-3px)}
.mwp-vi-presta h3{font-size:1.2rem!important;margin:0 0 .85rem!important}
.mwp-vi-presta p,.mwp-vi-presta li{font-size:15px;line-height:1.6}
.mwp-vi-presta__body{flex:1 1 auto}
.mwp-vi-presta__body ul{margin:1rem 0 0!important}
.mwp-vi-presta .custom-checklist li{margin-bottom:.5rem}
.mwp-vi-presta.is-dark{border-color:transparent}
.mwp-vi-presta.is-dark p,.mwp-vi-presta.is-dark li{color:#ffffffb3!important}
.mwp-vi-presta.is-dark strong,.mwp-vi-presta.is-dark h3{color:#fff!important}
.mwp-vi-presta.is-dark .encart-presta-icon{background:rgba(255,255,255,.08)}
.mwp-vi-more{margin-top:1.25rem!important}
.mwp-vi-more .wp-block-button__link{background:none!important;border:0!important;padding:0!important;color:var(--mwp-ag-red)!important;font-weight:700;font-size:14px;text-align:left}
.mwp-vi-more .wp-block-button__link::after{content:" \2192";transition:margin .2s ease}
.mwp-vi-presta:hover .mwp-vi-more .wp-block-button__link::after{margin-left:4px}
.mwp-vi-presta.is-dark .mwp-vi-more .wp-block-button__link{color:#ff8f8f!important}
.mwp-vi-presta__deco{position:absolute;top:1rem;right:1rem;width:110px;opacity:.9;pointer-events:none}
.mwp-vi-presta__deco figure,.mwp-vi-presta__deco img{margin:0!important;width:100%!important;height:auto!important}
.mwp-vi-presta:has(.mwp-vi-presta__deco) h3{padding-right:110px}
.mwp-vi-presta--cta{align-items:center;justify-content:center;text-align:center;border:0}
.mwp-vi-presta--cta figure{margin:0 0 1.25rem!important;max-width:240px}
.mwp-vi-presta--cta img{width:100%!important;height:auto!important}

/* Avantages + CTA */
.mwp-vi-adv h2{max-width:820px;margin-left:auto!important;margin-right:auto!important}
.mwp-vi-adv__box{max-width:820px!important}
.mwp-vi-adv__box ul{margin-top:1.25rem!important;margin-bottom:0!important}
.mwp-vi-adv__cta{max-width:1000px!important;margin:var(--wp--preset--spacing--medium-1) auto 0!important;border-radius:12px;padding:clamp(1.25rem,3vw,2rem) clamp(1.5rem,4vw,2.5rem)!important}
.mwp-vi-adv__cta .wp-block-columns{display:flex;align-items:center;gap:2rem;margin:0}
.mwp-vi-adv__cta h2{font-size:var(--wp--preset--font-size--normal)!important;margin:0!important;max-width:none;color:var(--wp--preset--color--primary-dark)!important;text-align:left}
.mwp-vi-adv__cta .wp-block-column:last-child{display:flex;justify-content:flex-end}

/* Agences */
.mwp-vi-agences__cta{display:flex;justify-content:center;margin-top:2.5rem!important}


@media (max-width:781px){
 .mwp-vi-feature,.mwp-vi-meet__card,.mwp-vi-adv__cta .wp-block-columns{flex-direction:column;align-items:stretch}
 .mwp-vi-prestas__grid{grid-template-columns:1fr}
 .mwp-vi-adv__cta .wp-block-column:last-child{justify-content:flex-start}
 .mwp-vi-meet__card{margin-top:-40px!important}
}

.mwp-vi-presta ul.custom-checklist li::before,.mwp-vi-adv ul.custom-checklist li::before{display:inline-block!important;vertical-align:middle}
.mwp-vi-presta ul.custom-checklist,.mwp-vi-adv ul.custom-checklist{padding-left:0!important}

/* Hero : marge basse */
.hero-gradient-mesh{padding-bottom:var(--wp--preset--spacing--medium-1)!important}

/* Section sombre "Pourquoi" : icones, halo, trame */
.mwp-vi-why{position:relative;overflow:hidden;isolation:isolate}
.mwp-vi-why::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(circle at 12% 18%,rgba(239,71,75,.14),transparent 35%),radial-gradient(circle at 88% 80%,rgba(73,169,229,.12),transparent 38%),radial-gradient(rgba(255,255,255,.06) 1px,transparent 1.5px) 0 0/22px 22px}
.mwp-vi-why__card{position:relative;transition:border-color .3s ease,transform .3s ease,background-color .3s ease}
.mwp-vi-why__card::before{content:"";display:block;width:48px;height:48px;border-radius:12px;margin-bottom:1.25rem;background:rgba(239,71,75,.14) var(--mwp-ag-i-red) center/24px no-repeat;border:1px solid rgba(239,71,75,.25)}
.mwp-vi-why__card::after{content:"";position:absolute;right:-30px;bottom:-30px;width:150px;height:150px;background:var(--mwp-ag-wm-white) no-repeat center/contain;opacity:.05;pointer-events:none;transition:opacity .3s ease,transform .3s ease}
.mwp-vi-why__card{overflow:hidden}
.mwp-vi-why__card:hover{transform:translateY(-4px);background-color:rgba(255,255,255,.07)!important;border-color:rgba(239,71,75,.4)!important}
.mwp-vi-why__card:hover::after{opacity:.1;transform:rotate(-8deg) scale(1.05)}
.mwp-vi-why__card strong{color:#fff!important}

/* FAQ : meme largeur que la page Agence */
.mwp-vi-faq{padding-top:var(--wp--preset--spacing--large-1)!important;padding-bottom:var(--wp--preset--spacing--large-1)!important;padding-left:var(--wp--preset--spacing--medium-1)!important;padding-right:var(--wp--preset--spacing--medium-1)!important}
.mwp-vi-faq>*{max-width:1000px!important;margin-left:auto!important;margin-right:auto!important}
@media (prefers-reduced-motion:reduce){.mwp-vi-why__card,.mwp-vi-why__card::after{transition:none}}

/* Collaborer : cartes en texte continu, largeur "wide" */
.mwp-vi-collab__grid{max-width:var(--wp--style--global--wide-size,1200px)!important;width:100%}
.mwp-vi-collab__grid>li.mwp-ag-mini{display:block!important;line-height:1.55;font-size:15px}

/* =====================================================================
 * Pages villes : sections complementaires (v1.3)
 * ===================================================================== */
.mwp-vi-why,.mwp-vi-choose,.mwp-vi-steps,.mwp-vi-avant{padding-left:var(--wp--preset--spacing--medium-1)!important;padding-right:var(--wp--preset--spacing--medium-1)!important;padding-top:var(--wp--preset--spacing--large-1)!important;padding-bottom:var(--wp--preset--spacing--large-1)!important}
.mwp-vi-why__head{max-width:900px!important;margin:0 auto!important}
.mwp-vi-why__head p{color:#99a1af;text-align:center;line-height:1.75}
.mwp-vi-why__head p strong{color:#fff}
.mwp-vi-why__head h2{color:#fff!important}
/* cartes issues d'une liste */
.mwp-vi-why__list{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem!important;max-width:var(--wp--style--global--wide-size,1200px)!important;width:100%;margin:2.5rem auto 0!important;padding:0!important;list-style:none!important}
.mwp-vi-why__list>li{position:relative;margin:0!important;padding:calc(1.5rem + 64px) 1.5rem 1.5rem!important;border-radius:1rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);color:#99a1af;line-height:1.65;font-size:15px;transition:border-color .3s ease,transform .3s ease,background-color .3s ease}
.mwp-vi-why__list>li::after{content:"";position:absolute;top:1.5rem;left:1.5rem;width:48px;height:48px;border-radius:12px;background:rgba(239,71,75,.14) var(--mwp-ag-i-red) center/24px no-repeat;border:1px solid rgba(239,71,75,.25)}
.mwp-vi-why__list>li strong{color:#fff}
.mwp-vi-why__list>li:hover{transform:translateY(-4px);background-color:rgba(255,255,255,.07);border-color:rgba(239,71,75,.4)}
/* cartes issues de sous-titres h3 */
.mwp-vi-why__grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem!important;max-width:var(--wp--style--global--wide-size,1200px)!important;width:100%;margin:2.5rem auto 0!important}
.mwp-vi-why__grid.is-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.mwp-vi-why__grid>*{margin:0!important}
.mwp-vi-why__grid .mwp-vi-why__card{padding:1.75rem!important;border-radius:1rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);color:#99a1af}
.mwp-vi-why__grid .mwp-vi-why__card h3{color:#fff!important;font-size:1.1rem!important;margin:0 0 .75rem!important}
.mwp-vi-why__grid .mwp-vi-why__card p,.mwp-vi-why__grid .mwp-vi-why__card li{color:#99a1af;line-height:1.65;font-size:15px}
/* Comment choisir / avantages : boite blanche */
.mwp-vi-choose h2,.mwp-vi-avant h2{max-width:820px;margin-left:auto!important;margin-right:auto!important}
.mwp-vi-box{max-width:820px!important;margin:var(--wp--preset--spacing--small-2) auto 0!important;border-radius:1rem;padding:clamp(1.5rem,3vw,2.5rem)!important;box-shadow:0 1px 3px 0 rgb(0 0 0/.1);border:1px solid #eef1f5}
.mwp-vi-box p{line-height:1.7}
.mwp-vi-box ul{margin-top:1.25rem!important;margin-bottom:0!important;padding-left:0!important}
.mwp-vi-box ul.custom-checklist li::before{display:inline-block!important;vertical-align:middle}
/* Etapes numerotees */
.mwp-vi-steps__intro{max-width:760px;margin:0 auto!important;text-align:center}
.mwp-vi-steps__list{counter-reset:mwpstep;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem!important;max-width:var(--wp--style--global--wide-size,1200px)!important;width:100%;margin:2.5rem auto 0!important;padding:0!important;list-style:none!important}
.mwp-vi-steps__list>li{counter-increment:mwpstep;position:relative;margin:0!important;padding:calc(1.5rem + 64px) 1.5rem 1.5rem!important;background:#fff;border:1px solid #dde2eb;border-radius:1rem;box-shadow:0 1px 3px 0 rgb(0 0 0/.1);line-height:1.6;font-size:15px}
.mwp-vi-steps__list>li::after{content:counter(mwpstep);position:absolute;top:1.5rem;left:1.5rem;width:48px;height:48px;border-radius:50%;background:var(--wp--preset--color--primary-dark,#061620);color:#fff;font-weight:800;font-size:1.15rem;display:flex;align-items:center;justify-content:center;box-shadow:6px 0 0 -2px var(--wp--preset--color--secondary,#ef474b)}
.mwp-vi-cta{max-width:1000px!important;margin:var(--wp--preset--spacing--medium-1) auto 0!important;border-radius:12px;padding:clamp(1.25rem,3vw,2rem) clamp(1.5rem,4vw,2.5rem)!important}
.mwp-vi-cta .wp-block-columns{display:flex;align-items:center;gap:2rem;margin:0}
.mwp-vi-cta h2{font-size:var(--wp--preset--font-size--normal)!important;margin:0!important;color:var(--wp--preset--color--primary-dark)!important;text-align:left}
.mwp-vi-cta .wp-block-column:last-child{display:flex;justify-content:flex-end}

/* Colonnes selon le nombre de cartes (2 ou 4 : 2 colonnes, 1 : pleine largeur) */
@media (min-width:782px){
.mwp-vi-why__list:has(>li:first-child:nth-last-child(2)),.mwp-vi-why__list:has(>li:first-child:nth-last-child(4)),
.mwp-vi-why__grid:has(>:first-child:nth-last-child(2)),.mwp-vi-why__grid:has(>:first-child:nth-last-child(4)){grid-template-columns:repeat(2,minmax(0,1fr))}
.mwp-vi-why__list:has(>li:only-child),.mwp-vi-why__grid:has(>:only-child){grid-template-columns:1fr}
.mwp-vi-why__list+.mwp-vi-why__list{margin-top:1.5rem!important}
}
@media (max-width:1024px){.mwp-vi-why__list,.mwp-vi-why__grid,.mwp-vi-steps__list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:781px){.mwp-vi-why__list,.mwp-vi-why__grid,.mwp-vi-why__grid.is-2,.mwp-vi-steps__list{grid-template-columns:1fr}.mwp-vi-cta .wp-block-columns{flex-direction:column;align-items:stretch}.mwp-vi-cta .wp-block-column:last-child{justify-content:flex-start}}
@media (prefers-reduced-motion:reduce){.mwp-vi-why__list>li{transition:none}}

/* Liens de maillage dans les zones sombres : texte blanc lisible, soulignement rouge */
.mwp-vi-why a:not(.wp-block-button__link),.mwp-vi-presta.is-dark a:not(.wp-block-button__link),.has-primary-dark-background-color .mwp-vi-why__card a:not(.wp-block-button__link){color:#fff!important;background-image:linear-gradient(var(--wp--preset--color--secondary,#ef474b),var(--wp--preset--color--secondary,#ef474b))!important;background-size:100% 2px!important;background-position:0 100%!important;background-repeat:no-repeat!important;text-decoration:none!important;transition:background-size .2s ease}
.mwp-vi-why a:not(.wp-block-button__link):hover,.mwp-vi-presta.is-dark a:not(.wp-block-button__link):hover{background-size:100% 100%!important;background-image:linear-gradient(rgba(239,71,75,.35),rgba(239,71,75,.35))!important}

/* Texte qui suit une grille "Pourquoi" : respiration */
.mwp-vi-why__list+*:not(.mwp-vi-why__list),.mwp-vi-why__grid+*:not(.mwp-vi-why__grid){margin-top:2.5rem!important}

/* Hero : espace entre le dernier paragraphe d'intro et le bouton */
.hero-gradient-mesh .wp-block-group:has(>h1)>p:last-child{margin-bottom:2rem!important}
/* Etapes : respiration sous le titre */
.mwp-vi-steps h2+p{margin-top:1rem!important}

/* Mobile : colonnes empilees, la largeur en % (flex-basis) ne doit pas devenir une hauteur (bug Safari iOS) */
@media (max-width:781px){
.mwp-vi-feature>.wp-block-column,.mwp-vi-meet__card>.wp-block-column,.mwp-vi-adv__cta .wp-block-columns>.wp-block-column,.mwp-vi-cta .wp-block-columns>.wp-block-column{flex-basis:auto!important;width:100%!important;flex-grow:0!important;flex-shrink:0!important}
.mwp-vi-feature__visual{display:flex!important;justify-content:center;align-items:center}
.mwp-vi-feature__visual figure{width:100%;max-width:400px}
}
@media (max-width:781px){
body .wp-block-columns.mwp-vi-feature:not(.is-not-stacked-on-mobile)>.wp-block-column,body .mwp-vi-meet__card.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column,body .mwp-vi-adv__cta .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column,body .mwp-vi-cta .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column{flex-basis:auto!important}
}

/* Carte "Nous rencontrer" qui chevauche la section sombre : reserver la place sous le texte */
.mwp-vi-why:has(+.mwp-vi-meet){padding-bottom:calc(var(--wp--preset--spacing--large-1,4rem) + 80px)!important}
@media (max-width:781px){.mwp-vi-why:has(+.mwp-vi-meet){padding-bottom:calc(var(--wp--preset--spacing--medium-1,2rem) + 40px)!important}}
