/*
Theme Name: MEREOS Training
Theme URI: https://www.mereos-training.fr
Author: MEREOS Training
Description: Thème sur mesure pour MEREOS Training. Blocs WordPress natifs, sans Elementor ni extension obligatoire. Palette, polices et sections modifiables dans l'éditeur du site.
Version: 1.0.2
Requires at least: 6.5
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: mereos
*/

/* ============================================================
   1. BASE
   ============================================================ */
:root{
  --ink:#16150F; --ink2:#100F0A; --card:#1E1D15; --line:#33321F;
  --bone:#EDE8DA; --bone-dim:#C9C3B0; --stone:#8C887C;
  --brass:#B8873F; --brass-hi:#D4A458; --err:#E0836B; --ok:#8FB07A;
  --f-title:'Bebas Neue',Impact,'Arial Narrow',sans-serif;
  --f-mono:'JetBrains Mono',ui-monospace,Menlo,monospace;
  --hdr:68px;
}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
body{margin:0;overflow-x:hidden;-webkit-font-smoothing:antialiased;}
*,*::before,*::after{box-sizing:border-box;}
.wp-site-blocks{padding:0;}
.wp-site-blocks > * + *{margin-block-start:0;}
main p,main h1,main h2,main h3,main h4,footer p,footer h3,header p{margin:0;}
a{text-decoration:none;}
main img{max-width:100%;height:auto;}
.mx-sec{padding:68px 0;position:relative;}
.mx-wrap{max-width:1120px;margin-left:auto;margin-right:auto;padding:0 20px;position:relative;width:100%;}
.mx-eyebrow{font-family:var(--f-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--brass);margin-bottom:14px!important;display:flex;align-items:center;gap:12px;}
.mx-eyebrow::before{content:"";width:28px;height:1px;background:var(--brass);flex:none;}
main h2.wp-block-heading,.mx-h2{font-size:38px;line-height:1.02;margin-bottom:16px!important;letter-spacing:.02em;}
main h1.wp-block-heading{letter-spacing:.02em;}
.mx-sub{font-size:15px;color:var(--bone-dim);max-width:560px;margin-bottom:34px!important;}
.mx-out{color:transparent;-webkit-text-stroke:1.5px var(--brass);}
.mx-dark{background:var(--ink2);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}

/* ============================================================
   2. BOUTONS (bloc Boutons natif)
   ============================================================ */
.wp-block-buttons.mx-btns{display:grid;gap:12px;max-width:560px;}
.wp-block-buttons.mx-btns.one{max-width:340px;}
.wp-block-button.mx-cta .wp-block-button__link,
.wp-block-button.mx-ghost .wp-block-button__link{
  display:flex;align-items:center;justify-content:center;gap:10px;width:100%;
  font-family:var(--f-mono);font-size:14px;letter-spacing:.06em;text-transform:uppercase;font-weight:700;
  border-radius:12px;min-height:54px;padding:16px 24px;line-height:1.2;text-align:center;
  transition:background .18s,transform .18s,color .18s,border-color .18s;
}
.wp-block-button.mx-cta .wp-block-button__link{background:var(--brass);color:var(--ink);border:1px solid var(--brass);}
.wp-block-button.mx-cta .wp-block-button__link::after{content:"→";transition:transform .18s;}
.wp-block-button.mx-cta .wp-block-button__link:hover{background:var(--bone);border-color:var(--bone);color:var(--ink);}
.wp-block-button.mx-cta .wp-block-button__link:hover::after{transform:translateX(4px);}
.wp-block-button.mx-cta .wp-block-button__link:active{transform:scale(.98);}
.wp-block-button.mx-ghost .wp-block-button__link{background:transparent;color:var(--bone);border:1px solid var(--line);}
.wp-block-button.mx-ghost .wp-block-button__link:hover{border-color:var(--brass);color:var(--brass);}
.wp-block-button .wp-block-button__link:focus-visible,.mx-btnlink:focus-visible{outline:2px solid var(--bone);outline-offset:3px;}
.wp-block-button.mx-sm .wp-block-button__link{min-height:44px;padding:10px 18px;font-size:12.5px;width:auto;}
.wp-block-button.mx-sm .wp-block-button__link::after{display:none;}

/* ============================================================
   3. EN-TÊTE ET PIED DE PAGE
   ============================================================ */
