@font-face{font-family:'Dosis';font-style:normal;font-weight:400 800;font-display:swap;src:url('../fonts/dosis-var-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Overpass';font-style:normal;font-weight:300 800;font-display:swap;src:url('../fonts/overpass-var-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.visible{visibility:visible}.static{position:static}.relative{position:relative}.order-1{order:1}.order-2{order:2}.mx-auto{margin-left:auto;margin-right:auto}.\!mb-10{margin-bottom:2.5rem!important}.\!mt-0{margin-top:0!important}.mb-10{margin-bottom:2.5rem}.mb-12{margin-bottom:3rem}.mb-16{margin-bottom:4rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mt-10{margin-top:2.5rem}.mt-12{margin-top:3rem}.mt-14{margin-top:3.5rem}.mt-2{margin-top:.5rem}.mt-20{margin-top:5rem}.mt-4{margin-top:1rem}.block{display:block}.inline{display:inline}.flex{display:flex}.table{display:table}.\!grid{display:grid!important}.grid{display:grid}.hidden{display:none}.h-6{height:1.5rem}.min-h-screen{min-height:100vh}.w-6{width:1.5rem}.w-full{width:100%}.max-w-2xl{max-width:42rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-lg{max-width:32rem}.max-w-xl{max-width:36rem}.max-w-xs{max-width:20rem}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-center{justify-content:center}.gap-10{gap:2.5rem}.gap-12{gap:3rem}.gap-14{gap:3.5rem}.gap-16{gap:4rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-8{gap:2rem}.space-y-12>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(3rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(3rem*var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem*var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem*var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(2rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem*var(--tw-space-y-reverse))}.scroll-smooth{scroll-behavior:smooth}.rounded{border-radius:.25rem}.rounded-\[28px\]{border-radius:28px}.border-l-4{border-left-width:4px}.bg-\[var\(--bg-2\)\]{background-color:var(--bg-2)}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity,1))}.p-8{padding:2rem}.\!px-0{padding-left:0!important;padding-right:0!important}.px-4{padding-left:1rem;padding-right:1rem}.px-40{padding-left:10rem;padding-right:10rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-28{padding-top:7rem;padding-bottom:7rem}.py-32{padding-top:8rem;padding-bottom:8rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.\!pb-10{padding-bottom:2.5rem!important}.\!pt-0{padding-top:0!important}.pb-16{padding-bottom:4rem}.pb-20{padding-bottom:5rem}.pb-4{padding-bottom:1rem}.pb-8{padding-bottom:2rem}.pl-8{padding-left:2rem}.pt-36{padding-top:9rem}.pt-4{padding-top:1rem}.text-left{text-align:left}.text-center{text-align:center}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-black{font-weight:900}.font-bold{font-weight:700}.font-light{font-weight:300}.font-medium{font-weight:500}.uppercase{text-transform:uppercase}.italic{font-style:italic}.not-italic{font-style:normal}.leading-relaxed{line-height:1.625}.leading-tight{line-height:1.25}.tracking-\[0\.2em\]{letter-spacing:.2em}.tracking-\[0\.4em\]{letter-spacing:.4em}.tracking-wide{letter-spacing:.025em}.tracking-widest{letter-spacing:.1em}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.shadow-2xl{--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-500{transition-duration:.5s}@media (min-width:768px){.md\:mb-14{margin-bottom:3.5rem}.md\:mb-16{margin-bottom:4rem}.md\:mt-24{margin-top:6rem}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:px-12{padding-left:3rem;padding-right:3rem}.md\:py-32{padding-top:8rem;padding-bottom:8rem}.md\:pb-24{padding-bottom:6rem}.md\:pt-40{padding-top:10rem}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-base{font-size:1rem;line-height:1.5rem}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width:1024px){.lg\:order-1{order:1}.lg\:order-2{order:2}.lg\:col-span-5{grid-column:span 5/span 5}.lg\:col-span-7{grid-column:span 7/span 7}.lg\:mx-0{margin-left:0;margin-right:0}.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:text-left{text-align:left}}
:root { --bg-1: #000; --text-1: #fff; --text-2: #a1a1aa; --accent: #cc0000; --nav-bg: rgba(0,0,0,0.95); --border: rgba(255,255,255,0.1); }
        .mm-title-accent { color: var(--accent); }
        .mm-title-accent--block { display: block; }
        .mm-title-accent--block.mm-title-accent--flow { display: inline; }
        body.light-mode { --bg-1: #ffffff; --text-1: #000000; --text-2: #444444; --nav-bg: rgba(255, 255, 255, 0.98); --border: rgba(0, 0, 0, 0.1); }
        body.zoom-mode { font-size: 1.25rem !important; }
        html { overflow-x: hidden; background: var(--bg-1, #000); }
        body { font-family: 'Overpass', sans-serif; background-color: var(--bg-1); color: var(--text-1); transition: background-color 0.4s, color 0.4s; overflow-x: hidden; max-width: 100%; width: 100%; min-height: 100%; position: relative; }
        button, input, select, textarea { font-family: 'Overpass', sans-serif; }
        h1, h2, h3, h4, h5, h6,
        .article-title, .home-section-title, .section-title, .media-hero-title,
        .media-hub-tile-label, .video-card h2, .media-featured h2,
        [class$="-titre"], [class$="-title"] { font-family: 'Dosis', sans-serif; }
        /* Dosis n'a pas de variante italique, et la charte demande désormais sans italique : */
        .italic, h1, h2, h3, h4, h5, h6 { font-style: normal !important; }
        .btn-red { background: var(--accent); padding: 12px 30px; border-radius: 12px; font-weight: 900; font-size: 11px; text-transform: uppercase; letter-spacing: 0.06em; color: white !important; transition: 0.3s; display: inline-flex; align-items: center; justify-content: center; gap: 8px; border: none; cursor: pointer; text-align: center; line-height: 1.2; white-space: nowrap; }
        .btn-red:hover { transform: scale(1.05); filter: brightness(1.1); }
        .nav-link,
        .primary-menu a.nav-link,
        .primary-menu a {
            color: var(--text-2);
            font-weight: 700;
            text-transform: uppercase;
            font-size: 13px;
            letter-spacing: 0.08em;
            transition: color 0.25s ease, opacity 0.25s ease;
            text-decoration: none;
            position: relative;
        }
        .nav-link:hover,
        .primary-menu a.nav-link:hover,
        .primary-menu a:hover {
            color: #fff;
        }
        /* État actif = page courante (reste visible) */
        .nav-link.is-active,
        .primary-menu a.is-active,
        .primary-menu .current-menu-item > a,
        .primary-menu .current_page_item > a,
        .primary-menu .current-menu-ancestor > a,
        .primary-menu .current_page_parent > a {
            color: var(--accent, #cc0000) !important;
        }
        .nav-link.is-active:hover,
        .primary-menu .current-menu-item > a:hover,
        .primary-menu .current_page_item > a:hover {
            color: #ff2a2a !important;
        }
        /* Soulignement charte sur hover + actif */
        .primary-menu > li > a::after,
        .primary-menu-fallback > a.nav-link::after {
            content: "";
            position: absolute;
            left: 0;
            right: 0;
            bottom: -6px;
            height: 2px;
            background: var(--accent, #cc0000);
            transform: scaleX(0);
            transform-origin: center;
            transition: transform 0.22s ease;
        }
        .primary-menu > li > a:hover::after,
        .primary-menu > li.current-menu-item > a::after,
        .primary-menu > li.current_page_item > a::after,
        .primary-menu > li.is-active > a::after,
        .primary-menu-fallback > a.nav-link:hover::after,
        .primary-menu-fallback > a.nav-link.is-active::after {
            transform: scaleX(1);
        }
        .light-mode .nav-link:hover,
        .light-mode .primary-menu a:hover { color: #111; }

        .access-trigger {
            width: 40px; height: 40px; display: inline-flex !important; align-items: center; justify-content: center;
            background: rgba(255,255,255,0.08); border: 1px solid var(--border); border-radius: 12px;
            cursor: pointer; color: var(--text-1); transition: 0.3s; margin-left: 8px; padding: 0; flex-shrink: 0;
        }
        .access-trigger:hover { color: var(--accent); border-color: var(--accent); }
        .access-trigger svg { width: 20px; height: 20px; display: block; pointer-events: none; }
        .menu-button { display: none; width: 42px; height: 42px; align-items: center; justify-content: center; background: transparent; border: 0; color: var(--text-1); padding: 0; cursor: pointer; }
        .menu-button svg { width: 24px; height: 24px; display: block; }
        @media (max-width: 1023px) {
            .menu-button { display: inline-flex !important; }
            #desktop-nav { display: none !important; }
        }
        #access-panel {
            position: fixed; top: 90px; right: 20px; width: 64px;
            background: var(--bg-1); backdrop-filter: blur(20px);
            border: 1px solid var(--border); border-radius: 30px;
            display: flex; flex-direction: column; align-items: center;
            padding: 18px 0; gap: 18px; z-index: 3000;
            transition: transform 0.35s ease, opacity 0.25s ease;
            transform: translateX(120%); opacity: 0; pointer-events: none;
            box-shadow: 0 20px 50px rgba(0,0,0,0.35);
        }
        #access-panel.active { transform: translateX(0); opacity: 1; pointer-events: auto; }
        .tool-icon, button.tool-icon {
            cursor: pointer; transition: 0.3s; color: var(--text-1);
            display: flex; align-items: center; justify-content: center;
            background: transparent; border: 0; padding: 0; width: 36px; height: 36px;
        }
        .tool-icon:hover, .tool-icon.active { color: var(--accent); }
        .tool-icon svg { width: 20px; height: 20px; display: block; }
        .color-dot, button.color-dot {
            width: 16px; height: 16px; border-radius: 50%; cursor: pointer;
            border: 1px solid rgba(255,255,255,0.25); padding: 0;
            appearance: none; -webkit-appearance: none; display: block;
        }
        .color-dot:hover { transform: scale(1.15); }
        /* Mobile nav panel */
        #mobile-nav-panel {
            display: none !important; position: fixed; top: 73px; left: 0; right: 0; bottom: 0;
            z-index: 1500; background: var(--bg-1); padding: 24px;
            overflow-y: auto; border-top: 1px solid var(--border);
        }
        #mobile-nav-panel.is-open { display: block !important; }
        #mobile-nav-panel .mobile-nav-list,
        #mobile-nav-panel .menu,
        #mobile-nav-panel ul {
            list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 4px;
        }
        #mobile-nav-panel a {
            display: block; padding: 14px 8px; border-bottom: 1px solid var(--border);
            color: var(--text-1); font-weight: 700; text-transform: uppercase; font-size: 14px; letter-spacing: .06em;
        }
        #mobile-nav-panel a:hover { color: var(--accent); }
        body.mobile-nav-open { overflow: hidden; }
        .hero-title { font-size: clamp(2.4rem, 6vw, 4.25rem); font-weight: 900; text-transform: uppercase; font-style: italic; letter-spacing: -0.04em; line-height: 0.9; margin-bottom: 1rem; color: var(--text-1); }
        /* width 100% (pas 110%) pour éviter un overflow horizontal qui fait “sauter” la page au scroll */
.bg-portrait-fixed {
            position: fixed !important;
            top: 0 !important;
            left: 0 !important;
            right: 0 !important;
            bottom: 0 !important;
            width: 100vw !important;
            height: 100vh !important;
            min-width: 100vw;
            min-height: 100vh;
            max-width: none !important;
            margin: 0 !important;
            padding: 0 !important;
            object-fit: cover !important;
            object-position: center center !important;
            opacity: 0.08;
            z-index: 0;
            pointer-events: none;
            filter: grayscale(100%);
            transition: opacity 0.5s;
        }
        /* Contenu au-dessus du filigrane */
        body > *:not(.bg-portrait-fixed) { position: relative; z-index: 1; }
        body > .bg-portrait-fixed { z-index: 0; }
        .light-mode .bg-portrait-fixed { opacity: 0.18; }
        /* Logo header : taille fixe (évite l’agrandissement via height:auto / max-width) */
        #header-logo,
        .site-header #header-logo,
        nav.site-header img#header-logo {
            height: 40px !important;
            max-height: 40px !important;
            width: auto !important;
            max-width: 160px !important;
            object-fit: contain;
            display: block;
        }
        nav.site-header,
        .site-header {
            min-height: 72px;
            padding-top: 0.75rem !important;
            padding-bottom: 0.75rem !important;
        }
        .light-mode img[alt="Logo"], .light-mode #header-logo { filter: invert(1); }

        /* ===== Sections aperçu (accueil enrichi) ===== */
        .home-section { padding: 100px 24px; position: relative; overflow: hidden; }
        .home-section.alt { background: rgba(255,255,255,0.015); }
        .light-mode .home-section.alt { background: rgba(0,0,0,0.015); }
        .home-section-bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0.05; filter: grayscale(100%); z-index: 0; }
        .light-mode .home-section-bg { opacity: 0.04; }
        .home-section > .container { position: relative; z-index: 1; }
        .home-section-title { font-size: clamp(2rem, 4vw, 3.25rem); font-weight: 900; text-transform: uppercase; font-style: italic; line-height: 0.95; }
        .home-eyebrow { color: var(--accent); font-weight: 900; text-transform: uppercase; font-size: 11px; letter-spacing: 0.3em; display: block; margin-bottom: 14px; }
        .home-preview-card { background: rgba(255,255,255,0.02); border: 1px solid var(--border); border-radius: 24px; padding: 12px; transition: 0.35s; height: 100%; display: flex; flex-direction: column; }
        .light-mode .home-preview-card { background: rgba(0,0,0,0.02); }
        .cellule-banner { display: block; margin-top: 40px; border-radius: 28px; overflow: hidden; border: 1px solid var(--border); text-decoration: none; transition: 0.35s; }
        .cellule-banner:hover { border-color: var(--accent); }
        .cellule-banner-inner { display: grid; grid-template-columns: 1fr; }
        @media (min-width: 900px) { .cellule-banner-inner { grid-template-columns: 1fr 1fr; } }
        .cellule-banner img { width: 100%; height: 100%; object-fit: cover; min-height: 220px; filter: grayscale(60%); transition: 0.5s; }
        .cellule-banner:hover img { filter: grayscale(0%); }
        .cellule-banner-text { padding: 40px; display: flex; flex-direction: column; justify-content: center; background: var(--bg-2, rgba(255,255,255,0.02)); }
        .cellule-banner-tag { color: var(--accent); font-weight: 900; text-transform: uppercase; font-size: 11px; letter-spacing: 0.3em; margin-bottom: 12px; }
        .cellule-banner-title { font-size: clamp(1.5rem, 3.2vw, 2.2rem); font-weight: 900; text-transform: uppercase; font-style: italic; line-height: 1; margin-bottom: 14px; color: var(--text-1); }
        .cellule-banner-text p { color: var(--text-2); font-size: 14px; line-height: 1.7; margin-bottom: 20px; }
        .home-preview-card .card-img-wrap { width: 100%; height: 220px; overflow: hidden; border-radius: 16px; margin-bottom: 20px; background: var(--border); }
        .home-preview-card .card-img-wrap img { width: 100%; height: 100%; object-fit: cover; object-position: center 18%; filter: grayscale(100%); transition: 0.5s; }
        .home-preview-card:hover .card-img-wrap img { filter: grayscale(0%); transform: scale(1.05); }
        .home-preview-card .card-body { padding: 0 16px 20px; }
        .home-preview-card:hover { border-color: var(--accent); transform: translateY(-6px); }
        .btn-outline { border: 1px solid var(--border); padding: 12px 28px; border-radius: 12px; font-weight: 900; font-size: 11px; text-transform: uppercase; letter-spacing: 0.06em; color: var(--text-1) !important; display: inline-flex; align-items: center; justify-content: center; gap: 8px; transition: 0.3s; text-decoration: none; text-align: center; line-height: 1.2; white-space: nowrap; }
        .btn-outline:hover { border-color: var(--accent); }
        .home-media-frame { border-radius: 28px; overflow: hidden; border: 1px solid var(--border); aspect-ratio: 16/9; }
        .home-media-frame img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(60%); transition: 0.5s; }
        .home-media-frame:hover img { filter: grayscale(0%); transform: scale(1.03); }
        .home-portrait { border-radius: 28px; overflow: hidden; border: 1px solid var(--border); }
        .home-portrait img { width: 100%; display: block; filter: grayscale(100%); transition: 0.5s; }
        .home-portrait:hover img { filter: grayscale(0%); }
        .social-widget-frame { border: 1px solid var(--border); border-radius: 24px; padding: 20px; background: rgba(255,255,255,0.02); }
        .light-mode .social-widget-frame { background: rgba(0,0,0,0.02); }

        /* ===== RESPONSIVE — n'affecte jamais >= 1024px ===== */
        @media (max-width: 1023px) {
            /* Header / hero — padding géré par harmony.css */
            #hero-split { padding-top: 0; padding-bottom: 0; }

            /* Réordonne image entre le texte et les boutons sans toucher au HTML */
            #hero-split .gap-16 { gap: 1.25rem; }
            #hero-split .text-center.lg\:text-left { display: contents; }
            #hero-split .hero-title { order: 1; margin-bottom: 0; text-align: left; }
            #hero-split .space-y-6.mb-12 { order: 2; margin-bottom: 0; text-align: left; }
            #hero-split .space-y-6.mb-12 .max-w-xl { margin-left: 0; margin-right: 0; }
            #hero-split .flex.justify-center.lg\:justify-end { order: 3; margin-top: 0; margin-bottom: 0; }
            #hero-split .flex.flex-col.sm\:flex-row { order: 4; }

            /* Panneau d'accessibilité : évite qu'il chevauche le menu mobile ouvert */
            #access-panel { top: 80px; right: 14px; }

            /* Sections aperçu accueil */
            .home-section { padding: 70px 24px; }
            .home-section-title { font-size: 2.25rem; }

            /* Mobile/tablette : pas de vrai hover tactile, effet déclenché au scroll (au milieu de l'écran) */
            .btn-red.scroll-hover { filter: brightness(1.1); }
            .btn-outline.scroll-hover { border-color: var(--accent); }
            .home-preview-card.scroll-hover { border-color: var(--accent); }
            .home-preview-card.scroll-hover .card-img-wrap img { filter: grayscale(0%); transform: scale(1.05); }
            .home-media-frame.scroll-hover img { filter: grayscale(0%); transform: scale(1.03); }
            .home-portrait.scroll-hover img { filter: grayscale(0%); }
            .cellule-banner.scroll-hover { border-color: var(--accent); }
            .cellule-banner.scroll-hover img { filter: grayscale(0%); }
        }

        @media (max-width: 767px) {
            #hero-split { padding-top: 0; }
            .hero-title { margin-bottom: 0.75rem; }
            #hero-split .flex.justify-center.lg\:justify-end { margin-top: 20px; margin-bottom: 20px; }
            .home-section { padding: 56px 20px; }
            .home-section-title { font-size: 1.9rem; }
        }

        @media (max-width: 480px) {
            #hero-split .hero-actions { width: 100%; }
            #hero-split .hero-actions .hero-btn { width: 100%; }
            #hero-split .flex.flex-col.sm\:flex-row { width: 100%; }
        }

        /* Corrige le débordement de l'image du hero en tablette (1024-1499px) — n'affecte jamais >=1500px */
        @media (min-width: 1024px) and (max-width: 1499px) {
            #hero-split { overflow-x: hidden; }
            #hero-split .flex.justify-center.lg\:justify-end {
                min-width: 0 !important;
                max-width: 100% !important;
                margin-top: 70px;
                overflow: hidden;
            }
            #hero-split .flex.justify-center.lg\:justify-end .max-w-xl {
                min-width: 0 !important;
                max-width: 100% !important;
                width: 90% !important;
            }
            #hero-split .flex.justify-center.lg\:justify-end img {
                min-width: 0 !important;
                max-width: 100% !important;
                width: 100% !important;
                height: auto !important;
            }
        }

        /* ===== Apparition au scroll : opacity only (pas de transform = pas de saut horizontal) ===== */
        @keyframes revealFade { from { opacity: 0; } to { opacity: 1; } }
        .reveal-pre { opacity: 0; }
        .reveal-pre.is-visible { animation: revealFade 0.5s ease forwards; }
        .site-footer.reveal-pre,
        footer.reveal-pre,
        .site-footer .reveal-pre,
        #preview-social.reveal-pre,
        #preview-social .reveal-pre {
            opacity: 1 !important; transform: none !important; animation: none !important; will-change: auto !important;
        }
        .site-footer { background: var(--bg-2, #0a0a0a); border-top: 1px solid var(--border); padding: 64px 24px 0; overflow-x: clip; width: 100%; max-width: 100%; position: relative; }
        .mm-social-hub, .social-widget-frame, #preview-social { overflow-x: clip; max-width: 100%; }
        html, body { overflow-x: hidden; }
        body { width: 100%; max-width: 100%; }

        .foot-wrap { max-width: 1200px; margin: 0 auto; }
        .foot-top { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1.2fr; gap: 40px; padding-bottom: 48px; border-bottom: 1px solid var(--border); text-align: left; }
        @media (max-width: 900px) { .foot-top { grid-template-columns: 1fr 1fr; } }
        @media (max-width: 560px) { .foot-top { grid-template-columns: 1fr; } }
        .foot-brand img,
        #footer-logo {
            display: block;
            height: 40px;
            width: auto;
            max-width: 200px;
            object-fit: contain;
            object-position: left center;
            margin: 0 0 16px;
        }
        .light-mode #footer-logo,
        .light-mode .foot-brand img { filter: invert(1); }
        .foot-brand p { color: var(--text-2); font-size: 14px; line-height: 1.7; max-width: 280px; margin: 0 0 20px; }
        .foot-social { display: flex; gap: 12px; }
        .foot-social a { width: 38px; height: 38px; border: 1px solid var(--border); border-radius: 10px; display: flex; align-items: center; justify-content: center; transition: .3s; color: var(--text-1); }
        .foot-social a:hover { border-color: var(--accent); color: var(--accent); }
        .foot-col-title { font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .15em; color: var(--accent); margin: 0 0 18px; }
        .foot-col ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 12px; }
        .foot-col a { font-size: 14px; color: var(--text-2); transition: .2s; }
        .foot-col a:hover { color: var(--text-1); }
        .foot-contact address { font-style: normal; font-size: 14px; color: var(--text-2); line-height: 1.8; }
        .foot-cta { display: inline-block; margin-top: 16px; background: var(--accent); color: #fff !important; font-weight: 800; font-size: 11px; text-transform: uppercase; letter-spacing: .05em; padding: 12px 22px; border-radius: 10px; }
        .foot-bottom { padding: 24px 0; display: flex; flex-wrap: wrap; gap: 12px 24px; align-items: center; justify-content: space-between; font-size: 12px; color: var(--text-2); }
        .foot-legal-links { display: flex; flex-wrap: wrap; gap: 6px 18px; }
        .foot-legal-links a:hover { color: var(--text-1); }
        .foot-placeholder { color: #ff8080; font-weight: 700; }


/* ===== Hero actions (2 boutons) ===== */
.hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  justify-content:center;
  align-items:center;
}
@media (min-width:1024px){
  .hero-actions{ justify-content:flex-start; }
}
.hero-actions .hero-btn{
  min-height:52px;
  padding:16px 28px !important;
  font-size:12px !important;
  letter-spacing:0.08em !important;
  white-space:nowrap !important;
  line-height:1.15 !important;
  box-sizing:border-box;
}
@media (max-width:520px){
  .hero-actions{ flex-direction:column; width:100%; }
  .hero-actions .hero-btn{
    width:100%;
    white-space:normal !important;
  }
}


/* ===== Titres de pages unifiés (Full HD friendly) ===== */
.section-title,
h1.section-title,
.page-title,
.page-interventions-title {
    font-size: clamp(2.25rem, 4.5vw, 3.5rem) !important;
    font-weight: 900;
    text-transform: uppercase;
    font-style: italic;
    letter-spacing: -0.03em;
    line-height: 0.95;
    max-width: 22ch;
}
.section-title.text-center,
h1.section-title.text-center,
.page-interventions-title {
    margin-left: auto;
    margin-right: auto;
}
/* Sous-titres de section un cran en dessous */
.home-section-title {
    font-size: clamp(2rem, 4vw, 3.25rem) !important;
}
/* Hero accueil un peu plus grand, mais plafonné */
.hero-title {
    font-size: clamp(2.4rem, 6vw, 4.25rem) !important;
    max-width: none;
}
@media (min-width: 1280px) {
    .section-title,
    h1.section-title,
    .page-title,
    .page-interventions-title {
        font-size: clamp(2.4rem, 3.6vw, 3.35rem) !important;
    }
}
@media (max-width: 767px) {
    .section-title,
    h1.section-title,
    .page-title,
    .page-interventions-title,
    .home-section-title {
        font-size: clamp(1.9rem, 8vw, 2.4rem) !important;
    }
    .hero-title {
        font-size: clamp(2.1rem, 10vw, 2.8rem) !important;
    }
}


/* Hero spacing under fixed header — plus haut / moins de vide */
#hero-split.hero-split,
#hero-split {
  padding-top: 7.5rem; /* ~header 72px + air */
  padding-bottom: 4rem;
}
@media (min-width: 768px) {
  #hero-split.hero-split,
  #hero-split {
    padding-top: 8rem;
    padding-bottom: 4.5rem;
  }
}
@media (min-width: 1024px) {
  #hero-split.hero-split,
  #hero-split {
    padding-top: 8.5rem;
    padding-bottom: 5rem;
  }
}
@media (max-width: 767px) {
  #hero-split.hero-split,
  #hero-split {
    padding-top: 6.25rem;
    padding-bottom: 2.75rem;
  }
}


