.fzhp-wpcards,
.fzhp-wpcards *{box-sizing:border-box}
.fzhp-wpcards{width:100%;font-family:inherit;color:#111}
.fzhp-wpcards__toolbar{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin:0 0 22px}
.fzhp-wpcards__sort-label{font-size:14px;font-weight:700;color:#26314b}
.fzhp-wpcards__sort{appearance:auto!important;width:auto!important;min-width:210px!important;max-width:100%!important;height:44px!important;margin:0!important;padding:0 36px 0 14px!important;border:1px solid #ddd3eb!important;border-radius:10px!important;background-color:#fff!important;color:#222!important;font:600 14px/1 inherit!important;box-shadow:none!important}
.fzhp-wpcards__grid{display:grid;grid-template-columns:repeat(var(--fzhp-columns,4),minmax(0,1fr));gap:20px;align-items:stretch}
.fzhp-wpcard{min-width:0;overflow:hidden;display:flex;flex-direction:column;background:#fff;border:1px solid rgba(75,43,117,.08);border-radius:28px;box-shadow:0 10px 30px rgba(45,21,80,.07);transition:transform .25s ease,box-shadow .25s ease}
.fzhp-wpcard:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(45,21,80,.13)}
.fzhp-wpcard__media{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:1.12/1;min-height:230px;padding:24px;background:radial-gradient(circle at 50% 38%,#594078 0,#40275f 57%,#35204f 100%);overflow:hidden;text-decoration:none!important}
.fzhp-wpcard__image{display:block!important;width:100%!important;height:100%!important;max-width:230px!important;max-height:270px!important;object-fit:contain!important;margin:0!important;filter:drop-shadow(0 16px 11px rgba(0,0,0,.22));transition:transform .3s ease}
.fzhp-wpcard:hover .fzhp-wpcard__image{transform:scale(1.035)}
.fzhp-wpcard__purity{position:absolute;z-index:2;top:13px;right:13px;padding:8px 13px;border-radius:999px;background:#d59400;color:#fff;font:700 10px/1 inherit;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 4px 12px rgba(0,0,0,.14)}
.fzhp-wpcard__body{display:flex;flex:1;flex-direction:column;padding:20px 20px 22px}
.fzhp-wpcard__stock{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-size:14px;font-weight:700}
.fzhp-wpcard__stock.is-in-stock{color:#159447}.fzhp-wpcard__stock.is-out-of-stock{color:#d72f35}
.fzhp-wpcard__stock-dot{width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 0 3px color-mix(in srgb,currentColor 12%,transparent)}
.fzhp-wpcard__title{margin:0 0 8px!important;padding:0!important;font:800 clamp(20px,1.65vw,27px)/1.15 inherit!important;letter-spacing:-.035em;color:#080808!important}
.fzhp-wpcard__title a{color:inherit!important;text-decoration:none!important}
.fzhp-wpcard__description{display:-webkit-box;min-height:3.9em;margin:0;color:#556079;font-size:15px;line-height:1.48;overflow:hidden;-webkit-line-clamp:3;-webkit-box-orient:vertical}
.fzhp-wpcard__divider{height:1px;margin:14px 0 14px;background:#e6dfd2}
.fzhp-wpcard__footer{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;min-width:0}
.fzhp-wpcard__pricing{min-width:0;display:flex;flex-direction:column;align-items:flex-start;overflow:hidden}
.fzhp-wpcard__regular{display:block;margin-bottom:1px;color:#9aa2ad!important;font-size:14px;font-weight:700;text-decoration-thickness:1.5px}
.fzhp-wpcard__regular .woocommerce-Price-amount{color:inherit!important}
.fzhp-wpcard__price{color:#080808!important;font-size:clamp(19px,1.45vw,25px)!important;font-weight:900!important;line-height:1.05!important;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:clip}
.fzhp-wpcard__price del{display:block;color:#9aa2ad;font-size:14px;font-weight:700}.fzhp-wpcard__price ins{text-decoration:none}
.fzhp-wpcard__tax{margin-top:5px;color:#94a0b7;font-size:11px;font-weight:700;white-space:nowrap}
.fzhp-wpcard__button,
.fzhp-wpcard__button.button{display:inline-flex!important;flex:0 0 auto;align-items:center!important;justify-content:center!important;min-width:121px!important;min-height:47px!important;margin:0!important;padding:12px 18px!important;border:0!important;border-radius:12px!important;background:#d59400!important;color:#fff!important;font:700 16px/1 inherit!important;text-align:center!important;text-decoration:none!important;box-shadow:none!important;transform:none!important;transition:background .2s ease,transform .2s ease,box-shadow .2s ease!important}
.fzhp-wpcard__button:hover,.fzhp-wpcard__button.button:hover{background:#b97f00!important;color:#fff!important;transform:translateY(-2px)!important;box-shadow:0 10px 20px rgba(213,148,0,.25)!important}
.fzhp-wpcard__button.is-disabled{background:#b9b9b9!important;pointer-events:none}
.fzhp-wpcards__empty{padding:30px;border:1px dashed #cfc4dd;border-radius:14px;background:#fff;text-align:center;color:#555}
@media(max-width:1100px){.fzhp-wpcards__grid{grid-template-columns:repeat(min(var(--fzhp-columns,4),3),minmax(0,1fr))}}
@media(max-width:820px){.fzhp-wpcards__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fzhp-wpcard__media{min-height:210px}}
@media(max-width:560px){.fzhp-wpcards__toolbar{align-items:stretch;flex-direction:column}.fzhp-wpcards__sort{width:100%!important}.fzhp-wpcards__grid{grid-template-columns:1fr;gap:16px}.fzhp-wpcard{border-radius:22px}.fzhp-wpcard__media{aspect-ratio:1.35/1;min-height:230px}.fzhp-wpcard__body{padding:18px}.fzhp-wpcard__footer{align-items:center;grid-template-columns:minmax(0,1fr) auto}.fzhp-wpcard__button,.fzhp-wpcard__button.button{min-width:116px!important}}

/* Unified dark order button styling - matches Selank 5mg / KLOW */
.fzhp-wpcard__button,
.fzhp-wpcard__button.button,
.fzhp-wpcard__button:link,
.fzhp-wpcard__button:visited,
.fzhp-wpcard__button:hover,
.fzhp-wpcard__button:focus,
.fzhp-wpcard__button:focus-visible,
.fzhp-wpcard__button:active,
.fzhp-wpcard__button.button:hover,
.fzhp-wpcard__button.button:focus,
.fzhp-wpcard__button.button:active{
    min-width:0!important;
    min-height:24px!important;
    padding:7px 13px!important;
    border:0!important;
    border-radius:8px!important;
    background:#011a2e!important;
    background-color:#011a2e!important;
    color:#fff!important;
    font:700 11px/1 inherit!important;
    text-align:center!important;
    text-decoration:none!important;
    box-shadow:none!important;
    transform:none!important;
    outline:none!important;
    transition:none!important;
}
.fzhp-wpcard__button:hover,
.fzhp-wpcard__button:focus-visible,
.fzhp-wpcard__button.button:hover,
.fzhp-wpcard__button.button:focus-visible{
    background:#011a2e!important;
    background-color:#011a2e!important;
    color:#fff!important;
    transform:none!important;
    box-shadow:none!important;
}
.fzhp-wpcard__button.is-disabled,
.fzhp-wpcard__button.is-disabled:hover,
.fzhp-wpcard__button.is-disabled:focus{
    background:#b9b9b9!important;
    background-color:#b9b9b9!important;
    color:#fff!important;
}
@media(max-width:560px){
    .fzhp-wpcard__button,
    .fzhp-wpcard__button.button{
        min-width:0!important;
        min-height:24px!important;
        padding:6px 12px!important;
        font-size:11px!important;
    }
}

/* FINAL BUTTON OVERRIDE: prevent WooCommerce/theme hover colors */
.fzhp-wpcards .fzhp-wpcard__footer .fzhp-wpcard__button,
.fzhp-wpcards .fzhp-wpcard__footer .fzhp-wpcard__button.button,
.fzhp-wpcards .fzhp-wpcard__footer a.fzhp-wpcard__button,
.fzhp-wpcards .fzhp-wpcard__footer a.fzhp-wpcard__button.button,
.fzhp-wpcards .fzhp-wpcard__footer a.fzhp-wpcard__button:hover,
.fzhp-wpcards .fzhp-wpcard__footer a.fzhp-wpcard__button:focus,
.fzhp-wpcards .fzhp-wpcard__footer a.fzhp-wpcard__button:focus-visible,
.fzhp-wpcards .fzhp-wpcard__footer a.fzhp-wpcard__button:active,
.fzhp-wpcards .fzhp-wpcard__footer a.fzhp-wpcard__button.button:hover,
.fzhp-wpcards .fzhp-wpcard__footer a.fzhp-wpcard__button.button:focus,
.fzhp-wpcards .fzhp-wpcard__footer a.fzhp-wpcard__button.button:focus-visible,
.fzhp-wpcards .fzhp-wpcard__footer a.fzhp-wpcard__button.button:active {
    background:#011a2e !important;
    background-color:#011a2e !important;
    background-image:none !important;
    border-color:#011a2e !important;
    color:#fff !important;
    box-shadow:none !important;
    outline:none !important;
    text-shadow:none !important;
    filter:none !important;
    transform:none !important;
    opacity:1 !important;
    transition:none !important;
}

.fzhp-wpcards .fzhp-wpcard__footer .fzhp-wpcard__button::before,
.fzhp-wpcards .fzhp-wpcard__footer .fzhp-wpcard__button::after,
.fzhp-wpcards .fzhp-wpcard__footer .fzhp-wpcard__button.button::before,
.fzhp-wpcards .fzhp-wpcard__footer .fzhp-wpcard__button.button::after {
    background:transparent !important;
    background-color:transparent !important;
    color:inherit !important;
    box-shadow:none !important;
}

/* Keep long prices inside their column so the order button never sits over the price. */
.fzhp-wpcard__footer { overflow:hidden; }
.fzhp-wpcard__pricing { min-width:0 !important; max-width:100%; overflow:hidden !important; }
.fzhp-wpcard__price { max-width:100% !important; overflow:hidden !important; text-overflow:ellipsis !important; }

/* FINAL PRICE SIZE FIX - keep all actual prices/values unchanged */
.fzhp-wpcards .fzhp-wpcard__price,
.fzhp-wpcards .fzhp-wpcard__price .woocommerce-Price-amount,
.fzhp-wpcards .fzhp-wpcard__price .woocommerce-Price-amount bdi,
.fzhp-wpcards .fzhp-wpcard__price ins,
.fzhp-wpcards .fzhp-wpcard__price ins .woocommerce-Price-amount,
.fzhp-wpcards .fzhp-wpcard__price ins .woocommerce-Price-amount bdi {
    font-size:16px !important;
    line-height:1.05 !important;
    font-weight:900 !important;
    letter-spacing:0 !important;
}

/* Keep every price variation on the same size and give it enough room beside Order. */
.fzhp-wpcards .fzhp-wpcard__footer {
    grid-template-columns:minmax(0,1fr) auto !important;
    gap:8px !important;
}
.fzhp-wpcards .fzhp-wpcard__pricing {
    min-width:0 !important;
    width:100% !important;
}
.fzhp-wpcards .fzhp-wpcard__price {
    overflow:visible !important;
    text-overflow:clip !important;
    white-space:nowrap !important;
}

/* =========================================================
   MOBILE RESPONSIVE GRID — 2 PRODUCT CARDS PER ROW
   Desktop/tablet styling above remains unchanged.
========================================================= */
@media (max-width:560px){
    .fzhp-wpcards{
        width:100%;
        max-width:100%;
        overflow:visible;
    }

    .fzhp-wpcards__toolbar{
        width:100%;
        margin-bottom:16px;
        gap:7px;
    }

    .fzhp-wpcards__sort-label{
        font-size:12px;
    }

    .fzhp-wpcards__sort{
        width:100%!important;
        min-width:0!important;
        height:42px!important;
        padding-left:12px!important;
        font-size:13px!important;
    }

    /* Important: always keep TWO cards in one row on phones. */
    .fzhp-wpcards__grid{
        display:grid!important;
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:10px!important;
        width:100%!important;
        align-items:stretch!important;
    }

    .fzhp-wpcard{
        width:100%!important;
        min-width:0!important;
        max-width:none!important;
        border-radius:16px!important;
        transform:none!important;
    }

    .fzhp-wpcard:hover{
        transform:none!important;
    }

    .fzhp-wpcard__media{
        width:100%!important;
        aspect-ratio:1/1!important;
        min-height:0!important;
        padding:10px!important;
    }

    .fzhp-wpcard__image{
        width:100%!important;
        height:100%!important;
        max-width:145px!important;
        max-height:145px!important;
        object-fit:contain!important;
    }

    .fzhp-wpcard__body{
        padding:11px 10px 12px!important;
    }

    .fzhp-wpcard__stock{
        gap:5px!important;
        margin-bottom:7px!important;
        font-size:10px!important;
        line-height:1.2!important;
    }

    .fzhp-wpcard__stock-dot{
        width:6px!important;
        height:6px!important;
        flex:0 0 6px!important;
    }

    .fzhp-wpcard__title{
        margin-bottom:6px!important;
        font-size:17px!important;
        line-height:1.12!important;
        letter-spacing:-.02em!important;
        overflow-wrap:anywhere;
    }

    .fzhp-wpcard__description{
        min-height:2.7em!important;
        font-size:11px!important;
        line-height:1.35!important;
        -webkit-line-clamp:2!important;
    }

    .fzhp-wpcard__divider{
        margin:10px 0!important;
    }

    /* Stack price and order button so neither gets squeezed/overlaps. */
    .fzhp-wpcards .fzhp-wpcard__footer{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:8px!important;
        align-items:stretch!important;
        overflow:visible!important;
    }

    .fzhp-wpcards .fzhp-wpcard__pricing{
        width:100%!important;
        min-width:0!important;
        overflow:visible!important;
    }

    .fzhp-wpcards .fzhp-wpcard__price,
    .fzhp-wpcards .fzhp-wpcard__price .woocommerce-Price-amount,
    .fzhp-wpcards .fzhp-wpcard__price .woocommerce-Price-amount bdi,
    .fzhp-wpcards .fzhp-wpcard__price ins,
    .fzhp-wpcards .fzhp-wpcard__price ins .woocommerce-Price-amount,
    .fzhp-wpcards .fzhp-wpcard__price ins .woocommerce-Price-amount bdi{
        font-size:13px!important;
        line-height:1.2!important;
        white-space:normal!important;
        overflow:visible!important;
    }

    .fzhp-wpcard__regular,
    .fzhp-wpcard__price del{
        font-size:11px!important;
    }

    .fzhp-wpcard__tax{
        margin-top:3px!important;
        font-size:8.5px!important;
        line-height:1.25!important;
        white-space:normal!important;
    }

    .fzhp-wpcards .fzhp-wpcard__footer .fzhp-wpcard__button,
    .fzhp-wpcards .fzhp-wpcard__footer .fzhp-wpcard__button.button{
        width:100%!important;
        min-width:0!important;
        min-height:32px!important;
        padding:8px 7px!important;
        border-radius:7px!important;
        font-size:10px!important;
        line-height:1!important;
    }
}

/* Extra-small phones: keep 2 columns, just tighten spacing further. */
@media (max-width:380px){
    .fzhp-wpcards__grid{gap:7px!important;}
    .fzhp-wpcard{border-radius:14px!important;}
    .fzhp-wpcard__media{padding:7px!important;}
    .fzhp-wpcard__body{padding:9px 8px 10px!important;}
    .fzhp-wpcard__title{font-size:15px!important;}
    .fzhp-wpcard__description{font-size:10px!important;}
    .fzhp-wpcards .fzhp-wpcard__price,
    .fzhp-wpcards .fzhp-wpcard__price .woocommerce-Price-amount,
    .fzhp-wpcards .fzhp-wpcard__price .woocommerce-Price-amount bdi{font-size:12px!important;}
}

/* =========================================================
   v1.0.4 THEME COLOR OVERRIDE
   PreferredPeps / blue-black storefront palette from reference screenshot.
   Color-only override: layout and responsive behavior remain unchanged.
   ========================================================= */
.fzhp-wpcards{
    color:#ffffff!important;
}

.fzhp-wpcards__sort-label{
    color:#183d73!important;
}

.fzhp-wpcards__sort{
    background-color:#ffffff!important;
    color:#151515!important;
    border-color:#d9dfea!important;
}

.fzhp-wpcard{
    background:#000000!important;
    border-color:rgba(255,255,255,.92)!important;
    box-shadow:none!important;
}

.fzhp-wpcard:hover{
    border-color:#1689e8!important;
    box-shadow:0 12px 30px rgba(0,99,190,.16)!important;
}

.fzhp-wpcard__media{
    background:#0f65b7!important;
}

.fzhp-wpcard__purity{
    background:#0b6fc7!important;
    color:#ffffff!important;
}

.fzhp-wpcard__body{
    background:#000000!important;
}

.fzhp-wpcard__stock.is-in-stock{
    color:#008cff!important;
}

.fzhp-wpcard__stock.is-out-of-stock{
    color:#e34b4b!important;
}

.fzhp-wpcard__title,
.fzhp-wpcard__title a{
    color:#ffffff!important;
}

.fzhp-wpcard__description{
    color:#55719a!important;
}

.fzhp-wpcard__divider{
    background:rgba(238,229,207,.82)!important;
}

.fzhp-wpcard__regular,
.fzhp-wpcard__regular .woocommerce-Price-amount,
.fzhp-wpcard__price del{
    color:#8795aa!important;
}

.fzhp-wpcard__price,
.fzhp-wpcard__price .woocommerce-Price-amount,
.fzhp-wpcard__price .woocommerce-Price-amount bdi,
.fzhp-wpcard__price ins,
.fzhp-wpcard__price ins .woocommerce-Price-amount,
.fzhp-wpcard__price ins .woocommerce-Price-amount bdi{
    color:#ffffff!important;
}

.fzhp-wpcard__tax{
    color:#dce8f5!important;
}

/* Lock Order button to the dark navy used in the reference. */
.fzhp-wpcards .fzhp-wpcard__footer .fzhp-wpcard__button,
.fzhp-wpcards .fzhp-wpcard__footer .fzhp-wpcard__button.button,
.fzhp-wpcards .fzhp-wpcard__footer a.fzhp-wpcard__button,
.fzhp-wpcards .fzhp-wpcard__footer a.fzhp-wpcard__button.button,
.fzhp-wpcards .fzhp-wpcard__footer a.fzhp-wpcard__button:link,
.fzhp-wpcards .fzhp-wpcard__footer a.fzhp-wpcard__button:visited,
.fzhp-wpcards .fzhp-wpcard__footer a.fzhp-wpcard__button:hover,
.fzhp-wpcards .fzhp-wpcard__footer a.fzhp-wpcard__button:focus,
.fzhp-wpcards .fzhp-wpcard__footer a.fzhp-wpcard__button:focus-visible,
.fzhp-wpcards .fzhp-wpcard__footer a.fzhp-wpcard__button:active{
    background:#002b47!important;
    background-color:#002b47!important;
    border-color:#002b47!important;
    color:#ffffff!important;
    box-shadow:none!important;
    text-shadow:none!important;
    filter:none!important;
    opacity:1!important;
}

.fzhp-wpcards .fzhp-wpcard__footer a.fzhp-wpcard__button:hover,
.fzhp-wpcards .fzhp-wpcard__footer a.fzhp-wpcard__button:focus-visible{
    background:#064c78!important;
    background-color:#064c78!important;
    border-color:#064c78!important;
    color:#ffffff!important;
}

.fzhp-wpcard__button.is-disabled,
.fzhp-wpcard__button.is-disabled:hover,
.fzhp-wpcard__button.is-disabled:focus{
    background:#526171!important;
    background-color:#526171!important;
    color:#ffffff!important;
}

.fzhp-wpcards__empty{
    background:#000000!important;
    border-color:#31557d!important;
    color:#ffffff!important;
}
