/* Widgets Petit Zèbre — Réassurance (classes préfixées pzw-, reprises de l'artefact) */
.pzw-reass{padding:20px 0}
.pzw-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.pzw-rea{display:flex;gap:12px;align-items:center;padding:16px;background:#fff;border:1px solid #e5ecf0;border-radius:14px}
.pzw-ic{width:42px;height:42px;flex:0 0 42px;border-radius:12px;background:#fffaf0;border:1.5px solid #e3b143;display:grid;place-items:center}
.pzw-ic svg{width:21px;height:21px;stroke:#c8992f;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.pzw-rea b{display:block;font-size:13px;font-weight:800;letter-spacing:.01em;color:#26313c}
.pzw-rea small{display:block;font-size:13px;color:#5d6b78;margin-top:2px;line-height:1.35}
.pzw-logos{display:flex;gap:5px;margin-top:5px}
.pzw-logos svg{height:18px;width:28px;border-radius:3px}
@media(max-width:1100px){.pzw-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.pzw-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.pzw-grid{grid-template-columns:1fr}}

/* Widget Hero Petit Zèbre (classes préfixées pzw-, reprises de l'artefact) */
.pzw-hero{padding:30px 0 8px}
.pzw-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:22px}
.pzw-hero-main{position:relative;border-radius:22px;overflow:hidden;min-height:430px;display:flex;align-items:flex-end;background:linear-gradient(135deg,#dfe8ee 0%,#f3e7cf 60%,#f6ede0 100%)}
.pzw-hero-txt{position:relative;padding:38px 40px;max-width:560px}
.pzw-eyebrow{font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#c8992f;margin:0}
.pzw-hero-main h1{font-size:40px;font-weight:800;color:#374756;letter-spacing:-.03em;margin:8px 0 0}
.pzw-hero-sub{margin-top:14px;font-size:17px;color:#4a5966;max-width:44ch}
.pzw-hero-cta{margin-top:22px;display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.pzw-btn{display:inline-flex;align-items:center;gap:8px;padding:14px 26px;border-radius:12px;font-size:15px;font-weight:800;background:#485868;color:#fff;box-shadow:0 8px 22px -10px rgba(72,88,104,.8);transition:transform .15s,background .18s;text-decoration:none}
.pzw-btn:hover{background:#e3b143;color:#2b3644;transform:translateY(-1px)}
.pzw-btn.gh{background:rgba(255,255,255,.75);color:#374756;box-shadow:none}
.pzw-btn.gh:hover{background:#fff;color:#374756}
.pzw-hero-trust{margin-top:18px;display:flex;align-items:center;gap:8px;font-size:13px;color:#4a5966}
.pzw-hero-trust .st{color:#c8992f;letter-spacing:1px}
.pzw-hero-side{display:grid;grid-template-rows:1fr 1fr;gap:22px}
.pzw-hero-card{position:relative;border-radius:22px;overflow:hidden;padding:22px 24px;display:flex;flex-direction:column;justify-content:flex-end;min-height:200px;color:#fff;text-decoration:none}
.pzw-hero-card.g1{background:linear-gradient(135deg,#5d7385,#3c4c5b)}
.pzw-hero-card.g2{background:linear-gradient(135deg,#c98f3d,#e3b143)}
.pzw-hero-card .k{font-size:11.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;opacity:.85}
.pzw-hero-card b{font-size:21px;font-weight:800;letter-spacing:-.02em;margin-top:4px;line-height:1.15}
.pzw-hero-card span{margin-top:8px;font-size:13px;opacity:.9;display:inline-flex;align-items:center;gap:6px}
.pzw-hero-card.g2 .k,.pzw-hero-card.g2 span{color:#3a2e12;opacity:.9}
.pzw-hero-card.g2 b{color:#2b2109}
@media(max-width:760px){.pzw-hero-grid{grid-template-columns:1fr}.pzw-hero-side{grid-template-columns:1fr 1fr;grid-template-rows:none}.pzw-hero-main h1{font-size:30px}}

/* Boutons hero : forcer la couleur du texte (le reskin impose a{color:ardoise}) */
.pzw-hero .pzw-btn{color:#fff !important}
.pzw-hero .pzw-btn:hover{color:#2b3644 !important}
.pzw-hero .pzw-btn.gh,.pzw-hero .pzw-btn.gh:hover{color:#374756 !important}

/* Widget Rayons Petit Zèbre (classes préfixées pzw-, reprises de l'artefact) */
.pzw-rayons-w{padding:0}
.pzw-sec-h{display:flex;align-items:flex-end;justify-content:space-between;gap:12px 16px;margin-bottom:20px;flex-wrap:wrap}
.pzw-sec-title{font-size:26px;font-weight:800;margin:0;color:#26313c}
.pzw-sec-sub{font-size:14px;color:#5d6b78;margin:4px 0 0}
.pzw-tout{font-size:13.5px;font-weight:700;color:#c8992f !important;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;text-decoration:none}
.pzw-tout:hover{text-decoration:underline;text-underline-offset:3px}
.pzw-tout svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.pzw-rayons{display:grid;grid-template-columns:repeat(8,1fr);gap:12px}
.pzw-ray{display:flex;flex-direction:column;align-items:center;gap:10px;padding:18px 8px;background:#fff;border:1px solid #e5ecf0;border-radius:16px;text-align:center;transition:transform .15s,border-color .15s;text-decoration:none}
.pzw-ray:hover{transform:translateY(-3px);border-color:#e3b143}
.pzw-em{width:52px;height:52px;border-radius:15px;background:#fffaf0;display:grid;place-items:center}
.pzw-em svg{width:26px;height:26px;stroke:#485868;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.pzw-ray b{font-size:13px;font-weight:700;line-height:1.2;color:#26313c}
@media(max-width:1100px){.pzw-rayons{grid-template-columns:repeat(4,1fr)}}
@media(max-width:600px){.pzw-rayons{grid-template-columns:repeat(2,1fr)}}

/* ===== Coups de cœur (produits) ===== */
.pzw-prods{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.pzw-prod{background:#fff;border:1px solid #e5ecf0;border-radius:16px;overflow:hidden;display:flex;flex-direction:column;transition:transform .15s,box-shadow .15s}
.pzw-prod:hover{transform:translateY(-3px);box-shadow:0 18px 40px -22px rgba(32,45,58,.5)}
.pzw-pim-w{position:relative}
.pzw-pim{display:block;aspect-ratio:1/1;height:auto;background-color:#fff;background-position:center;background-size:contain;background-repeat:no-repeat;background-origin:content-box;padding:16px;box-sizing:border-box}
.pzw-pim.pzw-ph{background:repeating-linear-gradient(135deg,#eef3f6,#eef3f6 12px,#e6edf1 12px,#e6edf1 24px)}
.pzw-ptag{position:absolute;top:10px;left:10px;background:#fdeeea;color:#c2543f;font-size:11px;font-weight:800;border-radius:999px;padding:3px 9px}
.pzw-pbd{padding:14px 15px 16px;display:flex;flex-direction:column;flex:1}
.pzw-prod .br{font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#8a99a6}
.pzw-prod .nm{font-size:14px;font-weight:600;line-height:1.35;margin-top:4px;color:#26313c}
.pzw-prod .rt{display:flex;align-items:center;gap:5px;margin-top:8px;font-size:12px;color:#8a99a6}
.pzw-prod .rt .st{color:#e3b143}
.pzw-prod .pr{margin-top:auto;padding-top:10px;display:flex;align-items:baseline;gap:8px}
.pzw-prod .now{font-size:17px;font-weight:800;color:#26313c}
.pzw-prod .was{font-size:13px;color:#8a99a6;text-decoration:line-through}
.pzw-add{margin:0 15px 15px;padding:10px;border:1.5px solid #485868;border-radius:10px;color:#485868 !important;font-size:12.5px;font-weight:800;text-align:center;text-decoration:none;transition:.15s}
.pzw-add:hover{background:#485868;color:#fff !important}

/* ===== Liste de naissance ===== */
.pzw-liste{background:linear-gradient(135deg,#eef4f7,#fbf3e2);border:1px solid #e5ecf0;border-radius:24px;padding:40px;position:relative;overflow:hidden}
.pzw-lead{max-width:600px}
.pzw-liste .pzw-eyebrow{color:#c8992f}
.pzw-liste-h2{font-size:30px;font-weight:800;margin:12px 0 0;color:#374756}
.pzw-lead p{margin-top:12px;font-size:16px;color:#4a5966;max-width:52ch}
.pzw-parcours{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:26px}
.pzw-parc{background:#fff;border:1px solid #e5ecf0;border-radius:16px;padding:22px;display:flex;flex-direction:column;gap:10px}
.pzw-parc .pzw-ic{width:46px;height:46px;border-radius:13px;background:#fffaf0;border:1.5px solid #e3b143;display:grid;place-items:center}
.pzw-parc .pzw-ic svg{width:23px;height:23px;stroke:#c8992f;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.pzw-parc b{font-size:16px;font-weight:800;color:#26313c}
.pzw-parc p{font-size:13px;color:#5d6b78;flex:1;margin:0}
.pzw-parc a{font-size:13.5px;font-weight:800;color:#485868 !important;display:inline-flex;align-items:center;gap:6px;text-decoration:none}
.pzw-parc a:hover{color:#c8992f !important}
.pzw-parc a svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}

/* ===== Nos marques ===== */
.pzw-mq-top{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:16px}
.pzw-mqcard{position:relative;border-radius:14px;overflow:hidden;min-height:150px;display:flex;align-items:flex-end;padding:16px;color:#fff !important;text-decoration:none}
.pzw-mqcard b{font-size:17px;font-weight:800;position:relative}
.pzw-mqcard small{position:absolute;top:14px;left:16px;font-size:11.5px;font-weight:700;background:rgba(255,255,255,.85);color:#3a4652;border-radius:999px;padding:3px 9px}
.pzw-mq-strip{display:flex;flex-wrap:wrap;gap:12px;align-items:stretch;justify-content:center}
.pzw-mqlogo{min-height:82px;padding:10px 24px;border:1px solid #e5ecf0;border-radius:16px;background:#fff;font-size:16px;font-weight:800;color:#5d6b78 !important;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
.pzw-mqlogo:hover{border-color:#e3b143;color:#26313c !important}
.pzw-mqlogo.plus{background:#485868;color:#fff !important;border-color:#485868}

/* ===== Le Mag ===== */
.pzw-mag-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:18px}
.pzw-art{background:#fff;border:1px solid #e5ecf0;border-radius:16px;overflow:hidden;display:flex;flex-direction:column;text-decoration:none}
.pzw-art:hover{box-shadow:0 18px 40px -22px rgba(32,45,58,.5)}
.pzw-aim{display:block;height:170px;background:#eef3f6 center/cover no-repeat}
.pzw-aim.pzw-ph{background:repeating-linear-gradient(135deg,#eef3f6,#eef3f6 12px,#e6edf1 12px,#e6edf1 24px)}
.pzw-art.big{grid-row:span 1}
.pzw-art.big .pzw-aim{height:240px}
.pzw-abd{padding:15px 16px 17px}
.pzw-art .k{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#7a5aa6}
.pzw-art h3{font-size:15px;font-weight:700;margin:6px 0 0;line-height:1.3;color:#26313c}
.pzw-art.big h3{font-size:20px}
.pzw-art .rd{margin-top:9px;font-size:12.5px;color:#8a99a6;display:inline-flex;align-items:center;gap:6px}

/* ===== Avis clients ===== */
.pzw-avis{background:#fffaf0;border-top:1px solid #e5ecf0;border-bottom:1px solid #e5ecf0;padding:34px 0}
.pzw-avis-h{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;text-align:center;margin-bottom:24px}
.pzw-note{font-size:34px;font-weight:800;color:#374756}
.pzw-avis-h .st{color:#e3b143;font-size:20px;letter-spacing:2px}
.pzw-meta{font-size:13px;color:#5d6b78}
.pzw-avis-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.pzw-av{background:#fff;border:1px solid #e5ecf0;border-radius:14px;padding:18px}
.pzw-av .st{color:#e3b143;letter-spacing:1px;font-size:13px}
.pzw-av p{font-size:13.5px;color:#26313c;margin:8px 0 0;line-height:1.5}
.pzw-av .who{margin-top:10px;font-size:12px;color:#8a99a6;font-weight:700}

/* ===== Instagram ===== */
.pzw-insta{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.pzw-insta a,.pzw-insta .pzw-ph{aspect-ratio:1;border-radius:12px;display:block;background:#eef3f6 center/cover no-repeat}
.pzw-insta .pzw-ph{background:repeating-linear-gradient(135deg,#eef3f6,#eef3f6 12px,#e6edf1 12px,#e6edf1 24px)}

/* ===== Newsletter ===== */
.pzw-news{background:#485868;color:#fff;border-radius:24px;padding:40px;display:grid;grid-template-columns:1.1fr .9fr;gap:26px;align-items:center}
.pzw-news h2{font-size:26px;font-weight:800;color:#fff;margin:0}
.pzw-npitch{margin:10px 0 0;font-size:14.5px;color:rgba(255,255,255,.85);max-width:46ch}
.pzw-noff{display:inline-block;margin-top:14px;background:#e3b143;color:#2b3644;font-weight:800;border-radius:999px;padding:6px 15px;font-size:13.5px}
.pzw-news form{display:flex;gap:10px;flex-wrap:wrap;margin:0}
.pzw-news input{flex:1;min-width:0;padding:14px 16px;border:0;border-radius:12px;font-size:14.5px}
.pzw-news button{padding:14px 26px;border-radius:12px;background:#e3b143 !important;color:#2b3644 !important;font-weight:800;font-size:14.5px;border:0;cursor:pointer}
.pzw-news button:hover{background:#fff !important}
.pzw-nrgpd{grid-column:1/-1;font-size:11.5px;color:rgba(255,255,255,.6);margin:-8px 0 0}

/* responsive commun blocs home */
@media(max-width:1080px){.pzw-prods{grid-template-columns:repeat(2,1fr)}.pzw-mag-grid{grid-template-columns:1fr 1fr}.pzw-art.big{grid-column:1/-1}.pzw-avis-grid{grid-template-columns:1fr 1fr}.pzw-parcours{grid-template-columns:1fr}.pzw-mq-top{grid-template-columns:repeat(2,1fr)}.pzw-news{grid-template-columns:1fr}}
@media(max-width:600px){.pzw-prods{grid-template-columns:1fr}.pzw-mag-grid,.pzw-avis-grid{grid-template-columns:1fr}}

.pzw-em-img{background-size:cover;background-position:center;border:1px solid #e5ecf0}

/* Pastille rayon agrandie (met mieux en valeur les images de catégorie) */
.pzw-em{width:70px;height:70px;border-radius:18px}
.pzw-em svg{width:32px;height:32px}

/* Rayons — mode couverture (grande image en haut de tuile) */
.pzw-rayons-cover{align-items:stretch}
.pzw-rayc{background:#fff;border:1px solid #e5ecf0;border-radius:16px;overflow:hidden;display:block;text-decoration:none;transition:transform .15s,box-shadow .15s}
.pzw-rayc:hover{transform:translateY(-3px);box-shadow:0 16px 34px -20px rgba(32,45,58,.5)}
.pzw-rayc-im{display:grid;place-items:center;height:150px;background:#fffaf0 center/cover no-repeat}
.pzw-rayc-ph svg{width:40px;height:40px;stroke:#485868;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.pzw-rayc-lbl{padding:12px 12px 14px;font-size:14px;font-weight:700;text-align:center;color:#26313c;line-height:1.25}
/* Hero — image de fond par carte + voile + texte lisible */
.pzw-hero-card .pzw-hc-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.pzw-hero-card .pzw-hc-ov{position:absolute;inset:0;z-index:1;background:linear-gradient(0deg,rgba(28,38,48,.85),rgba(28,38,48,.12))}
.pzw-hero-card .k,.pzw-hero-card b,.pzw-hero-card span{position:relative;z-index:2}
.pzw-hero-card.pzw-hc-hasimg .k,.pzw-hero-card.pzw-hc-hasimg b,.pzw-hero-card.pzw-hc-hasimg span{color:#fff !important}

/* bouton bas de bloc « coups de coeur » */
.pzw-cta-w{margin-top:26px;text-align:center}
.pzw-cta{display:inline-flex;align-items:center;gap:8px;padding:13px 28px;background:#c8992f;color:#26313c !important;font-size:14px;font-weight:800;border:0;border-radius:12px;text-decoration:none;transition:.15s;cursor:pointer}
.pzw-cta:hover{background:#b3861f;color:#26313c !important}
.pzw-cta svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}

/* 2 boutons par carte produit + image/nom cliquables */
.pzw-pacts{padding:0 15px 15px;display:flex;flex-direction:column;gap:8px}
.pzw-pacts .pzw-add{margin:0}
.pzw-pim-lnk{display:block}
.pzw-prod a.nm{text-decoration:none}
.pzw-prod a.nm:hover{color:#485868}
.pzw-view{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:12px;font-weight:700;color:#5d6b78;text-decoration:none;padding:2px 0;transition:.15s}
.pzw-view:hover{color:#26313c;text-decoration:underline;text-underline-offset:3px}
.pzw-view svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.pzw-combo{width:100%;margin-bottom:8px;padding:9px 11px;border:1px solid #d9e2e8;border-radius:9px;font-size:12.5px;color:#26313c;background:#fff;font-weight:600;cursor:pointer}
.pzw-combo:focus{outline:none;border-color:#485868}
.pzw-prod .pzw-ptag:empty,.pzw-prod .was:empty{display:none}

/* Marques dynamiques : cartes avec logo réel */
.pzw-mqcard-dyn{background:#fff !important;border:1px solid #e5ecf0;color:#26313c !important;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:14px 12px;text-align:center;transition:transform .15s,box-shadow .15s,border-color .15s}
.pzw-mqcard-dyn:hover{border-color:#e3b143;box-shadow:0 16px 34px -22px rgba(32,45,58,.45);transform:translateY(-3px)}
.pzw-mqcard-dyn .pzw-mqcard-logo{width:100%;flex:1;min-height:150px;background:center/125% no-repeat}
.pzw-mqcard-dyn .pzw-mqcard-noimg{display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:800;color:#485868}
.pzw-mqcard-dyn b{position:static;font-size:15px;font-weight:800;color:#26313c}
/* Pastilles avec logo image */
.pzw-mqlogo-img{padding:6px 20px;overflow:hidden;display:inline-flex;align-items:center;justify-content:center}
.pzw-mqlogo-img img{height:74px;width:auto;max-width:200px;object-fit:contain;display:block;transform:scale(1.25)}

/* Bandeau marques défilant (Proposition A, couleur pleine) */
.pzw-mq-marquee{overflow:hidden;-webkit-mask:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.pzw-mq-track{display:flex;gap:52px;width:max-content;align-items:center;animation:pzwscroll 45s linear infinite}
.pzw-mq-marquee:hover .pzw-mq-track{animation-play-state:paused}
.pzw-mlogo{height:80px;flex:0 0 auto;display:grid;place-items:center}
.pzw-mlogo img{height:80px;width:auto;max-width:210px;object-fit:contain;display:block}
.pzw-mlogo-txt{font-size:17px;font-weight:800;color:#5d6b78 !important;text-decoration:none}
@keyframes pzwscroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(max-width:560px){.pzw-mlogo{height:60px}.pzw-mlogo img{height:60px}.pzw-mq-track{gap:36px}}
@media(prefers-reduced-motion:reduce){.pzw-mq-track{animation:none;flex-wrap:wrap;justify-content:center;width:auto;gap:32px 44px}}

/* Carrousel de marques (1 ligne, beaux cadres) */
.pzw-mqcar{position:relative;padding:0 48px}
.pzw-mqrow{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:6px 2px 10px;scrollbar-width:none;-ms-overflow-style:none}
.pzw-mqrow::-webkit-scrollbar{display:none}
.pzw-mqtile{flex:0 0 auto;width:190px;scroll-snap-align:start;background:#fff;border:1px solid #e5ecf0;border-radius:16px;padding:20px 16px;display:flex;flex-direction:column;align-items:center;gap:12px;text-decoration:none;transition:transform .15s,box-shadow .15s,border-color .15s}
.pzw-mqtile:hover{border-color:#e3b143;transform:translateY(-3px);box-shadow:0 18px 40px -22px rgba(32,45,58,.5)}
.pzw-mqtile-im{height:96px;width:100%;display:grid;place-items:center;overflow:hidden}
.pzw-mqtile-im img{max-height:96px;max-width:158px;width:auto;object-fit:contain;display:block}
.pzw-mqtile-nm{font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#485868;text-align:center;line-height:1.2}
.pzw-mqnav{position:absolute;top:calc(50% - 10px);transform:translateY(-50%);z-index:3;width:42px;height:42px;border-radius:50%;border:1px solid #e5ecf0;background:#fff;color:#485868;cursor:pointer;display:grid;place-items:center;box-shadow:0 8px 20px -10px rgba(32,45,58,.55)}
.pzw-mqnav svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:2.4}
.pzw-mqnav.prev{left:2px}.pzw-mqnav.next{right:2px}
.pzw-mqnav:hover{border-color:#485868;color:#26313c}
@media(max-width:600px){.pzw-mqcar{padding:0}.pzw-mqtile{width:150px;padding:16px 12px}.pzw-mqtile-im{height:70px}.pzw-mqtile-im img{max-height:70px;max-width:120px}.pzw-mqnav{display:none}}

/* Fix newsletter : RGPD sous le champ, sinon il ecrase l input sur la meme ligne flex */
.pzw-news .pzw-nrgpd{flex-basis:100%;width:100%;margin:8px 0 0;font-size:11.5px;line-height:1.4;color:rgba(255,255,255,.62)}
.pzw-news input{min-width:180px}
