﻿/* m-content : design mobile des pages de contenu (<= 759px)
   Propriétaire : agent "content". Desktop (>= 1024) inchangé. */

/* —— Helpers affichage m-only en flex / block —— */
@media (max-width: 759px) {
  .m-only.post-toc-m,
  .m-only.legal-nav-m,
  .m-only.post-faq-m { display: block !important; }
  .m-only[data-m="agence-hero-rail"],
  .m-only[data-m="team-rail"] { display: flex !important; }
  .m-only[data-m="404-icon"] { display: flex !important; }
  .m-only.m-read-progress { display: block !important; }
}

/* ========== BLOG ========== */
@media (max-width: 759px) {
  .m-blog[data-m="page"] {
    padding: 20px var(--m-gutter) 40px !important;
    gap: 18px !important;
    box-sizing: border-box;
    max-width: 100% !important;
  }
  .m-blog h1 {
    font-size: 1.85rem !important;
    line-height: 1.12 !important;
  }
  .m-blog [data-m="lede"] {
    font-size: 16px !important;
    line-height: 1.55 !important;
  }

  .m-blog [data-m="blog-cats-wrap"] {
    margin: 0 calc(var(--m-gutter) * -1);
    padding: 0 var(--m-gutter);
  }
  .m-blog .blog-cats {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    padding: 4px 0 10px;
    margin: 0 !important;
  }
  .m-blog .blog-cats::-webkit-scrollbar { display: none; }
  .m-blog .blog-cats li { flex: none; }
  .m-blog .blog-cats a {
    min-height: var(--m-tap) !important;
    padding: 0 16px !important;
    font-size: 15px !important;
    white-space: nowrap;
    box-shadow: var(--m-shadow);
  }

  .m-blog [data-m="blog-feat"] {
    display: flex !important;
    flex-direction: column !important;
    border-radius: var(--m-radius) !important;
    box-shadow: var(--m-shadow);
    border-color: var(--c-line) !important;
  }
  .m-blog [data-m="blog-feat-media"] {
    min-height: 160px !important;
    aspect-ratio: 16 / 10;
  }
  .m-blog [data-m="blog-feat-body"] {
    padding: 18px !important;
    gap: 8px !important;
  }
  .m-blog [data-m="blog-feat-body"] h2 {
    font-size: 1.35rem !important;
    line-height: 1.2 !important;
  }

  .m-blog [data-m="blog-grid"] {
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
  }
  .m-blog [data-m="blog-card"] {
    border-radius: var(--m-radius) !important;
    box-shadow: var(--m-shadow);
    min-height: 0;
  }
  .m-blog [data-m="blog-card-media"] {
    height: 140px !important;
  }
  .m-blog [data-m="blog-card-body"] {
    padding: 16px 18px 18px !important;
    gap: 6px !important;
  }
  .m-blog [data-m="blog-card-body"] strong {
    font-size: 1.1rem !important;
  }

  .m-blog [data-m="blog-pager"] a,
  .m-blog [data-m="blog-pager"] span[aria-current] {
    min-width: 48px !important;
    min-height: 48px !important;
    height: 48px !important;
  }
  .m-blog [data-m="blog-pager"] a[rel] {
    padding: 0 18px !important;
    display: inline-flex !important;
    align-items: center !important;
  }
}

