.hpcs-showcase{--hpcs-font:Inter,sans-serif;--hpcs-section-bg:#f4eee3;--hpcs-card-bg:#fff;--hpcs-media-bg:#f8f6f1;--hpcs-text:#071523;--hpcs-muted:#6d7680;--hpcs-accent:#d9a22e;--hpcs-button-bg:#03111f;--hpcs-button-text:#fff;--hpcs-button-hover:#8d35f5;--hpcs-pill-bg:#f3f4f5;--hpcs-pill-text:#59636d;--hpcs-badge-bg:#03111f;--hpcs-badge-text:#fff;--hpcs-border:rgba(3,17,31,.08);--hpcs-card-radius:18px;--hpcs-media-radius:14px;--hpcs-button-radius:999px;--hpcs-gap:20px;--hpcs-media-height:390px;--hpcs-shadow:0 16px 45px rgba(3,17,31,.06);position:relative;padding:42px;background:var(--hpcs-section-bg);font-family:var(--hpcs-font);color:var(--hpcs-text);box-sizing:border-box}.hpcs-showcase *{box-sizing:border-box}.hpcs-heading{max-width:780px;margin:0 0 34px}.hpcs-heading h2{margin:0 0 10px;color:var(--hpcs-text);font:800 clamp(28px,4vw,48px)/1 var(--hpcs-font);letter-spacing:-.04em;text-transform:uppercase}.hpcs-heading p{margin:0;color:var(--hpcs-muted);font-size:15px}.hpcs-products-viewport{overflow:hidden}.hpcs-products-track{display:grid;grid-template-columns:repeat(var(--hpcs-cols),minmax(0,1fr));gap:var(--hpcs-gap)}.hpcs-layout-slider .hpcs-products-track{display:flex;gap:var(--hpcs-gap);transition:transform .48s cubic-bezier(.2,.75,.25,1);will-change:transform}.hpcs-layout-slider .hpcs-card{flex:0 0 calc((100% - (var(--hpcs-cols) - 1)*var(--hpcs-gap))/var(--hpcs-cols));min-width:0}.hpcs-card{position:relative;display:flex;flex-direction:column;min-width:0;padding:18px;background:var(--hpcs-card-bg);border:1px solid var(--hpcs-border);border-radius:var(--hpcs-card-radius);box-shadow:var(--hpcs-shadow);overflow:hidden;transition:transform .22s ease,box-shadow .22s ease}.hpcs-card:hover{transform:translateY(-5px);box-shadow:0 24px 60px rgba(3,17,31,.12)}.hpcs-media{position:relative;height:var(--hpcs-media-height);display:grid;place-items:center;background:var(--hpcs-media-bg);border-radius:var(--hpcs-media-radius);overflow:hidden}.hpcs-media-slides{position:absolute;inset:16px 18px}.hpcs-media-slide{position:absolute;inset:0;display:grid;place-items:center;opacity:0;visibility:hidden;transform:scale(.985);transition:opacity .45s ease,transform .45s ease,visibility .45s}.hpcs-media-slide.is-active{opacity:1;visibility:visible;transform:scale(1)}.hpcs-media-slide img{width:100%;height:100%;object-fit:contain;border-radius:10px;filter:drop-shadow(0 16px 25px rgba(3,17,31,.18))}.hpcs-badge{position:absolute;z-index:4;top:14px;left:14px;max-width:calc(100% - 28px);padding:8px 12px;color:var(--hpcs-badge-text);background:var(--hpcs-badge-bg);border-radius:999px;font:800 10px/1 var(--hpcs-font);letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hpcs-media-arrow{position:absolute;z-index:5;top:50%;width:36px;height:36px;display:grid;place-items:center;color:var(--hpcs-text);background:rgba(255,255,255,.88);border:1px solid rgba(3,17,31,.1);border-radius:50%;transform:translateY(-50%);opacity:0;transition:.2s}.hpcs-media:hover .hpcs-media-arrow{opacity:1}.hpcs-media-prev{left:10px}.hpcs-media-next{right:10px}.hpcs-media-dots{position:absolute;z-index:5;left:50%;bottom:10px;display:flex;gap:5px;transform:translateX(-50%)}.hpcs-media-dot{width:6px;height:6px;padding:0;background:rgba(3,17,31,.22);border:0;border-radius:50%}.hpcs-media-dot.is-active{width:18px;background:var(--hpcs-product-accent,var(--hpcs-accent));border-radius:99px}.hpcs-card-body{padding:24px 6px 5px;display:flex;flex:1;flex-direction:column}.hpcs-kicker{margin-bottom:8px;color:var(--hpcs-product-accent,var(--hpcs-accent));font:800 11px/1.2 var(--hpcs-font);letter-spacing:.11em;text-transform:uppercase}.hpcs-title{margin:0 0 9px;font:800 23px/1.12 var(--hpcs-font);letter-spacing:-.035em;text-transform:uppercase}.hpcs-title a{color:var(--hpcs-text);text-decoration:none}.hpcs-excerpt{min-height:46px;margin:0;color:var(--hpcs-muted);font:400 14px/1.55 var(--hpcs-font)}.hpcs-pills{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.hpcs-pills span{padding:8px 11px;color:var(--hpcs-pill-text);background:var(--hpcs-pill-bg);border-radius:999px;font:700 11px/1 var(--hpcs-font)}.hpcs-price-row{margin-top:auto;padding-top:3px;display:flex;align-items:end;justify-content:space-between;gap:14px}.hpcs-price{color:var(--hpcs-text);font:800 28px/1 var(--hpcs-font);white-space:nowrap}.hpcs-price del{display:block;margin-bottom:5px;color:#9aa2aa;font-size:13px;font-weight:500}.hpcs-price ins{text-decoration:none}.hpcs-product-link{color:var(--hpcs-text);font:500 14px/1.2 var(--hpcs-font);text-decoration:none;white-space:nowrap}.hpcs-actions{margin-top:20px;display:grid;grid-template-columns:1fr auto;gap:10px}.hpcs-add-button{min-height:52px;padding:14px 20px;display:flex;align-items:center;justify-content:center;color:var(--hpcs-button-text)!important;background:var(--hpcs-button-bg);border-radius:var(--hpcs-button-radius);font:800 13px/1 var(--hpcs-font);text-align:center;text-decoration:none!important;transition:.2s}.hpcs-add-button:hover,.hpcs-add-button:focus{color:var(--hpcs-button-text)!important;background:var(--hpcs-button-hover);transform:translateY(-1px)}.hpcs-add-button.added:after{margin-left:8px;content:'✓'}.hpcs-add-button.loading{opacity:.62;pointer-events:none}.hpcs-preview-button{width:52px;height:52px;padding:0;display:grid;place-items:center;color:var(--hpcs-text);background:#fff;border:1px solid var(--hpcs-border);border-radius:50%;transition:.2s}.hpcs-preview-button:hover{color:#fff;background:var(--hpcs-button-hover);border-color:var(--hpcs-button-hover)}.hpcs-preview-button svg{width:19px;height:19px;fill:currentColor}.hpcs-product-arrows{position:absolute;z-index:7;top:30px;right:42px;display:flex;gap:8px}.hpcs-product-arrow{width:44px;height:44px;display:grid;place-items:center;color:var(--hpcs-text);background:#fff;border:1px solid var(--hpcs-border);border-radius:50%;transition:.2s}.hpcs-product-arrow:hover{color:#fff;background:var(--hpcs-button-hover)}.hpcs-product-dots{margin-top:24px;display:flex;justify-content:center;gap:7px}.hpcs-product-dot{width:8px;height:8px;padding:0;background:rgba(3,17,31,.2);border:0;border-radius:50%}.hpcs-product-dot.is-active{width:25px;background:var(--hpcs-button-bg);border-radius:99px}.hpcs-empty{padding:30px;text-align:center;background:#f4eee3;border-radius:12px}.hpcs-lightbox{position:fixed;z-index:999999;inset:0;padding:55px 90px;display:grid;place-items:center;color:#fff;background:rgba(1,8,15,.95);backdrop-filter:blur(14px);opacity:0;visibility:hidden;transition:.25s}.hpcs-lightbox.is-open{opacity:1;visibility:visible}.hpcs-lightbox-inner{width:min(100%,980px);max-height:calc(100vh - 100px);display:grid;grid-template-columns:minmax(300px,520px) 1fr;gap:48px;align-items:center}.hpcs-lightbox-image{width:100%;max-height:calc(100vh - 100px);object-fit:contain;border-radius:12px;box-shadow:0 35px 90px rgba(0,0,0,.45)}.hpcs-lightbox-copy span{color:#a981ff;font:800 12px/1 var(--hpcs-font);letter-spacing:.12em}.hpcs-lightbox-copy h3{margin:15px 0 8px;color:#fff;font:800 clamp(28px,4vw,52px)/1 var(--hpcs-font);letter-spacing:-.04em;text-transform:uppercase}.hpcs-lightbox-copy p{color:#9eabb6}.hpcs-lightbox-close,.hpcs-lightbox-nav{position:absolute;display:grid;place-items:center;color:#fff;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);border-radius:50%}.hpcs-lightbox-close{top:22px;right:22px;width:48px;height:48px;font-size:24px}.hpcs-lightbox-nav{top:50%;width:52px;height:52px;transform:translateY(-50%)}.hpcs-lightbox-prev{left:24px}.hpcs-lightbox-next{right:24px}body.hpcs-modal-open{overflow:hidden}@media(max-width:1024px){.hpcs-showcase{padding:32px}.hpcs-products-track{grid-template-columns:repeat(var(--hpcs-cols-tablet),minmax(0,1fr))}.hpcs-layout-slider .hpcs-card{flex-basis:calc((100% - (var(--hpcs-cols-tablet) - 1)*var(--hpcs-gap))/var(--hpcs-cols-tablet))}.hpcs-product-arrows{right:32px}.hpcs-lightbox-inner{grid-template-columns:minmax(280px,440px) 1fr;gap:32px}}@media(max-width:680px){.hpcs-showcase{padding:22px 15px}.hpcs-products-track{grid-template-columns:repeat(var(--hpcs-cols-mobile),minmax(0,1fr))}.hpcs-layout-slider .hpcs-card{flex-basis:calc((100% - (var(--hpcs-cols-mobile) - 1)*var(--hpcs-gap))/var(--hpcs-cols-mobile))}.hpcs-card{padding:14px}.hpcs-media{height:min(var(--hpcs-media-height),360px)}.hpcs-media-slides{inset:14px}.hpcs-title{font-size:20px}.hpcs-price{font-size:25px}.hpcs-product-link{font-size:13px}.hpcs-product-arrows{position:static;margin-bottom:14px;justify-content:flex-end}.hpcs-lightbox{padding:70px 18px 80px}.hpcs-lightbox-inner{grid-template-columns:1fr;max-height:calc(100vh - 150px);overflow:auto;text-align:center}.hpcs-lightbox-image{width:min(100%,340px);margin:auto}.hpcs-lightbox-nav{top:auto;bottom:20px;transform:none}.hpcs-lightbox-prev{left:calc(50% - 58px)}.hpcs-lightbox-next{right:calc(50% - 58px)}}@media(prefers-reduced-motion:reduce){.hpcs-showcase *{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}.hpcs-media-slide{transform:none}}


/* 1.2.0 — aperçu de la première page du PDF */
.hpcs-media-slide img[data-hpd-pdf-preview]{
    opacity:.78;
    transition:opacity .25s ease;
}

.hpcs-media-slide img.hpd-pdf-preview-ready{
    opacity:1;
}


/* ==========================================================
   1.3.0 — Design harmonisé et promotions
   ========================================================== */

.hpcs-showcase {
    padding: 34px;
}

.hpcs-card {
    padding: 12px;
    gap: 0;
    border-radius: 17px;
    box-shadow: 0 12px 36px rgba(3, 17, 31, .055);
}

.hpcs-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 18px 44px rgba(3, 17, 31, .1);
}

