/* Pages « Nos réalisations », « Témoignages clients », « Conseils » et « Nos zones d'intervention » pour Duda — généré par tools/build-duda-pages.mjs, ne pas modifier à la main.
   Tout est préfixé sous #iso-pages (rien ne touche au reste du site Duda). Les déclarations sont en !important :
   Duda impose couleurs, polices, interlignes et marges aux h1/h2/h3/p/a/img/button avec des sélecteurs plus forts
   (ex. « #dm div.dmContent h1 »). Couleurs : charte isodeco.org (variables --io-*, relevées sur le site). */
@font-face { font-family: "Outfit"; src: url("../fonts/outfit-latin-wght.woff2") format("woff2"); font-weight: 300 800; font-style: normal; font-display: swap; }
@font-face { font-family: "Inter"; src: url("../fonts/inter-latin-wght.woff2") format("woff2"); font-weight: 300 700; font-style: normal; font-display: swap; }

#iso-pages {
	--io-violet: #3b247e; --io-bleu: #3667b3; --io-nuit: #001167; --io-vert: #7cc900;
	--io-texte: rgba(59, 36, 126, .75); --io-lavande: #f3f2f9;
	--io-grad: linear-gradient(90deg, rgb(62, 200, 58) 0%, rgb(124, 201, 0) 100%);
	--io-ombre: rgba(59, 36, 126, .23) 3px 3px 11px 0px;
	display: block !important; position: relative !important; box-sizing: border-box !important;
	/* Pleine largeur dans la colonne Duda (comme le gabarit pleine largeur de WordPress). */
	width: 100vw !important; max-width: 100vw !important; margin: 0 0 0 calc(50% - 50vw) !important; padding: 0 !important;
	min-height: 60vh;
	background: #fff !important; text-align: left !important; direction: ltr !important;
	font: 400 18px/1.5 "Outfit", system-ui, sans-serif !important; color: rgba(59, 36, 126, .75) !important;
	letter-spacing: normal !important; text-transform: none !important; text-shadow: none !important; word-spacing: normal !important;
	-webkit-font-smoothing: antialiased; -webkit-text-size-adjust: 100%;
}
html, body { overflow-x: clip; }
/* Seuls la ligne et le widget Duda qui contiennent le module : sans marge ni retrait, le module touche l'en-tête et le pied. */
.dmRespRow:has(#iso-pages) { padding-top: 0 !important; padding-bottom: 0 !important; }
.dmCustomHtml:has(> #iso-pages) { margin-top: 0 !important; margin-bottom: 0 !important; }
#iso-pages *, #iso-pages *::before, #iso-pages *::after { box-sizing: border-box; }
#iso-pages :is(h1, h2, h3, h4, h5, h6) { margin: 0 !important; padding: 0 !important; border: 0 !important; background: none; font-family: "Outfit", sans-serif !important; font-style: normal !important; font-weight: 700 !important; line-height: 1.25 !important; color: #3b247e !important; letter-spacing: normal !important; text-transform: none !important; text-align: inherit !important; text-shadow: none !important; text-decoration: none !important; direction: ltr !important; }
#iso-pages :is(p, ul, ol, dl, dd, figure, blockquote) { margin: 0 !important; }
#iso-pages :is(p, li, span, strong, b, em, small, dt, dd, label, summary, blockquote, figcaption, footer, nav, time) { font-family: inherit !important; letter-spacing: inherit !important; text-transform: inherit !important; text-shadow: none !important; direction: ltr !important; }
#iso-pages :is(p, li, dt, dd, summary, blockquote, figcaption, footer) { color: inherit !important; font-size: inherit !important; line-height: inherit !important; font-weight: inherit; text-align: inherit !important; }
#iso-pages a { color: #3667b3 !important; text-decoration: none !important; font-family: inherit !important; letter-spacing: inherit !important; text-transform: none !important; text-shadow: none !important; outline: 0; vertical-align: baseline !important; }
#iso-pages a:focus-visible { outline: 3px solid var(--io-vert); outline-offset: 3px; }
#iso-pages img { max-width: 100% !important; height: auto; border: 0 !important; margin: 0; padding: 0 !important; box-shadow: none; vertical-align: middle; }
#iso-pages video { max-width: 100% !important; box-sizing: border-box; }
#iso-pages :is(button, input, select) { font-family: inherit !important; letter-spacing: normal !important; text-transform: none !important; text-shadow: none !important; margin: 0 !important; -webkit-appearance: none; }
#iso-pages [hidden]:not(#iso-x) { display: none !important; }
#iso-pages .iso-loading { display: grid !important; place-items: center !important; min-height: 60vh !important; color: var(--io-violet) !important; font: 600 1rem "Outfit", sans-serif !important; }
#iso-pages .iso-loading::before { content: "" !important; width: 42px; height: 42px; border-radius: 50%; border: 4px solid var(--io-lavande); border-top-color: var(--io-vert); animation: iso-spin .8s linear infinite; }
@keyframes iso-spin { to { transform: rotate(360deg); } }

/* ---- realisations/realisations.css (WordPress) ---- */
#iso-pages .ir { --ir-violet: var(--io-violet, #3b247e); --ir-nuit: var(--io-nuit, #001167); --ir-bleu: var(--io-bleu, #3667b3); --ir-vert: var(--io-vert, #7cc900); --ir-vert-2: #3ec83a; --ir-grad: var(--io-grad, linear-gradient(90deg, #3ec83a 0%, #7cc900 100%)); --ir-lavande: var(--io-lavande, #f3f2f9); --ir-texte: var(--io-texte, rgba(59, 36, 126, .75)); --ir-line: #e6e3f3; --ir-ease: cubic-bezier(.2, .75, .2, 1); font-family: "Outfit", system-ui, sans-serif !important; color: var(--ir-texte) !important }
#iso-pages .ir *, #iso-pages .ir *::before, #iso-pages .ir *::after { box-sizing: border-box !important }
#iso-pages .ir h1, #iso-pages .ir h2, #iso-pages .ir h3 { font-family: "Outfit", sans-serif !important; color: var(--ir-violet) !important; margin: 0 !important; letter-spacing: -.01em !important }
#iso-pages .ir svg { fill: none !important; stroke: currentColor !important; stroke-width: 1.8 !important; stroke-linecap: round !important; stroke-linejoin: round !important }
#iso-pages .ir :focus-visible { outline: 3px solid var(--ir-vert) !important; outline-offset: 3px !important }
#iso-pages .ir .screen-reader-text { width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(0 0 0 0) !important; white-space: nowrap !important }
#iso-pages#iso-pages .ir .screen-reader-text { position: absolute !important }
#iso-pages .ir-hero { position: relative !important; overflow: hidden !important; background: var(--ir-lavande) !important; padding: clamp(2.5rem, 5vw, 4.5rem) clamp(1rem, 4vw, 3rem) clamp(3.5rem, 6vw, 5.5rem) !important }
#iso-pages .ir-hero::before, #iso-pages .ir-hero::after { content: "" !important; position: absolute !important; pointer-events: none !important }
#iso-pages .ir-hero::before { width: 420px !important; height: 420px !important; left: -160px !important; bottom: -220px !important; background: var(--ir-grad) !important; opacity: .14 !important; transform: rotate(32deg) !important; border-radius: 60px !important }
#iso-pages .ir-hero::after { width: 360px !important; height: 360px !important; right: 38% !important; top: -250px !important; background: linear-gradient(135deg, var(--ir-violet), var(--ir-bleu)) !important; opacity: .08 !important; transform: rotate(28deg) !important; border-radius: 60px !important }
#iso-pages .ir-hero__in { position: relative !important; z-index: 1 !important; max-width: 1240px !important; margin: 0 auto !important; display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr) !important; gap: clamp(2rem, 4vw, 4rem) !important; align-items: center !important }
#iso-pages .ir-kicker { font: 700 .9rem/1.2 "Outfit", sans-serif !important; letter-spacing: .12em !important; text-transform: uppercase !important; color: var(--ir-vert-2) !important }
#iso-pages#iso-pages .ir-kicker { margin: 0 0 .8rem !important }
#iso-pages .ir-hero h1 { font-size: clamp(2.2rem, 4.4vw, 3.6rem) !important; line-height: 1.05 !important; font-weight: 800 !important; color: var(--ir-nuit) !important; text-wrap: balance !important }
#iso-pages .ir-hero h1 span { color: var(--ir-vert) !important }
#iso-pages .ir-lead { max-width: 560px !important; font-size: clamp(1.02rem, 1.3vw, 1.15rem) !important; line-height: 1.6 !important; color: var(--ir-texte) !important }
#iso-pages#iso-pages .ir-lead { margin: 1.2rem 0 0 !important }
#iso-pages .ir-stats { list-style: none !important; display: flex !important; flex-wrap: wrap !important; gap: .8rem !important }
#iso-pages#iso-pages .ir-stats { margin: 2rem 0 0 !important; padding: 0 !important }
#iso-pages .ir-stats li { display: flex !important; align-items: center !important; gap: .75rem !important; padding: .85rem 1.1rem !important; border-radius: 16px !important; background: #fff !important; box-shadow: var(--io-ombre, rgba(59, 36, 126, .23) 3px 3px 11px 0) !important }
#iso-pages .ir-stats__ico { flex: 0 0 auto !important; display: grid !important; place-items: center !important; width: 42px !important; height: 42px !important; border-radius: 12px !important; background: rgba(124, 201, 0, .14) !important; color: var(--ir-vert-2) !important }
#iso-pages .ir-stats__ico svg { width: 24px !important; height: 24px !important }
#iso-pages .ir-stats li > span:last-child { display: flex !important; flex-direction: column !important; font-size: .88rem !important; line-height: 1.25 !important; color: var(--ir-texte) !important }
#iso-pages .ir-stats strong { color: var(--ir-nuit) !important; font-size: 1.05rem !important; font-weight: 700 !important }
#iso-pages .ir-hero__media { position: relative !important; min-height: 460px !important }
#iso-pages .ir-hero__ph { position: absolute !important; margin: 0 !important; overflow: hidden !important; border-radius: 22px !important; background: #ddd !important; box-shadow: 0 30px 60px -30px rgba(0, 17, 103, .55) !important }
#iso-pages .ir-hero__ph img { display: block !important; width: 100% !important; height: 100% !important; object-fit: cover !important }
#iso-pages .ir-hero__ph figcaption { position: absolute !important; left: .7rem !important; bottom: .7rem !important; display: inline-flex !important; align-items: center !important; gap: .3rem !important; padding: .3rem .65rem !important; border-radius: 999px !important; background: rgba(255, 255, 255, .94) !important; color: var(--ir-nuit) !important; font-size: .78rem !important; font-weight: 600 !important }
#iso-pages .ir-hero__ph figcaption svg { width: 14px !important; height: 14px !important; color: var(--ir-vert-2) !important }
#iso-pages .ir-hero__ph--1 { left: 0 !important; top: 4% !important; width: 68% !important; height: 74% !important; z-index: 1 !important }
#iso-pages .ir-hero__ph--2 { right: 0 !important; top: 0 !important; width: 40% !important; height: 46% !important; z-index: 2 !important; border: 5px solid #fff !important }
#iso-pages .ir-hero__ph--3 { right: 6% !important; bottom: 0 !important; width: 46% !important; height: 44% !important; z-index: 2 !important; border: 5px solid #fff !important }
#iso-pages .ir-chip { position: absolute !important; z-index: 3 !important; display: inline-flex !important; align-items: center !important; gap: .55rem !important; padding: .45rem .95rem .45rem .45rem !important; border-radius: 999px !important; background: #fff !important; color: var(--ir-nuit) !important; font-weight: 600 !important; font-size: .9rem !important; box-shadow: 0 14px 30px -14px rgba(0, 17, 103, .45) !important; text-decoration: none !important; transition: transform .3s var(--ir-ease) }
#iso-pages .ir-chip span { display: grid !important; place-items: center !important; width: 28px !important; height: 28px !important; border-radius: 50% !important; background: var(--ir-grad) !important; color: #fff !important; font-size: 1.15rem !important; font-weight: 700 !important; line-height: 1 !important }
#iso-pages .ir-chip:hover { transform: translateY(-3px) !important; color: var(--ir-nuit) !important }
#iso-pages .ir-chip--1 { left: 34% !important; top: 12% !important }
#iso-pages .ir-chip--2 { left: 4% !important; top: 58% !important }
#iso-pages .ir-chip--3 { right: 2% !important; top: 49% !important }
#iso-pages .ir-chip--4 { left: 3% !important; bottom: 8% !important }
#iso-pages .ir-list { padding: 0 clamp(1rem, 4vw, 3rem) clamp(3rem, 6vw, 5rem) !important; background: #fff !important }
#iso-pages .ir-list__in { max-width: 1240px !important; margin: 0 auto !important }
#iso-pages .ir-hero + .ir-list .ir-list__in { position: relative !important; z-index: 2 !important; margin-top: -2.2rem !important; padding: 1.6rem clamp(1rem, 2.5vw, 1.8rem) 0 !important; border-radius: 28px 28px 0 0 !important; background: #fff !important }
#iso-pages .ir-tools { display: flex !important; flex-wrap: wrap !important; align-items: center !important; justify-content: space-between !important; gap: 1rem 1.5rem !important }
#iso-pages .ir-filters { display: flex !important; flex-wrap: wrap !important; gap: .5rem !important }
#iso-pages .ir-tools > * { min-width: 0 !important; max-width: 100% !important }
#iso-pages .ir-filter { display: inline-flex !important; align-items: center !important; gap: .45rem !important; min-height: 44px !important; padding: .55rem 1.05rem !important; border-radius: 999px !important; border: 1.5px solid var(--ir-line) !important; background: #fff !important; color: var(--ir-violet) !important; font-weight: 600 !important; font-size: .95rem !important; text-decoration: none !important; transition: background-color .25s, color .25s, border-color .25s, transform .25s var(--ir-ease) }
#iso-pages .ir-filter:hover { border-color: var(--ir-violet) !important; color: var(--ir-violet) !important; transform: translateY(-1px) !important }
#iso-pages .ir-filter__n { display: inline-grid !important; place-items: center !important; min-width: 22px !important; height: 22px !important; padding: 0 .35rem !important; border-radius: 999px !important; background: var(--ir-lavande) !important; color: var(--ir-violet) !important; font-size: .75rem !important; font-weight: 700 !important }
#iso-pages .ir-filter.is-active { background: var(--ir-grad) !important; border-color: transparent !important; color: #fff !important; box-shadow: 0 10px 22px -12px rgba(62, 200, 58, .9) !important }
#iso-pages .ir-filter.is-active .ir-filter__n { background: rgba(255, 255, 255, .25) !important; color: #fff !important }
#iso-pages .ir-search { display: flex !important; flex-wrap: wrap !important; gap: .6rem !important }
#iso-pages .ir-input, #iso-pages .ir-select { position: relative !important; display: flex !important; align-items: center !important }
#iso-pages .ir-input svg { position: absolute !important; left: 1rem !important; width: 18px !important; height: 18px !important; color: var(--ir-violet) !important; opacity: .7 !important; pointer-events: none !important }
#iso-pages .ir-input input, #iso-pages .ir-select select { min-height: 46px !important; border: 1.5px solid var(--ir-line) !important; border-radius: 999px !important; background: var(--ir-lavande) !important; color: var(--ir-nuit) !important; font: 500 .95rem "Outfit", sans-serif !important; transition: border-color .2s, background-color .2s, box-shadow .2s }
#iso-pages .ir-input input { width: min(320px, 78vw) !important; padding: 0 1rem 0 2.6rem !important }
#iso-pages .ir-select select { padding: 0 2.4rem 0 1rem !important; appearance: none !important; cursor: pointer !important; background-image: linear-gradient(45deg, transparent 50%, var(--ir-violet) 50%), linear-gradient(135deg, var(--ir-violet) 50%, transparent 50%) !important; background-position: calc(100% - 20px) 20px, calc(100% - 14px) 20px !important; background-size: 6px 6px !important; background-repeat: no-repeat !important }
#iso-pages .ir-input input:focus, #iso-pages .ir-select select:focus { outline: none !important; background-color: #fff !important; border-color: var(--ir-violet) !important; box-shadow: 0 0 0 4px rgba(59, 36, 126, .12) !important }
#iso-pages .ir-count { font-size: .95rem !important; color: var(--ir-texte) !important }
#iso-pages#iso-pages .ir-count { margin: 1.4rem 0 1rem !important }
#iso-pages .ir-count span { color: var(--ir-nuit) !important; font-weight: 700 !important }
#iso-pages .ir-grid { list-style: none !important; display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)) !important; gap: 1.4rem !important }
#iso-pages#iso-pages .ir-grid { margin: 0 !important; padding: 0 !important }
#iso-pages .ir-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)) !important }
#iso-pages .ir-card { opacity: 1 !important; transform: none !important }
#iso-pages .ir-card[hidden] { display: none !important }
#iso-pages .ir.is-js .ir-card.is-pending { opacity: 0 !important; transform: translateY(18px) !important }
#iso-pages .ir.is-js .ir-card.is-in { transition: opacity .6s var(--ir-ease), transform .6s var(--ir-ease) }
#iso-pages .ir-card__link { display: flex !important; flex-direction: column !important; height: 100% !important; overflow: hidden !important; border-radius: 18px !important; background: #fff !important; border: 1px solid var(--ir-line) !important; box-shadow: 0 18px 40px -32px rgba(0, 17, 103, .55) !important; text-decoration: none !important; transition: transform .35s var(--ir-ease), box-shadow .35s var(--ir-ease), border-color .35s }
#iso-pages .ir-card__link:hover { transform: translateY(-5px) !important; border-color: transparent !important; box-shadow: var(--io-ombre, rgba(59, 36, 126, .23) 3px 3px 11px 0), 0 26px 50px -30px rgba(0, 17, 103, .6) !important }
#iso-pages .ir-card__media { position: relative !important; display: block !important; aspect-ratio: 4 / 3 !important; overflow: hidden !important; background: var(--ir-lavande) !important }
#iso-pages .ir-card__img { display: block !important; width: 100% !important; height: 100% !important; object-fit: cover !important; transition: transform .8s var(--ir-ease) }
#iso-pages .ir-card__link:hover .ir-card__img { transform: scale(1.06) !important }
#iso-pages .ir-card__video { position: absolute !important; left: .8rem !important; bottom: .8rem !important; z-index: 2 !important; display: inline-flex !important; align-items: center !important; gap: .4rem !important; height: 34px !important; padding: 0 .8rem 0 .55rem !important; border-radius: 999px !important; background: var(--io-grad, linear-gradient(90deg, #3ec83a, #7cc900)) !important; color: #fff !important; font: 700 .8rem/1 "Outfit", sans-serif !important; box-shadow: 0 8px 20px -10px rgba(0, 17, 103, .55) !important }
#iso-pages .ir-card__video svg { width: 18px !important; height: 18px !important; fill: #fff !important; flex: none !important }
#iso-pages .ir-card__badges { position: absolute !important; left: .8rem !important; top: .8rem !important; display: flex !important; gap: .35rem !important }
#iso-pages .ir-badge { display: inline-flex !important; align-items: center !important; padding: .35rem .8rem !important; border-radius: 999px !important; color: #fff !important; font: 600 .8rem/1.1 "Outfit", sans-serif !important; letter-spacing: .01em !important }
#iso-pages .ir-badge.is-nuit { background: var(--ir-nuit) !important }
#iso-pages .ir-badge.is-violet { background: var(--ir-violet) !important }
#iso-pages .ir-badge.is-bleu { background: var(--ir-bleu) !important }
#iso-pages .ir-badge.is-vert { background: var(--ir-grad) !important }
#iso-pages .ir-card__body { display: flex !important; flex-direction: column !important; gap: .5rem !important; flex: 1 !important; padding: 1.05rem 1.15rem 1.15rem !important }
#iso-pages .ir-card__title { color: var(--ir-violet) !important; font-size: 1.12rem !important; line-height: 1.25 !important; font-weight: 700 !important }
#iso-pages .ir-card__text { color: var(--ir-texte) !important; font-size: .9rem !important; line-height: 1.45 !important }
#iso-pages .ir-card__foot { display: flex !important; align-items: center !important; justify-content: space-between !important; gap: .6rem !important; margin-top: auto !important; padding-top: .7rem !important; border-top: 1px solid var(--ir-line) !important; font-size: .9rem !important }
#iso-pages .ir-card__ville { display: inline-flex !important; align-items: center !important; gap: .3rem !important; color: var(--ir-texte) !important; font-weight: 500 !important }
#iso-pages .ir-card__ville svg { width: 16px !important; height: 16px !important; color: var(--ir-vert-2) !important }
#iso-pages .ir-card__more { color: var(--ir-bleu) !important; font-weight: 700 !important; white-space: nowrap !important }
#iso-pages .ir-card__more span { display: inline-block !important; transition: transform .3s var(--ir-ease) }
#iso-pages .ir-card__link:hover .ir-card__more span { transform: translateX(4px) !important }
#iso-pages .ir-empty { padding: 3rem 1rem !important; text-align: center !important; border-radius: 20px !important; background: var(--ir-lavande) !important }
#iso-pages .ir-empty[hidden], #iso-pages .ir-more[hidden] { display: none !important }
#iso-pages .ir-empty p { color: var(--ir-nuit) !important }
#iso-pages#iso-pages .ir-empty p { margin: 0 0 1rem !important }
#iso-pages .ir-more { margin-top: 2rem !important; text-align: center !important }
#iso-pages .ir-btn { display: inline-flex !important; align-items: center !important; justify-content: center !important; gap: .55rem !important; min-height: 52px !important; padding: .8rem 1.6rem !important; border: 0 !important; border-radius: 999px !important; background: var(--ir-grad) !important; font: 700 1rem/1.1 "Outfit", sans-serif !important; text-decoration: none !important; cursor: pointer !important; box-shadow: var(--io-ombre, rgba(59, 36, 126, .23) 3px 3px 11px 0) !important; transition: transform .25s var(--ir-ease), filter .25s }
#iso-pages#iso-pages .ir-btn { color: #fff !important }
#iso-pages .ir-btn:hover { transform: translateY(-2px) !important; filter: brightness(1.05) !important }
#iso-pages .ir-btn--ghost { background: #fff !important; border: 1.5px solid var(--ir-line) !important; box-shadow: none !important }
#iso-pages#iso-pages .ir-btn--ghost { color: var(--ir-violet) !important }
#iso-pages .ir-btn--ghost:hover { border-color: var(--ir-violet) !important }
#iso-pages .ir-btn--light { background: rgba(255, 255, 255, .12) !important; border: 1.5px solid rgba(255, 255, 255, .55) !important; box-shadow: none !important }
#iso-pages .ir-cta { padding: 0 clamp(1rem, 4vw, 3rem) clamp(3rem, 6vw, 5rem) !important; background: #fff !important }
#iso-pages .ir-cta__in { max-width: 1240px !important; margin: 0 auto !important; display: flex !important; flex-wrap: wrap !important; align-items: center !important; justify-content: space-between !important; gap: 1.5rem !important; padding: clamp(1.8rem, 4vw, 2.8rem) !important; border-radius: 26px !important; background: linear-gradient(120deg, var(--ir-violet) 0%, var(--ir-nuit) 100%) !important; color: #fff !important }
#iso-pages .ir-cta h2 { color: #fff !important; font-size: clamp(1.5rem, 2.6vw, 2.1rem) !important; font-weight: 800 !important }
#iso-pages .ir-cta p { color: rgba(255, 255, 255, .82) !important }
#iso-pages#iso-pages .ir-cta p { margin: .4rem 0 0 !important }
#iso-pages .ir-cta__actions { display: flex !important; flex-wrap: wrap !important; gap: .7rem !important }
#iso-pages .ir-fiche { background: var(--ir-lavande) !important; padding: clamp(1.5rem, 3vw, 2.5rem) clamp(1rem, 4vw, 3rem) clamp(2.5rem, 5vw, 4rem) !important }
#iso-pages .ir-fiche__in { max-width: 1240px !important; margin: 0 auto !important }
#iso-pages .ir-crumbs { display: flex !important; flex-wrap: wrap !important; align-items: center !important; gap: .5rem !important; margin-bottom: 1.4rem !important; font-size: .9rem !important }
#iso-pages .ir-crumbs a { color: var(--ir-bleu) !important; font-weight: 600 !important }
#iso-pages .ir-crumbs [aria-current] { color: var(--ir-texte) !important }
#iso-pages .ir-fiche__grid { display: grid !important; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr) !important; gap: clamp(1.5rem, 4vw, 3.5rem) !important; align-items: start !important }
#iso-pages .ir-gallery { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: .7rem !important }
#iso-pages .ir-gallery__item { position: relative !important; display: block !important; overflow: hidden !important; border-radius: 16px !important; aspect-ratio: 4 / 3 !important; background: #ddd !important }
#iso-pages .ir-gallery__item.is-main { grid-column: 1 / -1 !important; aspect-ratio: auto !important; max-height: 640px !important; border-radius: 22px !important; box-shadow: 0 30px 60px -36px rgba(0, 17, 103, .6) !important }
#iso-pages .ir-gallery__item img { display: block !important; width: 100% !important; height: 100% !important; object-fit: cover !important; transition: transform .8s var(--ir-ease) }
#iso-pages .ir-gallery__item.is-main img { max-height: 640px !important }
#iso-pages .ir-gallery__item:hover img { transform: scale(1.04) !important }
#iso-pages .ir-gallery__zoom { position: absolute !important; right: .7rem !important; bottom: .7rem !important; display: grid !important; place-items: center !important; width: 40px !important; height: 40px !important; border-radius: 50% !important; background: rgba(255, 255, 255, .95) !important; color: var(--ir-violet) !important; opacity: 0 !important; transform: translateY(6px) !important; transition: opacity .3s, transform .3s var(--ir-ease) }
#iso-pages .ir-gallery__zoom svg { width: 20px !important; height: 20px !important }
#iso-pages .ir-gallery__item:hover .ir-gallery__zoom, #iso-pages .ir-gallery__item:focus-visible .ir-gallery__zoom { opacity: 1 !important; transform: none !important }
#iso-pages .ir-fiche__info { position: sticky !important; top: 150px !important; padding: clamp(1.4rem, 3vw, 2.2rem) !important; border-radius: 24px !important; background: #fff !important; box-shadow: var(--io-ombre, rgba(59, 36, 126, .23) 3px 3px 11px 0) !important }
#iso-pages .ir-fiche__info h1 { font-size: clamp(1.8rem, 3vw, 2.5rem) !important; line-height: 1.1 !important; font-weight: 800 !important; color: var(--ir-nuit) !important; text-wrap: balance !important }
#iso-pages .ir-fiche__badges { display: flex !important; flex-wrap: wrap !important; gap: .4rem !important; margin-top: 1rem !important }
#iso-pages .ir-facts { display: grid !important; gap: .1rem !important; padding: 0 !important }
#iso-pages#iso-pages .ir-facts { margin: 1.4rem 0 0 !important }
#iso-pages .ir-facts div { display: grid !important; grid-template-columns: 110px 1fr !important; gap: .8rem !important; padding: .7rem 0 !important; border-bottom: 1px solid var(--ir-line) !important }
#iso-pages .ir-facts dt { color: var(--ir-texte) !important; font-size: .9rem !important }
#iso-pages .ir-facts dd { display: inline-flex !important; align-items: center !important; gap: .3rem !important; margin: 0 !important; color: var(--ir-nuit) !important; font-weight: 600 !important }
#iso-pages .ir-facts dd svg { width: 16px !important; height: 16px !important; color: var(--ir-vert-2) !important }
#iso-pages .ir-fiche__text { margin-top: 1.2rem !important; font-size: 1.05rem !important; line-height: 1.65 !important; color: var(--ir-texte) !important }
#iso-pages .ir-fiche__h2 { font-size: 1.15rem !important; font-weight: 700 !important }
#iso-pages#iso-pages .ir-fiche__h2 { margin-top: 1.6rem !important }
#iso-pages .ir-presta { list-style: none !important; display: grid !important; gap: .5rem !important }
#iso-pages#iso-pages .ir-presta { margin: .8rem 0 0 !important; padding: 0 !important }
#iso-pages .ir-presta a { display: flex !important; align-items: center !important; justify-content: space-between !important; gap: 1rem !important; padding: .8rem 1rem !important; border-radius: 14px !important; background: var(--ir-lavande) !important; text-decoration: none !important; transition: background-color .25s, transform .25s var(--ir-ease) }
#iso-pages .ir-presta a:hover { background: #ebe8f7 !important; transform: translateX(3px) !important }
#iso-pages .ir-presta span { color: var(--ir-violet) !important; font-weight: 700 !important }
#iso-pages .ir-presta small { color: var(--ir-bleu) !important; font-weight: 600 !important; font-size: .85rem !important; white-space: nowrap !important }
#iso-pages .ir-fiche__actions { display: flex !important; flex-wrap: wrap !important; align-items: center !important; gap: 1rem !important; margin-top: 1.6rem !important }
#iso-pages .ir-back { color: var(--ir-bleu) !important; font-weight: 600 !important }
#iso-pages .ir-section-title { padding-top: clamp(2.5rem, 5vw, 4rem) !important; font-size: clamp(1.5rem, 2.6vw, 2rem) !important; font-weight: 800 !important }
#iso-pages#iso-pages .ir-section-title { margin: 0 0 1.4rem !important }
#iso-pages .ir-lightbox { width: min(1200px, 94vw) !important; max-width: none !important; max-height: 92vh !important; padding: 0 !important; border: 0 !important; border-radius: 18px !important; background: #0b0f2e !important; overflow: visible !important }
#iso-pages .ir-lightbox::backdrop { background: rgba(0, 17, 103, .82) !important }
#iso-pages .ir-lightbox img { display: block !important; width: 100% !important; max-height: 92vh !important; object-fit: contain !important; border-radius: 18px !important }
#iso-pages .ir-lightbox button { position: absolute !important; display: grid !important; place-items: center !important; width: 46px !important; height: 46px !important; border: 0 !important; border-radius: 50% !important; background: #fff !important; color: var(--ir-violet) !important; font-size: 1.6rem !important; line-height: 1 !important; cursor: pointer !important; box-shadow: 0 10px 24px -10px rgba(0, 0, 0, .6) !important }
#iso-pages .ir-lightbox__close { top: -14px !important; right: -14px !important }
#iso-pages .ir-lightbox__nav { top: 50% !important; transform: translateY(-50%) !important }
#iso-pages .ir-lightbox__nav.is-prev { left: -18px !important }
#iso-pages .ir-lightbox__nav.is-next { right: -18px !important }
#iso-pages .ir-lightbox__nav[hidden] { display: none !important }
#iso-pages .ir.is-js .ir-hero__text > * { opacity: 0 !important; transform: translateY(16px) !important }
#iso-pages .ir.is-js.is-ready .ir-hero__text > * { opacity: 1 !important; transform: none !important; transition: opacity .8s var(--ir-ease), transform .8s var(--ir-ease) }
#iso-pages .ir.is-js.is-ready .ir-hero__text > :nth-child(2) { transition-delay: .08s }
#iso-pages .ir.is-js.is-ready .ir-hero__text > :nth-child(3) { transition-delay: .16s }
#iso-pages .ir.is-js.is-ready .ir-hero__text > :nth-child(4) { transition-delay: .24s }
#iso-pages .ir.is-js .ir-hero__ph, #iso-pages .ir.is-js .ir-chip { opacity: 0 !important; transform: scale(.96) translateY(14px) !important }
#iso-pages .ir.is-js.is-ready .ir-hero__ph, #iso-pages .ir.is-js.is-ready .ir-chip { opacity: 1 !important; transform: none !important; transition: opacity .9s var(--ir-ease), transform .9s var(--ir-ease) }
#iso-pages .ir.is-js.is-ready .ir-hero__ph--2 { transition-delay: .12s }
#iso-pages .ir.is-js.is-ready .ir-hero__ph--3 { transition-delay: .22s }
#iso-pages .ir.is-js.is-ready .ir-chip--1 { transition-delay: .45s }
#iso-pages .ir.is-js.is-ready .ir-chip--2 { transition-delay: .55s }
#iso-pages .ir.is-js.is-ready .ir-chip--3 { transition-delay: .65s }
#iso-pages .ir.is-js.is-ready .ir-chip--4 { transition-delay: .75s }
#iso-pages .ir.is-js.is-ready .ir-chip:hover { transform: translateY(-3px) !important; transition-delay: 0s }
@media (max-width: 1180px) {
#iso-pages .ir-grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important }
}
@media (max-width: 960px) {
#iso-pages .ir-hero__in { grid-template-columns: 1fr !important }
#iso-pages .ir-hero__media { min-height: 380px !important }
#iso-pages .ir-grid, #iso-pages .ir-grid--3 { grid-template-columns: repeat(2, minmax(0, 1fr)) !important }
#iso-pages .ir-fiche__grid { grid-template-columns: 1fr !important }
#iso-pages .ir-fiche__info { position: static !important }
#iso-pages .ir-tools { flex-direction: column !important; align-items: stretch !important }
#iso-pages .ir-search { width: 100% !important }
#iso-pages .ir-input { flex: 1 1 220px !important }
#iso-pages .ir-input input { width: 100% !important }
}
@media (max-width: 640px) {
#iso-pages .ir-hero__media { min-height: 300px !important }
#iso-pages .ir-chip { font-size: .8rem !important; padding-right: .7rem !important }
#iso-pages .ir-chip span { width: 24px !important; height: 24px !important }
#iso-pages .ir-chip--4 { display: none !important }
#iso-pages .ir-stats li { flex: 1 1 100% !important }
#iso-pages .ir-filters { flex-wrap: nowrap !important; overflow-x: auto !important; width: calc(100% + 2rem) !important; max-width: none !important; margin: 0 -1rem !important; padding: 0 1rem .3rem !important; scrollbar-width: none !important }
#iso-pages .ir-filters::-webkit-scrollbar { display: none !important }
#iso-pages .ir-filter { flex: 0 0 auto !important }
#iso-pages .ir-grid, #iso-pages .ir-grid--3 { grid-template-columns: 1fr !important }
#iso-pages .ir-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)) !important }
#iso-pages .ir-cta__actions, #iso-pages .ir-cta__actions .ir-btn { width: 100% !important }
#iso-pages .ir-facts div { grid-template-columns: 90px 1fr !important }
}
@media (prefers-reduced-motion: reduce) {
#iso-pages#iso-pages .ir *, #iso-pages#iso-pages .ir *::before, #iso-pages#iso-pages .ir *::after { transition: none !important; animation: none !important }
#iso-pages .ir.is-js .ir-hero__text > *, #iso-pages .ir.is-js .ir-hero__ph, #iso-pages .ir.is-js .ir-chip, #iso-pages .ir.is-js .ir-card.is-pending { opacity: 1 !important; transform: none !important }
}

/* ---- pages/temoignages.css (WordPress) ---- */
#iso-pages .itm { --itm-violet: var(--io-violet, #3b247e); --itm-nuit: var(--io-nuit, #001167); --itm-bleu: var(--io-bleu, #3667b3); --itm-vert: var(--io-vert, #7cc900); --itm-vert-2: #3ec83a; --itm-grad: var(--io-grad, linear-gradient(90deg, #3ec83a 0%, #7cc900 100%)); --itm-lavande: var(--io-lavande, #f3f2f9); --itm-texte: var(--io-texte, rgba(59, 36, 126, .75)); --itm-line: #e6e3f3; --itm-ease: cubic-bezier(.2, .75, .2, 1); overflow-x: clip !important }
#iso-pages .itm-hero { padding-bottom: clamp(2.5rem, 5vw, 4rem) !important }
#iso-pages .itm-hero__in { position: relative !important; z-index: 1 !important; max-width: 1240px !important; margin: 0 auto !important }
#iso-pages .itm-hero h1 { max-width: 820px !important }
#iso-pages .itm-lead { max-width: 720px !important; font-size: clamp(1.02rem, 1.3vw, 1.15rem) !important; line-height: 1.6 !important; color: var(--itm-texte) !important }
#iso-pages#iso-pages .itm-lead { margin: 1.1rem 0 0 !important }
#iso-pages .itm-count { display: inline-flex !important; align-items: center !important; gap: .55rem !important; padding: .6rem 1.1rem !important; border-radius: 999px !important; background: #fff !important; color: var(--itm-violet) !important; font-weight: 700 !important; box-shadow: var(--io-ombre, rgba(59, 36, 126, .23) 3px 3px 11px 0) !important }
#iso-pages#iso-pages .itm-count { margin: 1.5rem 0 0 !important }
#iso-pages .itm-count svg { width: 20px !important; height: 20px !important; color: var(--itm-vert-2) !important }
#iso-pages .itm-list { padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 4vw, 3rem) clamp(2.5rem, 5vw, 4rem) !important; background: #fff !important }
#iso-pages .itm .ir-list__in { max-width: 1240px !important; margin: 0 auto !important }
#iso-pages .itm-grid { grid-template-columns: repeat(auto-fill, minmax(min(100%, 270px), 1fr)) !important }
#iso-pages .itm-card__media { aspect-ratio: 9 / 16 !important; background: var(--itm-nuit) !important }
#iso-pages .itm-card__media .ir-card__img { object-position: center top !important }
#iso-pages .itm-card__media .ir-card__badges { display: none !important }
#iso-pages .itm-card__media .itm-play { top: 41% !important }
#iso-pages .itm-play { position: absolute !important; left: 50% !important; top: 50% !important; display: grid !important; place-items: center !important; width: 64px !important; height: 64px !important; margin: -32px 0 0 -32px !important; border-radius: 50% !important; background: var(--itm-grad) !important; color: #fff !important; box-shadow: 0 14px 30px -12px rgba(0, 17, 103, .8) !important; transition: transform .35s var(--itm-ease) }
#iso-pages .itm-play svg { width: 28px !important; height: 28px !important; margin-left: 4px !important }
#iso-pages .ir-card__link:hover .itm-play, #iso-pages .itm-yt:hover .itm-play { transform: scale(1.1) !important }
#iso-pages .itm-play--big { width: 84px !important; height: 84px !important; margin: -42px 0 0 -42px !important }
#iso-pages .itm-play--big svg { width: 36px !important; height: 36px !important }
#iso-pages .itm-top { position: relative !important; overflow: hidden !important; background: var(--itm-lavande) !important; padding: clamp(1.5rem, 3vw, 2.5rem) clamp(1rem, 4vw, 3rem) clamp(2.5rem, 5vw, 4rem) !important }
#iso-pages .itm-top::before { content: "" !important; position: absolute !important; width: 420px !important; height: 420px !important; right: -170px !important; bottom: -250px !important; border-radius: 60px !important; background: var(--itm-grad) !important; opacity: .14 !important; transform: rotate(32deg) !important; pointer-events: none !important }
#iso-pages .itm-top__in { position: relative !important; z-index: 1 !important; max-width: 1240px !important; margin: 0 auto !important }
#iso-pages .itm-top__grid { display: grid !important; grid-template-columns: minmax(0, 400px) minmax(0, 1fr) !important; gap: clamp(1.5rem, 4vw, 3.5rem) !important; align-items: start !important }
#iso-pages .itm-top__grid:has(.itm-player.is-horizontal) { grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr) !important }
#iso-pages .itm-player { position: relative !important }
#iso-pages .itm-player video, #iso-pages .itm-yt, #iso-pages .itm-yt__frame { display: block !important; width: 100% !important; border: 0 !important; border-radius: 22px !important; background: var(--itm-nuit) !important; box-shadow: 0 30px 60px -36px rgba(0, 17, 103, .7) !important }
#iso-pages .itm-player.is-vertical video { aspect-ratio: 9 / 16 !important; height: auto !important; max-height: 78vh !important; object-fit: contain !important }
#iso-pages .itm-player.is-horizontal .itm-yt, #iso-pages .itm-player.is-horizontal .itm-yt__frame { aspect-ratio: 16 / 9 !important; height: auto !important }
#iso-pages .itm-yt { position: relative !important; padding: 0 !important; overflow: hidden !important; cursor: pointer !important }
#iso-pages .itm-yt img { display: block !important; width: 100% !important; height: 100% !important; object-fit: cover !important }
#iso-pages .itm-player.is-horizontal .itm-yt img { object-fit: contain !important }
#iso-pages .itm-player__note { font-size: .85rem !important; color: var(--itm-texte) !important }
#iso-pages#iso-pages .itm-player__note { margin: .6rem 0 0 !important }
#iso-pages .itm-info { padding: clamp(1.4rem, 3vw, 2.2rem) !important; border-radius: 24px !important; background: #fff !important; box-shadow: var(--io-ombre, rgba(59, 36, 126, .23) 3px 3px 11px 0) !important }
#iso-pages .itm-info h1 { font-size: clamp(1.7rem, 3vw, 2.4rem) !important; line-height: 1.12 !important; font-weight: 800 !important; color: var(--itm-nuit) !important; text-wrap: balance !important }
#iso-pages .itm-intro { font-size: 1.05rem !important; line-height: 1.65 !important; color: var(--itm-texte) !important }
#iso-pages#iso-pages .itm-intro { margin: 1.2rem 0 0 !important }
#iso-pages .itm-quote { position: relative !important; padding: 1.1rem 1.2rem 1rem 3.4rem !important; border-radius: 18px !important; background: var(--itm-lavande) !important; border: 0 !important }
#iso-pages#iso-pages .itm-quote { margin: 1.4rem 0 0 !important }
#iso-pages .itm-quote svg { position: absolute !important; left: 1rem !important; top: 1.05rem !important; width: 26px !important; height: 26px !important; color: var(--itm-vert-2) !important }
#iso-pages .itm-quote p { color: var(--itm-violet) !important; font-size: 1.08rem !important; font-weight: 600 !important; line-height: 1.5 !important }
#iso-pages#iso-pages .itm-quote p { margin: 0 !important }
#iso-pages .itm-quote footer { margin-top: .45rem !important; font-size: .85rem !important; color: var(--itm-texte) !important }
#iso-pages#iso-pages .itm-src { margin: 1rem 0 0 !important }
#iso-pages .itm-src a, #iso-pages .itm-article a { color: var(--itm-bleu) !important; font-weight: 600 !important }
#iso-pages .itm-social { margin-top: 1.4rem !important; padding-top: 1.2rem !important; border-top: 1px solid var(--itm-line) !important }
#iso-pages .itm-social p { font-size: .95rem !important; font-weight: 700 !important; color: var(--itm-nuit) !important }
#iso-pages#iso-pages .itm-social p { margin: 0 0 .75rem !important }
#iso-pages .itm-social__btns { display: flex !important; flex-wrap: wrap !important; gap: .6rem !important }
#iso-pages .itm-social__btn { display: inline-flex !important; align-items: center !important; gap: .5rem !important; padding: .6rem 1.1rem !important; border-radius: 999px !important; background: var(--itm-lavande) !important; color: var(--itm-violet) !important; font-weight: 700 !important; text-decoration: none !important; transition: transform .25s var(--itm-ease), background-color .25s, color .25s }
#iso-pages .itm-social__btn svg { width: 20px !important; height: 20px !important; fill: currentColor !important }
#iso-pages .itm-social__btn:hover, #iso-pages .itm-social__btn:focus-visible { transform: translateY(-2px) !important; background: var(--itm-violet) !important; color: #fff !important }
#iso-pages .itm-done { padding: clamp(2.5rem, 5vw, 4rem) clamp(1rem, 4vw, 3rem) 0 !important; background: #fff !important }
#iso-pages .itm-done__in { max-width: 1240px !important; margin: 0 auto !important; display: grid !important; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) !important; gap: clamp(1.5rem, 4vw, 3rem) !important; align-items: start !important }
#iso-pages .itm-done h2 { font-size: clamp(1.4rem, 2.4vw, 1.9rem) !important; font-weight: 800 !important }
#iso-pages .itm-done h3 { font-size: 1.1rem !important; font-weight: 700 !important }
#iso-pages#iso-pages .itm-done h3 { margin-top: 1.6rem !important }
#iso-pages .itm-done__card { padding: clamp(1.4rem, 3vw, 2.2rem) !important; border-radius: 24px !important; background: linear-gradient(120deg, var(--itm-violet) 0%, var(--itm-nuit) 100%) !important; color: rgba(255, 255, 255, .85) !important }
#iso-pages .itm .itm-done__card h2, #iso-pages .itm .itm-done__card h3 { color: #fff !important }
#iso-pages .itm-works { list-style: none !important; display: grid !important; gap: .7rem !important }
#iso-pages#iso-pages .itm-works { margin: 1.2rem 0 0 !important; padding: 0 !important }
#iso-pages .itm-works li { display: flex !important; align-items: flex-start !important; gap: .7rem !important; font-size: 1.05rem !important; line-height: 1.45 !important; color: #fff !important }
#iso-pages .itm-works svg { flex: none !important; width: 24px !important; height: 24px !important; padding: 3px !important; border-radius: 50% !important; background: var(--itm-grad) !important; color: #fff !important; stroke-width: 2.6 !important }
#iso-pages .itm-steps { display: grid !important; gap: .45rem !important; line-height: 1.5 !important }
#iso-pages#iso-pages .itm-steps { margin: .8rem 0 0 !important; padding-left: 1.3rem !important }
#iso-pages .itm-steps li::marker { color: var(--itm-vert) !important; font-weight: 700 !important }
#iso-pages#iso-pages .itm-done__side .ir-presta { margin-top: 1.1rem !important }
#iso-pages#iso-pages .itm-article { margin: 1.2rem 0 0 !important }
#iso-pages .itm-photos { padding: 0 clamp(1rem, 4vw, 3rem) clamp(1rem, 2vw, 2rem) !important; background: #fff !important }
#iso-pages .itm-photos__in { max-width: 1240px !important; margin: 0 auto !important }
#iso-pages .itm-tabs { display: flex !important; flex-wrap: wrap !important; gap: .5rem !important; margin-bottom: 1.2rem !important }
#iso-pages .itm-tab { display: inline-flex !important; align-items: center !important; gap: .45rem !important; min-height: 44px !important; padding: .55rem 1.05rem !important; border-radius: 999px !important; border: 1.5px solid var(--itm-line) !important; background: #fff !important; color: var(--itm-violet) !important; font-weight: 600 !important; font-size: .95rem !important; text-decoration: none !important; transition: border-color .25s, transform .25s var(--itm-ease) }
#iso-pages .itm-tab:hover { border-color: var(--itm-violet) !important; transform: translateY(-1px) !important }
#iso-pages .itm-tab__n { display: inline-grid !important; place-items: center !important; min-width: 22px !important; height: 22px !important; padding: 0 .35rem !important; border-radius: 999px !important; background: var(--itm-lavande) !important; color: var(--itm-violet) !important; font-size: .75rem !important; font-weight: 700 !important }
#iso-pages .itm-step { padding-top: 1rem !important; scroll-margin-top: 140px !important }
#iso-pages#iso-pages .itm-step h3 { margin: 0 0 .8rem !important }
#iso-pages .itm-step__tag { display: inline-flex !important; padding: .4rem .95rem !important; border-radius: 999px !important; color: #fff !important; font-size: .95rem !important; font-weight: 700 !important }
#iso-pages .itm-step__tag.is-avant { background: var(--itm-violet) !important }
#iso-pages .itm-step__tag.is-pendant { background: var(--itm-bleu) !important }
#iso-pages .itm-step__tag.is-apres { background: var(--itm-grad) !important }
#iso-pages .itm-step__note { font-size: .9rem !important; color: var(--itm-texte) !important }
#iso-pages#iso-pages .itm-step__note { margin: -.3rem 0 .8rem !important }
#iso-pages .itm-gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(min(46%, 210px), 1fr)) !important; gap: .7rem !important }
#iso-pages .itm-gallery__item { aspect-ratio: 3 / 4 !important }
#iso-pages .itm-real, #iso-pages .itm-others { padding: 0 clamp(1rem, 4vw, 3rem) clamp(2.5rem, 5vw, 4rem) !important; background: #fff !important }
#iso-pages .itm-all { text-align: center !important }
#iso-pages#iso-pages .itm-all { margin: 1.6rem 0 0 !important }
#iso-pages#iso-pages .itm-link { margin: 1.4rem 0 0 !important }
#iso-pages .itm-link a { display: flex !important; align-items: center !important; gap: .8rem !important; padding: .9rem 1.1rem !important; border-radius: 16px !important; background: var(--io-lavande, #f3f2f9) !important; color: var(--io-violet, #3b247e) !important; text-decoration: none !important; font-family: "Outfit", sans-serif !important; line-height: 1.35 !important; transition: transform .25s }
#iso-pages .itm-link a:hover { transform: translateX(3px) !important }
#iso-pages .itm-link svg { flex: none !important; width: 34px !important; height: 34px !important; padding: 7px !important; border-radius: 50% !important; background: var(--io-grad, linear-gradient(90deg, #3ec83a 0%, #7cc900 100%)) !important; color: #fff !important; fill: none !important; stroke: currentColor !important; stroke-width: 1.8 !important; stroke-linecap: round !important; stroke-linejoin: round !important }
#iso-pages .itm-link strong { color: var(--io-nuit, #001167) !important }
#iso-pages .itm-link-wrap { max-width: 1240px !important; margin: 1.5rem auto 0 !important; padding: 0 clamp(1rem, 4vw, 3rem) !important }
@media (max-width: 900px) {
#iso-pages .itm-top__grid, #iso-pages .itm-top__grid:has(.itm-player.is-horizontal), #iso-pages .itm-done__in { grid-template-columns: minmax(0, 1fr) !important }
#iso-pages .itm-info { order: -1 !important }
#iso-pages .itm-player.is-vertical { max-width: 420px !important; width: 100% !important; margin: 0 auto !important }
#iso-pages .itm .ir-grid--3 { grid-template-columns: repeat(auto-fill, minmax(min(100%, 260px), 1fr)) !important }
}
@media (prefers-reduced-motion: reduce) {
#iso-pages .itm-play, #iso-pages .itm-link a, #iso-pages .itm-social__btn { transition: none }
}

/* ---- pages/faq-commun.css (WordPress) ---- */
#iso-pages .ifaq { --ifaq-nuit: var(--io-nuit, #001167); --ifaq-bleu: var(--io-bleu, #3667b3); --ifaq-vert-2: #3ec83a; --ifaq-grad: var(--io-grad, linear-gradient(90deg, #3ec83a 0%, #7cc900 100%)); --ifaq-lavande: var(--io-lavande, #f3f2f9); --ifaq-texte: var(--io-texte, rgba(59, 36, 126, .75)); --ifaq-ease: cubic-bezier(.2, .75, .2, 1); --ifaq-card: #fff; padding: clamp(2.8rem, 5.5vw, 4.6rem) clamp(1rem, 4vw, 3rem) !important; background: var(--ifaq-lavande) !important; color: var(--ifaq-texte) !important; font-family: "Outfit", sans-serif !important }
#iso-pages .imx > .ifaq.imx-sec { --ifaq-card: var(--imx-card, var(--ifaq-lavande)) }
#iso-pages .imx > .ifaq.imx-sec:nth-of-type(even) { background: #fff !important }
#iso-pages .imx > .ifaq.imx-sec:nth-of-type(odd) { background: var(--ifaq-lavande) !important; --ifaq-card: #fff }
#iso-pages .ifaq__in { max-width: 860px !important; margin-inline: auto !important }
#iso-pages .ifaq__head { max-width: 820px !important; margin: 0 auto 2rem !important; text-align: center !important }
#iso-pages .ifaq__head h2 { margin: 0 !important; font-family: "Outfit", sans-serif !important; font-size: clamp(1.6rem, 3vw, 2.3rem) !important; line-height: 1.15 !important; font-weight: 800 !important; letter-spacing: -.01em !important; color: var(--ifaq-nuit) !important; text-wrap: balance !important }
#iso-pages .ifaq__head p { font-size: 1.02rem !important; line-height: 1.6 !important }
#iso-pages#iso-pages .ifaq__head p { margin: .8rem 0 0 !important }
#iso-pages .ifaq a { color: var(--ifaq-bleu) !important; text-underline-offset: 3px !important; overflow-wrap: anywhere !important }
#iso-pages .ifaq__head a { font-weight: 700 !important; white-space: nowrap !important }
#iso-pages .ifaq__list { display: grid !important; gap: .7rem !important }
#iso-pages .ifaq details { border-radius: 18px !important; background: var(--ifaq-card) !important; overflow: hidden !important }
#iso-pages .ifaq summary { position: relative !important; display: block !important; padding: 1.1rem 3.6rem 1.1rem 1.3rem !important; color: var(--ifaq-nuit) !important; font-weight: 700 !important; font-size: 1.05rem !important; line-height: 1.4 !important; cursor: pointer !important; list-style: none !important }
#iso-pages .ifaq summary::-webkit-details-marker { display: none !important }
#iso-pages .ifaq summary::after { content: "+" !important; position: absolute !important; right: 1.1rem !important; top: 50% !important; display: grid !important; place-items: center !important; width: 30px !important; height: 30px !important; margin-top: -15px !important; border-radius: 50% !important; background: var(--ifaq-grad) !important; color: #fff !important; font-size: 1.25rem !important; font-weight: 600 !important; line-height: 1 !important; transition: transform .3s var(--ifaq-ease) }
#iso-pages .ifaq details[open] summary::after { transform: rotate(45deg) !important }
#iso-pages .ifaq summary:focus-visible { outline: 3px solid var(--io-vert, #7cc900) !important; outline-offset: -3px !important; border-radius: 18px !important }
#iso-pages .ifaq__a { padding: 0 1.3rem 1.25rem !important; line-height: 1.68 !important }
#iso-pages#iso-pages .ifaq__a > * { margin: 0 !important }
#iso-pages#iso-pages .ifaq__a > * + * { margin-top: .7rem !important }
#iso-pages .ifaq__a ul, #iso-pages .ifaq__a ol { padding-left: 1.2rem !important }
#iso-pages .ifaq__notes { margin-top: 1.4rem !important; font-size: .9rem !important; line-height: 1.6 !important }
#iso-pages#iso-pages .ifaq__notes > * + * { margin-top: .6rem !important }
#iso-pages .ifaq__source { font-size: .85rem !important; text-align: center !important }
#iso-pages#iso-pages .ifaq__source { margin: 1.4rem 0 0 !important }
@media (max-width: 600px) {
#iso-pages .ifaq summary { font-size: 1rem !important; padding: 1rem 3.3rem 1rem 1.1rem !important }
#iso-pages .ifaq__a { padding: 0 1.1rem 1.1rem !important }
}
#iso-pages .ic > .ifaq { background: #fff !important; --ifaq-card: var(--ifaq-lavande) }

/* ---- pages/conseils.css (WordPress) ---- */
#iso-pages .ib, #iso-pages .ib-prose, #iso-pages .ib-body { --ib-violet: var(--io-violet, #3b247e); --ib-nuit: var(--io-nuit, #001167); --ib-bleu: var(--io-bleu, #3667b3); --ib-vert: var(--io-vert, #7cc900); --ib-vert-2: #3ec83a; --ib-grad: var(--io-grad, linear-gradient(90deg, #3ec83a 0%, #7cc900 100%)); --ib-lavande: var(--io-lavande, #f3f2f9); --ib-texte: var(--io-texte, rgba(59, 36, 126, .75)); --ib-line: #e6e3f3; --ib-ease: cubic-bezier(.2, .75, .2, 1) }
#iso-pages .ib svg, #iso-pages .ib-body svg { fill: none !important; stroke: currentColor !important; stroke-width: 1.8 !important; stroke-linecap: round !important; stroke-linejoin: round !important }
#iso-pages .ib-badge { display: inline-flex !important; align-items: center !important; padding: .35rem .8rem !important; border-radius: 999px !important; color: #fff !important; font: 600 .8rem/1.1 "Outfit", sans-serif !important; letter-spacing: .01em !important }
#iso-pages .ib-badge.is-nuit { background: var(--ib-nuit) !important }
#iso-pages .ib-badge.is-violet { background: var(--ib-violet) !important }
#iso-pages .ib-badge.is-bleu { background: var(--ib-bleu) !important }
#iso-pages .ib-badge.is-vert { background: var(--ib-grad) !important }
#iso-pages .ib-meta { display: inline-flex !important; flex-wrap: wrap !important; align-items: center !important; gap: .35rem 1rem !important; color: var(--ib-texte) !important; font-size: .86rem !important; font-weight: 500 !important }
#iso-pages .ib-meta > span { display: inline-flex !important; align-items: center !important; gap: .35rem !important }
#iso-pages .ib-meta svg { width: 16px !important; height: 16px !important; color: var(--ib-vert-2) !important }
#iso-pages .ib-hero { position: relative !important; overflow: hidden !important; background: var(--ib-lavande) !important; padding: clamp(2.5rem, 5vw, 4.2rem) clamp(1rem, 4vw, 3rem) clamp(5.5rem, 9vw, 7.5rem) !important }
#iso-pages .ib-hero::before, #iso-pages .ib-hero::after { content: "" !important; position: absolute !important; pointer-events: none !important; border-radius: 60px !important }
#iso-pages .ib-hero::before { width: 420px !important; height: 420px !important; right: -150px !important; bottom: -250px !important; background: var(--ib-grad) !important; opacity: .14 !important; transform: rotate(32deg) !important }
#iso-pages .ib-hero::after { width: 360px !important; height: 360px !important; left: 42% !important; top: -260px !important; background: linear-gradient(135deg, var(--ib-violet), var(--ib-bleu)) !important; opacity: .08 !important; transform: rotate(28deg) !important }
#iso-pages .ib-hero__in { position: relative !important; z-index: 1 !important; max-width: 1240px !important; margin: 0 auto !important; display: grid !important; grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr) !important; gap: clamp(2rem, 4vw, 4rem) !important; align-items: end !important }
#iso-pages .ib-hero h1 { font-size: clamp(2.1rem, 4.2vw, 3.4rem) !important; line-height: 1.06 !important; font-weight: 800 !important; color: var(--ib-nuit) !important; text-wrap: balance !important }
#iso-pages .ib-hero h1 span { color: var(--ib-vert) !important }
#iso-pages .ib-lead { max-width: 620px !important; font-size: clamp(1.02rem, 1.3vw, 1.15rem) !important; line-height: 1.6 !important; color: var(--ib-texte) !important }
#iso-pages#iso-pages .ib-lead { margin: 1.1rem 0 0 !important }
#iso-pages .ib-hero__stats { list-style: none !important; display: grid !important; gap: .7rem !important }
#iso-pages#iso-pages .ib-hero__stats { margin: 0 !important; padding: 0 !important }
#iso-pages .ib-hero__stats li { display: flex !important; align-items: center !important; gap: .8rem !important; padding: .85rem 1.1rem !important; border-radius: 16px !important; background: #fff !important; box-shadow: var(--io-ombre, rgba(59, 36, 126, .23) 3px 3px 11px 0) !important }
#iso-pages .ib-hero__ico { flex: 0 0 auto !important; display: grid !important; place-items: center !important; width: 42px !important; height: 42px !important; border-radius: 12px !important; background: rgba(124, 201, 0, .14) !important; color: var(--ib-vert-2) !important }
#iso-pages .ib-hero__ico svg { width: 22px !important; height: 22px !important }
#iso-pages .ib-hero__stats li > span:last-child { display: flex !important; flex-direction: column !important; font-size: .88rem !important; line-height: 1.25 !important; color: var(--ib-texte) !important }
#iso-pages .ib-hero__stats strong { color: var(--ib-nuit) !important; font-size: 1.05rem !important; font-weight: 700 !important }
#iso-pages .ib-une { position: relative !important; z-index: 2 !important; padding: 0 clamp(1rem, 4vw, 3rem) !important; margin-top: clamp(-4.5rem, -6vw, -3.5rem) !important }
#iso-pages .ib-une__in { max-width: 1240px !important; margin: 0 auto !important }
#iso-pages .ib-une__card { display: grid !important; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr) !important; overflow: hidden !important; border-radius: 28px !important; background: #fff !important; box-shadow: 0 30px 60px -36px rgba(0, 17, 103, .55), var(--io-ombre, rgba(59, 36, 126, .23) 3px 3px 11px 0) !important; text-decoration: none !important; transition: transform .4s var(--ib-ease), box-shadow .4s var(--ib-ease) }
#iso-pages .ib-une__card:hover { transform: translateY(-4px) !important; box-shadow: 0 40px 70px -36px rgba(0, 17, 103, .6), var(--io-ombre, rgba(59, 36, 126, .23) 3px 3px 11px 0) !important }
#iso-pages .ib-une__media { position: relative !important; display: block !important; min-height: 340px !important; overflow: hidden !important; background: var(--ib-lavande) !important }
#iso-pages .ib-une__media img { position: absolute !important; inset: 0 !important; width: 100% !important; height: 100% !important; object-fit: cover !important; transition: transform 1s var(--ib-ease) }
#iso-pages .ib-une__card:hover .ib-une__media img { transform: scale(1.04) !important }
#iso-pages .ib-une__body { display: flex !important; flex-direction: column !important; align-items: flex-start !important; gap: 1rem !important; padding: clamp(1.5rem, 3.5vw, 2.8rem) !important }
#iso-pages .ib-une__top { display: flex !important; flex-wrap: wrap !important; gap: .5rem !important }
#iso-pages .ib-une__flag { display: inline-flex !important; align-items: center !important; padding: .35rem .8rem !important; border-radius: 999px !important; background: var(--ib-lavande) !important; color: var(--ib-violet) !important; font: 700 .8rem/1.1 "Outfit", sans-serif !important; letter-spacing: .08em !important; text-transform: uppercase !important }
#iso-pages .ib-une__title { font-size: clamp(1.45rem, 2.4vw, 2.05rem) !important; line-height: 1.15 !important; font-weight: 800 !important; text-wrap: balance !important }
#iso-pages#iso-pages .ib-une__title { color: var(--ib-nuit) !important }
#iso-pages .ib-une__text { color: var(--ib-texte) !important; font-size: 1.02rem !important; line-height: 1.6 !important }
#iso-pages .ib-une__btn { margin-top: .4rem !important }
#iso-pages .ib-une__btn span { display: inline-block !important; transition: transform .3s var(--ib-ease) }
#iso-pages .ib-une__card:hover .ib-une__btn span { transform: translateX(4px) !important }
#iso-pages .ib.is-filtered .ib-une { display: none !important }
#iso-pages .ib.is-filtered .ib-list { padding-top: clamp(2rem, 4vw, 3rem) !important }
#iso-pages .ib-list { padding: clamp(2.5rem, 5vw, 4rem) clamp(1rem, 4vw, 3rem) clamp(3rem, 6vw, 5rem) !important; background: #fff !important }
#iso-pages .ib-list__in { max-width: 1240px !important; margin: 0 auto !important }
#iso-pages .ib-list__head { display: flex !important; flex-wrap: wrap !important; align-items: center !important; justify-content: space-between !important; gap: 1rem 1.5rem !important; margin-bottom: 1.2rem !important }
#iso-pages .ib-section-title { font-size: clamp(1.5rem, 2.6vw, 2rem) !important; font-weight: 800 !important }
#iso-pages .ib-input { position: relative !important; display: flex !important; align-items: center !important; min-width: 0 !important; max-width: 100% !important }
#iso-pages .ib-input svg { position: absolute !important; left: 1rem !important; width: 18px !important; height: 18px !important; color: var(--ib-violet) !important; opacity: .7 !important; pointer-events: none !important }
#iso-pages .ib-input input { width: min(360px, 100%) !important; min-height: 46px !important; padding: 0 1rem 0 2.6rem !important; border: 1.5px solid var(--ib-line) !important; border-radius: 999px !important; background: var(--ib-lavande) !important; color: var(--ib-nuit) !important; font: 500 .95rem "Outfit", sans-serif !important; transition: border-color .2s, background-color .2s, box-shadow .2s }
#iso-pages .ib-input input:focus { outline: none !important; background-color: #fff !important; border-color: var(--ib-violet) !important; box-shadow: 0 0 0 4px rgba(59, 36, 126, .12) !important }
#iso-pages .ib-filters { display: flex !important; flex-wrap: wrap !important; gap: .5rem !important }
#iso-pages .ib-filter { display: inline-flex !important; align-items: center !important; gap: .45rem !important; min-height: 44px !important; padding: .55rem 1.05rem !important; border-radius: 999px !important; border: 1.5px solid var(--ib-line) !important; background: #fff !important; color: var(--ib-violet) !important; font-weight: 600 !important; font-size: .95rem !important; text-decoration: none !important; transition: background-color .25s, color .25s, border-color .25s, transform .25s var(--ib-ease) }
#iso-pages .ib-filter:hover { border-color: var(--ib-violet) !important; color: var(--ib-violet) !important; transform: translateY(-1px) !important }
#iso-pages .ib-filter__n { display: inline-grid !important; place-items: center !important; min-width: 22px !important; height: 22px !important; padding: 0 .35rem !important; border-radius: 999px !important; background: var(--ib-lavande) !important; color: var(--ib-violet) !important; font-size: .75rem !important; font-weight: 700 !important }
#iso-pages .ib-filter.is-active { background: var(--ib-grad) !important; border-color: transparent !important; color: #fff !important; box-shadow: 0 10px 22px -12px rgba(62, 200, 58, .9) !important }
#iso-pages .ib-filter.is-active .ib-filter__n { background: rgba(255, 255, 255, .25) !important; color: #fff !important }
#iso-pages .ib-count { font-size: .95rem !important; color: var(--ib-texte) !important }
#iso-pages#iso-pages .ib-count { margin: 1.3rem 0 1rem !important }
#iso-pages .ib-count [data-count] { color: var(--ib-nuit) !important; font-weight: 700 !important }
#iso-pages .ib-grid { list-style: none !important; display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 1.5rem !important }
#iso-pages#iso-pages .ib-grid { margin: 0 !important; padding: 0 !important }
#iso-pages .ib-card[hidden] { display: none !important }
#iso-pages .ib.is-js .ib-card.is-pending { opacity: 0 !important; transform: translateY(18px) !important }
#iso-pages .ib.is-js .ib-card.is-in { transition: opacity .6s var(--ib-ease), transform .6s var(--ib-ease) }
#iso-pages .ib-card__link { display: flex !important; flex-direction: column !important; height: 100% !important; overflow: hidden !important; border-radius: 20px !important; background: #fff !important; border: 1px solid var(--ib-line) !important; box-shadow: 0 18px 40px -32px rgba(0, 17, 103, .55) !important; text-decoration: none !important; transition: transform .35s var(--ib-ease), box-shadow .35s var(--ib-ease), border-color .35s }
#iso-pages .ib-card__link:hover { transform: translateY(-5px) !important; border-color: transparent !important; box-shadow: var(--io-ombre, rgba(59, 36, 126, .23) 3px 3px 11px 0), 0 26px 50px -30px rgba(0, 17, 103, .6) !important }
#iso-pages .ib-card__media { position: relative !important; display: block !important; aspect-ratio: 16 / 10 !important; overflow: hidden !important; background: var(--ib-lavande) !important }
#iso-pages .ib-card__img { display: block !important; width: 100% !important; height: 100% !important; object-fit: cover !important; transition: transform .8s var(--ib-ease) }
#iso-pages .ib-card__link:hover .ib-card__img { transform: scale(1.06) !important }
#iso-pages .ib-card__ph { position: absolute !important; inset: 0 !important; display: grid !important; place-items: center !important; background: linear-gradient(135deg, var(--ib-lavande) 0%, #e3def3 100%) !important; color: var(--ib-violet) !important }
#iso-pages .ib-card__ph svg { width: 56px !important; height: 56px !important; opacity: .35 !important }
#iso-pages .ib-head__in:not(:has(.ib-head__media)) { grid-template-columns: minmax(0, 860px) !important }
#iso-pages .ib-card__badge { position: absolute !important; left: .8rem !important; top: .8rem !important }
#iso-pages .ib-card__body { display: flex !important; flex-direction: column !important; gap: .55rem !important; flex: 1 !important; padding: 1.1rem 1.2rem 1.25rem !important }
#iso-pages .ib-card__title { font-weight: 700 !important; display: -webkit-box !important; -webkit-line-clamp: 3 !important; -webkit-box-orient: vertical !important; overflow: hidden !important }
#iso-pages#iso-pages .ib-card__title { color: var(--ib-violet) !important; font-size: 1.12rem !important; line-height: 1.3 !important }
#iso-pages .ib-card__text { color: var(--ib-texte) !important; font-size: .92rem !important; line-height: 1.5 !important; display: -webkit-box !important; -webkit-line-clamp: 3 !important; -webkit-box-orient: vertical !important; overflow: hidden !important }
#iso-pages .ib-card__more { margin-top: auto !important; padding-top: .7rem !important; border-top: 1px solid var(--ib-line) !important; color: var(--ib-bleu) !important; font-weight: 700 !important; font-size: .92rem !important }
#iso-pages .ib-card__more span { display: inline-block !important; transition: transform .3s var(--ib-ease) }
#iso-pages .ib-card__link:hover .ib-card__more span { transform: translateX(4px) !important }
#iso-pages .ib-empty { padding: 3rem 1rem !important; text-align: center !important; border-radius: 20px !important; background: var(--ib-lavande) !important }
#iso-pages .ib-empty[hidden], #iso-pages .ib-more[hidden] { display: none !important }
#iso-pages .ib-empty p { color: var(--ib-nuit) !important }
#iso-pages#iso-pages .ib-empty p { margin: 0 0 1rem !important }
#iso-pages .ib-more { margin-top: 2rem !important; text-align: center !important }
#iso-pages .ib.is-js .ib-hero__text > *, #iso-pages .ib.is-js .ib-hero__stats li, #iso-pages .ib.is-js .ib-une__card { opacity: 0 !important; transform: translateY(16px) !important }
#iso-pages .ib.is-js.is-ready .ib-hero__text > *, #iso-pages .ib.is-js.is-ready .ib-hero__stats li, #iso-pages .ib.is-js.is-ready .ib-une__card { opacity: 1 !important; transform: none !important; transition: opacity .8s var(--ib-ease), transform .8s var(--ib-ease) }
#iso-pages .ib.is-js.is-ready .ib-hero__text > :nth-child(2) { transition-delay: .08s }
#iso-pages .ib.is-js.is-ready .ib-hero__text > :nth-child(3) { transition-delay: .16s }
#iso-pages .ib.is-js.is-ready .ib-hero__stats li:nth-child(1) { transition-delay: .18s }
#iso-pages .ib.is-js.is-ready .ib-hero__stats li:nth-child(2) { transition-delay: .26s }
#iso-pages .ib.is-js.is-ready .ib-hero__stats li:nth-child(3) { transition-delay: .34s }
#iso-pages .ib.is-js.is-ready .ib-une__card { transition-delay: .3s }
#iso-pages .ib.is-js.is-ready .ib-une__card:hover { transition-delay: 0s; transform: translateY(-4px) !important }
#iso-pages .ib-progress { position: fixed !important; z-index: 60 !important; left: 0 !important; right: 0 !important; top: 0 !important; height: 4px !important; pointer-events: none !important }
#iso-pages .admin-bar .ib-progress { top: 32px !important }
#iso-pages .ib-progress span { display: block !important; height: 100% !important; background: var(--ib-grad) !important; transform-origin: 0 50% !important; transform: scaleX(var(--ib-p, 0)) !important }
#iso-pages .ib-head { position: relative !important; overflow: hidden !important; background: var(--ib-lavande) !important; padding: clamp(1.5rem, 3vw, 2.4rem) clamp(1rem, 4vw, 3rem) clamp(2.5rem, 5vw, 4rem) !important }
#iso-pages .ib-head::before { content: "" !important; position: absolute !important; width: 380px !important; height: 380px !important; left: -170px !important; bottom: -230px !important; border-radius: 60px !important; background: var(--ib-grad) !important; opacity: .13 !important; transform: rotate(32deg) !important; pointer-events: none !important }
#iso-pages .ib-head__in { position: relative !important; max-width: 1160px !important; margin: 0 auto !important; display: grid !important; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr) !important; gap: clamp(1.5rem, 4vw, 3.5rem) !important; align-items: center !important }
#iso-pages .ib-head__text { display: flex !important; flex-direction: column !important; align-items: flex-start !important; gap: 1rem !important }
#iso-pages .ib-head .ir-crumbs { margin-bottom: .2rem !important }
#iso-pages .ib-head .ir-crumbs a:last-of-type { color: var(--ib-bleu) !important }
#iso-pages .ib-head h1 { font-size: clamp(1.85rem, 3.3vw, 2.75rem) !important; line-height: 1.12 !important; font-weight: 800 !important; color: var(--ib-nuit) !important; text-wrap: balance !important }
#iso-pages#iso-pages .ib-head__meta { margin: 0 !important }
#iso-pages .ib-head__meta .ib-meta { font-size: .95rem !important }
#iso-pages .ib-head__media { margin: 0 !important; overflow: hidden !important; border-radius: 24px !important; aspect-ratio: 4 / 3 !important; background: #ddd !important; box-shadow: 0 30px 60px -32px rgba(0, 17, 103, .55) !important }
#iso-pages .ib-head__media img { display: block !important; width: 100% !important; height: 100% !important; object-fit: cover !important }
#iso-pages .ib.is-js .ib-head__text > *, #iso-pages .ib.is-js .ib-head__media { opacity: 0 !important; transform: translateY(14px) !important }
#iso-pages .ib.is-js.is-ready .ib-head__text > *, #iso-pages .ib.is-js.is-ready .ib-head__media { opacity: 1 !important; transform: none !important; transition: opacity .7s var(--ib-ease), transform .7s var(--ib-ease) }
#iso-pages .ib.is-js.is-ready .ib-head__text > :nth-child(2) { transition-delay: .06s }
#iso-pages .ib.is-js.is-ready .ib-head__text > :nth-child(3) { transition-delay: .12s }
#iso-pages .ib.is-js.is-ready .ib-head__text > :nth-child(4) { transition-delay: .18s }
#iso-pages .ib.is-js.is-ready .ib-head__media { transition-delay: .15s }
#iso-pages .ib-body { display: grid !important; grid-template-columns: 250px minmax(0, 720px) !important; justify-content: center !important; gap: clamp(2rem, 4vw, 4rem) !important; max-width: 1160px !important; margin: 0 auto !important; padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 4vw, 3rem) 0 !important; box-sizing: border-box !important; font-family: "Outfit", system-ui, sans-serif !important }
#iso-pages .ib-body:has(.ib-notoc) { grid-template-columns: minmax(0, 720px) !important }
#iso-pages .ib-notoc, #iso-pages .ib-body > br, #iso-pages .ib-body > p:empty { display: none !important }
#iso-pages .ib-body > .ib-toc { grid-column: 1 !important; grid-row: 1 !important }
#iso-pages .ib-body > .ib-prose { grid-column: 2 !important; grid-row: 1 !important }
#iso-pages .ib-body:has(.ib-notoc) > .ib-prose { grid-column: 1 !important }
#iso-pages .ib-toc { position: sticky !important; top: 150px !important; align-self: start !important; max-height: calc(100vh - 180px) !important; overflow: auto !important; padding: 1.1rem 1rem 1.1rem 1.2rem !important; border-radius: 20px !important; background: var(--ib-lavande) !important; scrollbar-width: thin !important }
#iso-pages .admin-bar .ib-toc { top: 182px !important }
#iso-pages .ib-toc summary { display: flex !important; align-items: center !important; gap: .55rem !important; list-style: none !important; cursor: pointer !important; color: var(--ib-nuit) !important; font-weight: 700 !important; font-size: 1rem !important }
#iso-pages .ib-toc summary::-webkit-details-marker { display: none !important }
#iso-pages .ib-toc summary svg { width: 20px !important; height: 20px !important; color: var(--ib-vert-2) !important }
#iso-pages .ib-toc summary small { margin-left: auto !important; color: var(--ib-texte) !important; font-weight: 500 !important; font-size: .8rem !important }
#iso-pages .ib-toc ol { list-style: none !important; counter-reset: ib !important; display: grid !important; gap: .15rem !important }
#iso-pages#iso-pages .ib-toc ol { margin: .9rem 0 0 !important; padding: 0 !important }
#iso-pages .ib-toc li { counter-increment: ib !important }
#iso-pages#iso-pages .ib-toc li { margin: 0 !important }
#iso-pages .ib-toc a { display: grid !important; grid-template-columns: 1.6rem 1fr !important; gap: .2rem !important; padding: .45rem .5rem !important; border-radius: 10px !important; color: var(--ib-texte) !important; font-size: .88rem !important; line-height: 1.35 !important; text-decoration: none !important; transition: background-color .2s, color .2s }
#iso-pages .ib-toc a::before { content: counter(ib, decimal-leading-zero) !important; color: var(--ib-vert-2) !important; font-weight: 700 !important; font-size: .78rem !important; padding-top: .1rem !important }
#iso-pages .ib-toc a:hover { background: #fff !important; color: var(--ib-violet) !important }
#iso-pages .ib-toc a.is-current { background: #fff !important; color: var(--ib-nuit) !important; font-weight: 600 !important; box-shadow: 0 8px 18px -14px rgba(0, 17, 103, .6) !important }
#iso-pages .ib-toc :focus-visible, #iso-pages .ib-prose :focus-visible { outline: 3px solid var(--ib-vert) !important; outline-offset: 2px !important }
#iso-pages .ib-prose { min-width: 0 !important; color: var(--ib-texte) !important; font: 400 1.09rem/1.75 "Outfit", system-ui, sans-serif !important; overflow-wrap: break-word !important }
#iso-pages .ib-prose * { box-sizing: border-box !important }
#iso-pages#iso-pages .ib-prose .wp-block-group, #iso-pages#iso-pages .ib-prose .duda-row, #iso-pages#iso-pages .ib-prose .wp-block-column { max-width: none !important; margin: 0 !important; padding: 0 !important; background: none !important; border: 0 !important; min-height: 0 !important }
#iso-pages .ib-prose .wp-block-columns { display: flex !important; flex-wrap: wrap !important; gap: 1.2rem 1.5rem !important }
#iso-pages#iso-pages .ib-prose .wp-block-columns { margin: 1.4rem 0 !important; padding: 0 !important; background: none !important }
#iso-pages .ib-prose .wp-block-column { min-width: 0 !important }
#iso-pages#iso-pages .ib-prose .wp-block-column { flex: 1 1 260px !important }
#iso-pages .ib-prose .wp-block-column:empty, #iso-pages .ib-prose .wp-block-group:empty { display: none !important }
#iso-pages#iso-pages .ib-prose [style*="color"] { color: inherit !important }
#iso-pages#iso-pages .ib-prose [style*="font-size"], #iso-pages#iso-pages .ib-prose [style*="font-family"] { font-size: inherit !important; font-family: inherit !important }
#iso-pages .ib-prose p, #iso-pages .ib-prose li { color: var(--ib-texte) !important; font: inherit !important }
#iso-pages#iso-pages .ib-prose p, #iso-pages#iso-pages .ib-prose li { text-align: left !important }
#iso-pages#iso-pages .ib-prose p { margin: 0 0 1.15em !important }
#iso-pages .ib-prose strong, #iso-pages .ib-prose b { color: var(--ib-violet) !important; font-weight: 700 !important }
#iso-pages .ib-prose h2, #iso-pages .ib-prose h3, #iso-pages .ib-prose h4 { color: var(--ib-nuit) !important; letter-spacing: -.01em !important; text-wrap: balance !important; scroll-margin-top: 150px !important }
#iso-pages#iso-pages .ib-prose h2, #iso-pages#iso-pages .ib-prose h3, #iso-pages#iso-pages .ib-prose h4 { font-family: "Outfit", sans-serif !important; text-align: left !important }
#iso-pages .ib-prose h2 { padding-top: .9em !important; border-top: 1px solid var(--ib-line) !important }
#iso-pages#iso-pages .ib-prose h2 { margin: 2.2em 0 .7em !important; font-size: clamp(1.45rem, 2.4vw, 1.85rem) !important; line-height: 1.2 !important; font-weight: 800 !important }
#iso-pages .ib-prose h3 { color: var(--ib-violet) !important }
#iso-pages#iso-pages .ib-prose h3 { margin: 1.7em 0 .55em !important; font-size: clamp(1.15rem, 1.8vw, 1.32rem) !important; line-height: 1.3 !important; font-weight: 700 !important }
#iso-pages .ib-prose h4 { color: var(--ib-violet) !important }
#iso-pages#iso-pages .ib-prose h4 { margin: 1.4em 0 .5em !important; font-size: 1.08rem !important; font-weight: 700 !important }
#iso-pages .ib-prose h2 strong, #iso-pages .ib-prose h3 strong, #iso-pages .ib-prose h4 strong { color: inherit !important; font-weight: inherit !important }
#iso-pages#iso-pages .ib-prose > :first-child, #iso-pages#iso-pages .ib-prose > .wp-block-group:first-child > :first-child { margin-top: 0 !important }
#iso-pages#iso-pages .ib-prose .ib-dup { display: none !important }
#iso-pages .ib-prose .ib-dup + *, #iso-pages .ib-prose h2:first-child { border-top: 0 !important; padding-top: 0 !important }
#iso-pages .ib-prose a { font-weight: 600 !important; text-decoration: underline !important; text-decoration-thickness: 1.5px !important; text-underline-offset: 3px !important; text-decoration-color: rgba(54, 103, 179, .35) !important; transition: text-decoration-color .2s }
#iso-pages#iso-pages .ib-prose a { color: var(--ib-bleu) !important }
#iso-pages .ib-prose a:hover { text-decoration-color: currentColor !important }
#iso-pages .ib-prose a strong { color: inherit !important }
#iso-pages#iso-pages .ib-prose ul, #iso-pages#iso-pages .ib-prose ol { margin: 0 0 1.3em !important; padding-left: 1.4em !important }
#iso-pages .ib-prose li { padding-left: .2em !important }
#iso-pages#iso-pages .ib-prose li { margin: .35em 0 !important }
#iso-pages .ib-prose ul li::marker { color: var(--ib-vert-2) !important }
#iso-pages .ib-prose ol li::marker { color: var(--ib-vert-2) !important; font-weight: 700 !important }
#iso-pages .ib-prose figure { max-width: 100% !important }
#iso-pages#iso-pages .ib-prose figure { margin: 1.8em 0 !important }
#iso-pages .ib-prose img { display: block !important; max-width: 100% !important; border-radius: 18px !important }
#iso-pages#iso-pages .ib-prose img { height: auto !important }
#iso-pages .ib-prose figure img { width: 100% !important }
#iso-pages .ib-prose figcaption { margin-top: .6em !important; color: var(--ib-texte) !important; font-size: .88rem !important; text-align: center !important }
#iso-pages .ib-prose blockquote { border-left: 4px solid var(--ib-vert-2) !important; border-radius: 0 16px 16px 0 !important; background: var(--ib-lavande) !important }
#iso-pages#iso-pages .ib-prose blockquote { margin: 1.8em 0 !important; padding: 1.2em 1.4em !important }
#iso-pages#iso-pages .ib-prose blockquote p:last-child { margin-bottom: 0 !important }
#iso-pages#iso-pages .ib-prose hr { margin: 2em 0 !important; border: 0 !important; border-top: 1px solid var(--ib-line) !important; background: none !important; height: 0 !important }
#iso-pages .ib-prose table { width: 100% !important; margin: 1.6em 0 !important; border-collapse: collapse !important; font-size: .95rem !important; display: block !important; overflow-x: auto !important }
#iso-pages .ib-prose th, #iso-pages .ib-prose td { padding: .7em .9em !important; border: 1px solid var(--ib-line) !important; text-align: left !important; vertical-align: top !important }
#iso-pages .ib-prose th { background: var(--ib-lavande) !important; color: var(--ib-nuit) !important; font-weight: 700 !important }
#iso-pages .ib-prose iframe, #iso-pages .ib-prose video { max-width: 100% !important; border: 0 !important; border-radius: 18px !important }
#iso-pages .ib-prose iframe[src*="youtube"], #iso-pages .ib-prose iframe[src*="youtu.be"] { width: 100% !important; height: auto !important; aspect-ratio: 16 / 9 !important }
#iso-pages .ib-prose .wp-block-buttons { display: flex !important; flex-wrap: wrap !important; gap: .7rem !important }
#iso-pages#iso-pages .ib-prose .wp-block-buttons { margin: 1.5em 0 !important }
#iso-pages#iso-pages .ib-prose .wp-block-button { margin: 0 !important }
#iso-pages .ib-prose .wp-block-button__link { display: inline-flex !important; align-items: center !important; justify-content: center !important; min-height: 50px !important; box-shadow: var(--io-ombre, rgba(59, 36, 126, .23) 3px 3px 11px 0) !important; transition: transform .25s var(--ib-ease), filter .25s }
#iso-pages#iso-pages .ib-prose .wp-block-button__link { padding: .75rem 1.5rem !important; border: 0 !important; border-radius: 999px !important; background: var(--ib-grad) !important; color: #fff !important; font: 700 1rem/1.1 "Outfit", sans-serif !important; text-decoration: none !important }
#iso-pages .ib-prose .wp-block-button__link:hover { transform: translateY(-2px) !important; filter: brightness(1.05) !important }
#iso-pages .ib-prose svg { max-width: 100% !important; height: auto !important }
#iso-pages#iso-pages .ib-prose .is-broken { display: none !important }
#iso-pages .ib-prose .wp-block-group:has(> figure + figure + figure) { grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)) !important; gap: 1rem !important; align-items: center !important }
#iso-pages#iso-pages .ib-prose .wp-block-group:has(> figure + figure + figure) { display: grid !important; margin: 1.4em 0 !important }
#iso-pages .ib-prose .wp-block-group:has(> figure + figure + figure) > figure { display: grid !important; place-items: center !important; border-radius: 14px !important; background: #fff !important; border: 1px solid var(--ib-line) !important; aspect-ratio: 4 / 3 !important }
#iso-pages#iso-pages .ib-prose .wp-block-group:has(> figure + figure + figure) > figure { margin: 0 !important; padding: .7rem !important }
#iso-pages .ib-prose .wp-block-group:has(> figure + figure + figure) img { max-width: 100% !important; max-height: 90px !important; object-fit: contain !important; border-radius: 0 !important }
#iso-pages#iso-pages .ib-prose .wp-block-group:has(> figure + figure + figure) img { width: auto !important }
#iso-pages .ib--suite { margin-top: clamp(2.5rem, 5vw, 4rem) !important }
#iso-pages .ib-back { display: grid !important; grid-template-columns: 250px minmax(0, 720px) !important; justify-content: center !important; gap: clamp(2rem, 4vw, 4rem) !important; max-width: 1160px !important; margin: 0 auto !important; padding: 0 clamp(1rem, 4vw, 3rem) !important; box-sizing: border-box !important }
#iso-pages .ib-back > a { grid-column: 2 !important }
#iso-pages body:has(.ib-notoc) .ib-back { grid-template-columns: minmax(0, 720px) !important }
#iso-pages body:has(.ib-notoc) .ib-back > a { grid-column: 1 !important }
#iso-pages .ib-list--related { margin-top: clamp(2rem, 4vw, 3rem) !important; background: var(--ib-lavande) !important }
#iso-pages .ib-list--related .ib-card__link { border-color: transparent !important }
#iso-pages .ib-list--related + .ir-cta { padding-top: clamp(3rem, 6vw, 5rem) !important }
@media (max-width: 1100px) {
#iso-pages .ib-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important }
#iso-pages .ib-body { grid-template-columns: minmax(0, 720px) !important }
#iso-pages .ib-toc { position: static !important; max-height: none !important }
#iso-pages .ib-body > .ib-toc, #iso-pages .ib-body > .ib-prose { grid-column: 1 !important; grid-row: auto !important }
#iso-pages .ib-back { grid-template-columns: minmax(0, 720px) !important }
#iso-pages .ib-back > a { grid-column: 1 !important }
}
@media (max-width: 900px) {
#iso-pages .ib-hero__in { grid-template-columns: 1fr !important; align-items: start !important }
#iso-pages .ib-hero__stats { grid-template-columns: repeat(3, minmax(0, 1fr)) !important }
#iso-pages .ib-une__card { grid-template-columns: 1fr !important }
#iso-pages .ib-une__media { min-height: 0 !important; aspect-ratio: 16 / 9 !important }
#iso-pages .ib-head__in { grid-template-columns: 1fr !important }
#iso-pages .ib-head__media { aspect-ratio: 16 / 9 !important }
#iso-pages .ib-list__head { flex-direction: column !important; align-items: stretch !important }
#iso-pages .ib-input input { width: 100% !important }
}
@media (max-width: 640px) {
#iso-pages .ib-hero__stats { grid-template-columns: 1fr !important }
#iso-pages .ib-hero__stats li:nth-child(3) { display: none !important }
#iso-pages .ib-filters { flex-wrap: nowrap !important; overflow-x: auto !important; width: calc(100% + 2rem) !important; max-width: none !important; margin: 0 -1rem !important; padding: 0 1rem .3rem !important; scrollbar-width: none !important }
#iso-pages .ib-filters::-webkit-scrollbar { display: none !important }
#iso-pages .ib-filter { flex: 0 0 auto !important }
#iso-pages .ib-grid { grid-template-columns: 1fr !important }
#iso-pages .ib-une__card { border-radius: 22px !important }
#iso-pages .ib-prose { font-size: 1.04rem !important; line-height: 1.7 !important }
#iso-pages .ib-progress { height: 3px !important }
#iso-pages .ib .ir-cta__actions, #iso-pages .ib .ir-cta__actions .ir-btn { width: 100% !important }
}
@media (max-width: 782px) {
#iso-pages .admin-bar .ib-progress { top: 46px !important }
}
@media (prefers-reduced-motion: reduce) {
#iso-pages#iso-pages .ib *, #iso-pages#iso-pages .ib *::before, #iso-pages#iso-pages .ib *::after, #iso-pages#iso-pages .ib-prose *, #iso-pages#iso-pages .ib-toc * { transition: none !important; animation: none !important }
#iso-pages .ib.is-js .ib-hero__text > *, #iso-pages .ib.is-js .ib-hero__stats li, #iso-pages .ib.is-js .ib-une__card, #iso-pages .ib.is-js .ib-card.is-pending, #iso-pages .ib.is-js .ib-head__text > *, #iso-pages .ib.is-js .ib-head__media { opacity: 1 !important; transform: none !important }
}

/* ---- pages/zones.css (WordPress) ---- */
#iso-pages .izn { --izn-violet: var(--io-violet, #3b247e); --izn-nuit: var(--io-nuit, #001167); --izn-bleu: var(--io-bleu, #3667b3); --izn-vert: var(--io-vert, #7cc900); --izn-vert-2: #3ec83a; --izn-grad: var(--io-grad, linear-gradient(90deg, #3ec83a 0%, #7cc900 100%)); --izn-lavande: var(--io-lavande, #f3f2f9); --izn-texte: var(--io-texte, rgba(59, 36, 126, .75)); --izn-line: #e6e3f3; --izn-ease: cubic-bezier(.2, .75, .2, 1) }
#iso-pages .izn-hero { position: relative !important; overflow: hidden !important; background: var(--izn-lavande) !important; padding: clamp(2.5rem, 5vw, 4.5rem) clamp(1rem, 4vw, 3rem) clamp(5rem, 8vw, 7rem) !important }
#iso-pages .izn-hero::before, #iso-pages .izn-hero::after { content: "" !important; position: absolute !important; border-radius: 60px !important; pointer-events: none !important }
#iso-pages .izn-hero::before { width: 420px !important; height: 420px !important; left: -170px !important; bottom: -250px !important; background: var(--izn-grad) !important; opacity: .14 !important; transform: rotate(32deg) !important }
#iso-pages .izn-hero::after { width: 380px !important; height: 380px !important; right: -120px !important; top: -230px !important; background: linear-gradient(135deg, var(--izn-violet), var(--izn-bleu)) !important; opacity: .08 !important; transform: rotate(28deg) !important }
#iso-pages .izn-hero__in { position: relative !important; z-index: 1 !important; max-width: 1240px !important; margin: 0 auto !important; display: grid !important; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr) !important; gap: clamp(2rem, 4vw, 4rem) !important; align-items: center !important }
#iso-pages .izn-hero h1 { font-size: clamp(2.1rem, 4.2vw, 3.4rem) !important; line-height: 1.06 !important; font-weight: 800 !important; color: var(--izn-nuit) !important; text-wrap: balance !important }
#iso-pages .izn-hero h1 span { color: var(--izn-vert) !important }
#iso-pages .izn-lead { max-width: 600px !important; font-size: clamp(1.02rem, 1.3vw, 1.15rem) !important; line-height: 1.6 !important; color: var(--izn-texte) !important }
#iso-pages#iso-pages .izn-lead { margin: 1.1rem 0 0 !important }
#iso-pages .izn-stats { list-style: none !important; display: flex !important; flex-wrap: wrap !important; gap: .8rem !important }
#iso-pages#iso-pages .izn-stats { margin: 1.8rem 0 0 !important; padding: 0 !important }
#iso-pages .izn-stats li { display: flex !important; align-items: center !important; gap: .7rem !important; padding: .8rem 1.1rem !important; border-radius: 16px !important; background: #fff !important; box-shadow: var(--io-ombre, rgba(59, 36, 126, .23) 3px 3px 11px 0) !important }
#iso-pages .izn-stats strong { color: transparent !important; background: var(--izn-grad) !important; -webkit-background-clip: text !important; background-clip: text !important; font-size: 2rem !important; font-weight: 800 !important; line-height: 1 !important }
#iso-pages .izn-stats span { color: var(--izn-texte) !important; font-size: .86rem !important; line-height: 1.25 !important }
#iso-pages .izn-jump { display: grid !important; gap: 1rem !important }
#iso-pages .izn-jump__card { position: relative !important; display: grid !important; gap: .25rem !important; padding: 1.4rem 4rem 1.4rem 1.5rem !important; border-radius: 22px !important; text-decoration: none !important; box-shadow: 0 26px 50px -30px rgba(0, 17, 103, .7) !important; transition: transform .35s var(--izn-ease) }
#iso-pages#iso-pages .izn-jump__card { color: #fff !important }
#iso-pages .izn-jump__card.is-violet { background: linear-gradient(130deg, var(--izn-violet), var(--izn-nuit)) !important }
#iso-pages .izn-jump__card.is-bleu { background: linear-gradient(130deg, var(--izn-bleu), var(--izn-nuit)) !important }
#iso-pages .izn-jump__card:hover { transform: translateY(-3px) !important }
#iso-pages .izn-jump__card small { color: var(--izn-vert) !important; font-weight: 700 !important; font-size: .8rem !important; letter-spacing: .12em !important; text-transform: uppercase !important }
#iso-pages .izn-jump__card strong { color: #fff !important; font-size: 1.35rem !important; font-weight: 800 !important }
#iso-pages .izn-jump__card span { color: rgba(255, 255, 255, .82) !important; font-size: .92rem !important }
#iso-pages .izn-jump__card em { position: absolute !important; right: 1.3rem !important; top: 50% !important; display: grid !important; place-items: center !important; width: 40px !important; height: 40px !important; margin-top: -20px !important; border-radius: 50% !important; background: var(--izn-grad) !important; color: #fff !important; font-style: normal !important; font-weight: 700 !important; transition: transform .35s var(--izn-ease) }
#iso-pages .izn-jump__card:hover em { transform: translateY(3px) !important }
#iso-pages .izn-secteurs { position: relative !important; z-index: 2 !important; padding: 0 clamp(1rem, 4vw, 3rem) !important; margin-top: clamp(-4rem, -5vw, -2.5rem) !important }
#iso-pages .izn-secteurs__in { max-width: 1240px !important; margin: 0 auto !important; display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 1.6rem !important; align-items: start !important }
#iso-pages .izn-card { overflow: hidden !important; border-radius: 26px !important; background: #fff !important; box-shadow: 0 30px 60px -36px rgba(0, 17, 103, .55), var(--io-ombre, rgba(59, 36, 126, .23) 3px 3px 11px 0) !important; scroll-margin-top: 140px !important }
#iso-pages .izn-card__media { position: relative !important; aspect-ratio: 16 / 8 !important; overflow: hidden !important; background: var(--izn-lavande) !important }
#iso-pages .izn-card__media img { display: block !important; width: 100% !important; height: 100% !important; object-fit: cover !important; transition: transform 1s var(--izn-ease) }
#iso-pages .izn-card:hover .izn-card__media img { transform: scale(1.03) !important }
#iso-pages .izn-card__tag { position: absolute !important; left: 1rem !important; top: 1rem !important; padding: .35rem .85rem !important; border-radius: 999px !important; background: var(--izn-grad) !important; color: #fff !important; font-weight: 700 !important; font-size: .82rem !important }
#iso-pages .izn-card__cap { position: absolute !important; left: 1rem !important; bottom: 1rem !important; display: inline-flex !important; align-items: center !important; gap: .3rem !important; padding: .3rem .7rem !important; border-radius: 999px !important; background: rgba(255, 255, 255, .94) !important; color: var(--izn-nuit) !important; font-size: .78rem !important; font-weight: 600 !important }
#iso-pages .izn-card__cap svg, #iso-pages .izn-line svg, #iso-pages .izn-agence__links svg { width: 16px !important; height: 16px !important; flex: 0 0 auto !important; color: var(--izn-vert-2) !important }
#iso-pages .izn-card__body { display: grid !important; gap: 1rem !important; padding: clamp(1.4rem, 3vw, 2rem) !important }
#iso-pages .izn-card h2 { font-size: clamp(1.4rem, 2.3vw, 1.75rem) !important; font-weight: 800 !important; color: var(--izn-nuit) !important }
#iso-pages .izn-card__texte { color: var(--izn-texte) !important; font-size: 1.02rem !important; line-height: 1.6 !important }
#iso-pages#iso-pages .izn-card__texte { margin: 0 !important }
#iso-pages .izn-agence { display: grid !important; gap: .55rem !important; padding: 1rem 1.1rem !important; border-radius: 16px !important; background: var(--izn-lavande) !important }
#iso-pages .izn-line { display: flex !important; align-items: flex-start !important; gap: .55rem !important; color: var(--izn-texte) !important; font-size: .95rem !important; line-height: 1.45 !important }
#iso-pages#iso-pages .izn-line { margin: 0 !important }
#iso-pages .izn-line svg { margin-top: .15rem !important }
#iso-pages .izn-line strong { color: var(--izn-nuit) !important }
#iso-pages .izn-line a { color: var(--izn-violet) !important; font-weight: 700 !important; text-decoration: none !important }
#iso-pages .izn-agence__links { display: flex !important; flex-wrap: wrap !important; gap: .5rem 1.2rem !important }
#iso-pages#iso-pages .izn-agence__links { margin: .2rem 0 0 !important }
#iso-pages .izn-agence__links a { display: inline-flex !important; align-items: center !important; gap: .35rem !important; min-height: 32px !important; color: var(--izn-bleu) !important; font-weight: 600 !important; font-size: .92rem !important }
#iso-pages .izn-card__h3 { font-weight: 700 !important; color: var(--izn-violet) !important }
#iso-pages#iso-pages .izn-card__h3 { margin-top: .3rem !important; font-size: 1rem !important }
#iso-pages .izn-villes { list-style: none !important; display: flex !important; flex-wrap: wrap !important; gap: .45rem !important }
#iso-pages#iso-pages .izn-villes { margin: 0 !important; padding: 0 !important }
#iso-pages .izn-villes a { display: inline-flex !important; align-items: center !important; gap: .35rem !important; min-height: 40px !important; padding: .45rem .9rem !important; border: 1.5px solid var(--izn-line) !important; border-radius: 999px !important; color: var(--izn-violet) !important; font-weight: 600 !important; font-size: .9rem !important; text-decoration: none !important; transition: border-color .25s, background-color .25s, color .25s, transform .25s var(--izn-ease) }
#iso-pages .izn-villes a span { color: var(--izn-vert-2) !important; transition: transform .25s var(--izn-ease) }
#iso-pages .izn-villes a:hover { border-color: transparent !important; background: var(--izn-grad) !important; color: #fff !important; transform: translateY(-1px) !important }
#iso-pages .izn-villes a:hover span { color: #fff !important; transform: translateX(2px) !important }
#iso-pages .izn-card__real { justify-self: start !important; color: var(--izn-bleu) !important; font-weight: 700 !important }
#iso-pages .izn-deps { padding: clamp(3rem, 6vw, 5rem) clamp(1rem, 4vw, 3rem) !important; background: #fff !important }
#iso-pages .izn-deps__in { max-width: 1240px !important; margin: 0 auto !important }
#iso-pages .izn-deps__head { display: flex !important; flex-wrap: wrap !important; align-items: end !important; justify-content: space-between !important; gap: .6rem 2rem !important; margin-bottom: 1.4rem !important }
#iso-pages .izn-deps__head h2 { font-size: clamp(1.5rem, 2.6vw, 2rem) !important; font-weight: 800 !important }
#iso-pages .izn-deps__head p { max-width: 520px !important; color: var(--izn-texte) !important }
#iso-pages#iso-pages .izn-deps__head p { margin: 0 !important }
#iso-pages .izn-deps__list { list-style: none !important; display: grid !important; grid-template-columns: repeat(5, minmax(0, 1fr)) !important; gap: 1rem !important }
#iso-pages#iso-pages .izn-deps__list { margin: 0 !important; padding: 0 !important }
#iso-pages .izn-dep { display: flex !important; flex-direction: column !important; gap: .8rem !important; padding: 1.2rem !important; border-radius: 20px !important; background: var(--izn-lavande) !important }
#iso-pages .izn-dep__code { display: grid !important; place-items: center !important; width: 56px !important; height: 56px !important; border-radius: 16px !important; background: var(--izn-nuit) !important; color: #fff !important; font-size: 1.35rem !important; font-weight: 800 !important }
#iso-pages .izn-dep:nth-child(odd) .izn-dep__code { background: var(--izn-violet) !important }
#iso-pages .izn-dep__name { display: flex !important; flex-direction: column !important }
#iso-pages .izn-dep__name strong { color: var(--izn-nuit) !important; font-size: 1.08rem !important; line-height: 1.2 !important }
#iso-pages .izn-dep__name small { color: var(--izn-texte) !important; font-size: .85rem !important }
#iso-pages .izn-dep__real { margin-top: auto !important; color: var(--izn-bleu) !important; font-weight: 700 !important; font-size: .9rem !important }
#iso-pages .izn.is-js .izn-hero__text > *, #iso-pages .izn.is-js .izn-jump__card, #iso-pages .izn.is-js .izn-card { opacity: 0 !important; transform: translateY(16px) !important }
#iso-pages .izn.is-js.is-ready .izn-hero__text > *, #iso-pages .izn.is-js.is-ready .izn-jump__card, #iso-pages .izn.is-js.is-ready .izn-card { opacity: 1 !important; transform: none !important; transition: opacity .8s var(--izn-ease), transform .8s var(--izn-ease) }
#iso-pages .izn.is-js.is-ready .izn-hero__text > :nth-child(2) { transition-delay: .08s }
#iso-pages .izn.is-js.is-ready .izn-hero__text > :nth-child(3) { transition-delay: .16s }
#iso-pages .izn.is-js.is-ready .izn-hero__text > :nth-child(4) { transition-delay: .24s }
#iso-pages .izn.is-js.is-ready .izn-jump__card:nth-child(1) { transition-delay: .2s }
#iso-pages .izn.is-js.is-ready .izn-jump__card:nth-child(2) { transition-delay: .3s }
#iso-pages .izn.is-js.is-ready .izn-card { transition-delay: .35s }
#iso-pages .izn.is-js.is-ready .izn-card + .izn-card { transition-delay: .45s }
#iso-pages .izn.is-js.is-ready .izn-jump__card:hover { transition-delay: 0s; transform: translateY(-3px) !important }
@media (max-width: 1100px) {
#iso-pages .izn-deps__list { grid-template-columns: repeat(3, minmax(0, 1fr)) !important }
}
@media (max-width: 960px) {
#iso-pages .izn-hero__in { grid-template-columns: 1fr !important }
#iso-pages .izn-secteurs__in { grid-template-columns: 1fr !important }
}
@media (max-width: 640px) {
#iso-pages .izn-stats { gap: .5rem !important }
#iso-pages .izn-stats li { flex: 1 1 0 !important; flex-direction: column !important; align-items: flex-start !important; gap: .3rem !important; padding: .7rem .8rem !important }
#iso-pages .izn-stats span { font-size: .78rem !important }
#iso-pages .izn-deps__list { grid-template-columns: repeat(2, minmax(0, 1fr)) !important }
#iso-pages .izn-dep__code { width: 48px !important; height: 48px !important; font-size: 1.15rem !important }
#iso-pages .izn-card__media { aspect-ratio: 16 / 10 !important }
#iso-pages .izn .ir-cta__actions, #iso-pages .izn .ir-cta__actions .ir-btn { width: 100% !important }
}
@media (prefers-reduced-motion: reduce) {
#iso-pages#iso-pages .izn *, #iso-pages#iso-pages .izn *::before, #iso-pages#iso-pages .izn *::after { transition: none !important; animation: none !important }
#iso-pages .izn.is-js .izn-hero__text > *, #iso-pages .izn.is-js .izn-jump__card, #iso-pages .izn.is-js .izn-card { opacity: 1 !important; transform: none !important }
}