/* ========== ARTICLE ========== */
@media (max-width: 759px) {
  .m-read-progress {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    z-index: 90;
    background: rgba(231, 225, 214, .55);
    pointer-events: none;
  }
  .m-read-progress span {
    display: block;
    height: 100%;
    width: 0;
    background: linear-gradient(90deg, var(--c-green), var(--c-coral));
    transition: width .08s linear;
  }

  .post.m-article,
  .m-article[data-m="article-simple"] {
    padding: 18px var(--m-gutter) 48px !important;
    gap: 16px !important;
    max-width: 100% !important;
    box-sizing: border-box;
  }
  .post.m-article .post-head {
    gap: 14px !important;
  }
  .post.m-article h1,
  .m-article[data-m="article-simple"] h1 {
    font-size: 1.75rem !important;
    line-height: 1.15 !important;
  }
  .post.m-article .post-chapo,
  .m-article [data-m="chapo"] {
    font-size: 17px !important;
    line-height: 1.55 !important;
  }
  .post.m-article .post-meta {
    font-size: 14px !important;
  }
  .post.m-article .post-hero {
    border-radius: var(--m-radius) !important;
    padding: 18px !important;
    aspect-ratio: 4 / 3 !important;
  }
  .post.m-article .post-hero span {
    font-size: 1.25rem !important;
  }
  .post.m-article .post-brief {
    border-radius: var(--m-radius-sm) !important;
    padding: 16px 18px !important;
    background: var(--c-green-soft) !important;
  }
  .post.m-article .post-brief p {
    font-size: 16px !important;
    line-height: 1.55 !important;
  }

  /* Sommaire mobile accordéon */
  .post-toc-m {
    background: #fff;
    border: 1px solid var(--c-line);
    border-radius: var(--m-radius-sm);
    padding: 0;
    box-shadow: var(--m-shadow);
    margin: 0;
  }
  .post-toc-m > summary {
    list-style: none;
    cursor: pointer;
    min-height: var(--m-tap);
    padding: 14px 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    font-family: Outfit, sans-serif;
    font-weight: 800;
    font-size: 16px;
    color: var(--c-green);
  }
  .post-toc-m > summary::-webkit-details-marker { display: none; }
  .post-toc-m > summary::after {
    content: '';
    width: 10px;
    height: 10px;
    border-right: 2.5px solid var(--c-green);
    border-bottom: 2.5px solid var(--c-green);
    transform: rotate(45deg);
    transition: transform .2s ease;
    flex: none;
    margin-top: -4px;
  }
  .post-toc-m[open] > summary::after {
    transform: rotate(-135deg);
    margin-top: 4px;
  }
  .post-toc-m nav {
    padding: 0 18px 16px;
    border-top: 1px solid var(--c-line);
  }
  .post-toc-m ol {
    margin: 12px 0 0;
    padding-left: 1.2em;
    display: flex;
    flex-direction: column;
    gap: 10px;
  }
  .post-toc-m a {
    color: var(--c-ink);
    text-decoration: none;
    font-weight: 700;
    font-size: 15px;
    line-height: 1.4;
    display: inline-block;
    padding: 4px 0;
  }
  .post-toc-m a:focus-visible {
    outline: 3px solid var(--c-coral);
    outline-offset: 2px;
  }

  .post.m-article .post-body,
  .m-article [data-m="simple-body"] {
    font-size: 17.5px !important;
    line-height: 1.75 !important;
    gap: 16px !important;
  }
  .post.m-article .post-body h2,
  .m-article [data-m="simple-body"] h2 {
    font-size: 1.35rem !important;
    margin-top: 12px !important;
    scroll-margin-top: 72px !important;
  }
  .post.m-article .post-body h3 {
    font-size: 1.1rem !important;
    scroll-margin-top: 72px !important;
  }
  .post.m-article .post-note,
  .m-article [data-m="note"] {
    border-radius: var(--m-radius-sm) !important;
    padding: 18px !important;
    font-size: 16px !important;
    margin: 4px 0;
  }

  .post.m-article .post-faq {
    gap: 12px !important;
  }
  .post.m-article .post-faq h2 {
    font-size: 1.35rem !important;
  }
  .post-faq-item {
    background: #fff;
    border: 1px solid var(--c-line);
    border-radius: var(--m-radius-sm);
    overflow: hidden;
  }
  .post-faq-item > summary {
    list-style: none;
    cursor: pointer;
    min-height: var(--m-tap);
    padding: 14px 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    font-family: Outfit, sans-serif;
    font-weight: 700;
    font-size: 16px;
    line-height: 1.35;
    color: var(--c-green);
  }
  .post-faq-item > summary::-webkit-details-marker { display: none; }
  .post-faq-item > summary::after {
    content: '+';
    flex: none;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: var(--c-sand);
    color: var(--c-green);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
    font-size: 18px;
  }
  .post-faq-item[open] > summary::after { content: '−'; }
  .post-faq-item > p {
    margin: 0 !important;
    padding: 0 18px 16px !important;
    font-size: 16px !important;
    line-height: 1.6 !important;
    color: var(--c-ink-2);
  }

  .post.m-article .post-cta,
  .m-article [data-m="cta"] {
    flex-direction: column !important;
    align-items: stretch !important;
    border-radius: var(--m-radius) !important;
    padding: 20px !important;
    gap: 14px !important;
  }
  .post.m-article .post-cta a,
  .m-article [data-m="cta"] a {
    width: 100%;
    min-height: var(--m-tap) !important;
    height: auto !important;
    justify-content: center;
    border-radius: var(--m-radius-sm) !important;
    box-sizing: border-box;
  }
  .post.m-article .post-related a.rel,
  .m-article [data-m="rel"] {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 4px !important;
    padding: 14px 0 !important;
    min-height: var(--m-tap);
  }
  .post.m-article .post-related a.rel span,
  .m-article [data-m="rel"] span {
    white-space: normal !important;
  }
}