.mx-bar{background:var(--brass);color:var(--ink);padding:10px 16px;text-align:center;font-family:var(--f-mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;}
.mx-bar p{margin:0;}
.mx-bar a{color:var(--ink);}
.mx-header{position:sticky;top:0;z-index:100;background:rgba(22,21,15,.96);border-bottom:1px solid var(--line);backdrop-filter:saturate(1.2) blur(8px);}
.admin-bar .mx-header{top:32px;}
@media(max-width:782px){.admin-bar .mx-header{top:46px;}}
.mx-header-in{max-width:1280px;margin:0 auto;padding:0 20px;min-height:var(--hdr);display:flex;align-items:center;justify-content:space-between;gap:16px;}
.mx-brand,.mx-brand a{font-family:var(--f-title);font-size:26px;white-space:nowrap;line-height:1;letter-spacing:.04em;color:var(--bone)!important;margin:0;}
.mx-brand small{display:block;font-family:var(--f-mono);font-size:8.5px;letter-spacing:.34em;color:var(--stone);margin-top:2px;}
.mx-header .wp-block-site-logo img{height:auto;max-height:44px;width:auto;}
.mx-header .wp-block-navigation{font-family:var(--f-mono);font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;font-weight:500;}
.mx-header .wp-block-navigation a{color:var(--bone);padding:8px 2px;}
.mx-header .wp-block-navigation a:hover{color:var(--brass);}
.mx-header .wp-block-navigation .current-menu-item > a,.mx-header .wp-block-navigation .current-menu-item > .wp-block-navigation-item__content{color:var(--brass);}
.mx-header .wp-block-navigation__responsive-container-open,.mx-header .wp-block-navigation__responsive-container-close{color:var(--bone);}
.mx-header .wp-block-navigation__responsive-container.is-menu-open{background:var(--ink)!important;color:var(--bone);padding:24px 24px 40px;}
.mx-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{font-family:var(--f-title);font-size:38px;letter-spacing:.03em;text-transform:none;font-weight:400;}
.wp-block-navigation__submenu-container{background:var(--card)!important;border:1px solid var(--line)!important;color:var(--bone)!important;}
.wp-block-buttons.mx-header-cta{display:none;}
@media(min-width:900px){.wp-block-buttons.mx-header-cta{display:flex;}}
.mx-header .wp-block-navigation .wp-block-navigation__container{gap:26px;}
.mx-header .wp-block-navigation{flex-wrap:nowrap;}
/* menu burger jusqu'à 900 px (WordPress le coupe à 600 px par défaut) */
@media(min-width:600px) and (max-width:899px){
  .mx-header .wp-block-navigation__responsive-container:not(.is-menu-open){display:none;}
  .mx-header .wp-block-navigation__responsive-container-open:not(.always-shown){display:flex;}
}
@media(min-width:900px){
  .mx-header .wp-block-navigation__responsive-container-open:not(.always-shown){display:none;}
}

.mx-footer{background:var(--ink2);border-top:1px solid var(--line);padding:56px 0 calc(40px + 70px);font-size:14px;color:var(--bone-dim);}
.mx-footer a{color:var(--bone-dim);}
.mx-footer a:hover{color:var(--brass);}
.mx-footer .mx-fgrid{display:grid;gap:34px;max-width:1120px;margin:0 auto;padding:0 20px;}
@media(min-width:640px){.mx-footer .mx-fgrid,.mx-footer .mx-flegal{padding-left:32px;padding-right:32px;}}
.mx-footer .mx-fcol p{margin-bottom:6px!important;}
.mx-footer .mx-ft{font-family:var(--f-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--brass);margin-bottom:12px!important;}
.mx-footer .mx-flegal{max-width:1120px;margin:40px auto 0;padding:24px 20px 0;border-top:1px solid var(--line);font-size:12.5px;color:var(--stone);}
.mx-footer .mx-flegal a{color:var(--stone);text-decoration:underline;}
@media(min-width:760px){.mx-footer{padding-bottom:40px;}.mx-footer .mx-fgrid{grid-template-columns:1.4fr 1fr 1fr 1.2fr;}}

/* barre fixe mobile (Site Editor > Pied de page) */
.mx-sticky{position:fixed;left:0;right:0;bottom:0;z-index:9990;display:flex;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(22,21,15,.97);border-top:1px solid var(--line);transform:translateY(0);transition:transform .3s;}
.mx-sticky.is-hidden{transform:translateY(110%);}
.mx-sticky .wp-block-buttons{display:flex;gap:8px;width:100%;}
.mx-sticky .wp-block-button{flex:1;margin:0;}
.mx-sticky .wp-block-button.mx-s1{flex:2;}
.mx-sticky .wp-block-button__link{display:flex;align-items:center;justify-content:center;min-height:50px;border-radius:10px;font-family:var(--f-mono);font-size:13px;letter-spacing:.06em;text-transform:uppercase;font-weight:700;width:100%;padding:12px;}
.mx-sticky .wp-block-button.mx-s1 .wp-block-button__link{background:var(--brass);color:var(--ink);}
.mx-sticky .wp-block-button.mx-call .wp-block-button__link{background:transparent;color:var(--bone);border:1px solid var(--brass);}
@media(min-width:900px){.mx-sticky{display:none;}}

/* ============================================================
   4. HERO (bloc Couverture)
   ============================================================ */
.wp-block-cover.mx-hero{min-height:0;padding:56px 0 64px;display:block;overflow:hidden;position:relative;background:var(--ink);}
.wp-block-cover.mx-hero .wp-block-cover__inner-container{width:100%;max-width:1120px;margin:0 auto;padding:0 20px;position:relative;z-index:2;display:grid;gap:40px;color:var(--bone);}
.mx-hero:not(:has(.wp-block-cover__image-background,.wp-block-cover__video-background))::after{
  content:"";position:absolute;right:-230px;bottom:-170px;width:520px;height:520px;opacity:.2;pointer-events:none;z-index:1;
  background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 400'><g fill='none' stroke='%23B8873F'><circle cx='200' cy='200' r='196' stroke-width='3'/><circle cx='200' cy='200' r='178' stroke-width='1'/><circle cx='200' cy='200' r='150' stroke-width='10' opacity='.55'/><circle cx='200' cy='200' r='118' stroke-width='1'/><circle cx='200' cy='200' r='96' stroke-width='3' stroke-dasharray='2 9'/><circle cx='200' cy='200' r='52' stroke-width='2'/><circle cx='200' cy='200' r='28' stroke-width='6' opacity='.7'/></g></svg>") center/contain no-repeat;
}
.mx-hero h1{font-size:62px;line-height:.92;margin-bottom:22px!important;color:var(--bone);}
.mx-lede{font-size:16.5px;color:var(--bone-dim);max-width:540px;margin-bottom:30px!important;}
.mx-proof{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:26px;font-family:var(--f-mono);font-size:12px;color:var(--bone-dim);}
.mx-proof p{margin:0!important;}
.mx-proof .st{color:var(--brass);letter-spacing:.18em;font-size:14px;}
.mx-proof strong{color:var(--bone);}
.mx-proof p + p + p{padding-left:16px;border-left:1px solid var(--line);}

/* ticket */
.mx-ticket{position:relative;background:var(--card);border:1px solid var(--line);border-top:3px solid var(--brass);padding:28px 24px 26px;max-width:440px;}
.mx-ticket .tag{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--stone);display:flex;justify-content:space-between;margin-bottom:16px;}
.mx-ticket .tag p{margin:0!important;}
.mx-ticket .big{font-family:var(--f-title);font-size:64px;line-height:.9;color:var(--brass);margin:0!important;}
.mx-ticket .big-sub{font-family:var(--f-title);font-size:22px;color:var(--bone);margin-top:6px!important;letter-spacing:.04em;}
.mx-ticket .mx-checks{padding-bottom:24px!important;border-bottom:1px dashed var(--line);}
.mx-ticket .wp-block-buttons{margin-top:22px;}
.mx-ticket .note{font-family:var(--f-mono);font-size:10.5px;color:var(--stone);margin-top:12px!important;text-align:center;letter-spacing:.06em;}

