
/* GENERAL
--------------------------------------------------- */
.px-button a:not(:has(.px-button-sub-text)) {
transition: all 0.3s ease-in-out;
padding-top:10px;
padding-bottom:10px;
padding-left:20px;
padding-right:20px;
}

.px-button a:hover {
transition: var(--px-transition);
}

.px-button a,
.px-button a:hover,
.px-button a:focus {
text-decoration: none !important;
cursor:pointer;
}

.px-button svg {
margin-left:10px;
}

.px-button-text {
font-weight: bold;
}

/* MOBILE TEXT
--------------------------------------------------- */
@media (min-width : 768px) {.px-button a:has(.px-button-mobile-text) .px-button-mobile-text {
display: none !important;
}
} /* End @media */
@media (max-width : 767px) {.px-button a:has(.px-button-mobile-text) .px-button-text:not(.px-button-mobile-text) {
display: none !important;
}
} /* End @media */
/* SUB TEXT
--------------------------------------------------- */
@media (min-width : 768px) {.px-button a:has(.px-button-sub-text) {
--sub-text-font-size: clamp(0.75em, 2.5vw, 15px);
--button-dynamic-padding-vertical: 1.0588em;
--button-dynamic-padding-horizontal: 2.1765em;
}
} /* End @media */
@media (max-width : 767px) {.px-button a:has(.px-button-sub-text) {
--sub-text-font-size: 15px;
--button-dynamic-padding-vertical: 18px;
--button-dynamic-padding-horizontal: 37px;
}
} /* End @media */
.px-button a:has(.px-button-sub-text) .px-button-sub-text {
position: absolute;
top: calc(-1 * var(--sub-text-font-size)); 
z-index: 2;
padding-left: 17px;
padding-right: 17px;
left: 50%;
transform: translateX(-50%);
margin: 0 auto;
border-radius: 0px;
font-size: var(--sub-text-font-size);
width: max-content;
line-height: 1.8em;
}

.px-button a:has(.px-button-sub-text), 
.px-button a:has(.px-button-sub-text):hover, 
.px-button a:has(.px-button-sub-text):focus {
padding: var(--button-dynamic-padding-vertical) var(--button-dynamic-padding-horizontal);
margin-top: calc(var(--sub-text-font-size) / 2); 
}

/* MOBILE CTA BUTTON
--------------------------------------------------- */
body:not(.px-cta-button-everywhere) .px-page-cta-button {
display:none;
}

.px-page-cta-button {
position: fixed;
left: 0;
bottom: 0;
margin: 12px;
box-shadow: 0 0 10px 1px rgba(0,0,0,.05);
z-index:100;
border-radius: 25px;
}

.px-page-cta-button a {
height: 50px;
background: var(--px-page-cta-button-bg);
vertical-align: middle;
display: table-cell;
font-weight: bold;
transition: var(--px-transition);
padding:0px 20px;
border-radius: 25px;
color: var(--px-page-cta-button-color);
font-size:16px;
}

.px-page-cta-button a:hover,
.px-page-cta-button a:focus {
background: var(--px-page-cta-button-bg-hover);
color: white;
}

body.px-cta-button-everywhere .px-mobile-cart-button-container,
body.px-cta-button-everywhere .wa-text,
body.px-cta-button-mobile .wa-text {
display:none !important;
}

@media (min-width : 768px) {body:not(.px-hide-popup) .px-page-cta-button {
left: auto;
right: 70px;
}

body.px-hide-popup .px-page-cta-button {
left: auto;
right: 0px;
}
} /* End @media */

@media (max-width : 767px) {body.px-cta-button-mobile .px-page-cta-button {
display:block !important;
}

body.px-cta-button-mobile .px-mobile-cart-button-container,
body.px-cta-button-mobile #px_cta_modal_title_holder {
display:none !important;
}
} /* End @media */