/* ========== FAQ ========== */
@media (max-width: 759px) {
  .m-faq[data-m="page"] {
    padding: 20px var(--m-gutter) 40px !important;
    gap: 20px !important;
    max-width: 100% !important;
    box-sizing: border-box;
  }
  .m-faq h1 {
    font-size: 1.75rem !important;
    line-height: 1.15 !important;
  }
  .m-faq [data-m="faq-group"] {
    gap: 12px !important;
  }
  .m-faq [data-m="faq-group-title"] {
    font-size: 1.05rem !important;
    margin: 12px 0 0 !important;
    letter-spacing: .01em;
  }
  .m-faq [data-m="faq-item"] {
    border-radius: var(--m-radius-sm) !important;
    box-shadow: var(--m-shadow);
    overflow: hidden;
  }
  .m-faq .faq-q {
    min-height: var(--m-tap) !important;
    padding: 16px 18px !important;
    font-size: 16px !important;
    line-height: 1.35 !important;
    gap: 12px !important;
    align-items: flex-start !important;
  }
  .m-faq .faq-q > span {
    width: 36px !important;
    height: 36px !important;
    margin-top: 0 !important;
    font-size: 18px !important;
  }
  .m-faq .faq-a {
    padding: 0 18px 18px !important;
    font-size: 16px !important;
    line-height: 1.65 !important;
  }
}

/* ========== LEGAL ========== */
@media (max-width: 759px) {
  .m-legal[data-m="page"] {
    display: flex !important;
    flex-direction: column !important;
    padding: 20px var(--m-gutter) 40px !important;
    gap: 18px !important;
    max-width: 100% !important;
    box-sizing: border-box;
  }
  .legal-nav-m {
    background: #fff;
    border: 1px solid var(--c-line);
    border-radius: var(--m-radius-sm);
    box-shadow: var(--m-shadow);
  }
  .legal-nav-m > summary {
    list-style: none;
    cursor: pointer;
    min-height: var(--m-tap);
    padding: 14px 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-family: Outfit, sans-serif;
    font-weight: 800;
    font-size: 16px;
    color: var(--c-green);
  }
  .legal-nav-m > summary::-webkit-details-marker { display: none; }
  .legal-nav-m > summary::after {
    content: '';
    width: 10px;
    height: 10px;
    border-right: 2.5px solid var(--c-green);
    border-bottom: 2.5px solid var(--c-green);
    transform: rotate(45deg);
    transition: transform .2s ease;
    margin-top: -4px;
  }
  .legal-nav-m[open] > summary::after {
    transform: rotate(-135deg);
    margin-top: 4px;
  }
  .legal-nav-m nav {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 0 10px 12px;
    border-top: 1px solid var(--c-line);
  }
  .legal-nav-m a {
    text-decoration: none;
    color: var(--c-ink);
    font-weight: 700;
    padding: 12px 10px;
    border-radius: 10px;
    min-height: 44px;
    display: flex;
    align-items: center;
    font-size: 15px;
  }
  .legal-nav-m a.is-current,
  .legal-nav-m a[aria-current="page"] {
    background: var(--c-green-tint);
    color: var(--c-green);
  }
  .legal-nav-m a:focus-visible {
    outline: 3px solid var(--c-coral);
    outline-offset: 1px;
  }

  .m-legal .legal-doc {
    gap: 18px !important;
  }
  .m-legal .legal-doc h1 {
    font-size: 1.7rem !important;
  }
  .m-legal .legal-upd {
    font-size: 14px !important;
  }
  .m-legal .legal-sec {
    gap: 10px !important;
    padding: 16px 18px;
    background: #fff;
    border: 1px solid var(--c-line);
    border-radius: var(--m-radius-sm);
  }
  .m-legal .legal-sec h2 {
    font-size: 1.15rem !important;
    margin: 0 !important;
  }
  .m-legal .legal-sec p,
  .m-legal .legal-sec li {
    font-size: 15.5px !important;
    line-height: 1.65 !important;
  }
  .m-legal [data-m="tap"],
  .m-legal #reopen-cookies {
    width: 100%;
    min-height: var(--m-tap) !important;
    height: auto !important;
    border-radius: var(--m-radius-sm) !important;
    justify-content: center;
  }
}

