/* Page Tarifs en cartes (mission tarifs-tableau-de-bord, 11/11/2026). Composants communs (.card, .btn-gold, .btn-line) = iv.css ; ici seulement la mise en page de la page. */
body:has(.tf){background:var(--paper)}
body:has(.tf) header{background:radial-gradient(90% 140% at 78% 0,rgba(140,34,50,.55),transparent 70%),linear-gradient(180deg,#3a0f1c,#14060c);color:#fbf1dc;padding-bottom:var(--sp-7)}
body:has(.tf) header a.b{color:#fbf1dc}
body:has(.tf) header h1{font:600 var(--iv-fs-4)/1.12 var(--f-d);letter-spacing:-.02em;max-width:19em;color:#fbf1dc}
body:has(.tf) header p{color:#eadfc6;font-size:var(--iv-fs-2)}
@media (min-width:600px){body:has(.tf) header h1{font-size:var(--iv-fs-5)}}
body:has(.tf) main .wrap{max-width:1180px;padding-inline:max(16px,env(safe-area-inset-left))}
body:has(.tf) .toc,body:has(.tf) .stick{display:none}
body:has(.tf) footer{padding-bottom:var(--sp-7)}
body:has(.tf) .lede{font-size:var(--iv-fs-2);max-width:40em;color:var(--ink2)}
body:has(.tf) main h2{font:600 var(--iv-fs-4)/1.1 var(--f-d);letter-spacing:-.02em;margin:var(--sp-8) 0 var(--sp-4)}
@media (min-width:600px){body:has(.tf) main h2{font-size:var(--iv-fs-5)}}
body:has(.tf) main h2:first-of-type{margin-top:var(--sp-6)}
/* sélecteur */
.tf-pick{margin:0 0 var(--sp-5)}
.tf-q{font:600 var(--iv-fs-3)/1.2 var(--f-d)!important;margin:0 0 var(--sp-3)!important}
.tf-chips{display:flex;gap:var(--sp-2);flex-wrap:wrap}
.tf-chips button{min-height:44px;min-width:64px;padding:0 18px;border-radius:999px;border:1.5px solid var(--ink);background:transparent;color:var(--ink);font:700 var(--iv-fs-2)/1 var(--f-b);cursor:pointer;transition:background var(--iv-dur-1),color var(--iv-dur-1),transform var(--iv-dur-1)}
.tf-chips button:active{transform:scale(.97)}
.tf-chips button[aria-pressed=true]{background:var(--ink);color:var(--paper)}
@media (hover:hover){.tf-chips button:not([aria-pressed=true]):hover{background:rgba(22,26,51,.06)}}
.tf-msg{margin:var(--sp-3) 0 0!important;font:600 var(--iv-fs-2)/1.4 var(--f-b);color:var(--acc)!important;min-height:1.4em}
/* cartes de formule */
.tf-grid{display:grid;gap:var(--sp-4);grid-template-columns:1fr}
@media (min-width:700px){.tf-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.tf-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
.tf-card{position:relative;display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-5);transition:transform .25s var(--iv-ease),box-shadow .25s var(--iv-ease),border-color .25s var(--iv-ease),opacity .25s}
.tf-card h3{font:600 var(--iv-fs-3)/1.15 var(--f-d)!important;margin:0!important}
.tf-card.on{border:2px solid var(--gold2);box-shadow:0 1px 2px rgba(22,26,51,.10),0 24px 48px -18px rgba(190,140,40,.55)}
.tf-badge{position:absolute;top:-14px;inset-inline-start:var(--sp-5);margin:0!important;padding:5px 12px;border-radius:999px;background:linear-gradient(180deg,var(--gold1),var(--gold2));color:var(--ink)!important;font:700 var(--iv-fs-1)/1.2 var(--f-b)}
.tf-price{margin:0!important;display:flex;flex-direction:column;gap:2px}
.tf-amt{font:600 var(--iv-fs-5)/1 var(--f-d);letter-spacing:-.02em;color:var(--ink)}
.tf-once{font:500 var(--iv-fs-1)/1.3 var(--f-b);color:var(--ink2)}
.tf-f{list-style:none;margin:0!important;padding:0!important;display:grid;gap:var(--sp-2);flex:1;align-content:start}
.tf-f li{position:relative;margin:0!important;padding-inline-start:26px;font-size:var(--iv-fs-1);line-height:1.45;color:var(--ink)!important}
.tf-f li::before,.tf-y::before{content:"";position:absolute;inset-inline-start:0;top:3px;width:16px;height:16px;background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%238a6516' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 8.5l3.2 3.2L13 4.8'/%3E%3C/svg%3E")}
.tf-card .btn{margin-top:var(--sp-2)}
.tf-card .btn,.tf-card .btn:hover{color:var(--ink)!important;text-decoration:none}
/* mise en avant par le sélecteur : les autres cartes s'estompent un peu */
.tf-grid[data-pick] .tf-card:not(.on){opacity:.72}
@media (prefers-reduced-motion:reduce){.tf-card{transition:none}}
/* tableau comparatif dépliable */
.tf-cmp{background:transparent!important;border:0!important;padding:0!important;margin:0!important}
.tf-cmp summary{display:inline-flex;align-items:center;gap:var(--sp-2);min-height:44px;font:700 var(--iv-fs-2)/1.2 var(--f-b);cursor:pointer;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;list-style:none}
.tf-cmp summary::-webkit-details-marker{display:none}
.tf-cmp summary::after{content:"";width:10px;height:10px;border:solid currentColor;border-width:0 2px 2px 0;transform:rotate(45deg) translateY(-3px);transition:transform .25s var(--iv-ease)}
.tf-cmp[open] summary::after{transform:rotate(-135deg)}
@media (hover:hover){.tf-cmp summary:hover{color:var(--acc)}}
.tf-scroll{overflow-x:auto;margin-top:var(--sp-4);border-radius:var(--r-md);box-shadow:var(--shadow-sm);background:var(--card)}
.tf-t{width:100%;min-width:640px;border-collapse:collapse;font-size:var(--iv-fs-1)}
.tf-t th,.tf-t td{padding:14px 16px;border:0;border-bottom:1px solid var(--line);text-align:center;vertical-align:middle;overflow-wrap:normal}
.tf-t thead th{font:700 var(--iv-fs-1)/1.2 var(--f-b);background:var(--paper)}
.tf-t tbody th{text-align:start;font-weight:600;min-width:200px;background:transparent}
.tf-t th:first-child{text-align:start}
.tf-t tr:last-child th,.tf-t tr:last-child td{border-bottom:0}
.tf-y{position:relative;display:inline-block;width:16px;height:16px;vertical-align:middle}
.tf-y::before{top:0}
.tf-no{color:var(--ink2)}
/* options et réassurance */
.tf-opts{display:grid;gap:var(--sp-4);grid-template-columns:1fr}
@media (min-width:700px){.tf-opts{grid-template-columns:repeat(2,minmax(0,360px))}}
.tf-opt{display:grid;gap:var(--sp-2);padding:var(--sp-5)}
.tf-opt h3{font:600 var(--iv-fs-3)/1.15 var(--f-d)!important;margin:0!important}
.tf-opt p{margin:0!important;font-size:var(--iv-fs-1)}
.tf-opt .tf-amt{font-size:var(--iv-fs-4)}
.tf-re{display:grid;gap:var(--sp-5);grid-template-columns:1fr}
@media (min-width:800px){.tf-re{grid-template-columns:repeat(3,1fr)}}
.tf-r{display:grid;gap:var(--sp-2);align-content:start}
.tf-r svg{color:var(--acc)}
.tf-r h3{font:600 var(--iv-fs-3)/1.2 var(--f-d)!important;margin:var(--sp-2) 0 0!important}
.tf-r p{margin:0!important;font-size:var(--iv-fs-1);color:var(--ink2)!important}
/* FAQ : accordéon, même carte que le reste */
body:has(.tf) main details:not(.tf-cmp){background:var(--iv-grain),var(--paper);border:1px solid rgba(22,26,51,.08);border-radius:var(--r-md);padding:0 var(--sp-5);margin:var(--sp-3) 0;box-shadow:var(--shadow-sm)}
body:has(.tf) main details:not(.tf-cmp) summary{display:flex;justify-content:space-between;align-items:center;gap:var(--sp-4);min-height:56px;font:600 var(--iv-fs-2)/1.3 var(--f-b);cursor:pointer;list-style:none}
body:has(.tf) main details:not(.tf-cmp) summary::-webkit-details-marker{display:none}
body:has(.tf) main details:not(.tf-cmp) summary::after{content:"";flex:none;width:9px;height:9px;border:solid var(--acc);border-width:0 2px 2px 0;transform:rotate(45deg) translateY(-3px);transition:transform .25s var(--iv-ease)}
body:has(.tf) main details[open]:not(.tf-cmp) summary::after{transform:rotate(-135deg)}
body:has(.tf) main details:not(.tf-cmp) p{padding-bottom:var(--sp-4);font-size:var(--iv-fs-2);line-height:var(--iv-lh)}
/* bandeau final et pages liées : fond velours, bouton or (plus de bloc bleu marine) */
body:has(.tf) .cta-band{background:linear-gradient(180deg,#3a0f1c,#14060c);border-radius:var(--r-lg);padding:var(--sp-7) var(--sp-5);box-shadow:var(--shadow-md)}
body:has(.tf) .cta-band h2{color:#fbf1dc;margin-top:0!important}
body:has(.tf) .cta-band p{color:#eadfc6;font-size:var(--iv-fs-2)}
body:has(.tf) .cta-band .btn{min-height:52px;padding:0 26px;font-size:var(--iv-fs-2)}
body:has(.tf) .cta-band .btn-glass{background:transparent;border:1.5px solid #fbf1dc;color:#fbf1dc}
body:has(.tf) .related a{background:var(--iv-grain),var(--paper);border-radius:var(--r-md);box-shadow:var(--shadow-sm)}
body:has(.tf) .crumb,body:has(.tf) .crumb a,body:has(.tf) .related a span{font-size:var(--iv-fs-1)}
body:has(.tf) header p{display:none}
/* arabe : le défilement horizontal du tableau reste dans sa boîte (sinon la page s'élargit) */
.tf-scroll{direction:ltr}
.tf-t{direction:inherit}
[dir=rtl] .tf-t{direction:rtl}
body:has(.tf) header .wrap{max-width:1180px}
.tf-badge{position:static;align-self:flex-start;margin:0 0 calc(var(--sp-1)*-1)!important}
.tf-card .btn{padding-inline:14px}
