/* Formules : identité commune à l'annuaire, tarifs et comparaison. */
.m-abos-hero { padding-block:23px 36px; background:var(--m-creme); border-bottom:1px solid var(--m-trait); }
.m-abos-intro { max-width:850px; margin:43px auto 31px; text-align:center; }
.m-abos-intro .m-surtitre { justify-content:center; }
.m-abos-intro h1 { margin-top:20px; font-size:clamp(42px,4.8vw,65px); line-height:1.09; }
.m-abos-intro > p:last-child { margin-top:22px; font-size:16px; line-height:1.75; color:var(--m-secondaire); }
.m-abos-reperes { display:flex; justify-content:center; flex-wrap:wrap; gap:12px 32px; margin:0; padding:0; list-style:none; }
.m-abos-reperes li { display:flex; align-items:center; gap:8px; font-size:12px; }
.m-abos-reperes .m-icone { width:15px; height:15px; color:var(--m-brique); }
.m-abos-formules { padding-block:48px 54px; scroll-margin-top:25px; }
.m-abos-section-entete { display:flex; align-items:end; justify-content:space-between; gap:25px; margin-bottom:29px; }
.m-abos-section-entete h2 { margin-top:13px; font-size:31px; line-height:1.2; }
.m-abos-section-entete > a { flex-shrink:0; font-size:12px; }
.m-abos-cartes { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:17px; align-items:stretch; }
.m-abos-carte { display:flex; flex-direction:column; min-width:0; padding:26px 22px 23px; border:1px solid var(--m-trait); border-radius:7px; background:#fffefa; }
.m-abos-carte-allegro { border-color:var(--m-brique); background:#fff8ed; box-shadow:0 5px 23px #9a40210a; }
.m-abos-etiquette { min-height:26px; font-size:10px; font-weight:650; letter-spacing:.08em; text-transform:uppercase; color:var(--m-secondaire); }
.m-abos-carte-allegro .m-abos-etiquette { color:var(--m-brique-texte); }
.m-abos-carte h3 { margin-top:5px; font:400 31px/1.2 var(--m-serif); letter-spacing:-.035em; }
.m-abos-objectif { min-height:49px; margin-top:12px !important; font-size:12px; line-height:1.65; color:var(--m-secondaire); }
.m-abos-prix { display:flex; align-items:baseline; gap:8px; margin-top:22px; }
.m-abos-prix strong { font:400 43px/1.1 var(--m-serif); letter-spacing:-.045em; white-space:nowrap; }
.m-abos-prix > span { font-size:12px; color:var(--m-secondaire); }
.m-abos-periode { min-height:58px; margin-top:10px !important; font-size:11px; line-height:1.65; color:var(--m-secondaire); }
.m-abos-heritage { min-height:62px; padding-top:18px; border-top:1px solid var(--m-trait); font-size:12px; font-weight:600; line-height:1.6; }
.m-abos-avantages { display:flex; flex-direction:column; gap:12px; margin:17px 0 28px; padding:0; list-style:none; }
.m-abos-avantages li { display:flex; align-items:start; gap:8px; font-size:12px; line-height:1.55; }
.m-abos-avantages .m-icone { width:15px; height:15px; margin-top:2px; color:var(--m-brique); }
.m-abos-carte .m-bouton { width:100%; margin-top:auto; padding:13px 9px; gap:8px; font-size:12px; }
.m-abos-carte .m-bouton .m-icone { width:17px; height:17px; }
.m-page-abonnements .m-bouton-principal { color:#fff; }
.m-abos-note-prix { max-width:900px; margin-top:22px !important; font-size:12px; line-height:1.75; color:var(--m-secondaire); }
.m-abos-liens-details { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:16px; margin-top:21px; font-size:13px; }
.m-abos-liens-details .m-lien-fleche { font-size:13px; }
.m-abos-erreur { padding:28px; border:1px solid var(--m-trait); background:var(--m-creme); }
.m-abos-erreur .m-bouton { margin-top:20px; }
.m-abos-comparaison { padding-block:47px 50px; border-block:1px solid var(--m-trait); background:var(--m-creme); scroll-margin-top:20px; }
.m-abos-comparaison h2 { margin-top:13px; font-size:39px; }
.m-abos-tableau-defilement { position:relative; overflow-x:auto; margin-top:29px; border:1px solid var(--m-trait); border-radius:6px; background:var(--m-papier); }
.m-abos-tableau { width:100%; min-width:800px; border-collapse:collapse; font-size:12px; }
.m-abos-tableau caption { padding:15px 21px; text-align:left; font-size:11px; color:var(--m-secondaire); border-bottom:1px solid var(--m-trait); }
.m-abos-tableau th,.m-abos-tableau td { padding:15px 18px; border-bottom:1px solid var(--m-trait); }
.m-abos-tableau thead th { width:15%; text-align:center; font-family:var(--m-serif); font-weight:400; font-size:21px; background:#fffefa; }
.m-abos-tableau thead th:first-child { width:40%; text-align:left; font-family:var(--m-sans); font-weight:600; font-size:12px; }
.m-abos-tableau tbody th[scope="row"] { font-weight:400; text-align:left; line-height:1.6; }
.m-abos-tableau td { text-align:center; line-height:1.55; }
.m-abos-tableau .m-icone { width:18px; height:18px; color:var(--m-brique); }
.m-abos-tableau .m-abos-colonne-allegro { background:#fff5e5; }
.m-abos-tableau .m-abos-groupe th { padding-block:12px; text-align:left; background:#efe9de; font-size:11px; font-weight:650; letter-spacing:.025em; }
.m-abos-tableau tbody:last-child tr:last-child > * { border-bottom:0; }
.m-abos-non { color:#a49a8e; }
.m-abos-lecteur { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.m-abos-aide-tableau { margin-top:17px !important; font-size:12px; line-height:1.6; color:var(--m-secondaire); }
.m-abos-precisions { max-width:960px; margin-top:20px; font-size:11px; line-height:1.8; color:var(--m-secondaire); }
.m-abos-precisions p + p { margin-top:7px; }
.m-abos-durees { display:grid; grid-template-columns:.9fr 1.1fr; align-items:center; gap:65px; padding-block:57px; scroll-margin-top:20px; }
.m-abos-durees h2 { margin-top:15px; font-size:37px; }
.m-abos-durees p:not(.m-surtitre) { margin-top:18px; font-size:13px; line-height:1.8; color:var(--m-secondaire); }
.m-abos-tarifs { position:relative; min-width:0; }
.m-abos-tarifs table { width:100%; border-collapse:collapse; font-size:13px; }
.m-abos-tarifs caption { padding-bottom:16px; text-align:left; font-size:12px; color:var(--m-secondaire); }
.m-abos-tarifs th,.m-abos-tarifs td { padding:17px 12px; border-bottom:1px solid var(--m-trait); text-align:right; }
.m-abos-tarifs thead th { font-size:11px; font-weight:600; color:var(--m-secondaire); background:var(--m-creme); }
.m-abos-tarifs th:first-child { text-align:left; }
.m-abos-tarifs tbody th { font-family:var(--m-serif); font-size:19px; font-weight:400; }
.m-abos-tarifs td { white-space:nowrap; }
.m-abos-questions { padding-block:50px 55px; background:var(--m-creme); border-block:1px solid var(--m-trait); }
.m-abos-questions-grille { display:grid; grid-template-columns:.85fr 1.15fr; gap:70px; }
.m-abos-questions h2 { margin-top:15px; font-size:37px; }
.m-abos-questions-grille > div > p:not(.m-surtitre) { margin-top:22px; font-size:13px; color:var(--m-secondaire); }
.m-abos-questions .m-lien-fleche { margin-top:18px; font-size:13px; }
.m-abos-faq details { border-bottom:1px solid var(--m-trait); }
.m-abos-faq details:first-child { border-top:1px solid var(--m-trait); }
.m-abos-faq summary { display:flex; justify-content:space-between; gap:20px; padding-block:21px; list-style:none; cursor:pointer; font-size:13px; font-weight:600; }
.m-abos-faq summary::-webkit-details-marker { display:none; }
.m-abos-faq summary .m-icone { width:17px; height:17px; color:var(--m-brique); }
.m-abos-faq details[open] summary .m-icone { transform:rotate(45deg); }
.m-abos-faq details > p { padding-bottom:20px; font-size:13px; line-height:1.8; color:var(--m-secondaire); }
.m-abos-faq details > a { display:inline-block; margin-bottom:20px; font-size:13px; color:var(--m-brique-texte); }
.m-abos-invitation { display:flex; justify-content:space-between; align-items:center; gap:40px; padding-block:55px; }
.m-abos-invitation h2 { margin-top:16px; font-size:43px; }
.m-abos-invitation p:not(.m-surtitre) { margin-top:20px; font-size:12px; color:var(--m-secondaire); }
.m-abos-invitation > div:last-child { display:flex; flex-direction:column; align-items:center; gap:16px; font-size:13px; }
@media(max-width:1100px) {
    .m-abos-cartes { grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
    .m-abos-carte { padding:28px; }
    .m-abos-objectif { min-height:0; }
    .m-abos-heritage { min-height:55px; }
    .m-abos-avantages { gap:11px; }
    .m-abos-durees,.m-abos-questions-grille { gap:35px; }
}
@media(max-width:750px) {
    .m-abos-section-entete { flex-direction:column; align-items:start; gap:20px; }
    .m-abos-durees,.m-abos-questions-grille { grid-template-columns:minmax(0,1fr); gap:30px; }
    .m-abos-invitation { flex-direction:column; align-items:start; gap:27px; }
    .m-abos-invitation > div:last-child { align-items:start; }
}
@media(max-width:600px) {
    .m-abos-hero { padding-block:18px 26px; }
    .m-abos-intro { margin-block:29px 24px; text-align:left; }
    .m-abos-intro .m-surtitre { justify-content:start; font-size:9px; }
    .m-abos-intro h1 { font-size:43px; margin-top:16px; }
    .m-abos-intro > p:last-child { margin-top:18px; font-size:14px; }
    .m-abos-retour { display:none; }
    .m-abos-reperes { flex-direction:column; gap:9px; }
    .m-abos-reperes li { font-size:11px; }
    .m-abos-formules { padding-block:32px 35px; }
    .m-abos-section-entete h2 { font-size:27px; }
    .m-abos-section-entete > a { font-size:11px; }
    .m-abos-cartes { grid-template-columns:minmax(0,1fr); gap:17px; }
    .m-abos-carte { padding:25px; }
    .m-abos-etiquette { min-height:0; }
    .m-abos-carte h3 { margin-top:10px; font-size:32px; }
    .m-abos-prix { margin-top:19px; }
    .m-abos-periode { min-height:0; padding-bottom:18px; }
    .m-abos-heritage { min-height:0; }
    .m-abos-avantages { margin-bottom:23px; }
    .m-abos-comparaison { padding-block:32px; }
    .m-abos-comparaison h2,.m-abos-durees h2,.m-abos-questions h2 { font-size:31px; }
    .m-abos-tableau { width:700px; min-width:700px; table-layout:fixed; font-size:11px; }
    .m-abos-tableau th,.m-abos-tableau td { padding:13px 12px; }
    .m-abos-tableau thead th { font-size:19px; }
    .m-abos-tableau thead th:first-child { width:180px; }
    .m-abos-tableau thead th:not(:first-child) { width:130px; }
    .m-abos-tableau tbody th[scope="row"],.m-abos-tableau thead th:first-child { position:sticky; left:0; z-index:1; max-width:180px; background:var(--m-papier); }
    .m-abos-tableau .m-abos-groupe th { font-size:10px; }
    .m-abos-tableau-defilement { margin-top:20px; }
    .m-abos-durees { padding-block:35px; }
    .m-abos-tarifs th,.m-abos-tarifs td { padding:14px 7px; }
    .m-abos-tarifs tbody th { font-size:17px; }
    .m-abos-tarifs td { font-size:12px; }
    .m-abos-questions { padding-block:35px; }
    .m-abos-faq summary { font-size:12px; padding-block:19px; }
    .m-abos-invitation { padding-block:36px; }
    .m-abos-invitation h2 { font-size:36px; }
    .m-abos-invitation > div:last-child { width:100%; align-items:center; }
    .m-abos-invitation .m-bouton { width:100%; }
}