/* ========== PLAN DU SITE ========== */
@media (max-width: 759px) {
  .m-plan[data-m="page"] {
    padding: 20px var(--m-gutter) 40px !important;
    gap: 18px !important;
    max-width: 100% !important;
    box-sizing: border-box;
  }
  .m-plan h1 {
    font-size: 1.75rem !important;
  }
  .m-plan [data-m="plan-grid"] {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
  }
  .m-plan [data-m="plan-card"] {
    background: #fff;
    border: 1px solid var(--c-line);
    border-radius: var(--m-radius-sm);
    padding: 16px 18px;
    gap: 4px !important;
    box-shadow: var(--m-shadow);
  }
  .m-plan [data-m="plan-card"] h2 {
    font-size: 1.05rem !important;
    margin-bottom: 8px !important;
  }
  .m-plan [data-m="plan-link"] {
    display: flex;
    align-items: center;
    min-height: 48px;
    padding: 8px 0;
    font-size: 16px;
    font-weight: 700;
    color: var(--c-ink);
    text-decoration: none;
    border-bottom: 1px solid var(--c-sand);
  }
  .m-plan [data-m="plan-link"]:last-of-type {
    border-bottom: 0;
  }
  .m-plan [data-m="plan-link"]:focus-visible {
    outline: 3px solid var(--c-coral);
    outline-offset: 2px;
  }
}

/* ========== 404 ========== */
@media (max-width: 759px) {
  .m-404[data-m="page"] {
    padding: 40px var(--m-gutter) 48px !important;
    gap: 14px !important;
    max-width: 100% !important;
    box-sizing: border-box;
  }
  .m-404 [data-m="404-code"] {
    font-size: 4.5rem !important;
  }
  .m-404 [data-m="404-icon"] {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: var(--c-coral-soft);
    color: var(--c-rust);
    align-items: center;
    justify-content: center;
    font-size: 32px;
    margin: -4px 0 4px;
  }
  .m-404 h1 {
    font-size: 1.55rem !important;
    line-height: 1.2 !important;
  }
  .m-404 [data-m="lede"] {
    font-size: 16px !important;
    max-width: 28em;
  }
  .m-404 [data-m="404-actions"] {
    flex-direction: column !important;
    width: 100%;
    gap: 10px !important;
    margin-top: 8px;
  }
  .m-404 [data-m="404-actions"] a {
    width: 100%;
    min-height: var(--m-tap) !important;
    height: auto !important;
    justify-content: center;
    gap: 8px;
    border-radius: var(--m-radius-sm) !important;
    box-sizing: border-box;
    font-size: 16px;
  }
  .m-404 [data-m="404-actions"] a .m-only {
    display: inline-flex !important;
    font-size: 20px;
  }
}