/* Filigrane Yannick : uniquement page d'accueil */
body:not(.home):not(.front-page) .bg-portrait-fixed {
  display: none !important;
}
body.home .bg-portrait-fixed,
body.front-page .bg-portrait-fixed {
  display: block;
}
/* Pages intérieures : fond noir plein, sans image parasite */
body:not(.home):not(.front-page) {
  background-color: #000 !important;
}
body.light-mode:not(.home):not(.front-page) {
  background-color: var(--bg-1, #fff) !important;
}

#mobile-nav-panel a.is-active,
#mobile-nav-panel .current-menu-item > a,
#mobile-nav-panel .current_page_item > a {
  color: var(--accent, #cc0000) !important;
  border-color: rgba(204,0,0,.35);
}

/* Logo personnalisé du footer : ne pas le réduire à 40 px. */
#footer-logo.mm-logo-custom { width: 220px; max-width: 220px; height: auto; max-height: 70px; object-fit: contain; }
body.light-mode #footer-logo.mm-logo-custom { filter: none !important; }
@media (max-width: 600px) { #footer-logo.mm-logo-custom { width: 180px; max-width: 180px; } }

/* Logo complet dans le footer et inversion automatique selon le thème. */
#footer-logo.mm-logo-custom { width: 300px; max-width: 300px; height: auto; max-height: 90px; object-fit: contain; object-position: left center; }
body.light-mode #footer-logo.mm-logo-custom { filter: none !important; }
body:not(.light-mode) #footer-logo.mm-logo-custom { filter: invert(1) !important; }
@media (max-width: 600px) { #footer-logo.mm-logo-custom { width: 230px; max-width: 230px; } }

body.light-mode #footer-logo.mm-logo-custom { filter: brightness(0) !important; }
body:not(.light-mode) #footer-logo.mm-logo-custom { filter: brightness(0) invert(1) !important; }

/* Footer : icône compacte + nom, sans carré visible sur fond clair. */
#footer-logo.mm-logo-custom { width: 48px !important; max-width: 48px !important; height: 48px !important; object-fit: contain; object-position: center; }
.mm-footer-wordmark { display: block; color: var(--text-1); font-size: 20px; font-weight: 900; letter-spacing: -.06em; margin: -8px 0 14px; }
body.light-mode #footer-logo.mm-logo-custom { filter: invert(1) !important; }
body:not(.light-mode) #footer-logo.mm-logo-custom { filter: none !important; }

/* Le fichier logo du footer contient déjà le symbole et le nom. */
#footer-logo.mm-logo-custom { width: 230px !important; max-width: 230px !important; height: 78px !important; object-fit: contain; object-position: left center; }
.mm-footer-wordmark { display: none !important; }
body.light-mode #footer-logo.mm-logo-custom { filter: none !important; }
body:not(.light-mode) #footer-logo.mm-logo-custom { filter: invert(1) !important; }
@media(max-width:600px){#footer-logo.mm-logo-custom{width:190px!important;max-width:190px!important;height:68px!important}}

#footer-logo.mm-logo-custom { width: 180px !important; max-width: 180px !important; height: 82px !important; object-fit: contain; object-position: left center; }
body.light-mode #footer-logo.mm-logo-custom { filter: none !important; }
body:not(.light-mode) #footer-logo.mm-logo-custom { filter: invert(1) !important; }
@media(max-width:600px){#footer-logo.mm-logo-custom{width:150px!important;max-width:150px!important;height:72px!important}}

/* Bandeau actualités sous le Hero */
.mm-home-updates{background:#fff;border-bottom:1px solid rgba(0,0,0,.08);border-top:1px solid rgba(0,0,0,.06);min-height:66px;display:flex;align-items:center}
.mm-home-updates-inner{display:flex;align-items:center;gap:28px;padding:12px 24px;min-height:66px}
.mm-home-updates-label{display:flex;align-items:center;gap:10px;flex:0 0 auto;color:#15171a;font-size:11px;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}
.mm-home-updates-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 0 rgba(201,0,0,.4);animation:mm-update-pulse 2.2s ease-out infinite}
.mm-home-updates-rotator{position:relative;flex:1;min-height:25px;overflow:hidden}
.mm-home-update{position:absolute;inset:0;display:flex;align-items:center;gap:13px;opacity:0;transform:translateY(7px);transition:opacity .55s ease,transform .55s ease;pointer-events:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mm-home-update.is-active{position:relative;opacity:1;transform:translateY(0);pointer-events:auto}
.mm-home-update span{font-size:10px;color:var(--text-2);text-transform:uppercase;letter-spacing:.06em;flex:0 0 auto}.mm-home-update b{font-size:11px;color:var(--accent);text-transform:uppercase;flex:0 0 auto}.mm-home-update strong{font-size:12px;font-style:italic;text-transform:uppercase;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@keyframes mm-update-pulse{0%{box-shadow:0 0 0 0 rgba(201,0,0,.45)}70%{box-shadow:0 0 0 7px rgba(201,0,0,0)}100%{box-shadow:0 0 0 0 rgba(201,0,0,0)}}
@media(max-width:767px){.mm-home-updates-inner{display:block;padding:12px 18px}.mm-home-updates-label{margin-bottom:7px;font-size:10px}.mm-home-updates-rotator{min-height:22px}.mm-home-update{gap:8px}.mm-home-update span{font-size:9px}.mm-home-update b,.mm-home-update strong{font-size:10px}}

/* Bandeau : deux dates visibles à la fois, parfaitement alignées avec le libellé. */
.mm-home-updates-inner{display:grid;grid-template-columns:minmax(190px, .75fr) minmax(0,2fr);align-items:center;gap:28px}.mm-home-updates-label{align-self:center}.mm-home-update-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:center}.mm-home-update-item{min-width:0;display:grid;grid-template-columns:auto auto;column-gap:9px;align-items:center}.mm-home-update-item span{grid-column:1/-1;font-size:11px;color:var(--text-2);text-transform:uppercase;letter-spacing:.06em}.mm-home-update-item b{font-size:12px;color:var(--accent);text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mm-home-update-item strong{font-size:13px;font-style:italic;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mm-home-update{display:block;transform:translateY(7px)}.mm-home-update.is-active{transform:translateY(0)}
@media(max-width:767px){.mm-home-updates-inner{display:block}.mm-home-update-group{grid-template-columns:1fr;gap:5px}.mm-home-update-item{grid-template-columns:auto minmax(0,1fr)}.mm-home-update-item span{grid-column:1/-1;font-size:10px}.mm-home-update-item b,.mm-home-update-item strong{font-size:11px}.mm-home-updates-label{margin-bottom:8px}}

/* Bandeau : titre et point rouge plus visibles. */
.mm-home-updates{min-height:78px}.mm-home-updates-inner{min-height:78px}.mm-home-updates-label{font-size:13px;letter-spacing:.07em}.mm-home-updates-dot{width:11px;height:11px;flex:0 0 11px}.mm-home-update-item span{font-size:12px}.mm-home-update-item b{font-size:13px}.mm-home-update-item strong{font-size:14px}
@media(max-width:767px){.mm-home-updates{min-height:104px}.mm-home-updates-inner{min-height:104px}.mm-home-updates-label{font-size:12px}.mm-home-updates-dot{width:10px;height:10px;flex-basis:10px}.mm-home-update-item span{font-size:11px}.mm-home-update-item b,.mm-home-update-item strong{font-size:12px}}

/* Bandeau actualités : empilement lisible sur tablette et mobile. */
@media (min-width:768px) and (max-width:1023px) {
  .mm-home-updates{min-height:96px}.mm-home-updates-inner{display:block;min-height:96px;padding:13px 24px}.mm-home-updates-label{margin-bottom:8px}.mm-home-updates-rotator{min-height:42px}.mm-home-update-group{grid-template-columns:1fr;gap:4px}.mm-home-update-item{grid-template-columns:auto minmax(0,1fr)}.mm-home-update-item span{grid-column:1/-1}.mm-home-update-item b,.mm-home-update-item strong{font-size:12px}
}
@media (max-width:767px) {
  .mm-home-updates{min-height:116px}.mm-home-updates-inner{display:block;min-height:116px;padding:12px 18px}.mm-home-updates-label{margin-bottom:8px;font-size:11px}.mm-home-updates-rotator{min-height:58px}.mm-home-update-group{grid-template-columns:1fr;gap:5px}.mm-home-update-item{grid-template-columns:auto minmax(0,1fr);column-gap:8px}.mm-home-update-item span{grid-column:1/-1;font-size:10px}.mm-home-update-item b,.mm-home-update-item strong{font-size:11px}.mm-home-update-item strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
}

/* Bandeau simplifié : une seule intervention lisible par rotation. */
.mm-home-updates-rotator{min-height:27px}.mm-home-update-group{display:block}.mm-home-update-item{display:flex;align-items:center;gap:12px;min-width:0}.mm-home-update-item span,.mm-home-update-item b,.mm-home-update-item strong{display:block;flex:0 0 auto}.mm-home-update-item span{font-size:12px}.mm-home-update-item b{font-size:13px}.mm-home-update-item strong{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mm-home-update-item strong:before{content:'·';margin-right:12px;color:var(--accent)}
@media(max-width:1023px){.mm-home-updates{min-height:78px}.mm-home-updates-inner{min-height:78px}.mm-home-updates-rotator{min-height:25px}.mm-home-update-item{gap:8px}.mm-home-update-item span,.mm-home-update-item b{font-size:11px}.mm-home-update-item strong{font-size:12px}}
@media(max-width:767px){.mm-home-updates{min-height:85px}.mm-home-updates-inner{min-height:85px}.mm-home-updates-label{margin-bottom:7px}.mm-home-update-item{gap:6px}.mm-home-update-item span,.mm-home-update-item b,.mm-home-update-item strong{font-size:10px}.mm-home-update-item strong:before{margin-right:6px}}

/* Bandeau : alignement strict date / ville / intervention */
.mm-home-updates-rotator{min-width:0;overflow:hidden}.mm-home-update-item{display:grid;grid-template-columns:130px 120px minmax(0,1fr);align-items:center;column-gap:10px;width:100%;min-width:0}.mm-home-update-item span,.mm-home-update-item b,.mm-home-update-item strong{min-width:0;margin:0;line-height:1.2}.mm-home-update-item span{font-size:12px;white-space:nowrap}.mm-home-update-item b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mm-home-update-item strong{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mm-home-update-item strong:before{content:none}
@media (min-width:768px) and (max-width:1023px){.mm-home-update-item{grid-template-columns:120px 105px minmax(0,1fr);column-gap:8px}.mm-home-update-item span{font-size:11px}.mm-home-update-item b,.mm-home-update-item strong{font-size:12px}}
@media(max-width:767px){.mm-home-update-item{grid-template-columns:auto minmax(0,1fr);row-gap:4px;column-gap:8px}.mm-home-update-item span{grid-column:1}.mm-home-update-item b{grid-column:2}.mm-home-update-item strong{grid-column:1/-1;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}

/* Bandeau : tous les éléments restent sur une seule ligne, y compris sur mobile. */
.mm-home-update-item{white-space:nowrap}.mm-home-update-item span,.mm-home-update-item b,.mm-home-update-item strong{white-space:nowrap}
@media(max-width:767px){
  .mm-home-updates-inner{display:flex!important;align-items:center;gap:7px;min-height:72px;padding:10px 12px}
  .mm-home-updates-label{flex:0 0 auto;margin:0;font-size:8px;letter-spacing:.04em;gap:5px}
  .mm-home-updates-dot{width:7px;height:7px;flex-basis:7px}
  .mm-home-updates-rotator{flex:1;min-width:0;min-height:20px}
  .mm-home-update-group{display:block}
  .mm-home-update-item{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:5px;width:100%}
  .mm-home-update-item span,.mm-home-update-item b,.mm-home-update-item strong{font-size:8px;line-height:1.1;min-width:0;overflow:hidden;text-overflow:ellipsis}
  .mm-home-update-item span,.mm-home-update-item b,.mm-home-update-item strong{grid-column:auto}
}

/* Bandeau : disposition explicitement en flex row. */
.mm-home-update-item{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start;gap:12px!important;width:100%;white-space:nowrap}.mm-home-update-item span,.mm-home-update-item b,.mm-home-update-item strong{display:block!important;flex:0 0 auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mm-home-update-item strong{flex:1 1 auto;min-width:0}.mm-home-update-item strong:before{content:'·';margin-right:12px;color:var(--accent)}
@media(max-width:1023px){.mm-home-update-item{gap:8px!important}.mm-home-update-item span,.mm-home-update-item b,.mm-home-update-item strong{font-size:11px}}
@media(max-width:767px){.mm-home-update-item{gap:6px!important}.mm-home-update-item span,.mm-home-update-item b,.mm-home-update-item strong{font-size:9px}.mm-home-update-item strong:before{margin-right:6px}}

/* Alignement vertical commun du libellé et des données du bandeau. */
.mm-home-updates-inner{align-items:center!important}.mm-home-updates-label,.mm-home-updates-rotator{height:100%;display:flex;align-items:center}.mm-home-update{width:100%;height:100%;align-items:center!important}.mm-home-update-item{align-items:center!important;line-height:1!important}.mm-home-updates-label strong{line-height:1!important}
@media(max-width:767px){.mm-home-updates-inner{align-items:center!important}.mm-home-updates-label,.mm-home-updates-rotator{height:auto;min-height:20px}}

/* Le libellé et la donnée doivent partager exactement la même ligne de base. */
.mm-home-updates-inner{align-items:center!important}.mm-home-updates-label{height:auto!important;align-self:center!important;line-height:1!important}.mm-home-updates-rotator{height:auto!important;min-height:0!important;display:flex;align-items:center}.mm-home-update,.mm-home-update.is-active{height:auto!important;min-height:0!important;align-items:center!important;line-height:1!important}.mm-home-update-item{height:24px;align-items:center!important}

/* Mobile : le libellé garde sa ligne, les données restent en flex row lisible dessous. */
@media (min-width:370px) and (max-width:767px){
  .mm-home-updates{min-height:86px!important}
  .mm-home-updates-inner{display:block!important;min-height:86px!important;padding:11px 14px!important}
  .mm-home-updates-label{height:20px!important;margin:0 0 6px!important;font-size:9px!important;line-height:20px!important}
  .mm-home-updates-dot{width:8px!important;height:8px!important;flex-basis:8px!important}
  .mm-home-updates-rotator{height:24px!important;min-height:24px!important;display:flex!important;align-items:center!important}
  .mm-home-update,.mm-home-update.is-active{height:24px!important;width:100%!important}
  .mm-home-update-item{height:24px!important;display:flex!important;flex-direction:row!important;align-items:center!important;gap:6px!important;width:100%!important}
  .mm-home-update-item span{font-size:9px!important;flex:0 0 auto!important;max-width:105px}
  .mm-home-update-item b{font-size:9px!important;flex:0 0 auto!important;max-width:88px}
  .mm-home-update-item strong{font-size:9px!important;flex:1 1 auto!important;min-width:0!important;max-width:none!important}
}

/* Mobile final : bandeau en trois niveaux lisibles. */
@media (min-width:370px) and (max-width:767px){
  .mm-home-updates{min-height:108px!important}.mm-home-updates-inner{display:block!important;min-height:108px!important;padding:11px 14px!important}.mm-home-updates-label{height:20px!important;margin:0 0 6px!important;font-size:9px!important}.mm-home-updates-rotator{height:54px!important;min-height:54px!important;display:block!important}.mm-home-update,.mm-home-update.is-active{height:54px!important;min-height:54px!important}.mm-home-update-item{display:grid!important;grid-template-columns:auto minmax(0,1fr);grid-template-rows:20px 28px;align-items:center!important;gap:4px 8px!important;height:54px!important}.mm-home-update-item span{grid-column:1;grid-row:1;font-size:10px!important}.mm-home-update-item b{grid-column:2;grid-row:1;font-size:10px!important}.mm-home-update-item strong{grid-column:1/-1;grid-row:2;font-size:11px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.mm-home-update-item strong:before{content:none!important}
}

/* Alignement sur la ligne de base typographique du bandeau. */
.mm-home-updates-inner{align-items:baseline!important}.mm-home-updates-label{align-self:baseline!important;display:flex;align-items:center;line-height:24px!important}.mm-home-updates-rotator{align-self:baseline!important;line-height:24px!important}.mm-home-update,.mm-home-update.is-active{align-items:baseline!important;line-height:24px!important}.mm-home-update-item{align-items:baseline!important;line-height:24px!important}.mm-home-updates-dot{align-self:center}
@media(max-width:767px){.mm-home-updates-inner{align-items:stretch!important}.mm-home-updates-label{align-self:auto!important;line-height:20px!important}.mm-home-updates-rotator{align-self:auto!important;line-height:24px!important}.mm-home-update-item{line-height:24px!important}}

/* Bandeau : le titre et l'actualité partagent le même axe horizontal et vertical. */
.mm-home-updates-inner{display:flex!important;align-items:center!important;grid-template-columns:none!important}.mm-home-updates-label{height:24px!important;display:flex!important;align-items:center!important;flex:0 0 auto!important}.mm-home-updates-rotator{height:24px!important;min-height:24px!important;position:relative;display:block!important;flex:1 1 auto!important;align-self:center!important}.mm-home-update,.mm-home-update.is-active{position:absolute!important;inset:0!important;height:24px!important;min-height:24px!important;display:flex!important;align-items:center!important;transform:translateY(7px);opacity:0}.mm-home-update.is-active{transform:translateY(0);opacity:1}.mm-home-update-item{height:24px!important;display:flex!important;align-items:center!important;line-height:24px!important}
@media(max-width:767px){.mm-home-updates-inner{display:block!important}.mm-home-updates-label{height:20px!important}.mm-home-updates-rotator{height:24px!important;min-height:24px!important}.mm-home-update,.mm-home-update.is-active,.mm-home-update-item{height:24px!important;min-height:24px!important}}

/* Correction robuste du bandeau : une seule slide dans le flux, sans positionnement parasite. */
.mm-home-updates-inner{display:flex!important;align-items:center!important}.mm-home-updates-label{height:24px!important;align-self:center!important;display:flex!important;align-items:center!important}.mm-home-updates-rotator{height:24px!important;min-height:24px!important;display:block!important;position:relative!important;align-self:center!important}.mm-home-update{display:none!important;position:static!important;inset:auto!important;height:24px!important;min-height:24px!important;opacity:0!important;transform:none!important}.mm-home-update.is-active{display:flex!important;position:static!important;height:24px!important;min-height:24px!important;opacity:1!important;transform:none!important;align-items:center!important}.mm-home-update-item{height:24px!important;display:flex!important;align-items:center!important;line-height:24px!important}
@media(max-width:767px){.mm-home-updates-inner{display:block!important;min-height:85px!important}.mm-home-updates-label{height:20px!important;margin-bottom:6px!important;line-height:20px!important}.mm-home-updates-rotator{height:24px!important;min-height:24px!important}.mm-home-update,.mm-home-update.is-active,.mm-home-update-item{height:24px!important;min-height:24px!important}}

/* Bandeau : éliminer toute trace des slides inactives et libérer la largeur utile. */
.mm-home-updates-label{flex:0 0 245px!important}.mm-home-updates-rotator{flex:1 1 auto!important;min-width:0!important;overflow:hidden!important}.mm-home-update:not(.is-active){display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important}.mm-home-update.is-active{display:flex!important;visibility:visible!important;opacity:1!important}.mm-home-update-item{width:100%!important;min-width:0!important}.mm-home-update-item strong{min-width:0!important;max-width:none!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
@media(max-width:1023px){.mm-home-updates-label{flex-basis:215px!important}}
@media(max-width:767px){.mm-home-updates-label{flex-basis:auto!important}.mm-home-updates-rotator{overflow:hidden!important}}

/* Bandeau : structure stable, centrée par le même parent flex. */
.mm-home-updates-row{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;width:100%!important;min-height:24px!important;gap:24px!important}.mm-home-updates-row>.mm-home-updates-label{display:flex!important;align-items:center!important;flex:0 0 250px!important;height:24px!important;margin:0!important}.mm-home-updates-row>.mm-home-updates-rotator{display:block!important;position:relative!important;flex:1 1 auto!important;width:auto!important;height:24px!important;min-height:24px!important;margin:0!important}.mm-home-update{display:none!important;position:absolute!important;inset:0!important;height:24px!important;align-items:center!important}.mm-home-update.is-active{display:flex!important;position:static!important}.mm-home-update-item{display:flex!important;flex-direction:row!important;align-items:center!important;width:100%!important;height:24px!important;gap:16px!important;line-height:24px!important}.mm-home-update-item span{flex:0 0 220px!important}.mm-home-update-item b{flex:0 0 160px!important}.mm-home-update-item strong{flex:1 1 auto!important;min-width:0!important}
@media(max-width:1023px){.mm-home-updates-row{gap:15px!important}.mm-home-updates-row>.mm-home-updates-label{flex-basis:220px!important}.mm-home-update-item{gap:9px!important}.mm-home-update-item span{flex-basis:170px!important}.mm-home-update-item b{flex-basis:135px!important}.mm-home-update-item span,.mm-home-update-item b,.mm-home-update-item strong{font-size:11px!important}}
@media(max-width:767px){.mm-home-updates-row{display:block!important;min-height:82px!important}.mm-home-updates-row>.mm-home-updates-label{width:100%!important;height:20px!important;margin-bottom:6px!important}.mm-home-updates-row>.mm-home-updates-rotator{width:100%!important;height:54px!important;min-height:54px!important}.mm-home-update,.mm-home-update.is-active{height:54px!important;min-height:54px!important}.mm-home-update-item{display:grid!important;grid-template-columns:max-content minmax(0,1fr)!important;grid-template-rows:20px 30px!important;height:54px!important;gap:4px 8px!important}.mm-home-update-item span{grid-column:1!important;grid-row:1!important;flex:none!important}.mm-home-update-item b{grid-column:2!important;grid-row:1!important;flex:none!important}.mm-home-update-item strong{grid-column:1/-1!important;grid-row:2!important;flex:none!important}}

/* Bandeau V2 — reconstruction propre, indépendante des anciennes règles */
.mm-news-strip{width:100%;background:#fff;border-top:1px solid #e4e5e3;border-bottom:1px solid #e4e5e3;min-height:78px}.mm-news-strip-inner{max-width:1500px;margin:0 auto;padding:0 clamp(24px,4vw,64px);min-height:78px;display:flex;flex-direction:row;align-items:center;gap:28px}.mm-news-strip-label{flex:0 0 250px;display:flex;align-items:center;gap:10px;white-space:nowrap;line-height:24px;font-size:13px;font-weight:900;letter-spacing:.07em;text-transform:uppercase;color:#15171a}.mm-news-strip-label i{display:block;width:11px;height:11px;flex:none;border-radius:50%;background:#c90000;box-shadow:0 0 0 6px #c9000022;}.mm-news-strip-rotator{position:relative;flex:1;min-width:0;height:24px}.mm-news-strip-item{display:none!important;position:static;width:100%;height:24px;align-items:center;flex-direction:row;gap:16px;line-height:24px;white-space:nowrap}.mm-news-strip-item.is-active{display:flex!important}.mm-news-strip-date{flex:0 0 220px;color:#68717a;font-size:12px;overflow:visible}.mm-news-strip-city{flex:0 0 160px;color:#c90000;font-size:13px;text-transform:uppercase;overflow:hidden;text-overflow:ellipsis}.mm-news-strip-event{flex:1 1 auto;min-width:0;font-size:13px;font-style:italic;text-transform:uppercase;overflow:visible;white-space:nowrap}.mm-news-strip-event:before{content:'·';color:#c90000;margin-right:12px}@media(min-width:768px) and (max-width:1023px){.mm-news-strip-inner{gap:16px;padding:0 24px}.mm-news-strip-label{flex-basis:210px;font-size:11px}.mm-news-strip-item{gap:8px}.mm-news-strip-date{flex-basis:175px;font-size:10px}.mm-news-strip-city{flex-basis:130px;font-size:11px}.mm-news-strip-event{font-size:11px}}
@media(max-width:767px){.mm-news-strip{min-height:108px}.mm-news-strip-inner{display:block;min-height:108px;padding:11px 14px}.mm-news-strip-label{height:20px;margin-bottom:6px;font-size:9px;line-height:20px}.mm-news-strip-label i{width:8px;height:8px;box-shadow:0 0 0 4px #c9000022;}.mm-news-strip-rotator{height:54px}.mm-news-strip-item,.mm-news-strip-item.is-active{height:54px;display:grid!important;grid-template-columns:max-content minmax(0,1fr);grid-template-rows:20px 30px;align-items:center;gap:4px 8px;line-height:1}.mm-news-strip-date{grid-column:1;grid-row:1;flex:none;font-size:10px;white-space:nowrap}.mm-news-strip-city{grid-column:2;grid-row:1;flex:none;font-size:10px}.mm-news-strip-event{grid-column:1/-1;grid-row:2;flex:none;width:100%;font-size:11px;overflow:hidden;text-overflow:ellipsis}.mm-news-strip-event:before{content:none}}

/* Bandeau : reprendre l’intégralité du champ événement de l’Agenda. */
.mm-news-strip-event{max-width:max-content!important;flex:0 1 auto!important;overflow:visible!important;text-overflow:clip!important;white-space:nowrap!important}
@media(max-width:1023px){.mm-news-strip-event{max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important}}

/* Bandeau : composant entièrement en majuscules et en gras. */
.mm-news-strip-label strong,.mm-news-strip-date,.mm-news-strip-city,.mm-news-strip-event{font-weight:800!important;text-transform:uppercase!important}

/* Bandeau v2 final : une seule information visible à la fois et animation uniforme. */
.mm-news-strip-item:not(.is-active){display:none!important}.mm-news-strip-item.is-active{display:flex!important;animation:mm-news-strip-in .55s ease both}@keyframes mm-news-strip-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:768px) and (max-width:1023px){.mm-news-strip{min-height:82px}.mm-news-strip-inner{min-height:82px}.mm-news-strip-label{flex-basis:210px!important;font-size:11px!important}.mm-news-strip-item{height:24px!important;display:none!important}.mm-news-strip-item.is-active{display:flex!important}.mm-news-strip-date{flex-basis:170px!important;font-size:11px!important}.mm-news-strip-city{flex-basis:135px!important;font-size:11px!important}.mm-news-strip-event{font-size:11px!important}}
@media(min-width:370px) and (max-width:767px){.mm-news-strip{min-height:108px!important}.mm-news-strip-inner{display:block!important;min-height:108px!important;padding:11px 14px!important}.mm-news-strip-label{height:20px!important;margin-bottom:6px!important;font-size:9px!important}.mm-news-strip-rotator{height:54px!important;min-height:54px!important}.mm-news-strip-item,.mm-news-strip-item.is-active{height:54px!important;min-height:54px!important;display:none!important;grid-template-columns:max-content minmax(0,1fr)!important;grid-template-rows:20px 30px!important;align-items:center!important;gap:4px 8px!important}.mm-news-strip-item.is-active{display:grid!important}.mm-news-strip-date{grid-column:1!important;grid-row:1!important;font-size:10px!important;flex:none!important}.mm-news-strip-city{grid-column:2!important;grid-row:1!important;font-size:10px!important;flex:none!important}.mm-news-strip-event{grid-column:1/-1!important;grid-row:2!important;font-size:11px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;flex:none!important}.mm-news-strip-event:before{content:none!important}}

/* Tablette : titre sur la première ligne, informations Agenda sur la seconde. */
@media (min-width:768px) and (max-width:1023px){
  .mm-news-strip{min-height:92px!important}.mm-news-strip-inner{display:block!important;min-height:92px!important;padding:12px 24px!important}.mm-news-strip-label{height:24px!important;margin:0 0 7px!important;width:100%!important;display:flex!important;align-items:center!important}.mm-news-strip-rotator{height:24px!important;min-height:24px!important;width:100%!important}.mm-news-strip-item,.mm-news-strip-item.is-active{height:24px!important;min-height:24px!important;display:none!important;align-items:center!important}.mm-news-strip-item.is-active{display:flex!important}.mm-news-strip-date{flex:0 0 180px!important;font-size:11px!important}.mm-news-strip-city{flex:0 0 145px!important;font-size:11px!important}.mm-news-strip-event{flex:1!important;font-size:11px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
}

/* CTA rouges : animation discrète sur tous les breakpoints. */
.btn-red{animation:mm-red-cta-pulse 2.8s ease-in-out infinite;will-change:transform,box-shadow}.btn-red:hover,.btn-red:focus-visible{animation:none;transform:translateY(-2px);box-shadow:0 10px 26px rgba(204,0,0,.28)}
@keyframes mm-red-cta-pulse{0%,100%{box-shadow:0 0 0 0 rgba(204,0,0,0)}50%{box-shadow:0 0 0 5px rgba(204,0,0,.10)}}
@media(prefers-reduced-motion:reduce){.btn-red{animation:none!important}}

/* Point rouge du bandeau : clignotement discret et continu. */
.mm-news-strip-label i{animation:mm-news-dot-pulse 1.9s ease-in-out infinite;will-change:transform,box-shadow}
@keyframes mm-news-dot-pulse{0%,100%{transform:scale(1) translateY(-2px);box-shadow:0 0 0 4px rgba(201,0,0,.12)}50%{transform:scale(1.18) translateY(-2px);box-shadow:0 0 0 8px rgba(201,0,0,0)}}
@media(prefers-reduced-motion:reduce){.mm-news-strip-label i{animation:none!important}}

/* ==========================================================================
   HERO ÉDITORIAL — Split élégant (remplace l'ancien hero plein cadre)
   Namespace dédié #hero-editorial / .hero-ed-* : n'entre en conflit avec
   aucune règle existante ciblant #hero-split / .hero-background (celles-ci
   restent présentes plus haut mais ne s'appliquent plus à cette section).
   Réutilise .hero-title / .hero-actions / .hero-btn / .btn-red / .btn-outline
   (styles globaux du site) pour rester cohérent avec le reste des pages.
   ========================================================================== */
#hero-editorial{position:relative;background:var(--bg-1);padding:7.25rem 0 3.5rem;overflow:hidden;--hero-brown:#a36f4e}
body.light-mode #hero-editorial{--hero-brown:#75472f}
.hero-ed-grid{display:grid;grid-template-columns:1fr;gap:2.5rem;align-items:center}
.hero-ed-grid>*{min-width:0}
.hero-ed-eyebrow{display:block;color:var(--accent);font-weight:700;text-transform:uppercase;letter-spacing:.18em;font-size:.8rem;margin-bottom:1.25rem}
.hero-ed-title{margin-bottom:1.25rem;line-height:1.05;overflow-wrap:anywhere}
.hero-ed-title-part{display:inline;color:var(--text-1)}
.hero-title-color-red{color:var(--accent)}
.hero-title-color-black{color:var(--text-1)}
.hero-title-color-brown{color:var(--hero-brown)}
.hero-ed-lede{font-family:'Dosis',sans-serif;font-weight:700;font-style:italic;text-transform:uppercase;letter-spacing:.02em;font-size:clamp(1.05rem,1.6vw,1.35rem);color:var(--text-1);margin:0 0 .85rem;line-height:1.3;overflow-wrap:anywhere}
.hero-ed-desc{font-weight:300;font-size:clamp(.95rem,1.1vw,1.05rem);line-height:1.7;color:var(--text-2);max-width:46ch;margin:0 0 2.25rem;overflow-wrap:anywhere}
.hero-ed-actions .hero-btn{min-height:44px}
.hero-ed-actions .btn-outline:hover{background:var(--accent);border-color:var(--accent);color:#fff!important}

/* ==========================================================================
   FIX — Section "Ils nous font confiance" (carrousel de partenaires) sur l'accueil.
   Le template-part template-parts/partners-carousel.php est partagé avec la page
   Parcours, mais son CSS ne vit que dans parcours.css, chargé UNIQUEMENT sur
   is_page_template('page-parcours.php') — jamais sur l'accueil. Résultat : la
   section s'affichait sans style sur la homepage (carrousel non animé, logos
   bruts, titre sans typo). On ne peut pas enqueue parcours.css en entier sur
   l'accueil : ce fichier redéfinit .btn-red, h1{text-align:left!important},
   le footer, la nav mobile — bien trop de collatéral. On restaure donc ici
   uniquement les règles du carrousel (classes propres, aucun conflit ailleurs
   sur le site), et on scope le fix du titre à .home/.front-page pour ne rien
   changer sur la page Parcours qui fonctionne déjà via parcours.css.
   ========================================================================== */
.partners-section{position:relative;z-index:5;background:transparent;padding-top:50px;padding-bottom:80px}
.partners-carousel-wrap{width:100%;overflow:hidden;position:relative;padding:20px 0}
.partners-carousel-wrap::before,.partners-carousel-wrap::after{content:"";position:absolute;top:0;width:15%;height:100%;z-index:2;pointer-events:none}
.partners-carousel-wrap::before{left:0;background:linear-gradient(to right,var(--bg-1) 0%,transparent 100%)}
.partners-carousel-wrap::after{right:0;background:linear-gradient(to left,var(--bg-1) 0%,transparent 100%)}
.partners-track{display:flex;align-items:center;gap:80px;width:max-content;animation:scroll-partners 40s linear infinite}
.partners-track:hover{animation-play-state:paused}
.partner-logo{flex:0 0 auto;width:220px;height:110px;display:flex;align-items:center;justify-content:center;transition:.5s ease}
.partner-logo img{max-width:100%;max-height:100%;object-fit:contain;filter:grayscale(100%) opacity(.6);transition:.4s ease}
.partner-logo:hover img{filter:grayscale(0%) opacity(1);transform:scale(1.05)}
@keyframes scroll-partners{0%{transform:translateX(0)}100%{transform:translateX(-33.333%)}}
@media(max-width:768px){.partner-logo{width:150px;height:75px}.partners-track{gap:40px}.partners-carousel-wrap::before,.partners-carousel-wrap::after{width:20%}}
body.home .partners-section .section-title,body.front-page .partners-section .section-title{font-size:clamp(2.25rem,4.5vw,3.5rem);font-weight:900;text-transform:uppercase;font-style:italic;line-height:.95}
@media(max-width:1023px){body.home .partners-section .section-title,body.front-page .partners-section .section-title{font-size:clamp(2rem,4vw,2.75rem)}}
@media(max-width:767px){body.home .partners-section .section-title,body.front-page .partners-section .section-title{font-size:clamp(1.9rem,5vw,2.25rem)}}

.hero-ed-media{position:relative;min-width:0}
.hero-ed-media-inner{position:relative;border-radius:24px;overflow:hidden;aspect-ratio:4/3;box-shadow:0 30px 60px var(--shadow,rgba(0,0,0,.18));border:1px solid var(--border);--hero-shift-x:0px;--hero-shift-y:0px}
.hero-ed-media-inner img{width:100%;height:100%;object-fit:cover;object-position:center 30%;filter:grayscale(15%) contrast(1.05);display:block;transform:translate3d(var(--hero-shift-x),var(--hero-shift-y),0) scale(1);transition:transform .55s cubic-bezier(.22,.61,.36,1);will-change:transform}
.hero-ed-media-inner:hover img{transform:translate3d(var(--hero-shift-x),var(--hero-shift-y),0) scale(1.04)}

.hero-ed-float-cta{position:absolute;left:20px;right:20px;bottom:20px;display:flex;align-items:center;gap:16px;max-width:calc(100% - 40px);min-height:44px;background:var(--surface,#fff);color:var(--text-1);padding:18px 20px;border-radius:16px;border:1px solid var(--border);box-shadow:0 20px 40px var(--shadow,rgba(0,0,0,.18));text-decoration:none;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.hero-ed-float-cta:hover{transform:translateY(-4px);border-color:var(--accent);box-shadow:0 26px 50px var(--shadow,rgba(0,0,0,.24))}
.hero-ed-float-icon{flex:0 0 auto;width:44px;height:44px;border-radius:50%;background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent);display:flex;align-items:center;justify-content:center}
.hero-ed-float-text{display:flex;flex-direction:column;gap:2px;min-width:0}
.hero-ed-float-title{font-family:'Dosis',sans-serif;font-weight:900;text-transform:uppercase;font-size:.95rem;letter-spacing:.02em;line-height:1.2;overflow-wrap:anywhere}
.hero-ed-float-sub{font-size:.72rem;color:var(--text-2);line-height:1.3;overflow-wrap:anywhere}

/* Animation d'entrée au chargement uniquement — aucun scroll-jacking */
.hero-ed-eyebrow,.hero-ed-title,.hero-ed-lede,.hero-ed-desc,.hero-ed-actions,.hero-ed-media{opacity:0;animation:heroEdFade .6s ease forwards}
.hero-ed-eyebrow{animation-delay:.05s}
.hero-ed-title{animation-delay:.12s}
.hero-ed-lede{animation-delay:.2s}
.hero-ed-desc{animation-delay:.28s}
.hero-ed-actions{animation-delay:.36s}
.hero-ed-media{animation-delay:.18s}
@keyframes heroEdFade{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.hero-ed-eyebrow,.hero-ed-title,.hero-ed-lede,.hero-ed-desc,.hero-ed-actions,.hero-ed-media{opacity:1;animation:none;transform:none}.hero-ed-media-inner img,.hero-ed-media-inner:hover img{transform:none!important;transition:none!important}}

@media(min-width:768px){
  #hero-editorial{padding:7.75rem 0 4rem}
}
@media(min-width:1024px){
  #hero-editorial{padding:8rem 0 4.5rem}
  .hero-ed-grid{grid-template-columns:1.05fr .95fr;gap:4vw;max-width:1120px}
  .hero-ed-media-inner{aspect-ratio:auto;height:min(640px,68vh)}
  .hero-ed-float-cta{left:auto;right:24px;bottom:24px;max-width:320px}
}
@media(min-width:1440px){
  #hero-editorial{padding:8.25rem 0 5rem}
  .hero-ed-grid{max-width:1200px}
  .hero-ed-media-inner{height:min(680px,68vh)}
}
@media(min-width:1920px){
  .hero-ed-grid{max-width:1400px}
  .hero-ed-media-inner{height:min(720px,66vh)}
}
@media(max-width:1023px){
  .hero-ed-media{order:-1}
  .hero-ed-desc{max-width:none}
}
@media(max-width:767px){
  #hero-editorial{padding:6rem 0 2.75rem}
  .hero-ed-media-inner{aspect-ratio:4/3;border-radius:20px}
  .hero-ed-float-cta{left:16px;right:16px;bottom:16px;padding:14px 16px;gap:12px}
  .hero-ed-float-icon{width:38px;height:38px}
  .hero-ed-lede{font-size:1.05rem}
}
/* ============================================================
   Mur'Mures — Couche responsive premium (tous breakpoints)
   Version : 8.0.0
   Ne modifie ni la structure PHP, ni les fonctionnalités JS,
   ni le design desktop (> 1500 px). Seuls les ajustements
   proportionnels et la fluidité sont concernés.
   ============================================================ */

/* ── Reset horizontal global ──────────────────────────────── */
html { overflow-x: hidden; }
body  { overflow-x: hidden; max-width: 100%; width: 100%; position: relative; }

/* ── Conteneur universel : largeur max intelligente ───────── */
.container {
  width: 100%;
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
  padding-left: clamp(16px, 3vw, 48px);
  padding-right: clamp(16px, 3vw, 48px);
}

/* ── Typographie fluide (clamp) ───────────────────────────── */
h1, .hero-title {
  font-size: clamp(2.1rem, 6vw, 4.25rem);
  line-height: 0.92;
}
h2, .section-title, .home-section-title, .page-interventions-title {
  font-size: clamp(1.9rem, 4.5vw, 3.5rem);
  line-height: 0.95;
}
h3 { font-size: clamp(1.3rem, 2.5vw, 1.75rem); }
h4 { font-size: clamp(1.05rem, 2vw, 1.35rem); }
p, .article-body p {
  font-size: clamp(0.9375rem, 1.1vw + 0.5rem, 1.0625rem);
  line-height: 1.75;
}
label { font-size: clamp(0.6875rem, 0.8vw + 0.35rem, 0.75rem); }

/* ── Boutons universels ───────────────────────────────────── */
.btn-red,
.btn-outline,
.hero-btn {
  min-height: 48px;
  padding: clamp(12px, 1.5vw, 16px) clamp(20px, 2.5vw, 32px);
  font-size: clamp(0.6875rem, 0.8vw + 0.3rem, 0.8125rem);
  border-radius: clamp(8px, 1vw, 12px);
  white-space: nowrap;
}

/* ── Header / Navigation ──────────────────────────────────── */
.site-header { min-height: 72px; }
.site-header img#header-logo,
.site-header #header-logo {
  max-width: 160px !important;
  height: 40px !important;
  max-height: 40px !important;
  width: auto !important;
  object-fit: contain;
}

/* ── Sections ─────────────────────────────────────────────── */
.section,
.home-section {
  width: 100%;
  max-width: 100%;
  overflow: hidden;
}

/* ── Sécurité anti-débordement ────────────────────────────── */
.split,
.card-grid,
.four,
.three { min-width: 0; }
.card,
.eng-card,
.video-card,
.media-featured,
.info-card,
.impact-card { min-width: 0; }
.card img,
.eng-img,
.media-bg,
.impact-img { max-width: 100%; }
.article-body,
.article-hero,
.carousel-section,
.video-embed-wrap { min-width: 0; }
.article-body img,
.article-body iframe,
.video-embed iframe { max-width: 100%; }

/* ── Galerie ──────────────────────────────────────────────── */
.gallery-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.gallery-grid figure { min-width: 0; margin: 0; }
.gallery-grid img { max-width: 100%; height: auto; }

/* ── Footer ───────────────────────────────────────────────── */
.site-footer { overflow: hidden; }
.footer-grid,
.foot-wrap { min-width: 0; }
.footer-grid > * { min-width: 0; }
.footer-link,
.address { overflow-wrap: anywhere; }

/* ── WP Admin bar compensation ────────────────────────────── */
body.admin-bar .site-header { top: 32px; }
body.admin-bar #access-panel { top: 122px; }
@media screen and (max-width: 782px) {
  body.admin-bar .site-header { top: 46px; }
  body.admin-bar #access-panel { top: 136px; }
}

/* ============================================================
   BREAKPOINT : Très grands écrans (> 1950 px)
   Objectif : ne jamais étirer, conserver les proportions
   ============================================================ */
@media (min-width: 1951px) {
  .container,
  .foot-wrap {
    max-width: 1400px;
  }

  /* Hero : contenu centré, pas étiré */
  #hero-split .hero-background-content {
    max-width: 720px;
  }

  /* Sections accueil */
  .home-section {
    padding: clamp(100px, 6vw, 140px) clamp(24px, 3vw, 64px);
  }

  /* Cartes : pas trop larges */
  .home-preview-card { max-width: 420px; }

  /* Interventions : grille aérée */
  #interventions-featured-grid,
  #archives-container .grid {
    gap: 36px;
  }

  /* Médias */
  .media-video-grid { gap: 32px; }
  .video-card { max-width: 440px; }

  /* Parcours : portrait pas trop grand */
  .portrait-frame { max-width: 480px; }

  /* Poème */
  body.page-template-page-parcours-php .poem-text {
    column-count: 3;
    column-gap: 52px;
    padding: 48px 56px;
  }

  /* Footer */
  .foot-top { gap: 56px; }
  .foot-wrap { max-width: 1320px; }
}

/* ============================================================
   BREAKPOINT : Grand Desktop (1500 – 1950 px)
   Objectif : proportions élégantes, lignes pas trop longues
   ============================================================ */
@media (min-width: 1500px) and (max-width: 1950px) {
  .container,
  .foot-wrap {
    max-width: 1320px;
  }

  .home-section {
    padding: 100px clamp(24px, 3vw, 48px);
  }

  /* Hero */
  #hero-split .hero-background-content {
    max-width: 680px;
  }

  /* Parcours */
  .portrait-frame { max-width: 460px; }

  /* Cartes interventions */
  .impact-card .img-container { height: 260px; }

  /* Footer */
  .foot-top { gap: 48px; }
}

/* ============================================================
   BREAKPOINT : Petit Desktop (1024 – 1499 px)
   Objectif : pas "zoomé", densité équilibrée
   ============================================================ */
@media (min-width: 1024px) and (max-width: 1499px) {
  .container {
    padding-left: clamp(20px, 3vw, 36px);
    padding-right: clamp(20px, 3vw, 36px);
  }

  /* Hero : overflow corrigé */
  #hero-split { overflow-x: hidden; padding-top: 0 !important; padding-bottom: 0 !important; }
  #hero-split .hero-background-content {
    max-width: min(620px, 80%);
  }

  /* Sections accueil : padding réduit */
  .home-section {
    padding: 80px clamp(20px, 3vw, 36px);
  }

  /* Cartes accueil : images moins hautes */
  .home-preview-card .card-img-wrap { height: 190px; }

  /* Cellule banner */
  .cellule-banner-text { padding: 32px; }

  /* Interventions : cartes compactes */
  .impact-card .img-container { height: 240px; }
  .impact-card { padding: 10px; }

  /* Médias */
  .media-video-grid > .video-card,
  .media-video-grid > .video-card:last-child {
    height: 420px;
  }
  .media-video-grid .video-wrapper {
    height: 210px;
    flex: 0 0 210px;
  }

  /* Parcours */
  .portrait-frame { max-width: 400px; }
  .eng-img-container { height: 260px; }

  /* Poème */
  body.page-template-page-parcours-php .poem-text {
    column-count: 2;
    column-gap: 36px;
    padding: 36px 40px;
  }

  /* Livre */
  .book-mockup { max-width: 380px; }
  .info-card { padding: 24px; }

  /* Contact */
  .contact-card { padding: 36px; border-radius: 32px; }

  /* Footer */
  .foot-top { gap: 36px; }
  .foot-wrap { max-width: 1200px; }
}

/* ============================================================
   BREAKPOINT : Tablette (768 – 1023 px)
   Objectif : réorganisation intelligente, 2 colonnes si utile
   ============================================================ */
@media (max-width: 1023px) {
  /* Header */
  .site-header {
    padding-left: 24px;
    padding-right: 24px;
  }
  .mm-header-v2__inner { padding: 0 24px; }
  .mm-header-v2__menu-button { display: inline-flex; }
  .mm-header-v2__menu {
    display: none !important;
    position: fixed;
    top: 72px;
    left: 0;
    right: 0;
    width: 100%;
    height: calc(100vh - 72px);
    overflow-y: auto;
    margin: 0;
    padding: 24px;
    background: var(--bg-1);
    border-top: 1px solid var(--border);
    flex-direction: column;
    align-items: stretch;
    gap: 18px;
  }
  /* Spécificité #id + .class pour battre #desktop-nav { display:none } de murmures.css */
  #desktop-nav.mobile-menu-active { display: flex !important; }
  .mm-header-v2__links { flex-direction: column; align-items: stretch; gap: 0; }
  .mm-header-v2__links li { width: 100%; }
  .mm-header-v2__link {
    display: flex;
    width: 100%;
    padding: 15px 4px;
    border-bottom: 1px solid var(--border);
    font-size: 15px;
  }
  .mm-header-v2__contact { width: 100%; }

  /* Ancien markup nav */
  .main-nav { display: none !important; }
  .menu-button { display: flex !important; align-items: center; justify-content: center; background: transparent; border: 0; color: var(--text-1); width: 40px; height: 40px; }

  /* Access panel */
  #access-panel { top: 80px; right: 14px; }

  /* Hero */
  #hero-split { padding-top: 0 !important; padding-bottom: 0 !important; }
  #hero-split.hero-background {
    min-height: min(680px, 80vh);
    padding: 0 24px 64px !important;
    align-items: flex-end;
  }
  #hero-split .hero-background-inner { margin-top: 0; }
  #hero-split .hero-background-content { padding: 20px 0; }
  #hero-split .gap-16 { gap: 1.25rem; }
  #hero-split .text-center.lg\:text-left { display: contents; }
  #hero-split .hero-title { order: 1; margin-bottom: 0; text-align: left; }
  #hero-split .space-y-6.mb-12 { order: 2; margin-bottom: 0; text-align: left; }
  #hero-split .space-y-6.mb-12 .max-w-xl { margin-left: 0; margin-right: 0; }
  #hero-split .flex.justify-center.lg\:justify-end { order: 3; margin-top: 0; margin-bottom: 0; }
  #hero-split .flex.flex-col.sm\:flex-row { order: 4; }
  #hero-split .hero-actions { justify-content: flex-start; }

  /* Sections accueil */
  .home-section { padding: 70px 24px; }
  .home-section-title { font-size: clamp(2rem, 4vw, 2.75rem); }

  /* Cartes : 2 colonnes en tablette */
  .card-grid,
  .four {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
  }
  .three {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
  }

  /* Preview cards accueil */
  .home-preview-card .card-img-wrap { height: 200px; }
  .home-preview-card .card-body { padding: 0 14px 18px; }

  /* Cellule banner */
  .cellule-banner-inner { grid-template-columns: 1fr; }
  .cellule-banner-text { padding: 32px 24px; }

  /* Page Hero */
  .page-hero {
    min-height: auto;
    padding: 130px 32px 70px;
    grid-template-columns: 1fr;
    gap: 34px;
  }
  .hero-image { order: -1; max-height: 420px; }
  .hero-image img { min-height: 260px; }

  /* Split layout */
  .split { grid-template-columns: 1fr; gap: 36px; }
  .split .portrait,
  .split .book-cover { order: -1; }

  /* Section */
  .section,
  .home-section { padding: 75px 32px; }

  /* Featured banner */
  .feature-banner { align-items: flex-start; flex-direction: column; }
  .featured-banner { max-width: calc(100% - 40px); margin-left: auto; margin-right: auto; }
  .featured-banner img { min-width: 0; }

  /* Archive row */
  .archive-row { grid-template-columns: 140px 1fr 30px; }

  /* Contact */
  .contact-grid { grid-template-columns: 1fr; gap: 35px; }

  /* Footer */
  .footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }
  .footer-bottom { gap: 12px; }
  .foot-top { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }

  /* Article */
  .article-hero { padding: 130px 32px 55px; }
  .article-body { padding-left: 32px; padding-right: 32px; }
  .carousel-section { padding-left: 32px; padding-right: 32px; }
  .video-embed-wrap { padding-left: 32px; padding-right: 32px; }

  /* Livre */
  .book-hero { min-height: auto; padding-top: 115px; padding-bottom: 70px; }

  /* Stats */
  .stats-row { grid-template-columns: repeat(3, minmax(0, 1fr)); }

  /* Interventions map */
  .interventions-map-layout {
    grid-template-columns: 1fr;
    min-height: 0;
  }
  .interventions-map { height: 340px; }

  /* Médias */
  .media-video-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
  .media-video-grid > .video-card,
  .media-video-grid > .video-card:last-child {
    grid-column: auto;
    height: 400px;
  }

  /* Parcours */
  main > section:first-of-type { padding-top: 7rem; }
  .section-title { font-size: clamp(2rem, 4vw, 2.75rem); }
  .eng-img-container { height: 250px; }

  /* Scroll hover (pas de vrai hover tactile) */
  .btn-red.scroll-hover { filter: brightness(1.1); }
  .btn-outline.scroll-hover { border-color: var(--accent); }
  .home-preview-card.scroll-hover { border-color: var(--accent); }
  .home-preview-card.scroll-hover .card-img-wrap img { filter: grayscale(0%); transform: scale(1.05); }
  .home-media-frame.scroll-hover img { filter: grayscale(0%); transform: scale(1.03); }
  .home-portrait.scroll-hover img { filter: grayscale(0%); }
  .cellule-banner.scroll-hover { border-color: var(--accent); }
  .cellule-banner.scroll-hover img { filter: grayscale(0%); }
  .impact-card.scroll-hover { border-color: var(--accent); transform: translateY(-5px); }
  .impact-card.scroll-hover .impact-img { filter: grayscale(0%); transform: scale(1.05); }
  .video-card.scroll-hover { border-color: var(--accent); transform: translateY(-8px); }
  .media-featured.scroll-hover { border-color: var(--accent); transform: scale(1.02); }
  .media-featured.scroll-hover .media-bg { opacity: 0.5; }
  .archive-row.scroll-hover { border-color: var(--accent); background: var(--bg-3); }
  .featured-block.scroll-hover { border-color: var(--accent) !important; }
  .eng-card.scroll-hover { border-color: var(--accent); transform: translateY(-10px); }
  .eng-card.scroll-hover .eng-img { filter: grayscale(0%); transform: scale(1.05); }
  .portrait-frame.scroll-hover .portrait-img { filter: grayscale(0%); }
  .info-card.scroll-hover { border-color: var(--accent); }
  .adhesion-box.scroll-hover { border-color: var(--accent); transform: translateY(-5px); }
  .book-mockup.scroll-hover { transform: rotateY(-10deg) scale(1.05); }

  /* Hub réseaux */
  .hub-wrapper .hidden.lg\:block {
    display: block !important;
    text-align: center;
    max-width: 100%;
    order: -1;
  }
  .hub-nav { order: 0; }
  .phone-hub { order: 1; }
  .hub-wrapper .hidden.lg\:block .section-title { font-size: clamp(2rem, 4vw, 2.75rem); }
  .phone-hub { width: min(310px, 88vw); }

  /* Médias archive rows */
  .archive-row { flex-wrap: wrap; }
  .archive-source { width: 100%; margin-bottom: 6px; }
  .archive-title { padding-right: 0; }

  /* Section titres */
  .media-featured h4.text-4xl { font-size: 1.75rem; }
  .featured-block h3.text-3xl { font-size: 1.5rem; }
}

/* ============================================================
   BREAKPOINT : Mobile (370 – 767 px)
   Objectif : lisibilité, doigt, une colonne, marges confortables
   ============================================================ */
@media (max-width: 767px) {
  /* Header */
  .site-header { padding: 12px 18px; }
  .mm-header-v2__inner { padding: 0 16px; }
  .mm-header-v2__logo { width: 120px; }
  .logo-link img { max-width: 145px; }

  /* Hero */
  #hero-split { padding-top: 0 !important; }
  #hero-split .hero-background-content { padding: 0; text-align: left; }
  #hero-split .hero-title { text-align: left; }
  #hero-split .hero-description-block { text-align: left; }
  .hero-title { margin-bottom: 0.75rem; }
  #hero-split .flex.justify-center.lg\:justify-end { margin-top: 20px; margin-bottom: 20px; }
  #hero-split.hero-background {
    min-height: min(640px, 78vh);
    padding: 0 20px 48px !important;
    align-items: flex-end;
  }
  #hero-split .hero-background-inner { margin-top: 0; }
  #hero-split .hero-background-content { padding: 0; }
  #hero-split .hero-description-block { margin-bottom: 24px; }
  #hero-split .hero-description-block h2 { margin-bottom: 10px !important; }
  #hero-split .hero-actions { justify-content: flex-start; gap: 14px; }

  /* Hero 370+ : contenu ancré en bas */
  @media (min-width: 370px) {
    #hero-split.hero-background {
      min-height: min(700px, 85vh);
      padding: 0 20px 56px !important;
      align-items: flex-end;
    }
    #hero-split .hero-background-inner { margin-top: 0; }
    #hero-split .hero-background-content { padding-top: 0; padding-bottom: 0; text-align: left; }
    #hero-split .hero-title {
      margin-bottom: 20px !important;
      text-align: left;
    }
    #hero-split .hero-description-block {
      margin-top: 0;
      margin-bottom: 28px;
      text-align: left;
    }
    #hero-split .hero-description-block h2 { margin-bottom: 10px !important; }
    #hero-split .hero-actions { gap: 14px; }
  }

  /* Sections */
  .home-section,
  .section { padding: 56px 20px; }
  .home-section-title,
  .section-title,
  h1.section-title,
  .page-title,
  .page-interventions-title {
    font-size: clamp(1.9rem, 8vw, 2.4rem);
  }
  .hero-title {
    font-size: clamp(2.1rem, 10vw, 2.8rem);
  }

  /* Section head */
  .section-head {
    align-items: flex-start;
    flex-direction: column;
    gap: 16px;
  }
  .section-head .button { margin-left: 0; }

  /* Cartes : 1 colonne */
  .card-grid,
  .four,
  .three {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .card img { height: 210px; }
  .four .card img { height: 220px; }

  /* Preview cards accueil */
  .home-preview-card .card-img-wrap { height: 190px; }
  .home-preview-card .card-body { padding: 0 12px 16px; }

  /* Cellule banner */
  .cellule-banner-text { padding: 24px 20px; }
  .cellule-banner-title { font-size: clamp(1.3rem, 5vw, 1.8rem); }

  /* Page Hero */
  .page-hero { padding: 110px 20px 55px; gap: 25px; }
  .hero-copy h1 { font-size: clamp(2.1rem, 8vw, 3.2rem); }
  .hero-copy p { font-size: 0.95rem; }
  .hero-image { border-radius: 22px; }
  .hero-image img { min-height: 230px; }

  /* Feature banner */
  .feature-banner { padding: 24px; border-radius: 18px; }
  .feature-banner h3 { font-size: 1.5rem; }

  /* Médias */
  .media-image img { height: 260px; }
  .media-video-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }
  .media-video-grid > .video-card,
  .media-video-grid > .video-card:last-child {
    grid-column: auto;
    height: auto;
    min-height: 380px;
  }
  .media-featured { height: 360px; border-radius: 20px; }
  .media-featured h4.text-4xl { font-size: 1.5rem; }
  .featured-block h3.text-3xl { font-size: 1.35rem; }

  /* Galerie */
  .gallery-grid { grid-template-columns: 1fr; gap: 12px; }
  .gallery-grid img { height: auto; max-height: 340px; object-fit: cover; }

  /* Archive row */
  .archive-row { grid-template-columns: 1fr; gap: 6px; padding: 14px 0; }
  .archive-row .muted { font-size: 11px; }

  /* Stats */
  .stats-row { grid-template-columns: 1fr; gap: 12px; }
  .stats-row div { padding: 22px; }
  .stat-row { grid-template-columns: 1fr; gap: 12px; }

  /* Article */
  .article-hero { padding: 105px 20px 38px; }
  .article-title { font-size: clamp(2rem, 7vw, 3.2rem); }
  .article-subtitle { font-size: 1rem; }
  .article-body { padding-left: 20px; padding-right: 20px; }
  .article-body p { font-size: 16px; line-height: 1.75; }
  .article-body h2 { font-size: 1.65rem; margin-top: 40px; }
  .article-body blockquote { padding-left: 16px; margin-left: 0; margin-right: 0; }

  /* Carousel */
  .carousel-section { padding-left: 20px; padding-right: 20px; margin-top: 2.5rem; }
  .carousel-wrap { aspect-ratio: 4/3; border-radius: 20px; }
  .carousel-arrow { width: 38px; height: 38px; }

  /* Video embed */
  .video-embed-wrap { padding-left: 20px; padding-right: 20px; margin: 2rem auto; }

  /* Support */
  .support-section { padding: 55px 20px; }
  .support-cta-row { flex-direction: column; }
  .support-inner h2 { font-size: 1.8rem; }

  /* Livre */
  .book-hero { padding: 105px 20px 60px; }
  .book-hero .section-title { font-size: clamp(2.1rem, 8vw, 3.4rem); }
  .book-mockup { max-width: 280px; }
  .quote-box { padding: 16px 20px; margin: 24px 0; }
  .quote-text { font-size: 1.15rem; }

  /* Contact */
  .contact-card { padding: 28px 20px; border-radius: 24px; }
  .contact-grid { padding-left: 20px; padding-right: 20px; }
  input, textarea, select { padding: 16px 14px !important; font-size: 16px; }
  select { padding-right: 40px !important; }

  /* Parcours */
  main > section:first-of-type { padding-top: 6rem; padding-bottom: 3rem; }
  .portrait-frame { max-width: 300px; }
  .portrait-frame::before { inset: -12px; border-radius: 28px; }
  .eng-img-container { height: 220px; }
  .eng-card { padding: 12px; border-radius: 24px; }

  /* Poème */
  body.page-template-page-parcours-php .poem-text {
    column-count: 1;
    padding: 24px;
    font-size: 1.05rem;
  }
  body.page-template-page-parcours-php .parcours-engagement-section { padding-top: 100px !important; }

  /* Interventions */
  .interventions-map-section { padding: 16px; border-radius: 20px; }
  .interventions-map { height: 280px; border-radius: 14px; }
  .impact-card { padding: 10px; border-radius: 24px; }
  .impact-card .img-container { height: 200px; border-radius: 18px; }

  /* Featured banner (actualités) */
  .featured-banner { margin-top: 108px; }
  .featured-banner-inner { grid-template-columns: 1fr; }
  .featured-banner-text { padding: 28px 20px; }

  /* Hub réseaux */
  .hub-wrapper { padding: 64px 20px 44px; }
  .mm-social-posts { grid-template-columns: 1fr !important; gap: 18px !important; }
  .social-widget-frame { padding: 16px !important; border-radius: 20px; }

  /* Footer */
  .footer-grid { grid-template-columns: 1fr; gap: 25px; }
  .footer-bottom { flex-direction: column; align-items: flex-start; }
  .site-footer { padding-left: 20px; padding-right: 20px; }
  .foot-top { grid-template-columns: 1fr; gap: 24px; }
  .foot-bottom { flex-direction: column; align-items: flex-start; }
  .phone-hub { max-width: 100%; }
}

/* ============================================================
   BREAKPOINT : Petit mobile (≤ 400 px)
   Objectif : sécurité supplémentaire pour 370 px
   ============================================================ */
@media (max-width: 400px) {
  .page-hero { padding-left: 16px; padding-right: 16px; }
  .section,
  .home-section { padding-left: 16px; padding-right: 16px; }
  .article-body { padding-left: 16px; padding-right: 16px; }
  .carousel-section,
  .video-embed-wrap { padding-left: 16px; padding-right: 16px; }
  .featured-banner { max-width: calc(100% - 24px); margin-left: 12px; margin-right: 12px; }

  .btn-red,
  .btn-outline { max-width: 100%; white-space: normal; }
  .hero-actions .hero-btn { white-space: normal !important; }

  /* Hero CTA en colonne sur très petit écran */
  .hero-actions {
    flex-direction: column;
    width: 100%;
  }
  .hero-actions .hero-btn {
    width: 100%;
  }

  .support-inner h2 { font-size: 1.6rem; }
  .article-body blockquote { padding-left: 12px; margin-left: 0; margin-right: 0; }
  .footer-grid { grid-template-columns: 1fr; }
}

/* ============================================================
   CORRECTIONS SPÉCIFIQUES PAR PAGE
   ============================================================ */

/* ── Accueil : Hero CTA ───────────────────────────────────── */
.hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  justify-content: center;
  align-items: center;
}
@media (min-width: 1024px) {
  .hero-actions { justify-content: flex-start; }
}
.hero-actions .hero-btn {
  min-height: 52px;
  padding: 16px 28px !important;
  font-size: 12px !important;
  letter-spacing: 0.08em !important;
  white-space: nowrap !important;
  line-height: 1.15 !important;
  box-sizing: border-box;
}
@media (max-width: 520px) {
  .hero-actions { flex-direction: column; width: 100%; }
  .hero-actions .hero-btn {
    width: 100%;
    white-space: normal !important;
  }
}

/* ── Hero : espacement géré par harmony.css (layout bas-gauche) ── */

/* ── Hero : overflow tablette (1024-1499px) ────────────────── */
@media (min-width: 1024px) and (max-width: 1499px) {
  #hero-split { overflow-x: hidden; }
  #hero-split .flex.justify-center.lg\:justify-end {
    min-width: 0 !important;
    max-width: 100% !important;
    margin-top: 70px;
    overflow: hidden;
  }
  #hero-split .flex.justify-center.lg\:justify-end .max-w-xl {
    min-width: 0 !important;
    max-width: 100% !important;
    width: 90% !important;
  }
  #hero-split .flex.justify-center.lg\:justify-end img {
    min-width: 0 !important;
    max-width: 100% !important;
    width: 100% !important;
    height: auto !important;
  }
}

/* ── Interventions : carte et page ────────────────────────── */
.page-interventions { padding-top: 8.5rem; }
@media (min-width: 768px) {
  .page-interventions { padding-top: 9rem; padding-bottom: 5rem; }
}
@media (max-width: 767px) {
  .page-interventions { padding-top: 7rem; padding-bottom: 3rem; }
  body.page-template-page-interventions-php .interventions-actions-block {
    padding-top: 36px;
    padding-bottom: 48px;
  }
  body.page-template-page-interventions-php .interventions-grid-head,
  body.page-template-page-interventions-php #interventions-featured-grid,
  body.page-template-page-interventions-php #toggle-archives,
  body.page-template-page-interventions-php #archives-container {
    width: calc(100% - 32px);
  }
}

/* ── Cellule mobile : largeurs adaptées ───────────────────── */
@media (min-width: 1024px) {
  body.page-template-page-cellule-mobile-php .article-hero {
    padding-left: 6vw !important;
    padding-right: 6vw !important;
  }
  body.page-template-page-cellule-mobile-php .article-hero > .max-w-4xl {
    max-width: 1100px !important;
  }
  body.page-template-page-cellule-mobile-php .article-body {
    max-width: 900px !important;
  }
  body.page-template-page-cellule-mobile-php .carousel-section {
    max-width: 1100px !important;
  }
  body.page-template-page-cellule-mobile-php .video-embed-wrap {
    max-width: 1000px !important;
  }
}
@media (max-width: 767px) {
  .article-hero { padding-top: 100px; padding-bottom: 40px; }
  .stat-row { grid-template-columns: 1fr; }
  .carousel-arrow { width: 36px; height: 36px; }
  .support-cta-row { flex-direction: column; }
}

/* ── Médias : vidéo cards ─────────────────────────────────── */
@media (min-width: 1024px) {
  .media-video-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
  }
  .media-video-grid > .video-card,
  .media-video-grid > .video-card:last-child {
    grid-column: auto;
    width: 100%;
    max-width: none;
    height: 460px;
    display: flex;
    flex-direction: column;
  }
  .media-video-grid .video-wrapper {
    height: 240px;
    padding-bottom: 0;
    flex: 0 0 240px;
  }
  .media-video-grid .video-card > .p-8 {
    padding: 24px !important;
    flex: 1 1 auto;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .media-video-grid > .video-card,
  .media-video-grid > .video-card:last-child {
    grid-column: auto;
    height: 440px;
  }
}
@media (max-width: 767px) {
  .media-video-grid > .video-card,
  .media-video-grid > .video-card:last-child {
    grid-column: auto;
    height: auto;
    min-height: 380px;
  }
}

/* ── Actualités : hub réseaux ─────────────────────────────── */
@media (min-width: 768px) and (max-width: 1023px) {
  .mm-social-posts { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}

/* ── Recherche archives (interventions / médias) ──────────── */
@media (max-width: 600px) {
  .archives-search { flex-direction: column; }
  #archives-year-filter { width: 100%; }
}

/* ── Leaflet : pas d'overflow horizontal ──────────────────── */
.page-interventions,
.interventions-map-section,
.interventions-map-layout,
.interventions-map {
  max-width: 100%;
  overflow-x: clip;
}
.leaflet-container { width: 100% !important; max-width: 100% !important; }

/* ===== Ergonomie tactile (mobile / tablette) =====
   Cibles d'au moins 44 px, retour visuel à l'appui, et suppression du délai
   de 300 ms sur les éléments interactifs. */
@media (hover: none) and (pointer: coarse) {
  .btn-red,
  .btn-outline,
  .hero-btn,
  .media-desc-toggle,
  [data-news-prev],
  [data-news-next],
  [data-news-dot],
  .mm-header-v2 a,
  .site-footer a,
  #access-btn,
  #theme-toggle,
  #zoom-toggle,
  #menu-btn,
  .color-dot,
  .mobile-nav-panel a {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    touch-action: manipulation;
  }

  /* Les pastilles de couleur restent rondes : on élargit la zone tactile sans déformer le visuel. */
  .color-dot { position: relative; }
  .color-dot::after {
    content: "";
    position: absolute;
    top: 50%; left: 50%;
    width: 44px; height: 44px;
    transform: translate(-50%, -50%);
  }

  /* Les points du carrousel sont petits : zone tactile élargie de la même façon. */
  [data-news-dot] { position: relative; }
  [data-news-dot]::after {
    content: "";
    position: absolute;
    top: 50%; left: 50%;
    width: 44px; height: 44px;
    transform: translate(-50%, -50%);
  }

  /* Retour visuel immédiat à l'appui, puisqu'il n'y a pas de survol au doigt. */
  .btn-red:active,
  .btn-outline:active,
  .media-desc-toggle:active { transform: scale(0.97); }

  /* Le carrousel accepte le balayage horizontal sans bloquer le défilement vertical. */
  [data-news-carousel] { touch-action: pan-y; }
}

/* ==========================================================================
   HERO 2026 — photo plein cadre, séparation diagonale et carte glass.
   Réutilise strictement la structure, les données et le point focal existants.
   ========================================================================== */
#hero-editorial{
  margin-top:72px;
  padding:0;
  height:clamp(620px,calc(100svh - 150px),720px);
  min-height:620px;
  overflow:hidden;
  background:var(--bg-1);
  isolation:isolate;
}
#hero-editorial .hero-ed-grid{
  position:relative;
  display:block;
  width:100%;
  max-width:none!important;
  height:100%;
  margin:0;
  padding:0!important;
}
#hero-editorial .hero-ed-text{
  position:relative;
  z-index:5;
  display:flex;
  justify-content:center;
  flex-direction:column;
  width:55%;
  height:100%;
  min-width:0;
  padding:52px var(--mm-shell-gutter,48px);
  padding-left:var(--mm-shell-edge,var(--mm-shell-gutter,48px));
}
#hero-editorial .hero-ed-eyebrow{margin-bottom:24px}
#hero-editorial .hero-ed-title{
  max-width:660px;
  margin:0 0 28px;
  font-family:'Dosis',sans-serif;
  font-size:clamp(2.8rem,4.5vw,4.2rem)!important;
  font-style:normal!important;
  font-weight:800;
  letter-spacing:-.05em;
  line-height:.88;
}
#hero-editorial .hero-ed-title-part{display:inline-block}
#hero-editorial .hero-ed-lede{max-width:610px;margin-bottom:17px;font-weight:800}
#hero-editorial .hero-ed-desc{max-width:520px;margin-bottom:38px}
#hero-editorial .hero-ed-media{
  position:absolute;
  inset:0 0 0 auto;
  z-index:2;
  width:52%;
  height:100%;
  min-width:0;
  opacity:1;
  overflow:hidden;
  clip-path:polygon(18% 0,100% 0,100% 100%,0 100%);
  filter:drop-shadow(-18px 0 24px rgba(0,0,0,.12));
  animation:mm-hero-photo-reveal .82s cubic-bezier(.18,.75,.2,1) .05s backwards;
}
#hero-editorial .hero-ed-media-inner{
  position:relative;
  width:100%;
  height:100%;
  min-height:0;
  overflow:hidden;
  aspect-ratio:auto;
  border:0;
  border-radius:0;
  box-shadow:none;
  isolation:isolate;
}
#hero-editorial .hero-ed-media-inner:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  opacity:.08;
  pointer-events:none;
  mix-blend-mode:soft-light;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.92' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.45'/%3E%3C/svg%3E");
}
#hero-editorial .hero-ed-media-inner:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:linear-gradient(106deg,color-mix(in srgb,var(--bg-1) 42%,transparent) 0,color-mix(in srgb,var(--bg-1) 18%,transparent) 7%,transparent 17%),linear-gradient(180deg,transparent 52%,rgba(7,8,9,.18) 100%);
}
#hero-editorial .hero-ed-media-inner>img{
  position:relative;
  z-index:0;
  display:block;
  width:100%;
  height:100%;
  max-width:none;
  object-fit:cover;
  filter:grayscale(10%) contrast(1.06) brightness(.98);
  transform:translate3d(var(--hero-shift-x),var(--hero-shift-y),0) scale(1.01);
  transition:transform .7s cubic-bezier(.2,.75,.2,1),filter .4s ease;
}
#hero-editorial .hero-ed-media-inner:hover>img{
  filter:grayscale(7%) contrast(1.07) brightness(.99);
  transform:translate3d(var(--hero-shift-x),var(--hero-shift-y),0) scale(1.035);
}
#hero-editorial .hero-ed-float-cta{
  left:auto;
  right:32px;
  bottom:32px;
  z-index:6;
  width:min(370px,calc(100% - 64px));
  max-width:none;
  min-height:84px;
  gap:14px;
  padding:15px 18px;
  border:1px solid rgba(255,255,255,.78);
  border-radius:17px;
  background:rgba(250,250,248,.76);
  color:#171719;
  box-shadow:0 24px 54px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.9);
  -webkit-backdrop-filter:blur(18px) saturate(130%);
  backdrop-filter:blur(18px) saturate(130%);
  opacity:1;
  animation:mm-hero-card-in .55s cubic-bezier(.2,.8,.2,1) .46s backwards;
  transition:transform .32s cubic-bezier(.2,.8,.2,1),box-shadow .32s ease,background .32s ease,border-color .22s ease;
}
#hero-editorial .hero-ed-float-icon{
  width:44px;
  height:44px;
  flex-basis:44px;
  border:1px solid rgba(196,0,0,.15);
  background:rgba(255,255,255,.62);
  transition:border-color .22s ease,box-shadow .22s ease;
}
#hero-editorial .hero-ed-float-title{
  color:#171719;
  font-family:'Dosis',sans-serif;
  font-size:.9rem;
  font-weight:800;
}
#hero-editorial .hero-ed-float-sub{
  margin-top:4px;
  color:#29292c;
  font-family:'Overpass',sans-serif;
  font-size:.625rem;
  font-weight:700;
  line-height:1.38;
  letter-spacing:.005em;
}
#hero-editorial .hero-ed-float-cta:hover{
  border-color:var(--accent);
  background:rgba(255,255,253,.86);
  box-shadow:0 31px 68px rgba(0,0,0,.29),0 0 0 2px color-mix(in srgb,var(--accent) 16%,transparent),inset 0 1px 0 #fff;
  transform:translateY(-5px) scale(1.012);
}
#hero-editorial .hero-ed-float-cta:hover .hero-ed-float-icon{
  border-color:var(--accent);
  box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 10%,transparent);
}
#hero-editorial .hero-ed-float-cta:focus-visible{
  border-color:var(--accent);
  outline:3px solid #fff;
  outline-offset:3px;
  box-shadow:0 0 0 6px var(--accent),0 24px 54px rgba(0,0,0,.24);
}
#hero-editorial .hero-ed-actions .hero-btn{
  border:1px solid var(--accent);
  transition:transform .2s ease,background-color .2s ease,color .2s ease,box-shadow .2s ease,border-color .2s ease;
}
#hero-editorial .hero-ed-actions .hero-btn:hover{
  border-color:var(--accent);
  box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 13%,transparent);
  transform:translateY(-2px);
}
#hero-editorial .hero-ed-actions .btn-outline:hover{background:transparent;color:var(--accent)!important}
#hero-editorial .hero-ed-actions .btn-red:hover{background:var(--accent);color:#fff!important;filter:none}
body:not(.light-mode) #hero-editorial .hero-ed-float-cta{
  border-color:rgba(255,255,255,.34);
  background:rgba(17,17,19,.78);
  color:#fff;
}
body:not(.light-mode) #hero-editorial .hero-ed-float-title{color:#fff}
body:not(.light-mode) #hero-editorial .hero-ed-float-sub{color:#f1f1f2}
body:not(.light-mode) #hero-editorial .hero-ed-float-icon{background:rgba(255,255,255,.1)}
body:not(.light-mode) #hero-editorial .hero-ed-float-cta:hover{border-color:var(--accent);background:rgba(17,17,19,.88)}