/* listes à coches / flèches */
ul.mx-checks,ul.mx-pro,ul.mx-con{list-style:none;margin:0;padding:22px 0 0;}
ul.mx-checks li,ul.mx-pro li,ul.mx-con li{display:flex;gap:12px;align-items:flex-start;padding:7px 0;font-size:14.5px;color:var(--bone);}
ul.mx-checks li::before{content:"✓";flex:none;width:20px;height:20px;border-radius:50%;background:var(--brass);color:var(--ink);font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;margin-top:2px;}
ul.mx-pro li::before{content:"→";flex:none;width:16px;font-family:var(--f-mono);font-weight:700;color:var(--brass);}
ul.mx-con li::before{content:"×";flex:none;width:16px;font-family:var(--f-mono);font-weight:700;color:var(--stone);}
.mx-col{background:var(--card);border:1px solid var(--line);padding:26px 22px;}
.mx-col ul{padding-top:0!important;}
.mx-col li{padding:11px 0!important;border-bottom:1px dashed var(--line);font-size:14px!important;}
.mx-col li:last-child{border-bottom:none;}
.mx-col.us{border-top:3px solid var(--brass);}
.mx-col h3{font-size:26px;margin-bottom:18px!important;}
.mx-col.us h3{color:var(--brass);}
.mx-col.them h3,.mx-col.them li{color:var(--stone);}

/* ============================================================
   5. SECTIONS D'ACCUEIL
   ============================================================ */
.mx-marq{padding:0!important;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--ink2);overflow:hidden;}
.mx-track{display:flex;width:max-content;animation:mxm 38s linear infinite;}
.mx-track p{font-family:var(--f-title);font-size:28px;letter-spacing:.06em;white-space:nowrap;padding:16px 0;margin:0!important;color:var(--bone);}
.mx-track p::after{content:"✦";color:var(--brass);margin:0 26px;font-size:16px;vertical-align:middle;}
.mx-track p:nth-child(even){color:transparent;-webkit-text-stroke:1px var(--stone);}
@keyframes mxm{to{transform:translateX(-50%);}}

.mx-q{font-size:46px!important;line-height:.98!important;max-width:880px;margin-bottom:26px!important;}
.mx-q em{font-style:normal;color:var(--brass);}
.mx-body{font-size:16px;color:var(--bone-dim);max-width:600px;}

