/* moncodepromo.fr — Page "Comparateur cashback" */
.mcp-comparateur-page {
    --mcp-blue:#1C74F4; --mcp-blue-fond:#EBF2FE; --mcp-green:#16A34A;
    --mcp-ink:#0F172A; --mcp-cream:#FBFAF7; --mcp-slate-50:#F8FAFC;
    --mcp-slate-100:#F1F5F9; --mcp-slate-200:#E2E8F0; --mcp-slate-300:#CBD5E1;
    --mcp-slate-400:#94A3B8; --mcp-slate-500:#64748B; --mcp-slate-600:#475569;
    --mcp-slate-700:#334155; --mcp-white:#FFFFFF;
    --mcp-ff-display:"Montserrat",-apple-system,BlinkMacSystemFont,sans-serif;
    --mcp-ff-body:"Open Sans",-apple-system,BlinkMacSystemFont,sans-serif;
    --mcp-r-sm:8px; --mcp-r-md:12px; --mcp-r-pill:999px;
    background:var(--mcp-white); color:var(--mcp-ink);
    font-family:var(--mcp-ff-body); font-size:16px; line-height:1.6;
}
.mcp-comparateur-page *{ box-sizing:border-box; }
.mcp-comparateur-page h1{
    font-family:var(--mcp-ff-display); font-weight:700; color:var(--mcp-ink);
    letter-spacing:-0.02em; margin:0;
}

.mcp-comparateur-page h2{
    font-family:var(--mcp-ff-display); font-weight:700; color:#FFF;
    letter-spacing:-0.02em; margin:0;
}

h2.mcp-section__title-comment-marche {
    font-size: 30px;
    margin-bottom: 24px;
    font-family: var(--mcp-ff-display);
    font-weight: 700;
    color:var(--mcp-ink);
    letter-spacing: -0.02em;
}


.mcp-comparateur-page a{ color:var(--mcp-blue); text-decoration:none; transition:color .15s ease; }
.mcp-comparateur-page a:hover{ color:var(--mcp-ink); }
.mcp-comparateur-page .mcp-container{ max-width:1280px; margin:0 auto; }
.mcp-comparateur__wrap{ padding:40px 24px 80px; }
.mcp-comparateur-page .mcp-breadcrumb{ margin-bottom:32px; }
.mcp-comparateur-page .mcp-accent-italic{ font-style:italic; font-weight:600; color:var(--mcp-blue); }
.mcp-comparateur-page .mcp-avatar{ border-radius:50%; background:var(--mcp-cream); object-fit:cover; display:block; }
.mcp-comparateur-page .mcp-avatar--36{ width:36px; height:36px; }

/* Header */
.mcp-cmp-header{ margin-bottom:40px; max-width:1280px; }
.mcp-cmp-title{ font-size:48px; line-height:1.05; margin-bottom:24px; }
.mcp-cmp-header__lede{ font-size:18px; color:var(--mcp-slate-700); margin:0 0 24px; }
.mcp-cmp-header__lede strong{ color:var(--mcp-ink); font-weight:700; }
.mcp-cmp-header__meta{ padding-top:16px; border-top:1px solid var(--mcp-slate-200); }
.mcp-cmp-header__updated{ font-size:13px; color:var(--mcp-slate-500); font-variant-numeric:tabular-nums; }
.mcp-cmp-header__updated time{ color:var(--mcp-slate-700); font-weight:600; }

/* Liste comparateur */
.cmp-list{ display:flex; flex-direction:column; gap:8px; margin-bottom:64px; }
.cmp-row{
    display:grid; grid-template-columns:60px 1fr auto 24px; gap:18px; align-items:center;
    padding:16px 20px; background:var(--mcp-white); border:1px solid var(--mcp-slate-200);
    border-radius:var(--mcp-r-md); color:var(--mcp-ink)!important;
    transition:border-color .15s ease, transform .15s ease;
}
.cmp-row:hover{ border-color:var(--mcp-slate-400); transform:translateY(-1px); }
.cmp-row__logo{
    width:60px; height:60px; display:flex; align-items:center; justify-content:center;
    background:var(--mcp-white); border:1px solid var(--mcp-slate-200);
    border-radius:var(--mcp-r-sm); overflow:hidden; flex-shrink:0;
}
.cmp-row__logo img{ max-width:80%; max-height:80%; object-fit:contain; mix-blend-mode:multiply; }
.cmp-row__info{ display:flex; flex-direction:column; gap:4px; min-width:0; }
.cmp-row__brand{ font-family:var(--mcp-ff-display); font-size:18px; font-weight:700; line-height:1.2; }
.cmp-row__best{ font-size:13px; color:var(--mcp-slate-500); font-weight:600; }
.cmp-row__best strong{ color:var(--mcp-ink); }
.cmp-row__best--none{ font-style:italic; }
.cmp-row__rate{
    font-family:var(--mcp-ff-display); font-size:28px; font-weight:700; color:var(--mcp-green);
    line-height:1; font-variant-numeric:tabular-nums; letter-spacing:-0.03em; text-align:right;
}
.cmp-row__arrow{ color:var(--mcp-slate-300); font-size:22px; line-height:1; transition:color .15s, transform .15s; }
.cmp-row:hover .cmp-row__arrow{ color:var(--mcp-blue); transform:translateX(3px); }