/* ========== AGENCE ========== */
@media (max-width: 759px) {
  .m-agence [data-m="agence-hero"] {
    display: flex !important;
    flex-direction: column !important;
    padding: 24px var(--m-gutter) 0 !important;
    gap: 22px !important;
    box-sizing: border-box;
  }
  .m-agence [data-m="agence-hero-copy"] {
    gap: 12px !important;
  }
  .m-agence [data-m="agence-hero-copy"] h1 {
    font-size: 1.85rem !important;
  }
  .m-agence [data-m="lede"] {
    font-size: 16px !important;
    line-height: 1.55 !important;
  }
  .m-agence [data-m="agence-cta"] {
    flex-direction: column !important;
    gap: 10px !important;
  }
  .m-agence [data-m="agence-cta"] a {
    width: 100%;
    min-height: var(--m-tap) !important;
    height: auto !important;
    justify-content: center;
    border-radius: var(--m-radius-sm) !important;
    box-sizing: border-box;
  }

  .m-agence [data-m="agence-hero-rail"] {
    display: flex !important;
    gap: 14px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    margin: 0 calc(var(--m-gutter) * -1);
    padding: 8px var(--m-gutter) 16px;
    background: linear-gradient(160deg, var(--c-green-soft), var(--c-sand));
    border-radius: 0;
  }
  .m-agence [data-m="agence-hero-rail"]::-webkit-scrollbar { display: none; }
  .m-agence [data-m="agence-hero-rail"] figure {
    flex: none;
    width: 112px;
    margin: 0;
    scroll-snap-align: start;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    text-align: center;
  }
  .m-agence [data-m="agence-hero-rail"] img {
    width: 96px;
    height: 96px;
    object-fit: cover;
    object-position: center 18%;
    border-radius: 50%;
    border: 4px solid #fff;
    background: #fff;
    box-shadow: var(--m-shadow);
  }
  .m-agence [data-m="agence-hero-rail"] figcaption {
    font-family: Outfit, sans-serif;
    font-weight: 700;
    font-size: 13px;
    color: var(--c-ink);
    line-height: 1.2;
  }

  .m-agence [data-m="agence-team"] {
    padding: 40px var(--m-gutter) 0 !important;
    gap: 16px !important;
  }
  .m-agence [data-m="agence-team"] h2 {
    font-size: 1.45rem !important;
  }

  .m-agence [data-m="team-rail"] {
    display: flex !important;
    gap: 14px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    margin: 0 calc(var(--m-gutter) * -1);
    padding: 4px var(--m-gutter) 12px;
  }
  .m-agence [data-m="team-rail"]::-webkit-scrollbar { display: none; }
  .m-agence [data-m="team-card"] {
    flex: none;
    width: min(78vw, 280px);
    scroll-snap-align: center;
    background: #fff;
    border: 1px solid var(--c-line);
    border-radius: var(--m-radius);
    padding: 20px 18px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    text-align: center;
    box-shadow: var(--m-shadow);
  }
  .m-agence [data-m="team-photo"] {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    overflow: hidden;
    border: 4px solid var(--c-green-soft);
    background: var(--c-sand);
  }
  .m-agence [data-m="team-photo"] img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 18%;
  }
  .m-agence [data-m="team-card"] > strong {
    font-family: Outfit, sans-serif;
    font-size: 1.2rem;
    margin-top: 4px;
  }
  .m-agence [data-m="team-role"] {
    background: var(--c-sand);
    border-radius: 99px;
    padding: 4px 12px;
    font-size: 13px;
    font-weight: 700;
  }
  .m-agence [data-m="team-org"] {
    font-size: 13px;
    color: var(--c-ink-2);
  }
  .m-agence [data-m="team-bio"] {
    margin: 0;
    color: var(--c-ink-2);
    line-height: 1.5;
    font-size: 14px;
    font-style: italic;
  }
  .m-agence [data-m="team-skills"] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    justify-content: center;
  }
  .m-agence [data-m="team-skills"] span {
    background: var(--c-green-soft);
    color: var(--c-green);
    border-radius: 99px;
    padding: 4px 10px;
    font-size: 12px;
    font-weight: 700;
  }

  .m-agence [data-m="agence-values"] {
    padding: 36px var(--m-gutter) 0 !important;
  }
  .m-agence [data-m="values-grid"] {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
  }
  .m-agence [data-m="value-card"] {
    border-radius: var(--m-radius-sm) !important;
    padding: 16px 14px !important;
    gap: 6px !important;
    box-shadow: var(--m-shadow);
  }
  .m-agence [data-m="value-card"]:last-child {
    grid-column: 1 / -1;
  }
  .m-agence [data-m="value-card"] strong {
    font-size: 1rem !important;
  }
  .m-agence [data-m="value-card"] > span:last-child {
    font-size: 14px !important;
    line-height: 1.45 !important;
  }
  .m-agence [data-m="value-card"] > span[aria-hidden] {
    width: 44px !important;
    height: 44px !important;
    font-size: 22px !important;
  }

  .m-agence [data-m="agence-contact"] {
    margin-top: 40px !important;
  }
  .m-agence [data-m="agence-contact"] > div {
    padding: 36px var(--m-gutter) !important;
    gap: 18px !important;
  }
  .m-agence [data-m="ag-tabs"] {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
  }
  .m-agence [data-m="ag-tabs"] a {
    min-height: var(--m-tap);
    border-radius: var(--m-radius-sm) !important;
  }
  .m-agence [data-m="ag-split"] {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
  }
  .m-agence [data-m="ag-form"] {
    border-radius: var(--m-radius) !important;
    padding: 18px !important;
  }
  .m-agence [data-m="chip-grid"] {
    grid-template-columns: repeat(3, 1fr) !important;
  }
  .m-agence [data-m="agence-zones"] {
    padding: 36px var(--m-gutter) 24px !important;
  }
  .m-agence [data-m="communes"] {
    gap: 8px !important;
  }
  .m-agence [data-m="communes"] span {
    font-size: 14px !important;
    padding: 8px 12px !important;
  }
}