.mx-grid{display:grid;grid-template-columns:1fr;gap:1px;background:var(--line);border:1px solid var(--line);}
.mx-cell{background:var(--ink);padding:30px 24px 28px;position:relative;transition:background .2s;min-height:230px;}
.mx-cell:hover{background:var(--card);}
.mx-cell .n{font-family:var(--f-title);font-size:84px;line-height:.8;color:transparent;-webkit-text-stroke:1px var(--brass);margin-bottom:18px!important;opacity:.85;}
.mx-cell h3{font-size:25px;margin-bottom:8px!important;}
.mx-cell p:not(.n){font-size:14px;color:var(--bone-dim);}

.mx-steps{display:grid;gap:0;}
.mx-step{display:grid;grid-template-columns:78px 1fr;gap:18px;padding:0 0 38px;position:relative;}
.mx-step:last-child{padding-bottom:0;}
.mx-step::before{content:"";position:absolute;left:38px;top:62px;bottom:0;width:1px;background:linear-gradient(var(--brass),var(--line));}
.mx-step:last-child::before{display:none;}
.mx-step .rn{width:76px;height:76px;border:1px solid var(--brass);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--f-title);font-size:30px;color:var(--brass);background:var(--ink);margin:0!important;}
.mx-step h3{font-size:28px;margin:4px 0 6px!important;}
.mx-step p:not(.rn):not(.off){font-size:14.5px;color:var(--bone-dim);max-width:520px;}
.mx-step .off{display:inline-block;margin-top:10px!important;font-family:var(--f-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);background:var(--brass);padding:4px 9px;border-radius:2px;}

.mx-cmp{display:grid;gap:14px;}

.mx-gbadge{display:inline-flex;align-items:center;gap:14px;border:1px solid var(--line);background:var(--card);padding:12px 18px;margin-bottom:34px;}
.mx-gbadge .sc{font-family:var(--f-title);font-size:40px;line-height:1;color:var(--brass);margin:0!important;}
.mx-gbadge .st,.mx-rev .st{color:var(--brass);letter-spacing:.16em;font-size:13px;margin:0!important;}
.mx-gbadge .sm{font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--stone);margin:0!important;}
.mx-feat{border-left:3px solid var(--brass);padding:4px 0 4px 22px;margin-bottom:34px;max-width:860px;}
.mx-feat .fq{font-family:var(--f-title);font-size:36px;line-height:1.02;letter-spacing:.02em;margin-bottom:14px!important;color:var(--bone);}
.mx-feat .fq em{font-style:normal;color:var(--brass);}
.mx-cite{font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--stone);}
.mx-reviews{display:grid;gap:14px;}
.mx-rev{background:var(--card);border:1px solid var(--line);padding:24px 22px;display:flex;flex-direction:column;gap:14px;}
.mx-rev .rq{font-size:14.5px;color:var(--bone-dim);}

.mx-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line);}
.mx-stat{background:var(--ink);padding:34px 14px;text-align:center;}
.mx-stat .v{font-family:var(--f-title);font-size:68px;line-height:.95;color:var(--brass);margin:0!important;}
.mx-stat .l{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--stone);margin-top:10px!important;}

.wp-block-gallery.mx-gal{display:grid!important;grid-template-columns:1fr;gap:12px;margin-top:8px;}
.wp-block-gallery.mx-gal.has-nested-images figure.wp-block-image{width:auto!important;margin:0!important;flex:none;}
.wp-block-gallery.mx-gal img{width:100%;height:260px;object-fit:cover;border:1px solid var(--line);display:block;}

.mx-prices{display:grid;gap:1px;background:var(--line);border:1px solid var(--line);margin-bottom:26px;}
.mx-price{background:var(--ink);padding:22px;display:grid;grid-template-columns:1fr auto;gap:4px 16px;align-items:baseline;}
.mx-price.hot{background:var(--card);box-shadow:inset 3px 0 0 var(--brass);}
.mx-price h3{font-size:24px;margin:0!important;}
.mx-price .p{font-family:var(--f-mono);font-weight:700;font-size:26px;color:var(--brass);text-align:right;}
.mx-price .p small{font-size:11px;color:var(--stone);font-weight:400;}
.mx-price .d{grid-column:1/-1;font-size:13px;color:var(--stone);}
.mx-price .tg{display:block;width:fit-content;font-family:var(--f-mono);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;background:var(--brass);color:var(--ink);padding:3px 7px;margin:8px 0 0;font-weight:400;}
@media(min-width:640px){.mx-price .tg{display:inline-block;margin:0 0 0 10px;vertical-align:middle;}}

.mx-faq{display:grid;gap:10px;max-width:820px;}
.mx-faq .wp-block-details{background:var(--card);border:1px solid var(--line);margin:0;}
.mx-faq .wp-block-details summary{list-style:none;cursor:pointer;padding:20px 22px;font-weight:600;font-size:15px;display:flex;justify-content:space-between;gap:16px;align-items:center;}
.mx-faq .wp-block-details summary::-webkit-details-marker{display:none;}
.mx-faq .wp-block-details summary::after{content:"+";font-family:var(--f-mono);font-size:22px;color:var(--brass);transition:transform .2s;flex:none;}
.mx-faq .wp-block-details[open] summary::after{transform:rotate(45deg);}
.mx-faq .wp-block-details[open]{border-color:var(--brass);}
.mx-faq .wp-block-details > p{padding:0 22px 22px;font-size:14.5px;color:var(--bone-dim);margin:0;}