/* Entrée courte : titre ligne par ligne, contenu, photo, puis CTA. */
#hero-editorial .hero-ed-eyebrow,
#hero-editorial .hero-ed-title-part,
#hero-editorial .hero-ed-lede,
#hero-editorial .hero-ed-desc,
#hero-editorial .hero-ed-actions{
  opacity:1;
  animation:mm-hero-copy-in .54s cubic-bezier(.2,.75,.2,1) backwards;
}
#hero-editorial .hero-ed-eyebrow{animation-delay:.06s}
#hero-editorial .hero-ed-title-part:nth-of-type(1){animation-delay:.13s}
#hero-editorial .hero-ed-title-part:nth-of-type(2){animation-delay:.21s}
#hero-editorial .hero-ed-title-part:nth-of-type(3){animation-delay:.29s}
#hero-editorial .hero-ed-lede{animation-delay:.37s}
#hero-editorial .hero-ed-desc{animation-delay:.43s}
#hero-editorial .hero-ed-actions{animation-delay:.49s}
@keyframes mm-hero-photo-reveal{
  from{opacity:.2;clip-path:polygon(100% 0,100% 0,100% 100%,84% 100%)}
  to{opacity:1;clip-path:polygon(18% 0,100% 0,100% 100%,0 100%)}
}
@keyframes mm-hero-copy-in{
  from{opacity:0;transform:translateY(14px)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes mm-hero-card-in{
  from{opacity:0;transform:translateY(10px) scale(.985)}
  to{opacity:1;transform:none}
}

/* Tablette : photo en premier, contenu ensuite, diagonale limitée au bas. */
@media(max-width:1199px){
  #hero-editorial{height:auto;min-height:0}
  #hero-editorial .hero-ed-grid{display:flex;flex-direction:column;height:auto}
  #hero-editorial .hero-ed-media{
    position:relative;
    inset:auto;
    order:1;
    width:100%;
    height:clamp(360px,50vw,500px);
    filter:none;
    clip-path:polygon(0 0,100% 0,100% 91%,0 100%);
    animation-name:mm-hero-photo-reveal-tablet;
  }
  #hero-editorial .hero-ed-text{
    order:2;
    width:100%;
    height:auto;
    padding:38px var(--mm-shell-edge,var(--mm-shell-gutter,24px)) 48px;
  }
  #hero-editorial .hero-ed-title{max-width:650px;font-size:clamp(2.8rem,4.5vw,4.2rem)!important}
  #hero-editorial .hero-ed-desc{max-width:680px}
  #hero-editorial .hero-ed-float-cta{right:22px;bottom:46px}
  @keyframes mm-hero-photo-reveal-tablet{
    from{opacity:.25;clip-path:polygon(0 0,100% 0,100% 0,0 9%)}
    to{opacity:1;clip-path:polygon(0 0,100% 0,100% 91%,0 100%)}
  }
}

