/* Same outlined treatment and theme variables as Fidalgo's WooCommerce buttons. */
#wpcdp-home-cta .button,
.wpcdp-inline-button,
#wpcdp-purchase-panel .button {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: auto;
    margin: 0;
    padding: 12px 32px;
    min-height: 46px;
    border: 1px solid var(--qode-button-border-color, var(--qode-main-color, #b59c32));
    border-radius: 0;
    background: transparent;
    color: var(--qode-button-color, #fff);
    font-family: Jost, sans-serif;
    font-size: 12px;
    font-weight: 400;
    line-height: 18px;
    letter-spacing: .1em;
    text-transform: uppercase;
    text-decoration: none;
    white-space: nowrap;
    cursor: pointer;
}
#wpcdp-home-cta .button:hover,
.wpcdp-inline-button:hover,
#wpcdp-purchase-panel .button:hover {
    border-color: var(--qode-button-border-hover-color, var(--qode-main-color, #b59c32));
    color: #fff;
    background: rgba(255, 255, 255, .06);
}
#wpcdp-home-cta a:focus,
.wpcdp-inline-button:focus,
#wpcdp-purchase-panel :is(a, button, input, textarea, select):focus,
.wpcdp-signup-form :is(a, button, input):focus {
    outline: none !important;
    box-shadow: none !important;
}
#wpcdp-home-cta {
    margin: 24px auto;
    text-align: center;
    line-height: 0;
}
#wpcdp-home-cta[hidden] { display: none !important; }
#wpcdp-home-cta.wpcdp-positioned {
    position: absolute;
    z-index: 101;
    width: max-content;
    max-width: calc(100% - 32px);
    margin: 0;
}
#wpcdp-purchase-panel {
    box-sizing: border-box;
    max-width: 620px;
    margin: 24px auto;
    padding: 32px;
    color: #fff;
    background: #202020;
}
.wpcdp-dialog {
    width: min(620px, calc(100vw - 32px));
    max-width: calc(100vw - 32px);
    max-height: calc(100dvh - 32px);
    box-sizing: border-box;
    padding: 0;
    border: 1px solid var(--qode-main-color, #b59c32);
    background: #202020;
    color: #fff;
    overflow: auto;
}
.wpcdp-dialog::backdrop { background: rgba(0, 0, 0, .75); }
.wpcdp-dialog #wpcdp-purchase-panel { position: relative; margin: 0; padding: 48px 28px 28px; }
#wpcdp-purchase-panel .wpcdp-close {
    position: absolute;
    top: 4px;
    right: 4px;
    width: 44px;
    height: 44px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #fff;
    font: 30px/1 sans-serif;
    cursor: pointer;
}
#wpcdp-purchase-panel [hidden] { display: none !important; }
#wpcdp-purchase-panel h2 { color: inherit; font-size: clamp(22px, 4vw, 30px); }
#wpcdp-purchase-panel .wpcdp-product > img { display: block; width: auto; max-width: 100%; max-height: 200px; margin: 0 auto 24px; object-fit: contain; }
.wpcdp-purchase-form { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 16px; }
#wpcdp-purchase-panel .wpcdp-submit { height: 50px; min-height: 50px; padding-block: 0; align-self: flex-end; }
#wpcdp-purchase-panel .wpcdp-popup-signup { margin-top: 32px; padding-top: 28px; border-top: 1px solid rgba(255, 255, 255, .2); }
#wpcdp-purchase-panel .wpcdp-popup-signup h3 { margin: 0 0 16px; color: inherit; font-size: 22px; }
#wpcdp-purchase-panel .wpcdp-signup-form { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; }
#wpcdp-purchase-panel .wpcdp-signup-form .button { white-space: normal; text-align: center; }
#wpcdp-purchase-panel .quantity { margin: 0; }
html.wpcdp-dialog-open { overflow: hidden; }
@media (max-width: 480px) {
    #wpcdp-home-cta .button { padding-inline: 24px; }
    .wpcdp-dialog #wpcdp-purchase-panel { padding-inline: 20px; }
    #wpcdp-purchase-panel .wpcdp-submit { width: 100%; }
}