.mx-final{background:var(--ink2);border-top:1px solid var(--line);}
.mx-final h2.wp-block-heading{font-size:56px;line-height:.94;margin-bottom:20px!important;}
.mx-info{display:grid;gap:22px;margin-top:38px;padding-top:30px;border-top:1px solid var(--line);font-size:14px;color:var(--bone-dim);}
.mx-info .t{font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--brass);margin-bottom:6px!important;}
.mx-info a{color:var(--bone-dim);text-decoration:underline;}

/* révélation au scroll (le script ajoute .mx-js sur <html>) */
.mx-js .mx-r{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease;}
.mx-js .mx-r.in{opacity:1;transform:none;}

/* ============================================================
   6. PAGE TARIFS
   ============================================================ */
.mx-pagehead h1.wp-block-heading{font-size:44px;line-height:1;max-width:820px;margin-bottom:18px!important;}
.mx-commit{border:1px solid var(--line);border-left:3px solid var(--brass);background:var(--card);padding:18px;display:flex;flex-direction:column;gap:8px;margin-bottom:40px;}
.mx-commit p{font-size:14px;color:var(--bone-dim);}
.mx-commit .mark{font-family:var(--f-mono);font-size:12px;color:var(--brass);}
.mx-seclabel{font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--stone);border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:20px!important;display:flex;justify-content:space-between;}
.mx-seclabel p{margin:0!important;}
.mx-plans{display:grid;grid-template-columns:1fr;gap:1px;background:var(--line);border:1px solid var(--line);margin-bottom:32px;}
.mx-plan{background:var(--ink);padding:24px 20px;display:flex;flex-direction:column;position:relative;}
.mx-plan.featured{background:var(--card);}
.mx-plan.popular{border:2px solid var(--brass);margin:-1px;}
.mx-plan .ref{font-family:var(--f-mono);font-size:10px;color:var(--stone);letter-spacing:.06em;margin-bottom:14px!important;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;align-items:center;}
.mx-plan .ref p{margin:0!important;}
.mx-plan .badge{font-family:var(--f-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);background:var(--brass);padding:4px 9px;border-radius:2px;white-space:nowrap;}
.mx-plan .badge.alt{background:#4B5A44;color:var(--bone);}
.mx-plan h3{font-size:26px;letter-spacing:.02em;margin-bottom:6px!important;}
.mx-plan .tagline{font-size:13.5px;color:var(--stone);margin-bottom:18px!important;}
.mx-plan .priceline{margin-bottom:20px!important;padding-bottom:18px;border-bottom:1px solid var(--line);font-family:var(--f-mono);font-size:12.5px;color:var(--stone);}
.mx-plan .priceline strong{font-weight:700;font-size:34px;color:var(--brass);margin-right:6px;}
.mx-specs{list-style:none;margin:0 0 20px;padding:0;flex-grow:1;}
.mx-specs li{display:flex;justify-content:space-between;gap:12px;font-size:13px;padding:9px 0;border-bottom:1px dashed var(--line);color:var(--stone);}
.mx-specs li:last-child{border-bottom:none;}
.mx-specs li strong{font-family:var(--f-mono);font-weight:500;text-align:right;color:var(--bone);font-size:12.5px;}
.mx-plan .wp-block-buttons{margin-top:auto;}
.mx-priv{border:1px solid var(--line);border-top:3px solid var(--brass);background:var(--card);padding:28px 22px;margin:40px 0;}
.mx-priv h3{font-size:26px;margin-bottom:6px!important;}
.mx-privgrid{display:grid;gap:0;}
.mx-privitem{padding:14px 0;border-bottom:1px dashed var(--line);}
.mx-privitem:last-child{border-bottom:none;}
.mx-privitem strong{display:block;color:var(--bone);font-size:14.5px;font-weight:600;}
.mx-privitem strong::before{content:"→ ";color:var(--brass);font-family:var(--f-mono);}
.mx-privitem p{font-size:13px;color:var(--bone-dim);}
.mx-carnets{display:grid;gap:12px;margin-bottom:48px;}
.mx-carnet{background:var(--card);border:1px solid var(--line);padding:20px;text-align:center;}
.mx-carnet .lb{font-family:var(--f-mono);font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--stone);margin-bottom:10px!important;}
.mx-carnet .pr{font-family:var(--f-mono);font-weight:700;font-size:28px;color:var(--brass);}
.mx-carnet .un{font-family:var(--f-mono);font-size:11px;color:var(--stone);margin-top:4px!important;}
.wp-block-table.mx-table{margin:0 0 40px;overflow-x:auto;}
.wp-block-table.mx-table table{border-collapse:collapse;width:100%;min-width:560px;font-size:14px;}
.wp-block-table.mx-table th{font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--stone);text-align:left;padding:12px 14px;border-bottom:1px solid var(--line);font-weight:500;}
.wp-block-table.mx-table th:nth-child(2){color:var(--brass);}
.wp-block-table.mx-table td{padding:14px;border-bottom:1px dashed var(--line);color:var(--stone);vertical-align:top;}
.wp-block-table.mx-table td:first-child{color:var(--bone);font-weight:600;}
.wp-block-table.mx-table td:nth-child(2){color:var(--bone);}
.wp-block-table.mx-table table,.wp-block-table.mx-table th,.wp-block-table.mx-table td{border-left:0;border-right:0;border-top:0;}
.mx-fine{margin-top:48px;padding-top:24px;border-top:1px solid var(--line);}
.mx-fine h3{font-size:24px;margin-bottom:16px!important;}
.mx-finegrid{display:grid;gap:20px;}
.mx-finegrid .t{font-family:var(--f-mono);font-size:11px;color:var(--brass);letter-spacing:.06em;text-transform:uppercase;margin-bottom:6px!important;}
.mx-finegrid p:not(.t){font-size:13.5px;color:var(--bone-dim);}
.mx-booking{margin-top:48px;padding-top:32px;border-top:1px solid var(--line);scroll-margin-top:90px;}
.mx-booking-frame{background:var(--card);border:1px solid var(--line);padding:16px;max-width:520px;margin:0 auto;min-height:120px;}

