/* Pistemiaou — fiche produit (prototype). Styles propres à la fiche, confinés à body.page-fiche. */
.page-fiche{--fi-ink:#26332c;--fi-soft:#4b5851;--fi-line:#e3d9c4}
.page-fiche main{padding-bottom:24px}
.page-fiche .crumbs{padding:14px 0 10px}
.page-fiche .crumbs a{display:inline-flex;align-items:center;min-height:44px;padding:0 2px}
.page-fiche .crumbs a:hover{text-decoration:underline}

/* contrastes et cibles dans l'en-tête (fiche uniquement) */
.page-fiche .hdr-nav a,.page-fiche .hdr-right .btn,.page-fiche .hdr-right .icon-btn,.page-fiche .burger,.page-fiche .logo{min-height:44px}
.page-fiche .icon-btn{min-width:44px}
.page-fiche .fam-ble{background:#2f6fb0}.page-fiche .fam-loc{background:#5f7487}.page-fiche .fam-rf{background:#a85407}.page-fiche .fam-gsm{background:#2a7443}

/* statuts de vérification */
.page-fiche .st{display:inline-block;font-size:11.5px;font-weight:700;letter-spacing:.02em;border-radius:7px;padding:2px 8px;white-space:nowrap;vertical-align:middle}
.page-fiche .st-demo{background:#fbe8cf;color:#7a410a}
.page-fiche .st-todo{background:#e3ebf3;color:#34485b}
.page-fiche .st-ok{background:#dff0da;color:#1f5a35}
.page-fiche .demo-chip{color:#7a410a;vertical-align:middle}

/* en-tête de fiche : galerie / informations / encart prix */
.fi-top{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr) 340px;gap:30px;align-items:start;padding-bottom:26px}
.page-fiche .g-main{height:auto;aspect-ratio:4/3;background:#efe8d6;box-shadow:none;border:1px solid var(--fi-line)}
.page-fiche .g-main .fam{position:absolute;left:12px;top:12px;z-index:3;font-size:13px;padding:6px 12px;display:flex;gap:6px;border-radius:9px}
.page-fiche .g-main .fam .ic{width:18px;height:18px}
.page-fiche .g-nav{width:44px;height:44px}
.g-slide{position:absolute;inset:0}
.g-slide img{width:100%;height:100%;object-fit:cover}
.ph{position:absolute;inset:14px;border:2px dashed #b9ad92;border-radius:14px;background:linear-gradient(160deg,#f7f1e2,#ece3cd);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;text-align:center;padding:16px;color:#4b4638}
.ph-ic .ic{width:44px;height:44px;stroke-width:1.4;color:#6b6350}
.ph b{font-size:16px;color:#2f2b20}.ph span:not(.ph-ic){font-size:14px}.ph small{font-size:12.5px;color:#5a5445}
.g-status{font-size:13px;color:var(--fi-soft);margin:8px 2px 0;min-height:19px}
.page-fiche .thumbs{gap:8px;margin-top:8px}
.page-fiche .thumb{flex:1;height:48px;min-width:44px;border:1px solid #cfc4a9;background:#f4eddc;border-radius:11px;padding:0;font-weight:700;color:#4b4638;display:grid;place-items:center}
.page-fiche .thumb.on{border:2px solid var(--forest);background:#e7f0e1;color:var(--forest-d)}
.page-fiche .thumb img{width:100%;height:100%;object-fit:cover}

.fi-info{position:relative;padding-right:52px}
.page-fiche .fi-heart{top:0;right:0;width:44px;height:44px;background:#fff;border:1px solid var(--fi-line)}
.page-fiche .fi-heart .ic{width:24px;height:24px}
.fi-brand{font-family:var(--serif);font-weight:700;font-size:20px;color:var(--forest-d);display:block}
.page-fiche h1{font-size:42px;line-height:1.08;font-weight:800;margin:2px 0 8px;color:#15222b}
.fi-tag{font-size:18px;color:var(--fi-ink);margin-bottom:10px}
.fi-rating{display:flex;align-items:center;gap:6px 8px;flex-wrap:wrap;font-size:16px}
.fi-rating .stars{font-size:18px}
.fi-small{font-size:13px;line-height:1.5;color:var(--fi-soft);margin-top:4px}
.fi-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:16px 0 14px}
.fi-facts li{display:grid;grid-template-columns:24px 1fr;grid-template-areas:"i l" "i v";column-gap:10px;padding:10px 12px;background:#fff;border:1px solid var(--fi-line);border-radius:12px}
.fi-facts li:last-child{grid-column:1/-1}
.fi-facts .ic{grid-area:i;width:22px;height:22px;color:#2a6a55;margin-top:2px}
.fi-facts span{grid-area:l;font-size:12.5px;color:var(--fi-soft)}.fi-facts b{grid-area:v;font-size:15px}
.fi-verif{display:flex;gap:10px;align-items:flex-start;background:#fbe8cf;border-radius:12px;padding:12px 14px;font-size:14px;line-height:1.5;color:#3f2a10}
.fi-verif .ic{width:20px;height:20px;margin-top:1px;color:#7a410a}
.page-fiche .ed-link{display:inline-block;padding:4px 0}

.fi-buy{background:#fff;border:1px solid var(--fi-line);border-radius:18px;box-shadow:var(--shadow-s);padding:20px 20px 18px}
.fi-buy-h{font-family:var(--sans);font-size:14px;font-weight:700;color:var(--fi-soft);text-transform:uppercase;letter-spacing:.05em}
.fi-price{display:flex;align-items:baseline;gap:10px;margin-top:4px}.fi-price b{font-family:var(--serif);font-size:38px;line-height:1.1}
.fi-sub{margin-top:10px;font-size:15px}.fi-total{margin-top:4px;font-size:15px;color:var(--fi-ink)}.fi-total b{color:var(--forest-d)}
.fi-actions{display:flex;flex-direction:column;gap:10px;margin:16px 0}
.fi-actions .btn{min-height:46px}
.fi-offers{border-top:1px solid var(--fi-line);padding-top:12px}
.fi-offers h3{font-family:var(--sans);font-size:15px;margin-bottom:4px}.fi-offers p{font-size:13.5px;line-height:1.5;color:var(--fi-soft);margin-top:4px}
.fi-aff{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:999px;background:#e3ebf3;color:#34485b;font-size:12px;font-weight:600;line-height:1.5;vertical-align:1px}

/* navigation de sections */
.sec-nav{position:sticky;top:0;z-index:30;background:rgba(251,247,238,.97);border-bottom:1px solid var(--fi-line);margin:0 -24px;padding:0 24px;backdrop-filter:blur(4px)}
.sec-nav ul{display:flex;gap:4px;overflow-x:auto;scrollbar-width:thin;margin:0;padding:0}
.sec-nav a{display:flex;align-items:center;min-height:48px;padding:0 14px;white-space:nowrap;font-weight:600;font-size:15px;color:#33413a;border-bottom:3px solid transparent}
.sec-nav a:hover{color:var(--forest-d);background:rgba(28,91,64,.06)}
.sec-nav a[aria-current=true]{color:var(--forest-d);border-bottom-color:var(--forest)}
.sec-nav a:focus-visible{outline-offset:-3px}

/* corps */
.fi-body{padding-top:8px}
.fi-sec{padding:38px 0 10px;scroll-margin-top:60px}
.fi-sec h2{font-family:var(--serif);font-size:30px;line-height:1.18;font-weight:700;display:flex;gap:12px;align-items:flex-start;margin-bottom:18px}
.fi-sec h2 .ic{width:30px;height:30px;color:#2a6a55;stroke-width:1.5;margin-top:3px}
.fi-sec h3{font-family:var(--serif);font-size:20px;line-height:1.25;margin:0 0 8px}
.fi-two{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:32px;align-items:start}
.fi-two-cost{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr)}
.fi-cols{display:grid;grid-template-columns:1fr 1fr;gap:20px}.fi-cols3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.fi-two>*,.fi-cols>*,.fi-cols3>*{min-width:0}
.fi-card{background:#fff;border:1px solid var(--fi-line);border-radius:16px;box-shadow:var(--shadow-s);padding:20px 22px}
.fi-card p+p{margin-top:8px}.fi-card p,.fi-prose p{font-size:15.5px;line-height:1.62;color:var(--fi-ink)}
.fi-card h2{font-size:26px}.fi-card h3 .st{margin-left:6px;font-family:var(--sans);font-size:11px}
.fi-prose p{max-width:68ch;margin-bottom:12px}.fi-prose h3{margin-top:20px}
.fi-chiprow{margin:-6px 0 10px}
.fi-lead{font-size:16.5px;line-height:1.6;color:var(--fi-ink);max-width:70ch;margin-bottom:18px}
.fi-lead-s{margin:-8px 0 16px}
.page-fiche .spec{font-size:15px}.page-fiche .spec th{width:44%;color:#1b2b25}.page-fiche .spec th,.page-fiche .spec td{padding:9px 0}
.page-fiche .spec td .ic.ok{width:16px}.sws{display:inline-flex;gap:6px}.page-fiche .sw{margin:0}
.fi-legend{display:flex;flex-direction:column;gap:12px;font-size:14.5px;line-height:1.5;color:var(--fi-ink)}
.fi-legend .st{margin-right:4px}
.fi-side .fi-card+.fi-card{margin-top:16px}
.fi-list{display:flex;flex-direction:column;gap:9px}
.fi-list li{display:flex;gap:10px;font-size:15.5px;line-height:1.55;color:var(--fi-ink)}
.fi-list .ic{width:20px;height:20px;margin-top:2px;color:var(--forest);stroke-width:2.4}
.fi-pro{background:#eef6ea;border-color:#cfe2c8}.fi-con{background:#fdf0e2;border-color:#f0d6b8}.fi-con .fi-list .ic{color:#9a4b0b}
.fi-todo{display:flex;gap:8px;align-items:flex-start;margin-top:10px;font-size:14px;line-height:1.5;color:#34485b;background:#eef3f8;border-radius:10px;padding:9px 12px}
.fi-todo .ic{width:18px;height:18px;margin-top:1px;flex:none}
.fi-callout{display:flex;gap:12px;align-items:flex-start;margin-top:20px;background:#fdf0e2;border:1px solid #f0d6b8;border-radius:14px;padding:14px 18px;font-size:15.5px;line-height:1.6;color:#3a2a14}
.fi-callout .ic{width:22px;height:22px;color:#9a4b0b;margin-top:2px}
.fi-profile{margin-top:20px}
.fi-note{display:flex;gap:10px;align-items:flex-start;background:#eef6ea;border-radius:12px;padding:12px 14px;font-size:15px;color:#1f4d2e}.fi-note .ic{width:20px;height:20px;margin-top:1px}

/* calculateur */
.fi-calc{margin-top:0}.fi-two-cost .fi-table{min-width:0}.fi-prose .fi-scroll{margin:14px 0 8px}
.fi-calc h3{margin-bottom:12px}
.fi-fs{border:0;padding:0;margin:0 0 14px;min-width:0}
.fi-fs legend{font-weight:700;font-size:14.5px;margin-bottom:8px;padding:0}
.fi-opt{display:block;margin-bottom:8px;cursor:pointer}
.fi-opt input,.fi-y input{position:absolute;opacity:0;width:1px;height:1px}
.fi-opt-b{display:flex;flex-direction:column;gap:2px;padding:11px 14px 11px 44px;min-height:52px;border:2px solid var(--fi-line);border-radius:12px;background:#fff;position:relative;font-size:14px;color:var(--fi-soft)}
.fi-opt-b b{font-size:15.5px;color:var(--ink)}
.fi-opt-b::before{content:"";position:absolute;left:14px;top:50%;width:18px;height:18px;margin-top:-9px;border-radius:50%;border:2px solid #8a948d;background:#fff}
.fi-opt input:checked+.fi-opt-b{border-color:var(--forest);background:#eff6ea}
.fi-opt input:checked+.fi-opt-b::before{border-color:var(--forest);background:radial-gradient(var(--forest) 0 45%,#fff 50%)}
.fi-opt input:focus-visible+.fi-opt-b,.fi-y input:focus-visible+span{outline:3px solid #f0a52e;outline-offset:2px}
.fi-seg{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}
.fi-y span{display:flex;align-items:center;justify-content:center;min-height:44px;border:2px solid var(--fi-line);border-radius:11px;background:#fff;font-weight:600;font-size:14.5px;cursor:pointer;padding:0 4px;text-align:center}
.fi-y input:checked+span{background:var(--forest);border-color:var(--forest);color:#fff}
.fi-out{background:#f4f8f0;border:1px solid #d3e1cf;border-radius:14px;padding:14px 16px;margin-top:6px}
.fi-rows{margin:0}.fi-rows>div{display:flex;justify-content:space-between;gap:12px;padding:6px 0;border-bottom:1px solid #dfe8da;font-size:15px}
.fi-rows dt{color:var(--fi-ink)}.fi-rows dd{margin:0;font-weight:700}
.fi-rows .fi-tot{border:0;padding-top:10px;font-size:17px}.fi-rows .fi-tot dd{font-size:26px;color:var(--forest-d);font-family:var(--serif)}
.fi-per{font-size:14px;color:var(--fi-soft);margin-top:4px}
.fi-min{font-size:14px;line-height:1.5;color:var(--fi-ink);margin-top:8px;background:#fff;border-radius:10px;padding:9px 12px}

/* tableaux (défilement interne uniquement) */
.fi-scroll{overflow-x:auto;border:1px solid var(--fi-line);border-radius:14px;background:#fff}
.fi-scroll:focus-visible{outline-offset:2px}
.fi-table{width:100%;border-collapse:collapse;font-size:14.5px;min-width:520px}
.fi-table th,.fi-table td{text-align:left;padding:11px 14px;border-bottom:1px solid #efe7d4;vertical-align:top;line-height:1.45}
.fi-table thead th{background:#f4ecdb;font-size:13px;color:#33413a;white-space:nowrap}
.fi-table tbody th{font-weight:700;background:#fff;position:sticky;left:0}
.fi-table tr:last-child th,.fi-table tr:last-child td{border-bottom:0}
.fi-table tr.me th,.fi-table tr.me td{background:#eff6ea}
.me-l{display:block;font-size:11px;font-weight:700;color:#1f5a35;text-transform:uppercase;letter-spacing:.04em}
.fi-table tr.min td,.fi-table tr.min th{background:#f4f8f0}
.fi-table tr.sel td,.fi-table tr.sel th{background:#fff6dc}
.fi-status{min-width:640px}
.fi-two-cost .fi-table{min-width:460px}

/* compatibilité : poids du chat */
.fi-wt{margin-top:14px;border-top:1px solid var(--fi-line);padding-top:12px}
.fi-wt label{display:block;font-weight:700;font-size:14.5px;margin-bottom:6px}
.fi-wt input{width:100%;max-width:160px;min-height:44px;border:2px solid #c9bea5;border-radius:11px;padding:0 12px;font:inherit;background:#fff}
.fi-wt p{margin-top:8px;font-size:15px;font-weight:600;color:var(--forest-d)}

/* alternatives */
.fi-alts{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:20px}
.fi-alt{background:#fff;border:1px solid var(--fi-line);border-radius:16px;box-shadow:var(--shadow-s);padding:18px;display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.fi-alt h3{margin:4px 0 0;font-size:19px}.fi-alt h3 a{display:inline-flex;align-items:center;min-height:44px;color:var(--forest-d);text-decoration:underline;text-decoration-color:rgba(28,91,64,.35);text-underline-offset:3px}
.fi-alt-meta,.fi-alt-t{font-size:14px;color:var(--fi-soft);margin:0}
.fi-alt .btn{margin-top:auto}
.fi-alt h3{margin-top:0}

.fi-faq{display:flex;flex-direction:column;gap:12px;max-width:900px}
.page-fiche .ed-q summary{min-height:48px}
.fi-missing{padding:48px 0;max-width:640px}.fi-missing h1{margin-bottom:12px}.fi-missing p{margin-bottom:10px}
.fi-missing-list{display:grid;gap:2px;margin-top:20px}.fi-missing-list a{display:inline-flex;min-height:44px;align-items:center;color:var(--forest-d);text-decoration:underline}

/* tablette */
@media (max-width:1100px){
  .fi-top{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}.fi-buy{grid-column:1/-1}
  .fi-actions{flex-direction:row;flex-wrap:wrap}.fi-actions .btn{flex:1 1 200px}
  .page-fiche h1{font-size:36px}
  .fi-two,.fi-two-cost{grid-template-columns:1fr;gap:22px}
  .fi-cols3{grid-template-columns:1fr 1fr}
  .fi-alts{grid-template-columns:1fr 1fr}
}
/* mobile */
@media (max-width:700px){
  .fi-top{grid-template-columns:1fr;gap:20px}
  .fi-info{padding-right:0}.fi-brand{padding-right:54px}
  .page-fiche h1{font-size:31px;padding-right:0}
  .fi-facts{gap:6px}.fi-facts li{padding:9px 10px;column-gap:8px}.fi-facts b{font-size:14px}
  .fi-cols,.fi-cols3,.fi-alts{grid-template-columns:1fr}
  .fi-sec{padding-top:30px}.fi-sec h2{font-size:25px}.fi-sec h2 .ic{width:26px;height:26px}
  .fi-card{padding:18px 16px}.fi-card h2{font-size:23px}
  .fi-price b{font-size:34px}
  .fi-actions{flex-direction:column}.fi-actions .btn{flex:none}
  .sec-nav{margin:0 -16px;padding:0 16px}.page-fiche .wrap{padding:0 16px}
  .fi-seg{grid-template-columns:repeat(5,1fr);gap:4px}.fi-y span{font-size:13.5px}
  .fi-callout{padding:12px 14px}
}
@media (prefers-reduced-motion:reduce){.page-fiche *{transition:none!important;animation:none!important;scroll-behavior:auto!important}}


.fi-alt .btn{min-height:44px}



@media (max-width:1100px){.fi-cols3>:last-child:nth-child(odd){grid-column:1/-1}}


/* ---- 5B : hiérarchie du premier écran mobile ---- */
.fi-mprice{display:none}
@media (max-width:700px){
  .fi-top{position:relative}
  .fi-info{display:contents}
  .fi-info>.fi-brand{order:1;padding-right:56px}
  .fi-info>h1{order:2;margin:0}
  .fi-info>.fi-tag{order:3;margin:0;font-size:17px}
  .fi-info>.fi-rating{order:4}
  .fi-info>.fi-small{order:5;margin:0}
  .fi-info>.fi-mprice{order:6;display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 8px;margin:0;padding:10px 14px;background:#fff;border:1px solid var(--fi-line);border-radius:12px;font-size:14px;color:var(--fi-soft)}
  .fi-mprice b{font-family:var(--serif);font-size:26px;line-height:1.1;color:var(--ink)}
  .fi-top>.fi-gal{order:7}
  .fi-info>.fi-facts{order:8;margin:0}
  .fi-info>.fi-verif{order:9}
  .fi-top>.fi-buy{order:10}
  .fi-top{display:flex;flex-direction:column;gap:12px}
  .page-fiche .fi-heart{top:0;right:0}
  .page-fiche .g-main{aspect-ratio:4/3}.ph{inset:12px;padding:46px 40px 14px;gap:3px}.ph-ic .ic{width:36px;height:36px}.ph b{font-size:15px}.ph span:not(.ph-ic){font-size:13.5px}.ph small{font-size:12.5px}.fi-mprice>span:last-child{flex-basis:100%}
  .page-fiche h1{font-size:30px;line-height:1.1}
  .fi-small,.g-status{font-size:14px}
  .page-fiche .st{font-size:12px;padding:2px 8px}
  .page-fiche .demo-chip{font-size:11.5px}
  .fi-table{font-size:15px}.fi-table thead th{font-size:13.5px}
  .fi-legend{font-size:15px}
  .fi-facts span{font-size:13px}
  .me-l{font-size:12px}
}



/* lisibilité : aucun texte sous 12 px, textes courants >= 13 px */
.page-fiche .st{font-size:12px}.page-fiche .demo-chip{font-size:11.5px}.page-fiche .fam{font-size:12.5px}.ph small,.fi-facts span{font-size:13px}.me-l{font-size:12px}
.page-fiche .fi-small{font-size:13.5px}


/* Boutons marchands (mission 9) : destination explicite, contraste élevé, zone tactile ≥ 48 px */
.buy-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:50px;padding:12px 18px;border-radius:12px;border:2px solid #14472f;background:#1c5b40;color:#fff;font-weight:700;font-size:16px;line-height:1.25;text-align:center;text-decoration:none;box-shadow:0 3px 10px rgba(28,91,64,.28);transition:background .15s,transform .12s}
.buy-btn:hover{background:#14472f;transform:translateY(-1px);color:#fff}
.buy-btn:focus-visible{outline:3px solid #f5b83d;outline-offset:2px}
.buy-btn .buy-ext{flex:none}
.buy-top{margin:14px 0 6px;padding:14px;border:1px solid var(--fi-line);border-radius:14px;background:#f6faf7}
.buy-item{margin:0 0 14px}
.buy-item .fi-aff{margin:8px 0 0}
.buy-note{font-size:13.5px;line-height:1.5;color:var(--fi-soft);margin:6px 0 0}
.buy-date{margin:2px 0 0}
.buy-aff{font-size:13px;line-height:1.5;color:var(--fi-soft);margin:6px 0 0}
.fi-remind{max-width:640px}
.fi-remind h2{margin-bottom:12px}
@media (max-width:640px){.buy-btn{font-size:16px;min-height:52px}.buy-top{padding:12px}}

/* CTA du haut : sur grand écran, le bloc « Où acheter » est déjà visible à côté ; évite les boutons en double */
@media (min-width:1101px){.buy-top{display:none}}
@media (max-width:700px){.fi-info>.buy-top{order:6;margin:0}}
