/* OseCars · Guides des professionnels de l'automobile (MRA) · 29 septembre 2026
   Charte de l'univers MRA : papier, encre et or ; polices Archivo et Archivo Narrow hébergées
   (/assets/vendor/fonts/google-8de40cfe11.css). Aucune dépendance externe. */

:root{
  --papier:#f2ece0;--papier-2:#eee6d6;--beige:#e8e0cf;--carte:#fbf8f2;--blanc-chaud:#fffdf8;
  --encre:#0d0d0f;--texte:#2a2621;--gris:#5c554a;--gris-2:#6e6a62;
  --or:#7d6130;--or-fonce:#6e552a;--or-trait:#d4b577;--or-doux:#b79a60;
  --ligne:#d8cebb;--ligne-forte:#c7b99c;--total:#eee4d1;
  --sans:"Archivo","Helvetica Neue",Arial,sans-serif;--narrow:"Archivo Narrow","Arial Narrow",Arial,sans-serif;
  --pad:clamp(16px,4vw,48px);--pente:clamp(14px,3vw,44px);--doux:cubic-bezier(.2,.7,.2,1);
  color-scheme:light;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:24px}
body{margin:0;background:var(--papier);color:var(--texte);font:16px/1.6 var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
img,svg{display:block;max-width:100%}
a{color:inherit}
button,input{font:inherit}
p{margin:0}
.wrap{max-width:1320px;margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}
.marque-nom{text-transform:none!important;letter-spacing:.02em}
.sr{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
:focus-visible{outline:2px solid var(--or);outline-offset:3px}
::selection{background:var(--or);color:var(--papier)}
[hidden]{display:none!important}

/* ---- accès rapide, progression de lecture ---- */
.skip{position:absolute;left:12px;top:-120px;z-index:100;background:var(--blanc-chaud);color:var(--encre);padding:12px 16px;border:1px solid var(--encre);font-weight:600;text-decoration:none}
.skip:focus{top:12px}
.progression{position:fixed;top:0;left:0;right:0;height:3px;z-index:60;pointer-events:none}
.progression i{display:block;height:100%;background:var(--or-trait);transform:scaleX(0);transform-origin:left}

/* ---- bandeau de relecture (guide fiscal) ---- */
.bandeau-relecture{background:#e4d9c3;border-bottom:1px solid var(--ligne-forte);color:var(--encre)}
.bandeau-relecture .wrap{display:flex;align-items:center;gap:10px;min-height:38px;padding-top:8px;padding-bottom:8px;font-size:13px;font-weight:500;line-height:1.45}
.bandeau-relecture svg{width:18px;height:18px;flex:none;color:var(--or-fonce)}

/* ---- en-tête ---- */
.entete{position:relative;z-index:20;background:var(--papier-2);border-bottom:1px solid #d8cfbf}
.entete-rangee{display:flex;align-items:center;gap:28px;min-height:84px}
.marque{display:flex;align-items:center;gap:16px;flex:none;color:var(--encre);text-decoration:none}
.marque-logo{width:214px;height:auto;aspect-ratio:4601/1000}
.marque-univers{padding-left:16px;border-left:1px solid var(--ligne-forte);max-width:176px;font:600 11px/1.35 var(--narrow);letter-spacing:.14em;text-transform:uppercase;color:var(--or)}
.navigation{order:1;display:flex;align-items:center;gap:26px;margin-left:auto}
.navigation a{padding:10px 0;border-bottom:1px solid transparent;font:600 12px/1 var(--narrow);letter-spacing:.16em;text-transform:uppercase;color:var(--encre);text-decoration:none;white-space:nowrap;transition:color .2s,border-color .2s}
.navigation a:hover,.navigation a[aria-current="page"],.navigation a.actif{color:var(--or);border-bottom-color:var(--or)}
.appel{order:2;display:inline-flex;align-items:center;gap:10px;padding:8px 14px;border:1px solid #b5a587;color:var(--encre);text-decoration:none;white-space:nowrap;transition:border-color .2s,color .2s}
.appel:hover{border-color:var(--or);color:var(--or)}
.appel svg{width:18px;height:18px;flex:none;color:var(--or)}
.appel small{display:block;margin-bottom:3px;font:600 10px/1 var(--narrow);letter-spacing:.14em;text-transform:uppercase;color:var(--gris)}
.appel b{display:block;font:600 14px/1 var(--sans)}
.menu{order:3;display:none}

/* ---- bande d'ouverture : fil d'Ariane, titre, « En bref » ---- */
.bande-tete{background:var(--beige)}
.ariane{padding:18px 0 4px;font-size:13px;line-height:1.4;color:var(--gris)}
.ariane ol{display:flex;flex-wrap:wrap;align-items:center;gap:4px 0;margin:0;padding:0;list-style:none}
.ariane li{display:inline-flex;align-items:center;min-width:0}
.ariane li+li::before{content:"";flex:none;width:6px;height:6px;margin:0 12px 0 8px;border-top:1.4px solid var(--or-doux);border-right:1.4px solid var(--or-doux);transform:rotate(45deg)}
.ariane a{display:inline-block;padding:6px 0;color:var(--gris);text-decoration:none}
.ariane a:hover{color:var(--encre);text-decoration:underline;text-underline-offset:3px}
.ariane [aria-current="page"]{color:var(--encre);font-weight:600}
.guide-tete{position:relative;isolation:isolate;padding:clamp(26px,3.4vw,48px) 0 calc(var(--pente) + clamp(34px,4vw,60px))}
.guide-tete::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--beige);clip-path:polygon(0 0,100% 0,100% calc(100% - var(--pente)),0 100%)}
.guide-tete .filet{position:absolute;left:0;bottom:0;width:100%;height:var(--pente);overflow:visible}
.guide-tete .filet line{stroke:var(--or-trait);stroke-width:1.5px;vector-effect:non-scaling-stroke}
.surtitre{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;font:600 11.5px/1.3 var(--narrow);letter-spacing:.18em;text-transform:uppercase;color:var(--or-fonce)}
.surtitre .trait{width:28px;height:1px;background:var(--or-doux)}
.guide-tete h1{max-width:21em;margin:20px 0 26px;font-size:clamp(32px,4.3vw,58px);font-weight:900;line-height:1.05;letter-spacing:-.026em;word-spacing:.05em;color:var(--encre);text-wrap:balance}
.guide-tete h1 em{font-style:normal;color:var(--or-fonce)}
.chapo{max-width:760px;font-size:clamp(18px,1.6vw,21px);line-height:1.58;letter-spacing:-.005em;color:var(--encre)}
.maj{display:flex;align-items:flex-start;gap:10px;margin-top:20px;font-size:14px;line-height:1.5;color:var(--gris)}
.maj svg{width:18px;height:18px;flex:none;margin-top:1px;color:var(--or-fonce)}
.maj time{color:var(--encre);font-weight:600}
.raccourci{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin-top:16px;padding:0 16px;border:1px solid var(--encre);color:var(--encre);font:600 14px var(--sans);text-decoration:none;transition:border-color .2s,color .2s}
.raccourci:hover{border-color:var(--or);color:var(--or)}
.raccourci svg{width:18px;height:18px;color:var(--or)}

/* ---- grille : sommaire et texte ---- */
.guide-grille{display:grid;grid-template-columns:236px minmax(0,1fr);gap:clamp(40px,5vw,84px);padding-top:clamp(34px,4vw,56px);padding-bottom:clamp(40px,5vw,72px)}
.sommaire{position:sticky;top:24px;align-self:start;max-height:calc(100vh - 48px);overflow:auto;padding-bottom:12px}
.sommaire-titre{display:flex;align-items:center;gap:10px;margin:0 0 14px;font:600 11px/1 var(--narrow);letter-spacing:.2em;text-transform:uppercase;color:var(--encre)}
.sommaire-titre svg{width:18px;height:18px;color:var(--or)}
.sommaire ol,.sommaire-mobile ol{margin:0;padding:0;list-style:none;border-left:1px solid var(--ligne-forte)}
.sommaire a,.sommaire-mobile a{display:grid;grid-template-columns:24px 1fr;gap:6px;padding:8px 0 8px 14px;margin-left:-1px;border-left:2px solid transparent;font-size:13.5px;line-height:1.4;color:var(--gris);text-decoration:none;transition:color .2s,border-color .2s}
.sommaire a span,.sommaire-mobile a span{font:600 11px/1.6 var(--narrow);letter-spacing:.08em;color:var(--or)}
.sommaire a:hover,.sommaire-mobile a:hover{color:var(--encre)}
.sommaire a.actif{border-left-color:var(--or-trait);color:var(--encre);font-weight:600}
.sommaire-mobile{display:none}

/* ---- corps du guide ---- */
.guide-corps{min-width:0;max-width:900px;font-size:17px;line-height:1.72;color:var(--texte)}
.guide-corps>section+section,.guide-corps>section+.encart,.guide-corps>.encart+section{margin-top:clamp(44px,5vw,68px)}
.guide-corps h2{margin:0 0 20px;font-size:clamp(24px,2.3vw,31px);font-weight:700;line-height:1.2;letter-spacing:-.02em;color:var(--encre);text-wrap:balance}
.guide-corps h2 .num{display:flex;align-items:center;gap:12px;margin-bottom:12px;font:600 12px/1 var(--narrow);letter-spacing:.22em;color:var(--or)}
.guide-corps h2 .num-offre{padding-left:12px;border-left:1px solid var(--ligne-forte);font:600 13px/1 var(--sans);letter-spacing:.01em;color:var(--or)}
.guide-corps p,.guide-corps li{max-width:68ch}
.guide-corps p+p,.guide-corps p+ul,.guide-corps p+ol,.guide-corps ul+p,.guide-corps ol+p{margin-top:1.05em}
.guide-corps strong{font-weight:600;color:var(--encre)}
.guide-corps em{font-style:italic}
.guide-corps a{color:var(--or);text-decoration:underline;text-decoration-thickness:1px;text-decoration-color:rgba(125,97,48,.55);text-underline-offset:3px;transition:color .2s,text-decoration-color .2s}
.guide-corps a:hover{color:var(--encre);text-decoration-color:var(--encre)}
.guide-corps a.url{overflow-wrap:anywhere}
.guide-corps ul{margin:0;padding:0;list-style:none}
.guide-corps ul>li{position:relative;padding-left:22px}
.guide-corps ul>li+li{margin-top:.62em}
.guide-corps ul>li::before{content:"";position:absolute;left:3px;top:.72em;width:6px;height:6px;border-radius:50%;background:var(--or-doux)}
.guide-corps ol{max-width:calc(68ch + 50px);margin:0;padding:0;list-style:none;counter-reset:n;border-bottom:1px solid var(--ligne)}
.guide-corps ol>li{position:relative;max-width:none;padding:15px 0 15px 50px;border-top:1px solid var(--ligne);counter-increment:n}
.guide-corps ol>li::before{content:counter(n,decimal-leading-zero);position:absolute;left:0;top:17px;font:600 13px/1.4 var(--narrow);letter-spacing:.12em;color:var(--or)}
.guide-corps ol+p,.guide-corps ul+.tableau,.guide-corps p+.tableau,.guide-corps .tableau+p{margin-top:1.2em}

/* ---- formule ---- */
.formule{margin:6px 0 26px;padding:24px clamp(18px,3vw,32px);background:var(--carte);border:1px solid var(--or-trait);font-size:clamp(18px,1.7vw,21px);line-height:1.45;text-align:center;max-width:none!important}
.formule strong{font-weight:700}
.guide-corps .formule+ul{margin-top:0}

/* ---- tableaux : défilement horizontal propre et première colonne fixe sur petit écran ---- */
.tableau{margin:28px 0 30px}
.tableau-cadre{position:relative}
.tableau-defil{overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;border-top:2px solid var(--encre);border-bottom:1px solid var(--ligne-forte);scrollbar-width:thin;scrollbar-color:var(--or-doux) transparent}
.tableau-defil:focus-visible{outline-offset:4px}
.tableau table{width:100%;border-collapse:separate;border-spacing:0;font-size:15px;line-height:1.5;font-variant-numeric:tabular-nums}
.tableau caption{text-align:left}
.tableau thead th{padding:14px 16px 12px;border-bottom:1px solid var(--ligne-forte);vertical-align:bottom;text-align:left;font:600 11.5px/1.35 var(--narrow);letter-spacing:.1em;text-transform:uppercase;color:var(--gris);background:var(--papier)}
.tableau tbody th,.tableau tbody td{padding:13px 16px;border-top:1px solid var(--ligne);vertical-align:top;text-align:left;background:var(--papier)}
.tableau tbody tr:first-child th,.tableau tbody tr:first-child td{border-top:0}
.tableau tbody th{font-weight:600;color:var(--encre)}
.tableau td strong,.tableau th strong{font-weight:700}
.tableau .n{text-align:right;white-space:nowrap}
.tableau tr.total th,.tableau tr.total td{border-top:2px solid var(--encre);background:var(--total);color:var(--encre);font-weight:700}
.tableau.large table{min-width:780px}
.tableau-cadre::after{content:"";position:absolute;top:2px;right:0;bottom:1px;width:36px;pointer-events:none;background:linear-gradient(90deg,rgba(242,236,224,0),var(--papier) 85%);opacity:0;transition:opacity .2s}
.tableau.a-droite .tableau-cadre::after{opacity:1}
.tableau-indice{display:none;align-items:center;gap:8px;margin:0 0 10px!important;font-size:13px;line-height:1.4;color:var(--gris)}
.tableau-indice svg{width:18px;height:18px;flex:none;color:var(--or)}
.tableau.deborde .tableau-indice{display:flex}

/* ---- encart OseCars ---- */
.encart{position:relative;margin:30px 0;padding:clamp(22px,3vw,34px);background:var(--carte);border:1px solid var(--or-trait)}
.encart::before{content:"";position:absolute;left:-1px;top:-1px;width:calc(100% + 2px);height:3px;background:var(--or-trait)}
.encart-marque{display:flex;align-items:center;gap:10px;margin-bottom:12px!important;font:600 13px/1.2 var(--sans);letter-spacing:.01em;color:var(--or)}
.encart-marque svg{width:18px;height:18px;flex:none}
.encart .tableau thead th,.encart .tableau tbody th,.encart .tableau tbody td{background:var(--carte)}
.encart .tableau tr.total th,.encart .tableau tr.total td{background:var(--total)}
.encart .tableau-cadre::after{background:linear-gradient(90deg,rgba(251,248,242,0),var(--carte) 85%)}
.encart-note p:not(.encart-marque){font-size:15.5px;line-height:1.65}

/* ---- questions fréquentes ---- */
.faq{border-top:1px solid var(--ligne-forte)}
.question{border-bottom:1px solid var(--ligne);transition:background .2s}
.question[open]{background:var(--carte);box-shadow:inset 3px 0 var(--or-doux)}
.question summary{display:grid;grid-template-columns:30px minmax(0,1fr) 16px;gap:14px;align-items:start;padding:20px 18px 20px 14px;list-style:none;cursor:pointer}
.question summary::-webkit-details-marker{display:none}
.question summary:hover h3{color:var(--or)}
.question h3{margin:0;font-size:17px;font-weight:600;line-height:1.45;color:var(--encre);transition:color .2s}
.q-num{font:600 12px/1.95 var(--narrow);letter-spacing:.12em;color:var(--or)}
.plus{position:relative;width:16px;height:16px;margin-top:5px}
.plus::before,.plus::after{content:"";position:absolute;left:0;top:7.5px;width:16px;height:1.5px;background:var(--or);transition:transform .25s}
.plus::after{transform:rotate(90deg)}
.question[open] .plus::after{transform:rotate(0)}
.reponse{padding:0 22px 22px 58px;font-size:16px;line-height:1.72}

/* ---- sources et avertissement ---- */
.sources .sources-intro{margin:26px 0 10px;font-size:14px;font-weight:600;line-height:1.5;color:var(--encre)}
.sources h2+.sources-intro{margin-top:0}
.guide-corps .sources-liste{border-top:1px solid var(--ligne)}
.guide-corps .sources-liste>li{display:flex;align-items:baseline;justify-content:space-between;gap:8px 18px;max-width:none;margin:0;padding:12px 0;border-bottom:1px solid var(--ligne);font-size:15px;line-height:1.55}
.guide-corps .sources-liste>li::before{display:none}
.guide-corps .sources-liste a{color:var(--encre);text-decoration:underline;text-decoration-color:rgba(13,13,15,.22);text-underline-offset:3px}
.guide-corps .sources-liste a:hover{color:var(--or);text-decoration-color:var(--or)}
.sources-liste .ext{display:inline-block;width:14px;height:14px;margin-left:6px;vertical-align:-1px;color:var(--or)}
.domaine{flex:none;font:500 12px/1.4 var(--narrow);letter-spacing:.06em;color:var(--gris-2);white-space:nowrap}
.avertissement{display:flex;align-items:flex-start;gap:12px;max-width:none!important;margin-top:40px;padding:18px 20px;border:1px solid var(--ligne-forte);background:var(--blanc-chaud);font-size:15px;line-height:1.55;color:var(--encre)}
.avertissement svg{width:20px;height:20px;flex:none;margin-top:1px;color:var(--or)}
.avertissement>div{min-width:0}
.avertissement p{margin:0;max-width:none}
.avertissement .avertissement-titre{margin-bottom:6px;font:700 13px/1.2 var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--or-fonce)}
.avertissement{scroll-margin-top:96px}
.mention-tete{display:flex;align-items:flex-start;gap:8px;margin-top:8px;font-size:13.5px;line-height:1.5;color:var(--gris)}
.mention-tete .etoile{flex:none;width:18px;text-align:center;font-weight:700;color:var(--or-fonce)}
.mention-tete a{color:var(--encre);text-decoration:underline;text-underline-offset:2px}

/* ---- cartes des guides (accueil des guides et « autres guides ») ---- */
.autres-guides{padding:clamp(44px,5vw,64px) 0 clamp(52px,6vw,80px);border-top:1px solid var(--ligne-forte)}
.bloc-titre{display:flex;align-items:center;gap:14px;margin:0 0 26px;font:600 12px/1 var(--narrow);letter-spacing:.2em;text-transform:uppercase;color:var(--encre)}
.bloc-titre::before{content:"";width:28px;height:1px;background:var(--or-doux)}
.cartes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:0;padding:0;list-style:none}
.cartes-index{grid-template-columns:repeat(3,minmax(0,1fr))}
.carte{position:relative;display:flex;flex-direction:column;gap:14px;height:100%;min-height:100%;padding:30px 28px 26px;overflow:hidden;background:var(--carte);border:1px solid var(--ligne-forte);transition:border-color .35s,transform .45s var(--doux),box-shadow .45s var(--doux)}
.carte::before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:var(--or-trait);transform:scaleX(0);transform-origin:left;transition:transform .6s var(--doux)}
.carte:hover,.carte:focus-within{border-color:var(--or);transform:translateY(-4px);box-shadow:0 34px 56px -40px rgba(13,13,15,.5)}
.carte:hover::before,.carte:focus-within::before{transform:scaleX(1)}
.carte-haut{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.carte-num{flex:none;margin:-6px -4px 0 0;font-weight:900;font-size:clamp(56px,5vw,72px);line-height:.8;letter-spacing:-.05em;color:transparent;-webkit-text-stroke:1.2px rgba(125,97,48,.42);pointer-events:none;transition:color .5s,-webkit-text-stroke-color .5s}
.carte:hover .carte-num,.carte:focus-within .carte-num{color:rgba(212,181,119,.3);-webkit-text-stroke-color:var(--or-trait)}
.carte-rubrique{display:flex;align-items:center;gap:10px;padding-top:6px;font:600 11px/1.3 var(--narrow);letter-spacing:.18em;text-transform:uppercase;color:var(--or)}
.carte-rubrique svg{width:22px;height:22px;flex:none}
.carte h2,.carte h3{margin:2px 0 0;font-size:clamp(20px,1.7vw,24px);font-weight:700;line-height:1.25;letter-spacing:-.015em;color:var(--encre);text-wrap:balance}
.carte h2 a,.carte h3 a{color:inherit;text-decoration:none}
.carte h2 a::after,.carte h3 a::after{content:"";position:absolute;inset:0;z-index:1}
.carte h2 a:focus-visible,.carte h3 a:focus-visible{outline:none}
.carte:focus-within{outline:2px solid var(--or);outline-offset:3px}
.carte-texte{font-size:15px;line-height:1.6;color:var(--gris)}
.carte-pied{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px 16px;margin-top:auto;padding-top:16px;border-top:1px solid var(--ligne)}
.carte-infos{display:flex;flex-direction:column;align-items:flex-start;gap:10px;min-height:54px}
.carte-meta{font-size:13px;color:var(--gris)}
.carte-etiquette{display:inline-flex;align-items:center;gap:8px;padding:5px 9px;border:1px solid var(--or-doux);font:600 10.5px/1.3 var(--narrow);letter-spacing:.12em;text-transform:uppercase;color:var(--or-fonce)}
.carte-etiquette svg{width:14px;height:14px}
.carte-lire{display:inline-flex;align-items:center;gap:8px;font:600 12px/1 var(--narrow);letter-spacing:.16em;text-transform:uppercase;color:var(--or)}
.carte-lire svg{width:18px;height:18px;transition:transform .35s var(--doux)}
.carte:hover .carte-lire svg{transform:translateX(5px)}
.index-intro{max-width:760px;font-size:clamp(17px,1.5vw,19px);line-height:1.6;color:var(--encre)}
.index-guides{padding-top:clamp(36px,4vw,56px);padding-bottom:clamp(48px,6vw,84px)}
.note-index{display:flex;align-items:flex-start;gap:12px;max-width:760px;margin-top:34px;font-size:14.5px;line-height:1.55;color:var(--gris)}
.note-index svg{width:20px;height:20px;flex:none;color:var(--or)}

/* ---- simulateur ---- */
.sim{margin:26px 0 6px;padding:clamp(18px,2.6vw,30px);background:var(--carte);border:1px solid var(--ligne-forte);box-shadow:0 30px 60px -48px rgba(13,13,15,.45)}
.sim-tete{display:grid;gap:10px;margin-bottom:20px}
.sim-titre{display:flex;align-items:center;gap:12px;margin:0!important;font-size:clamp(19px,1.7vw,22px);font-weight:700;line-height:1.3;letter-spacing:-.01em;color:var(--encre)}
.sim-titre svg{width:28px;height:28px;flex:none;color:var(--or)}
.sim-intro{max-width:66ch;font-size:15px;line-height:1.6;color:var(--gris)}
.sim-sans-js{margin-top:6px;padding:12px 14px;border:1px solid var(--or-doux);font-size:14px;color:var(--encre)}
.sim-corps{display:grid;grid-template-columns:minmax(0,1fr) 296px;gap:28px;align-items:start}
.sim-saisies{min-width:0}
.sim fieldset{min-width:0;margin:0;padding:0;border:0}
.sim .sim-bloc{padding:20px 0 24px;border-top:1px solid var(--ligne-forte)}
.sim .sim-bloc:first-child{border-top-color:var(--encre)}
.sim-bloc>legend{float:left;width:100%;display:flex;align-items:center;gap:10px;margin:0 0 18px;padding:0;font:600 12px/1.2 var(--narrow);letter-spacing:.18em;text-transform:uppercase;color:var(--encre)}
.sim-bloc>legend+*{clear:both}
.sim-bloc>legend .n{color:var(--or)}
.sim-grille{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px;row-gap:8px}
.sim-champ{display:grid;grid-row:span 3;grid-template-rows:subgrid;min-width:0}
.sim-champ>label{align-self:end}
.sim-champ .sim-bas{display:flex;flex-direction:column;gap:6px;padding-bottom:14px}
@supports not (grid-template-rows:subgrid){
  .sim-grille{row-gap:18px}
  .sim-champ{display:flex;flex-direction:column;gap:8px}
  .sim-champ .sim-bas{padding-bottom:0}
}
.sim-champ label,.sim-question>legend{font-size:14px;font-weight:600;line-height:1.4;color:var(--encre)}
.sim-h{display:inline-block;margin-right:6px;padding:1px 6px;border:1px solid var(--or-doux);font:600 10px/1.4 var(--narrow);letter-spacing:.12em;text-transform:uppercase;color:var(--or-fonce);vertical-align:1px;white-space:nowrap}
.sim-saisie{display:flex;align-items:stretch;min-height:46px;background:var(--blanc-chaud);border:1px solid #a8987a;transition:border-color .2s,box-shadow .2s}
.sim-saisie:focus-within{border-color:var(--or);box-shadow:0 0 0 2px rgba(125,97,48,.28)}
.sim-saisie input{flex:1;width:100%;min-width:0;padding:10px 12px;border:0;border-radius:0;background:transparent;font:500 16px/1.2 var(--sans);color:var(--encre);font-variant-numeric:tabular-nums;-webkit-appearance:none;appearance:none}
.sim-saisie input:focus{outline:none}
.sim-saisie:has(input[aria-invalid="true"]){border:2px solid var(--encre);background:#fbf3e3}
.sim-unite{display:flex;align-items:center;padding:0 12px;border-left:1px solid var(--ligne);background:rgba(232,224,207,.55);font:500 13px/1.2 var(--narrow);color:var(--gris);white-space:nowrap}
.sim-aide{font-size:13px;line-height:1.5;color:var(--gris)}
.sim-aide a{color:var(--or)}
.sim-erreur{display:flex;align-items:flex-start;gap:8px;font-size:13.5px;font-weight:600;line-height:1.45;color:var(--encre)}
.sim-erreur svg{width:17px;height:17px;flex:none;margin-top:1px;color:#8a5a12}
.sim-question{margin:0 0 20px!important}
.sim-question+.sim-aide{margin-top:-10px!important}
.sim-question>legend{float:left;width:100%;margin-bottom:10px;padding:0}
.sim-question>legend+*{clear:both}
.sim-choix{display:flex;flex-wrap:wrap;gap:10px}
.sim-choix label{display:inline-flex;align-items:center;gap:10px;min-height:46px;padding:10px 16px;background:var(--blanc-chaud);border:1px solid #a8987a;font-size:15px;font-weight:600;color:var(--encre);cursor:pointer;transition:border-color .2s,background .2s}
.sim-choix label:hover{border-color:var(--or)}
.sim-choix input{width:18px;height:18px;margin:0;accent-color:var(--or)}
.sim-choix label:has(input:checked){border:2px solid var(--encre);background:#f4ecdb}
.sim-choix label:has(input:focus-visible){outline:2px solid var(--or);outline-offset:3px}
.sim-actions{padding-top:18px;border-top:1px solid var(--ligne-forte)}
.btn-ligne{display:inline-flex;align-items:center;gap:10px;min-height:46px;padding:0 20px;background:transparent;border:1px solid var(--encre);font:600 14px var(--sans);color:var(--encre);cursor:pointer;transition:border-color .2s,color .2s}
.btn-ligne:hover{border-color:var(--or);color:var(--or)}
.btn-ligne svg{width:18px;height:18px;color:var(--or)}
.sim-resultats{position:sticky;top:20px;display:flex;flex-direction:column;gap:14px;min-width:0}
.sim-resultats-titre{margin:0!important;font:600 12px/1.2 var(--narrow);letter-spacing:.18em;text-transform:uppercase;color:var(--encre)}
.sim-cle{padding:22px 22px 20px;background:var(--encre);color:var(--papier)}
.sim-cle-libelle{font:600 11px/1.3 var(--narrow);letter-spacing:.2em;text-transform:uppercase;color:var(--or-trait)}
.sim-cle-valeur{margin-top:8px!important;font-size:clamp(34px,3.4vw,44px);font-weight:900;line-height:1;letter-spacing:-.03em;color:var(--or-trait);font-variant-numeric:tabular-nums;white-space:nowrap}
.sim-cle-valeur.sim-nc{font-size:22px;font-weight:600;letter-spacing:0;color:var(--papier)}
.sim-cle-sous{margin-top:12px!important;font-size:13.5px;line-height:1.45;color:#d9d1c2}
.sim-cle-sous span{color:var(--papier);font-weight:600;white-space:nowrap}
.sim-messages{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;list-style:none}
.guide-corps .sim-messages>li{max-width:none;margin:0;padding-left:0}
.guide-corps .sim-messages>li::before{display:none}
.sim-message{display:flex;align-items:flex-start;gap:10px;padding:12px 14px!important;background:#f6ecd6;border:1px solid var(--or-doux);font-size:13.5px;line-height:1.5;color:var(--encre)}
.sim-message svg{width:18px;height:18px;flex:none;margin-top:1px;color:#8a5a12}
.sim-liste{margin:0;border-top:1px solid var(--ligne-forte)}
.sim-liste>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--ligne)}
.sim-liste dt{font-size:14px;line-height:1.35;color:var(--gris)}
.sim-liste dd{margin:0;font-size:14px;font-weight:600;line-height:1.35;color:var(--encre);text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.sim-liste .fort dt,.sim-liste .fort dd{color:var(--encre);font-weight:700}
.sim-liste .detail dt{padding-left:14px;font-size:13px}
.sim-liste .detail dd{font-size:13px;font-weight:500}
.sim-liste .sim-nc{font-weight:500;font-style:italic;color:var(--gris)}
.sim-note-negative{display:block;margin-top:4px;font-size:12.5px;font-weight:600;white-space:normal;color:var(--encre)}
.sim-sensibilite{margin-top:24px}
.sim-sensibilite .tableau{margin:10px 0 0}
.sim-sensibilite .tableau thead th,.sim-sensibilite .tableau tbody th,.sim-sensibilite .tableau tbody td{background:var(--carte)}
.sim-sensibilite .tableau-cadre::after{background:linear-gradient(90deg,rgba(251,248,242,0),var(--carte) 85%)}
.sim-sensibilite-titre{margin:0!important;font:600 12px/1.2 var(--narrow);letter-spacing:.18em;text-transform:uppercase;color:var(--encre)}
.sim-note{margin-top:14px!important;font-size:13.5px;color:var(--gris)}
.sim-mention{display:flex;align-items:flex-start;gap:10px;margin-top:10px!important;font-size:13.5px;font-weight:600;color:var(--encre)}
.sim-mention svg{width:18px;height:18px;flex:none;color:var(--or)}

/* ---- pied de page ---- */
.pied{padding:clamp(40px,5vw,56px) 0 28px;background:var(--papier-2);border-top:1px solid #d8cfbf;font-size:14px;color:var(--gris)}
.pied-grille{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.1fr;gap:36px}
.pied-marque img{width:236px;height:auto;aspect-ratio:4601/1000}
.pied-marque p{max-width:340px;margin-top:16px;line-height:1.6}
.pied-titre{margin-bottom:12px!important;font:600 11px/1 var(--narrow);letter-spacing:.2em;text-transform:uppercase;color:var(--encre)}
.pied ul{display:flex;flex-direction:column;gap:4px;margin:0;padding:0;list-style:none}
.pied li a{display:inline-flex;align-items:center;gap:10px;padding:4px 0;color:var(--encre);text-decoration:none;transition:color .2s}
.pied li a:hover{color:var(--or)}
.pied li svg{width:17px;height:17px;flex:none;color:var(--or)}
.pied-legal{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 20px;margin-top:40px;padding-top:18px;border-top:1px solid var(--ligne);font-size:12px}
.pied-prudence{max-width:880px;margin-top:14px;font-size:12px;line-height:1.6;color:var(--gris)}
.haut{display:inline-flex;align-items:center;gap:8px;color:var(--encre);text-decoration:none}
.haut svg{width:16px;height:16px;color:var(--or);transform:rotate(-90deg)}
.haut:hover{color:var(--or)}

/* ---- adaptations ---- */
@media (max-width:1180px){
  .marque-univers{display:none}
  .navigation{gap:20px}
}
@media (max-width:1000px){
  .guide-grille{grid-template-columns:minmax(0,1fr);gap:0}
  .sommaire{display:none}
  .sommaire-mobile{display:block;margin:0 0 36px;border:1px solid var(--ligne-forte);background:var(--carte)}
  .sommaire-mobile summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding:0 16px;list-style:none;cursor:pointer;font:600 12px/1 var(--narrow);letter-spacing:.18em;text-transform:uppercase;color:var(--encre)}
  .sommaire-mobile summary::-webkit-details-marker{display:none}
  .sommaire-mobile summary .gauche{display:flex;align-items:center;gap:10px}
  .sommaire-mobile summary svg{width:18px;height:18px;color:var(--or)}
  .sommaire-mobile .plus{margin-top:0}
  .sommaire-mobile[open] .plus::after{transform:rotate(0)}
  .sommaire-mobile ol{margin:0 16px 14px}
  .sim-corps{display:flex;flex-direction:column;gap:14px}
  .sim-resultats{display:contents}
  .sim-resultats-titre{margin-top:10px!important}
  .sim-cle{position:sticky;bottom:0;z-index:6;display:grid;grid-template-columns:1fr auto;align-items:center;gap:4px 14px;padding:14px 16px;box-shadow:0 -14px 30px -18px rgba(13,13,15,.55)}
  .sim-cle-valeur{grid-row:1 / span 2;grid-column:2;margin:0!important;font-size:30px}
  .sim-cle-sous{margin-top:0!important;font-size:12.5px}
  html{scroll-padding-bottom:110px}
  .cartes-index{grid-template-columns:minmax(0,1fr)}
  .pied-grille{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  .entete-rangee{flex-wrap:wrap;gap:0 12px;min-height:72px}
  .marque-logo{width:176px}
  .appel{order:1;margin-left:auto;width:44px;height:44px;padding:0;justify-content:center}
  .appel .appel-texte{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
  .menu{order:2;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;background:transparent;border:1px solid #b5a587;font:600 12px/1 var(--narrow);letter-spacing:.14em;text-transform:uppercase;color:var(--encre);cursor:pointer}
  .menu svg{width:18px;height:18px}
  .navigation{order:3;flex-direction:column;align-items:stretch;gap:0;width:100%;margin:6px 0 10px}
  html.js .navigation{display:none}
  html.js .navigation.ouverte{display:flex}
  .navigation a{padding:15px 4px;border-bottom:0;border-top:1px solid var(--ligne)}
  .navigation a:hover,.navigation a[aria-current="page"],.navigation a.actif{border-bottom:0}
}
@media (max-width:760px){
  .guide-corps{font-size:16px;line-height:1.68}
  .tableau table{font-size:14px}
  .tableau thead th{padding:12px 10px 10px;font-size:10.5px;letter-spacing:.08em}
  .tableau tbody th,.tableau tbody td{padding:11px 10px}
  .tableau.large thead th:first-child,.tableau.large tbody th{position:sticky;left:0;z-index:2;min-width:132px;max-width:150px;box-shadow:1px 0 0 var(--ligne)}
  .tableau.large.a-gauche thead th:first-child,.tableau.large.a-gauche tbody th{box-shadow:1px 0 0 var(--ligne),10px 0 12px -10px rgba(13,13,15,.35)}
  .tableau.large table{min-width:720px}
  .question summary{grid-template-columns:24px minmax(0,1fr) 14px;gap:10px;padding:18px 12px 18px 10px}
  .question h3{font-size:16px}
  .reponse{padding:0 16px 20px 44px;font-size:15.5px}
  .guide-corps .sources-liste>li{flex-direction:column;gap:2px}
  .cartes{grid-template-columns:minmax(0,1fr)}
  .carte{padding:26px 22px 22px}
  .carte-pied{grid-template-columns:minmax(0,1fr);gap:14px}
  .carte-infos{min-height:0}
  .carte-lire{justify-self:start}
  .sim-grille{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:640px){
  .pied-grille{grid-template-columns:minmax(0,1fr);gap:28px}
  .pied-legal{flex-direction:column}
  .encart{margin-left:0;margin-right:0}
  .sim{padding:16px;margin-left:-4px;margin-right:-4px}
  .sim-choix label{flex:1 1 auto}
  .sim-sensibilite .tableau thead th,.sim-sensibilite .tableau tbody th,.sim-sensibilite .tableau tbody td{padding-left:7px;padding-right:7px}
}
@media (max-width:380px){
  .marque-logo{width:150px}
  .menu{padding:0 10px}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .carte:hover,.carte:focus-within{transform:none}
}

/* ---- impression : texte complet, réponses dépliées, simulateur lisible ---- */
@media print{
  @page{margin:16mm 14mm}
  body{background:#fff;color:#000;font-size:10.5pt}
  .entete,.skip,.progression,.sommaire,.sommaire-mobile,.pied,.autres-guides,.menu,.sim-actions,.tableau-indice,.raccourci,.ariane{display:none!important}
  .bande-tete,.guide-tete::before{background:none}
  .guide-tete{padding:0 0 12pt}
  .guide-tete .filet{display:none}
  .guide-grille{display:block;padding:0}
  .guide-corps{max-width:none;font-size:10.5pt}
  .tableau-defil{overflow:visible}
  .tableau.large table{min-width:0}
  .tableau-cadre::after{display:none}
  .tableau thead th,.tableau tbody th,.tableau tbody td{background:#fff!important}
  .sim{box-shadow:none;border-color:#999}
  .sim-corps{display:block}
  .sim-resultats{position:static;display:flex;margin-top:12pt}
  .sim-cle{position:static;background:#fff;color:#000;border:1px solid #000}
  .sim-cle-valeur,.sim-cle-libelle{color:#000}
  .sim-cle-sous,.sim-cle-sous span{color:#000}
  .question,.encart,.sim-bloc,tr{break-inside:avoid}
  a{color:#000;text-decoration:none}
}