/* ============================================================
   7. FORMULAIRE ET POP-UP
   ============================================================ */
.mxf{background:var(--ink);padding:0;}
.mxf *{box-sizing:border-box;}
.mxf form{display:grid;gap:18px;max-width:640px;}
.mxf-row{display:grid;gap:18px;}
.mxf label{display:block;font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--stone);margin-bottom:8px;}
.mxf .req,.mxp .req{color:var(--brass);}
.mxf input[type=text],.mxf input[type=email],.mxf input[type=tel],.mxf select,.mxf textarea,
.mxp input[type=text],.mxp input[type=tel],.mxp input[type=email]{
  width:100%;background:var(--card);border:1px solid var(--line);border-radius:10px;color:var(--bone);
  font-family:'Inter',sans-serif;font-size:16px;padding:15px 16px;min-height:52px;outline:none;
  transition:border-color .15s,box-shadow .15s;-webkit-appearance:none;appearance:none;
}
.mxf textarea{min-height:130px;resize:vertical;}
.mxf select{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' fill='none' stroke='%23B8873F' stroke-width='2'/></svg>");background-repeat:no-repeat;background-position:right 16px center;padding-right:42px;}
.mxf input::placeholder,.mxf textarea::placeholder,.mxp input::placeholder{color:#6d6a5f;}
.mxf input:focus,.mxf select:focus,.mxf textarea:focus,.mxp input:focus{border-color:var(--brass);box-shadow:0 0 0 3px rgba(184,135,63,.22);}
.mxf .invalid,.mxp .invalid{border-color:var(--err)!important;}
.mxf .hp,.mxp .hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;}
.mxf-consent,.mxp-consent{display:flex;gap:12px;align-items:flex-start;font-size:13px;color:var(--bone-dim);}
.mxf-consent input,.mxp-consent input{flex:none;width:22px;height:22px;margin-top:1px;accent-color:#B8873F;}
.mxf .mxf-consent label,.mxp .mxp-consent label{all:unset;cursor:pointer;line-height:1.5;}
.mxf-btn,.mxp-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:100%;font-family:var(--f-mono);font-size:14px;letter-spacing:.06em;text-transform:uppercase;font-weight:700;color:var(--ink);background:var(--brass);padding:18px 24px;border:none;border-radius:12px;min-height:56px;cursor:pointer;transition:background .18s,transform .18s;}
.mxf-btn:hover,.mxp-btn:hover{background:var(--bone);}
.mxf-btn:active,.mxp-btn:active{transform:scale(.98);}
.mxf-btn:disabled,.mxp-btn:disabled{opacity:.6;cursor:wait;}
.mxf-btn:focus-visible,.mxp-btn:focus-visible,.mxp-x:focus-visible{outline:2px solid var(--bone);outline-offset:3px;}
.mxf-msg,.mxp-msg{display:none;padding:16px 18px;border:1px solid var(--line);border-left:3px solid var(--brass);background:var(--card);font-size:14.5px;}
.mxf-msg.show,.mxp-msg.show{display:block;}
.mxf-msg.ok{border-left-color:var(--ok);}
.mxf-msg.ko,.mxp-msg{border-left-color:var(--err);}
.mxf-msg strong,.mxp-msg strong{display:block;color:var(--bone);margin-bottom:2px;}
.mxf-note,.mxp-note{font-size:12px;color:var(--stone);margin:0;}

.mxp{position:fixed;inset:0;z-index:99999;display:none;align-items:center;justify-content:center;padding:16px;background:rgba(10,9,6,.78);color:var(--bone);line-height:1.6;}
.mxp *{box-sizing:border-box;}
.mxp.open{display:flex;animation:mxpf .25s ease;}
@keyframes mxpf{from{opacity:0}to{opacity:1}}
.mxp-box{position:relative;width:100%;max-width:520px;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow:auto;background:var(--ink);border:1px solid var(--line);border-top:3px solid var(--brass);padding:34px 24px 26px;animation:mxpu .3s ease;}
@keyframes mxpu{from{transform:translateY(14px);opacity:0}to{transform:none;opacity:1}}
.mxp-x{position:absolute;top:6px;right:6px;width:44px;height:44px;border:none;background:transparent;color:var(--bone-dim);font-size:28px;line-height:1;cursor:pointer;border-radius:8px;}
.mxp-x:hover{color:var(--brass);}
.mxp-eyebrow{font-family:var(--f-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--brass);margin:0 0 10px;display:flex;align-items:center;gap:12px;}
.mxp-eyebrow::before{content:"";width:24px;height:1px;background:var(--brass);}
.mxp h2{font-family:var(--f-title);font-weight:400;letter-spacing:.02em;font-size:38px;line-height:1;margin:0 0 10px;color:var(--bone);}
.mxp .mxp-sub{font-size:14px;color:var(--bone-dim);margin:0 0 20px;}
.mxp-chips{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 20px;}
.mxp-chips span{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--line);background:var(--card);padding:5px 9px;color:var(--bone);}
.mxp-chips b{color:var(--brass);font-weight:700;margin-right:5px;}
.mxp form{display:grid;gap:14px;}
.mxp label{display:block;font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--stone);margin-bottom:6px;}
.mxp input[type=text],.mxp input[type=tel],.mxp input[type=email]{padding:14px 15px;min-height:50px;}
.mxp-two{display:grid;gap:14px;}
.mxp-consent{font-size:12.5px;}
.mxp-done{display:none;padding:8px 0 4px;}
.mxp-done.show{display:block;}
.mxp-done .tick{width:44px;height:44px;border-radius:50%;background:var(--brass);color:var(--ink);font-size:22px;font-weight:700;display:flex;align-items:center;justify-content:center;margin-bottom:16px;}
.mxp-skip{background:none;border:none;color:var(--stone);font-size:12.5px;text-decoration:underline;cursor:pointer;padding:8px;margin:0 auto;display:block;}
.mxp-skip:hover{color:var(--bone);}
body.mxp-lock{overflow:hidden;}

