/** Shopify CDN: Minification failed

Line 104:15 Unexpected "{"
Line 104:24 Expected ":"
Line 105:1 Unexpected "{"
Line 105:15 Expected identifier but found whitespace
Line 105:18 Unexpected "{"
Line 105:27 Expected ":"
Line 105:49 Expected ":"
Line 105:63 Expected identifier but found whitespace
Line 105:66 Unexpected "{"
Line 105:75 Expected ":"
... and 56 more hidden warnings

**/
/* ================================================================
   BULLYSTICK.COM — custom.css
   Format  : one declaration block per line
   Sections: TEMP · SITEWIDE · HOME · AS-SEEN-ON · COLLECTIONS ·
             PRODUCT · SIZE GUIDE MODAL · COMPARISON · BADGES ·
             BOUGHT TOGETHER · SUBSCRIPTIONS · COUPONS · CART ·
             REWARDS · SIZE GUIDE PAGE · FOOTER · BUNDLES ·
             BLOG POST · FLOATING TOC · MOBILE · VARIANT SELECTOR
   ================================================================ */
/* ── TEMP ─────────────────────────────────────────────────────── */
.irregular-bully-sticks .product-price-strikethrough { display: none; }
/* ── SITEWIDE ─────────────────────────────────────────────────── */
a { color: #000; }
body { font-size: .9rem; }
.h1,
h1 { font-size: 2.5rem; }
.h2,
h2 { font-size: 2rem !important; }
.breadcrumb { --bs-breadcrumb-font-size: 0.7rem; }
.accordion { --bs-accordion-bg: inherit; }
.accordion-item .accordion-button { font-size: 1.3rem; }
.btn { --bs-btn-padding-y: 1rem; }
.btn-outline-secondary { color: var(--bs-primary); --bs-btn-border-color: var(--bs-primary); }
.btn-secondary { color: var(--bs-primary); }
.form-control { padding: 1rem .75rem; }
.form-check-input { width: 1.25em; height: 1.25em; }
.pt-sm-9 { padding-top: 1rem !important; }
.text-muted { color: var(--bs-dark-color) !important; opacity: 1; }
.expandable-content { max-height: 300px; overflow: hidden; transition: max-height 0.5s ease-out; }
.splide__pagination--mobile { display: none; }
#navSearch { display: none; }
#navbar-desktop .nav.justify-content-center { justify-content: left !important; }
#carousel-template--17070080098482__carousel_QRL9NQ.carousel { z-index: 0; }
.cart-icon .badge,
.jdgm-histogram__bar-content,
.jdgm-rev__icon::after { background-color: var(--bs-secondary) !important; color: var(--bs-primary); }
.jdgm-rev[data-verified-buyer="true"] .jdgm-rev__icon::after { color: var(--bs-primary) !important; }
/* Main price block: final price black always; compare shown to right, smaller + muted */
.product-price-compare+.product-price-final,
.product-item-price-compare+.product-item-price-final,
.product-price-unit-final { color: #1C1C1A; }
/* product-price-row: final FIRST in DOM (left), compare SECOND (right) — no order tricks needed */
.product-price-row .product-price-compare { font-size: 13px; color: #707170 !important; font-weight: 400; white-space: nowrap; }
/* Final price: black by default */
.product-price-row .product-price-final { color: #1C1C1A !important; }
/* ── REAL SALE: actual Shopify compare_at_price set → red price + salmon badge ── */
/* has-compare (synthetic bulk discount) does NOT turn price red — only real sales do */
.product-price.real-sale .product-price-row .product-price-final { color: #DC2626 !important; }
.product-price.real-sale .price-badge-sale { background: #FECACA !important; color: #7F1D1D !important; }
/* ── HIDE top price block when pack cards carry the pricing ── */
/* Quantity-buttons = bully sticks main product; size-buttons = other multi-pack products */
/* Single-variant or default-only products have neither → price block stays visible     */
.product-content:has(.Quantity-buttons) .product-price,
.product-content:has(.size-buttons .option-right-side) .product-price { display: none !important; }
.marquee ul li::before { content: none !important; }
/* Sections hidden / footer wave clip */
#shopify-section-template--17070080098482__icon_blocks_yxaXz7,
#shopify-section-template--17070080098482__featured_products_zxng9M,
#shopify-section-template--17070080098482__testimonials_ibyJey,
#shopify-section-template--16633815957682__html_pfTPyX,
#shopify-section-sections--16633815826610__footer,
#shopify-section-template--17070080098482__html_pfTPyX,
#shopify-section-template--17070080098482__animated_counters_zH4Gw7,
#shopify-section-template--17070080426162__17139397140c648aaa,
#shopify-section-template--17070080426162__apps_MQwbeN,
#shopify-section-template--17070080426162__apps_aqKmeT,
#shopify-section-template--17070080098482__carousel_LixYj3,
#shopify-section-template--17070080426162__richtext_k77rwX,
.shopify-section-group-footer-group { clip-path: polygon(0% 0%, 0% 0.43px, 1.42857% 2.64px, 2.85714% 2.43px, 4.28571% 1.26px, 5.71429% 1.33px, 7.14286% 1.4px, 8.57143% 2.35px, 10% 1.04px, 11.4286% 2.24px, 12.8571% 0.98px, 14.2857% 1.83px, 15.7143% 1.67px, 17.1429% 1.32px, 18.5714% 2.14px, 20% 2.98px, 21.4286% 1.11px, 22.8571% 1.86px, 24.2857% 0.48px, 25.7143% 1.87px, 27.1429% 2.65px, 28.5714% 1.2px, 30% 0.93px, 31.4286% 2.29px, 32.8571% 2.61px, 34.2857% 0.93px, 35.7143% 0.18px, 37.1429% 0.86px, 38.5714% 0.45px, 40% 2.21px, 41.4286% 1.62px, 42.8571% 2.72px, 44.2857% 0.9px, 45.7143% 1.41px, 47.1429% 0.27px, 48.5714% 2px, 50% 2.09px, 51.4286% 2.67px, 52.8571% 0.96px, 54.2857% 1.2px, 55.7143% 2.62px, 57.1429% 0.31px, 58.5714% 0.86px, 60% 0.14px, 61.4286% 2.5px, 62.8571% 1.23px, 64.2857% 1.48px, 65.7143% 2.57px, 67.1429% 1.8px, 68.5714% 0.18px, 70% 0.44px, 71.4286% 1.96px, 72.8571% 2.3px, 74.2857% 1.32px, 75.7143% 0.94px, 77.1429% 1.56px, 78.5714% 0.97px, 80% 1.53px, 81.4286% 2.14px, 82.8572% 0.01px, 84.2857% 0.97px, 85.7143% 1.33px, 87.1429% 1.2px, 88.5714% 2.33px, 90% 0.61px, 91.4286% 2.84px, 92.8571% 1.53px, 94.2857% 1.96px, 95.7143% 0.52px, 97.1429% 2.31px, 98.5714% 0.19px, 100% 0%, 100% 100%, 0% 100%); margin-top: -3px; }
/* ── HOME PAGE ────────────────────────────────────────────────── */
.page-type-index .card { border: none; }
#shopify-section-template--17070080098482__testimonials_ibyJey .card,
#shopify-section-sections--17070079770802__animated_counters_zH4Gw7 .card { --bs-card-bg: inherit; }
#shopify-section-template--17070080098482__testimonials_ibyJey .splide__slide .description,
#shopify-section-sections--17070079770802__animated_counters_zH4Gw7 .splide__slide .description { max-width: 560px; margin: 0 auto; }
#shopify-section-template--17070080098482__testimonials_ibyJey .splide__slide .title-wrapper,
#shopify-section-sections--17070079770802__animated_counters_zH4Gw7 .splide__slide .title-wrapper { width: 100%; text-align: center; }
#shopify-section-template--17070080098482__animated_counters_zH4Gw7 .bg-white,
#shopify-section-sections--17070079770802__animated_counters_zH4Gw7 .bg-white { --bs-bg-opacity: 0; background-color: inherit; }
#shopify-section-template--17070080098482__animated_counters_zH4Gw7 .text-body,
#shopify-section-sections--17070079770802__animated_counters_zH4Gw7 .text-body { color: #FFF !important; }
#shopify-section-template--17070080098482__animated_counters_zH4Gw7,
#shopify-section-sections--17070079770802__animated_counters_zH4Gw7 { position: relative; overflow: hidden; }
#shopify-section-template--17070080098482__animated_counters_zH4Gw7::before,
#shopify-section-sections--17070079770802__animated_counters_zH4Gw7::before { content: ""; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: linear-gradient(rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.7)), url('/cdn/shop/files/one-tree-planted-home-wide-block.jpg?v=1714434077'); background-size: cover; background-position: center; filter: blur(0.5px); z-index: 0; }
#animated-counters-template--17070080098482__animated_counters_zH4Gw7,
#animated-counters-sections--17070079770802__animated_counters_zH4Gw7 { position: relative; z-index: 1; }
/* ── AS SEEN ON ───────────────────────────────────────────────── */
#as-seen-on- { { section.id } }
 { --aso-pad-y: { { section.settings.pad_y } } px; --aso-pad-x: { { section.settings.pad_x } } px; --aso-gap: { { section.settings.gap } } px; --aso-bg: { { section.settings.bg } } ; --aso-maxw: { { section.settings.max_width } } px; --aso-page-size: { { section.settings.pagination_size } } px; --aso-page-gap:8px; --aso-page-color: { { section.settings.pagination_color } } ; --aso-page-active: { { section.settings.pagination_active_color } } ; --aso-page-opacity:0.35; --aso-page-active-opacity:1; background:var(--aso-bg); padding:var(--aso-pad-y) var(--aso-pad-x); }
#as-seen-on- { { section.id } }
.aso-container { max-width: min(1200px, 92vw); margin: 0 auto; }
#as-seen-on- { { section.id } }
.aso-head { text-align: center; margin-bottom: 14px; }
#as-seen-on- { { section.id } }
.aso-eyebrow { font-size: .8rem; letter-spacing: .12em; text-transform: uppercase; opacity: .7; margin: 0 0 4px; }
#as-seen-on- { { section.id } }
.aso-title { font-size: clamp(1rem, 1.2vw + .8rem, 1.375rem); margin: 0; }
#as-seen-on- { { section.id } }
.aso-track { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: var(--aso-gap); margin-top: 14px; }
#as-seen-on- { { section.id } }
.aso-item { flex: 0 0 auto; }
#as-seen-on- { { section.id } }
.aso-link { display: inline-flex; align-items: center; justify-content: center; text-decoration: none; outline-offset: 3px; }
#as-seen-on- { { section.id } }
.aso-img { display: block; max-width: var(--aso-maxw); width: auto; height: auto; opacity: .9; transition: opacity .2s ease, filter .2s ease, transform .2s ease; user-select: none; pointer-events: none; }
#as-seen-on- { { section.id } }
.aso-img.is-gray { filter: grayscale(100%) contrast(105%); opacity: .85; }
#as-seen-on- { { section.id } }
.aso-img.is-svg-file { object-fit: contain; width: auto; height: auto; }
#as-seen-on- { { section.id } }
.aso-svgwrap { display: inline-flex; align-items: center; justify-content: center; max-width: var(--aso-maxw); max-height: 100%; }
#as-seen-on- { { section.id } }
.aso-svgwrap svg { display: block; max-height: { { section.settings.logo_height } } px; height:auto; width:auto; }
#as-seen-on- { { section.id } }
.aso-link:hover .aso-img,
#as-seen-on- { { section.id } }
.aso-link:focus-visible .aso-img { filter: none; opacity: 1; transform: translateY(-1px); }
#as-seen-on- { { section.id } }
.aso-pagination { display: none; }
@media (max-width:720px) {
  .aso-track { flex-wrap: nowrap; overflow-x: auto; -webkit-overflow-scrolling: touch; scroll-snap-type: x mandatory; padding-bottom: 6px; justify-content: flex-start; }
  .aso-item { scroll-snap-align: center; }
  .aso-track::-webkit-scrollbar { display: none; }
  .aso-pagination { display: flex; justify-content: center; align-items: center; gap: var(--aso-page-gap); margin-top: 10px; }
  .aso-pagination .aso-page { border: 0; padding: 0; cursor: pointer; background: none; width: var(--aso-page-size); height: var(--aso-page-size); position: relative; }
  .aso-pagination[data-style="dots"] .aso-page::before { content: ""; position: absolute; inset: 0; border-radius: 999px; background: var(--aso-page-color); opacity: var(--aso-page-opacity); }
  .aso-pagination[data-style="dots"] .aso-page.is-active::before { background: var(--aso-page-active); opacity: var(--aso-page-active-opacity); transform: scale(1.08); }
  .aso-pagination[data-style="lines"] .aso-page { width: calc(var(--aso-page-size) * 2.2); height: calc(var(--aso-page-size) * 0.4); }
  .aso-pagination[data-style="lines"] .aso-page::before { content: ""; position: absolute; inset: 0; border-radius: 999px; background: var(--aso-page-color); opacity: var(--aso-page-opacity); }
  .aso-pagination[data-style="lines"] .aso-page.is-active::before { background: var(--aso-page-active); opacity: var(--aso-page-active-opacity); }
}
/* ── COLLECTIONS PAGE ─────────────────────────────────────────── */
.item-sold-out { opacity: 0.25; background-color: #FFF; }
.product-item-img:hover { opacity: 0.75; background-color: #FFF; }
.product-item-price { font-size: 14px; }
.page-type-collection .breadcrumbs-wrapper { margin-top: 1rem; }
.page-type-collection .product-item-title { font-size: 1.2rem !important; }
.page-type-collection .okeReviews[data-oke-container],
div.okeReviews { font-size: 11px; }
.collection-header { padding-top: 1rem !important; margin-bottom: 0; }
.collection-banner-inner { color: var(--bs-primary) !important; }
/* AG1 main price badge: same peach as card badges */
.img-badge-sale,
.product-content .product-price .price-badge-sale { background: #FDDCB1 !important; color: #000 !important; border-radius: 4px !important; font-size: 11px !important; font-weight: 500 !important; letter-spacing: normal !important; padding: 3px 8px !important; text-transform: none !important; vertical-align: middle !important; }
.plpAttributes { background-color: var(--bs-light); font-size: 11px; padding: 5px; }
.plpAttributesContainer { margin-top: 10px; }
#collection-utilities .btn { --bs-btn-padding-y: .5rem; }
#collection-utilities .btn-filters { border: none; margin: 10px 0 0; justify-content: left !important; --bs-btn-color: #000; }
#collection-utilities-inner { border-bottom: 1px solid var(--bs-border-color); border-radius: 0 !important; }
#sort-by-wrapper { padding: 10px 0; margin-left: auto; }
/* Facet widget */
.facet-widget { background-color: #f9fafb; border: 1px solid #e5e7eb; border-radius: 1rem; padding: 1.75rem 1.5rem; box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05); transition: background-color .2s ease; font-size: 1.05rem; }
.facet-widget:hover { background-color: #f8f9fa; }
.facet-widget h3 { font-size: 1.25rem; font-weight: 700; margin-bottom: 1rem; color: #111827; }
.facet-row { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; }
.facet-pair { display: flex; align-items: center; gap: .5rem; flex: 1 1 320px; min-width: 260px; }
.facet-pair:last-child { flex: 1 1 420px; }
.filter-select { --fs-radius: 9999px; --fs-border: #e6e8ee; --fs-border-hover: #cfd5df; --fs-bg: #ffffff; --fs-text: #111827; --fs-muted: #6b7280; --fs-primary: #2f6fe4; border-radius: var(--fs-radius); border-color: var(--fs-border); background-color: var(--fs-bg); color: var(--fs-text); height: 52px; padding: .75rem 2.5rem .75rem 1rem; font-size: 1rem; box-shadow: 0 1px 2px rgba(16, 24, 40, .06); background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 24 24' stroke='%23343a40' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>"); background-repeat: no-repeat; background-position: right .85rem center; background-size: 16px 16px; appearance: none; width: 100%; }
.filter-select:hover { border-color: var(--fs-border-hover); }
.filter-select:focus { border-color: var(--fs-primary); box-shadow: 0 0 0 .25rem rgba(47, 111, 228, .18); outline: none; }
.filter-select.is-empty { color: var(--fs-muted); }
.filter-chips { margin-top: 1rem; display: flex; flex-wrap: wrap; gap: .5rem; }
.filter-chip { display: inline-flex; align-items: center; gap: .5rem; padding: .45rem .85rem; border-radius: 9999px; background: #2f6fe4; color: #fff; font-weight: 600; font-size: .95rem; text-decoration: none; box-shadow: 0 1px 2px rgba(0, 0, 0, .08); }
.filter-chip:hover { color: #fff; opacity: .95; }
.filter-chip .chip-x { line-height: 1; font-size: 1.05rem; }
@media (max-width:576px) {
  .facet-widget { padding: 1.1rem; border-radius: .75rem; }
  .facet-widget h3 { margin-bottom: .65rem; }
  .facet-row { gap: .35rem; }
  .facet-pair { flex: 1 1 100%; min-width: 0; }
  .filter-select { height: 44px; font-size: .95rem; padding: .5rem 2rem .5rem .9rem; background-position: right .65rem center; }
  .filter-chips { margin-top: .6rem; gap: .35rem; }
  .filter-chip { padding: .35rem .65rem; font-size: .9rem; }
  .collection-banner-inner { min-height: 400px; }
}
/* ── PRODUCT PAGE ─────────────────────────────────────────────── */
.p-2 { width: 100%; }
.page-type-product h1 { font-size: 2rem !important; }
.page-type-product .jdgm-widget { padding-left: 0 !important; }
.above-title-cat-link { margin: 0; }
.above-title-cat-link a { text-decoration: none; }
.product-block-testimonial { margin-right: 5%; }
.pdp-testimonial-under-gallery { margin-top: 1.5rem !important; }
#product-content .jdgm-prev-badge__text::after { content: " from happy pups"; }
#pdp-trust-badges .mb-3 { margin-bottom: 20px !important; }
/* Viz con */
.product_viz_con_main .product_viz_con { padding: 15px 20px; background: #f8f8f8; text-align: center; }
.product_viz_con .vizImage { display: block; margin-bottom: 20px !important; }
.product_viz_con_main .product_viz_con p { margin-bottom: 5px; }
.product_viz_con .col-6.col-lg-4 { margin-bottom: 10px; }
.product_viz_con p { word-break: break-word; line-height: 16px; font-size: 0.8rem; }
.vizIcon { margin-bottom: 10px; }
/* Variant / price layout */
.option-right-side { float: right; width: 58%; text-align: right; font-size: 16px; font-weight: 600; margin-left: 5px; }
.price-unit-price { font-size: 0.7rem; font-weight: normal; }
.price-left-item { float: left; }
.price-right-item { float: right; min-height: 48px; }
.savingsPer { margin-top: 10px; }
.variantPack { float: left; }
.Length-buttons .variantPack,
.Thickness-buttons .variantPack { width: 100% !important; }
.variantPackDesc { float: left; font-size: .7rem; font-weight: 400; line-height: 14px; }
.unit_savings { max-width: none; line-height: normal; font-size: 10.5px; background: #F0EBE0; margin-right: 4px; padding: 3px 9px; color: #3D2E00; font-weight: 700; border-radius: 100px; letter-spacing: 0.03em; }
.freeShipVariantLabel { font-size: .8rem; color: #999; font-weight: normal; }
.option-selected { font-weight: 400; }
.product-price-compare { color: #707170 !important; font-weight: normal; }
.product-price-strikethrough { text-decoration: line-through; font-weight: 400; font-size: .9rem; opacity: .7; }
.disabled .variantPack { text-decoration: line-through; }
/* Labels / badges */
.label-overlay-text { position: absolute; left: 0; right: 0; margin: auto; top: -12px; width: 150px; padding: 2px 9px; font-size: 10px; text-align: center; line-height: 1.4; border: none; color: #000; font-weight: 700; border-radius: 100px; text-transform: uppercase; letter-spacing: 0.05em; }
.label-overlay-best-value { background-color: #f0ece3; color: #313638; }
.label-overlay-popular { background-color: #F0EBE0; }
.label-overlay-thickness-popular { background-color: var(--bs-primary); }
.label-overlay-customers-pick { background-color: #FEF4C0; color: #3D2800; }
.label-overlay-text-thickness { position: absolute; left: -3px; right: 0; margin: auto; top: -19px; width: 106%; padding: 0 13px; font-size: 10px; text-align: center; line-height: 23px; border: none; color: #fff; font-weight: 700; border-top-left-radius: 5px; border-top-right-radius: 5px; text-transform: uppercase; }
/* Size buttons */
.shopify-product-form ul.size-buttons input+label { width: 100%; position: relative; padding: 1rem 0.75rem; border: 2px solid #d1d1d1; font-weight: 600; font-size: .9rem !important; }
.shopify-product-form ul.size-buttons input+label:hover { width: 100%; background-color: #efefef60; border: 2.5px solid var(--bs-primary); }
.shopify-product-form ul.size-buttons input:checked+label { background-color: #F3F3F3; color: #000; border: 2.5px solid var(--bs-primary); }
.shopify-product-form ul.size-buttons.Size-buttons li.penable:last-child .label-overlay-best-value { display: block; }
.shopify-product-form ul.size-buttons.Size-buttons li.p-2:has(label.hide) { display: none; }
.shopify-product-form ul.color-swatches input+label { border-radius: 5px !important; }
.size-buttons-title { margin-bottom: 10px !important; }
.size-buttons li { height: 75px; margin-bottom: 25px; }
.Length-buttons .p-2 { width: 50%; }
.Thickness-buttons .p-2 { width: 25%; }
.Thickness-buttons li { margin-bottom: 5px !important; }
#bullyStickThickness-details,
#bullyStickWeight-details { display: inline; }
li.option-thickness-monster { width: 100% !important; }
.product\.bully-sticks-combined-v2.page-type-product.\36-bully-sticks .p-2.penable.option-thickness-monster { width: inherit !important; }
.product\.bully-sticks-combined-v2.page-type-product.\36-bully-sticks .Thickness-buttons .p-2 { width: 20%; }
/* ATC button */
.btn-atc.btn.btn-primary,
.btn-checkout,
.rebuy-cart__checkout-button { background-color: var(--bs-secondary) !important; color: var(--bs-primary); font-weight: bold; border-color: var(--bs-secondary) !important; box-shadow: 3px 4px 0 #000000 !important; border-radius: 30px !important; border: 1px solid #000 !important; }
.btn-atc.btn.btn-primary:hover,
.btn-checkout:hover { background-color: #FDCD31 !important; color: var(--bs-primary); }
.btn-atc.btn.btn-secondary { background-color: var(--bs-light) !important; color: var(--bs-primary); font-weight: bold; border-color: var(--bs-primary) !important; }
.shopify-payment-button .shopify-payment-button__more-options { display: none; }
/* Reviews */
.jdgm-sort-dropdown,
.jdgm-rev__authorm,
.jdgm-sort-dropdown-wrapper .jdgm-sort-dropdown-arrow { color: var(--bs-dark) !important; }
.jdgm-rev__cf-ans__title { color: #000 !important; }
.default_tooltip { margin-bottom: 10px; }
/* Misc PDP */
.pdpTransitNote { display: flex; justify-content: center; align-items: center; gap: 10px; font-size: .8rem; }
.pdpTransitNote span { padding: 0 10px; }
.product-specifications-table td { padding: 10px; width: 320px; font-size: .9rem; }
.product-specifications-table .spec-label { width: 150px; }
.product-content .product-price .price-badge-sold-out { color: #000; }
.marquee ul li::before { content: "✔"; display: inline-block; margin-right: 8px; }
/* Product block text checkmarks */
#product-content .product-block-text ul { list-style: none; margin: 0; padding: 0; }
#product-content .product-block-text li { position: relative; padding-left: 28px; margin: 0; }
#product-content .product-block-text li::before { content: ""; position: absolute; left: 0; top: 0.25em; width: 15px; height: 15px; background-repeat: no-repeat; background-size: contain; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='12' fill='%23313638'/%3E%3Cpath d='M7 12.5l3.2 3.2L17 9' fill='none' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
/* ── SIZE GUIDE MODAL ─────────────────────────────────────────── */
.size-guide-link { appearance: none; background: none; border: 0; padding: 0; cursor: pointer; text-decoration: underline; font-weight: 600; font-size: 14px; line-height: 1.2; }
.size-guide-modal { border: 0; padding: 0; width: min(760px, calc(100% - 32px)); border-radius: 14px; }
.size-guide-modal::backdrop { background: rgba(0, 0, 0, .55); }
.size-guide-modal__inner { background: #fff; border-radius: 14px; overflow: hidden; }
.size-guide-modal__header { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 16px 18px; border-bottom: 1px solid rgba(0, 0, 0, .08); }
.size-guide-modal__title { margin: 0; font-size: 18px; line-height: 1.2; }
.size-guide-modal__close { appearance: none; border: 0; background: rgba(0, 0, 0, .06); border-radius: 10px; width: 38px; height: 38px; cursor: pointer; font-size: 18px; }
.size-guide-modal__body { padding: 16px 18px 20px; }
.size-guide-modal__media img { width: 100%; height: auto; display: block; border-radius: 12px; }
.sg__html { max-width: 100%; }
/* ── COMPARISON SLIDER ────────────────────────────────────────── */
.comparison { overflow: hidden; }
.comparison .splide__track { overflow: visible; }
.comparison .splide__slide { transition: all 0.2s ease-out; }
.comparison .splide__slide.is-visible { opacity: 1; }
.comparison .splide__arrow--prev { left: 0; transform: none; }
.comparison .splide__arrow--next { right: 0; transform: rotate(180deg); }
.comparison .splide__pagination { position: relative; margin-top: 1.25rem; }
.comparison .splide__pagination__page { background-color: rgba(var(--bs-body-color-rgb), 0.25); opacity: 1; transition: all 0.2s ease-out; }
.comparison .splide__pagination__page:hover,
.comparison .splide__pagination__page:focus { background-color: rgba(var(--bs-body-color-rgb), 0.5); }
.comparison .splide__pagination__page.is-active { background-color: var(--bs-body-color); }
.comparison.text-white .splide__pagination__page { filter: invert(); }
.comparison .splide__pagination--mobile { margin-top: 1rem; }
@media (min-width:768px) {
  .comparison .splide__pagination--mobile { display: none; }
}
/* Comparison Facebook style */
.comparison-fb-style { --fb-color-rgb: 66, 103, 178; }
.comparison-fb-style .card { border-color: rgba(var(--fb-color-rgb), 1); background-color: rgba(var(--fb-color-rgb), 0.1); }
.comparison-fb-style .card .btn { display: inline-flex; align-items: center; color: rgba(var(--fb-color-rgb), 1); border: 1px solid rgba(var(--fb-color-rgb), 1); background: white; }
.comparison-fb-style .card .btn svg { transition: all 0.2s ease-out; }
.comparison-fb-style .card .btn:hover svg,
.comparison-fb-style .card .btn:focus svg { transform: scale(1.15); }
.comparison-fb-style .card .btn:focus-visible { box-shadow: 0 0 0 0.25rem rgba(var(--fb-color-rgb), 0.25); }
.comparison-fb-style .splide__arrow { background-color: rgba(var(--fb-color-rgb), 0.75); }
.comparison-fb-style .splide__arrow:hover,
.comparison-fb-style .splide__arrow:focus { background-color: rgba(var(--fb-color-rgb), 1); }
.comparison-fb-style .splide__pagination__page { background-color: rgba(var(--fb-color-rgb), 0.4); }
.comparison-fb-style .splide__pagination__page.is-active { background-color: rgba(var(--fb-color-rgb), 1); }
.comparison-fb-style .btn-view-all { background-color: rgba(var(--fb-color-rgb), 1); color: white; border-color: rgba(var(--fb-color-rgb), 1); padding-left: 1.5rem; padding-right: 1.5rem; box-shadow: none; }
.comparison-fb-style .btn-view-all:hover,
.comparison-fb-style .btn-view-all:focus { background-color: rgba(var(--fb-color-rgb), 0.75); }
.comparison-fb-style .btn-view-all:focus-visible { box-shadow: 0 0 0 0.25rem rgba(var(--fb-color-rgb), 0.25); }
/* ── BADGES ───────────────────────────────────────────────────── */
.product-badge { pointer-events: none; }
.product-badge .badge { pointer-events: auto; }
.product-badge .badge--html { display: inline-flex; align-items: center; gap: .4rem; padding: .25rem .5rem; border-radius: 6px; font-size: .75rem; font-weight: normal; line-height: 1; white-space: nowrap; }
.page-type-product .product-badge .badge--html { font-size: .9rem; padding: .5rem .75rem; }
.product-badge .badge__svg-wrapper { display: inline-flex; align-items: center; justify-content: center; width: 1em; height: 1em; flex-shrink: 0; line-height: 0; }
.product-badge .badge__svg-wrapper svg { display: block; width: 100%; height: 100%; fill: currentColor; vertical-align: middle; }
.product-badge .badge__svg svg { width: 1em; height: 1em; display: inline-block; vertical-align: -0.125em; fill: currentColor !important; stroke: currentColor !important; }
.product-badge .badge__svg svg [fill],
.product-badge .badge__svg svg [stroke] { fill: currentColor !important; stroke: currentColor !important; }
.product-badge .badge__label { line-height: 1; }
.product-badge .badge__image { width: 120px; height: auto; border-radius: 6px; }
.img-badge-new-product { background-color: var(--bs-danger-darken); }
.product-item .img-badge-new-product { position: absolute; top: .75rem; left: .75rem; z-index: 1; }
.img-badge-sold-out { background-color: var(--bs-dark); }
@media (max-width:767px) {
  .product-badge .badge__image { width: 80px; }
  .page-type-product .product-badge .badge--html { font-size: .8rem; padding: .25rem .5rem; }
  .product-badge--pdp { top: 2px !important; left: 2px !important; }
}
/* ── BOUGHT TOGETHER ──────────────────────────────────────────── */
#product-bought-together { padding: 1rem 1rem 2rem; margin-top: 50px !important; }
#product-bought-together h2 { text-align: left !important; }
#product-bought-together h3 { font-size: .9rem; font-weight: normal; }
#product-bought-together .pbt-addToCart { width: 25%; margin-top: 30px; }
#product-bought-together .product-item { text-align: center; transition: all .2s ease-out; }
#product-bought-together .product-item:not(:last-child) .product-item-img-wrapper::after { content: "+"; position: absolute; bottom: -1.8rem; left: 50%; transform: translateX(-50%); font-size: 1.25rem; font-weight: 300; }
#product-bought-together .product-item:nth-last-child(-n+2) .product-item-img-wrapper::after { display: none !important; }
#addon-container { position: relative; margin: 1rem 0; }
#bought-together-title { border-bottom: 1px solid var(--bs-border-color); padding: 0 0 .5rem; margin: 0 0 .25rem; }
/* Carousel */
.bought-together-title { font-size: 14px !important; font-weight: 600; margin-bottom: 12px; }
.bought-together-carousel { overflow: hidden; position: relative; }
.bought-together-list { display: flex; list-style: none; padding: 0; margin: 0; transition: transform 0.3s ease; }
.bought-together-item { min-width: 220px; flex-shrink: 0; display: flex; align-items: center; border: 1px solid #ddd; border-radius: 6px; padding: 10px; background: #fff; width: 100%; }
.bought-together-img { margin-right: 12px; border-radius: 6px; width: 90px; height: 90px; object-fit: cover; }
.bt-title { font-weight: 500; }
.bt-price { font-size: 14px; }
.bt-price s { color: #999; margin-right: 5px; }
.bt-price .sale { color: #d00; font-weight: 600; }
.bought-together-info { display: flex; justify-content: space-between; align-items: center; flex: 1; }
.info-block { display: flex; flex-direction: column; gap: 8px; }
.inner-info-block { display: flex; align-items: center; gap: 2rem; }
.bt-variant-select { width: 120px; }
/* Toggle switch */
.switch { position: relative; display: inline-block; width: 50px; height: 24px; }
.switch input { display: none; }
.slider { position: absolute; cursor: pointer; top: 0; left: 0; right: 0; bottom: 0; background-color: #ccc; transition: .4s; border-radius: 34px; }
.slider:before { position: absolute; content: ""; height: 18px; width: 18px; left: 3px; bottom: 3px; background-color: white; transition: .4s; border-radius: 50%; }
input:checked+.slider { background-color: #4CAF50; }
input:checked+.slider:before { transform: translateX(22px); }
/* Swiper */
.swiper-button-next,
.swiper-button-prev { color: #333; bottom: 5px; top: unset; align-items: end; }
.swiper-button-next:after,
.swiper-button-prev:after { font-size: 20px !important; }
.swiper-pagination { bottom: 5px !important; }
.swiper-pagination-bullet { background: #aaa; opacity: 1; }
.swiper-pagination-bullet-active { background: #333; }
@media (max-width:768px) {
  #product-bought-together { padding: 1rem .5rem 1.5rem; }
  #product-bought-together .product-item:not(:last-child) .product-item-img-wrapper::after { bottom: -2.5rem; left: 40%; }
  .bought-together-img { width: 60px; height: 60px; }
  .bt-variant-select { width: 80px; }
  .swiper-button-next:after, .swiper-button-prev:after { font-size: 16px !important; }
}
@media (min-width:1200px) {
  #product-bought-together .product-item .product-item-img-wrapper::after { display: block !important; }
}
/* ── SUBSCRIPTIONS ────────────────────────────────────────────── */
.appstle-loyalty-discount span,
.appstle_subscription_radio_wrapper .appstle_subscription_amount { color: #DB1E25 !important; }
/* ── COUPONS ──────────────────────────────────────────────────── */
h2.offerHeader { font-size: 24px; margin-bottom: 2px !important; text-align: left; }
.offerCat { font-weight: bold; text-align: left; }
.offerTitle { color: #c70025; font-size: 24px; font-weight: bold; margin-bottom: 10px; text-align: left; }
.offerDesc { margin-bottom: 10px; min-height: 35px; text-align: left; }
.coupon-border { border: 3px dashed #ccc; padding: 15px; }
/* ── CART ─────────────────────────────────────────────────────── */
select#shipping-rates-modal-province option[value="American Samoa"],
select#shipping-rates-modal-province option[value="Armed Forces Americas"],
select#shipping-rates-modal-province option[value="Armed Forces Europe"],
select#shipping-rates-modal-province option[value="Armed Forces Pacific"],
select#shipping-rates-modal-province option[value="Federated States of Micronesia"],
select#shipping-rates-modal-province option[value="Guam"],
select#shipping-rates-modal-province option[value="Marshall Islands"],
select#shipping-rates-modal-province option[value="Northern Mariana Islands"],
select#shipping-rates-modal-province option[value="Palau"],
select#shipping-rates-modal-province option[value="Puerto Rico"],
select#shipping-rates-modal-province option[value="Virgin Islands"] { display: none; }
#cart .payment-icons-wrapper { margin-top: 20px; }
/* ── REWARDS PAGE ─────────────────────────────────────────────── */
#shopify-section-template--17070080426162__17139397140c648aaa,
#shopify-section-template--17070080426162__apps_aqKmeT { background-color: var(--bs-light) !important; }
/* ── SIZE GUIDE PAGE ──────────────────────────────────────────── */
#html-section-template--17008410493106__html_3U6R3k .accordion-item { border-bottom: 1px solid var(--bs-light); }
#html-section-template--17008410493106__html_3U6R3k .small-subtitle { font-weight: bold; text-transform: uppercase; padding-bottom: 10px; display: block; }
#html-section-template--17008410493106__html_3U6R3k .headerRow { margin-bottom: 20px; }
#html-section-template--17008410493106__html_3U6R3k .ox-toggle-title { margin-bottom: 10px; padding: 10px; background-color: var(--bs-light); }
/* ── FOOTER ───────────────────────────────────────────────────── */
#footer ul { padding-left: 0; }
#footer li { font-size: 0.9rem; list-style-type: none; margin-bottom: 2px; }
#footer ul>li { margin: 0 0 4px; }
#footer a { text-decoration: none; color: #000; }
#footer-copyright .payment-icons,
#footer-copyright .copyright,
#footer-copyright hr { margin: 10px 0; }
#footer-copyright .social { margin: 30px 0; }
#___ratingbadge_0 iframe { height: 60px !important; }
/* ── BUNDLES ──────────────────────────────────────────────────── */
.new-chewer-bundle .option-right-side { display: none; }
.new-chewer-bundle .size-buttons li { height: 40px !important; }
.new-chewer-bundle .p-2 { width: 50% !important; }
#in-the-kit-section .card { flex-direction: row; }
#in-the-kit-section .img-wrapper { flex: 0 0 100px; text-align: center; }
#in-the-kit-section .img-wrapper img { width: 100%; height: auto; }
#in-the-kit-section .card-body { flex: 1; display: flex; flex-direction: column; justify-content: center; }
@media (max-width:767.98px) {
  #in-the-kit-section .card { flex-direction: row; text-align: left; }
  #in-the-kit-section .img-wrapper { width: 100px; }
  #in-the-kit-section .card-body { text-align: left; }
  .plpAttributesContainer { display: inline-flex; flex-direction: column; align-items: flex-start; }
  .plpAttributesContainer .plpAttributes { display: inline-block; margin-bottom: 4px; }
}
/* ── BLOG POST ────────────────────────────────────────────────── */
.blog-post-container { max-width: 1200px; margin: 0 auto; padding: 40px 20px; background-color: #ffffff; line-height: 1.6; }
.blog-post-container h1 { font-size: 2.5rem; color: #313638; margin-bottom: 1.5rem; line-height: 1.2; }
.blog-post-container h2 { font-size: 2rem; color: #313638; margin-top: 2.5rem; margin-bottom: 1.25rem; padding-top: 1rem; border-top: 3px solid #FBDA31; }
.blog-post-container h3 { font-size: 1.5rem; color: #313638; margin-top: 2rem; margin-bottom: 1rem; }
.blog-post-container h4 { font-size: 1.25rem; color: #313638; margin-top: 1.5rem; margin-bottom: 0.75rem; }
.blog-post-container p { margin-bottom: 1.25rem; color: #313638; }
.blog-post-container a { color: #313638; text-decoration: underline; }
.blog-post-container ul,
.blog-post-container ol { margin-bottom: 1.5rem; padding-left: 1.5rem; }
.blog-post-container li { margin-bottom: 0.5rem; }
.blog-post-container strong { font-weight: 600; }
.blog-post-container .intro-section { font-size: 1.1rem; margin-bottom: 2rem; }
.blog-post-container .content-section { margin-bottom: 3rem; }
.blog-post-container .jump-nav { background-color: #f8f9fa; padding: 1rem 1.25rem; border-radius: 4px; margin: 2rem 0; border-left: 4px solid #198754; }
.blog-post-container .jump-nav p { margin-bottom: 0.5rem; font-weight: 600; color: #313638; font-size: 0.95rem; }
.blog-post-container .jump-nav ul { list-style: none; padding-left: 0; margin-bottom: 0; }
.blog-post-container .jump-nav li { margin-bottom: 0.35rem; }
.blog-post-container .jump-nav li:last-child { margin-bottom: 0; }
.blog-post-container .jump-nav a { color: #313638; text-decoration: none; display: flex; align-items: center; padding: 0.25rem 0.5rem; border-radius: 3px; transition: all 0.2s ease; font-size: 0.95rem; }
.blog-post-container .jump-nav a:hover { background-color: #e9ecef; color: #198754; padding-left: 0.75rem; }
.blog-post-container .jump-nav a::before { content: "→"; color: #198754; font-weight: bold; margin-right: 0.5rem; flex-shrink: 0; font-size: 0.9rem; }
.blog-post-container .cta-button { display: inline-block; background-color: #FBDA31; color: #313638; padding: 12px 30px; border-radius: 30px !important; border: 1px solid #000 !important; box-shadow: 3px 4px 0 #000000 !important; text-decoration: none; font-weight: 600; transition: transform 0.2s; }
.blog-post-container .cta-button:hover { transform: translateY(-2px); color: #313638; }
.blog-post-container .callout { background-color: #f8f9fa; border-left: 5px solid #0DCAF0; padding: 1.5rem; margin: 2rem 0; border-radius: 4px; }
.blog-post-container .callout h4 { color: #0DCAF0; margin-top: 0; }
.blog-post-container .callout-warning { border-left-color: #E2572F; }
.blog-post-container .callout-warning h4 { color: #E2572F; }
.blog-post-container .callout-success { border-left-color: #198754; }
.blog-post-container .callout-success h4 { color: #198754; }
.blog-post-container .pros-cons-container { margin: 2rem 0; }
.blog-post-container .pros-box { background-color: #f8f9fa; padding: 1.5rem; border-radius: 4px; border-left: 5px solid #198754; height: 100%; }
.blog-post-container .pros-box h4 { color: #198754; margin-top: 0; }
.blog-post-container .cons-box { background-color: #f8f9fa; padding: 1.5rem; border-radius: 4px; border-left: 5px solid #E2572F; height: 100%; }
.blog-post-container .cons-box h4 { color: #E2572F; margin-top: 0; }
.blog-post-container .pros-box ul,
.blog-post-container .cons-box ul { margin-bottom: 0; }
.blog-post-container .badge { display: inline-block; padding: 0.35em 0.65em; font-size: 0.875rem; font-weight: 600; border-radius: 4px; margin-left: 0.5rem; white-space: nowrap; vertical-align: middle; }
.blog-post-container .badge-success { background-color: #198754; color: white; }
.blog-post-container .badge-danger { background-color: #E2572F; color: white; }
.blog-post-container .badge-info { background-color: #0DCAF0; color: #ffffff; }
.blog-post-container .badge-warning { background-color: #FBDA31; color: #313638; }
.blog-post-container table { width: 100%; margin: 2rem 0; border-collapse: collapse; }
.blog-post-container table th { background-color: #313638; color: white; padding: 12px; text-align: left; font-weight: 600; }
.blog-post-container table td { padding: 12px; border-bottom: 1px solid #dee2e6; }
.blog-post-container table tr:nth-child(even) { background-color: #f8f9fa; }
.blog-post-container .row { display: flex; flex-wrap: wrap; margin-right: -15px; margin-left: -15px; }
.blog-post-container .col-md-6 { flex: 0 0 50%; max-width: 50%; padding-right: 15px; padding-left: 15px; }
.blog-post-container .img-fluid { max-width: 100%; height: auto; }
@media (max-width:768px) {
  .blog-post-container { padding: 20px 15px; }
  .blog-post-container h1 { font-size: 1.75rem; }
  .blog-post-container h2 { font-size: 1.35rem; }
  .blog-post-container h3 { font-size: 1.25rem; }
  .blog-post-container .pros-cons-container .col-md-6:first-child { margin-bottom: 1rem; }
  .blog-post-container .col-md-6 { flex: 0 0 100%; max-width: 100%; }
}
@media (max-width:576px) {
  .blog-post-container h1 { font-size: 1.5rem; }
  .blog-post-container h2 { font-size: 1.25rem; }
  .blog-post-container .cta-button { display: block; width: 100%; text-align: center; }
}
/* ── FLOATING TOC BUBBLE ──────────────────────────────────────── */
.floating-toc-bubble { position: fixed; bottom: 30px; right: 30px; width: 70px; height: 70px; background: #ffffff; border-radius: 50%; box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15); cursor: pointer; z-index: 9999; opacity: 0; transform: scale(0); transition: all 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55); display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 8px; }
.floating-toc-bubble.visible { opacity: 1; transform: scale(1); }
.floating-toc-bubble:hover { transform: scale(1.05); box-shadow: 0 6px 20px rgba(0, 0, 0, 0.2); }
.progress-ring { position: absolute; top: -4px; left: -4px; width: 78px; height: 78px; transform: rotate(-90deg); display: block; overflow: visible; }
.progress-ring-circle { fill: none; stroke: #e0e0e0; stroke-width: 4; }
.progress-ring-progress { fill: none; stroke: url(#progressGradient); stroke-width: 4; stroke-linecap: round; transition: stroke-dashoffset 0.3s ease; }
.bubble-content { position: relative; z-index: 1; text-align: center; pointer-events: none; }
.bubble-section-num { font-size: 0.75rem; font-weight: 700; color: #313638; line-height: 1; margin-bottom: 2px; }
.bubble-dots { font-size: 0.5rem; color: #FBDA31; line-height: 1; margin-bottom: 2px; letter-spacing: 1px; }
.bubble-percentage { font-size: 0.7rem; font-weight: 600; color: #666; line-height: 1; }
/* TOC overlay */
.toc-overlay { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0, 0, 0, 0.5); backdrop-filter: blur(4px); z-index: 10000; display: none; align-items: center; justify-content: center; opacity: 0; transition: opacity 0.3s ease; }
.toc-overlay.active { display: flex; opacity: 1; }
.toc-panel { background: #ffffff; border-radius: 12px; box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2); width: 90vw; max-width: 450px; max-height: 80vh; display: flex; flex-direction: column; transform: scale(0.8); opacity: 0; transition: all 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55); }
.toc-overlay.active .toc-panel { transform: scale(1); opacity: 1; }
/* TOC header */
.toc-panel-header { padding: 1.5rem; border-bottom: 3px solid #FBDA31; display: flex; align-items: center; justify-content: space-between; flex-shrink: 0; }
.toc-panel-title { font-size: 1.25rem; font-weight: 700; color: #313638; margin: 0; }
.toc-close-btn { background: none; border: none; font-size: 1.5rem; color: #666; cursor: pointer; width: 32px; height: 32px; display: flex; align-items: center; justify-content: center; border-radius: 50%; transition: all 0.2s; }
.toc-close-btn:hover { background: #f8f9fa; color: #313638; }
/* TOC list */
.toc-panel-list { flex: 1; overflow-y: auto; padding: 1rem 0; }
.toc-panel-list ul { list-style: none; padding: 0; margin: 0; }
.toc-panel-list li { margin: 0; }
.toc-panel-list a { display: flex; align-items: center; padding: 0.875rem 1.5rem; color: #666; text-decoration: none; font-size: 0.9375rem; transition: all 0.2s; border-left: 3px solid transparent; }
.toc-panel-list a:hover { background: #f8f9fa; color: #313638; }
.toc-panel-list a.completed { color: #999; }
.toc-panel-list a.active { background: #fff9e6; color: #313638; font-weight: 600; border-left-color: #FBDA31; }
.toc-section-icon { width: 20px; height: 20px; margin-right: 0.75rem; flex-shrink: 0; display: flex; align-items: center; justify-content: center; }
.toc-section-icon.completed { color: #198754; }
.toc-section-icon.active { color: #FBDA31; }
.toc-section-icon.upcoming { color: #ccc; }
/* TOC footer */
.toc-panel-footer { padding: 1rem 1.5rem; border-top: 1px solid #e0e0e0; flex-shrink: 0; }
.toc-progress-bar-container { background: #e0e0e0; height: 6px; border-radius: 3px; overflow: hidden; margin-bottom: 0.5rem; }
.toc-progress-bar { height: 100%; background: linear-gradient(90deg, #FBDA31 0%, #198754 100%); width: 0%; transition: width 0.3s ease; border-radius: 3px; }
.toc-progress-text { font-size: 0.8125rem; color: #666; text-align: center; }
/* Scrollbar */
.toc-panel-list::-webkit-scrollbar { width: 6px; }
.toc-panel-list::-webkit-scrollbar-track { background: #f8f9fa; }
.toc-panel-list::-webkit-scrollbar-thumb { background: #ccc; border-radius: 3px; }
.toc-panel-list::-webkit-scrollbar-thumb:hover { background: #999; }
/* TOC responsive */
@media (max-width:768px) {
  .floating-toc-bubble { width: 64px; height: 64px; bottom: 20px; right: 20px; }
  .progress-ring { width: 72px; height: 72px; }
}
@media (max-width:576px) {
  .floating-toc-bubble { width: 56px; height: 56px; bottom: 16px; right: 16px; padding: 6px; }
  .progress-ring { width: 64px; height: 64px; }
  .bubble-section-num { font-size: 0.65rem; margin-bottom: 1px; }
  .bubble-dots { font-size: 0.45rem; margin-bottom: 1px; }
  .bubble-percentage { font-size: 0.6rem; }
  .toc-panel { max-width: 95vw; max-height: 85vh; border-radius: 8px; }
  .toc-panel-header { padding: 1rem; }
  .toc-panel-title { font-size: 1.1rem; }
  .toc-panel-list a { padding: 0.75rem 1rem; font-size: 0.875rem; }
}
/* ── MOBILE ───────────────────────────────────────────────────── */
@media (max-width:399px) {
  .Thickness-buttons .p-2 { width: 50%; }
  .Thickness-buttons li { margin-bottom: 5px; }
}
@media (max-width:575px) {
  .page-type-product h1 { font-size: 1.5rem !important; }
  .page-type-product h2 { font-size: 1.3rem !important; }
  .p-2 { width: 100%; }
  .desktop-only { display: none; }
  .variantPackDesc { font-size: .55rem; font-weight: 500; }
  .option-right-side { width: 61%; }
  .Thickness-buttons .p-2 { padding: .2rem !important; }
  #product-gallery { padding: 0; }
  #collection-utilities { position: sticky; top: 63px; z-index: 99; }
  #shopify-block-okendo_star_rating_xz4Vpc { position: absolute; top: 205px; }
  .okeReviews[data-oke-container], div.okeReviews { font-size: 12px !important; }
  .oke-stars-background svg, .oke-stars-foreground svg { height: 14px; }
  .mobileStickyATC { width: 100%; margin-left: 0px !important; }
  .mobileStickyATC .btn-md { --bs-btn-padding-y: 1rem; }
  .mobileStickyATC .dropdown-item { font-size: 1.1rem !important; padding: 10px !important; }
  #sticky-atc .dropdown-menu { left: 0 !important; }
  .product-buy-buttons-inner { position: fixed; bottom: 0; left: 0; background: #fff; width: 100%; box-shadow: rgb(0 0 0 / 15%) 0px 15px 25px, rgb(0 0 0 / 5%) 0px 5px 10px; z-index: 999; padding: 10px; display: none; }
  .testimonials .splide__pagination, .testimonials .splide__arrow { display: inline !important; }
  #splide-comparison-mobile { font-size: 0.8rem; }
  #splide-comparison-mobile .splide__arrow { background-color: #333; color: #fff; border: none; padding: 10px; border-radius: 50%; opacity: 0.8; transition: opacity 0.3s ease-in-out; top: 94%; }
  #splide-comparison-mobile .splide__arrow:hover { opacity: 1; }
  #splide-comparison-mobile .splide__pagination { bottom: 5px !important; }
  #product-bought-together .product-item:not(:last-child) .product-item-img-wrapper::after { bottom: -2.5rem; left: 40%; }
  #html-section-template--17008410493106__html_3U6R3k .col-md-3.col-sm-6 { margin-bottom: 20px; }
  .thumbs-splide { padding-right: calc(var(--bs-gutter-x) * .5); padding-left: calc(var(--bs-gutter-x) * .5); }
  .product\.bully-sticks-combined-v2.page-type-product.\36-bully-sticks .shopify-product-form ul.size-buttons input+label { padding: 1rem 0.25rem; }
}
@media (min-width:1000px) and (max-width:1400px) {
  .shopify-product-form ul.size-buttons input+label { padding: 1rem 0.5rem !important; }
}
/* ── PURCHASE OPTIONS: match pack card style ── */
.appstle_subscription_wrapper { width: 100% !important; }
.appstle_subscription_wrapper_option { width: 100% !important; max-width: 100% !important; box-sizing: border-box !important; border: 1.5px solid #E5E1DA !important; border-radius: 9px !important; }
.appstle_subscription_wrapper_option.appstle-active-option { border: 2px solid #1C1C1A !important; background: #F8F8F7 !important; }
/* ================================================================
   VARIANT SELECTOR UI — THICKNESS CHIPS + QUANTITY PACK CARDS
   ================================================================ */
/* ── THICKNESS CHIPS ──────────────────────────────────────────── */
.shopify-product-form ul.Thickness-buttons { display: flex; gap: 6px; flex-wrap: wrap; padding: 10px 0 0; margin-bottom: 0; align-items: flex-end; }
.shopify-product-form ul.Thickness-buttons>li.p-2 { padding: 0 !important; position: relative !important; flex: 1 1 calc(20% - 6px); min-width: 56px; margin-bottom: 0 !important; height: auto !important; padding-top: 0 !important; overflow: visible !important; }
.shopify-product-form ul.Thickness-buttons li.option-thickness-thick { padding-top: 14px !important; }
.shopify-product-form ul.Thickness-buttons input+label { display: flex !important; flex-direction: column; align-items: center; justify-content: center; width: 100%; min-height: 44px; padding: 9px 6px; border: 1.5px solid #DEDAD3 !important; border-radius: 7px !important; background: #fff !important; color: #1C1C1A; text-align: center; position: relative; overflow: visible !important; transition: border-color 0.13s, background 0.13s, box-shadow 0.13s, transform 0.1s; }
.shopify-product-form ul.Thickness-buttons input+label:hover { border-color: #999 !important; background: #fff !important; transform: translateY(-1px); box-shadow: 0 3px 10px rgba(0, 0, 0, 0.06); }
.shopify-product-form ul.Thickness-buttons input:checked+label { border: 2px solid #1C1C1A !important; background: #FAFAF7 !important; color: #1C1C1A !important; box-shadow: none; transform: none; }
.shopify-product-form ul.Thickness-buttons .option-left-size { float: none !important; display: flex; align-items: center; justify-content: center; width: 100%; }
.shopify-product-form ul.Thickness-buttons .variantPack { font-size: 13px !important; font-weight: 600; line-height: 1; color: inherit; text-align: center; width: auto !important; }
.shopify-product-form ul.Thickness-buttons .variantPackDesc { display: none !important; }
.shopify-product-form .thickness-popular-badge { position: absolute; top: 0; left: 0; right: 0; width: 100%; transform: none; background: #FEF4C0 !important; color: #3D2800 !important; font-size: 8px !important; font-weight: 800 !important; letter-spacing: 0.1em; text-transform: uppercase; text-align: center; padding: 3px 0 !important; border-radius: 5px 5px 0 0 !important; line-height: normal !important; white-space: nowrap; pointer-events: none; z-index: 3; }
.shopify-product-form ul.Thickness-buttons input:checked~.thickness-popular-badge { background: #FEF4C0 !important; color: #3D2800 !important; }
.shopify-product-form ul.Thickness-buttons li.option-thickness-thick input+label { border-top-left-radius: 0 !important; border-top-right-radius: 0 !important; }
.shopify-product-form .thickness-helper-text { font-size: 12px; color: #707170; margin: 4px 0 10px; min-height: 18px; line-height: 1.4; }
/* ── QUANTITY PACK CARDS ──────────────────────────────────────── */
.shopify-product-form ul.Quantity-buttons { display: flex !important; flex-direction: column; gap: 7px !important; padding-left: 0 !important; padding-right: 0 !important; margin-left: 0 !important; margin-right: 0 !important; margin-bottom: 8px; border: none !important; border-radius: 0 !important; overflow: visible !important; }
.shopify-product-form ul.Quantity-buttons>li.p-2 { padding: 0 !important; width: 100% !important; height: auto !important; margin-bottom: 0 !important; }
.shopify-product-form ul.Quantity-buttons input+label { display: flex !important; flex-direction: row; align-items: center; width: 100%; padding: 18px 14px !important; gap: 10px; border: 1.5px solid #E5E1DA !important; border-radius: 9px !important; background: #fff !important; cursor: pointer; position: relative; overflow: hidden; transition: border-color 0.13s, background 0.13s; }
.shopify-product-form ul.Quantity-buttons li.option-quantity-15-pack input+label,
.shopify-product-form ul.Quantity-buttons li.option-quantity-60-pack input+label { padding-top: 26px !important; }
.shopify-product-form ul.Quantity-buttons input+label::before { display: none !important; }
.shopify-product-form ul.Quantity-buttons input:checked+label { border: 2px solid #1C1C1A !important; background: #F8F8F7 !important; box-shadow: none !important; }
.shopify-product-form ul.Quantity-buttons input:checked+label::before { display: none !important; }
.shopify-product-form ul.Quantity-buttons li.real-sale .product-price-final,
.shopify-product-form ul.Quantity-buttons li.real-sale .product-price-regular { color: #DC2626 !important; }
.shopify-product-form ul.Quantity-buttons li.real-sale .unit_savings { background: #FEF4C0 !important; color: #3D2800 !important; }
.shopify-product-form ul.Quantity-buttons .option-left-size { float: none !important; flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 3px; }
.shopify-product-form ul.Quantity-buttons .variantPack { font-size: 14px; font-weight: 700; color: #1C1C1A; line-height: 1.2; }
.shopify-product-form ul.Quantity-buttons .variantPack br,
.shopify-product-form ul.Quantity-buttons .option-left-size>br { display: none; }
.shopify-product-form ul.Quantity-buttons .freeShipVariantLabel { font-size: 11px !important; font-weight: 400; color: #707170 !important; display: inline-block; margin-top: 1px; }
.shopify-product-form ul.Quantity-buttons .variantPackDesc { display: block !important; }
.shopify-product-form ul.Quantity-buttons .label-overlay-text { position: absolute !important; top: 0 !important; left: 0 !important; right: auto !important; width: auto !important; margin: 0 !important; text-align: left !important; font-size: 9px !important; font-weight: 800 !important; letter-spacing: 0.07em; text-transform: uppercase; padding: 3px 9px !important; border-radius: 7px 0 5px 0 !important; pointer-events: none; z-index: 1; white-space: nowrap; line-height: normal !important; }
.shopify-product-form ul.Quantity-buttons .label-overlay-customers-pick { background: #FEF4C0 !important; color: #3D2800 !important; }
.shopify-product-form ul.Quantity-buttons .label-overlay-best-value { background: #f0ece3 !important; color: #313638 !important; }
.shopify-product-form ul.Quantity-buttons .option-right-side { display: flex !important; flex-direction: row; align-items: center; gap: 10px; flex: 0 0 245px !important; width: 245px !important; float: none !important; }
.shopify-product-form ul.Quantity-buttons .price-right-item { display: flex; flex-direction: column; align-items: flex-end; gap: 2px; float: none !important; width: 155px; flex-shrink: 0; }
.shopify-product-form ul.Quantity-buttons .price { display: flex !important; flex-direction: row !important; align-items: baseline !important; gap: 4px !important; justify-content: flex-end !important; }
.shopify-product-form ul.Quantity-buttons .product-price-compare { display: inline !important; font-size: 10px !important; color: #707170 !important; font-weight: 400 !important; opacity: 1 !important; margin-right: 0 !important; line-height: 1.2 !important; }
.shopify-product-form ul.Quantity-buttons .product-price-compare s { text-decoration: line-through; color: #707170; }
.shopify-product-form ul.Quantity-buttons .product-price-final,
.shopify-product-form ul.Quantity-buttons .product-price-regular { font-size: 15px !important; font-weight: 700 !important; color: #1C1C1A !important; line-height: 1; }
.shopify-product-form ul.Quantity-buttons .price__unit { margin: 0 !important; }
.shopify-product-form ul.Quantity-buttons .price-unit-price { display: flex !important; align-items: center; gap: 2px; font-size: 11px !important; color: #707170 !important; font-weight: 500; white-space: nowrap; padding-left: 12px !important; }
.shopify-product-form ul.Quantity-buttons .price-left-item { display: flex; align-items: center; align-self: center; justify-content: flex-start; width: 80px; flex-shrink: 0; float: none !important; }
.shopify-product-form ul.Quantity-buttons .savingsPer { display: flex; align-items: center; margin-top: 0 !important; }
.shopify-product-form ul.Quantity-buttons .unit_savings { background: #FEF4C0 !important; color: #3D2800 !important; font-size: 10px !important; font-weight: 500 !important; padding: 3px 8px !important; border-radius: 4px !important; white-space: nowrap; letter-spacing: normal; max-width: none !important; line-height: normal !important; margin-right: 0 !important; border: none !important; display: inline-flex !important; align-items: center !important; text-transform: none !important; }
/* ── ODOR-FREE PAGE: Size-buttons pack cards ───────────────────────────────── */
/* Only two rules needed here — all layout is handled by ul.size-buttons below */
.shopify-product-form ul.Size-buttons { flex-direction: column !important; gap: 7px !important; }
.shopify-product-form ul.Length-buttons label>* { pointer-events: none; }
/* ── MOBILE: VARIANT SELECTOR ─────────────────────────────────── */
@media (max-width:576px) {
  .shopify-product-form ul.Thickness-buttons { display: flex !important; flex-wrap: wrap !important; align-items: flex-end !important; gap: 8px !important; padding-top: 10px !important; margin-bottom: 20px !important; }
  .shopify-product-form ul.Thickness-buttons>li.p-2 { flex: 0 0 calc(33.33% - 6px) !important; width: calc(33.33% - 6px) !important; min-width: unset !important; padding-top: 0 !important; overflow: visible !important; }
  .shopify-product-form ul.Thickness-buttons>li.option-thickness-thick { padding-top: 14px !important; }
  .shopify-product-form ul.Thickness-buttons input+label { min-height: 52px !important; font-size: 16px !important; font-weight: 600 !important; }
  .shopify-product-form ul.Quantity-buttons .option-right-side { flex: 0 0 auto !important; width: auto !important; }
  .shopify-product-form ul.Quantity-buttons .variantPack { font-size: 18px !important; }
  .shopify-product-form ul.Quantity-buttons .freeShipVariantLabel { font-size: 13px !important; }
  .shopify-product-form ul.Quantity-buttons .product-price-final, .shopify-product-form ul.Quantity-buttons .product-price-regular { font-size: 20px !important; }
  .shopify-product-form ul.Quantity-buttons .product-price-compare { font-size: 13px !important; }
  .shopify-product-form ul.Quantity-buttons .price-unit-price { font-size: 14px !important; }
  .shopify-product-form ul.Quantity-buttons .unit_savings { font-size: 13px !important; padding: 5px 12px !important; }
  /* Mobile: stack strikethrough above actual price */ .shopify-product-form ul.Quantity-buttons .price { flex-direction: column !important; align-items: flex-end !important; gap: 1px !important; }
  .shopify-product-form ul.size-buttons .price { flex-direction: column !important; align-items: flex-end !important; gap: 1px !important; }
}
/* ── FOCUS ACCESSIBILITY ──────────────────────────────────────── */
.shopify-product-form ul.Thickness-buttons input:focus-visible+label,
.shopify-product-form ul.Quantity-buttons input:focus-visible+label { outline: 2px solid #2D7A4F; outline-offset: 2px; }
/* ================================================================
   DESIGN TIGHTENING — font size bumps + per-unit price redesign
   ================================================================ */
.shopify-product-form ul.Quantity-buttons .variantPack { font-size: 17px !important; }
.shopify-product-form ul.Quantity-buttons .freeShipVariantLabel { font-size: 13px !important; }
.shopify-product-form ul.Quantity-buttons .product-price-final,
.shopify-product-form ul.Quantity-buttons .product-price-regular { font-size: 19px !important; }
.shopify-product-form ul.Quantity-buttons .product-price-compare { font-size: 13px !important; }
.shopify-product-form ul.Quantity-buttons .price-unit-price { font-size: 13px !important; }
.shopify-product-form ul.Quantity-buttons .unit_savings { font-size: 12px !important; padding: 4px 12px !important; }
.shopify-product-form ul.Quantity-buttons .label-overlay-text { font-size: 10px !important; }
.shopify-product-form ul.Thickness-buttons .variantPack { font-size: 15px !important; }
/* ── PER-UNIT PRICE IN MAIN PRICE BLOCK ───────────────────────── */
.product-price-row { display: flex; align-items: baseline; flex-wrap: wrap; gap: 8px; }
.product-price-per-unit { display: inline-flex !important; align-items: center; gap: 5px; font-size: 13px !important; font-weight: 400; color: #707170; vertical-align: baseline; flex-wrap: nowrap; white-space: nowrap; }
.product-price-per-unit .per-unit-current { color: #707170; font-size: 13px; font-weight: 500; }
.product-price-per-unit .per-unit-save { background: #1C1C1A; color: #fff; font-size: 11px; font-weight: 700; padding: 2px 8px; border-radius: 20px; letter-spacing: 0.02em; line-height: 1.6; }
/* ── MOBILE OVERRIDE ──────────────────────────────────────────── */
@media (max-width:576px) {
  .shopify-product-form ul.Quantity-buttons .variantPack { font-size: 18px !important; }
  .shopify-product-form ul.Quantity-buttons .product-price-final, .shopify-product-form ul.Quantity-buttons .product-price-regular { font-size: 20px !important; }
  .shopify-product-form ul.Quantity-buttons .unit_savings { font-size: 13px !important; padding: 5px 12px !important; }
  .shopify-product-form ul.Quantity-buttons .price-unit-price { font-size: 14px !important; }
}
/* ================================================================
   SIZE-BUTTONS — pack size cards on other product pages
   ================================================================ */
.shopify-product-form ul.size-buttons { margin-left: 0 !important; margin-right: 0 !important; }
.shopify-product-form ul.size-buttons li:has(.option-right-side) { padding: 0 !important; width: 100% !important; height: auto !important; margin-bottom: 7px !important; }
.shopify-product-form ul.size-buttons li:has(.option-right-side) input+label { display: flex !important; flex-direction: row !important; align-items: center !important; width: 100% !important; padding: 18px 14px !important; gap: 10px; border: 1.5px solid #E5E1DA !important; border-radius: 9px !important; background: #fff !important; cursor: pointer; position: relative; overflow: hidden; transition: border-color 0.13s, background 0.13s; }
.shopify-product-form ul.size-buttons li:has(.option-right-side) input+label:has(.label-overlay-text) { padding-top: 26px !important; }
.shopify-product-form ul.size-buttons li:has(.option-right-side) input+label::before { display: none !important; }
.shopify-product-form ul.size-buttons li:has(.option-right-side) input:checked+label { border: 2px solid #1C1C1A !important; background: #F8F8F7 !important; box-shadow: none !important; }
.shopify-product-form ul.size-buttons li:has(.option-right-side) input:checked+label::before { display: none !important; }
.shopify-product-form ul.size-buttons li.real-sale .product-price-final,
.shopify-product-form ul.size-buttons li.real-sale .product-price-regular { color: #DC2626 !important; }
.shopify-product-form ul.size-buttons li.real-sale .unit_savings { background: #FEF4C0 !important; color: #3D2800 !important; }
.shopify-product-form ul.size-buttons li:has(.option-right-side) input.disabled+label,
.shopify-product-form ul.size-buttons li:has(.option-right-side) input+label.disabled { opacity: 0.45; cursor: not-allowed; }
.shopify-product-form ul.size-buttons li:has(.option-right-side) .option-left-size { float: none !important; flex: 1 !important; min-width: 0; display: flex; flex-direction: column; gap: 3px; }
.shopify-product-form ul.size-buttons li:has(.option-right-side) .variantPack { font-size: 17px !important; font-weight: 700 !important; color: #1C1C1A !important; line-height: 1.2; }
.shopify-product-form ul.size-buttons li:has(.option-right-side) .variantPack br,
.shopify-product-form ul.size-buttons li:has(.option-right-side) .option-left-size>br { display: none !important; }
.shopify-product-form ul.size-buttons li:has(.option-right-side) .freeShipVariantLabel { font-size: 11px !important; font-weight: 400 !important; color: #707170 !important; display: inline-block; margin-top: 1px; }
.shopify-product-form ul.size-buttons li:has(.option-right-side) .label-overlay-text { position: absolute !important; top: 0 !important; left: 0 !important; right: auto !important; width: auto !important; margin: 0 !important; font-size: 9px !important; font-weight: 800 !important; letter-spacing: 0.07em; text-transform: uppercase; padding: 3px 9px !important; border-radius: 7px 0 5px 0 !important; pointer-events: none; z-index: 1; white-space: nowrap; line-height: normal !important; }
.shopify-product-form ul.size-buttons li:has(.option-right-side) .label-overlay-customers-pick { background: #FEF4C0 !important; color: #3D2800 !important; }
.shopify-product-form ul.size-buttons li:has(.option-right-side) .label-overlay-best-value { background: #f0ece3 !important; color: #313638 !important; }
.shopify-product-form ul.size-buttons .option-right-side { display: flex !important; flex-direction: row !important; align-items: center !important; justify-content: flex-end !important; gap: 10px; flex: 0 0 245px !important; width: 245px !important; float: none !important; }
.shopify-product-form ul.size-buttons .price-left-item { order: -1; display: flex !important; align-items: center; align-self: center; justify-content: flex-start; width: 80px; flex-shrink: 0; float: none !important; }
.shopify-product-form ul.size-buttons .savingsPer { display: flex; align-items: center; margin-top: 0 !important; }
.shopify-product-form ul.size-buttons .price-right-item { display: flex !important; flex-direction: column !important; align-items: flex-end !important; gap: 2px; float: none !important; width: 155px; flex-shrink: 0; }
.shopify-product-form ul.size-buttons .price { display: flex !important; flex-direction: row !important; align-items: baseline !important; gap: 4px !important; justify-content: flex-end !important; }
.shopify-product-form ul.size-buttons .product-price-compare { display: inline !important; font-size: 10px !important; color: #707170 !important; font-weight: 400 !important; opacity: 1 !important; margin-right: 0 !important; line-height: 1.2 !important; }
.shopify-product-form ul.size-buttons .product-price-compare s { text-decoration: line-through; color: #707170; }
.shopify-product-form ul.size-buttons .product-price-final,
.shopify-product-form ul.size-buttons .product-price-regular { font-size: 19px !important; font-weight: 700 !important; color: #1C1C1A !important; line-height: 1 !important; }
.shopify-product-form ul.size-buttons .price__unit { margin: 0 !important; }
.shopify-product-form ul.size-buttons .price-unit-price { display: flex !important; align-items: center; gap: 2px; font-size: 11px !important; color: #707170 !important; font-weight: 500; white-space: nowrap; padding-left: 12px !important; }
.shopify-product-form ul.size-buttons .unit_savings { background: #C7F1C5 !important; color: #3D2800 !important; font-size: 12px !important; font-weight: 500 !important; padding: 4px 12px !important; border-radius: 4px !important; white-space: nowrap; letter-spacing: normal; max-width: none !important; line-height: normal !important; margin-right: 0 !important; border: none !important; display: inline-flex !important; align-items: center !important; text-transform: none !important; }
.shopify-product-form ul.size-buttons li:has(.option-right-side) input:focus-visible+label { outline: 2px solid #2D7A4F; outline-offset: 2px; }
/* ── RESPONSIVE ── */
@media (min-width:992px) {
  .shopify-product-form ul.size-buttons .product-price-compare { font-size: 13px !important; }
  .shopify-product-form ul.size-buttons li:has(.option-right-side) .freeShipVariantLabel { font-size: 13px !important; }
  .shopify-product-form ul.size-buttons .price-unit-price { font-size: 13px !important; }
}
@media (max-width:576px) {
  .shopify-product-form ul.size-buttons .option-right-side { flex: 0 0 auto !important; width: auto !important; }
  .shopify-product-form ul.size-buttons li:has(.option-right-side) .variantPack { font-size: 18px !important; }
  .shopify-product-form ul.size-buttons li:has(.option-right-side) .product-price-final, .shopify-product-form ul.size-buttons li:has(.option-right-side) .product-price-regular { font-size: 20px !important; }
  .shopify-product-form ul.size-buttons .product-price-compare { font-size: 13px !important; }
  .shopify-product-form ul.size-buttons li:has(.option-right-side) .freeShipVariantLabel { font-size: 13px !important; }
  .shopify-product-form ul.size-buttons .price-unit-price { font-size: 14px !important; }
  .shopify-product-form ul.size-buttons .unit_savings { font-size: 13px !important; padding: 5px 12px !important; }
  /* Mobile: stack strikethrough above actual price */ .shopify-product-form ul.size-buttons .price { flex-direction: column !important; align-items: flex-end !important; gap: 1px !important; }
  .shopify-product-form ul.Quantity-buttons .price { flex-direction: column !important; align-items: flex-end !important; gap: 1px !important; }
  /* Mobile: align pill to top of option-right-side, then nudge down to center against strike+actual */ .shopify-product-form ul.Quantity-buttons .option-right-side { align-items: flex-start !important; }
  .shopify-product-form ul.size-buttons .option-right-side { align-items: flex-start !important; }
  .shopify-product-form ul.Quantity-buttons .price-left-item { margin-top: 8px !important; }
  .shopify-product-form ul.size-buttons .price-left-item { margin-top: 8px !important; }
}
/* ── PRODUCT CONTENT: desktop left margin ── */
@media (min-width:992px) {
  #product-content { margin-left: 50px !important; }
}
/* ── BR between price and per-stick: hidden ── */
.shopify-product-form ul.size-buttons .price-right-item br,
.shopify-product-form ul.Quantity-buttons .price-right-item br { display: none !important; }
/* ── MOBILE: Free Shipping smaller so it stays one line ── */
@media (max-width:575px) {
  .shopify-product-form ul.size-buttons li:has(.option-right-side) .freeShipVariantLabel, .shopify-product-form ul.Quantity-buttons .freeShipVariantLabel { font-size: 11px !important; }
}
/* ================================================================
   APPSTLE SUBSCRIBE & SAVE — LAYOUT REDESIGN
   Colors controlled from Appstle backend.
   Wrapper border applied via appstle-widget.js (Appstle JS sets
   border:none inline after render — CSS cannot override it).
   ================================================================ */
/* ── WRAPPER: layout only, border via JS ── */
.appstle_subscription_wrapper { display: flex !important; flex-direction: column !important; gap: 0 !important; padding: 0 !important; margin: 12px 0 !important; overflow: hidden !important; border-radius: 12px !important; }
.appstle_widget_title { display: none !important; }
/* ── BOTH CARDS: no individual borders, no margins ── */
.appstle_subscription_wrapper_option { border: none !important; border-radius: 0 !important; padding: 16px 18px !important; margin: 0 !important; box-sizing: border-box !important; width: 100% !important; max-width: 100% !important; }
.appstle_subscription_wrapper_option.appstle-active-option { border: none !important; }
/* ── HIDE NATIVE RADIO ── */
.appstle_subscription_wrapper_option input[type="radio"] { display: none !important; }
/* ── CUSTOM RADIO CIRCLE ── */
.appstle_circle { width: 22px !important; height: 22px !important; min-width: 22px !important; border-radius: 50% !important; border-width: 2px !important; border-style: solid !important; display: flex !important; align-items: center !important; justify-content: center !important; flex-shrink: 0 !important; box-sizing: border-box !important; margin-top: 0 !important; align-self: center !important; }
.appstle_dot { width: 12px !important; height: 12px !important; min-width: 12px !important; border-radius: 50% !important; display: block !important; }
/* ── ONE-TIME CARD ── */
.appstle_one_time_details_wrapper { display: flex !important; flex-direction: row !important; align-items: center !important; justify-content: space-between !important; gap: 12px !important; }
.appstle_one_time_details_wrapper .appstle_radio_label { display: flex !important; flex-direction: row !important; align-items: center !important; gap: 12px !important; flex: 1 !important; cursor: pointer !important; margin: 0 !important; }
.appstle_one_time_price_wrapper { display: flex !important; flex-direction: row !important; align-items: center !important; flex-shrink: 0 !important; }
.appstle_one_time_price_wrapper .appstle_subscription_amount { font-size: 20px !important; font-weight: 700 !important; }
.appstle_one_time_price_wrapper .appstle_subscription_amount_compare_at_price { display: none !important; }
.appstle_one_time_unit_price { display: none !important; }
/* ── SUBSCRIBE CARD: header row ── */
.appstle_subscription_radio_wrapper { display: flex !important; flex-direction: row !important; align-items: center !important; justify-content: space-between !important; gap: 8px !important; }
.appstle_subscription_radio_wrapper .appstle_radio_label { display: flex !important; flex-direction: row !important; align-items: center !important; gap: 10px !important; flex: 1 !important; min-width: 0 !important; cursor: pointer !important; margin: 0 !important; height: auto !important; }
.appstle_circle { align-self: center !important; flex-shrink: 0 !important; margin-top: 0 !important; }
.appstle-text-and-badge-wrapper { display: flex !important; flex-direction: row !important; align-items: center !important; align-self: center !important; gap: 8px !important; flex-wrap: nowrap !important; min-width: 0 !important; overflow: hidden !important; }
.appstle_subscribe_save_text { font-size: 15px !important; font-weight: 600 !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; }
.appstle_subscribe_save_text span,
.appstle_subscribe_save_text p { display: none !important; }
.appstle-save-badge { display: inline-block !important; font-size: 11px !important; font-weight: 700 !important; padding: 3px 10px !important; border-radius: 20px !important; white-space: nowrap !important; flex-shrink: 0 !important; }
/* ── SUBSCRIBE: price column with inner price row ── */
.appstle_subscription_amount_wrapper { display: flex !important; flex-direction: column !important; align-items: flex-end !important; gap: 2px !important; flex-shrink: 0 !important; }
#appstle-price-row { display: flex !important; flex-direction: row !important; align-items: baseline !important; gap: 4px !important; justify-content: flex-end !important; width: 100% !important; }
.appstle_subscription_amount_wrapper .appstle_subscription_amount { font-size: 20px !important; font-weight: 700 !important; line-height: 1.1 !important; white-space: nowrap !important; }
.appstle_subscription_compare_amount { font-size: 13px !important; font-weight: 400 !important; text-decoration: line-through !important; line-height: 1.2 !important; white-space: nowrap !important; color: #707170 !important; }
.appstle_subscription_amount_wrapper .appstle_selling_plan_unit_price { text-align: right !important; font-size: 12px !important; color: #707170 !important; display: block !important; white-space: nowrap !important; }
.appstle_selling_plan_unit_price { font-size: 12px !important; color: #707170 !important; font-weight: 400 !important; }
/* ── DROPDOWN ── */
.appstle_subscribe_option { margin-top: 14px !important; padding-top: 14px !important; border-top: 1px solid rgba(0, 0, 0, 0.1) !important; }
.appstle_subscribe_option_grid { display: flex !important; flex-direction: column !important; gap: 10px !important; }
.appstle_select_label { font-size: 13px !important; font-weight: 600 !important; display: block !important; margin-bottom: 4px !important; }
.appstle_select { width: 100% !important; border-radius: 8px !important; padding: 10px 14px !important; font-size: 14px !important; box-sizing: border-box !important; appearance: none !important; -webkit-appearance: none !important; }
/* ── BENEFIT BULLETS ── */
.appstle_freq_point ul.no-markers { list-style: none !important; padding: 0 !important; margin: 6px 0 0 !important; }
.appstle_freq_point li { position: relative !important; padding: 3px 0 3px 26px !important; font-size: 13px !important; display: block !important; }
.appstle_freq_point li::before { content: "" !important; position: absolute !important; left: 0 !important; top: 4px !important; width: 18px !important; height: 18px !important; border-radius: 50% !important; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='12' fill='%232D5016'/%3E%3Cpath d='M7 12.5l3.2 3.2L17 9' fill='none' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important; background-size: contain !important; background-repeat: no-repeat !important; }
/* ── HIDE EMPTY / UTILITY ── */
.appstle_bundle_discount_amount { display: none !important; }
.appstle_subscription_description_text:empty { display: none !important; }
[class*="-appstle-sr-only"] { display: none !important; }
/* ================================================================
   APPSTLE CUSTOM CSS OVERRIDES
   Neutralises conflicts from Appstle's own custom CSS block.
   Uses matching or higher specificity where needed.
   ================================================================ */
/* Beat their #appstle_subscription_widget0 .appstle_subscription_wrapper { border:none !important }
   Their rule has ID+class specificity. We match it with the same ID. */
#appstle_subscription_widget0 .appstle_subscription_wrapper,
body #appstle_subscription_widget0 .appstle_subscription_wrapper { border: 1.5px solid #D8D4CC !important; border-radius: 12px !important; overflow: hidden !important; padding: 0 !important; margin: 12px 0 !important; }
/* Beat their .appstle_subscription_wrapper_option { margin-bottom:20px; border:1px solid #000; padding:10px } */
/* Our JS inline handles this but CSS fallback during debounce gap */
#appstle_subscription_widget0 .appstle_subscription_wrapper_option { margin: 0 !important; border: none !important; border-radius: 0 !important; padding: 16px 18px !important; }
#appstle_subscription_widget0 .appstle_subscription_wrapper_option+.appstle_subscription_wrapper_option { border-top: 1px solid #D8D4CC !important; }
/* Beat their .appstle_subscription_wrapper { padding-top:5px; padding-bottom:5px } */
/* Already handled by the rule above */
/* Beat their .appstle_freq_point { margin-top:19px !important } */
#appstle_subscription_widget0 .appstle_freq_point { margin-top: 14px !important; }
/* Beat their .appstle_freq_point ul li background-image checkmark — we use our own ::before SVG */
#appstle_subscription_widget0 .appstle_freq_point ul.no-markers li { background-image: none !important; padding-left: 26px !important; }
/* Beat their .no-markers li { padding-left:0 } */
#appstle_subscription_widget0 .appstle_freq_point .no-markers li { padding-left: 26px !important; }
/* Beat their text-transform:uppercase on subscribe save text — we want sentence case */
#appstle_subscription_widget0 .appstle_subscribe_save_text { text-transform: none !important; }
/* Beat their margin-top:-16px on the circle via the long payAsYouGo selector */
#appstle_subscription_widget0 .appstle_circle { margin-top: 0 !important; }
/* ── PRICE ROW: lock wrapper to column so compare+sale row never flips ── */
#appstle_subscription_widget0 .appstle_subscription_amount_wrapper { display: flex !important; flex-direction: column !important; align-items: flex-end !important; gap: 2px !important; flex-shrink: 0 !important; }
/* Price row itself always horizontal */
#appstle-price-row { display: flex !important; flex-direction: row !important; align-items: baseline !important; gap: 4px !important; justify-content: flex-end !important; width: 100% !important; }
/* ── OTP UNIT PRICE: rendered via ::after on OTP card using a CSS custom
   property set on :root. Since :root is never destroyed by Appstle's
   widget rebuild, the variable persists and updates instantly on variant
   change — no DOM element needed, no delay. ── */
:root { --bs-otp-unit: ''; }
#appstle_subscription_widget0 .appstle_subscription_wrapper_option:not(.appstle_include_dropdown) { padding-bottom: 12px !important; }
#appstle_subscription_widget0 .appstle_subscription_wrapper_option:not(.appstle_include_dropdown)::after { content: var(--bs-otp-unit, ''); display: block; text-align: right; font-size: 12px; color: #707170; font-weight: 400; margin-top: 2px; }
.gift-card .savingsPer { display: none !important; }
.gift-card .product-price-compare,
.gift-card .shopify-product-form ul.Quantity-buttons .product-price-compare,
.gift-card .shopify-product-form ul.size-buttons .product-price-compare { display: none !important; }
.gift-card .freeShipVariantLabel { display: none !important; }

/* =============================================
   Cart BXGX Promotional Banner
   ============================================= */

.cart-bxgx-banner { display: flex; align-items: flex-start; gap: 8px; background-color: #f5f5f5; border: 1px solid #e8e8e8; border-radius: 6px; padding: 10px 12px; margin-top: 10px; font-size: 0.82rem; font-weight: 500; color: #555; line-height: 1.4; }
.cart-bxgx-banner__icon { flex-shrink: 0; margin-top: 1px; color: #888; }
.cart-bxgx-banner__text { flex: 1; }

/* =============================================
   BXGX Promotional Banner
   ============================================= */

.bxgx-banner { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; background-color: var(--bs-info); color: #FFF; border: none; border-radius: 6px; font-weight: 600; line-height: 1.3; }
.bxgx-banner--card { padding: 6px 10px; margin-top: 8px; font-size: 0.78rem; justify-content: center; text-align: center; display: inline-flex; width: auto; max-width: 100%; }
.bxgx-banner--pdp { padding: 12px 16px; margin: 12px 0; font-size: 0.9rem; }
.bxgx-banner__icon { flex-shrink: 0; }
.bxgx-banner__countdown { font-weight: 700; color: #b35c00; }