/* Methode */
.mcp-cmp-method{ background:var(--mcp-cream); padding:64px 40px; border-radius:var(--mcp-r-md); margin:64px 0; }
.mcp-cmp-method .mcp-section__head{ margin-bottom:32px; max-width:1280px; }
.mcp-cmp-method .mcp-section__title{ font-size:36px; line-height:1.1; letter-spacing:-0.02em; }
.mcp-cmp-method .mcp-eyebrow{ display:inline-flex; align-items:center; gap:8px; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.16em; color:var(--mcp-blue); margin-bottom:14px; }
.mcp-cmp-method .mcp-byline{ display:flex; align-items:center; gap:12px; margin-top:20px; padding:14px 0; border-top:1px solid var(--mcp-slate-200); border-bottom:1px solid var(--mcp-slate-200); }
.mcp-cmp-method .mcp-byline__text{ font-size:14px; color:var(--mcp-slate-600); }
.mcp-cmp-method .mcp-byline__text strong{ color:var(--mcp-ink); font-weight:700; }
.mcp-cmp-method .mcp-method__body{ margin-top:32px; font-size:17px; line-height:1.7; color:var(--mcp-slate-700); max-width:1280px; }
.mcp-cmp-method .mcp-method__body p{ margin:0 0 22px; }
.mcp-cmp-method .mcp-method__body strong{ color:var(--mcp-ink); font-weight:700; }
.mcp-cmp-method .mcp-method__body a{ color:var(--mcp-blue); text-decoration:underline; text-decoration-color:var(--mcp-slate-300); text-underline-offset:3px; }
.mcp-cmp-method .mcp-method__signoff{ font-size:18px; color:var(--mcp-ink); padding-top:20px; border-top:1px solid var(--mcp-slate-200); margin-top:32px; font-weight:500; }

/* FAQ */
.mcp-cmp-faq{ max-width:1280px; margin:0 0 64px; }
.mcp-cmp-faq .mcp-section__title{ font-size:30px; margin-bottom:24px; }
.mcp-cmp-faq__item{ border:1px solid var(--mcp-slate-200); border-radius:var(--mcp-r-md); padding:0; margin-bottom:10px; background:var(--mcp-white); }
.mcp-cmp-faq__q{ cursor:pointer; list-style:none; padding:18px 20px; font-family:var(--mcp-ff-display); font-weight:700; font-size:16px; color:var(--mcp-ink); }
.mcp-cmp-faq__q::-webkit-details-marker{ display:none; }
.mcp-cmp-faq__q::after{ content:"+"; float:right; color:var(--mcp-slate-400); font-weight:400; }
.mcp-cmp-faq__item[open] .mcp-cmp-faq__q::after{ content:"–"; }
.mcp-cmp-faq__a{ padding:0 20px 18px; color:var(--mcp-slate-700); font-size:15px; line-height:1.6; }
.mcp-cmp-faq__a p{ margin:0; }

/* CTA */
.mcp-cmp-cta{ background:var(--mcp-ink); border-radius:var(--mcp-r-md); padding:56px 40px; text-align:center; }
.mcp-cmp-cta__inner{ max-width:640px; margin:0 auto; }
.mcp-cmp-cta__title{ font-size:32px; color:var(--mcp-white); margin:0 0 14px; line-height:1.2; }
.mcp-cmp-cta__title .mcp-accent-italic{ color:#93C5FD; }
.mcp-cmp-cta__text{ font-size:16px; color:var(--mcp-slate-300); margin:0 0 28px; }
.mcp-cmp-cta .mcp-btn{ display:inline-flex; align-items:center; gap:8px; background:var(--mcp-white); color:var(--mcp-ink); font-size:15px; font-weight:700; padding:14px 28px; border-radius:var(--mcp-r-sm); transition:background .15s, transform .15s; }
.mcp-cmp-cta .mcp-btn:hover{ background:var(--mcp-blue-fond); transform:translateY(-1px); }

/* Responsive */
@media (max-width:1024px){
    .mcp-comparateur__wrap{ padding:24px 16px; }
    .mcp-cmp-title{ font-size:38px; }
    .mcp-cmp-method{ padding:48px 32px; }
    .mcp-cmp-method .mcp-section__title{ font-size:30px; }
}
@media (max-width:768px){
    .mcp-cmp-title{ font-size:30px; }
    .mcp-cmp-header__lede{ font-size:16px; }
    .cmp-row{ grid-template-columns:44px 1fr auto; gap:12px; padding:14px; }
    .cmp-row__logo{ width:44px; height:44px; }
    .cmp-row__brand{ font-size:15px; }
    .cmp-row__rate{ font-size:22px; }
    .cmp-row__arrow{ display:none; }
    .mcp-cmp-method{ padding:36px 24px; margin:48px 0; }
    .mcp-cmp-method .mcp-section__title{ font-size:24px; }
    .mcp-cmp-cta{ padding:40px 24px; }
    .mcp-cmp-cta__title{ font-size:24px; }
}

/* Recherche */
.cmp-search{ margin-bottom:24px; }
.cmp-search__label{ display:block; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.12em; color:var(--mcp-slate-500); margin-bottom:8px; }
.cmp-search__input{
    width:100%; padding:14px 18px; font-family:var(--mcp-ff-body); font-size:16px;
    color:var(--mcp-ink); background:var(--mcp-white);
    border:1px solid var(--mcp-slate-300); border-radius:var(--mcp-r-md);
    transition:border-color .15s ease;
}
.cmp-search__input:focus{ outline:none; border-color:var(--mcp-blue); }
.cmp-list--results{ margin-bottom:64px; }
.cmp-empty{
    padding:40px 24px; text-align:center; background:var(--mcp-cream);
    border:1px dashed var(--mcp-slate-300); border-radius:var(--mcp-r-md);
    color:var(--mcp-slate-600); font-size:15px;
}
.cmp-empty strong{ display:block; color:var(--mcp-ink); font-size:17px; margin-bottom:6px; }