/* ============================================================
   8. ARTICLES, PAGES SIMPLES, 404
   ============================================================ */
.mx-article{max-width:760px;margin:0 auto;padding:56px 20px 80px;}
.mx-article h1.wp-block-post-title{font-size:48px;line-height:1;margin-bottom:24px;}
.mx-article .wp-block-post-content p{margin:0 0 1.2em;font-size:16.5px;color:var(--bone-dim);line-height:1.75;}
.mx-article .wp-block-post-content h2{font-size:34px;margin:1.6em 0 .5em;}
.mx-article .wp-block-post-content h3{font-size:26px;margin:1.4em 0 .4em;}
.mx-article .wp-block-post-content a{text-decoration:underline;}
.mx-article .wp-block-post-content ul,.mx-article .wp-block-post-content ol{color:var(--bone-dim);line-height:1.75;}
.mx-article .wp-block-post-date,.mx-article .wp-block-post-terms{font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--stone);}
.mx-blog-list{max-width:1120px;margin:0 auto;padding:56px 20px 80px;}
.mx-postcard{background:var(--card);border:1px solid var(--line);padding:22px;}
.mx-postcard .wp-block-post-title{font-size:28px;}
.mx-postcard .wp-block-post-title a{color:var(--bone);}
.mx-postcard .wp-block-post-excerpt{color:var(--bone-dim);font-size:14.5px;}
.mx-notfound{padding:120px 20px;text-align:center;}
.mx-notfound h1{font-size:120px;color:var(--brass);}

/* ============================================================
   9. TABLETTE ET ORDINATEUR
   ============================================================ */
