.elementor-kit-8{--e-global-color-primary:#111111;--e-global-color-secondary:#6B6B6B;--e-global-color-text:#111111;--e-global-color-accent:#FFFFFF;--e-global-color-grisfonce:#1A1A1A;--e-global-color-grisclair:#F2F2F2;--e-global-color-filetclair:#E6E6E6;--e-global-color-filetsombre:#2A2A2A;--e-global-typography-primary-font-family:"Montserrat";--e-global-typography-primary-font-size:64px;--e-global-typography-primary-font-weight:700;--e-global-typography-primary-text-transform:none;--e-global-typography-primary-line-height:72px;--e-global-typography-primary-letter-spacing:-0.02em;--e-global-typography-secondary-font-family:"Montserrat";--e-global-typography-secondary-font-size:48px;--e-global-typography-secondary-font-weight:700;--e-global-typography-secondary-text-transform:none;--e-global-typography-secondary-line-height:56px;--e-global-typography-secondary-letter-spacing:-0.02em;--e-global-typography-text-font-family:"Montserrat";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-text-text-transform:none;--e-global-typography-text-line-height:24px;--e-global-typography-text-letter-spacing:0em;--e-global-typography-accent-font-family:"Montserrat";--e-global-typography-accent-font-size:12px;--e-global-typography-accent-font-weight:600;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-line-height:16px;--e-global-typography-accent-letter-spacing:0.12em;--e-global-typography-h3-font-family:"Montserrat";--e-global-typography-h3-font-size:32px;--e-global-typography-h3-font-weight:600;--e-global-typography-h3-text-transform:none;--e-global-typography-h3-line-height:40px;--e-global-typography-h3-letter-spacing:-0.01em;--e-global-typography-h4-font-family:"Montserrat";--e-global-typography-h4-font-size:24px;--e-global-typography-h4-font-weight:600;--e-global-typography-h4-text-transform:none;--e-global-typography-h4-line-height:32px;--e-global-typography-h4-letter-spacing:0em;--e-global-typography-h5-font-family:"Montserrat";--e-global-typography-h5-font-size:20px;--e-global-typography-h5-font-weight:500;--e-global-typography-h5-text-transform:none;--e-global-typography-h5-line-height:28px;--e-global-typography-h5-letter-spacing:0em;--e-global-typography-small-font-family:"Montserrat";--e-global-typography-small-font-size:14px;--e-global-typography-small-font-weight:400;--e-global-typography-small-text-transform:none;--e-global-typography-small-line-height:20px;--e-global-typography-small-letter-spacing:0em;--e-global-typography-caption-font-family:"Montserrat";--e-global-typography-caption-font-size:12px;--e-global-typography-caption-font-weight:400;--e-global-typography-caption-text-transform:none;--e-global-typography-caption-line-height:16px;--e-global-typography-caption-letter-spacing:0em;background-color:#FFFFFF;color:#111111;font-family:"Montserrat", Sans-serif;font-size:16px;font-weight:400;line-height:24px;}.elementor-kit-8 button,.elementor-kit-8 input[type="button"],.elementor-kit-8 input[type="submit"],.elementor-kit-8 .elementor-button{background-color:#111111;font-family:"Montserrat", Sans-serif;font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:0.08em;color:#FFFFFF;border-radius:4px 4px 4px 4px;padding:16px 32px 16px 32px;}.elementor-kit-8 button:hover,.elementor-kit-8 button:focus,.elementor-kit-8 input[type="button"]:hover,.elementor-kit-8 input[type="button"]:focus,.elementor-kit-8 input[type="submit"]:hover,.elementor-kit-8 input[type="submit"]:focus,.elementor-kit-8 .elementor-button:hover,.elementor-kit-8 .elementor-button:focus{background-color:#1A1A1A;color:#FFFFFF;}.elementor-kit-8 e-page-transition{background-color:#111111;}.elementor-kit-8 a{color:#111111;}.elementor-kit-8 a:hover{color:#6B6B6B;}.elementor-kit-8 img{border-radius:0px 0px 0px 0px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-8{--e-global-typography-primary-font-size:46px;--e-global-typography-secondary-font-size:35px;--e-global-typography-text-font-size:12px;--e-global-typography-accent-font-size:9px;--e-global-typography-h3-font-size:23px;--e-global-typography-h4-font-size:17px;--e-global-typography-h5-font-size:14px;--e-global-typography-small-font-size:10px;--e-global-typography-caption-font-size:9px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:768px){.elementor-kit-8{--e-global-typography-primary-font-size:35px;--e-global-typography-secondary-font-size:26px;--e-global-typography-text-font-size:16px;--e-global-typography-accent-font-size:16px;--e-global-typography-h3-font-size:18px;--e-global-typography-h4-font-size:16px;--e-global-typography-h5-font-size:16px;--e-global-typography-small-font-size:16px;--e-global-typography-caption-font-size:16px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ===== Espace.com / Barre d'espace (monochrome) ===== */
:root{--esp-ground:#111111;--esp-soft:#1A1A1A;--esp-bg:#F2F2F2;--esp-surface:#FFFFFF;--esp-ink:#111111;--esp-inv:#FFFFFF;--esp-grey:#6B6B6B;--esp-grey-ink:#6B6B6B;--esp-line:#E6E6E6;--esp-line-dark:#2A2A2A}
body{-webkit-font-smoothing:antialiased}

/* --- Placeholders visuels declares --- */
.esp-ph{position:relative;overflow:hidden;border-radius:14px;background:linear-gradient(140deg,#1A1A1A 0%,#111111 54%,#1A1A1A 100%);isolation:isolate}
.esp-ph::before{content:"";position:absolute;inset:0;background:radial-gradient(130% 100% at 74% 8%,rgba(255,255,255,.13),transparent 62%),repeating-linear-gradient(115deg,rgba(255,255,255,.04) 0 1px,transparent 1px 13px)}
.esp-ph::after{content:attr(data-ph);position:absolute;left:14px;bottom:11px;right:14px;font:700 12px/1.3 Montserrat,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.38)}
.esp-ph--light{background:linear-gradient(140deg,#FFFFFF 0%,#E6E6E6 55%,#F2F2F2 100%)}
.esp-ph--light::before{background:radial-gradient(130% 100% at 74% 8%,rgba(17,17,17,.07),transparent 62%),repeating-linear-gradient(115deg,rgba(17,17,17,.04) 0 1px,transparent 1px 13px)}
.esp-ph--light::after{color:rgba(17,17,17,.34)}
.esp-phsec::after{content:"Visuel de fond à venir";position:absolute;right:20px;bottom:14px;z-index:4;font:700 12px/1 Montserrat,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.34)}

/* --- Boutons --- */
.esp-btn-primary .elementor-button{background-color:#FFFFFF;color:#111111;border:1px solid #FFFFFF;border-radius:4px;font-weight:700;box-shadow:none;transition:background-color .18s ease,color .18s ease}
.esp-btn-primary .elementor-button:hover{background-color:transparent;color:#FFFFFF}
.esp-btn-onlight .elementor-button{background-color:#111111;color:#FFFFFF;border:1px solid #111111;border-radius:4px;font-weight:700;box-shadow:none;transition:background-color .18s ease,color .18s ease}
.esp-btn-onlight .elementor-button:hover{background-color:transparent;color:#111111}
.esp-btn-ghost .elementor-button{background-color:transparent;color:#FFFFFF;border:1px solid rgba(255,255,255,.34);border-radius:4px;font-weight:700;box-shadow:none;transition:background-color .18s ease,color .18s ease,border-color .18s ease}
.esp-btn-ghost .elementor-button:hover{background-color:#FFFFFF;color:#111111;border-color:#FFFFFF}
.esp-btn-ghost-dark .elementor-button{background-color:transparent;color:#111111;border:1px solid rgba(17,17,17,.24);border-radius:4px;font-weight:700;box-shadow:none;transition:background-color .18s ease,color .18s ease}
.esp-btn-ghost-dark .elementor-button:hover{background-color:#111111;color:#FFFFFF}

/* --- Lien fleche --- */
.esp-link a,a.esp-link{display:inline-flex;align-items:center;gap:9px;font-weight:700;font-size:14px;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:3px;transition:gap .18s ease}
.esp-link a:hover,a.esp-link:hover{gap:15px}

/* --- Header --- */
.esp-header .elementor-nav-menu .elementor-item{font:600 14px/1 Montserrat,sans-serif;color:#FFFFFF;padding:10px 0}
.esp-header .elementor-nav-menu .elementor-item:hover,.esp-header .elementor-nav-menu .elementor-item.elementor-item-active{color:#6B6B6B}
.esp-header .elementor-nav-menu--dropdown{background-color:#1A1A1A;border:1px solid #2A2A2A;border-radius:14px;overflow:hidden}
.esp-header .esp-logo img{width:132px;height:auto;display:block}
.esp-footer .esp-logo img{width:150px;height:auto;display:block}

/* --- Reperes --- */
.esp-pillar{position:relative}
.esp-pillar+.esp-pillar::before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:1px;background:#E6E6E6}
@media(max-width:1024px){.esp-pillar:nth-child(odd)::before{display:none}}
@media(max-width:767px){.esp-pillar::before{display:none!important}}
.esp-ico svg{width:34px;height:34px;stroke:#111111;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}

/* --- Bande de chiffres --- */
.esp-stat{position:relative}
.esp-stat+.esp-stat::before{content:"";position:absolute;left:0;top:2px;bottom:2px;width:1px;background:#2A2A2A}
@media(max-width:767px){.esp-stat::before{display:none!important}}

/* --- Hero --- */
.esp-hero-left{padding-left:max(24px,calc((100vw - 1240px)/2))!important;padding-right:56px!important}
@media(max-width:1024px){.esp-hero-left{padding-right:24px!important;padding-left:24px!important}}
.esp-mosaic{position:relative;display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:minmax(0,1fr);gap:10px;aspect-ratio:5/4;width:100%}
.esp-mosaic>div{border-radius:14px}
.esp-mosaic>div:nth-child(1){grid-column:span 4}
.esp-mosaic>div:nth-child(n+2){grid-column:span 2}
@media(max-width:767px){.esp-mosaic{grid-template-columns:repeat(2,1fr);aspect-ratio:auto;grid-auto-rows:104px;gap:8px}.esp-mosaic>div:nth-child(1){grid-column:span 2;grid-row:span 2}.esp-mosaic>div:nth-child(n+2){grid-column:span 1}.esp-play{width:52px;height:52px}.esp-play::after{border-left-width:13px;border-top-width:8px;border-bottom-width:8px}}
.esp-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:60px;height:60px;border-radius:50%;background:rgba(255,255,255,.94);display:grid;place-items:center;z-index:3;transition:transform .2s ease}
.esp-play::after{content:"";border-left:15px solid #111111;border-top:9px solid transparent;border-bottom:9px solid transparent;margin-left:4px}
.esp-play:hover{transform:translate(-50%,-50%) scale(1.07)}
.esp-logos{display:flex;flex-wrap:wrap;align-items:center;gap:44px}
.esp-logos img{height:38px;width:auto;max-width:140px;object-fit:contain;filter:grayscale(1) brightness(0) invert(1);opacity:.7;transition:opacity .2s ease}
.esp-logos img:hover{opacity:1}

/* --- Bento expertises --- */
.esp-bento{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}
.esp-bentocard{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:212px;padding:26px;border-radius:14px;overflow:hidden;text-decoration:none;border:1px solid #2A2A2A;transition:transform .2s ease,border-color .2s ease}
.esp-bentocard:hover{transform:translateY(-3px);border-color:rgba(255,255,255,.42)}
.esp-bentocard>.bg{position:absolute;inset:0;z-index:0;border-radius:14px}
.esp-bentocard>.ct{position:relative;z-index:2}
.esp-bentocard .num{display:block;font:700 12px/1 Montserrat,sans-serif;letter-spacing:.14em;color:#6B6B6B;margin-bottom:10px}
.esp-bentocard h3{margin:0 0 7px;font:700 24px/1.2 Montserrat,sans-serif;color:#FFFFFF}
.esp-bentocard p{margin:0;font:400 14px/1.55 Montserrat,sans-serif;color:rgba(255,255,255,.66);max-width:36ch}
.esp-bentocard .arw{display:inline-block;margin-top:16px;font:700 16px/1 Montserrat,sans-serif;color:#FFFFFF}
.esp-bento>a:nth-child(1){grid-column:span 7}
.esp-bento>a:nth-child(2){grid-column:span 5}
.esp-bento>a:nth-child(3){grid-column:span 5}
.esp-bento>a:nth-child(4){grid-column:span 7}
.esp-bento>a:nth-child(5){grid-column:span 12;min-height:184px}
@media(max-width:767px){.esp-bento{grid-template-columns:1fr}.esp-bento>a{grid-column:span 1!important}}

/* --- Frise methode --- */
.esp-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:26px}
.esp-step{position:relative;display:flex;flex-direction:column}
.esp-step .n{font:700 24px/1 Montserrat,sans-serif;color:#111111}
.esp-step h3{margin:10px 0 6px;font:700 20px/1.25 Montserrat,sans-serif;color:#111111}
.esp-step p{margin:0 0 16px;font:400 14px/1.55 Montserrat,sans-serif;color:#6B6B6B}
.esp-step .esp-ph{aspect-ratio:16/11;margin-top:auto}
.esp-step+.esp-step .chev{position:absolute;top:6px;left:-19px;color:#E6E6E6;font:700 14px/1 Montserrat,sans-serif}
@media(max-width:1024px){.esp-steps{grid-template-columns:repeat(2,1fr)}.esp-step .chev{display:none}}
@media(max-width:767px){.esp-steps{grid-template-columns:1fr}}

/* --- Rails --- */
.esp-rail{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:4px}
.esp-rail::-webkit-scrollbar{display:none}
.esp-rail>*{scroll-snap-align:start;flex:0 0 clamp(270px,32%,392px)}
@media(max-width:767px){.esp-rail>*{flex:0 0 84%}}
.esp-proj{display:block;text-decoration:none;border-radius:14px;overflow:hidden;position:relative;aspect-ratio:4/3;border:1px solid #2A2A2A;transition:transform .2s ease}
.esp-proj:hover{transform:translateY(-3px)}
.esp-proj .lbl{position:absolute;left:20px;top:18px;right:20px;z-index:2}
.esp-proj .lbl b{display:block;font:700 16px/1.25 Montserrat,sans-serif;color:#FFFFFF}
.esp-proj .lbl span{display:block;margin-top:4px;font:400 14px/1.4 Montserrat,sans-serif;color:rgba(255,255,255,.6)}

/* --- Avis --- */
.esp-review{display:flex;flex-direction:column;gap:14px;background:#FFFFFF;border:1px solid #E6E6E6;border-radius:14px;padding:24px;min-height:206px}
.esp-review p{margin:0;font:400 16px/1.6 Montserrat,sans-serif;color:#111111}
.esp-review .who{margin-top:auto;font:400 14px/1.5 Montserrat,sans-serif;color:#6B6B6B}
.esp-review .who b{display:block;font-weight:700;color:#111111}
.esp-stars{color:#111111;letter-spacing:.2em;font-size:12px}

/* --- Offres --- */
.esp-offer{display:flex;flex-direction:column;gap:12px;border-radius:14px;padding:30px;border:1px solid #E6E6E6;background:#FFFFFF;min-height:252px;text-decoration:none}
.esp-offer--hi{background:#111111;border-color:#111111;padding:40px 30px}
.esp-offer h3{margin:0;font:700 24px/1.2 Montserrat,sans-serif;color:#111111}
.esp-offer--hi h3{color:#FFFFFF}
.esp-offer p{margin:0;font:400 14px/1.6 Montserrat,sans-serif;color:#6B6B6B}
.esp-offer--hi p{color:rgba(255,255,255,.7)}
.esp-offer .arw{margin-top:auto;align-self:flex-end;font:700 16px/1 Montserrat,sans-serif;color:#111111}
.esp-offer--hi .arw{color:#FFFFFF}
.esp-badge{display:inline-block;background:#FFFFFF;color:#111111;border-radius:4px;padding:6px 11px;font:700 12px/1 Montserrat,sans-serif;letter-spacing:.12em;text-transform:uppercase}
.esp-tag{display:inline-block;border:1px solid #E6E6E6;border-radius:4px;padding:7px 13px;font:700 12px/1 Montserrat,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#6B6B6B}
.esp-quote{font:700 48px/1 Montserrat,sans-serif;color:#6B6B6B}

/* --- Etat vide compose --- */
.esp-empty{display:flex;flex-direction:column;justify-content:center;gap:10px;border:1px dashed #E6E6E6;border-radius:14px;padding:26px;min-height:206px;background:rgba(17,17,17,.02)}
.esp-empty b{font:700 14px/1.3 Montserrat,sans-serif;color:#111111}
.esp-empty span{font:400 14px/1.6 Montserrat,sans-serif;color:#6B6B6B}
.esp-btnrow>*{width:auto!important;max-width:none;flex:0 0 auto!important}
.esp-badge{align-self:flex-start}

/* --- Cartes plates des pages interieures --- */
.esp-cardgrid{display:grid;gap:16px}
.esp-flatcard{display:flex;flex-direction:column;background:#FFFFFF;border:1px solid #E6E6E6;border-radius:14px;padding:26px;text-decoration:none;min-height:172px;transition:transform .2s ease,border-color .2s ease}
a.esp-flatcard:hover{transform:translateY(-3px);border-color:#111111}
.esp-flatcard .num{display:block;font:700 12px/1 Montserrat,sans-serif;letter-spacing:.14em;color:#6B6B6B;margin-bottom:12px}
.esp-flatcard h3{margin:0 0 7px;font:700 20px/1.25 Montserrat,sans-serif;color:#111111}
.esp-flatcard p{margin:0;font:400 14px/1.6 Montserrat,sans-serif;color:#6B6B6B}
.esp-flatcard .arw{margin-top:auto;padding-top:16px;font:700 16px/1 Montserrat,sans-serif;color:#111111}
@media(max-width:767px){.esp-cardgrid{grid-template-columns:1fr!important}}

/* --- Accordeon FAQ --- */
.elementor-accordion .elementor-tab-title{font-family:Montserrat,sans-serif;padding:18px 0}
.elementor-accordion .elementor-accordion-item{border-left:0!important;border-right:0!important;border-top:0!important}
.elementor-accordion .elementor-accordion-item:first-child{border-top:1px solid #E6E6E6!important}
.elementor-accordion .elementor-tab-content{padding:0 0 22px}
/* --- Formules --- */
.esp-plans{display:grid;grid-template-columns:1fr 1.08fr 1fr;gap:16px;align-items:stretch}
@media(max-width:1024px){.esp-plans{grid-template-columns:1fr}}
.esp-plan{display:flex;flex-direction:column;background:#FFFFFF;border:1px solid #E6E6E6;border-radius:14px;padding:32px}
.esp-plan--hi{background:#111111;border-color:#111111}
.esp-plan h3{margin:14px 0 6px;font:700 24px/1.15 Montserrat,sans-serif;color:#111111}
.esp-plan--hi h3{color:#FFFFFF}
.esp-plan .lead{margin:0 0 18px;font:400 16px/1.6 Montserrat,sans-serif;color:#6B6B6B}
.esp-plan--hi .lead{color:#6B6B6B}
.esp-plan .price{margin:0 0 20px;padding-bottom:20px;border-bottom:1px solid #E6E6E6;font:700 14px/1.5 Montserrat,sans-serif;color:#111111}
.esp-plan--hi .price{border-bottom-color:#2A2A2A;color:#FFFFFF}
.esp-plan ul{list-style:none;margin:0 0 26px;padding:0;display:flex;flex-direction:column;gap:11px}
.esp-plan li{display:flex;gap:10px;font:400 14px/1.55 Montserrat,sans-serif;color:#6B6B6B}
.esp-plan--hi li{color:#6B6B6B}
.esp-plan li::before{content:"→";flex:0 0 auto;color:#6B6B6B;font-weight:700}
.esp-plan .go{margin-top:auto;display:inline-block;text-align:center;border-radius:4px;padding:14px 22px;font:700 14px/1 Montserrat,sans-serif;text-decoration:none;background:#111111;color:#FFFFFF;border:1px solid #111111;transition:background-color .18s ease,color .18s ease}
.esp-plan .go:hover{background:transparent;color:#111111}
.esp-plan--hi .go{background:#FFFFFF;color:#111111;border-color:#FFFFFF}
.esp-plan--hi .go:hover{background:transparent;color:#FFFFFF}
.esp-note{border:1px dashed #E6E6E6;border-radius:14px;padding:20px 24px;background:rgba(17,17,17,.02);font:400 14px/1.65 Montserrat,sans-serif;color:#6B6B6B}
.esp-note b{display:block;margin-bottom:5px;font-weight:700;color:#111111}
/* --- Bloc coordonnees --- */
.esp-coord{background:#111111;border-radius:14px;padding:32px;color:#FFFFFF}
.esp-coord h3{margin:0 0 6px;font:700 20px/1.25 Montserrat,sans-serif;color:#FFFFFF}
.esp-coord p{margin:0 0 22px;font:400 14px/1.7 Montserrat,sans-serif;color:#6B6B6B}
.esp-coord a{color:#FFFFFF}
.esp-coord hr{border:0;border-top:1px solid #2A2A2A;margin:22px 0}
.esp-check{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.esp-check li{display:grid;grid-template-columns:26px 1fr;gap:14px;padding:16px 0;border-top:1px solid #E6E6E6;font:400 16px/1.6 Montserrat,sans-serif;color:#6B6B6B}
.esp-check li:first-child{border-top:0}
.esp-check li b{display:block;font:700 16px/1.35 Montserrat,sans-serif;color:#111111;margin-bottom:3px}
.esp-check li span.n{font:700 12px/1.9 Montserrat,sans-serif;color:#6B6B6B;letter-spacing:.08em}

/* --- Pages legales --- */
.esp-rich{max-width:74ch}
.esp-rich h2{margin:44px 0 14px;font:700 24px/1.2 Montserrat,sans-serif;color:#111111;letter-spacing:-.01em}
.esp-rich h2:first-child{margin-top:0}
.esp-rich h3{margin:26px 0 8px;font:700 16px/1.3 Montserrat,sans-serif;color:#111111}
.esp-rich p{margin:0 0 14px;font:400 16px/1.75 Montserrat,sans-serif;color:#6B6B6B}
.esp-rich ul{margin:0 0 14px;padding-left:20px}
.esp-rich li{margin-bottom:8px;font:400 16px/1.7 Montserrat,sans-serif;color:#6B6B6B}
.esp-rich a{color:#111111}
.esp-rich dl{margin:0 0 18px;display:grid;grid-template-columns:210px 1fr;gap:10px 20px}
.esp-rich dt{font:700 14px/1.6 Montserrat,sans-serif;color:#111111}
.esp-rich dd{margin:0;font:400 16px/1.6 Montserrat,sans-serif;color:#6B6B6B}
@media(max-width:767px){.esp-rich dl{grid-template-columns:1fr;gap:2px 0}.esp-rich dd{margin-bottom:12px}}

@media(max-width:767px){.esp-header .esp-logo img{width:104px}.esp-header .elementor-widget-button .elementor-button{font-size:12px;padding:11px 14px}}

/* ===== NATIF : equivalents des anciens blocs HTML ===== */

/* Numerotation automatique : le numero appartient a la mise en page, pas au contenu */
.esp-deflist{counter-reset:espn}
.esp-deflist>.e-con{counter-increment:espn;position:relative;padding:20px 0 20px 62px}
.esp-deflist>.e-con+.e-con{border-top:1px solid #E6E6E6}
.esp-deflist>.e-con::before{content:counter(espn,decimal-leading-zero);position:absolute;left:0;top:21px;width:auto;height:auto;pointer-events:none;font:700 12px/1.6 Montserrat,sans-serif;letter-spacing:.1em;color:#6B6B6B}
.esp-deflist--dark>.e-con+.e-con{border-top-color:#2A2A2A}
.esp-deflist .esp-dt{margin:0 0 6px}
.esp-deflist .esp-dd{max-width:70ch}

/* Liste sans numero (ce qui est inclus) */
.esp-plainlist{counter-reset:none}

/* Cartes plates : conteneur cliquable + heading + texte */
.esp-cardgrid>.e-con{display:flex;flex-direction:column;background:#FFFFFF;border:1px solid #E6E6E6;border-radius:14px;padding:26px;text-decoration:none;min-height:172px;transition:transform .2s ease,border-color .2s ease}
.esp-cardgrid>a.e-con:hover{transform:translateY(-3px);border-color:#111111}
.esp-cardgrid>a.e-con::after{content:"→";margin-top:auto;padding-top:16px;font:700 16px/1 Montserrat,sans-serif;color:#111111}
.esp-cardgrid--num{counter-reset:espc}
.esp-cardgrid--num>.e-con{counter-increment:espc}
.esp-cardgrid--num>.e-con::before{content:counter(espc,decimal-leading-zero);display:block;position:static;width:auto;height:auto;font:700 12px/1 Montserrat,sans-serif;letter-spacing:.14em;color:#6B6B6B;margin-bottom:12px}
.esp-cardtitle{margin:0 0 7px}

/* Bento : conteneurs en grille, photo en fond, contenu au dessus */

.esp-bento>.e-con{position:relative;overflow:hidden;border-radius:14px;border:1px solid #2A2A2A;padding:26px;justify-content:flex-end;text-decoration:none;transition:transform .2s ease,border-color .2s ease}
.esp-bento>a.e-con:hover{transform:translateY(-3px);border-color:rgba(255,255,255,.42)}
.esp-bento>.e-con>.e-con-inner{position:relative;z-index:2}

.esp-bento .esp-bentonum{font:700 12px/1 Montserrat,sans-serif;letter-spacing:.14em;color:#6B6B6B;margin-bottom:10px}
.esp-bento>a.e-con::after{content:"→";position:absolute;left:26px;bottom:26px;z-index:2;font:700 16px/1 Montserrat,sans-serif;color:#FFFFFF}
.esp-bento .esp-bentobody{padding-bottom:34px}

/* Frise methode */
.esp-steps{counter-reset:esps}
.esp-steps>.e-con{counter-increment:esps;position:relative;display:flex;flex-direction:column}
.esp-steps>.e-con::before{content:counter(esps,decimal-leading-zero);display:block;position:static;width:auto;height:auto;font:700 24px/1 Montserrat,sans-serif;color:#111111;margin-bottom:10px}
.esp-steps>.e-con+.e-con::after{content:"››";position:absolute;top:6px;left:-19px;color:#E6E6E6;font:700 14px/1 Montserrat,sans-serif}
@media(max-width:1024px){.esp-steps>.e-con+.e-con::after{display:none}}

/* Blocs image en attente, en conteneur natif */
.esp-media{position:relative;overflow:hidden;border-radius:14px;background:linear-gradient(140deg,#1A1A1A 0%,#111111 54%,#1A1A1A 100%)}
.esp-media::before{content:"";position:absolute;inset:0;background:radial-gradient(130% 100% at 74% 8%,rgba(255,255,255,.13),transparent 62%),repeating-linear-gradient(115deg,rgba(255,255,255,.04) 0 1px,transparent 1px 13px)}
.esp-media--light{background:linear-gradient(140deg,#FFFFFF 0%,#E6E6E6 55%,#F2F2F2 100%)}
.esp-media--light::before{background:radial-gradient(130% 100% at 74% 8%,rgba(17,17,17,.07),transparent 62%),repeating-linear-gradient(115deg,rgba(17,17,17,.04) 0 1px,transparent 1px 13px)}
.esp-media--bg{position:absolute;inset:0;z-index:0;border-radius:14px}
.esp-medialabel{position:relative;z-index:2;margin-top:auto}

/* Cartes projet et etats vides en conteneurs */
.esp-projcard{position:relative;overflow:hidden;border-radius:14px;border:1px solid #2A2A2A;aspect-ratio:4/3;padding:18px 20px;justify-content:flex-start;text-decoration:none;transition:transform .2s ease}
.esp-projcard:hover{transform:translateY(-3px)}
.esp-emptycard{border:1px dashed #E6E6E6;border-radius:14px;padding:26px;min-height:206px;justify-content:center;background:rgba(17,17,17,.02);text-decoration:none}

/* Formules */
.esp-plancard{border-radius:14px;padding:32px;border:1px solid #E6E6E6;background:#FFFFFF}
.esp-plancard--hi{background:#111111;border-color:#111111;padding:40px 30px}
.esp-planprice{padding-bottom:20px;border-bottom:1px solid #E6E6E6;margin-bottom:20px}
.esp-plancard--hi .esp-planprice{border-bottom-color:#2A2A2A}

/* Bloc coordonnees */
.esp-coordbox{background:#111111;border-radius:14px;padding:32px}
.esp-coordbox .elementor-divider-separator{border-top-color:#2A2A2A!important}

/* Encadre a completer */
.esp-notebox{border:1px dashed #E6E6E6;border-radius:14px;padding:20px 24px;background:rgba(17,17,17,.02)}

/* Reperes de la home en icon-box */
.esp-pillar .elementor-icon svg{width:34px;height:34px;stroke:currentColor;fill:none}
.esp-pillar .elementor-icon-box-title{margin:16px 0 8px}

/* Mur de logos en widgets image */
.esp-logowall .elementor-widget-image img{height:38px;width:auto;max-width:140px;object-fit:contain;filter:grayscale(1) brightness(0) invert(1);opacity:.7;transition:opacity .2s ease}
.esp-logowall .elementor-widget-image img:hover{opacity:1}

/* Lien fleche en bouton */
.esp-linkbtn .elementor-button{background:transparent;border:0;border-bottom:1px solid currentColor;border-radius:0;padding:0 0 3px;font-weight:700;font-size:14px;transition:padding-right .18s ease}
.esp-linkbtn .elementor-button:hover{background:transparent;padding-right:6px}

/* Prose des pages legales */
.esp-richblock p{margin:0 0 14px}
.esp-richblock ul{margin:0 0 14px;padding-left:20px}
.esp-richblock li{margin-bottom:8px}
.esp-richblock dl{margin:0 0 18px;display:grid;grid-template-columns:210px 1fr;gap:10px 20px}
.esp-richblock dt{font-weight:700;color:#111111}
.esp-richblock dd{margin:0}
@media(max-width:767px){.esp-richblock dl{grid-template-columns:1fr;gap:2px 0}.esp-richblock dd{margin-bottom:12px}}
/* ===== NATIF 2 : classes produites par la conversion ===== */

/* Etiquette d'un visuel en attente */
.esp-phlabel{position:absolute!important;left:16px;right:16px;bottom:11px;z-index:2;margin:0!important}
.esp-bento .esp-phlabel,.esp-projcard .esp-phlabel{left:auto;right:20px;text-align:right}

/* Blocs image en attente */
.esp-media{position:relative}
.esp-media--ratio{aspect-ratio:4/3}
.esp-portrait{aspect-ratio:3/4}
.esp-stepmedia{aspect-ratio:16/11;margin-top:auto}
.esp-tile{border-radius:14px}

/* Mosaique du hero */
.esp-mosaic{position:relative;aspect-ratio:5/4;width:88%;max-width:900px;margin-left:auto}
.esp-mosaic>div:nth-child(1){grid-column:span 4}
.esp-mosaic>div:nth-child(n+2){grid-column:span 2}
.esp-playicon{position:absolute!important;left:50%;top:50%;transform:translate(-50%,-50%);z-index:3;width:auto!important;height:auto!important;padding:0!important;margin:0!important;background:none}n.esp-playicon .elementor-icon-wrapper{line-height:0}n.esp-playicon .elementor-icon{transition:transform .2s ease}
.esp-playicon:hover .elementor-icon{transform:scale(1.07)}

@media(max-width:767px){
 .esp-mosaic{grid-template-columns:repeat(2,1fr)!important;grid-template-rows:none!important;grid-auto-rows:112px!important;aspect-ratio:auto}
 .esp-mosaic>div:nth-child(1){grid-column:span 2;grid-row:auto}
 .esp-mosaic>div:nth-child(n+2){grid-column:span 1}
 
}

/* Bento : repartition des cellules */
.esp-bento>div:nth-child(1){grid-column:span 7}
.esp-bento>div:nth-child(2){grid-column:span 5}
.esp-bento>div:nth-child(3){grid-column:span 5}
.esp-bento>div:nth-child(4){grid-column:span 7}
.esp-bento>div:nth-child(5){grid-column:span 12;min-height:184px}
.esp-bento>div{min-height:212px}
@media(max-width:767px){.esp-bento{grid-template-columns:1fr!important}.esp-bento>div{grid-column:span 1!important}}

/* Cartes projet */
.esp-projcard>.e-con-inner{gap:4px}

/* Cartes offres de la home */
.esp-offercard{border-radius:14px;padding:30px;border:1px solid #E6E6E6;background:#FFFFFF;min-height:252px;text-decoration:none;justify-content:flex-start}
.esp-offercard--hi{background:#111111;border-color:#111111;padding:40px 30px}
a.esp-offercard::after{content:"→";margin-top:auto;align-self:flex-end;font:700 16px/1 Montserrat,sans-serif;color:#111111}
a.esp-offercard--hi::after{color:#FFFFFF}

/* Etiquette mise en avant */
.esp-badgetag{align-self:flex-start;background:#FFFFFF;color:#111111;border-radius:4px;padding:6px 11px;margin-bottom:12px!important}
.esp-offercard:not(.esp-offercard--hi) .esp-badgetag,.esp-plancard:not(.esp-plancard--hi) .esp-badgetag{background:#111111;color:#FFFFFF}

/* Formules */
.esp-planlist .elementor-icon-list-icon{display:none}
.esp-planlist .elementor-icon-list-text::before{content:"→";margin-right:10px;color:#6B6B6B;font-weight:700}
.esp-planlist .elementor-icon-list-item{align-items:flex-start;line-height:1.55}
.esp-plancard .elementor-widget-button{margin-top:auto;padding-top:26px}
.esp-plancard .elementor-button{width:100%;text-align:center}

/* Checklist du bandeau chiffres */
.esp-statlist .elementor-icon-list-item:last-child{font-weight:700}
.esp-statlist .elementor-icon-list-item:last-child .elementor-icon-list-text{color:#FFFFFF}
.esp-statlist .elementor-icon-list-item:last-child .elementor-icon-list-icon svg{fill:#FFFFFF}

/* Bloc a propos */
.esp-aboutquote::before{content:"“";display:block;font:700 48px/1 Montserrat,sans-serif;color:#6B6B6B;margin-bottom:6px}
.esp-taglist .elementor-icon-list-icon{display:none}
.esp-taglist .elementor-icon-list-item{border:1px solid #E6E6E6;border-radius:4px;padding:7px 13px;margin-right:9px;margin-bottom:9px}
.esp-taglist .elementor-icon-list-text{font:700 12px/1 Montserrat,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#6B6B6B}

/* Lien fleche : le survol allonge la fleche */
.esp-linkbtn .elementor-button-content-wrapper{gap:9px}
.esp-statlist .elementor-icon-list-icon svg{width:16px;height:16px;stroke:currentColor;fill:none}
.esp-statlist .elementor-icon-list-item{align-items:center;color:#6B6B6B}
.esp-statlist .elementor-icon-list-item:last-child{color:#FFFFFF}


/* --- Bande d'appel a l'action sous une grille --- */
.esp-ctaband{aspect-ratio:auto!important;min-height:0!important;background:transparent!important;border:0!important;border-top:1px solid #2A2A2A!important;border-radius:0!important;padding:24px 0 0!important;justify-content:flex-start!important;gap:8px}
.esp-ctaband::before,.esp-ctaband::after{content:none!important}
.esp-ctaband--light{border-top-color:#E6E6E6!important}/* End custom CSS */