:root{--bpc-blue:#1b4276;--bpc-red:#d62e3a;--bpc-border:#d9e1e9;--bpc-surface:#fff;--bpc-text:#172637}
.bpc-home,.bpc-section,.bpc-catalogue,.bpc-archives,.bpc-partner-detail{max-width:1100px;margin:0 auto;color:var(--bpc-text)}
.bpc-home *,.bpc-section *,.bpc-catalogue *,.bpc-archives *,.bpc-partner-detail *{box-sizing:border-box}
.bpc-banner{display:block;width:100%;max-height:340px;object-fit:cover;border-radius:14px;margin-bottom:22px}
.bpc-intro{padding:8px 0 22px}.bpc-intro h2{font-size:clamp(1.5rem,4vw,2rem)}
.bpc-search-form{display:flex;align-items:stretch;gap:8px;max-width:900px;margin:15px 0}
.bpc-search-form input{flex:1;min-width:0;padding:12px 15px;border:1px solid var(--bpc-border);border-radius:8px;background:#fff;font-size:16px}
.bpc-search-form button,.bpc-btn,.bpc-filters button{background:var(--bpc-blue);color:#fff!important;text-decoration:none!important;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border:0;border-radius:8px;padding:11px 15px;font-size:15px;font-weight:650;line-height:1.3}
.bpc-btn:hover,.bpc-filters button:hover{background:#103056}.bpc-btn-fb{background:var(--bpc-red)}
.bpc-stats{font-size:1rem}.bpc-shop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0 34px}
.bpc-shop{display:flex;align-items:center;justify-content:center;min-height:78px;padding:14px;text-align:center;border:1px solid var(--bpc-border);border-radius:10px;background:#fff;box-shadow:0 1px 3px #0000000c;font-weight:700;color:var(--bpc-blue);text-decoration:none!important}
.bpc-shop:hover{border-color:var(--bpc-blue)}
.bpc-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:18px 0 30px}
.bpc-card{border:1px solid var(--bpc-border);border-radius:12px;overflow:hidden;background:var(--bpc-surface);box-shadow:0 2px 8px #142d4410}
.bpc-cover{width:100%;height:200px;object-fit:cover;display:block}.bpc-no-cover{display:flex;align-items:center;justify-content:center;background:#f0f4f9;font-size:48px}
.bpc-card-body{padding:16px}.bpc-eyebrow{font-size:13px;color:#55687b;margin:0 0 8px;font-weight:700}
.bpc-card h3{font-size:1.2rem;line-height:1.35;margin:0 0 12px}.bpc-card h3 a,.bpc-search-hit h4 a{color:var(--bpc-blue);text-decoration:none}
.bpc-card-body p{font-size:14px}.bpc-card-body .bpc-btn{width:100%;margin-top:6px}
.bpc-filters{display:flex;flex-wrap:wrap;align-items:end;gap:12px;margin:18px 0 24px;padding:16px;border-radius:10px;background:#f4f7fb}
.bpc-filters label{font-weight:600}.bpc-filters select{display:block;min-width:180px;max-width:100%;padding:9px;border:1px solid var(--bpc-border);border-radius:7px;background:#fff}
.bpc-catalogue-meta{margin:14px 0 22px;color:#385574}.bpc-state{display:inline-block;background:#fff0d8;padding:3px 8px;border-radius:20px;font-size:12px}
.bpc-reader{margin:20px 0 30px}.bpc-pdf-reader{border:1px solid var(--bpc-border);border-radius:12px;overflow:hidden;background:#edf1f5}
.bpc-pdf-controls{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:10px;background:var(--bpc-blue);padding:11px;color:#fff}
.bpc-pdf-controls button{border:1px solid #a9bfd3;background:#fff;border-radius:5px;min-width:38px;min-height:34px;cursor:pointer;color:#11375d}
.bpc-page-indicator{min-width:100px;text-align:center;font-size:14px}.bpc-pdf-canvas{display:none;justify-content:center;align-items:flex-start;padding:12px;overflow:auto;max-height:650px}.bpc-pdf-canvas canvas{max-width:100%;height:auto;box-shadow:0 2px 5px #0002}.bpc-pdf-native iframe{display:block;width:100%;height:570px;border:0}
.bpc-cat-details,.bpc-archive-month{border:1px solid var(--bpc-border);border-radius:9px;background:#fff;margin:13px 0;overflow:hidden}
.bpc-cat-details summary,.bpc-archive-month>summary{cursor:pointer;padding:17px 20px;font-size:1.12rem;font-weight:700;color:var(--bpc-blue);background:#f5f8fc}
.bpc-cat-details summary span{font-weight:500}.bpc-offers{padding:12px;display:grid;gap:12px}
.bpc-offer{padding:15px 18px;background:#fff;border:1px solid var(--bpc-border);border-radius:9px;line-height:1.65}
.bpc-offer h3{margin:0 0 10px;color:var(--bpc-blue);font-size:1.05rem}.bpc-texte-optimisation{white-space:normal;overflow-wrap:anywhere}.bpc-texte-optimisation a{color:var(--bpc-red);text-decoration:underline;font-weight:650}
.bpc-expired{display:block;color:#8a3f06;margin-top:10px}.bpc-empty{padding:18px;background:#f6f8fb;border-radius:9px}
.bpc-archive-month{padding:0 0 18px}.bpc-archive-month h3{margin:20px}.bpc-archive-month .bpc-cards{margin:16px}
.bpc-search-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0 28px}
.bpc-search-hit{border:1px solid var(--bpc-border);border-radius:9px;padding:18px;background:#fff}
.bpc-search-hit h4{font-size:1.05rem;margin:6px 0}.bpc-search-hit p{margin:6px 0}
.bpc-partner-logo{max-height:110px;width:auto;max-width:100%;object-fit:contain;margin:10px auto;display:block}
.bpc-partner-detail .bpc-offer{margin:10px 0}.bpc-cookie-banner{position:fixed;bottom:14px;left:14px;z-index:99990;max-width:440px;padding:20px;border:1px solid #aabaca;background:#fff;border-radius:12px;box-shadow:0 5px 24px #07192e3a;color:#182b40;font-size:14px}
.bpc-cookie-banner[hidden]{display:none!important}.bpc-cookie-buttons{display:flex;gap:12px;justify-content:flex-end}
.bpc-cookie-buttons button{padding:9px 16px;border:1px solid #2b5176;border-radius:8px;background:#fff;cursor:pointer}.bpc-cookie-buttons button:last-child{background:#1b4276;color:#fff}
.bpc-cookie-links{font-size:12px}.bpc-cookie-reset{position:fixed;bottom:0;right:0;z-index:9990;border:1px solid #ddd;border-radius:8px 0 0 0;background:#fff;padding:4px 10px;font-size:12px;cursor:pointer}
@media(max-width:850px){.bpc-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.bpc-shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.bpc-cards,.bpc-search-results{grid-template-columns:1fr}.bpc-search-form{flex-direction:column}.bpc-search-form button{min-height:44px}.bpc-cover{height:210px}.bpc-pdf-native iframe{height:420px}.bpc-shop-grid{gap:7px}.bpc-shop{min-height:63px;padding:8px;font-size:14px}.bpc-cookie-banner{left:8px;right:8px;bottom:8px;max-width:none}.bpc-cat-details summary{padding:14px}.bpc-offers{padding:7px}.bpc-offer{padding:12px}}