@media(min-width:640px){
  .mx-wrap{padding:0 32px;}
  .mx-header-in{padding:0 32px;}
  .mx-sec{padding:100px 0;}
  main h2.wp-block-heading,.mx-h2{font-size:56px;}
  .mx-hero h1{font-size:92px;}
  .wp-block-buttons.mx-btns{grid-template-columns:1fr 1fr;}
  .wp-block-buttons.mx-btns.one{grid-template-columns:1fr;}
  .mx-q{font-size:76px!important;}
  .mx-grid{grid-template-columns:repeat(2,1fr);}
  .mx-cmp{grid-template-columns:1fr 1fr;}
  .mx-reviews{grid-template-columns:repeat(2,1fr);}
  .mx-feat .fq{font-size:52px;}
  .mx-stats{grid-template-columns:repeat(4,1fr);}
  .mx-stat .v{font-size:84px;}
  .wp-block-gallery.mx-gal{grid-template-columns:repeat(3,1fr);}
  .wp-block-gallery.mx-gal img{height:320px;}
  .mx-final h2.wp-block-heading{font-size:92px;}
  .mx-info{grid-template-columns:repeat(3,1fr);}
  .mx-pagehead h1.wp-block-heading{font-size:72px;}
  .mx-plans{grid-template-columns:repeat(2,1fr);}
  .mx-privgrid{grid-template-columns:repeat(2,1fr);gap:0 32px;}
  .mx-carnets{grid-template-columns:repeat(3,1fr);}
  .mx-finegrid{grid-template-columns:repeat(3,1fr);gap:32px;}
  .mx-split{grid-template-columns:1fr 1fr;gap:64px;}
  .mxp-two,.mxf-row.two{grid-template-columns:1fr 1fr;}
  .mxp-box{padding:40px 36px 30px;}
  .mxp h2{font-size:48px;}
}
@media(min-width:960px){
  .mx-hero .wp-block-buttons.mx-btns{grid-template-columns:1.5fr 1fr;}
  .wp-block-cover.mx-hero .wp-block-cover__inner-container{grid-template-columns:1.25fr .75fr;align-items:center;gap:56px;}
  .mx-hero h1{font-size:112px;}
  .mx-hero:not(:has(.wp-block-cover__image-background,.wp-block-cover__video-background))::after{right:-90px;top:-60px;bottom:auto;width:680px;height:680px;opacity:.45;}
  .mx-grid{grid-template-columns:repeat(4,1fr);}
  .mx-reviews{grid-template-columns:repeat(3,1fr);}
  .mx-grid .mx-cell{min-height:300px;}
  .mx-plans{grid-template-columns:repeat(4,1fr);}
}
@media(prefers-reduced-motion:reduce){
  .mx-track{animation:none;}
  .mx-js .mx-r{opacity:1;transform:none;transition:none;}
  html{scroll-behavior:auto;}
}

/* ============================================================
   10. UTILITAIRES DE MISE EN PAGE
   ============================================================ */
.mx-nopt{padding-top:0;}
.mx-nobot{padding-bottom:24px;}
.mx-notop{padding-top:24px;}
.mx-tight{padding:68px 0;}
.mx-pt{padding-top:44px;}
.mx-mt{margin-top:36px!important;}
.mx-pagehead{padding-top:56px;}
.mx-pagehead .mx-lede{margin-bottom:0!important;}
.mx-split{display:grid;gap:44px;}
.mx-header-r{display:flex;align-items:center;gap:20px;}
.mx-header-in > .wp-block-group:first-child{display:flex;align-items:center;gap:14px;}
.mx-h3{font-size:26px;margin-bottom:6px!important;}
.mx-fbrand{font-family:var(--f-title);font-size:34px;line-height:1;color:var(--bone);letter-spacing:.04em;}
.mx-contactinfo{grid-template-columns:1fr!important;margin-top:0;padding-top:0;border-top:0;}
.mx-endcta{margin-top:56px;padding:28px 22px;border:1px solid var(--line);border-top:3px solid var(--brass);background:var(--card);}
.mx-endcta h3{margin-bottom:18px!important;font-size:30px;}
@media(min-width:640px){.mx-tight{padding:100px 0;}.mx-pagehead{padding-top:80px;}}

/* ---------- Cases en quinconce (bloc Média et texte) ---------- */
.mx-zig .wp-block-media-text{grid-template-columns:44% 1fr;gap:0;margin:0 0 72px;align-items:center}
.mx-zig .wp-block-media-text.has-media-on-the-right{grid-template-columns:1fr 44%}
.mx-zig .wp-block-media-text__media{margin:0}
.mx-zig .wp-block-media-text__media img,.mx-zig .wp-block-media-text__media video{width:100%;aspect-ratio:4/5;height:auto;object-fit:cover;border-radius:6px;display:block}
.mx-zig .wp-block-media-text__media:empty{background:var(--wp--preset--color--card);border:1px dashed var(--wp--preset--color--line);min-height:360px;border-radius:6px}
.mx-zig .wp-block-media-text__content{padding:0 7%}
.mx-zig .wp-block-media-text__content .mx-btns{margin-top:26px}
@media (max-width:900px){
.mx-zig .wp-block-media-text,.mx-zig .wp-block-media-text.has-media-on-the-right{grid-template-columns:100%!important;margin-bottom:48px}
.mx-zig .wp-block-media-text .wp-block-media-text__media,.mx-zig .wp-block-media-text.has-media-on-the-right .wp-block-media-text__media{grid-column:1;grid-row:1}
.mx-zig .wp-block-media-text .wp-block-media-text__content,.mx-zig .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content{grid-column:1;grid-row:2;padding:26px 0 0}
}
