/* Catalogue d'occasion – design v2 : fiche produit (gabarit #1582, body.ifv2.ifv2-fiche).
   Shortcodes : zzz-catalogue-v2-fiche.php. Valeurs : maquette « Materiel Occasion » (fiche).
   Jamais les classes products / product / price / button ; les règles v1 (#demande …, .if-barre-mobile)
   sont surchargées explicitement ici (#demande + !important là où la v1 en met). */

/* ---------- Fond gris du bandeau au footer (sauf la bande description) */
.ifv2-fiche .elementor-location-single{background:var(--ifv2-fond)}
.ifv2 .ifv2-racine [hidden]{display:none !important}

/* ---------- Haut de fiche */
.ifv2 .ifv2-fiche-haut{background:var(--ifv2-fond)}
.ifv2 .ifv2-fiche-ariane{padding-top:24px}
.ifv2 .ifv2-ariane ol{display:flex;flex-wrap:wrap;gap:4px 8px;font-size:12px;line-height:1.5;color:var(--ifv2-gris);list-style:none;margin:0;padding:0}
.ifv2 .ifv2-ariane li{display:flex;gap:8px;min-width:0;overflow-wrap:anywhere}
.ifv2 .ifv2-racine .ifv2-ariane a{color:var(--ifv2-gris)}
.ifv2 .ifv2-racine .ifv2-ariane a:hover{color:var(--ifv2-nuit);text-decoration:underline;text-underline-offset:2px}
.ifv2 .ifv2-ariane [aria-current]{color:var(--ifv2-texte)}

.ifv2 .ifv2-fiche-grille{padding-top:24px;padding-bottom:56px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr));gap:40px;align-items:start}
.ifv2 .ifv2-fiche-grille > *{min-width:0}