/* ========== PARTENAIRE ========== */
@media (max-width: 759px) {
  .m-partner [data-m="partner-hero-inner"] {
    padding: 32px var(--m-gutter) 36px !important;
    gap: 14px !important;
  }
  .m-partner [data-m="partner-hero-inner"] h1 {
    font-size: 1.85rem !important;
  }
  .m-partner [data-m="lede"] {
    font-size: 16px !important;
    line-height: 1.55 !important;
  }
  .m-partner [data-m="partner-hero-inner"] a[data-m="tap"] {
    width: 100%;
    justify-content: center;
    min-height: var(--m-tap) !important;
    height: auto !important;
    border-radius: var(--m-radius-sm) !important;
    box-sizing: border-box;
  }

  .m-partner [data-m="partner-steps"] {
    padding: 36px var(--m-gutter) 0 !important;
    gap: 16px !important;
  }
  .m-partner [data-m="partner-steps"] h2 {
    font-size: 1.45rem !important;
  }
  .m-partner [data-m="steps-grid"] {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
  }
  .m-partner [data-m="step-card"] {
    background: #fff;
    border: 1px solid var(--c-line);
    border-radius: var(--m-radius-sm);
    padding: 16px 18px;
    box-shadow: var(--m-shadow);
  }
  .m-partner [data-m="step-card"] span:last-child {
    font-size: 15px !important;
  }

  .m-partner [data-m="partner-perks"] {
    padding: 28px var(--m-gutter) 0 !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
  }
  .m-partner [data-m="perk-card"] {
    border-radius: var(--m-radius-sm) !important;
    padding: 14px !important;
    box-shadow: var(--m-shadow);
  }
  .m-partner [data-m="perk-card"] strong {
    font-size: 0.95rem !important;
  }
  .m-partner [data-m="perk-card"] > span:last-child {
    font-size: 13.5px !important;
  }

  .m-partner [data-m="partner-form"] {
    margin-top: 36px !important;
  }
  .m-partner [data-m="partner-form"] > div {
    padding: 36px var(--m-gutter) !important;
    gap: 18px !important;
  }
  .m-partner [data-m="form-grid"] {
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
  }
  .m-partner [data-m="chip-wrap"] {
    gap: 8px !important;
  }
  .m-partner [data-m="chip-wrap"] a {
    min-height: var(--m-tap) !important;
  }
  .m-partner button[data-m="tap"] {
    width: 100%;
    min-height: var(--m-tap) !important;
    border-radius: var(--m-radius-sm) !important;
  }
}

/* ========== Tablette : pas de régression, aération douce ========== */
@media (min-width: 760px) and (max-width: 1023px) {
  .m-blog[data-m="page"],
  .m-faq[data-m="page"],
  .m-plan[data-m="page"],
  .m-legal[data-m="page"],
  .post.m-article {
    padding-left: 28px;
    padding-right: 28px;
  }
}

/* Focus visibles partagés */
@media (max-width: 759px) {
  .m-blog a:focus-visible,
  .m-faq button:focus-visible,
  .m-agence a:focus-visible,
  .m-partner a:focus-visible,
  .m-partner button:focus-visible,
  .m-404 a:focus-visible,
  .post.m-article a:focus-visible,
  .post-toc-m summary:focus-visible,
  .post-faq-item summary:focus-visible,
  .legal-nav-m summary:focus-visible {
    outline: 3px solid var(--c-coral);
    outline-offset: 2px;
  }
}
