.elementor-250 .elementor-element.elementor-element-f01677f{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-250 .elementor-element.elementor-element-c7ff197{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-250 .elementor-element.elementor-element-a4dd2a6{width:100%;max-width:100%;}.elementor-250 .elementor-element.elementor-element-a4dd2a6.elementor-element{--align-self:center;}.woocommerce .elementor-250 .elementor-element.elementor-element-a4dd2a6 .woocommerce-product-gallery__trigger + .woocommerce-product-gallery__wrapper,
					.woocommerce .elementor-250 .elementor-element.elementor-element-a4dd2a6 .flex-viewport{border-radius:25px 25px 25px 25px;}.woocommerce .elementor-250 .elementor-element.elementor-element-a4dd2a6 .flex-control-thumbs img{border-radius:25px 25px 25px 25px;}.elementor-250 .elementor-element.elementor-element-746379c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--gap:5px 5px;--row-gap:5px;--column-gap:5px;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:#E8E8E8;--border-color:#E8E8E8;--border-radius:25px 25px 25px 25px;--padding-top:5%;--padding-bottom:5%;--padding-left:5%;--padding-right:5%;}.elementor-250 .elementor-element.elementor-element-2555517{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-250 .elementor-element.elementor-element-fef31cb{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-250 .elementor-element.elementor-element-cbdf499 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:0.8em;font-weight:400;font-style:italic;color:var( --e-global-color-primary );}.elementor-250 .elementor-element.elementor-element-cbdf499 .elementor-heading-title a:hover, .elementor-250 .elementor-element.elementor-element-cbdf499 .elementor-heading-title a:focus{color:var( --e-global-color-astglobalcolor6 );}.elementor-widget-woocommerce-product-title .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-250 .elementor-element.elementor-element-e09c779 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:2em;font-weight:800;color:var( --e-global-color-astglobalcolor6 );}.elementor-widget-woocommerce-product-content{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-250 .elementor-element.elementor-element-f2327d8{color:var( --e-global-color-astglobalcolor6 );font-family:"Roboto", Sans-serif;font-size:0.9em;font-weight:200;}.elementor-250 .elementor-element.elementor-element-6e2d923{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-woocommerce-product-add-to-cart .added_to_cart{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-250 .elementor-element.elementor-element-fc358ee .cart button, .elementor-250 .elementor-element.elementor-element-fc358ee .cart .button{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );border-style:solid;border-width:2px 2px 2px 2px;border-radius:25px 25px 25px 25px;color:var( --e-global-color-astglobalcolor4 );background-color:#111111;transition:all 0.2s;}.elementor-250 .elementor-element.elementor-element-fc358ee .cart button:hover, .elementor-250 .elementor-element.elementor-element-fc358ee .cart .button:hover{color:#111111;background-color:var( --e-global-color-astglobalcolor4 );border-color:#111111;}.elementor-250 .elementor-element.elementor-element-fc358ee{--view-cart-spacing:0px;--button-spacing:0px;}.elementor-250 .elementor-element.elementor-element-fc358ee .quantity .qty{border-style:none;padding:0px 0px 0px 0px;transition:all 0.2s;}.woocommerce .elementor-250 .elementor-element.elementor-element-fc358ee form.cart .variations{margin-bottom:0px;}.woocommerce .elementor-250 .elementor-element.elementor-element-fc358ee form.cart table.variations tr th, .woocommerce .elementor-250 .elementor-element.elementor-element-fc358ee form.cart table.variations tr td{padding-top:calc( 0px/2 );padding-bottom:calc( 0px/2 );}.woocommerce .elementor-250 .elementor-element.elementor-element-fc358ee form.cart table.variations label{font-family:"Roboto", Sans-serif;font-size:1.2em;font-weight:800;}.woocommerce .elementor-250 .elementor-element.elementor-element-fc358ee form.cart table.variations td.value select, .woocommerce div.product.elementor.elementor-250 .elementor-element.elementor-element-fc358ee form.cart table.variations td.value:before{font-family:"Roboto", Sans-serif;font-weight:600;text-transform:uppercase;}.woocommerce .elementor-250 .elementor-element.elementor-element-fc358ee form.cart table.variations td.value select, .woocommerce .elementor-250 .elementor-element.elementor-element-fc358ee form.cart table.variations td.value:before{border-radius:25px;}.woocommerce .elementor-widget-woocommerce-product-price .price{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.woocommerce .elementor-250 .elementor-element.elementor-element-1949e8f .price{font-family:"Jost", Sans-serif;font-weight:400;}.elementor-250 .elementor-element.elementor-element-3d48ad9{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--border-radius:15px 15px 15px 15px;}.elementor-250 .elementor-element.elementor-element-3d48ad9:not(.elementor-motion-effects-element-type-background), .elementor-250 .elementor-element.elementor-element-3d48ad9 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#E6E6E6;}.elementor-250 .elementor-element.elementor-element-5159f7c{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:5px 5px;--row-gap:5px;--column-gap:5px;border-style:solid;--border-style:solid;border-width:0px 01px 0px 0px;--border-top-width:0px;--border-right-width:01px;--border-bottom-width:0px;--border-left-width:0px;border-color:#C5BBBB;--border-color:#C5BBBB;}.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-250 .elementor-element.elementor-element-dfd939a .elementor-icon-wrapper{text-align:center;}.elementor-250 .elementor-element.elementor-element-dfd939a .elementor-icon{font-size:26px;}.elementor-250 .elementor-element.elementor-element-dfd939a .elementor-icon svg{height:26px;}.elementor-250 .elementor-element.elementor-element-47385f8{text-align:center;}.elementor-250 .elementor-element.elementor-element-47385f8 .elementor-heading-title{font-family:"Jost", Sans-serif;font-size:12px;font-weight:400;}.elementor-250 .elementor-element.elementor-element-08a2e4c{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:5px 5px;--row-gap:5px;--column-gap:5px;border-style:solid;--border-style:solid;border-width:0px 01px 0px 0px;--border-top-width:0px;--border-right-width:01px;--border-bottom-width:0px;--border-left-width:0px;border-color:#C5BBBB;--border-color:#C5BBBB;}.elementor-250 .elementor-element.elementor-element-8069328 .elementor-icon-wrapper{text-align:center;}.elementor-250 .elementor-element.elementor-element-8069328 .elementor-icon{font-size:26px;}.elementor-250 .elementor-element.elementor-element-8069328 .elementor-icon svg{height:26px;}.elementor-250 .elementor-element.elementor-element-5d2f903{text-align:center;}.elementor-250 .elementor-element.elementor-element-5d2f903 .elementor-heading-title{font-family:"Jost", Sans-serif;font-size:12px;font-weight:400;}.elementor-250 .elementor-element.elementor-element-ac3c8e6{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:5px 5px;--row-gap:5px;--column-gap:5px;}.elementor-250 .elementor-element.elementor-element-b90c00b .elementor-icon-wrapper{text-align:center;}.elementor-250 .elementor-element.elementor-element-b90c00b .elementor-icon{font-size:26px;}.elementor-250 .elementor-element.elementor-element-b90c00b .elementor-icon svg{height:26px;}.elementor-250 .elementor-element.elementor-element-d8663fa{text-align:center;}.elementor-250 .elementor-element.elementor-element-d8663fa .elementor-heading-title{font-family:"Jost", Sans-serif;font-size:12px;font-weight:400;}.elementor-250 .elementor-element.elementor-element-fe7b42c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-250 .elementor-element.elementor-element-f87fcfc{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-250 .elementor-element.elementor-element-b99b65a{width:100%;max-width:100%;}.elementor-250 .elementor-element.elementor-element-b99b65a.elementor-element{--align-self:center;}.elementor-250 .elementor-element.elementor-element-d94f380{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-250 .elementor-element.elementor-element-2a8c6b8{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-250 .elementor-element.elementor-element-f7a1b3b{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-250 .elementor-element.elementor-element-b9fe18c{--display:flex;--gap:5px 5px;--row-gap:5px;--column-gap:5px;border-style:solid;--border-style:solid;border-width:2px 2px 2px 2px;--border-top-width:2px;--border-right-width:2px;--border-bottom-width:2px;--border-left-width:2px;border-color:#004F424D;--border-color:#004F424D;--border-radius:15px 15px 15px 15px;--padding-top:25px;--padding-bottom:25px;--padding-left:25px;--padding-right:25px;}.elementor-250 .elementor-element.elementor-element-b9fe18c:not(.elementor-motion-effects-element-type-background), .elementor-250 .elementor-element.elementor-element-b9fe18c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-250 .elementor-element.elementor-element-8f41bd4{text-align:center;}.elementor-250 .elementor-element.elementor-element-8f41bd4 .elementor-heading-title{font-family:"Fraunces", Sans-serif;font-size:18px;font-weight:600;color:var( --e-global-color-astglobalcolor4 );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-250 .elementor-element.elementor-element-721e7fc{text-align:center;font-family:"Fraunces", Sans-serif;font-size:14px;font-weight:400;color:var( --e-global-color-astglobalcolor4 );}.elementor-250 .elementor-element.elementor-element-26d905d{--display:flex;}@media(max-width:1366px){.elementor-250 .elementor-element.elementor-element-f01677f{--grid-auto-flow:row;}}@media(max-width:1200px){.elementor-250 .elementor-element.elementor-element-f01677f{--grid-auto-flow:row;}}@media(max-width:1024px){.elementor-250 .elementor-element.elementor-element-f01677f{--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--gap:05px 05px;--row-gap:05px;--column-gap:05px;--grid-auto-flow:row;}.elementor-250 .elementor-element.elementor-element-f2327d8{font-size:0.8em;}}@media(max-width:880px){.elementor-250 .elementor-element.elementor-element-f01677f{--grid-auto-flow:row;}.elementor-250 .elementor-element.elementor-element-3d48ad9{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-250 .elementor-element.elementor-element-5159f7c{border-width:0px 0px 01px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:01px;--border-left-width:0px;}.elementor-250 .elementor-element.elementor-element-08a2e4c{border-width:0px 0px 01px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:01px;--border-left-width:0px;}}@media(max-width:767px){.elementor-250 .elementor-element.elementor-element-f01677f{--content-width:90%;--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-250 .elementor-element.elementor-element-cbdf499{text-align:center;}.elementor-250 .elementor-element.elementor-element-e09c779{text-align:center;}}@media(min-width:768px){.elementor-250 .elementor-element.elementor-element-f01677f{--content-width:80vw;}.elementor-250 .elementor-element.elementor-element-2555517{--width:100%;}.elementor-250 .elementor-element.elementor-element-fef31cb{--width:100%;}.elementor-250 .elementor-element.elementor-element-6e2d923{--width:100%;}.elementor-250 .elementor-element.elementor-element-fe7b42c{--content-width:1400px;}.elementor-250 .elementor-element.elementor-element-f87fcfc{--content-width:1400px;}.elementor-250 .elementor-element.elementor-element-d94f380{--content-width:1400px;}.elementor-250 .elementor-element.elementor-element-2a8c6b8{--content-width:1400px;}}@media(min-width:2400px){.elementor-250 .elementor-element.elementor-element-f01677f{--grid-auto-flow:row;}}/* Start custom CSS for woocommerce-product-images, class: .elementor-element-a4dd2a6 */.woocommerce-js div.product div.images{
    margin: 0 !important
;
}/* Fix Elementor / WooCommerce product image carousel */
.elementor-widget-woocommerce-product-images .woocommerce-product-gallery {
    width: 100%;
    max-width: 100%;
    position: relative;
    opacity: 1 !important;
}

.elementor-widget-woocommerce-product-images .woocommerce-product-gallery .flex-viewport {
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
    position: relative !important;
}

.elementor-widget-woocommerce-product-images .woocommerce-product-gallery .woocommerce-product-gallery__wrapper {
    display: flex !important;
    align-items: stretch;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    transition-property: transform;
}

.elementor-widget-woocommerce-product-images .woocommerce-product-gallery .woocommerce-product-gallery__image {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    float: none !important;
    display: block !important;
    position: relative;
    overflow: hidden;
}

.elementor-widget-woocommerce-product-images .woocommerce-product-gallery .woocommerce-product-gallery__image a {
    display: block;
    width: 100%;
}

.elementor-widget-woocommerce-product-images .woocommerce-product-gallery .woocommerce-product-gallery__image img:not(.zoomImg) {
    display: block;
    width: 100% !important;
    height: auto !important;
    max-width: 100% !important;
    object-fit: contain;
}

.elementor-widget-woocommerce-product-images .woocommerce-product-gallery .flex-control-thumbs {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin: 14px 0 0 !important;
    padding: 0 !important;
    list-style: none;
}

.elementor-widget-woocommerce-product-images .woocommerce-product-gallery .flex-control-thumbs li {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    cursor: pointer;
}

.elementor-widget-woocommerce-product-images .woocommerce-product-gallery .flex-control-thumbs img {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1 / 1;
    object-fit: contain;
    border-radius: 14px;
    opacity: 0.55;
    transition: opacity 0.2s ease, border-color 0.2s ease;
}

.elementor-widget-woocommerce-product-images .woocommerce-product-gallery .flex-control-thumbs img.flex-active,
.elementor-widget-woocommerce-product-images .woocommerce-product-gallery .flex-control-thumbs img:hover {
    opacity: 1;
    border-color: #111111;
}

@media (max-width: 767px) {
    .elementor-widget-woocommerce-product-images .woocommerce-product-gallery .flex-control-thumbs {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 8px;
    }

    .elementor-widget-woocommerce-product-images .woocommerce-product-gallery .flex-control-thumbs img {
        border-radius: 10px;
    }
}/* End custom CSS */
/* Start custom CSS for woocommerce-product-content, class: .elementor-element-f2327d8 */p{
margin-bottom: 0 !important;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-51fadf2 *//* Align SIZES label with the pill row, not the product-name row */
.peptico-bundle-current-coa-includes {
    align-items: flex-start !important;
}

.peptico-bundle-current-coa-label {
    align-self: flex-start !important;
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding-top: 28px !important;
    line-height: 1 !important;
}

/* Mobile */
@media (max-width: 767px) {
    .peptico-bundle-current-coa-label {
        padding-top: 27px !important;
    }
}

/* Very small mobile */
@media (max-width: 420px) {
    .peptico-bundle-current-coa-label {
        padding-top: 0 !important;
    }
}/* End custom CSS */
/* Start custom CSS for woocommerce-product-add-to-cart, class: .elementor-element-fc358ee *//* ===== PRODUCT VARIATIONS / ADD TO CART CLEANUP ===== */

.single_variation_wrap,
.e-atc-qty-button-holder,
table.variations,
table.variations td,
table.variations th {
    border: none !important;
    box-shadow: none !important;
}

/* Force variation .elementor-250 .elementor-element.elementor-element-fc358ee into row direction */
.elementor-widget-woocommerce-product-add-to-cart table.variations,
.woocommerce div.product form.cart table.variations {
    width: 100% !important;
    margin: 0 0 16px !important;
    padding: 0 !important;
    border: 0 !important;
    display: block !important;
}

.elementor-widget-woocommerce-product-add-to-cart table.variations tbody,
.woocommerce div.product form.cart table.variations tbody {
    width: 100% !important;
    display: grid !important;
    gap: 12px !important;
}

.elementor-widget-woocommerce-product-add-to-cart table.variations tr,
.woocommerce div.product form.cart table.variations tr {
    width: 100% !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 14px !important;
    margin: 0 !important;
    padding: 0 !important;
}

.elementor-widget-woocommerce-product-add-to-cart table.variations th,
.elementor-widget-woocommerce-product-add-to-cart table.variations td,
.woocommerce div.product form.cart table.variations th,
.woocommerce div.product form.cart table.variations td {
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

/* Label on the left */
.elementor-widget-woocommerce-product-add-to-cart table.variations th.label,
.woocommerce div.product form.cart table.variations th.label {
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: max-content !important;
    padding: 0 !important;
    text-align: left !important;
}

.elementor-widget-woocommerce-product-add-to-cart table.variations th.label label,
.woocommerce div.product form.cart table.variations th.label label {
    margin: 0 !important;
    padding: 0 !important;
    color: #111111 !important;
    font-size: 17px !important;
    line-height: 1 !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
}

/* Swatches / values on the right */
.elementor-widget-woocommerce-product-add-to-cart table.variations td.value,
.woocommerce div.product form.cart table.variations td.value {
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    justify-content: flex-start !important;
}

/* Astra swatch container */
.elementor-widget-woocommerce-product-add-to-cart .ast-variation-button-group,
.woocommerce div.product form.cart .ast-variation-button-group,
.elementor-widget-woocommerce-product-add-to-cart .ast-variation-button-group-wrap,
.woocommerce div.product form.cart .ast-variation-button-group-wrap {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Individual size pills */
.ast-single-variation {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 38px !important;
    min-width: 58px !important;
    padding: 10px 16px !important;
    border: 1px solid #111111 !important;
    border-radius: 25px !important;
    background: #ffffff !important;
    color: #111111 !important;
    font-size: 14px !important;
    line-height: 1 !important;
    font-weight: 800 !important;
    text-align: center !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
    box-shadow: none !important;
    outline: none !important;
    transition: background 0.16s ease, color 0.16s ease, border-color 0.16s ease !important;
}

/* Active / hover swatch */
.ast-single-variation.active,
.ast-single-variation.selected,
.ast-single-variation:hover {
    background-color: #111111 !important;
    color: #ffffff !important;
    border-color: #111111 !important;
}

/* Disabled swatch */
.ast-single-variation.disabled,
.ast-single-variation.disabled:hover {
    background-color: #e6e6e6 !important;
    color: #777777 !important;
    border-color: #bdbdbd !important;
    cursor: not-allowed !important;
    opacity: 1 !important;
}

/* Quantity buttons */
.minus,
.plus {
    background-color: #111111 !important;
    color: #ffffff !important;
    border: 1px solid #111111 !important;
    border-radius: 999px !important;
}

.minus:hover,
.plus:hover {
    background-color: #ffffff !important;
    color: #000000 !important;
    border: 1px solid #111111 !important;
}

/* Disabled quantity buttons */
.minus.disabled,
.plus.disabled,
.minus:disabled,
.plus:disabled {
    background-color: #d8d8d8 !important;
    color: #777777 !important;
    border-color: #bdbdbd !important;
    cursor: not-allowed !important;
}

/* ===== HIDE REDUNDANT VARIATION PRICE UNDER ADD TO CART ===== */
/* Keeps the bundle price above, hides only WooCommerce's second variation price */

.elementor-widget-woocommerce-product-add-to-cart .woocommerce-variation-price {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

/* Remove leftover empty spacing from variation wrapper */
.elementor-widget-woocommerce-product-add-to-cart .single_variation {
    margin: 0 !important;
    padding: 0 !important;
    min-height: 0 !important;
}

/* Hide empty variation description/availability blocks only when empty */
.elementor-widget-woocommerce-product-add-to-cart .woocommerce-variation-description:empty,
.elementor-widget-woocommerce-product-add-to-cart .woocommerce-variation-availability:empty {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Mobile */
@media (max-width: 767px) {
    .elementor-widget-woocommerce-product-add-to-cart table.variations tr,
    .woocommerce div.product form.cart table.variations tr {
        flex-direction: row !important;
        align-items: center !important;
        gap: 10px !important;
    }

    .elementor-widget-woocommerce-product-add-to-cart table.variations th.label label,
    .woocommerce div.product form.cart table.variations th.label label {
        font-size: 15px !important;
    }

    .ast-single-variation {
        min-height: 34px !important;
        min-width: 52px !important;
        padding: 9px 13px !important;
        font-size: 12px !important;
    }

    .elementor-widget-woocommerce-product-add-to-cart .ast-variation-button-group,
    .woocommerce div.product form.cart .ast-variation-button-group,
    .elementor-widget-woocommerce-product-add-to-cart .ast-variation-button-group-wrap,
    .woocommerce div.product form.cart .ast-variation-button-group-wrap {
        gap: 7px !important;
    }
}
/* ===== QUANTITY LABEL / ::BEFORE MATCH VARIATION LABEL ===== */

.elementor-widget-woocommerce-product-add-to-cart .quantity::before,
.woocommerce div.product form.cart .quantity::before,
.elementor-widget-woocommerce-product-add-to-cart .e-atc-qty-button-holder::before,
.woocommerce div.product form.cart .e-atc-qty-button-holder::before {
    color: #111111 !important;
    font-size: 17px !important;
    line-height: 1 !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0 !important;
    font-family: inherit !important;
}

/* If your quantity wrapper does not already have text from theme/plugin */
.elementor-widget-woocommerce-product-add-to-cart .quantity::before,
.woocommerce div.product form.cart .quantity::before {
    content: "Quantity:" !important;
    display: inline-flex !important;
    align-items: center !important;
    margin-right: 14px !important;
}

/* Keep quantity row aligned horizontally */
.elementor-widget-woocommerce-product-add-to-cart .quantity,
.woocommerce div.product form.cart .quantity {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 0 !important;
}

/* Mobile */
@media (max-width: 767px) {
    .elementor-widget-woocommerce-product-add-to-cart .quantity::before,
    .woocommerce div.product form.cart .quantity::before,
    .elementor-widget-woocommerce-product-add-to-cart .e-atc-qty-button-holder::before,
    .woocommerce div.product form.cart .e-atc-qty-button-holder::before {
        font-size: 15px !important;
    }

    .elementor-widget-woocommerce-product-add-to-cart .quantity::before,
    .woocommerce div.product form.cart .quantity::before {
        margin-right: 10px !important;
    }
}/* End custom CSS */
/* Start custom CSS for woocommerce-product-data-tabs, class: .elementor-element-1034f96 */@import url('https://fonts.googleapis.com/css2?family=Jost:wght@300;400;500;600;700;800&display=swap');

/* ===== PEPTICO PRODUCT TABS VARIABLES ===== */

.woocommerce div.product .woocommerce-tabs {
    /* Font */
    --peptico-tabs-font-family: 'Jost', serif;

    /* Main tab button text */
    --peptico-tab-font-size: 17px;
    --peptico-tab-font-weight: 450;
    --peptico-tab-line-height: 1.2;

    /* EVERY heading inside the tab panels */
    --peptico-panel-heading-font-size: 16px;
    --peptico-panel-heading-font-weight: 600;
    --peptico-panel-heading-line-height: 1.35;

    /* EVERY paragraph / list item / normal text inside the tab panels */
    --peptico-panel-text-font-size: 16px;
    --peptico-panel-text-font-weight: 400;
    --peptico-panel-text-line-height: 1.45;

    /* Optional small badges/buttons */
    --peptico-small-font-size: 12px;
    --peptico-small-font-weight: 400;
    --peptico-small-line-height: 1.25;

    /* Layout */
    --peptico-panel-padding: 28px;
    --peptico-card-padding: 22px;
    --peptico-row-padding-y: 18px;
    --peptico-row-padding-x: 20px;
    --peptico-gap: 18px;

    /* Shape / colors */
    --peptico-border-color: #000000;
    --peptico-bg: #ffffff;
    --peptico-muted-bg: #f7f7f7;
    --peptico-text: #000000;
    --peptico-muted-text: #555555;
    --peptico-radius: 14px;
}

/* ===== BASE ===== */

.woocommerce div.product .woocommerce-tabs,
.woocommerce div.product .woocommerce-tabs * {
    box-sizing: border-box !important;
    font-family: var(--peptico-tabs-font-family) !important;
}

.woocommerce div.product .woocommerce-tabs {
    width: 100% !important;
    margin: 42px 0 !important;
    padding: 0 !important;
    color: var(--peptico-text) !important;
    text-align: left !important;
}

/* ===== TAB NAVIGATION ===== */

.woocommerce div.product .woocommerce-tabs ul.tabs {
    display: flex !important;
    align-items: flex-end !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid var(--peptico-border-color) !important;
    background: transparent !important;
    overflow: visible !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs::before,
.woocommerce div.product .woocommerce-tabs ul.tabs::after {
    display: none !important;
    content: none !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid var(--peptico-border-color) !important;
    border-bottom: 0 !important;
    border-radius: var(--peptico-radius) var(--peptico-radius) 0 0 !important;
    background: var(--peptico-bg) !important;
    color: var(--peptico-text) !important;
    box-shadow: none !important;
    overflow: hidden !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after {
    display: none !important;
    content: none !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li + li {
    margin-left: 8px !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
    display: block !important;
    padding: 14px 22px !important;
    background: var(--peptico-bg) !important;
    color: var(--peptico-text) !important;
    font-size: var(--peptico-tab-font-size) !important;
    line-height: var(--peptico-tab-line-height) !important;
    font-weight: var(--peptico-tab-font-weight) !important;
    text-decoration: none !important;
    outline: none !important;
    box-shadow: none !important;
    text-transform: uppercase !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li:hover,
.woocommerce div.product .woocommerce-tabs ul.tabs li.active,
.woocommerce div.product .woocommerce-tabs ul.tabs li:hover a,
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
    background: var(--peptico-text) !important;
    color: var(--peptico-bg) !important;
}

/* ===== TAB PANEL SHELL ===== */

.woocommerce div.product .woocommerce-tabs .panel {
    width: 100% !important;
    margin: 0 !important;
    padding: var(--peptico-panel-padding) !important;
    border: 1px solid var(--peptico-border-color) !important;
    border-top: 0 !important;
    border-radius: 0 0 var(--peptico-radius) var(--peptico-radius) !important;
    background: var(--peptico-bg) !important;
    color: var(--peptico-text) !important;
    box-shadow: none !important;
    text-align: left !important;
}

.woocommerce div.product .woocommerce-tabs .panel > h2:first-child {
    display: none !important;
}

/* ===== UNIVERSAL TAB TYPOGRAPHY FORCE ===== */
/* This is the important part: all headings and paragraph-style content now match. */

.woocommerce div.product .woocommerce-tabs .panel h1,
.woocommerce div.product .woocommerce-tabs .panel h2,
.woocommerce div.product .woocommerce-tabs .panel h3,
.woocommerce div.product .woocommerce-tabs .panel h4,
.woocommerce div.product .woocommerce-tabs .panel h5,
.woocommerce div.product .woocommerce-tabs .panel h6,
.woocommerce div.product .woocommerce-tabs .panel .peptico-info-label,
.woocommerce div.product .woocommerce-tabs .panel .peptico-storage-label,
.woocommerce div.product .woocommerce-tabs .panel .coa-history-card-dosage {
    color: var(--peptico-text) !important;
    font-size: var(--peptico-panel-heading-font-size) !important;
    line-height: var(--peptico-panel-heading-line-height) !important;
    font-weight: var(--peptico-panel-heading-font-weight) !important;
    text-align: left !important;
    text-transform: none !important;
}

.woocommerce div.product .woocommerce-tabs .panel p,
.woocommerce div.product .woocommerce-tabs .panel li,
.woocommerce div.product .woocommerce-tabs .panel .peptico-info-value,
.woocommerce div.product .woocommerce-tabs .panel .peptico-storage-list li,
.woocommerce div.product .woocommerce-tabs .panel .peptico-coa-history-note p,
.woocommerce div.product .woocommerce-tabs .panel .coa-history-card-label,
.woocommerce div.product .woocommerce-tabs .panel .coa-history-card-value,
.woocommerce div.product .woocommerce-tabs .panel .coa-history-cards-empty {
    color: var(--peptico-text) !important;
    font-size: var(--peptico-panel-text-font-size) !important;
    line-height: var(--peptico-panel-text-line-height) !important;
    font-weight: var(--peptico-panel-text-font-weight) !important;
    text-align: left !important;
}

/* Keep bold tags from making the paragraph look visually inconsistent */
.woocommerce div.product .woocommerce-tabs .panel p b,
.woocommerce div.product .woocommerce-tabs .panel p strong,
.woocommerce div.product .woocommerce-tabs .panel li b,
.woocommerce div.product .woocommerce-tabs .panel li strong {
    font-size: inherit !important;
    line-height: inherit !important;
    font-weight: var(--peptico-panel-heading-font-weight) !important;
}

/* Small badges/buttons stay controlled but not huge */
.woocommerce div.product .woocommerce-tabs .panel .coa-history-card-badge,
.woocommerce div.product .woocommerce-tabs .panel .coa-history-card-selected {
    font-size: var(--peptico-small-font-size) !important;
    line-height: var(--peptico-small-line-height) !important;
    font-weight: var(--peptico-small-font-weight) !important;
}

/* ===== CUSTOM PANEL WRAPPERS ===== */

.peptico-product-tab-panel,
.peptico-product-tab-panel * {
    box-sizing: border-box !important;
    font-family: var(--peptico-tabs-font-family) !important;
}

.peptico-product-tab-panel {
    width: 100% !important;
    max-width: none !important;
    color: var(--peptico-text) !important;
    text-align: left !important;
}

/* ===== ADDITIONAL INFORMATION TABLE ===== */

.peptico-info-table {
    width: 100% !important;
    max-width: none !important;
    border: 1px solid var(--peptico-border-color) !important;
    border-radius: var(--peptico-radius) !important;
    overflow: hidden !important;
    background: var(--peptico-bg) !important;
}

.peptico-info-row {
    display: grid !important;
    grid-template-columns: minmax(180px, 240px) minmax(0, 1fr) !important;
    border-bottom: 1px solid var(--peptico-border-color) !important;
}

.peptico-info-row:last-child {
    border-bottom: 0 !important;
}

.peptico-info-label {
    padding: var(--peptico-row-padding-y) var(--peptico-row-padding-x) !important;
    border-right: 1px solid var(--peptico-border-color) !important;
    background: var(--peptico-muted-bg) !important;
}

.peptico-info-value {
    padding: var(--peptico-row-padding-y) var(--peptico-row-padding-x) !important;
    background: var(--peptico-bg) !important;
}

/* ===== STORAGE GUIDELINES ===== */

.peptico-storage-guidelines-panel {
    width: 100% !important;
}

.peptico-storage-grid {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: var(--peptico-gap) !important;
    margin: 0 !important;
    padding: 0 !important;
}

.peptico-storage-card {
    width: 100% !important;
    padding: var(--peptico-card-padding) !important;
    border: 1px solid var(--peptico-border-color) !important;
    border-radius: var(--peptico-radius) !important;
    background: var(--peptico-bg) !important;
    color: var(--peptico-text) !important;
}

.peptico-storage-card-header {
    width: 100% !important;
    margin: 0 0 16px !important;
    padding: 0 !important;
}

.peptico-storage-label {
    display: block !important;
    margin: 0 0 8px !important;
    padding: 0 !important;
}

.peptico-storage-card h3,
.peptico-storage-note h3 {
    margin: 0 0 12px !important;
}

.peptico-storage-list {
    display: grid !important;
    gap: 10px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.peptico-storage-list li {
    margin: 0 !important;
    padding: 0 !important;
}

.peptico-storage-note {
    width: 100% !important;
    margin: var(--peptico-gap) 0 0 !important;
    padding: var(--peptico-card-padding) !important;
    border: 1px solid var(--peptico-border-color) !important;
    border-radius: var(--peptico-radius) !important;
    background: var(--peptico-bg) !important;
    color: var(--peptico-text) !important;
}

.peptico-storage-note p {
    margin: 0 !important;
}

/* ===== COA HISTORY OVERRIDES ===== */
/* These override the inline <style> printed by the COA History tab. */

.woocommerce div.product .woocommerce-tabs .panel .peptico-coa-history-panel,
.woocommerce div.product .woocommerce-tabs .panel .peptico-coa-history-panel *,
.woocommerce div.product .woocommerce-tabs .panel .peptico-coa-history-panel .coa-history-cards-wrap,
.woocommerce div.product .woocommerce-tabs .panel .peptico-coa-history-panel .coa-history-cards-wrap * {
    box-sizing: border-box !important;
    font-family: var(--peptico-tabs-font-family) !important;
}

.woocommerce div.product .woocommerce-tabs .panel .peptico-coa-history-note {
    width: 100% !important;
    margin: 0 0 24px !important;
    padding: var(--peptico-card-padding) !important;
    border: 1px solid var(--peptico-border-color) !important;
    border-radius: var(--peptico-radius) !important;
    background: var(--peptico-bg) !important;
    color: var(--peptico-text) !important;
}

.woocommerce div.product .woocommerce-tabs .panel .peptico-coa-history-note h3 {
    margin: 0 0 12px !important;
    font-size: var(--peptico-panel-heading-font-size) !important;
    line-height: var(--peptico-panel-heading-line-height) !important;
    font-weight: var(--peptico-panel-heading-font-weight) !important;
}

.woocommerce div.product .woocommerce-tabs .panel .peptico-coa-history-note p {
    margin: 0 !important;
    font-size: var(--peptico-panel-text-font-size) !important;
    line-height: var(--peptico-panel-text-line-height) !important;
    font-weight: var(--peptico-panel-text-font-weight) !important;
}

.woocommerce div.product .woocommerce-tabs .panel .peptico-coa-history-panel .coa-history-cards-header {
    display: none !important;
}

.woocommerce div.product .woocommerce-tabs .panel .peptico-coa-history-panel .coa-history-cards-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: var(--peptico-gap) !important;
    width: 100% !important;
    align-items: stretch !important;
}

.woocommerce div.product .woocommerce-tabs .panel .peptico-coa-history-panel .coa-history-card {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    padding: 16px !important;
    border: 1px solid var(--peptico-border-color) !important;
    border-radius: 18px !important;
    background: var(--peptico-bg) !important;
    color: var(--peptico-text) !important;
    box-shadow: none !important;
}

.woocommerce div.product .woocommerce-tabs .panel .peptico-coa-history-panel .coa-history-card-top {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    margin-bottom: 12px !important;
    flex-wrap: wrap !important;
}

.woocommerce div.product .woocommerce-tabs .panel .peptico-coa-history-panel .coa-history-card-dosage {
    margin: 0 0 10px !important;
    font-size: var(--peptico-panel-heading-font-size) !important;
    line-height: var(--peptico-panel-heading-line-height) !important;
    font-weight: var(--peptico-panel-heading-font-weight) !important;
}

.woocommerce div.product .woocommerce-tabs .panel .peptico-coa-history-panel .coa-history-card-divider {
    width: 100% !important;
    height: 1px !important;
    margin: 8px 0 12px !important;
    background: var(--peptico-border-color) !important;
    opacity: 1 !important;
}

.woocommerce div.product .woocommerce-tabs .panel .peptico-coa-history-panel .coa-history-card-meta {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    margin-bottom: 16px !important;
}

.woocommerce div.product .woocommerce-tabs .panel .peptico-coa-history-panel .coa-history-card-row {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 14px !important;
}

.woocommerce div.product .woocommerce-tabs .panel .peptico-coa-history-panel .coa-history-card-label,
.woocommerce div.product .woocommerce-tabs .panel .peptico-coa-history-panel .coa-history-card-value {
    font-size: var(--peptico-panel-text-font-size) !important;
    line-height: var(--peptico-panel-text-line-height) !important;
    font-weight: var(--peptico-panel-text-font-weight) !important;
}

.woocommerce div.product .woocommerce-tabs .panel .peptico-coa-history-panel .coa-history-card-value {
    text-align: right !important;
}

.woocommerce div.product .woocommerce-tabs .panel .peptico-coa-history-panel .coa-history-card-button,
.woocommerce div.product .woocommerce-tabs .panel .peptico-coa-history-panel .coa-history-card-button:visited,
.woocommerce div.product .woocommerce-tabs .panel .peptico-coa-history-panel .coa-history-card-button:focus,
.woocommerce div.product .woocommerce-tabs .panel .peptico-coa-history-panel .coa-history-card-button:active {
    margin-top: auto !important;
    width: 100% !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    padding: 12px 14px !important;
    border: 0 !important;
    border-radius: 12px !important;
    background: var(--peptico-text) !important;
    color: var(--peptico-bg) !important;
    font-size: var(--peptico-panel-text-font-size) !important;
    line-height: var(--peptico-panel-text-line-height) !important;
    font-weight: var(--peptico-panel-heading-font-weight) !important;
    text-decoration: none !important;
    box-shadow: none !important;
    outline: none !important;
    cursor: pointer !important;
}

.woocommerce div.product .woocommerce-tabs .panel .peptico-coa-history-panel .coa-history-card-button:hover {
    background: var(--peptico-bg) !important;
    color: var(--peptico-text) !important;
    box-shadow: inset 0 0 0 1px var(--peptico-border-color) !important;
}

/* ===== MOBILE ===== */

@media (max-width: 767px) {
    .woocommerce div.product .woocommerce-tabs {
        --peptico-tab-font-size: 16px;

        --peptico-panel-heading-font-size: 15px;
        --peptico-panel-heading-font-weight: 400;

        --peptico-panel-text-font-size: 15px;
        --peptico-panel-text-font-weight: 300;

        --peptico-panel-padding: 18px;
        --peptico-card-padding: 18px;
        --peptico-row-padding-y: 14px;
        --peptico-row-padding-x: 16px;
        --peptico-radius: 12px;
        --peptico-gap: 14px;

        margin: 32px 0 !important;
    }

    .woocommerce div.product .woocommerce-tabs ul.tabs {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 8px !important;
        border-bottom: 0 !important;
    }

    .woocommerce div.product .woocommerce-tabs ul.tabs li {
        width: 100% !important;
        border: 1px solid var(--peptico-border-color) !important;
        border-radius: var(--peptico-radius) !important;
    }

    .woocommerce div.product .woocommerce-tabs ul.tabs li + li {
        margin-left: 0 !important;
    }

    .woocommerce div.product .woocommerce-tabs ul.tabs li a {
        padding: 14px 16px !important;
    }

    .woocommerce div.product .woocommerce-tabs .panel {
        margin-top: 10px !important;
        border: 1px solid var(--peptico-border-color) !important;
        border-radius: var(--peptico-radius) !important;
    }

    .peptico-info-row {
        grid-template-columns: 1fr !important;
    }

    .peptico-info-label {
        border-right: 0 !important;
        border-bottom: 1px solid var(--peptico-border-color) !important;
    }

    .peptico-storage-grid {
        grid-template-columns: 1fr !important;
    }

    .woocommerce div.product .woocommerce-tabs .panel .peptico-coa-history-panel .coa-history-cards-grid {
        grid-template-columns: 1fr !important;
    }

    .woocommerce div.product .woocommerce-tabs .panel .peptico-coa-history-panel .coa-history-card {
        padding: 14px !important;
        border-radius: 14px !important;
    }
}

.woocommerce div.product .woocommerce-tabs .panel .peptico-storage-note {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 5px !important;
}

.woocommerce div.product .woocommerce-tabs .panel .peptico-storage-note h3 {
    flex: 0 0 auto !important;
    margin: 0 !important;
    white-space: nowrap !important;
}

.woocommerce div.product .woocommerce-tabs .panel .peptico-storage-note p {
    flex: 1 1 auto !important;
    margin: 0 !important;
    white-space: normal !important;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-b99b65a */@import url('https://fonts.googleapis.com/css2?family=Fraunces:wght@400;500;600;700;800&display=swap');

.product-molecular-profile,
.product-molecular-profile * {
    box-sizing: border-box !important;
    font-family: 'Fraunces', serif !important;
}

.product-molecular-profile {
    width: 100% !important;
    margin: 40px 0 !important;
    color: #000000 !important;
}

.product-molecular-profile-card {
    width: 100% !important;
    max-width: none !important;
    padding: 28px !important;
    border: 1px solid #000000 !important;
    border-radius: 18px !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #000000 !important;
    box-shadow: none !important;
}

.product-molecular-profile-header {
    margin-bottom: 22px !important;
}

.product-molecular-profile-eyebrow {
    margin: 0 0 10px !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.08em !important;
    color: #000000 !important;
    opacity: 0.8 !important;
}

.product-molecular-profile-title {
    margin: 0 !important;
    font-size: 34px !important;
    line-height: 1.08 !important;
    font-weight: 800 !important;
    color: #000000 !important;
}

.product-molecular-profile-subtitle {
    margin: 12px 0 0 !important;
    font-size: 15px !important;
    line-height: 1.5 !important;
    color: #444444 !important;
}

.product-molecular-profile-layout {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: minmax(260px, 340px) minmax(0, 1fr) !important;
    gap: 18px !important;
    align-items: stretch !important;
}

.product-molecular-profile-structure,
.product-molecular-profile-structure:visited,
.product-molecular-profile-structure:focus,
.product-molecular-profile-structure:active {
    width: 100% !important;
    min-height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    gap: 14px !important;
    padding: 18px !important;
    border: 1px solid #000000 !important;
    border-radius: 14px !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #000000 !important;
    text-decoration: none !important;
    box-shadow: none !important;
    outline: none !important;
}

.product-molecular-profile-structure:hover {
    background: #000000 !important;
    background-color: #000000 !important;
    color: #ffffff !important;
    text-decoration: none !important;
}

.product-molecular-profile-structure-label {
    display: inline-flex !important;
    width: fit-content !important;
    padding: 7px 10px !important;
    border: 1px solid currentColor !important;
    border-radius: 999px !important;
    color: inherit !important;
    font-size: 11px !important;
    line-height: 1 !important;
    font-weight: 800 !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;
}

.product-molecular-profile-structure img {
    width: 100% !important;
    height: 240px !important;
    object-fit: contain !important;
    padding: 12px !important;
    border: 1px solid #000000 !important;
    border-radius: 12px !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    filter: grayscale(100%) contrast(1.05) !important;
}

.product-molecular-profile-structure-caption {
    color: inherit !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
    opacity: 0.78 !important;
}

.product-molecular-profile-table {
    width: 100% !important;
    border: 1px solid #000000 !important;
    border-radius: 14px !important;
    overflow: hidden !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
}

.product-molecular-profile-row {
    display: grid !important;
    grid-template-columns: minmax(180px, 240px) minmax(0, 1fr) !important;
    border-bottom: 1px solid #000000 !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
}

.product-molecular-profile-row:last-child {
    border-bottom: 0 !important;
}

.product-molecular-profile-label {
    padding: 16px 18px !important;
    border-right: 1px solid #000000 !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
    font-weight: 800 !important;
    color: #000000 !important;
    background: #f7f7f7 !important;
    background-color: #f7f7f7 !important;
}

.product-molecular-profile-value {
    padding: 16px 18px !important;
    font-size: 15px !important;
    line-height: 1.45 !important;
    font-weight: 600 !important;
    color: #000000 !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    word-break: break-word !important;
}

.product-molecular-profile-footer {
    margin-top: 18px !important;
}

.product-molecular-profile-link,
.product-molecular-profile-link:visited,
.product-molecular-profile-link:focus,
.product-molecular-profile-link:active {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 14px 18px !important;
    border: 1px solid #000000 !important;
    border-radius: 14px !important;
    background: #000000 !important;
    background-color: #000000 !important;
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: 15px !important;
    line-height: 1.2 !important;
    font-weight: 800 !important;
    box-shadow: none !important;
    outline: none !important;
    transition: background 0.2s ease, color 0.2s ease, box-shadow 0.2s ease !important;
}

.product-molecular-profile-link:hover {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #000000 !important;
    text-decoration: none !important;
    box-shadow: inset 0 0 0 1px #000000 !important;
}

.product-molecular-profile-empty {
    padding: 18px !important;
    border: 1px solid #000000 !important;
    border-radius: 14px !important;
    font-size: 15px !important;
    line-height: 1.45 !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #000000 !important;
}

@media (max-width: 1024px) {
    .product-molecular-profile-layout {
        grid-template-columns: 1fr !important;
    }

    .product-molecular-profile-structure img {
        height: 220px !important;
    }
}

@media (max-width: 767px) {
    .product-molecular-profile {
        margin: 30px 0 !important;
    }

    .product-molecular-profile-card {
        padding: 18px !important;
        border-radius: 14px !important;
    }

    .product-molecular-profile-title {
        font-size: 27px !important;
    }

    .product-molecular-profile-subtitle {
        font-size: 14px !important;
    }

    .product-molecular-profile-structure {
        border-radius: 12px !important;
        padding: 15px !important;
    }

    .product-molecular-profile-structure img {
        height: 190px !important;
        border-radius: 10px !important;
    }

    .product-molecular-profile-table {
        border-radius: 12px !important;
    }

    .product-molecular-profile-row {
        grid-template-columns: 1fr !important;
    }

    .product-molecular-profile-label {
        border-right: 0 !important;
        border-bottom: 1px solid #000000 !important;
        padding: 14px 15px !important;
        font-size: 13px !important;
    }

    .product-molecular-profile-value {
        padding: 14px 15px !important;
        font-size: 14px !important;
    }

    .product-molecular-profile-link,
    .product-molecular-profile-link:visited,
    .product-molecular-profile-link:focus,
    .product-molecular-profile-link:active {
        width: 100% !important;
        justify-content: center !important;
        border-radius: 12px !important;
        font-size: 14px !important;
    }
}
.product-molecular-profile-card.has-multiple-profiles .product-molecular-profile-layout.is-multi-profile {
    margin-top: 26px;
}

.product-molecular-profile-card.has-multiple-profiles .product-molecular-profile-layout.is-multi-profile:first-of-type {
    margin-top: 0;
}

.product-molecular-profile-card.has-multiple-profiles .product-molecular-profile-footer {
    margin-top: 14px;
    margin-bottom: 34px;
}

.product-molecular-profile-card.has-multiple-profiles .product-molecular-profile-footer:last-child {
    margin-bottom: 0;
}

.product-molecular-profile-card.has-multiple-profiles .product-molecular-profile-footer:not(:last-child) {
    padding-bottom: 26px;
    border-bottom: 1px solid rgba(17, 17, 17, 0.12);
}

@media (max-width: 767px) {
    .product-molecular-profile-card.has-multiple-profiles .product-molecular-profile-layout.is-multi-profile {
        margin-top: 22px;
    }

    .product-molecular-profile-card.has-multiple-profiles .product-molecular-profile-footer {
        margin-top: 12px;
        margin-bottom: 28px;
    }

    .product-molecular-profile-card.has-multiple-profiles .product-molecular-profile-footer:not(:last-child) {
        padding-bottom: 22px;
    }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-19dabae *//* ===== SOURCES & REFERENCES SPLIT GROUPS ===== */
/* Used when a product has ** split PubMed searches */

.product-sources-groups,
.product-sources-groups * {
    box-sizing: border-box !important;
}

.product-sources-groups {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 34px !important;
    margin: 24px 0 0 !important;
    padding: 0 !important;
}

.product-sources-group {
    width: 100% !important;
    display: block !important;
    margin: 0 !important;
    padding: 22px !important;
    border: 1px solid #111111 !important;
    border-radius: 18px !important;
    background: #ffffff !important;
    color: #111111 !important;
    overflow: hidden !important;
}

.product-sources-group-header {
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin: 0 0 18px !important;
    padding: 0 !important;
    background: transparent !important;
    color: #111111 !important;
}

.product-sources-group-header .product-source-badge {
    margin: 0 !important;
    flex: 0 0 auto !important;
}

.product-sources-group-title {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #111111 !important;
    font-size: 15px !important;
    line-height: 1.2 !important;
    font-weight: 800 !important;
}

.product-sources-group .product-sources-grid {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 18px !important;
    margin: 0 !important;
    padding: 0 !important;
}

.product-sources-group .product-source-card {
    height: 100% !important;
    margin: 0 !important;
}

.product-sources-group .product-sources-empty {
    width: 100% !important;
    margin: 0 !important;
    padding: 18px 20px !important;
    border: 1px solid #111111 !important;
    border-radius: 14px !important;
    background: #ffffff !important;
    color: #111111 !important;
    font-size: 15px !important;
    line-height: 1.45 !important;
    font-weight: 500 !important;
}

/* Tablet */
@media (max-width: 1024px) {
    .product-sources-group .product-sources-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 16px !important;
    }
}

/* Mobile */
@media (max-width: 767px) {
    .product-sources-groups {
        gap: 24px !important;
        margin-top: 18px !important;
    }

    .product-sources-group {
        padding: 14px !important;
        border-radius: 14px !important;
    }

    .product-sources-group-header {
        gap: 7px !important;
        margin-bottom: 14px !important;
    }

    .product-sources-group-title {
        font-size: 13px !important;
    }

    .product-sources-group .product-sources-grid {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    .product-sources-group .product-sources-empty {
        padding: 14px !important;
        border-radius: 12px !important;
        font-size: 13px !important;
    }
}
.product-sources-group .product-sources-group-header {
    margin-top: 18px !important;
    margin-bottom: 22px !important;
}

.product-sources-group:first-child .product-sources-group-header {
    margin-top: 0 !important;
}

@media (max-width: 767px) {
    .product-sources-group .product-sources-group-header {
        margin-top: 14px !important;
        margin-bottom: 16px !important;
    }

    .product-sources-group:first-child .product-sources-group-header {
        margin-top: 0 !important;
    }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-1160dd9 */@import url('https://fonts.googleapis.com/css2?family=Fraunces:wght@400;500;600;700;800&display=swap');

.peptico-bundle-section,
.peptico-bundle-section * {
    box-sizing: border-box !important;
    font-family: 'Fraunces', serif !important;
}

.peptico-bundle-section {
    width: 100% !important;
    margin: 48px 0 !important;
    padding: 0 !important;
    color: #000000 !important;
    background: transparent !important;
    background-color: transparent !important;
}

/* ===== HEADER ===== */

.peptico-bundle-section-header {
    width: 100% !important;
    margin: 0 0 22px !important;
    padding: 0 !important;
}

.peptico-bundle-eyebrow {
    margin: 0 0 8px !important;
    color: #000000 !important;
    font-size: 13px !important;
    line-height: 1.2 !important;
    font-weight: 800 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
}

.peptico-bundle-title {
    margin: 0 !important;
    color: #000000 !important;
    font-size: 38px !important;
    line-height: 1.08 !important;
    font-weight: 800 !important;
}

.peptico-bundle-subtitle {
    max-width: 760px !important;
    margin: 10px 0 0 !important;
    color: #333333 !important;
    font-size: 17px !important;
    line-height: 1.5 !important;
    font-weight: 500 !important;
}

/* ===== GRID ===== */
/* 
   1 bundle = full width
   2 bundles = 50/50
   3+ bundles = 3 columns
*/

.peptico-bundle-grid {
    width: 100% !important;
    display: grid !important;
    gap: 18px !important;
    align-items: stretch !important;
}

.peptico-bundle-section.bundle-count-1 .peptico-bundle-grid {
    grid-template-columns: 1fr !important;
}

.peptico-bundle-section.bundle-count-2 .peptico-bundle-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.peptico-bundle-section.bundle-count-3 .peptico-bundle-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

/* ===== CARD ===== */

.peptico-bundle-card {
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    min-height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-self: stretch !important;
    border: 1px solid #000000 !important;
    border-radius: 18px !important;
    overflow: hidden !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #000000 !important;
    box-shadow: none !important;
}

/* ===== IMAGE AREA ===== */

.peptico-bundle-image-link,
.peptico-bundle-image-link:visited,
.peptico-bundle-image-link:focus,
.peptico-bundle-image-link:active {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 390px !important;
    min-height: 390px !important;
    max-height: 390px !important;
    overflow: hidden !important;
    background: #f7f7f7 !important;
    background-color: #f7f7f7 !important;
    color: inherit !important;
    text-decoration: none !important;
    box-shadow: none !important;
    outline: none !important;
}

.peptico-bundle-image {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 80% !important;
    max-height: 80% !important;
    object-fit: contain !important;
    padding: 24px !important;
    transition: transform 0.25s ease !important;
}

.peptico-bundle-card:hover .peptico-bundle-image {
    transform: scale(1.04) !important;
}

/* ===== CARD BODY ===== */

.peptico-bundle-card-body {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    padding: 22px !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #000000 !important;
}

.peptico-bundle-card-topline {
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin: 0 0 14px !important;
}

.peptico-bundle-card-badge {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 6px 10px !important;
    border: 1px solid #000000 !important;
    border-radius: 999px !important;
    background: #000000 !important;
    background-color: #000000 !important;
    color: #ffffff !important;
    font-size: 11px !important;
    line-height: 1 !important;
    font-weight: 800 !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;
}

.peptico-bundle-card-price,
.peptico-bundle-card-price *,
.peptico-bundle-card-price .amount,
.peptico-bundle-card-price bdi {
    color: #000000 !important;
    font-size: 15px !important;
    line-height: 1.2 !important;
    font-weight: 800 !important;
    text-decoration: none !important;
}

.peptico-bundle-card-title {
    min-height: 58px !important;
    margin: 0 0 12px !important;
    color: #000000 !important;
    font-size: 24px !important;
    line-height: 1.15 !important;
    font-weight: 800 !important;
}

.peptico-bundle-card-title a,
.peptico-bundle-card-title a:visited,
.peptico-bundle-card-title a:focus,
.peptico-bundle-card-title a:active {
    color: #000000 !important;
    text-decoration: none !important;
    outline: none !important;
    box-shadow: none !important;
}

.peptico-bundle-card-title a:hover {
    color: #000000 !important;
    text-decoration: underline !important;
}

.peptico-bundle-card-description {
    margin: 0 0 16px !important;
    color: #333333 !important;
    font-size: 15px !important;
    line-height: 1.5 !important;
    font-weight: 500 !important;
}

.peptico-bundle-card-description p {
    margin: 0 0 10px !important;
}

.peptico-bundle-card-description p:last-child {
    margin-bottom: 0 !important;
}

/* ===== INCLUDED PRODUCTS BOX ===== */
/* This stretches so the buttons line up at the bottom. */

.peptico-bundle-includes {
    width: 100% !important;
    flex: 1 1 auto !important;
    min-height: 120px !important;
    margin: 0 0 18px !important;
    padding: 16px !important;
    border: 1px solid #000000 !important;
    border-radius: 14px !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #000000 !important;
}

.peptico-bundle-includes-label {
    margin: 0 0 10px !important;
    color: #000000 !important;
    font-size: 13px !important;
    line-height: 1.2 !important;
    font-weight: 800 !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;
}

.peptico-bundle-includes-list {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
}

.peptico-bundle-includes-list li {
    position: relative !important;
    margin: 0 !important;
    padding: 0 0 0 18px !important;
    color: #000000 !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
}

.peptico-bundle-includes-list li::before {
    content: "•" !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    color: #000000 !important;
}

.peptico-bundle-includes-list li a,
.peptico-bundle-includes-list li a:visited,
.peptico-bundle-includes-list li a:focus,
.peptico-bundle-includes-list li a:active {
    color: #000000 !important;
    text-decoration: none !important;
    border-bottom: 1px solid transparent !important;
    box-shadow: none !important;
    outline: none !important;
    transition: border-color 0.2s ease, opacity 0.2s ease !important;
}

.peptico-bundle-includes-list li a:hover {
    color: #000000 !important;
    text-decoration: none !important;
    border-bottom-color: #000000 !important;
    opacity: 0.72 !important;
}

/* ===== BUTTON ===== */

.peptico-bundle-button,
.peptico-bundle-button:visited,
.peptico-bundle-button:focus,
.peptico-bundle-button:active {
    margin-top: auto !important;
    width: 100% !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 15px 18px !important;
    border: 0 !important;
    border-radius: 14px !important;
    background: #000000 !important;
    background-color: #000000 !important;
    color: #ffffff !important;
    font-size: 16px !important;
    line-height: 1.2 !important;
    font-weight: 800 !important;
    text-decoration: none !important;
    box-shadow: none !important;
    outline: none !important;
    transition: background 0.2s ease, color 0.2s ease, box-shadow 0.2s ease !important;
}

.peptico-bundle-button:hover {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #000000 !important;
    text-decoration: none !important;
    box-shadow: inset 0 0 0 1px #000000 !important;
}

/* ===== RESPONSIVE ===== */

@media (max-width: 1024px) {
    .peptico-bundle-section.bundle-count-3 .peptico-bundle-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .peptico-bundle-title {
        font-size: 32px !important;
    }

    .peptico-bundle-card-title {
        min-height: 52px !important;
        font-size: 22px !important;
    }

    .peptico-bundle-image-link,
    .peptico-bundle-image-link:visited,
    .peptico-bundle-image-link:focus,
    .peptico-bundle-image-link:active {
        height: 320px !important;
        min-height: 320px !important;
        max-height: 320px !important;
    }
}

@media (max-width: 767px) {
    .peptico-bundle-section {
        margin: 36px 0 !important;
    }

    .peptico-bundle-section.bundle-count-1 .peptico-bundle-grid,
    .peptico-bundle-section.bundle-count-2 .peptico-bundle-grid,
    .peptico-bundle-section.bundle-count-3 .peptico-bundle-grid {
        grid-template-columns: 1fr !important;
    }

    .peptico-bundle-grid {
        gap: 14px !important;
    }

    .peptico-bundle-title {
        font-size: 28px !important;
    }

    .peptico-bundle-subtitle {
        font-size: 15px !important;
    }

    .peptico-bundle-card {
        border-radius: 14px !important;
    }

    .peptico-bundle-image-link,
    .peptico-bundle-image-link:visited,
    .peptico-bundle-image-link:focus,
    .peptico-bundle-image-link:active {
        height: 260px !important;
        min-height: 260px !important;
        max-height: 260px !important;
    }

    .peptico-bundle-card-body {
        padding: 18px !important;
    }

    .peptico-bundle-card-title {
        min-height: auto !important;
        font-size: 20px !important;
    }

    .peptico-bundle-image {
        padding: 18px !important;
    }

    .peptico-bundle-includes {
        min-height: auto !important;
    }

    .peptico-bundle-button,
    .peptico-bundle-button:visited,
    .peptico-bundle-button:focus,
    .peptico-bundle-button:active {
        border-radius: 12px !important;
        font-size: 15px !important;
        padding: 14px 16px !important;
    }
}/* End custom CSS */
/* Start custom CSS */@import url('https://fonts.googleapis.com/css2?family=Fraunces:wght@400;500;600;700;800&display=swap');

.product-sources-references,
.product-sources-references * {
    box-sizing: border-box !important;
    font-family: 'Fraunces', serif !important;
}

.product-sources-references {
    width: 100% !important;
    margin: 48px 0 !important;
    padding: 0 !important;
    color: #000000 !important;
}

.product-sources-header {
    margin-bottom: 22px !important;
}

.product-sources-eyebrow {
    margin: 0 0 8px !important;
    font-size: 14px !important;
    line-height: 1.2 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    font-weight: 700 !important;
    color: #000000 !important;
}

.product-sources-title {
    margin: 0 !important;
    font-size: 38px !important;
    line-height: 1.08 !important;
    font-weight: 800 !important;
    color: #000000 !important;
}

.product-sources-subtitle {
    margin: 10px 0 0 !important;
    font-size: 17px !important;
    line-height: 1.45 !important;
    color: #333333 !important;
}

.product-sources-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 18px !important;
    width: 100% !important;
    align-items: stretch !important;
}

.product-source-card,
.product-source-card:visited,
.product-source-card:focus,
.product-source-card:active {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    min-height: 310px !important;
    padding: 22px !important;
    border: 1px solid #000000 !important;
    border-radius: 14px !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #000000 !important;
    text-decoration: none !important;
    box-shadow: none !important;
    outline: none !important;
    overflow: hidden !important;
    transition: background 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease !important;
}

.product-source-card:hover {
    background: #000000 !important;
    background-color: #000000 !important;
    color: #ffffff !important;
    text-decoration: none !important;
    box-shadow: none !important;
    transform: translateY(-2px) !important;
}

.product-source-card *,
.product-source-card:hover * {
    color: inherit !important;
    text-decoration: none !important;
}

.product-source-topline {
    min-height: 30px !important;
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 10px !important;
    margin-bottom: 16px !important;
}

.product-source-badge {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 6px 10px !important;
    border: 1px solid currentColor !important;
    border-radius: 999px !important;
    font-size: 12px !important;
    line-height: 1 !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    white-space: nowrap !important;
}

.product-source-type {
    font-size: 12px !important;
    line-height: 1.2 !important;
    font-weight: 600 !important;
    opacity: 0.78 !important;
    text-align: right !important;
}

.product-source-title {
    min-height: 74px !important;
    max-height: 74px !important;
    margin: 0 0 12px !important;
    font-size: 20px !important;
    line-height: 1.22 !important;
    font-weight: 800 !important;
    color: inherit !important;
    overflow: hidden !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
}

.product-source-subtitle {
    min-height: 41px !important;
    max-height: 41px !important;
    margin: 0 0 10px !important;
    font-size: 15px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
    color: inherit !important;
    opacity: 0.9 !important;
    overflow: hidden !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
}

.product-source-meta {
    min-height: 39px !important;
    max-height: 39px !important;
    margin: 0 0 10px !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
    color: inherit !important;
    opacity: 0.82 !important;
    overflow: hidden !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
}

.product-source-description {
    min-height: 41px !important;
    max-height: 41px !important;
    margin: 0 0 18px !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
    color: inherit !important;
    opacity: 0.82 !important;
    overflow: hidden !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
}

.product-source-subtitle.is-empty,
.product-source-meta.is-empty,
.product-source-description.is-empty {
    opacity: 0 !important;
}

.product-source-link-text {
    margin-top: auto !important;
    display: inline-flex !important;
    width: fit-content !important;
    font-size: 14px !important;
    line-height: 1.2 !important;
    font-weight: 800 !important;
    border-bottom: 1px solid currentColor !important;
}

.product-sources-empty {
    width: 100% !important;
    padding: 22px !important;
    border: 1px solid #000000 !important;
    border-radius: 14px !important;
    background: #ffffff !important;
    color: #000000 !important;
    font-size: 17px !important;
    line-height: 1.45 !important;
}

@media (max-width: 1024px) {
    .product-sources-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .product-sources-title {
        font-size: 32px !important;
    }

    .product-source-title {
        font-size: 19px !important;
    }
}

@media (max-width: 767px) {
    .product-sources-references {
        margin: 36px 0 !important;
    }

    .product-sources-grid {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }

    .product-sources-title {
        font-size: 28px !important;
    }

    .product-sources-subtitle {
        font-size: 15px !important;
    }

    .product-source-card,
    .product-source-card:visited,
    .product-source-card:focus,
    .product-source-card:active {
        min-height: 290px !important;
        padding: 18px !important;
        border-radius: 12px !important;
    }

    .product-source-title {
        min-height: auto !important;
        max-height: none !important;
        font-size: 18px !important;
        -webkit-line-clamp: 3 !important;
    }

    .product-source-topline {
        align-items: flex-start !important;
        flex-direction: column !important;
        gap: 8px !important;
    }

    .product-source-type {
        text-align: left !important;
    }

    .product-sources-empty {
        border-radius: 12px !important;
        font-size: 15px !important;
    }
}

/* ===== SINGLE PRODUCT TOP SECTION - MATCH LEFT/RIGHT HEIGHT + TIGHT SPACING ===== */

/* Left image container + right info container */
.elementor-element-c7ff197,
.elementor-element-746379c {
    align-self: stretch !important;
    height: auto !important;
}

/* Make both columns equal-height */
.elementor-element-c7ff197 {
    display: flex !important;
}

.elementor-element-746379c {
    display: flex !important;
    flex-direction: column !important;
}

/* Keep the two main columns closer together */
.e-con-inner:has(> .elementor-element-c7ff197):has(> .elementor-element-746379c) {
    gap: 10px !important;
    column-gap: 10px !important;
}

/* Make the product image widget fill the left container */
.elementor-element-c7ff197 .elementor-widget-woocommerce-product-images,
.elementor-element-c7ff197 .woocommerce-product-gallery,
.elementor-element-c7ff197 .woocommerce-product-gallery__wrapper,
.elementor-element-c7ff197 .woocommerce-product-gallery__image,
.elementor-element-c7ff197 .woocommerce-product-gallery__image a {
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
}

/* Make the actual product image fill the available height nicely */
.elementor-element-c7ff197 .woocommerce-product-gallery__image img.wp-post-image {
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    display: block !important;
}

/* Right card: keep everything closer */
.elementor-element-746379c {
    gap: 10px !important;
    row-gap: 10px !important;
}

/* Right card direct widgets/containers spacing */
.elementor-element-746379c > .elementor-element,
.elementor-element-746379c .elementor-widget {
    margin-top: 0 !important;
    margin-bottom: 10px !important;
}

/* Nested containers inside the right card */
.elementor-element-746379c .e-con,
.elementor-element-746379c .e-con-inner {
    gap: 10px !important;
    row-gap: 10px !important;
}

/* Important: do NOT push Add to Cart to the bottom */
.elementor-element-fc358ee {
    margin-top: 0 !important;
}

/* Tighten specific product sections */
.elementor-element-4a9a09b,
.elementor-element-6415975,
.elementor-element-fc358ee {
    margin-top: 0 !important;
    margin-bottom: 10px !important;
}

/* Tighten COA block */
.current-coa-button-wrap {
    margin-top: 0 !important;
    margin-bottom: 10px !important;
}

.current-coa-message {
    margin-top: 8px !important;
}

/* Tighten Bundle & Save block */
.peptico-vial-bundle-section {
    margin-top: 0 !important;
    margin-bottom: 10px !important;
}

.peptico-vial-bundle-live-price {
    margin-top: 6px !important;
}

/* Tighten variation/size area */
.variations_form,
table.variations,
.single_variation_wrap {
    margin-top: 0 !important;
    margin-bottom: 10px !important;
}

/* Mobile: return everything to natural stacking */
@media (max-width: 767px) {
    .elementor-element-c7ff197,
    .elementor-element-746379c {
        height: auto !important;
        min-height: auto !important;
        align-self: auto !important;
    }

    .e-con-inner:has(> .elementor-element-c7ff197):has(> .elementor-element-746379c) {
        gap: 14px !important;
        row-gap: 14px !important;
    }

    .elementor-element-c7ff197 .elementor-widget-woocommerce-product-images,
    .elementor-element-c7ff197 .woocommerce-product-gallery,
    .elementor-element-c7ff197 .woocommerce-product-gallery__wrapper,
    .elementor-element-c7ff197 .woocommerce-product-gallery__image,
    .elementor-element-c7ff197 .woocommerce-product-gallery__image a {
        height: auto !important;
        min-height: auto !important;
    }

    .elementor-element-c7ff197 .woocommerce-product-gallery__image img.wp-post-image {
        height: auto !important;
        min-height: auto !important;
        object-fit: contain !important;
    }

    .elementor-element-746379c {
        gap: 10px !important;
        row-gap: 10px !important;
    }
}/* End custom CSS */