/* ---------- Galerie */
.ifv2 .ifv2-galerie{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;min-width:0}
.ifv2 .ifv2-galerie-n{grid-template-columns:76px minmax(0,1fr)}
.ifv2 .ifv2-miniatures{position:relative;min-height:0}
.ifv2 .ifv2-miniatures-defil{position:absolute;inset:0;display:flex;flex-direction:column;gap:10px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:2px;margin:-2px}
.ifv2 .ifv2-racine .ifv2-miniature{flex:none;width:76px;height:92px;padding:6px;border-radius:12px;background:#fff;border:2px solid var(--ifv2-bord);overflow:hidden;display:flex;align-items:center;justify-content:center;transition:border-color .2s}
.ifv2 .ifv2-racine .ifv2-miniature:hover{background:#fff;border-color:var(--ifv2-bord-fort)}
.ifv2 .ifv2-racine .ifv2-miniature[aria-current="true"]{border-color:var(--ifv2-nuit)}
.ifv2 .ifv2-racine .ifv2-miniature img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.ifv2 .ifv2-racine .ifv2-miniature:focus-visible{outline-offset:-2px;outline-width:3px}

/* la classe woocommerce-product-gallery est gardée pour PhotoSwipe : neutraliser les styles WooCommerce */
.ifv2 .ifv2-racine .ifv2-photo{position:relative;opacity:1 !important;float:none;width:auto;margin:0;background:#fff;border:1px solid var(--ifv2-bord);border-radius:20px;aspect-ratio:4/5;overflow:hidden}
.ifv2 .ifv2-photo-pile,.ifv2 .ifv2-photo-diapo,.ifv2 .ifv2-photo-diapo > a{display:block;width:100%;height:100%;margin:0}
.ifv2 .ifv2-photo-diapo > a{cursor:zoom-in}
.ifv2 .ifv2-racine .ifv2-photo img.ifv2-photo-img{display:block;width:100%;height:100%;max-width:none;object-fit:contain;padding:32px;background:#fff}
.ifv2 .ifv2-photo-vide{background:none}
.ifv2 .ifv2-compteur{position:absolute;bottom:14px;right:14px;font-family:var(--ifv2-mono);font-size:11px;line-height:1.3;color:var(--ifv2-gris);background:var(--ifv2-fond);border-radius:999px;padding:5px 10px;pointer-events:none}
.ifv2 .ifv2-racine .ifv2-agrandir{position:absolute;top:14px;right:14px;display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border-radius:999px;background:rgba(255,255,255,.92);border:1px solid var(--ifv2-bord);color:var(--ifv2-texte);font-size:12px;font-weight:600;line-height:1;transition:border-color .2s}
.ifv2 .ifv2-racine .ifv2-agrandir:hover{background:#fff;border-color:var(--ifv2-nuit);color:var(--ifv2-texte)}
.ifv2 .ifv2-agrandir-icone{font-size:14px}
@media (pointer:coarse){.ifv2 .ifv2-racine .ifv2-agrandir{height:44px;padding:0 14px}}

/* une colonne : pleine largeur, hauteur bornée (sans quoi le ratio 4:5 + max-height rétrécit le bloc à gauche) */
@media (max-width:975px){.ifv2 .ifv2-racine .ifv2-photo{width:100%;aspect-ratio:auto;max-height:none;height:min(calc(100vw * 1.25),72vh,680px)}}
@media (max-width:767px){
  .ifv2 .ifv2-galerie-n{grid-template-columns:minmax(0,1fr)}
  .ifv2 .ifv2-miniatures{order:2}
  .ifv2 .ifv2-miniatures-defil{position:static;flex-direction:row;overflow-x:auto;overflow-y:hidden;margin:0;padding:2px}
  .ifv2 .ifv2-racine .ifv2-miniature{width:64px;height:78px}
  .ifv2 .ifv2-racine .ifv2-photo{height:min(calc(100vw * 1.25),60vh);height:min(calc(100vw * 1.25),60svh);width:100%}
  .ifv2 .ifv2-racine .ifv2-photo img.ifv2-photo-img{padding:20px}
}

/* ---------- Colonne d'informations */
.ifv2 .ifv2-fiche-infos{display:flex;flex-direction:column;gap:20px;min-width:0}
@media (min-width:976px) and (min-height:760px){
  .ifv2 .ifv2-fiche-infos{position:sticky;top:24px}
  .admin-bar.ifv2 .ifv2-fiche-infos{top:56px}
}
.ifv2 .ifv2-pastilles{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.ifv2 .ifv2-racine a.ifv2-pastille{display:inline-block;background:var(--ifv2-bleu-clair);color:var(--ifv2-bleu-fonce);border-radius:999px;padding:6px 12px;font-size:12px;font-weight:600;line-height:1.3}
.ifv2 .ifv2-racine a.ifv2-pastille:hover{color:var(--ifv2-nuit);text-decoration:underline;text-underline-offset:2px}
.ifv2 .ifv2-racine h1.ifv2-fiche-titre{font-size:clamp(32px,3.6vw,46px);line-height:1.05;letter-spacing:-.02em;font-weight:700;color:var(--ifv2-texte);overflow-wrap:anywhere;text-wrap:balance}

.ifv2 .ifv2-cartouche{background:#fff;border:1px solid var(--ifv2-bord);border-radius:18px;padding:22px 24px;display:flex;flex-direction:column;gap:20px}
@media (max-width:420px){.ifv2 .ifv2-cartouche{padding:18px 16px}}
.ifv2 .ifv2-prix{display:flex;align-items:baseline;gap:4px 12px;flex-wrap:wrap}
.ifv2 .ifv2-prix-ht{font-size:34px;font-weight:700;letter-spacing:-.02em;line-height:1.15;color:var(--ifv2-texte)}
.ifv2 .ifv2-prix-unite{font-size:16px;font-weight:600;letter-spacing:0;color:var(--ifv2-gris)}
.ifv2 .ifv2-prix-ttc{font-size:14px;color:var(--ifv2-gris)}
.ifv2 .ifv2-prix-demande .ifv2-prix-ht{font-size:28px}

.ifv2 .ifv2-racine .ifv2-ident{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:1px;background:var(--ifv2-bord);border:1px solid var(--ifv2-bord);border-radius:12px;overflow:hidden;margin:0}
.ifv2 .ifv2-ident > div{background:var(--ifv2-case);padding:12px 14px;display:flex;flex-direction:column;gap:4px;min-width:0}
.ifv2 .ifv2-ident dt{font-size:11px;line-height:1.3;color:var(--ifv2-gris);text-transform:uppercase;letter-spacing:.06em;font-weight:400}
.ifv2 .ifv2-racine .ifv2-ident dd{margin:0;font-size:14px;font-weight:600;line-height:1.35;overflow-wrap:anywhere;color:var(--ifv2-texte)}
.ifv2 .ifv2-racine .ifv2-ident dd.ifv2-ident-ref{font-size:13px;font-weight:500}
.ifv2 .ifv2-racine .ifv2-ident dd a{color:var(--ifv2-lien)}
.ifv2 .ifv2-racine .ifv2-ident dd a:hover{color:var(--ifv2-nuit);text-decoration:underline;text-underline-offset:2px}
@media (max-width:479px){
  .ifv2 .ifv2-racine .ifv2-ident{grid-auto-flow:row;grid-auto-columns:auto;grid-template-columns:minmax(0,1fr)}
  .ifv2 .ifv2-ident > div{flex-direction:row;align-items:baseline;justify-content:space-between;gap:12px}
  .ifv2 .ifv2-racine .ifv2-ident dd{text-align:right}
}

.ifv2 .ifv2-actions{display:flex;gap:10px;flex-wrap:wrap}
.ifv2 .ifv2-racine .ifv2-btn-demande{flex:999 1 220px}
.ifv2 .ifv2-racine .ifv2-btn-tel{flex:1 1 auto;padding:0 20px}
@media (max-width:420px){.ifv2 .ifv2-racine .ifv2-btn-tel{flex:1 1 100%}.ifv2 .ifv2-racine .ifv2-btn-demande{flex-basis:100%;font-size:14px;padding:0 14px}}

.ifv2 .ifv2-question{display:flex;gap:14px;align-items:flex-start;padding:4px 4px 0}
.ifv2 .ifv2-question-icone{width:40px;height:40px;border-radius:12px;background:var(--ifv2-ambre-fond);color:var(--ifv2-ambre);display:flex;align-items:center;justify-content:center;font-weight:700;flex:none}
.ifv2 .ifv2-question-texte{font-size:14px;line-height:1.6;color:var(--ifv2-gris-fonce);min-width:0}
.ifv2 .ifv2-question-titre{color:var(--ifv2-texte);font-weight:600}
.ifv2 .ifv2-racine .ifv2-question-texte a{font-weight:600;white-space:nowrap}
.ifv2 .ifv2-horaires{font-size:13px;color:var(--ifv2-gris)}

/* ---------- Description (bande blanche) */
.ifv2 .ifv2-fiche-description{background:#fff;border-top:1px solid var(--ifv2-bord);border-bottom:1px solid var(--ifv2-bord)}
.ifv2 .ifv2-desc-grille{padding-top:56px;padding-bottom:56px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));gap:40px 64px}
.ifv2 .ifv2-desc-grille > *{min-width:0}
@media (max-width:600px){.ifv2 .ifv2-desc-grille{padding-top:40px;padding-bottom:40px}}
.ifv2 .ifv2-desc{display:flex;flex-direction:column;gap:16px}
.ifv2 .ifv2-racine .ifv2-desc-titre,.ifv2 .ifv2-racine .ifv2-similaires-titre{font-size:26px;font-weight:700;letter-spacing:-.01em;line-height:1.2}
.ifv2 .ifv2-desc-soustitre{font-size:18px;font-weight:600;line-height:1.4;color:var(--ifv2-texte);overflow-wrap:anywhere}
.ifv2 .ifv2-desc-resume{font-size:16px;line-height:1.6;color:var(--ifv2-texte)}
.ifv2 .ifv2-desc-corps,.ifv2 .ifv2-desc-resume{overflow-wrap:anywhere;text-wrap:pretty}
.ifv2 .ifv2-desc-corps{font-size:15px;line-height:1.7;color:var(--ifv2-gris-fonce)}
.ifv2 .ifv2-racine .ifv2-desc-corps p,.ifv2 .ifv2-racine .ifv2-desc-resume p{margin:0}
.ifv2 .ifv2-racine .ifv2-desc-corps p + p,.ifv2 .ifv2-racine .ifv2-desc-resume p + p{margin-top:12px}
.ifv2 .ifv2-racine .ifv2-desc-corps a{text-decoration:underline;text-underline-offset:2px}
.ifv2 .ifv2-racine .ifv2-desc-corps ul,.ifv2 .ifv2-racine .ifv2-desc-corps ol{padding-left:1.3em;margin:8px 0}
.ifv2 .ifv2-racine .ifv2-desc-corps ul{list-style:disc}
.ifv2 .ifv2-racine .ifv2-desc-corps ol{list-style:decimal}

.ifv2 .ifv2-racine h2.ifv2-surtitre{font-family:var(--ifv2-mono);font-size:12px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--ifv2-gris);line-height:1.4;margin:0 0 12px}
.ifv2 .ifv2-racine .ifv2-carac-liste{margin:0;display:flex;flex-direction:column;border-top:1px solid var(--ifv2-bord)}
.ifv2 .ifv2-carac-liste > div{display:grid;grid-template-columns:140px minmax(0,1fr);gap:16px;padding:13px 0;border-bottom:1px solid var(--ifv2-bord);font-size:14px;line-height:1.45}
.ifv2 .ifv2-carac-liste dt{color:var(--ifv2-gris);font-weight:400;overflow-wrap:anywhere}
.ifv2 .ifv2-racine .ifv2-carac-liste dd{margin:0;font-weight:600;color:var(--ifv2-texte);overflow-wrap:anywhere}
@media (max-width:380px){.ifv2 .ifv2-carac-liste > div{grid-template-columns:110px minmax(0,1fr);gap:12px}}

/* ---------- Bloc #demande (sections Elementor du gabarit) */
.ifv2 #demande.ifv2-demande{max-width:1240px;margin:0 auto;padding:64px 28px;background:none}
@media (max-width:600px){.ifv2 #demande.ifv2-demande{padding:48px 16px}}
.ifv2 #demande .ifv2-demande-bloc{position:relative;overflow:hidden;padding:clamp(24px,4vw,48px) !important;border-radius:24px;background:var(--ifv2-nuit)}
.ifv2 #demande .ifv2-demande-bloc > .elementor-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:40px;max-width:none;flex-wrap:nowrap}
.ifv2 #demande .ifv2-demande-bloc > .elementor-container > .elementor-column{width:100% !important;max-width:none;min-width:0}
.ifv2 #demande .ifv2-demande-bloc .elementor-widget-wrap{padding:0 !important;align-content:flex-start}

.ifv2 .ifv2-demande-info{display:flex;flex-direction:column;gap:18px;color:#fff}
.ifv2 .ifv2-racine h2.ifv2-demande-titre{font-size:clamp(26px,3vw,36px);line-height:1.1;letter-spacing:-.02em;font-weight:700;color:#fff;overflow-wrap:anywhere}
.ifv2 .ifv2-materiel{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:14px;display:flex;gap:14px;align-items:center}
.ifv2 .ifv2-materiel-vignette{position:relative;width:56px;height:68px;border-radius:10px;background:#fff;flex:none;padding:4px;overflow:hidden}
.ifv2 .ifv2-racine .ifv2-materiel-vignette img{width:100%;height:100%;object-fit:contain}
.ifv2 .ifv2-materiel-texte{display:flex;flex-direction:column;gap:4px;min-width:0}
.ifv2 .ifv2-racine .ifv2-materiel-libelle{font-size:11px;line-height:1.3;text-transform:uppercase;letter-spacing:.06em;color:var(--ifv2-sombre-doux)}
.ifv2 .ifv2-racine .ifv2-materiel-valeur{font-size:15px;font-weight:600;line-height:1.4;color:#fff;overflow-wrap:anywhere}
.ifv2 .ifv2-racine .ifv2-demande-tel{font-size:14px;line-height:1.6;color:var(--ifv2-sombre-texte)}

/* Formulaire Elementor : neutralise la v1 (#demande … !important) et le kit (20 px, majuscules, #9A4D00…) */
.ifv2 #demande .ifv2-form .elementor-form-fields-wrapper{margin:0 -7px -14px !important}
.ifv2 #demande .ifv2-form .elementor-field-group{padding:0 7px !important;margin:0 0 14px !important}
.ifv2 #demande .ifv2-form .elementor-field-type-hidden{margin:0 !important;padding:0 !important}
.ifv2 #demande .ifv2-form .elementor-field-group-materiel{display:none !important}
.ifv2 #demande .ifv2-form .elementor-field-group > label,.ifv2 #demande .ifv2-form .elementor-field-label{display:block;font-family:Montserrat,system-ui,sans-serif;font-size:12px !important;font-weight:500 !important;line-height:1.4;text-transform:none !important;letter-spacing:normal;color:var(--ifv2-sombre-texte) !important;margin:0 0 6px;padding:0 !important;text-shadow:none}
.ifv2 #demande .ifv2-form .elementor-mark-required .elementor-field-label:after{color:var(--ifv2-erreur-sombre) !important;padding-left:.2em}
.ifv2 #demande .ifv2-form .elementor-field-group .elementor-field-textual{height:48px;min-height:48px;border-radius:10px !important;border:1px solid rgba(255,255,255,.40) !important;background:rgba(255,255,255,.05) !important;background-color:rgba(255,255,255,.05) !important;color:#fff !important;padding:0 14px !important;font-family:Montserrat,system-ui,sans-serif;font-size:15px !important;line-height:1.4;box-shadow:none !important;outline:none;transition:border-color .2s,background-color .2s;width:100%}
.ifv2 #demande .ifv2-form .elementor-field-group textarea.elementor-field-textual{height:auto;min-height:calc(4 * 1.5em + 24px);padding:12px 14px !important;line-height:1.5;resize:vertical}
.ifv2 #demande .ifv2-form .elementor-field-textual::placeholder{color:rgba(255,255,255,.55) !important;opacity:1}
.ifv2 #demande .ifv2-form .elementor-field-textual:focus{border-color:var(--ifv2-bleu) !important;background:rgba(255,255,255,.08) !important;background-color:rgba(255,255,255,.08) !important;outline:none !important}
.ifv2 #demande .ifv2-form .elementor-field-textual:focus-visible{outline:2px solid #fff !important;outline-offset:2px}
.ifv2 #demande .ifv2-form .elementor-field-textual:-webkit-autofill{-webkit-text-fill-color:#fff;-webkit-box-shadow:0 0 0 1000px #1d2633 inset !important;caret-color:#fff}
@media (max-width:767px){.ifv2 #demande .ifv2-form .elementor-field-group .elementor-field-textual{font-size:16px !important}}
@media (min-width:600px){.ifv2 #demande .ifv2-form .elementor-field-group.elementor-col-50{width:50% !important}}
@media (max-width:599px){.ifv2 #demande .ifv2-form .elementor-field-group.elementor-col-50{width:100% !important}}

/* cases à cocher (équivalent + consentement) */
.ifv2 #demande .ifv2-form .elementor-field-subgroup{display:flex;flex-direction:column;gap:8px}
.ifv2 #demande .ifv2-form .elementor-field-option{display:flex !important;gap:10px;align-items:flex-start;margin:0 !important}
.ifv2 #demande .ifv2-form .elementor-field-option input[type=checkbox]{width:16px !important;height:16px !important;flex:none;margin:3px 0 0 !important;accent-color:var(--ifv2-bleu);vertical-align:baseline;cursor:pointer}
.ifv2 #demande .ifv2-form .elementor-field-option input[type=checkbox]:focus-visible{outline:2px solid #fff !important;outline-offset:2px}
.ifv2 #demande .ifv2-form .elementor-field-option label{font-family:Montserrat,system-ui,sans-serif;font-size:13px !important;font-weight:400 !important;line-height:1.5 !important;text-transform:none !important;color:var(--ifv2-sombre-clair) !important;cursor:pointer;margin:0;padding:0}
.ifv2 #demande .ifv2-form .elementor-field-type-acceptance .elementor-field-option label{font-size:12px !important;color:var(--ifv2-sombre-doux) !important}
.ifv2 #demande .ifv2-form .elementor-field-type-acceptance .elementor-field-option input{margin-top:2px !important}
.ifv2 #demande .ifv2-form .elementor-field-type-acceptance.elementor-mark-required .elementor-field-option label:after{content:" *";color:var(--ifv2-erreur-sombre)}

/* erreurs */
.ifv2 #demande .ifv2-form .elementor-message,.ifv2 #demande .ifv2-form .elementor-error .elementor-message{font-size:13px;line-height:1.5;color:var(--ifv2-erreur-sombre) !important}
.ifv2 #demande .ifv2-form .elementor-message.elementor-message-danger,.ifv2 #demande .ifv2-form .elementor-field-group .elementor-message{color:var(--ifv2-erreur-sombre) !important}
.ifv2 #demande .ifv2-form .elementor-message:before{color:inherit}
.ifv2 #demande .ifv2-form .elementor-error .elementor-field-textual{border-color:var(--ifv2-erreur-sombre) !important}
.ifv2 #demande .ifv2-form .elementor-message-success{display:none !important}

/* bouton d'envoi */
.ifv2 #demande .ifv2-form .e-form__buttons{margin-bottom:0 !important;justify-content:flex-start}
.ifv2 #demande .ifv2-form .elementor-button[type=submit]{width:auto !important;flex:none;height:52px;min-height:52px;padding:0 28px !important;border:0 !important;border-radius:12px !important;background:#fff !important;background-color:#fff !important;color:var(--ifv2-nuit) !important;font-family:Montserrat,system-ui,sans-serif;font-size:15px !important;font-weight:700 !important;line-height:1;text-transform:none !important;letter-spacing:normal;box-shadow:none !important;display:inline-flex;align-items:center;gap:10px;transition:background-color .2s}
.ifv2 #demande .ifv2-form .elementor-button[type=submit]:hover,.ifv2 #demande .ifv2-form .elementor-button[type=submit]:focus{background:var(--ifv2-bleu-clair) !important;background-color:var(--ifv2-bleu-clair) !important;color:var(--ifv2-nuit) !important}
.ifv2 #demande .ifv2-form .elementor-button[type=submit]:focus-visible{outline:2px solid #fff !important;outline-offset:3px}
.ifv2 #demande .ifv2-form .elementor-button[type=submit] .elementor-button-text::after{content:"→";content:"→" / "";margin-left:10px}
.ifv2 #demande .ifv2-form .elementor-button[type=submit] .elementor-button-content-wrapper{color:inherit}
@media (max-width:420px){.ifv2 #demande .ifv2-form .elementor-button[type=submit]{width:100% !important;justify-content:center}}

/* carte « Demande envoyée » (if-v2-fiche.js) */
.ifv2 .ifv2-envoye{display:flex;flex-direction:column;justify-content:center;gap:12px;padding:24px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(255,255,255,.04);color:#fff;font-family:Montserrat,system-ui,sans-serif}
.ifv2 .ifv2-envoye:focus{outline:none}
.ifv2 .ifv2-envoye:focus-visible{outline:2px solid #fff;outline-offset:2px}
.ifv2 .ifv2-envoye-coche{width:44px;height:44px;border-radius:50%;background:var(--ifv2-vert);color:var(--ifv2-nuit);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:20px}
.ifv2 .ifv2-envoye p.ifv2-envoye-titre{font-size:20px;font-weight:700;line-height:1.3;color:#fff;margin:0}
.ifv2 .ifv2-envoye p.ifv2-envoye-texte{font-size:14px;line-height:1.6;color:var(--ifv2-sombre-texte);margin:0}

/* ---------- Matériels similaires */
.ifv2 .ifv2-similaires > .ifv2-wrap{padding-bottom:72px}
.ifv2 .ifv2-racine .ifv2-similaires-titre{margin:0 0 20px}
.ifv2 .ifv2-similaires-grille{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}
.ifv2 .ifv2-similaires-grille > *{min-width:0}
.ifv2 .ifv2-aucun{grid-column:1/-1;border:1.5px dashed var(--ifv2-pointille);border-radius:16px;padding:28px;display:flex;flex-direction:column;justify-content:center;gap:14px}
@media (min-width:600px){
  .ifv2 .ifv2-similaires-grille{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ifv2 .ifv2-similaires-n1 .ifv2-aucun{grid-column:auto}
}
@media (min-width:1100px){
  .ifv2 .ifv2-similaires-grille{grid-template-columns:repeat(4,minmax(0,1fr))}
  .ifv2 .ifv2-similaires-n1 .ifv2-aucun,.ifv2 .ifv2-similaires-n2 .ifv2-aucun{grid-column:span 2}
}
@media (max-width:600px){.ifv2 .ifv2-aucun{padding:22px 20px}}
.ifv2 .ifv2-racine .ifv2-aucun-titre{font-size:20px;font-weight:700;line-height:1.3;color:var(--ifv2-texte)}
.ifv2 .ifv2-aucun-texte{font-size:15px;line-height:1.65;color:var(--ifv2-gris-fonce);text-wrap:pretty}
.ifv2 .ifv2-racine .ifv2-aucun-texte a{font-weight:600}

/* ---------- Barre mobile v1 (hors .ifv2-racine) habillée maquette */
@media (max-width:767px){
  /* le focus clavier ne doit pas finir sous la barre fixe (WCAG 2.4.11) */
  html:has(body.ifv2-fiche){scroll-padding-bottom:calc(81px + env(safe-area-inset-bottom))}
  body.ifv2-fiche .if-barre-mobile{gap:10px;padding:8px 16px calc(8px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--ifv2-bord);box-shadow:0 -8px 24px -16px rgba(18,26,38,.35)}
  body.ifv2-fiche .if-barre-mobile a{min-height:48px;border-radius:12px;font-family:Montserrat,system-ui,sans-serif;font-size:14px;font-weight:600;text-transform:none;letter-spacing:normal;line-height:1.2;text-align:center;padding:0 12px}
  body.ifv2-fiche .if-barre-mobile a.if-barre-demande{flex:1 1 auto;background:var(--ifv2-nuit);color:#fff !important}
  body.ifv2-fiche .if-barre-mobile a.if-barre-appel{flex:0 0 auto !important;min-width:96px;border:1px solid var(--ifv2-bord-fort);background:#fff;color:var(--ifv2-texte) !important}
  body.ifv2-fiche .if-barre-mobile a:focus-visible{outline:2px solid var(--ifv2-lien);outline-offset:2px}
  body.ifv2-fiche{padding-bottom:calc(72px + env(safe-area-inset-bottom))}
}
@media (max-width:767px) and (hover:hover){
  body.ifv2-fiche .if-barre-mobile a.if-barre-demande:hover{background:var(--ifv2-lien)}
}
.ifv2 .ifv2-racine a[href^="tel:"]{white-space:nowrap}
@media (max-width:359px){
  body.ifv2-fiche .if-barre-mobile{gap:8px;padding-left:12px;padding-right:12px}
  body.ifv2-fiche .if-barre-mobile a{font-size:13px;padding:0 10px}
  body.ifv2-fiche .if-barre-mobile a.if-barre-appel{min-width:80px}
}
/* messages d'erreur Elementor sous le champ (le groupe est en flex) */
.ifv2 #demande .ifv2-form .elementor-field-group > .elementor-message{flex:0 0 100%;width:100%;margin-top:6px}
.ifv2 #demande .ifv2-form .elementor-field-option{flex-wrap:wrap}
.ifv2 #demande .ifv2-form .elementor-field-option > .elementor-message,.ifv2 #demande .ifv2-form .elementor-field-subgroup > .elementor-message{flex:0 0 100%;width:100%;padding-left:26px;margin-top:2px}
.ifv2 #demande .ifv2-form .elementor-form-fields-wrapper{align-items:flex-start}
.ifv2 #demande .ifv2-form .elementor-field-group{align-content:flex-start}
.ifv2 #demande .ifv2-form .elementor-field-option label{flex:1 1 0;min-width:0}