.hpcs-media {
    height: auto;
    aspect-ratio: 4 / 5;
    padding: 20px;
    background:
        linear-gradient(
            180deg,
            rgba(255, 255, 255, .82),
            rgba(244, 238, 227, .94)
        ),
        var(--hpcs-media-bg);
    border-radius: 12px;
}

.hpcs-media-slides {
    inset: 20px;
}

.hpcs-media-slide img {
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 100%;
    object-fit: contain;
    background: #ffffff;
    border-radius: 6px;
    filter: none;
    box-shadow: 0 12px 30px rgba(3, 17, 31, .14);
}

.hpcs-category-chip,
.hpcs-badge {
    position: absolute;
    z-index: 6;
    top: 13px;
    max-width: calc(50% - 20px);
    padding: 8px 11px;
    overflow: hidden;
    border-radius: 999px;
    box-shadow: 0 5px 14px rgba(3, 17, 31, .13);
    font: 800 9px/1 var(--hpcs-font);
    letter-spacing: .06em;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.hpcs-category-chip {
    left: 13px;
    color: #03111f;
    background: #d8ef19;
    border: 1px solid rgba(3, 17, 31, .18);
}

.hpcs-badge {
    right: 13px;
    left: auto;
    color: var(--hpcs-badge-text);
    background: var(--hpcs-badge-bg);
}

.hpcs-card-has-promotion .hpcs-badge {
    color: #03111f;
    background: var(--hpcs-product-accent, #d8ef19);
    border: 1px solid rgba(3, 17, 31, .18);
}

.hpcs-card-body {
    padding: 19px 5px 4px;
}

.hpcs-kicker {
    margin-bottom: 7px;
    color: var(--hpcs-product-accent, var(--hpcs-accent));
    font-size: 10px;
}

.hpcs-title {
    margin-bottom: 9px;
    font-size: 18px;
    line-height: 1.28;
    text-transform: none;
}

.hpcs-excerpt {
    min-height: 0;
    font-size: 13px;
}

.hpcs-promotion {
    margin: 15px 0 0;
    padding: 12px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    color: #03111f;
    background:
        color-mix(
            in srgb,
            var(--hpcs-product-accent, #d8ef19) 18%,
            #ffffff
        );
    border: 1px solid
        color-mix(
            in srgb,
            var(--hpcs-product-accent, #d8ef19) 52%,
            #ffffff
        );
    border-radius: 11px;
}

.hpcs-promotion strong,
.hpcs-promotion small {
    display: block;
}

.hpcs-promotion strong {
    font-size: 11px;
    line-height: 1.3;
}

.hpcs-promotion small {
    margin-top: 3px;
    color: #64717d;
    font-size: 9px;
    line-height: 1.35;
}

.hpcs-promotion-code {
    min-width: max-content;
    padding: 7px 9px;
    color: #ffffff;
    background: #03111f;
    border: 0;
    border-radius: 999px;
    font: 800 9px/1 var(--hpcs-font);
    cursor: pointer;
}

.hpcs-pills {
    margin: 14px 0;
}

.hpcs-pills span {
    padding: 7px 9px;
    font-size: 9px;
}

.hpcs-price-row {
    padding-top: 4px;
}

.hpcs-price {
    font-size: 20px;
}

.hpcs-product-link {
    font-size: 11px;
    font-weight: 700;
}

.hpcs-actions {
    margin-top: 15px;
}

.hpcs-add-button {
    min-height: 46px;
    padding: 12px 16px;
    color: #03111f !important;
    background: #d8ef19;
    border: 1px solid #d8ef19;
    font-size: 11px;
}

.hpcs-add-button:hover,
.hpcs-add-button:focus {
    color: #ffffff !important;
    background: #03111f;
    border-color: #03111f;
}

.hpcs-preview-button {
    width: 46px;
    height: 46px;
}

@media(max-width:680px) {
    .hpcs-showcase {
        padding: 20px 12px;
    }

    .hpcs-card {
        padding: 10px;
    }

    .hpcs-media,
    .hpcs-media-slides {
        padding: 0;
    }

    .hpcs-media-slides {
        inset: 15px;
    }

    .hpcs-title {
        font-size: 16px;
    }

    .hpcs-promotion {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* 1.3.1 — première page uniquement */
.hpcs-media-arrow,.hpcs-media-dots{display:none!important}
.hpcs-media-slide:not(:first-child){display:none!important}
.hpcs-media-slide:first-child{opacity:1!important;visibility:visible!important;transform:none!important}