/* Mobile : photo plein cadre compacte, CTA lisible, contenu et boutons pleine largeur. */
@media(max-width:767px){
  #hero-editorial{margin-top:72px;padding:0}
  #hero-editorial .hero-ed-media{height:clamp(270px,76vw,340px);clip-path:polygon(0 0,100% 0,100% 94%,0 100%)}
  #hero-editorial .hero-ed-media-inner{border-radius:0}
  #hero-editorial .hero-ed-text{padding:29px var(--mm-shell-edge,var(--mm-shell-gutter,16px)) 38px}
  #hero-editorial .hero-ed-eyebrow{margin-bottom:18px;font-size:.68rem}
  #hero-editorial .hero-ed-title{margin-bottom:21px;font-size:clamp(2.8rem,4.5vw,4.2rem)!important}
  #hero-editorial .hero-ed-lede{margin-bottom:14px;font-size:1rem}
  #hero-editorial .hero-ed-desc{margin-bottom:31px;font-size:.9rem;line-height:1.62}
  #hero-editorial .hero-ed-actions{width:100%;flex-direction:column}
  #hero-editorial .hero-ed-actions .hero-btn{width:100%}
  #hero-editorial .hero-ed-float-cta{
    right:12px;
    bottom:29px;
    width:calc(100% - 24px);
    min-height:68px;
    padding:10px 12px;
    gap:10px;
    border-radius:13px;
  }
  #hero-editorial .hero-ed-float-icon{width:36px;height:36px;flex-basis:36px}
  #hero-editorial .hero-ed-float-title{font-size:.75rem}
  #hero-editorial .hero-ed-float-sub{font-size:.54rem;font-weight:700}
}
@supports not (clip-path:polygon(0 0,100% 0,100% 100%,0 100%)){
  #hero-editorial .hero-ed-media{clip-path:none}
}
@media(prefers-reduced-motion:reduce){
  #hero-editorial .hero-ed-eyebrow,
  #hero-editorial .hero-ed-title-part,
  #hero-editorial .hero-ed-lede,
  #hero-editorial .hero-ed-desc,
  #hero-editorial .hero-ed-actions,
  #hero-editorial .hero-ed-media,
  #hero-editorial .hero-ed-float-cta{animation:none!important;opacity:1!important;transform:none!important}
  #hero-editorial .hero-ed-media-inner>img,
  #hero-editorial .hero-ed-media-inner:hover>img{transition:none!important;transform:none!important}
}

/* Révision Lighthouse 10.13.157 : le paragraphe LCP est visible sans attendre
   l'animation d'entrée ; les autres animations du Hero restent inchangées. */
#hero-editorial .hero-ed-desc{animation:none!important;opacity:1!important;transform:none!important}

/* Façade des lecteurs tiers : l'iframe n'existe qu'après activation. */
.mm-lazy-embed,.mm-lazy-embed-button,.mm-lazy-embed>iframe{position:relative;display:block;width:100%;height:100%;min-height:220px;aspect-ratio:16/9;border:0}
.mm-lazy-embed{overflow:hidden;background:#070707}
.mm-lazy-embed-button{padding:0;overflow:hidden;cursor:pointer;color:#fff;background:#070707}
.mm-lazy-embed-button img,.mm-lazy-embed-placeholder{display:block;width:100%;height:100%;object-fit:cover;background:linear-gradient(135deg,#18181b,#070707)}
.mm-lazy-embed-button img{filter:brightness(.72);transition:filter .2s ease,transform .3s ease}
.mm-lazy-embed-button:hover img{filter:brightness(.58);transform:scale(1.015)}
.mm-lazy-embed-play{position:absolute;left:50%;top:50%;display:grid;place-items:center;width:64px;height:64px;border-radius:50%;transform:translate(-50%,-50%);background:var(--accent);color:#fff;font-size:1.35rem;box-shadow:0 12px 28px rgba(0,0,0,.38)}
.mm-lazy-embed-label{position:absolute;left:50%;top:calc(50% + 48px);transform:translateX(-50%);font-weight:800;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}
.mm-lazy-embed-button:focus-visible{outline:4px solid var(--accent);outline-offset:-5px}
@media(prefers-reduced-motion:reduce){.mm-lazy-embed-button img{transition:none!important}}
