{"id":30587,"date":"2026-01-29T10:03:26","date_gmt":"2026-01-29T15:03:26","guid":{"rendered":"https:\/\/nativenic.com\/?page_id=30587"},"modified":"2026-04-28T17:47:23","modified_gmt":"2026-04-28T21:47:23","slug":"native-cigarettes-thunder-bay-on","status":"publish","type":"page","link":"https:\/\/staging.nativenic.com\/fr\/native-cigarettes-thunder-bay-on\/","title":{"rendered":"Thunder Bay"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"30587\" class=\"elementor elementor-30587\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"wd-negative-gap elementor-element elementor-element-57660ed e-flex e-con-boxed e-con e-parent\" data-id=\"57660ed\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-b56e17e e-con-full e-flex e-con e-child\" data-id=\"b56e17e\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-20a4710 elementor-widget elementor-widget-heading\" data-id=\"20a4710\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\"><a href=\"http:\/\/staging.nativenic.com\/native-cigarettes-thunder-bay\/\">Buy Native Cigarettes Online in Thunder Bay, Ontario<\/a><\/h1>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0cf0c0f elementor-widget__width-initial color-scheme-inherit text-left elementor-widget elementor-widget-text-editor\" data-id=\"0cf0c0f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Residents of <strong>Thunder Bay<\/strong> can <a href=\"http:\/\/staging.nativenic.com\/\">buy native cigarettes online<\/a> and have their order shipped directly from within Canada at Native Nic. All purchases are completed through a secure online checkout where age verification is confirmed before the order is placed.<\/p><p>Thunder Bay customers choose online ordering for convenient access to cigarette packs and cartons, <strong>fast and discreet Canada-wide delivery<\/strong>, and <strong>free shipping on orders over $150.<\/strong><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0260624 elementor-widget elementor-widget-button\" data-id=\"0260624\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"#shop\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t<span class=\"elementor-button-icon\">\n\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-arrow-right\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M190.5 66.9l22.2-22.2c9.4-9.4 24.6-9.4 33.9 0L441 239c9.4 9.4 9.4 24.6 0 33.9L246.6 467.3c-9.4 9.4-24.6 9.4-33.9 0l-22.2-22.2c-9.5-9.5-9.3-25 .4-34.3L311.4 296H24c-13.3 0-24-10.7-24-24v-32c0-13.3 10.7-24 24-24h287.4L190.9 101.2c-9.8-9.3-10-24.8-.4-34.3z\"><\/path><\/svg>\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">SHOP NOW<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-0123f5c e-con-full e-flex e-con e-child\" data-id=\"0123f5c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e1f112a elementor-hidden-tablet elementor-widget elementor-widget-image\" data-id=\"e1f112a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"1200\" height=\"900\" src=\"https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/thunder-bay-native-smokes.webp\" class=\"attachment-full size-full wp-image-30590\" alt=\"\" srcset=\"https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/thunder-bay-native-smokes.webp 1200w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/thunder-bay-native-smokes-400x300.webp 400w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/thunder-bay-native-smokes-1067x800.webp 1067w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/thunder-bay-native-smokes-768x576.webp 768w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/thunder-bay-native-smokes-60x45.webp 60w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/thunder-bay-native-smokes-430x323.webp 430w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/thunder-bay-native-smokes-700x525.webp 700w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/thunder-bay-native-smokes-150x113.webp 150w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"wd-negative-gap elementor-element elementor-element-2d580a0 e-flex e-con-boxed e-con e-parent\" data-id=\"2d580a0\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-a55f732 e-con-full e-flex e-con e-child\" data-id=\"a55f732\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-6b994a4 elementor-widget elementor-widget-heading\" data-id=\"6b994a4\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Why Buy Native Cigarettes Online in Thunder Bay <\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7e03a11 color-scheme-inherit text-left elementor-widget elementor-widget-text-editor\" data-id=\"7e03a11\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Thunder Bay residents often choose to buy cigarettes online due to limited local selection and the convenience of direct delivery. Ordering online allows you to compare carton pricing, choose preferred cigarette types, and receive your order without unnecessary delays.<\/p><p>This service is designed for adult customers in Thunder Bay who want a reliable, Canada-based option for ordering native cigarettes online.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-6d686ec e-con-full e-flex e-con e-child\" data-id=\"6d686ec\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-b583341 elementor-widget elementor-widget-heading\" data-id=\"b583341\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Legal Age Requirements for Buying Cigarettes <\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9cd2f02 color-scheme-inherit text-left elementor-widget elementor-widget-text-editor\" data-id=\"9cd2f02\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>In Ontario, customers must be <strong>19 years of age<\/strong> or older to purchase cigarettes. Age verification is completed <strong>during the online ordering process<\/strong> before checkout is finalized<\/p><p><strong>Important details:<\/strong><\/p><ul><li>Orders are restricted to adults 19+<\/li><li>Age confirmation happens online<\/li><li>Orders that do not meet age requirements cannot be completed<\/li><\/ul><p>No ID is required at delivery.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-81b7364 e-con-full e-flex e-con e-child\" data-id=\"81b7364\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c62625c elementor-widget elementor-widget-heading\" data-id=\"c62625c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Online Cigarette Delivery in Thunder Bay ON<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b5ed26d color-scheme-inherit text-left elementor-widget elementor-widget-text-editor\" data-id=\"b5ed26d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Cigarette orders shipped to Thunder Bay are delivered using <strong>fast and discreet Canada-wide<\/strong> shipping services. All packages are shipped from within Canada and packed discreetly.<\/p><p><strong>Delivery considerations for Thunder Bay:<\/strong><\/p><ul><li>Delivery available across Thunder Bay and nearby areas<\/li><li>Discreet packaging with no external markings<\/li><li>Delivery timelines may vary during winter or severe weather conditions<\/li><\/ul><p>Free shipping applies automatically on orders over $150.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"wd-negative-gap elementor-element elementor-element-51071f6 e-flex e-con-boxed e-con e-parent\" data-id=\"51071f6\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-49ba9f3 e-con-full elementor-hidden-tablet e-flex e-con e-child\" data-id=\"49ba9f3\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-ad8150d elementor-widget elementor-widget-image\" data-id=\"ad8150d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"783\" src=\"https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/native-nic-thunderbay.jpg\" class=\"attachment-full size-full wp-image-30596\" alt=\"\" srcset=\"https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/native-nic-thunderbay.jpg 800w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/native-nic-thunderbay-307x300.jpg 307w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/native-nic-thunderbay-768x752.jpg 768w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/native-nic-thunderbay-60x59.jpg 60w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/native-nic-thunderbay-430x421.jpg 430w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/native-nic-thunderbay-700x685.jpg 700w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/native-nic-thunderbay-150x147.jpg 150w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-1440a99 e-con-full e-flex e-con e-child\" data-id=\"1440a99\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2325a7c elementor-widget elementor-widget-heading\" data-id=\"2325a7c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Popular Online Cigarette <br>Orders in Thunder Bay<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f790aa2 color-scheme-inherit text-left elementor-widget elementor-widget-text-editor\" data-id=\"f790aa2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p><strong>Customers in Thunder Bay commonly order:<\/strong><\/p><ul><li>Cigarette cartons for better value<\/li><li>Regular and king-size cigarettes<\/li><li>Smooth and full-flavour varieties depending on preference<\/li><\/ul><p>Online ordering makes it easier to choose based on quantity, format, and budget before checkout.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"wd-negative-gap elementor-element elementor-element-b2e9ee3 e-flex e-con-boxed e-con e-parent\" data-id=\"b2e9ee3\" data-element_type=\"container\" data-e-type=\"container\" id=\"shop\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5bce947 elementor-widget__width-initial elementor-widget elementor-widget-heading\" data-id=\"5bce947\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Best Selling Native Cigarettes in Thunder Bay, Ontario<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8864c89 wd-width-100 elementor-widget elementor-widget-wd_products\" data-id=\"8864c89\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"wd_products.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t<div class=\"wd-products-element\">\n\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t<div class=\"products wd-products grid-columns-5 elements-grid wd-grid-g wd-loop-builder-off title-line-one\" data-paged=\"1\" data-atts=\"{&quot;speed&quot;:null,&quot;slides_per_view&quot;:null,&quot;wrap&quot;:null,&quot;autoplay&quot;:null,&quot;autoheight&quot;:null,&quot;hide_pagination_control&quot;:null,&quot;dynamic_pagination_control&quot;:null,&quot;hide_prev_next_buttons&quot;:null,&quot;carousel_arrows_position&quot;:null,&quot;hide_scrollbar&quot;:null,&quot;scroll_per_page&quot;:null,&quot;center_mode&quot;:null,&quot;post_type&quot;:&quot;bestselling&quot;,&quot;spacing&quot;:&quot;20&quot;,&quot;carousel_sync&quot;:null,&quot;sync_parent_id&quot;:null,&quot;sync_child_id&quot;:null,&quot;scroll_carousel_init&quot;:null,&quot;disable_overflow_carousel&quot;:null,&quot;include&quot;:null,&quot;orderby&quot;:null,&quot;query_type&quot;:null,&quot;order&quot;:null,&quot;meta_key&quot;:null,&quot;shop_tools&quot;:null,&quot;ajax_recently_viewed&quot;:null,&quot;pagination_arrows_position&quot;:null,&quot;items_per_page&quot;:10,&quot;list_spacing&quot;:null,&quot;columns&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:5,&quot;sizes&quot;:[]},&quot;products_masonry&quot;:&quot;&quot;,&quot;products_different_sizes&quot;:&quot;&quot;,&quot;product_quantity&quot;:&quot;&quot;,&quot;product_custom_hover&quot;:null,&quot;sale_countdown&quot;:&quot;0&quot;,&quot;stretch_product&quot;:null,&quot;stock_progress_bar&quot;:&quot;0&quot;,&quot;highlighted_products&quot;:&quot;0&quot;,&quot;products_divider&quot;:null,&quot;products_bordered_grid&quot;:&quot;0&quot;,&quot;products_bordered_grid_style&quot;:null,&quot;products_with_background&quot;:&quot;0&quot;,&quot;products_shadow&quot;:&quot;0&quot;,&quot;img_size&quot;:&quot;large&quot;,&quot;img_size_custom&quot;:null,&quot;grid_gallery_control&quot;:null,&quot;grid_gallery_enable_arrows&quot;:null,&quot;elementor&quot;:true,&quot;force_not_ajax&quot;:&quot;no&quot;}\" data-source=\"shortcode\" data-columns=\"5\" style=\"--wd-col-lg:5;--wd-col-md:4;--wd-col-sm:2;--wd-gap-lg:20px;--wd-gap-sm:10px;\">\n\t\t\n\t\t\t\t\t\t\t\t<div class=\"wd-product wd-col wd-hover-fw-button wd-hover-with-fade product-grid-item product type-product post-34023 status-publish instock product_cat-cigarettes product_cat-rollies-bags-cigarettes product_tag-200-count-bulk product_tag-canadian-brand product_tag-dense-draw product_tag-full-strength product_tag-heavy-smoker product_tag-industrial-pricing product_tag-native-tobacco has-post-thumbnail shipping-taxable purchasable product-type-simple\" data-loop=\"1\" data-id=\"34023\">\n\t\n<div class=\"wd-product-wrapper product-wrapper\">\n\t<div class=\"wd-product-card-bg content-product-imagin\"><\/div>\n\t<div class=\"wd-product-thumb product-element-top wd-quick-shop\">\n\t\t<a href=\"https:\/\/staging.nativenic.com\/fr\/produit\/canadian-full-rollies\/\" class=\"wd-product-img-link product-image-link\" tabindex=\"-1\" aria-label=\"Canadian Full(Bag of 200)\">\n\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"800\" src=\"https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/03\/5-800x800.jpg\" class=\"attachment-large size-large\" alt=\"Canadian Full 200-count bag of native cigarettes \u2013 buy online at NativeNic Canada\" srcset=\"https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/03\/5-800x800.jpg 800w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/03\/5-300x300.jpg 300w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/03\/5-150x150.jpg 150w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/03\/5-768x768.jpg 768w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/03\/5-1536x1536.jpg 1536w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/03\/5-60x60.jpg 60w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/03\/5-430x430.jpg 430w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/03\/5-700x700.jpg 700w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/03\/5.jpg 1950w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><div class=\"br_alabel br_alabel_image br_alabel_type_text br_alabel_template_type_css br_alabel_right berocket_alabel_id_34119 \" style=\"\"><span  style=\"\"><i style=\"background-color: #f16543; border-color: #f16543;\" class=\"template-span-before \"><\/i><i style=\"background-color: #f16543; border-color: #f16543;\" class=\"template-i \"><\/i><i style=\"background-color: #f16543; border-color: #f16543;\" class=\"template-i-before \"><\/i><i style=\"background-color: #f16543; border-color: #f16543;\" class=\"template-i-after \"><\/i><b>BEST VALUE<\/b><\/span><\/div>\t\t<\/a>\n\n\t\t\n\t\t<div class=\"wd-buttons wd-pos-r-t\">\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"wd-quick-view-btn wd-quick-view-icon wd-action-btn wd-style-icon\">\n\t\t\t<a\n\t\t\t\thref=\"https:\/\/staging.nativenic.com\/fr\/produit\/canadian-full-rollies\/\"\n\t\t\t\tclass=\"open-quick-view\"\n\t\t\t\trel=\"nofollow\"\n\t\t\t\tdata-id=\"34023\"\n\t\t\t\t>\n\t\t\t\t\t<span class=\"wd-action-icon\"><\/span>\n\t\t\t\t\t<span class=\"wd-action-text\">\n\t\t\t\t\t\tQuick view\t\t\t\t\t<\/span>\n\t\t\t<\/a>\n\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t<\/div>\n\n\t<div class=\"product-element-bottom\">\n\n\t\t<h3 class=\"wd-entities-title\"><a href=\"https:\/\/staging.nativenic.com\/fr\/produit\/canadian-full-rollies\/\">Canadian Full(Bag of 200)<\/a><\/h3>\n\t\t\t\t<div class=\"wd-product-cats\">\n\t\t\t\t\t\t<a href=\"https:\/\/staging.nativenic.com\/fr\/categorie-produit\/cigarettes\/\" rel=\"tag\">Native Cigarettes<\/a><span class=\"wd-meta-sep\">,<\/span> <a href=\"https:\/\/staging.nativenic.com\/fr\/categorie-produit\/rollies-bags-cigarettes\/\" rel=\"tag\">Rollies Bags<\/a>\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"wd-star-rating\">\n\t\t\n\t\t\t\t<div class=\"star-rating\" role=\"img\" aria-label=\"Note 0 sur 5\">\n\t\t\t\t\t<span style=\"width:0%\">\n\t\t\tNote <strong class=\"rating\">0<\/strong> sur 5\t\t<\/span>\n\t\t\t\t<\/div>\n\n\t\t\t\t<a href=\"https:\/\/staging.nativenic.com\/fr\/produit\/canadian-full-rollies\/#reviews\" class=\"woocommerce-review-link\" rel=\"nofollow\">\n\t\t\t(0)\n\t\t<\/a>\n\t\t\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\n\t\t\n\t\t<div class=\"wrap-price\">\n\t\t\t\n\t<span class=\"price\"><span class=\"woocommerce-Price-amount amount\"><bdi><span class=\"woocommerce-Price-currencySymbol\">&#36;<\/span>4.00<\/bdi><\/span><\/span>\n\n\t\t\t\t\t<\/div>\n\n\t\t<div class=\"wd-add-btn wd-add-btn-replace\">\n\t\t\t\n\t\t\t<a href=\"\/fr\/wp-json\/wp\/v2\/pages\/30587?add-to-cart=34023\" aria-describedby=\"woocommerce_loop_add_to_cart_link_describedby_34023\" data-quantity=\"1\" class=\"button product_type_simple add_to_cart_button ajax_add_to_cart pcd-add-to-cart-btn add-to-cart-loop\" data-product_id=\"34023\" data-product_sku=\"\" aria-label=\"Ajouter au panier\u00a0: &ldquo;Canadian Full(Bag of 200)&rdquo;\" rel=\"nofollow\" data-success_message=\"\u00ab\u00a0Canadian Full(Bag of 200)\u00a0\u00bb a \u00e9t\u00e9 ajout\u00e9 \u00e0 votre panier\" role=\"button\"><span class=\"wd-action-icon\"><span class=\"wd-check-icon\"><\/span><\/span><span class=\"wd-action-text\">Ajouter au panier<\/span><\/a>\t<span id=\"woocommerce_loop_add_to_cart_link_describedby_34023\" class=\"screen-reader-text\">\n\t\t\t<\/span>\n\t\t<\/div>\n\n\t\t<div class=\"pcd-container pcd-container-price-hide\"\n     data-product_id=\"34023\"\n     data-discounts-pack='[{\"quantity\":1,\"discount\":0},{\"quantity\":2,\"discount\":0},{\"quantity\":5,\"discount\":0},{\"quantity\":10,\"discount\":0}]'\n     data-discounts-carton='[{\"quantity\":4,\"discount\":0},{\"quantity\":5,\"discount\":20},{\"quantity\":10,\"discount\":22.85},{\"quantity\":20,\"discount\":28}]'>\n\n    <div class=\"pcd-type-select\">\n                            <button class=\"pcd-type-button active\" data-type=\"Carton\" data-price=\"25.0\">\n                <span>CARTON<\/span>\n                <span class=\"pack_carton_price\">$25.0<\/span>\n            <\/button>\n            <\/div>\n    <input type=\"hidden\" name=\"custom_price\" class=\"custom_price\" value=\"...\">\n\n    <div class=\"pcd-discount-info\">\n        <div class='pcd-discount-group pcd-discount-pack' style='display:none;'><div class='pcd-discount-qty active' data-type='pack' data-qty='1'>1<\/div><div class='pcd-discount-qty ' data-type='pack' data-qty='2'>2<\/div><div class='pcd-discount-qty ' data-type='pack' data-qty='5'>5<\/div><div class='pcd-discount-qty ' data-type='pack' data-qty='10'>10<\/div><\/div><div class='pcd-discount-group pcd-discount-carton' style='display:none;'><div class='pcd-discount-qty active' data-type='carton' data-qty='4'>4<\/div><div class='pcd-discount-qty ' data-type='carton' data-qty='5'>5<\/div><div class='pcd-discount-qty ' data-type='carton' data-qty='10'>10<\/div><div class='pcd-discount-qty ' data-type='carton' data-qty='20'>20<\/div><\/div>    <\/div>\n\n    <div class=\"pcd-add-to-cart-row\">\n        <div class=\"pcd-qty-input-box\">\n            <button class=\"pcd-qty-btn minus\">\u2212<\/button>\n            <input type=\"number\" min=\"1\" step=\"1\" value=\"1\" class=\"pcd-qty-input\" \/>\n            <button class=\"pcd-qty-btn plus\">+<\/button>\n        <\/div>\n        <button class=\"pcd-add-to-cart-btn\">Add to Cart<\/button>\n    <\/div>\n\n    <div class=\"pcd-price-display\" style=\"margin-top:5px;font-weight:bold;text-align:center;\"><\/div>\n    <div class=\"pcd-price-display_msg\" style=\"margin-top:5px;font-weight:bold;text-align:center;color:green;font-size:12px;display:none;\">QUANTITY DISCOUNT<\/div>\n<\/div>\n    <script>\n    jQuery(function($) {\n\n        function initPCDContainer(container) {\n            if (container.data('pcd-initialized')) return;\n            container.data('pcd-initialized', true);\n\n            container.parent().find('.wd-add-btn').remove();\n            $('.pcd-container-price-hide').parent().find('.price .woocommerce-Price-amount').hide();\n            $('.wd-product.product-type-variable .wd-add-btn').filter(function () {\n                return $(this).siblings('.wd-product-sku').length > 0;\n            }).css({'margin-bottom': '10px'});\n\n            var selectedTypeBtn = container.find('.pcd-type-button.active');\n            var selectedType    = selectedTypeBtn.data('type');\n            var quantityInput   = container.find('.pcd-qty-input');\n            var addToCartBtn    = container.find('.pcd-add-to-cart-btn');\n            var priceDisplay    = container.find('.pcd-price-display');\n            var priceDisplayMsg = container.find('.pcd-price-display_msg');\n            var productId       = container.data('product_id');\n\n            \/\/ Show active type's discount group on init\n            if (selectedType) {\n                container.find('.pcd-discount-group').hide();\n                container.find('.pcd-discount-' + selectedType.toLowerCase()).css({display:'flex'});\n\n                \/\/ Set default qty to 5 if Carton & 5 exists\n                if (selectedType === 'Carton') {\n                    var cGroup  = container.find('.pcd-discount-carton');\n                    var qtyBtns = cGroup.find('.pcd-discount-qty');\n                    qtyBtns.removeClass('active');\n                    var qty5 = qtyBtns.filter(function(){ return parseInt($(this).data('qty')) === 5; });\n                    if (qty5.length) { qty5.addClass('active'); quantityInput.val(5); }\n                    else { qtyBtns.first().addClass('active'); quantityInput.val(parseInt(qtyBtns.first().data('qty')) || 1); }\n                }\n            }\n\n            function getDiscount(qty) {\n                var type = container.find('.pcd-type-button.active').data('type');\n                if (!type) return 0;\n                type = type.toLowerCase();\n                var dataAttr = type === 'carton' ? 'data-discounts-carton' : 'data-discounts-pack';\n                var packages = [];\n                try { packages = JSON.parse(container[0].getAttribute(dataAttr) || '[]'); } catch(e){ return 0; }\n                var discount = 0;\n                packages.forEach(function(pkg){\n                    if (qty >= parseFloat(pkg.quantity)) discount = parseFloat(pkg.discount) \/ 100;\n                });\n                return discount;\n            }\n\n            function calculatePrice(unitPrice, qty) {\n                return (unitPrice * (1 - getDiscount(qty))).toFixed(2);\n            }\n\n            \/\/ Always keep highest matching swatch highlighted; fallback to first\n            function syncSwatches(activeTypeLower, currentQty) {\n                var $group    = container.find('.pcd-discount-' + activeTypeLower);\n                var $swatches = $group.find('.pcd-discount-qty');\n                $swatches.removeClass('active');\n                var $best = null;\n                $swatches.each(function(){\n                    if (parseInt($(this).data('qty'), 10) <= currentQty) $best = $(this);\n                });\n                if ($best) $best.addClass('active');\n                else $swatches.first().addClass('active');\n            }\n\n            function updatePriceDisplay() {\n                var qty        = parseInt(quantityInput.val(), 10) || 1;\n                var unitPrice  = parseFloat(container.find('.pcd-type-button.active').data('price')) || 0;\n                var finalUnit  = parseFloat(calculatePrice(unitPrice, qty));\n                var totalPrice = (finalUnit * qty).toFixed(2);\n                var discount   = getDiscount(qty);\n                var activeType = container.find('.pcd-type-button.active').data('type');\n\n                \/\/ Add to Cart button\n                addToCartBtn.text('ADD TO CART - $' + totalPrice);\n\n                \/\/ Total price display\n                if (discount > 0) {\n                    priceDisplay.html('Total: <del style=\"color:red;font-weight:400;\">$' + (unitPrice * qty).toFixed(2) + '<\/del> $' + totalPrice);\n                    priceDisplayMsg.show();\n                } else {\n                    priceDisplay.html('Total: $' + totalPrice);\n                    priceDisplayMsg.hide();\n                }\n\n                \/\/ Active button price with strikethrough\n                var priceHtml = discount > 0\n                    ? '<del style=\"color:red;\">$' + unitPrice.toFixed(2) + '<\/del> $' + finalUnit.toFixed(2)\n                    : '$' + finalUnit.toFixed(2);\n                container.find('.pcd-type-button.active .pack_carton_price').html(priceHtml);\n\n                \/\/ Sync swatch highlight \u2014 highest matching, never disappears\n                if (activeType) syncSwatches(activeType.toLowerCase(), qty);\n            }\n\n            \/\/ Pack\/Carton type switch\n            container.find('.pcd-type-button').off('click').on('click', function(){\n                container.find('.pcd-type-button').removeClass('active');\n                $(this).addClass('active');\n                selectedType = $(this).data('type');\n\n                container.find('.pcd-discount-group').hide();\n                container.find('.pcd-discount-' + selectedType.toLowerCase()).css({display:'flex'});\n\n                \/\/ Reset inactive button prices\n                container.find('.pcd-type-button').not('.active').each(function(){\n                    $(this).find('.pack_carton_price').html('$' + parseFloat($(this).data('price')).toFixed(2));\n                });\n\n                \/\/ Set first qty of new type\n                var firstQtyBtn = container.find('.pcd-discount-' + selectedType.toLowerCase() + ' .pcd-discount-qty');\n                var firstQty    = parseInt(firstQtyBtn.first().data('qty'), 10) || 1;\n                quantityInput.val(firstQty);\n                updatePriceDisplay();\n            });\n\n            \/\/ Swatch click \u2014 set qty, updatePriceDisplay handles highlight\n            container.find('.pcd-discount-qty').off('click').on('click', function(){\n                quantityInput.val(parseInt($(this).data('qty'), 10) || 1);\n                updatePriceDisplay();\n            });\n\n            \/\/ Minus\n            container.find('.pcd-qty-btn.minus').off('click').on('click', function(){\n                var v = parseInt(quantityInput.val(), 10) || 1;\n                if (v > 1) quantityInput.val(v - 1).trigger('change');\n            });\n\n            \/\/ Plus\n            container.find('.pcd-qty-btn.plus').off('click').on('click', function(){\n                var v = parseInt(quantityInput.val(), 10) || 1;\n                quantityInput.val(v + 1).trigger('change');\n            });\n\n            \/\/ Manual input\n            quantityInput.off('change keyup').on('change keyup', function(){\n                var val = parseInt($(this).val(), 10);\n                setTimeout(function(){ if (isNaN(val) || val < 1) quantityInput.val(1); }, 500);\n                updatePriceDisplay();\n            });\n\n            \/\/ Add to Cart\n            addToCartBtn.off('click').on('click', function(e){\n                e.preventDefault();\n                var qty        = parseInt(quantityInput.val(), 10) || 1;\n                var unitPrice  = parseFloat(container.find('.pcd-type-button.active').data('price')) || 0;\n                var finalPrice = calculatePrice(unitPrice, qty);\n                var purchType  = container.find('.pcd-type-button.active').data('type') || selectedType;\n\n                var data = {\n                    action:        'pcd_ajax_add_to_cart',\n                    product_id:    productId,\n                    quantity:      qty,\n                    purchase_type: purchType,\n                    custom_price:  finalPrice\n                };\n\n                addToCartBtn.prop('disabled', true).text('Adding...');\n\n                $.post('https:\/\/staging.nativenic.com\/wp-admin\/admin-ajax.php', data, function(response){\n                    if (response.success) {\n                        $(document.body).trigger('wc_fragment_refresh');\n                        addToCartBtn.text('Added!');\n                        var cartSidebar  = document.querySelector('.cart-widget-side.wd-side-hidden.wd-right');\n                        var cartBackdrop = document.querySelector('.wd-close-side.wd-fill');\n                        if (cartSidebar)  cartSidebar.classList.add('wd-opened');\n                        if (cartBackdrop) cartBackdrop.classList.add('wd-close-side-opened');\n                        setTimeout(function(){\n                            updatePriceDisplay();\n                            addToCartBtn.prop('disabled', false);\n                        }, 1500);\n                    } else {\n                        addToCartBtn.prop('disabled', false);\n                        updatePriceDisplay();\n                    }\n                }).fail(function(){\n                    addToCartBtn.prop('disabled', false);\n                    updatePriceDisplay();\n                });\n            });\n\n            updatePriceDisplay();\n        }\n\n        $('.pcd-container').each(function(){\n            initPCDContainer($(this));\n        });\n\n    });\n    <\/script>\n    \n\t\t\t\t<div class=\"wd-product-card-hover fade-in-block wd-scroll\">\n\t\t\t\t\t\t\n\t\t\t\t\t<\/div>\n\t<\/div>\n<\/div>\n<\/div>\n\t\t\t\t\t\t\t\t<div class=\"wd-product wd-col wd-hover-fw-button wd-hover-with-fade product-grid-item product type-product post-34031 status-publish instock product_cat-cigarettes product_cat-rollies-bags-cigarettes product_tag-200-count-bulk product_tag-budget-friendly-2 product_tag-grand-river product_tag-indigenous-made product_tag-light-strength product_tag-native-tobacco product_tag-putter-brand has-post-thumbnail shipping-taxable purchasable product-type-simple\" data-loop=\"2\" data-id=\"34031\">\n\t\n<div class=\"wd-product-wrapper product-wrapper\">\n\t<div class=\"wd-product-card-bg content-product-imagin\"><\/div>\n\t<div class=\"wd-product-thumb product-element-top wd-quick-shop\">\n\t\t<a href=\"https:\/\/staging.nativenic.com\/fr\/produit\/putter-light-rollies\/\" class=\"wd-product-img-link product-image-link\" tabindex=\"-1\" aria-label=\"Putter Light Rollies (Bag of 200)\">\n\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"800\" src=\"https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/03\/8-800x800.jpg\" class=\"attachment-large size-large\" alt=\"Putter Light Rollies 200-count bag of native cigarettes \u2013 buy online at NativeNic Canada\" srcset=\"https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/03\/8-800x800.jpg 800w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/03\/8-300x300.jpg 300w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/03\/8-150x150.jpg 150w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/03\/8-768x768.jpg 768w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/03\/8-1536x1536.jpg 1536w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/03\/8-60x60.jpg 60w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/03\/8-430x430.jpg 430w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/03\/8-700x700.jpg 700w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/03\/8.jpg 1950w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><div class=\"br_alabel br_alabel_image br_alabel_type_text br_alabel_template_type_css br_alabel_right berocket_alabel_id_34119 \" style=\"\"><span  style=\"\"><i style=\"background-color: #f16543; border-color: #f16543;\" class=\"template-span-before \"><\/i><i style=\"background-color: #f16543; border-color: #f16543;\" class=\"template-i \"><\/i><i style=\"background-color: #f16543; border-color: #f16543;\" class=\"template-i-before \"><\/i><i style=\"background-color: #f16543; border-color: #f16543;\" class=\"template-i-after \"><\/i><b>BEST VALUE<\/b><\/span><\/div>\t\t<\/a>\n\n\t\t\n\t\t<div class=\"wd-buttons wd-pos-r-t\">\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"wd-quick-view-btn wd-quick-view-icon wd-action-btn wd-style-icon\">\n\t\t\t<a\n\t\t\t\thref=\"https:\/\/staging.nativenic.com\/fr\/produit\/putter-light-rollies\/\"\n\t\t\t\tclass=\"open-quick-view\"\n\t\t\t\trel=\"nofollow\"\n\t\t\t\tdata-id=\"34031\"\n\t\t\t\t>\n\t\t\t\t\t<span class=\"wd-action-icon\"><\/span>\n\t\t\t\t\t<span class=\"wd-action-text\">\n\t\t\t\t\t\tQuick view\t\t\t\t\t<\/span>\n\t\t\t<\/a>\n\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t<\/div>\n\n\t<div class=\"product-element-bottom\">\n\n\t\t<h3 class=\"wd-entities-title\"><a href=\"https:\/\/staging.nativenic.com\/fr\/produit\/putter-light-rollies\/\">Putter Light Rollies (Bag of 200)<\/a><\/h3>\n\t\t\t\t<div class=\"wd-product-cats\">\n\t\t\t\t\t\t<a href=\"https:\/\/staging.nativenic.com\/fr\/categorie-produit\/cigarettes\/\" rel=\"tag\">Native Cigarettes<\/a><span class=\"wd-meta-sep\">,<\/span> <a href=\"https:\/\/staging.nativenic.com\/fr\/categorie-produit\/rollies-bags-cigarettes\/\" rel=\"tag\">Rollies Bags<\/a>\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"wd-star-rating\">\n\t\t\n\t\t\t\t<div class=\"star-rating\" role=\"img\" aria-label=\"Note 0 sur 5\">\n\t\t\t\t\t<span style=\"width:0%\">\n\t\t\tNote <strong class=\"rating\">0<\/strong> sur 5\t\t<\/span>\n\t\t\t\t<\/div>\n\n\t\t\t\t<a href=\"https:\/\/staging.nativenic.com\/fr\/produit\/putter-light-rollies\/#reviews\" class=\"woocommerce-review-link\" rel=\"nofollow\">\n\t\t\t(0)\n\t\t<\/a>\n\t\t\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\n\t\t\n\t\t<div class=\"wrap-price\">\n\t\t\t\n\t<span class=\"price\"><span class=\"woocommerce-Price-amount amount\"><bdi><span class=\"woocommerce-Price-currencySymbol\">&#36;<\/span>4.00<\/bdi><\/span><\/span>\n\n\t\t\t\t\t<\/div>\n\n\t\t<div class=\"wd-add-btn wd-add-btn-replace\">\n\t\t\t\n\t\t\t<a href=\"\/fr\/wp-json\/wp\/v2\/pages\/30587?add-to-cart=34031\" aria-describedby=\"woocommerce_loop_add_to_cart_link_describedby_34031\" data-quantity=\"1\" class=\"button product_type_simple add_to_cart_button ajax_add_to_cart pcd-add-to-cart-btn add-to-cart-loop\" data-product_id=\"34031\" data-product_sku=\"\" aria-label=\"Ajouter au panier\u00a0: &ldquo;Putter Light Rollies (Bag of 200)&rdquo;\" rel=\"nofollow\" data-success_message=\"\u00ab\u00a0Putter Light Rollies (Bag of 200)\u00a0\u00bb a \u00e9t\u00e9 ajout\u00e9 \u00e0 votre panier\" role=\"button\"><span class=\"wd-action-icon\"><span class=\"wd-check-icon\"><\/span><\/span><span class=\"wd-action-text\">Ajouter au panier<\/span><\/a>\t<span id=\"woocommerce_loop_add_to_cart_link_describedby_34031\" class=\"screen-reader-text\">\n\t\t\t<\/span>\n\t\t<\/div>\n\n\t\t<div class=\"pcd-container pcd-container-price-hide\"\n     data-product_id=\"34031\"\n     data-discounts-pack='[{\"quantity\":1,\"discount\":0},{\"quantity\":2,\"discount\":0},{\"quantity\":5,\"discount\":0},{\"quantity\":10,\"discount\":0}]'\n     data-discounts-carton='[{\"quantity\":4,\"discount\":0},{\"quantity\":5,\"discount\":20},{\"quantity\":10,\"discount\":22.85},{\"quantity\":20,\"discount\":28}]'>\n\n    <div class=\"pcd-type-select\">\n                            <button class=\"pcd-type-button active\" data-type=\"Carton\" data-price=\"25.0\">\n                <span>CARTON<\/span>\n                <span class=\"pack_carton_price\">$25.0<\/span>\n            <\/button>\n            <\/div>\n    <input type=\"hidden\" name=\"custom_price\" class=\"custom_price\" value=\"...\">\n\n    <div class=\"pcd-discount-info\">\n        <div class='pcd-discount-group pcd-discount-pack' style='display:none;'><div class='pcd-discount-qty active' data-type='pack' data-qty='1'>1<\/div><div class='pcd-discount-qty ' data-type='pack' data-qty='2'>2<\/div><div class='pcd-discount-qty ' data-type='pack' data-qty='5'>5<\/div><div class='pcd-discount-qty ' data-type='pack' data-qty='10'>10<\/div><\/div><div class='pcd-discount-group pcd-discount-carton' style='display:none;'><div class='pcd-discount-qty active' data-type='carton' data-qty='4'>4<\/div><div class='pcd-discount-qty ' data-type='carton' data-qty='5'>5<\/div><div class='pcd-discount-qty ' data-type='carton' data-qty='10'>10<\/div><div class='pcd-discount-qty ' data-type='carton' data-qty='20'>20<\/div><\/div>    <\/div>\n\n    <div class=\"pcd-add-to-cart-row\">\n        <div class=\"pcd-qty-input-box\">\n            <button class=\"pcd-qty-btn minus\">\u2212<\/button>\n            <input type=\"number\" min=\"1\" step=\"1\" value=\"1\" class=\"pcd-qty-input\" \/>\n            <button class=\"pcd-qty-btn plus\">+<\/button>\n        <\/div>\n        <button class=\"pcd-add-to-cart-btn\">Add to Cart<\/button>\n    <\/div>\n\n    <div class=\"pcd-price-display\" style=\"margin-top:5px;font-weight:bold;text-align:center;\"><\/div>\n    <div class=\"pcd-price-display_msg\" style=\"margin-top:5px;font-weight:bold;text-align:center;color:green;font-size:12px;display:none;\">QUANTITY DISCOUNT<\/div>\n<\/div>\n    <script>\n    jQuery(function($) {\n\n        function initPCDContainer(container) {\n            if (container.data('pcd-initialized')) return;\n            container.data('pcd-initialized', true);\n\n            container.parent().find('.wd-add-btn').remove();\n            $('.pcd-container-price-hide').parent().find('.price .woocommerce-Price-amount').hide();\n            $('.wd-product.product-type-variable .wd-add-btn').filter(function () {\n                return $(this).siblings('.wd-product-sku').length > 0;\n            }).css({'margin-bottom': '10px'});\n\n            var selectedTypeBtn = container.find('.pcd-type-button.active');\n            var selectedType    = selectedTypeBtn.data('type');\n            var quantityInput   = container.find('.pcd-qty-input');\n            var addToCartBtn    = container.find('.pcd-add-to-cart-btn');\n            var priceDisplay    = container.find('.pcd-price-display');\n            var priceDisplayMsg = container.find('.pcd-price-display_msg');\n            var productId       = container.data('product_id');\n\n            \/\/ Show active type's discount group on init\n            if (selectedType) {\n                container.find('.pcd-discount-group').hide();\n                container.find('.pcd-discount-' + selectedType.toLowerCase()).css({display:'flex'});\n\n                \/\/ Set default qty to 5 if Carton & 5 exists\n                if (selectedType === 'Carton') {\n                    var cGroup  = container.find('.pcd-discount-carton');\n                    var qtyBtns = cGroup.find('.pcd-discount-qty');\n                    qtyBtns.removeClass('active');\n                    var qty5 = qtyBtns.filter(function(){ return parseInt($(this).data('qty')) === 5; });\n                    if (qty5.length) { qty5.addClass('active'); quantityInput.val(5); }\n                    else { qtyBtns.first().addClass('active'); quantityInput.val(parseInt(qtyBtns.first().data('qty')) || 1); }\n                }\n            }\n\n            function getDiscount(qty) {\n                var type = container.find('.pcd-type-button.active').data('type');\n                if (!type) return 0;\n                type = type.toLowerCase();\n                var dataAttr = type === 'carton' ? 'data-discounts-carton' : 'data-discounts-pack';\n                var packages = [];\n                try { packages = JSON.parse(container[0].getAttribute(dataAttr) || '[]'); } catch(e){ return 0; }\n                var discount = 0;\n                packages.forEach(function(pkg){\n                    if (qty >= parseFloat(pkg.quantity)) discount = parseFloat(pkg.discount) \/ 100;\n                });\n                return discount;\n            }\n\n            function calculatePrice(unitPrice, qty) {\n                return (unitPrice * (1 - getDiscount(qty))).toFixed(2);\n            }\n\n            \/\/ Always keep highest matching swatch highlighted; fallback to first\n            function syncSwatches(activeTypeLower, currentQty) {\n                var $group    = container.find('.pcd-discount-' + activeTypeLower);\n                var $swatches = $group.find('.pcd-discount-qty');\n                $swatches.removeClass('active');\n                var $best = null;\n                $swatches.each(function(){\n                    if (parseInt($(this).data('qty'), 10) <= currentQty) $best = $(this);\n                });\n                if ($best) $best.addClass('active');\n                else $swatches.first().addClass('active');\n            }\n\n            function updatePriceDisplay() {\n                var qty        = parseInt(quantityInput.val(), 10) || 1;\n                var unitPrice  = parseFloat(container.find('.pcd-type-button.active').data('price')) || 0;\n                var finalUnit  = parseFloat(calculatePrice(unitPrice, qty));\n                var totalPrice = (finalUnit * qty).toFixed(2);\n                var discount   = getDiscount(qty);\n                var activeType = container.find('.pcd-type-button.active').data('type');\n\n                \/\/ Add to Cart button\n                addToCartBtn.text('ADD TO CART - $' + totalPrice);\n\n                \/\/ Total price display\n                if (discount > 0) {\n                    priceDisplay.html('Total: <del style=\"color:red;font-weight:400;\">$' + (unitPrice * qty).toFixed(2) + '<\/del> $' + totalPrice);\n                    priceDisplayMsg.show();\n                } else {\n                    priceDisplay.html('Total: $' + totalPrice);\n                    priceDisplayMsg.hide();\n                }\n\n                \/\/ Active button price with strikethrough\n                var priceHtml = discount > 0\n                    ? '<del style=\"color:red;\">$' + unitPrice.toFixed(2) + '<\/del> $' + finalUnit.toFixed(2)\n                    : '$' + finalUnit.toFixed(2);\n                container.find('.pcd-type-button.active .pack_carton_price').html(priceHtml);\n\n                \/\/ Sync swatch highlight \u2014 highest matching, never disappears\n                if (activeType) syncSwatches(activeType.toLowerCase(), qty);\n            }\n\n            \/\/ Pack\/Carton type switch\n            container.find('.pcd-type-button').off('click').on('click', function(){\n                container.find('.pcd-type-button').removeClass('active');\n                $(this).addClass('active');\n                selectedType = $(this).data('type');\n\n                container.find('.pcd-discount-group').hide();\n                container.find('.pcd-discount-' + selectedType.toLowerCase()).css({display:'flex'});\n\n                \/\/ Reset inactive button prices\n                container.find('.pcd-type-button').not('.active').each(function(){\n                    $(this).find('.pack_carton_price').html('$' + parseFloat($(this).data('price')).toFixed(2));\n                });\n\n                \/\/ Set first qty of new type\n                var firstQtyBtn = container.find('.pcd-discount-' + selectedType.toLowerCase() + ' .pcd-discount-qty');\n                var firstQty    = parseInt(firstQtyBtn.first().data('qty'), 10) || 1;\n                quantityInput.val(firstQty);\n                updatePriceDisplay();\n            });\n\n            \/\/ Swatch click \u2014 set qty, updatePriceDisplay handles highlight\n            container.find('.pcd-discount-qty').off('click').on('click', function(){\n                quantityInput.val(parseInt($(this).data('qty'), 10) || 1);\n                updatePriceDisplay();\n            });\n\n            \/\/ Minus\n            container.find('.pcd-qty-btn.minus').off('click').on('click', function(){\n                var v = parseInt(quantityInput.val(), 10) || 1;\n                if (v > 1) quantityInput.val(v - 1).trigger('change');\n            });\n\n            \/\/ Plus\n            container.find('.pcd-qty-btn.plus').off('click').on('click', function(){\n                var v = parseInt(quantityInput.val(), 10) || 1;\n                quantityInput.val(v + 1).trigger('change');\n            });\n\n            \/\/ Manual input\n            quantityInput.off('change keyup').on('change keyup', function(){\n                var val = parseInt($(this).val(), 10);\n                setTimeout(function(){ if (isNaN(val) || val < 1) quantityInput.val(1); }, 500);\n                updatePriceDisplay();\n            });\n\n            \/\/ Add to Cart\n            addToCartBtn.off('click').on('click', function(e){\n                e.preventDefault();\n                var qty        = parseInt(quantityInput.val(), 10) || 1;\n                var unitPrice  = parseFloat(container.find('.pcd-type-button.active').data('price')) || 0;\n                var finalPrice = calculatePrice(unitPrice, qty);\n                var purchType  = container.find('.pcd-type-button.active').data('type') || selectedType;\n\n                var data = {\n                    action:        'pcd_ajax_add_to_cart',\n                    product_id:    productId,\n                    quantity:      qty,\n                    purchase_type: purchType,\n                    custom_price:  finalPrice\n                };\n\n                addToCartBtn.prop('disabled', true).text('Adding...');\n\n                $.post('https:\/\/staging.nativenic.com\/wp-admin\/admin-ajax.php', data, function(response){\n                    if (response.success) {\n                        $(document.body).trigger('wc_fragment_refresh');\n                        addToCartBtn.text('Added!');\n                        var cartSidebar  = document.querySelector('.cart-widget-side.wd-side-hidden.wd-right');\n                        var cartBackdrop = document.querySelector('.wd-close-side.wd-fill');\n                        if (cartSidebar)  cartSidebar.classList.add('wd-opened');\n                        if (cartBackdrop) cartBackdrop.classList.add('wd-close-side-opened');\n                        setTimeout(function(){\n                            updatePriceDisplay();\n                            addToCartBtn.prop('disabled', false);\n                        }, 1500);\n                    } else {\n                        addToCartBtn.prop('disabled', false);\n                        updatePriceDisplay();\n                    }\n                }).fail(function(){\n                    addToCartBtn.prop('disabled', false);\n                    updatePriceDisplay();\n                });\n            });\n\n            updatePriceDisplay();\n        }\n\n        $('.pcd-container').each(function(){\n            initPCDContainer($(this));\n        });\n\n    });\n    <\/script>\n    \n\t\t\t\t<div class=\"wd-product-card-hover fade-in-block wd-scroll\">\n\t\t\t\t\t\t\n\t\t\t\t\t<\/div>\n\t<\/div>\n<\/div>\n<\/div>\n\t\t\t\t\t\t\t\t<div class=\"wd-product wd-col wd-hover-fw-button wd-hover-with-fade product-grid-item product type-product post-30450 status-publish last instock product_cat-cigarettes product_tag-benchmark-smoke product_tag-canada product_tag-canadian-classics-original product_tag-medium-strength product_tag-native-cigarettes has-post-thumbnail featured shipping-taxable purchasable product-type-simple\" data-loop=\"3\" data-id=\"30450\">\n\t\n<div class=\"wd-product-wrapper product-wrapper\">\n\t<div class=\"wd-product-card-bg content-product-imagin\"><\/div>\n\t<div class=\"wd-product-thumb product-element-top wd-quick-shop\">\n\t\t<a href=\"https:\/\/staging.nativenic.com\/fr\/produit\/canadian-classics-original-king-size\/\" class=\"wd-product-img-link product-image-link\" tabindex=\"-1\" aria-label=\"Canadian Classics Original (King Size)\">\n\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"800\" src=\"https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/2-800x800.png\" class=\"attachment-large size-large\" alt=\"Canadian Classics Original carton and pack \u2013 buy native cigarettes online at NativeNic Canada\" srcset=\"https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/2-800x800.png 800w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/2-300x300.png 300w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/2-150x150.png 150w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/2-768x768.png 768w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/2-1536x1536.png 1536w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/2-430x430.png 430w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/2-700x700.png 700w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/2.png 2048w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><div class=\"br_alabel br_alabel_image br_alabel_type_text br_alabel_template_type_css br_alabel_right berocket_alabel_id_34108 \" style=\"\"><span  style=\"\"><i style=\"background-color: #a11d21; border-color: #a11d21;\" class=\"template-span-before \"><\/i><i style=\"background-color: #a11d21; border-color: #a11d21;\" class=\"template-i \"><\/i><i style=\"background-color: #a11d21; border-color: #a11d21;\" class=\"template-i-before \"><\/i><i style=\"background-color: #a11d21; border-color: #a11d21;\" class=\"template-i-after \"><\/i><b style=\"text-align: center;z-index: 100;\" class=\"br-labels-css br-labels-css-3\">TOP RATED<\/b><\/span><\/div>\t\t<\/a>\n\n\t\t\n\t\t<div class=\"wd-buttons wd-pos-r-t\">\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"wd-quick-view-btn wd-quick-view-icon wd-action-btn wd-style-icon\">\n\t\t\t<a\n\t\t\t\thref=\"https:\/\/staging.nativenic.com\/fr\/produit\/canadian-classics-original-king-size\/\"\n\t\t\t\tclass=\"open-quick-view\"\n\t\t\t\trel=\"nofollow\"\n\t\t\t\tdata-id=\"30450\"\n\t\t\t\t>\n\t\t\t\t\t<span class=\"wd-action-icon\"><\/span>\n\t\t\t\t\t<span class=\"wd-action-text\">\n\t\t\t\t\t\tQuick view\t\t\t\t\t<\/span>\n\t\t\t<\/a>\n\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t<\/div>\n\n\t<div class=\"product-element-bottom\">\n\n\t\t<h3 class=\"wd-entities-title\"><a href=\"https:\/\/staging.nativenic.com\/fr\/produit\/canadian-classics-original-king-size\/\">Canadian Classics Original (King Size)<\/a><\/h3>\n\t\t\t\t<div class=\"wd-product-cats\">\n\t\t\t\t\t\t<a href=\"https:\/\/staging.nativenic.com\/fr\/categorie-produit\/cigarettes\/\" rel=\"tag\">Native Cigarettes<\/a>\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"wd-star-rating\">\n\t\t\n\t\t\t\t<div class=\"star-rating\" role=\"img\" aria-label=\"Note 4.94 sur 5\">\n\t\t\t\t\t<span style=\"width:98.8%\">\n\t\t\tNote <strong class=\"rating\">4.94<\/strong> sur 5\t\t<\/span>\n\t\t\t\t<\/div>\n\n\t\t\t\t<a href=\"https:\/\/staging.nativenic.com\/fr\/produit\/canadian-classics-original-king-size\/#reviews\" class=\"woocommerce-review-link\" rel=\"nofollow\">\n\t\t\t(212)\n\t\t<\/a>\n\t\t\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\n\t\t\n\t\t<div class=\"wrap-price\">\n\t\t\t\n\t<span class=\"price\"><span class=\"woocommerce-Price-amount amount\"><bdi><span class=\"woocommerce-Price-currencySymbol\">&#36;<\/span>6.00<\/bdi><\/span><\/span>\n\n\t\t\t\t\t<\/div>\n\n\t\t<div class=\"wd-add-btn wd-add-btn-replace\">\n\t\t\t\n\t\t\t<a href=\"\/fr\/wp-json\/wp\/v2\/pages\/30587?add-to-cart=30450\" aria-describedby=\"woocommerce_loop_add_to_cart_link_describedby_30450\" data-quantity=\"1\" class=\"button product_type_simple add_to_cart_button ajax_add_to_cart pcd-add-to-cart-btn add-to-cart-loop\" data-product_id=\"30450\" data-product_sku=\"\" aria-label=\"Ajouter au panier\u00a0: &ldquo;Canadian Classics Original (King Size)&rdquo;\" rel=\"nofollow\" data-success_message=\"\u00ab\u00a0Canadian Classics Original (King Size)\u00a0\u00bb a \u00e9t\u00e9 ajout\u00e9 \u00e0 votre panier\" role=\"button\"><span class=\"wd-action-icon\"><span class=\"wd-check-icon\"><\/span><\/span><span class=\"wd-action-text\">Ajouter au panier<\/span><\/a>\t<span id=\"woocommerce_loop_add_to_cart_link_describedby_30450\" class=\"screen-reader-text\">\n\t\t\t<\/span>\n\t\t<\/div>\n\n\t\t<div class=\"pcd-container pcd-container-price-hide\"\n     data-product_id=\"30450\"\n     data-discounts-pack='[{\"quantity\":1,\"discount\":0},{\"quantity\":2,\"discount\":0},{\"quantity\":5,\"discount\":0},{\"quantity\":10,\"discount\":0}]'\n     data-discounts-carton='[{\"quantity\":4,\"discount\":0},{\"quantity\":5,\"discount\":20},{\"quantity\":10,\"discount\":22.85},{\"quantity\":20,\"discount\":28}]'>\n\n    <div class=\"pcd-type-select\">\n                    <button class=\"pcd-type-button\" data-type=\"Pack\" data-price=\"4.0\">\n                <span>PACK<\/span>\n                <span class=\"pack_carton_price\">$4.0<\/span>\n            <\/button>\n                            <button class=\"pcd-type-button active\" data-type=\"Carton\" data-price=\"38.88\">\n                <span>CARTON<\/span>\n                <span class=\"pack_carton_price\">$38.88<\/span>\n            <\/button>\n            <\/div>\n    <input type=\"hidden\" name=\"custom_price\" class=\"custom_price\" value=\"...\">\n\n    <div class=\"pcd-discount-info\">\n        <div class='pcd-discount-group pcd-discount-pack' style='display:none;'><div class='pcd-discount-qty active' data-type='pack' data-qty='1'>1<\/div><div class='pcd-discount-qty ' data-type='pack' data-qty='2'>2<\/div><div class='pcd-discount-qty ' data-type='pack' data-qty='5'>5<\/div><div class='pcd-discount-qty ' data-type='pack' data-qty='10'>10<\/div><\/div><div class='pcd-discount-group pcd-discount-carton' style='display:none;'><div class='pcd-discount-qty active' data-type='carton' data-qty='4'>4<\/div><div class='pcd-discount-qty ' data-type='carton' data-qty='5'>5<\/div><div class='pcd-discount-qty ' data-type='carton' data-qty='10'>10<\/div><div class='pcd-discount-qty ' data-type='carton' data-qty='20'>20<\/div><\/div>    <\/div>\n\n    <div class=\"pcd-add-to-cart-row\">\n        <div class=\"pcd-qty-input-box\">\n            <button class=\"pcd-qty-btn minus\">\u2212<\/button>\n            <input type=\"number\" min=\"1\" step=\"1\" value=\"1\" class=\"pcd-qty-input\" \/>\n            <button class=\"pcd-qty-btn plus\">+<\/button>\n        <\/div>\n        <button class=\"pcd-add-to-cart-btn\">Add to Cart<\/button>\n    <\/div>\n\n    <div class=\"pcd-price-display\" style=\"margin-top:5px;font-weight:bold;text-align:center;\"><\/div>\n    <div class=\"pcd-price-display_msg\" style=\"margin-top:5px;font-weight:bold;text-align:center;color:green;font-size:12px;display:none;\">QUANTITY DISCOUNT<\/div>\n<\/div>\n    <script>\n    jQuery(function($) {\n\n        function initPCDContainer(container) {\n            if (container.data('pcd-initialized')) return;\n            container.data('pcd-initialized', true);\n\n            container.parent().find('.wd-add-btn').remove();\n            $('.pcd-container-price-hide').parent().find('.price .woocommerce-Price-amount').hide();\n            $('.wd-product.product-type-variable .wd-add-btn').filter(function () {\n                return $(this).siblings('.wd-product-sku').length > 0;\n            }).css({'margin-bottom': '10px'});\n\n            var selectedTypeBtn = container.find('.pcd-type-button.active');\n            var selectedType    = selectedTypeBtn.data('type');\n            var quantityInput   = container.find('.pcd-qty-input');\n            var addToCartBtn    = container.find('.pcd-add-to-cart-btn');\n            var priceDisplay    = container.find('.pcd-price-display');\n            var priceDisplayMsg = container.find('.pcd-price-display_msg');\n            var productId       = container.data('product_id');\n\n            \/\/ Show active type's discount group on init\n            if (selectedType) {\n                container.find('.pcd-discount-group').hide();\n                container.find('.pcd-discount-' + selectedType.toLowerCase()).css({display:'flex'});\n\n                \/\/ Set default qty to 5 if Carton & 5 exists\n                if (selectedType === 'Carton') {\n                    var cGroup  = container.find('.pcd-discount-carton');\n                    var qtyBtns = cGroup.find('.pcd-discount-qty');\n                    qtyBtns.removeClass('active');\n                    var qty5 = qtyBtns.filter(function(){ return parseInt($(this).data('qty')) === 5; });\n                    if (qty5.length) { qty5.addClass('active'); quantityInput.val(5); }\n                    else { qtyBtns.first().addClass('active'); quantityInput.val(parseInt(qtyBtns.first().data('qty')) || 1); }\n                }\n            }\n\n            function getDiscount(qty) {\n                var type = container.find('.pcd-type-button.active').data('type');\n                if (!type) return 0;\n                type = type.toLowerCase();\n                var dataAttr = type === 'carton' ? 'data-discounts-carton' : 'data-discounts-pack';\n                var packages = [];\n                try { packages = JSON.parse(container[0].getAttribute(dataAttr) || '[]'); } catch(e){ return 0; }\n                var discount = 0;\n                packages.forEach(function(pkg){\n                    if (qty >= parseFloat(pkg.quantity)) discount = parseFloat(pkg.discount) \/ 100;\n                });\n                return discount;\n            }\n\n            function calculatePrice(unitPrice, qty) {\n                return (unitPrice * (1 - getDiscount(qty))).toFixed(2);\n            }\n\n            \/\/ Always keep highest matching swatch highlighted; fallback to first\n            function syncSwatches(activeTypeLower, currentQty) {\n                var $group    = container.find('.pcd-discount-' + activeTypeLower);\n                var $swatches = $group.find('.pcd-discount-qty');\n                $swatches.removeClass('active');\n                var $best = null;\n                $swatches.each(function(){\n                    if (parseInt($(this).data('qty'), 10) <= currentQty) $best = $(this);\n                });\n                if ($best) $best.addClass('active');\n                else $swatches.first().addClass('active');\n            }\n\n            function updatePriceDisplay() {\n                var qty        = parseInt(quantityInput.val(), 10) || 1;\n                var unitPrice  = parseFloat(container.find('.pcd-type-button.active').data('price')) || 0;\n                var finalUnit  = parseFloat(calculatePrice(unitPrice, qty));\n                var totalPrice = (finalUnit * qty).toFixed(2);\n                var discount   = getDiscount(qty);\n                var activeType = container.find('.pcd-type-button.active').data('type');\n\n                \/\/ Add to Cart button\n                addToCartBtn.text('ADD TO CART - $' + totalPrice);\n\n                \/\/ Total price display\n                if (discount > 0) {\n                    priceDisplay.html('Total: <del style=\"color:red;font-weight:400;\">$' + (unitPrice * qty).toFixed(2) + '<\/del> $' + totalPrice);\n                    priceDisplayMsg.show();\n                } else {\n                    priceDisplay.html('Total: $' + totalPrice);\n                    priceDisplayMsg.hide();\n                }\n\n                \/\/ Active button price with strikethrough\n                var priceHtml = discount > 0\n                    ? '<del style=\"color:red;\">$' + unitPrice.toFixed(2) + '<\/del> $' + finalUnit.toFixed(2)\n                    : '$' + finalUnit.toFixed(2);\n                container.find('.pcd-type-button.active .pack_carton_price').html(priceHtml);\n\n                \/\/ Sync swatch highlight \u2014 highest matching, never disappears\n                if (activeType) syncSwatches(activeType.toLowerCase(), qty);\n            }\n\n            \/\/ Pack\/Carton type switch\n            container.find('.pcd-type-button').off('click').on('click', function(){\n                container.find('.pcd-type-button').removeClass('active');\n                $(this).addClass('active');\n                selectedType = $(this).data('type');\n\n                container.find('.pcd-discount-group').hide();\n                container.find('.pcd-discount-' + selectedType.toLowerCase()).css({display:'flex'});\n\n                \/\/ Reset inactive button prices\n                container.find('.pcd-type-button').not('.active').each(function(){\n                    $(this).find('.pack_carton_price').html('$' + parseFloat($(this).data('price')).toFixed(2));\n                });\n\n                \/\/ Set first qty of new type\n                var firstQtyBtn = container.find('.pcd-discount-' + selectedType.toLowerCase() + ' .pcd-discount-qty');\n                var firstQty    = parseInt(firstQtyBtn.first().data('qty'), 10) || 1;\n                quantityInput.val(firstQty);\n                updatePriceDisplay();\n            });\n\n            \/\/ Swatch click \u2014 set qty, updatePriceDisplay handles highlight\n            container.find('.pcd-discount-qty').off('click').on('click', function(){\n                quantityInput.val(parseInt($(this).data('qty'), 10) || 1);\n                updatePriceDisplay();\n            });\n\n            \/\/ Minus\n            container.find('.pcd-qty-btn.minus').off('click').on('click', function(){\n                var v = parseInt(quantityInput.val(), 10) || 1;\n                if (v > 1) quantityInput.val(v - 1).trigger('change');\n            });\n\n            \/\/ Plus\n            container.find('.pcd-qty-btn.plus').off('click').on('click', function(){\n                var v = parseInt(quantityInput.val(), 10) || 1;\n                quantityInput.val(v + 1).trigger('change');\n            });\n\n            \/\/ Manual input\n            quantityInput.off('change keyup').on('change keyup', function(){\n                var val = parseInt($(this).val(), 10);\n                setTimeout(function(){ if (isNaN(val) || val < 1) quantityInput.val(1); }, 500);\n                updatePriceDisplay();\n            });\n\n            \/\/ Add to Cart\n            addToCartBtn.off('click').on('click', function(e){\n                e.preventDefault();\n                var qty        = parseInt(quantityInput.val(), 10) || 1;\n                var unitPrice  = parseFloat(container.find('.pcd-type-button.active').data('price')) || 0;\n                var finalPrice = calculatePrice(unitPrice, qty);\n                var purchType  = container.find('.pcd-type-button.active').data('type') || selectedType;\n\n                var data = {\n                    action:        'pcd_ajax_add_to_cart',\n                    product_id:    productId,\n                    quantity:      qty,\n                    purchase_type: purchType,\n                    custom_price:  finalPrice\n                };\n\n                addToCartBtn.prop('disabled', true).text('Adding...');\n\n                $.post('https:\/\/staging.nativenic.com\/wp-admin\/admin-ajax.php', data, function(response){\n                    if (response.success) {\n                        $(document.body).trigger('wc_fragment_refresh');\n                        addToCartBtn.text('Added!');\n                        var cartSidebar  = document.querySelector('.cart-widget-side.wd-side-hidden.wd-right');\n                        var cartBackdrop = document.querySelector('.wd-close-side.wd-fill');\n                        if (cartSidebar)  cartSidebar.classList.add('wd-opened');\n                        if (cartBackdrop) cartBackdrop.classList.add('wd-close-side-opened');\n                        setTimeout(function(){\n                            updatePriceDisplay();\n                            addToCartBtn.prop('disabled', false);\n                        }, 1500);\n                    } else {\n                        addToCartBtn.prop('disabled', false);\n                        updatePriceDisplay();\n                    }\n                }).fail(function(){\n                    addToCartBtn.prop('disabled', false);\n                    updatePriceDisplay();\n                });\n            });\n\n            updatePriceDisplay();\n        }\n\n        $('.pcd-container').each(function(){\n            initPCDContainer($(this));\n        });\n\n    });\n    <\/script>\n    \n\t\t\t\t<div class=\"wd-product-card-hover fade-in-block wd-scroll\">\n\t\t\t\t\t\t\n\t\t\t\t\t<\/div>\n\t<\/div>\n<\/div>\n<\/div>\n\t\t\t\t\t\t\t\t<div class=\"wd-product wd-col wd-hover-fw-button wd-hover-with-fade product-grid-item product type-product post-34007 status-publish first instock product_cat-cigarettes product_cat-rollies-bags-cigarettes product_tag-200-count product_tag-bulk-cigarettes product_tag-economical-smoking product_tag-full-strength product_tag-heavy-smoker product_tag-native-tobacco has-post-thumbnail shipping-taxable purchasable product-type-simple\" data-loop=\"4\" data-id=\"34007\">\n\t\n<div class=\"wd-product-wrapper product-wrapper\">\n\t<div class=\"wd-product-card-bg content-product-imagin\"><\/div>\n\t<div class=\"wd-product-thumb product-element-top wd-quick-shop\">\n\t\t<a href=\"https:\/\/staging.nativenic.com\/fr\/produit\/rollies-full-flavour-bag-of-200\/\" class=\"wd-product-img-link product-image-link\" tabindex=\"-1\" aria-label=\"Rollies Full (Bag of 200)\">\n\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"800\" src=\"https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/03\/Rollies-Full-800x800.jpg\" class=\"attachment-large size-large\" alt=\"Rollies Full 200-count bag of native cigarettes \u2013 buy online at NativeNic Canada\" srcset=\"https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/03\/Rollies-Full-800x800.jpg 800w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/03\/Rollies-Full-300x300.jpg 300w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/03\/Rollies-Full-150x150.jpg 150w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/03\/Rollies-Full-768x768.jpg 768w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/03\/Rollies-Full-1536x1536.jpg 1536w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/03\/Rollies-Full-60x60.jpg 60w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/03\/Rollies-Full-430x430.jpg 430w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/03\/Rollies-Full-700x700.jpg 700w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/03\/Rollies-Full.jpg 1950w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><div class=\"br_alabel br_alabel_image br_alabel_type_text br_alabel_template_type_css br_alabel_right berocket_alabel_id_34119 \" style=\"\"><span  style=\"\"><i style=\"background-color: #f16543; border-color: #f16543;\" class=\"template-span-before \"><\/i><i style=\"background-color: #f16543; border-color: #f16543;\" class=\"template-i \"><\/i><i style=\"background-color: #f16543; border-color: #f16543;\" class=\"template-i-before \"><\/i><i style=\"background-color: #f16543; border-color: #f16543;\" class=\"template-i-after \"><\/i><b>BEST VALUE<\/b><\/span><\/div>\t\t<\/a>\n\n\t\t\n\t\t<div class=\"wd-buttons wd-pos-r-t\">\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"wd-quick-view-btn wd-quick-view-icon wd-action-btn wd-style-icon\">\n\t\t\t<a\n\t\t\t\thref=\"https:\/\/staging.nativenic.com\/fr\/produit\/rollies-full-flavour-bag-of-200\/\"\n\t\t\t\tclass=\"open-quick-view\"\n\t\t\t\trel=\"nofollow\"\n\t\t\t\tdata-id=\"34007\"\n\t\t\t\t>\n\t\t\t\t\t<span class=\"wd-action-icon\"><\/span>\n\t\t\t\t\t<span class=\"wd-action-text\">\n\t\t\t\t\t\tQuick view\t\t\t\t\t<\/span>\n\t\t\t<\/a>\n\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t<\/div>\n\n\t<div class=\"product-element-bottom\">\n\n\t\t<h3 class=\"wd-entities-title\"><a href=\"https:\/\/staging.nativenic.com\/fr\/produit\/rollies-full-flavour-bag-of-200\/\">Rollies Full (Bag of 200)<\/a><\/h3>\n\t\t\t\t<div class=\"wd-product-cats\">\n\t\t\t\t\t\t<a href=\"https:\/\/staging.nativenic.com\/fr\/categorie-produit\/cigarettes\/\" rel=\"tag\">Native Cigarettes<\/a><span class=\"wd-meta-sep\">,<\/span> <a href=\"https:\/\/staging.nativenic.com\/fr\/categorie-produit\/rollies-bags-cigarettes\/\" rel=\"tag\">Rollies Bags<\/a>\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"wd-star-rating\">\n\t\t\n\t\t\t\t<div class=\"star-rating\" role=\"img\" aria-label=\"Note 0 sur 5\">\n\t\t\t\t\t<span style=\"width:0%\">\n\t\t\tNote <strong class=\"rating\">0<\/strong> sur 5\t\t<\/span>\n\t\t\t\t<\/div>\n\n\t\t\t\t<a href=\"https:\/\/staging.nativenic.com\/fr\/produit\/rollies-full-flavour-bag-of-200\/#reviews\" class=\"woocommerce-review-link\" rel=\"nofollow\">\n\t\t\t(0)\n\t\t<\/a>\n\t\t\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\n\t\t\n\t\t<div class=\"wrap-price\">\n\t\t\t\n\t<span class=\"price\"><span class=\"woocommerce-Price-amount amount\"><bdi><span class=\"woocommerce-Price-currencySymbol\">&#36;<\/span>4.00<\/bdi><\/span><\/span>\n\n\t\t\t\t\t<\/div>\n\n\t\t<div class=\"wd-add-btn wd-add-btn-replace\">\n\t\t\t\n\t\t\t<a href=\"\/fr\/wp-json\/wp\/v2\/pages\/30587?add-to-cart=34007\" aria-describedby=\"woocommerce_loop_add_to_cart_link_describedby_34007\" data-quantity=\"1\" class=\"button product_type_simple add_to_cart_button ajax_add_to_cart pcd-add-to-cart-btn add-to-cart-loop\" data-product_id=\"34007\" data-product_sku=\"\" aria-label=\"Ajouter au panier\u00a0: &ldquo;Rollies Full (Bag of 200)&rdquo;\" rel=\"nofollow\" data-success_message=\"\u00ab\u00a0Rollies Full (Bag of 200)\u00a0\u00bb a \u00e9t\u00e9 ajout\u00e9 \u00e0 votre panier\" role=\"button\"><span class=\"wd-action-icon\"><span class=\"wd-check-icon\"><\/span><\/span><span class=\"wd-action-text\">Ajouter au panier<\/span><\/a>\t<span id=\"woocommerce_loop_add_to_cart_link_describedby_34007\" class=\"screen-reader-text\">\n\t\t\t<\/span>\n\t\t<\/div>\n\n\t\t<div class=\"pcd-container pcd-container-price-hide\"\n     data-product_id=\"34007\"\n     data-discounts-pack='[{\"quantity\":1,\"discount\":0},{\"quantity\":2,\"discount\":0},{\"quantity\":5,\"discount\":0},{\"quantity\":10,\"discount\":0}]'\n     data-discounts-carton='[{\"quantity\":4,\"discount\":0},{\"quantity\":5,\"discount\":20},{\"quantity\":10,\"discount\":22.85},{\"quantity\":20,\"discount\":28}]'>\n\n    <div class=\"pcd-type-select\">\n                            <button class=\"pcd-type-button active\" data-type=\"Carton\" data-price=\"25.0\">\n                <span>CARTON<\/span>\n                <span class=\"pack_carton_price\">$25.0<\/span>\n            <\/button>\n            <\/div>\n    <input type=\"hidden\" name=\"custom_price\" class=\"custom_price\" value=\"...\">\n\n    <div class=\"pcd-discount-info\">\n        <div class='pcd-discount-group pcd-discount-pack' style='display:none;'><div class='pcd-discount-qty active' data-type='pack' data-qty='1'>1<\/div><div class='pcd-discount-qty ' data-type='pack' data-qty='2'>2<\/div><div class='pcd-discount-qty ' data-type='pack' data-qty='5'>5<\/div><div class='pcd-discount-qty ' data-type='pack' data-qty='10'>10<\/div><\/div><div class='pcd-discount-group pcd-discount-carton' style='display:none;'><div class='pcd-discount-qty active' data-type='carton' data-qty='4'>4<\/div><div class='pcd-discount-qty ' data-type='carton' data-qty='5'>5<\/div><div class='pcd-discount-qty ' data-type='carton' data-qty='10'>10<\/div><div class='pcd-discount-qty ' data-type='carton' data-qty='20'>20<\/div><\/div>    <\/div>\n\n    <div class=\"pcd-add-to-cart-row\">\n        <div class=\"pcd-qty-input-box\">\n            <button class=\"pcd-qty-btn minus\">\u2212<\/button>\n            <input type=\"number\" min=\"1\" step=\"1\" value=\"1\" class=\"pcd-qty-input\" \/>\n            <button class=\"pcd-qty-btn plus\">+<\/button>\n        <\/div>\n        <button class=\"pcd-add-to-cart-btn\">Add to Cart<\/button>\n    <\/div>\n\n    <div class=\"pcd-price-display\" style=\"margin-top:5px;font-weight:bold;text-align:center;\"><\/div>\n    <div class=\"pcd-price-display_msg\" style=\"margin-top:5px;font-weight:bold;text-align:center;color:green;font-size:12px;display:none;\">QUANTITY DISCOUNT<\/div>\n<\/div>\n    <script>\n    jQuery(function($) {\n\n        function initPCDContainer(container) {\n            if (container.data('pcd-initialized')) return;\n            container.data('pcd-initialized', true);\n\n            container.parent().find('.wd-add-btn').remove();\n            $('.pcd-container-price-hide').parent().find('.price .woocommerce-Price-amount').hide();\n            $('.wd-product.product-type-variable .wd-add-btn').filter(function () {\n                return $(this).siblings('.wd-product-sku').length > 0;\n            }).css({'margin-bottom': '10px'});\n\n            var selectedTypeBtn = container.find('.pcd-type-button.active');\n            var selectedType    = selectedTypeBtn.data('type');\n            var quantityInput   = container.find('.pcd-qty-input');\n            var addToCartBtn    = container.find('.pcd-add-to-cart-btn');\n            var priceDisplay    = container.find('.pcd-price-display');\n            var priceDisplayMsg = container.find('.pcd-price-display_msg');\n            var productId       = container.data('product_id');\n\n            \/\/ Show active type's discount group on init\n            if (selectedType) {\n                container.find('.pcd-discount-group').hide();\n                container.find('.pcd-discount-' + selectedType.toLowerCase()).css({display:'flex'});\n\n                \/\/ Set default qty to 5 if Carton & 5 exists\n                if (selectedType === 'Carton') {\n                    var cGroup  = container.find('.pcd-discount-carton');\n                    var qtyBtns = cGroup.find('.pcd-discount-qty');\n                    qtyBtns.removeClass('active');\n                    var qty5 = qtyBtns.filter(function(){ return parseInt($(this).data('qty')) === 5; });\n                    if (qty5.length) { qty5.addClass('active'); quantityInput.val(5); }\n                    else { qtyBtns.first().addClass('active'); quantityInput.val(parseInt(qtyBtns.first().data('qty')) || 1); }\n                }\n            }\n\n            function getDiscount(qty) {\n                var type = container.find('.pcd-type-button.active').data('type');\n                if (!type) return 0;\n                type = type.toLowerCase();\n                var dataAttr = type === 'carton' ? 'data-discounts-carton' : 'data-discounts-pack';\n                var packages = [];\n                try { packages = JSON.parse(container[0].getAttribute(dataAttr) || '[]'); } catch(e){ return 0; }\n                var discount = 0;\n                packages.forEach(function(pkg){\n                    if (qty >= parseFloat(pkg.quantity)) discount = parseFloat(pkg.discount) \/ 100;\n                });\n                return discount;\n            }\n\n            function calculatePrice(unitPrice, qty) {\n                return (unitPrice * (1 - getDiscount(qty))).toFixed(2);\n            }\n\n            \/\/ Always keep highest matching swatch highlighted; fallback to first\n            function syncSwatches(activeTypeLower, currentQty) {\n                var $group    = container.find('.pcd-discount-' + activeTypeLower);\n                var $swatches = $group.find('.pcd-discount-qty');\n                $swatches.removeClass('active');\n                var $best = null;\n                $swatches.each(function(){\n                    if (parseInt($(this).data('qty'), 10) <= currentQty) $best = $(this);\n                });\n                if ($best) $best.addClass('active');\n                else $swatches.first().addClass('active');\n            }\n\n            function updatePriceDisplay() {\n                var qty        = parseInt(quantityInput.val(), 10) || 1;\n                var unitPrice  = parseFloat(container.find('.pcd-type-button.active').data('price')) || 0;\n                var finalUnit  = parseFloat(calculatePrice(unitPrice, qty));\n                var totalPrice = (finalUnit * qty).toFixed(2);\n                var discount   = getDiscount(qty);\n                var activeType = container.find('.pcd-type-button.active').data('type');\n\n                \/\/ Add to Cart button\n                addToCartBtn.text('ADD TO CART - $' + totalPrice);\n\n                \/\/ Total price display\n                if (discount > 0) {\n                    priceDisplay.html('Total: <del style=\"color:red;font-weight:400;\">$' + (unitPrice * qty).toFixed(2) + '<\/del> $' + totalPrice);\n                    priceDisplayMsg.show();\n                } else {\n                    priceDisplay.html('Total: $' + totalPrice);\n                    priceDisplayMsg.hide();\n                }\n\n                \/\/ Active button price with strikethrough\n                var priceHtml = discount > 0\n                    ? '<del style=\"color:red;\">$' + unitPrice.toFixed(2) + '<\/del> $' + finalUnit.toFixed(2)\n                    : '$' + finalUnit.toFixed(2);\n                container.find('.pcd-type-button.active .pack_carton_price').html(priceHtml);\n\n                \/\/ Sync swatch highlight \u2014 highest matching, never disappears\n                if (activeType) syncSwatches(activeType.toLowerCase(), qty);\n            }\n\n            \/\/ Pack\/Carton type switch\n            container.find('.pcd-type-button').off('click').on('click', function(){\n                container.find('.pcd-type-button').removeClass('active');\n                $(this).addClass('active');\n                selectedType = $(this).data('type');\n\n                container.find('.pcd-discount-group').hide();\n                container.find('.pcd-discount-' + selectedType.toLowerCase()).css({display:'flex'});\n\n                \/\/ Reset inactive button prices\n                container.find('.pcd-type-button').not('.active').each(function(){\n                    $(this).find('.pack_carton_price').html('$' + parseFloat($(this).data('price')).toFixed(2));\n                });\n\n                \/\/ Set first qty of new type\n                var firstQtyBtn = container.find('.pcd-discount-' + selectedType.toLowerCase() + ' .pcd-discount-qty');\n                var firstQty    = parseInt(firstQtyBtn.first().data('qty'), 10) || 1;\n                quantityInput.val(firstQty);\n                updatePriceDisplay();\n            });\n\n            \/\/ Swatch click \u2014 set qty, updatePriceDisplay handles highlight\n            container.find('.pcd-discount-qty').off('click').on('click', function(){\n                quantityInput.val(parseInt($(this).data('qty'), 10) || 1);\n                updatePriceDisplay();\n            });\n\n            \/\/ Minus\n            container.find('.pcd-qty-btn.minus').off('click').on('click', function(){\n                var v = parseInt(quantityInput.val(), 10) || 1;\n                if (v > 1) quantityInput.val(v - 1).trigger('change');\n            });\n\n            \/\/ Plus\n            container.find('.pcd-qty-btn.plus').off('click').on('click', function(){\n                var v = parseInt(quantityInput.val(), 10) || 1;\n                quantityInput.val(v + 1).trigger('change');\n            });\n\n            \/\/ Manual input\n            quantityInput.off('change keyup').on('change keyup', function(){\n                var val = parseInt($(this).val(), 10);\n                setTimeout(function(){ if (isNaN(val) || val < 1) quantityInput.val(1); }, 500);\n                updatePriceDisplay();\n            });\n\n            \/\/ Add to Cart\n            addToCartBtn.off('click').on('click', function(e){\n                e.preventDefault();\n                var qty        = parseInt(quantityInput.val(), 10) || 1;\n                var unitPrice  = parseFloat(container.find('.pcd-type-button.active').data('price')) || 0;\n                var finalPrice = calculatePrice(unitPrice, qty);\n                var purchType  = container.find('.pcd-type-button.active').data('type') || selectedType;\n\n                var data = {\n                    action:        'pcd_ajax_add_to_cart',\n                    product_id:    productId,\n                    quantity:      qty,\n                    purchase_type: purchType,\n                    custom_price:  finalPrice\n                };\n\n                addToCartBtn.prop('disabled', true).text('Adding...');\n\n                $.post('https:\/\/staging.nativenic.com\/wp-admin\/admin-ajax.php', data, function(response){\n                    if (response.success) {\n                        $(document.body).trigger('wc_fragment_refresh');\n                        addToCartBtn.text('Added!');\n                        var cartSidebar  = document.querySelector('.cart-widget-side.wd-side-hidden.wd-right');\n                        var cartBackdrop = document.querySelector('.wd-close-side.wd-fill');\n                        if (cartSidebar)  cartSidebar.classList.add('wd-opened');\n                        if (cartBackdrop) cartBackdrop.classList.add('wd-close-side-opened');\n                        setTimeout(function(){\n                            updatePriceDisplay();\n                            addToCartBtn.prop('disabled', false);\n                        }, 1500);\n                    } else {\n                        addToCartBtn.prop('disabled', false);\n                        updatePriceDisplay();\n                    }\n                }).fail(function(){\n                    addToCartBtn.prop('disabled', false);\n                    updatePriceDisplay();\n                });\n            });\n\n            updatePriceDisplay();\n        }\n\n        $('.pcd-container').each(function(){\n            initPCDContainer($(this));\n        });\n\n    });\n    <\/script>\n    \n\t\t\t\t<div class=\"wd-product-card-hover fade-in-block wd-scroll\">\n\t\t\t\t\t\t\n\t\t\t\t\t<\/div>\n\t<\/div>\n<\/div>\n<\/div>\n\t\t\t\t\t\t\t\t<div class=\"wd-product wd-col wd-hover-fw-button wd-hover-with-fade product-grid-item product type-product post-30866 status-publish instock product_cat-nicotine-pouches product_tag-11mg product_tag-13-flavours product_tag-experienced product_tag-flavours product_tag-nicotine-pouches product_tag-pouches product_tag-step-up product_tag-zyn has-post-thumbnail shipping-taxable purchasable product-type-variable\" data-loop=\"5\" data-id=\"30866\">\n\t\n<div class=\"wd-product-wrapper product-wrapper\">\n\t<div class=\"wd-product-card-bg content-product-imagin\"><\/div>\n\t<div class=\"wd-product-thumb product-element-top wd-quick-shop\">\n\t\t<a href=\"https:\/\/staging.nativenic.com\/fr\/produit\/zyn-11mg\/\" class=\"wd-product-img-link product-image-link\" tabindex=\"-1\" aria-label=\"Zyn 11mg\">\n\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"800\" src=\"https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/02\/3-4-800x800.jpg\" class=\"attachment-large size-large\" alt=\"Zyn 20mg nicotine pouches tin \u2013 buy online at NativeNic Canada\" srcset=\"https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/02\/3-4-800x800.jpg 800w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/02\/3-4-300x300.jpg 300w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/02\/3-4-150x150.jpg 150w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/02\/3-4-768x768.jpg 768w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/02\/3-4-60x60.jpg 60w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/02\/3-4-430x430.jpg 430w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/02\/3-4-700x700.jpg 700w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/02\/3-4.jpg 1080w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/>\t\t<\/a>\n\n\t\t\n\t\t<div class=\"wd-buttons wd-pos-r-t\">\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"wd-quick-view-btn wd-quick-view-icon wd-action-btn wd-style-icon\">\n\t\t\t<a\n\t\t\t\thref=\"https:\/\/staging.nativenic.com\/fr\/produit\/zyn-11mg\/\"\n\t\t\t\tclass=\"open-quick-view\"\n\t\t\t\trel=\"nofollow\"\n\t\t\t\tdata-id=\"30866\"\n\t\t\t\t>\n\t\t\t\t\t<span class=\"wd-action-icon\"><\/span>\n\t\t\t\t\t<span class=\"wd-action-text\">\n\t\t\t\t\t\tQuick view\t\t\t\t\t<\/span>\n\t\t\t<\/a>\n\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t<\/div>\n\n\t<div class=\"product-element-bottom\">\n\n\t\t<h3 class=\"wd-entities-title\"><a href=\"https:\/\/staging.nativenic.com\/fr\/produit\/zyn-11mg\/\">Zyn 11mg<\/a><\/h3>\n\t\t\t\t<div class=\"wd-product-cats\">\n\t\t\t\t\t\t<a href=\"https:\/\/staging.nativenic.com\/fr\/categorie-produit\/nicotine-pouches\/\" rel=\"tag\">Nicotine Pouches<\/a>\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"wd-star-rating\">\n\t\t\n\t\t\t\t<div class=\"star-rating\" role=\"img\" aria-label=\"Note 0 sur 5\">\n\t\t\t\t\t<span style=\"width:0%\">\n\t\t\tNote <strong class=\"rating\">0<\/strong> sur 5\t\t<\/span>\n\t\t\t\t<\/div>\n\n\t\t\t\t<a href=\"https:\/\/staging.nativenic.com\/fr\/produit\/zyn-11mg\/#reviews\" class=\"woocommerce-review-link\" rel=\"nofollow\">\n\t\t\t(0)\n\t\t<\/a>\n\t\t\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\n\t\t\n\t\t<div class=\"wrap-price\">\n\t\t\t\n\t<span class=\"price\"><span class=\"woocommerce-Price-amount amount\"><bdi><span class=\"woocommerce-Price-currencySymbol\">&#36;<\/span>12.99<\/bdi><\/span><\/span>\n\n\t\t\t\t\t<\/div>\n\n\t\t<div class=\"wd-add-btn wd-add-btn-replace\">\n\t\t\t\n\t\t\t<a href=\"https:\/\/staging.nativenic.com\/fr\/produit\/zyn-11mg\/\" aria-describedby=\"woocommerce_loop_add_to_cart_link_describedby_30866\" data-quantity=\"1\" class=\"button product_type_variable add_to_cart_button pcd-add-to-cart-btn add-to-cart-loop\" data-product_id=\"30866\" data-product_sku=\"\" aria-label=\"S\u00e9lectionner les options pour &ldquo;Zyn 11mg&rdquo;\" rel=\"nofollow\"><span class=\"wd-action-icon\"><span class=\"wd-check-icon\"><\/span><\/span><span class=\"wd-action-text\">Choix des options<\/span><\/a>\t<span id=\"woocommerce_loop_add_to_cart_link_describedby_30866\" class=\"screen-reader-text\">\n\t\tCe produit a plusieurs variations. Les options peuvent \u00eatre choisies sur la page du produit\t<\/span>\n\t\t<\/div>\n\n\t\t    <script>\n    jQuery(function($) {\n\n        function initPCDContainer(container) {\n            if (container.data('pcd-initialized')) return;\n            container.data('pcd-initialized', true);\n\n            container.parent().find('.wd-add-btn').remove();\n            $('.pcd-container-price-hide').parent().find('.price .woocommerce-Price-amount').hide();\n            $('.wd-product.product-type-variable .wd-add-btn').filter(function () {\n                return $(this).siblings('.wd-product-sku').length > 0;\n            }).css({'margin-bottom': '10px'});\n\n            var selectedTypeBtn = container.find('.pcd-type-button.active');\n            var selectedType    = selectedTypeBtn.data('type');\n            var quantityInput   = container.find('.pcd-qty-input');\n            var addToCartBtn    = container.find('.pcd-add-to-cart-btn');\n            var priceDisplay    = container.find('.pcd-price-display');\n            var priceDisplayMsg = container.find('.pcd-price-display_msg');\n            var productId       = container.data('product_id');\n\n            \/\/ Show active type's discount group on init\n            if (selectedType) {\n                container.find('.pcd-discount-group').hide();\n                container.find('.pcd-discount-' + selectedType.toLowerCase()).css({display:'flex'});\n\n                \/\/ Set default qty to 5 if Carton & 5 exists\n                if (selectedType === 'Carton') {\n                    var cGroup  = container.find('.pcd-discount-carton');\n                    var qtyBtns = cGroup.find('.pcd-discount-qty');\n                    qtyBtns.removeClass('active');\n                    var qty5 = qtyBtns.filter(function(){ return parseInt($(this).data('qty')) === 5; });\n                    if (qty5.length) { qty5.addClass('active'); quantityInput.val(5); }\n                    else { qtyBtns.first().addClass('active'); quantityInput.val(parseInt(qtyBtns.first().data('qty')) || 1); }\n                }\n            }\n\n            function getDiscount(qty) {\n                var type = container.find('.pcd-type-button.active').data('type');\n                if (!type) return 0;\n                type = type.toLowerCase();\n                var dataAttr = type === 'carton' ? 'data-discounts-carton' : 'data-discounts-pack';\n                var packages = [];\n                try { packages = JSON.parse(container[0].getAttribute(dataAttr) || '[]'); } catch(e){ return 0; }\n                var discount = 0;\n                packages.forEach(function(pkg){\n                    if (qty >= parseFloat(pkg.quantity)) discount = parseFloat(pkg.discount) \/ 100;\n                });\n                return discount;\n            }\n\n            function calculatePrice(unitPrice, qty) {\n                return (unitPrice * (1 - getDiscount(qty))).toFixed(2);\n            }\n\n            \/\/ Always keep highest matching swatch highlighted; fallback to first\n            function syncSwatches(activeTypeLower, currentQty) {\n                var $group    = container.find('.pcd-discount-' + activeTypeLower);\n                var $swatches = $group.find('.pcd-discount-qty');\n                $swatches.removeClass('active');\n                var $best = null;\n                $swatches.each(function(){\n                    if (parseInt($(this).data('qty'), 10) <= currentQty) $best = $(this);\n                });\n                if ($best) $best.addClass('active');\n                else $swatches.first().addClass('active');\n            }\n\n            function updatePriceDisplay() {\n                var qty        = parseInt(quantityInput.val(), 10) || 1;\n                var unitPrice  = parseFloat(container.find('.pcd-type-button.active').data('price')) || 0;\n                var finalUnit  = parseFloat(calculatePrice(unitPrice, qty));\n                var totalPrice = (finalUnit * qty).toFixed(2);\n                var discount   = getDiscount(qty);\n                var activeType = container.find('.pcd-type-button.active').data('type');\n\n                \/\/ Add to Cart button\n                addToCartBtn.text('ADD TO CART - $' + totalPrice);\n\n                \/\/ Total price display\n                if (discount > 0) {\n                    priceDisplay.html('Total: <del style=\"color:red;font-weight:400;\">$' + (unitPrice * qty).toFixed(2) + '<\/del> $' + totalPrice);\n                    priceDisplayMsg.show();\n                } else {\n                    priceDisplay.html('Total: $' + totalPrice);\n                    priceDisplayMsg.hide();\n                }\n\n                \/\/ Active button price with strikethrough\n                var priceHtml = discount > 0\n                    ? '<del style=\"color:red;\">$' + unitPrice.toFixed(2) + '<\/del> $' + finalUnit.toFixed(2)\n                    : '$' + finalUnit.toFixed(2);\n                container.find('.pcd-type-button.active .pack_carton_price').html(priceHtml);\n\n                \/\/ Sync swatch highlight \u2014 highest matching, never disappears\n                if (activeType) syncSwatches(activeType.toLowerCase(), qty);\n            }\n\n            \/\/ Pack\/Carton type switch\n            container.find('.pcd-type-button').off('click').on('click', function(){\n                container.find('.pcd-type-button').removeClass('active');\n                $(this).addClass('active');\n                selectedType = $(this).data('type');\n\n                container.find('.pcd-discount-group').hide();\n                container.find('.pcd-discount-' + selectedType.toLowerCase()).css({display:'flex'});\n\n                \/\/ Reset inactive button prices\n                container.find('.pcd-type-button').not('.active').each(function(){\n                    $(this).find('.pack_carton_price').html('$' + parseFloat($(this).data('price')).toFixed(2));\n                });\n\n                \/\/ Set first qty of new type\n                var firstQtyBtn = container.find('.pcd-discount-' + selectedType.toLowerCase() + ' .pcd-discount-qty');\n                var firstQty    = parseInt(firstQtyBtn.first().data('qty'), 10) || 1;\n                quantityInput.val(firstQty);\n                updatePriceDisplay();\n            });\n\n            \/\/ Swatch click \u2014 set qty, updatePriceDisplay handles highlight\n            container.find('.pcd-discount-qty').off('click').on('click', function(){\n                quantityInput.val(parseInt($(this).data('qty'), 10) || 1);\n                updatePriceDisplay();\n            });\n\n            \/\/ Minus\n            container.find('.pcd-qty-btn.minus').off('click').on('click', function(){\n                var v = parseInt(quantityInput.val(), 10) || 1;\n                if (v > 1) quantityInput.val(v - 1).trigger('change');\n            });\n\n            \/\/ Plus\n            container.find('.pcd-qty-btn.plus').off('click').on('click', function(){\n                var v = parseInt(quantityInput.val(), 10) || 1;\n                quantityInput.val(v + 1).trigger('change');\n            });\n\n            \/\/ Manual input\n            quantityInput.off('change keyup').on('change keyup', function(){\n                var val = parseInt($(this).val(), 10);\n                setTimeout(function(){ if (isNaN(val) || val < 1) quantityInput.val(1); }, 500);\n                updatePriceDisplay();\n            });\n\n            \/\/ Add to Cart\n            addToCartBtn.off('click').on('click', function(e){\n                e.preventDefault();\n                var qty        = parseInt(quantityInput.val(), 10) || 1;\n                var unitPrice  = parseFloat(container.find('.pcd-type-button.active').data('price')) || 0;\n                var finalPrice = calculatePrice(unitPrice, qty);\n                var purchType  = container.find('.pcd-type-button.active').data('type') || selectedType;\n\n                var data = {\n                    action:        'pcd_ajax_add_to_cart',\n                    product_id:    productId,\n                    quantity:      qty,\n                    purchase_type: purchType,\n                    custom_price:  finalPrice\n                };\n\n                addToCartBtn.prop('disabled', true).text('Adding...');\n\n                $.post('https:\/\/staging.nativenic.com\/wp-admin\/admin-ajax.php', data, function(response){\n                    if (response.success) {\n                        $(document.body).trigger('wc_fragment_refresh');\n                        addToCartBtn.text('Added!');\n                        var cartSidebar  = document.querySelector('.cart-widget-side.wd-side-hidden.wd-right');\n                        var cartBackdrop = document.querySelector('.wd-close-side.wd-fill');\n                        if (cartSidebar)  cartSidebar.classList.add('wd-opened');\n                        if (cartBackdrop) cartBackdrop.classList.add('wd-close-side-opened');\n                        setTimeout(function(){\n                            updatePriceDisplay();\n                            addToCartBtn.prop('disabled', false);\n                        }, 1500);\n                    } else {\n                        addToCartBtn.prop('disabled', false);\n                        updatePriceDisplay();\n                    }\n                }).fail(function(){\n                    addToCartBtn.prop('disabled', false);\n                    updatePriceDisplay();\n                });\n            });\n\n            updatePriceDisplay();\n        }\n\n        $('.pcd-container').each(function(){\n            initPCDContainer($(this));\n        });\n\n    });\n    <\/script>\n    \n\t\t\t\t<div class=\"wd-product-card-hover fade-in-block wd-scroll\">\n\t\t\t\t\t\t\n\t\t\t\t\t<\/div>\n\t<\/div>\n<\/div>\n<\/div>\n\t\t\t\t\t\t\t\t<div class=\"wd-product wd-col wd-hover-fw-button wd-hover-with-fade product-grid-item product type-product post-30507 status-publish instock product_cat-cigarettes product_tag-budget product_tag-discount product_tag-fulls product_tag-king-size product_tag-native-cigarettes has-post-thumbnail shipping-taxable purchasable product-type-simple\" data-loop=\"6\" data-id=\"30507\">\n\t\n<div class=\"wd-product-wrapper product-wrapper\">\n\t<div class=\"wd-product-card-bg content-product-imagin\"><\/div>\n\t<div class=\"wd-product-thumb product-element-top wd-quick-shop\">\n\t\t<a href=\"https:\/\/staging.nativenic.com\/fr\/produit\/discount-fulls-king-size\/\" class=\"wd-product-img-link product-image-link\" tabindex=\"-1\" aria-label=\"Discount Fulls (King Size)\">\n\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"800\" src=\"https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Discount-Fulls-King-Size-800x800.jpg\" class=\"attachment-large size-large\" alt=\"Discount Fulls carton and pack \u2013 buy native cigarettes online at NativeNic Canada\" srcset=\"https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Discount-Fulls-King-Size-800x800.jpg 800w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Discount-Fulls-King-Size-300x300.jpg 300w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Discount-Fulls-King-Size-150x150.jpg 150w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Discount-Fulls-King-Size-768x768.jpg 768w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Discount-Fulls-King-Size-1536x1536.jpg 1536w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Discount-Fulls-King-Size-60x60.jpg 60w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Discount-Fulls-King-Size-430x430.jpg 430w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Discount-Fulls-King-Size-700x700.jpg 700w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Discount-Fulls-King-Size.jpg 2048w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/>\t\t<\/a>\n\n\t\t\n\t\t<div class=\"wd-buttons wd-pos-r-t\">\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"wd-quick-view-btn wd-quick-view-icon wd-action-btn wd-style-icon\">\n\t\t\t<a\n\t\t\t\thref=\"https:\/\/staging.nativenic.com\/fr\/produit\/discount-fulls-king-size\/\"\n\t\t\t\tclass=\"open-quick-view\"\n\t\t\t\trel=\"nofollow\"\n\t\t\t\tdata-id=\"30507\"\n\t\t\t\t>\n\t\t\t\t\t<span class=\"wd-action-icon\"><\/span>\n\t\t\t\t\t<span class=\"wd-action-text\">\n\t\t\t\t\t\tQuick view\t\t\t\t\t<\/span>\n\t\t\t<\/a>\n\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t<\/div>\n\n\t<div class=\"product-element-bottom\">\n\n\t\t<h3 class=\"wd-entities-title\"><a href=\"https:\/\/staging.nativenic.com\/fr\/produit\/discount-fulls-king-size\/\">Discount Fulls (King Size)<\/a><\/h3>\n\t\t\t\t<div class=\"wd-product-cats\">\n\t\t\t\t\t\t<a href=\"https:\/\/staging.nativenic.com\/fr\/categorie-produit\/cigarettes\/\" rel=\"tag\">Native Cigarettes<\/a>\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"wd-star-rating\">\n\t\t\n\t\t\t\t<div class=\"star-rating\" role=\"img\" aria-label=\"Note 4.75 sur 5\">\n\t\t\t\t\t<span style=\"width:95%\">\n\t\t\tNote <strong class=\"rating\">4.75<\/strong> sur 5\t\t<\/span>\n\t\t\t\t<\/div>\n\n\t\t\t\t<a href=\"https:\/\/staging.nativenic.com\/fr\/produit\/discount-fulls-king-size\/#reviews\" class=\"woocommerce-review-link\" rel=\"nofollow\">\n\t\t\t(44)\n\t\t<\/a>\n\t\t\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\n\t\t\n\t\t<div class=\"wrap-price\">\n\t\t\t\n\t<span class=\"price\"><span class=\"woocommerce-Price-amount amount\"><bdi><span class=\"woocommerce-Price-currencySymbol\">&#36;<\/span>4.00<\/bdi><\/span><\/span>\n\n\t\t\t\t\t<\/div>\n\n\t\t<div class=\"wd-add-btn wd-add-btn-replace\">\n\t\t\t\n\t\t\t<a href=\"\/fr\/wp-json\/wp\/v2\/pages\/30587?add-to-cart=30507\" aria-describedby=\"woocommerce_loop_add_to_cart_link_describedby_30507\" data-quantity=\"1\" class=\"button product_type_simple add_to_cart_button ajax_add_to_cart pcd-add-to-cart-btn add-to-cart-loop\" data-product_id=\"30507\" data-product_sku=\"\" aria-label=\"Ajouter au panier\u00a0: &ldquo;Discount Fulls (King Size)&rdquo;\" rel=\"nofollow\" data-success_message=\"\u00ab\u00a0Discount Fulls (King Size)\u00a0\u00bb a \u00e9t\u00e9 ajout\u00e9 \u00e0 votre panier\" role=\"button\"><span class=\"wd-action-icon\"><span class=\"wd-check-icon\"><\/span><\/span><span class=\"wd-action-text\">Ajouter au panier<\/span><\/a>\t<span id=\"woocommerce_loop_add_to_cart_link_describedby_30507\" class=\"screen-reader-text\">\n\t\t\t<\/span>\n\t\t<\/div>\n\n\t\t<div class=\"pcd-container pcd-container-price-hide\"\n     data-product_id=\"30507\"\n     data-discounts-pack='[{\"quantity\":1,\"discount\":0},{\"quantity\":2,\"discount\":0},{\"quantity\":5,\"discount\":0},{\"quantity\":10,\"discount\":0}]'\n     data-discounts-carton='[{\"quantity\":4,\"discount\":0},{\"quantity\":5,\"discount\":20},{\"quantity\":10,\"discount\":22.85},{\"quantity\":20,\"discount\":28}]'>\n\n    <div class=\"pcd-type-select\">\n                    <button class=\"pcd-type-button\" data-type=\"Pack\" data-price=\"4.0\">\n                <span>PACK<\/span>\n                <span class=\"pack_carton_price\">$4.0<\/span>\n            <\/button>\n                            <button class=\"pcd-type-button active\" data-type=\"Carton\" data-price=\"38.88\">\n                <span>CARTON<\/span>\n                <span class=\"pack_carton_price\">$38.88<\/span>\n            <\/button>\n            <\/div>\n    <input type=\"hidden\" name=\"custom_price\" class=\"custom_price\" value=\"...\">\n\n    <div class=\"pcd-discount-info\">\n        <div class='pcd-discount-group pcd-discount-pack' style='display:none;'><div class='pcd-discount-qty active' data-type='pack' data-qty='1'>1<\/div><div class='pcd-discount-qty ' data-type='pack' data-qty='2'>2<\/div><div class='pcd-discount-qty ' data-type='pack' data-qty='5'>5<\/div><div class='pcd-discount-qty ' data-type='pack' data-qty='10'>10<\/div><\/div><div class='pcd-discount-group pcd-discount-carton' style='display:none;'><div class='pcd-discount-qty active' data-type='carton' data-qty='4'>4<\/div><div class='pcd-discount-qty ' data-type='carton' data-qty='5'>5<\/div><div class='pcd-discount-qty ' data-type='carton' data-qty='10'>10<\/div><div class='pcd-discount-qty ' data-type='carton' data-qty='20'>20<\/div><\/div>    <\/div>\n\n    <div class=\"pcd-add-to-cart-row\">\n        <div class=\"pcd-qty-input-box\">\n            <button class=\"pcd-qty-btn minus\">\u2212<\/button>\n            <input type=\"number\" min=\"1\" step=\"1\" value=\"1\" class=\"pcd-qty-input\" \/>\n            <button class=\"pcd-qty-btn plus\">+<\/button>\n        <\/div>\n        <button class=\"pcd-add-to-cart-btn\">Add to Cart<\/button>\n    <\/div>\n\n    <div class=\"pcd-price-display\" style=\"margin-top:5px;font-weight:bold;text-align:center;\"><\/div>\n    <div class=\"pcd-price-display_msg\" style=\"margin-top:5px;font-weight:bold;text-align:center;color:green;font-size:12px;display:none;\">QUANTITY DISCOUNT<\/div>\n<\/div>\n    <script>\n    jQuery(function($) {\n\n        function initPCDContainer(container) {\n            if (container.data('pcd-initialized')) return;\n            container.data('pcd-initialized', true);\n\n            container.parent().find('.wd-add-btn').remove();\n            $('.pcd-container-price-hide').parent().find('.price .woocommerce-Price-amount').hide();\n            $('.wd-product.product-type-variable .wd-add-btn').filter(function () {\n                return $(this).siblings('.wd-product-sku').length > 0;\n            }).css({'margin-bottom': '10px'});\n\n            var selectedTypeBtn = container.find('.pcd-type-button.active');\n            var selectedType    = selectedTypeBtn.data('type');\n            var quantityInput   = container.find('.pcd-qty-input');\n            var addToCartBtn    = container.find('.pcd-add-to-cart-btn');\n            var priceDisplay    = container.find('.pcd-price-display');\n            var priceDisplayMsg = container.find('.pcd-price-display_msg');\n            var productId       = container.data('product_id');\n\n            \/\/ Show active type's discount group on init\n            if (selectedType) {\n                container.find('.pcd-discount-group').hide();\n                container.find('.pcd-discount-' + selectedType.toLowerCase()).css({display:'flex'});\n\n                \/\/ Set default qty to 5 if Carton & 5 exists\n                if (selectedType === 'Carton') {\n                    var cGroup  = container.find('.pcd-discount-carton');\n                    var qtyBtns = cGroup.find('.pcd-discount-qty');\n                    qtyBtns.removeClass('active');\n                    var qty5 = qtyBtns.filter(function(){ return parseInt($(this).data('qty')) === 5; });\n                    if (qty5.length) { qty5.addClass('active'); quantityInput.val(5); }\n                    else { qtyBtns.first().addClass('active'); quantityInput.val(parseInt(qtyBtns.first().data('qty')) || 1); }\n                }\n            }\n\n            function getDiscount(qty) {\n                var type = container.find('.pcd-type-button.active').data('type');\n                if (!type) return 0;\n                type = type.toLowerCase();\n                var dataAttr = type === 'carton' ? 'data-discounts-carton' : 'data-discounts-pack';\n                var packages = [];\n                try { packages = JSON.parse(container[0].getAttribute(dataAttr) || '[]'); } catch(e){ return 0; }\n                var discount = 0;\n                packages.forEach(function(pkg){\n                    if (qty >= parseFloat(pkg.quantity)) discount = parseFloat(pkg.discount) \/ 100;\n                });\n                return discount;\n            }\n\n            function calculatePrice(unitPrice, qty) {\n                return (unitPrice * (1 - getDiscount(qty))).toFixed(2);\n            }\n\n            \/\/ Always keep highest matching swatch highlighted; fallback to first\n            function syncSwatches(activeTypeLower, currentQty) {\n                var $group    = container.find('.pcd-discount-' + activeTypeLower);\n                var $swatches = $group.find('.pcd-discount-qty');\n                $swatches.removeClass('active');\n                var $best = null;\n                $swatches.each(function(){\n                    if (parseInt($(this).data('qty'), 10) <= currentQty) $best = $(this);\n                });\n                if ($best) $best.addClass('active');\n                else $swatches.first().addClass('active');\n            }\n\n            function updatePriceDisplay() {\n                var qty        = parseInt(quantityInput.val(), 10) || 1;\n                var unitPrice  = parseFloat(container.find('.pcd-type-button.active').data('price')) || 0;\n                var finalUnit  = parseFloat(calculatePrice(unitPrice, qty));\n                var totalPrice = (finalUnit * qty).toFixed(2);\n                var discount   = getDiscount(qty);\n                var activeType = container.find('.pcd-type-button.active').data('type');\n\n                \/\/ Add to Cart button\n                addToCartBtn.text('ADD TO CART - $' + totalPrice);\n\n                \/\/ Total price display\n                if (discount > 0) {\n                    priceDisplay.html('Total: <del style=\"color:red;font-weight:400;\">$' + (unitPrice * qty).toFixed(2) + '<\/del> $' + totalPrice);\n                    priceDisplayMsg.show();\n                } else {\n                    priceDisplay.html('Total: $' + totalPrice);\n                    priceDisplayMsg.hide();\n                }\n\n                \/\/ Active button price with strikethrough\n                var priceHtml = discount > 0\n                    ? '<del style=\"color:red;\">$' + unitPrice.toFixed(2) + '<\/del> $' + finalUnit.toFixed(2)\n                    : '$' + finalUnit.toFixed(2);\n                container.find('.pcd-type-button.active .pack_carton_price').html(priceHtml);\n\n                \/\/ Sync swatch highlight \u2014 highest matching, never disappears\n                if (activeType) syncSwatches(activeType.toLowerCase(), qty);\n            }\n\n            \/\/ Pack\/Carton type switch\n            container.find('.pcd-type-button').off('click').on('click', function(){\n                container.find('.pcd-type-button').removeClass('active');\n                $(this).addClass('active');\n                selectedType = $(this).data('type');\n\n                container.find('.pcd-discount-group').hide();\n                container.find('.pcd-discount-' + selectedType.toLowerCase()).css({display:'flex'});\n\n                \/\/ Reset inactive button prices\n                container.find('.pcd-type-button').not('.active').each(function(){\n                    $(this).find('.pack_carton_price').html('$' + parseFloat($(this).data('price')).toFixed(2));\n                });\n\n                \/\/ Set first qty of new type\n                var firstQtyBtn = container.find('.pcd-discount-' + selectedType.toLowerCase() + ' .pcd-discount-qty');\n                var firstQty    = parseInt(firstQtyBtn.first().data('qty'), 10) || 1;\n                quantityInput.val(firstQty);\n                updatePriceDisplay();\n            });\n\n            \/\/ Swatch click \u2014 set qty, updatePriceDisplay handles highlight\n            container.find('.pcd-discount-qty').off('click').on('click', function(){\n                quantityInput.val(parseInt($(this).data('qty'), 10) || 1);\n                updatePriceDisplay();\n            });\n\n            \/\/ Minus\n            container.find('.pcd-qty-btn.minus').off('click').on('click', function(){\n                var v = parseInt(quantityInput.val(), 10) || 1;\n                if (v > 1) quantityInput.val(v - 1).trigger('change');\n            });\n\n            \/\/ Plus\n            container.find('.pcd-qty-btn.plus').off('click').on('click', function(){\n                var v = parseInt(quantityInput.val(), 10) || 1;\n                quantityInput.val(v + 1).trigger('change');\n            });\n\n            \/\/ Manual input\n            quantityInput.off('change keyup').on('change keyup', function(){\n                var val = parseInt($(this).val(), 10);\n                setTimeout(function(){ if (isNaN(val) || val < 1) quantityInput.val(1); }, 500);\n                updatePriceDisplay();\n            });\n\n            \/\/ Add to Cart\n            addToCartBtn.off('click').on('click', function(e){\n                e.preventDefault();\n                var qty        = parseInt(quantityInput.val(), 10) || 1;\n                var unitPrice  = parseFloat(container.find('.pcd-type-button.active').data('price')) || 0;\n                var finalPrice = calculatePrice(unitPrice, qty);\n                var purchType  = container.find('.pcd-type-button.active').data('type') || selectedType;\n\n                var data = {\n                    action:        'pcd_ajax_add_to_cart',\n                    product_id:    productId,\n                    quantity:      qty,\n                    purchase_type: purchType,\n                    custom_price:  finalPrice\n                };\n\n                addToCartBtn.prop('disabled', true).text('Adding...');\n\n                $.post('https:\/\/staging.nativenic.com\/wp-admin\/admin-ajax.php', data, function(response){\n                    if (response.success) {\n                        $(document.body).trigger('wc_fragment_refresh');\n                        addToCartBtn.text('Added!');\n                        var cartSidebar  = document.querySelector('.cart-widget-side.wd-side-hidden.wd-right');\n                        var cartBackdrop = document.querySelector('.wd-close-side.wd-fill');\n                        if (cartSidebar)  cartSidebar.classList.add('wd-opened');\n                        if (cartBackdrop) cartBackdrop.classList.add('wd-close-side-opened');\n                        setTimeout(function(){\n                            updatePriceDisplay();\n                            addToCartBtn.prop('disabled', false);\n                        }, 1500);\n                    } else {\n                        addToCartBtn.prop('disabled', false);\n                        updatePriceDisplay();\n                    }\n                }).fail(function(){\n                    addToCartBtn.prop('disabled', false);\n                    updatePriceDisplay();\n                });\n            });\n\n            updatePriceDisplay();\n        }\n\n        $('.pcd-container').each(function(){\n            initPCDContainer($(this));\n        });\n\n    });\n    <\/script>\n    \n\t\t\t\t<div class=\"wd-product-card-hover fade-in-block wd-scroll\">\n\t\t\t\t\t\t\n\t\t\t\t\t<\/div>\n\t<\/div>\n<\/div>\n<\/div>\n\t\t\t\t\t\t\t\t<div class=\"wd-product wd-col wd-hover-fw-button wd-hover-with-fade product-grid-item product type-product post-30471 status-publish last instock product_cat-cigarettes product_tag-affordable product_tag-canadian product_tag-king-size product_tag-light-cigarettes product_tag-native-brand product_tag-no-frills has-post-thumbnail shipping-taxable purchasable product-type-simple\" data-loop=\"7\" data-id=\"30471\">\n\t\n<div class=\"wd-product-wrapper product-wrapper\">\n\t<div class=\"wd-product-card-bg content-product-imagin\"><\/div>\n\t<div class=\"wd-product-thumb product-element-top wd-quick-shop\">\n\t\t<a href=\"https:\/\/staging.nativenic.com\/fr\/produit\/canadian-lights-king-size\/\" class=\"wd-product-img-link product-image-link\" tabindex=\"-1\" aria-label=\"Canadian Lights (King Size)\">\n\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"800\" src=\"https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Canadian-Lights-King-Size-800x800.jpg\" class=\"attachment-large size-large\" alt=\"Canadian Lights carton and pack \u2013 buy native cigarettes online at NativeNic Canada\" srcset=\"https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Canadian-Lights-King-Size-800x800.jpg 800w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Canadian-Lights-King-Size-300x300.jpg 300w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Canadian-Lights-King-Size-150x150.jpg 150w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Canadian-Lights-King-Size-768x768.jpg 768w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Canadian-Lights-King-Size-1536x1536.jpg 1536w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Canadian-Lights-King-Size-60x60.jpg 60w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Canadian-Lights-King-Size-430x430.jpg 430w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Canadian-Lights-King-Size-700x700.jpg 700w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Canadian-Lights-King-Size.jpg 2048w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/>\t\t<\/a>\n\n\t\t\n\t\t<div class=\"wd-buttons wd-pos-r-t\">\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"wd-quick-view-btn wd-quick-view-icon wd-action-btn wd-style-icon\">\n\t\t\t<a\n\t\t\t\thref=\"https:\/\/staging.nativenic.com\/fr\/produit\/canadian-lights-king-size\/\"\n\t\t\t\tclass=\"open-quick-view\"\n\t\t\t\trel=\"nofollow\"\n\t\t\t\tdata-id=\"30471\"\n\t\t\t\t>\n\t\t\t\t\t<span class=\"wd-action-icon\"><\/span>\n\t\t\t\t\t<span class=\"wd-action-text\">\n\t\t\t\t\t\tQuick view\t\t\t\t\t<\/span>\n\t\t\t<\/a>\n\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t<\/div>\n\n\t<div class=\"product-element-bottom\">\n\n\t\t<h3 class=\"wd-entities-title\"><a href=\"https:\/\/staging.nativenic.com\/fr\/produit\/canadian-lights-king-size\/\">Canadian Lights (King Size)<\/a><\/h3>\n\t\t\t\t<div class=\"wd-product-cats\">\n\t\t\t\t\t\t<a href=\"https:\/\/staging.nativenic.com\/fr\/categorie-produit\/cigarettes\/\" rel=\"tag\">Native Cigarettes<\/a>\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"wd-star-rating\">\n\t\t\n\t\t\t\t<div class=\"star-rating\" role=\"img\" aria-label=\"Note 4.82 sur 5\">\n\t\t\t\t\t<span style=\"width:96.4%\">\n\t\t\tNote <strong class=\"rating\">4.82<\/strong> sur 5\t\t<\/span>\n\t\t\t\t<\/div>\n\n\t\t\t\t<a href=\"https:\/\/staging.nativenic.com\/fr\/produit\/canadian-lights-king-size\/#reviews\" class=\"woocommerce-review-link\" rel=\"nofollow\">\n\t\t\t(45)\n\t\t<\/a>\n\t\t\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\n\t\t\n\t\t<div class=\"wrap-price\">\n\t\t\t\n\t<span class=\"price\"><span class=\"woocommerce-Price-amount amount\"><bdi><span class=\"woocommerce-Price-currencySymbol\">&#36;<\/span>4.00<\/bdi><\/span><\/span>\n\n\t\t\t\t\t<\/div>\n\n\t\t<div class=\"wd-add-btn wd-add-btn-replace\">\n\t\t\t\n\t\t\t<a href=\"\/fr\/wp-json\/wp\/v2\/pages\/30587?add-to-cart=30471\" aria-describedby=\"woocommerce_loop_add_to_cart_link_describedby_30471\" data-quantity=\"1\" class=\"button product_type_simple add_to_cart_button ajax_add_to_cart pcd-add-to-cart-btn add-to-cart-loop\" data-product_id=\"30471\" data-product_sku=\"\" aria-label=\"Ajouter au panier\u00a0: &ldquo;Canadian Lights (King Size)&rdquo;\" rel=\"nofollow\" data-success_message=\"\u00ab\u00a0Canadian Lights (King Size)\u00a0\u00bb a \u00e9t\u00e9 ajout\u00e9 \u00e0 votre panier\" role=\"button\"><span class=\"wd-action-icon\"><span class=\"wd-check-icon\"><\/span><\/span><span class=\"wd-action-text\">Ajouter au panier<\/span><\/a>\t<span id=\"woocommerce_loop_add_to_cart_link_describedby_30471\" class=\"screen-reader-text\">\n\t\t\t<\/span>\n\t\t<\/div>\n\n\t\t<div class=\"pcd-container pcd-container-price-hide\"\n     data-product_id=\"30471\"\n     data-discounts-pack='[{\"quantity\":1,\"discount\":0},{\"quantity\":2,\"discount\":0},{\"quantity\":5,\"discount\":0},{\"quantity\":10,\"discount\":0}]'\n     data-discounts-carton='[{\"quantity\":4,\"discount\":0},{\"quantity\":5,\"discount\":20},{\"quantity\":10,\"discount\":22.85},{\"quantity\":20,\"discount\":28}]'>\n\n    <div class=\"pcd-type-select\">\n                    <button class=\"pcd-type-button\" data-type=\"Pack\" data-price=\"4.0\">\n                <span>PACK<\/span>\n                <span class=\"pack_carton_price\">$4.0<\/span>\n            <\/button>\n                            <button class=\"pcd-type-button active\" data-type=\"Carton\" data-price=\"38.88\">\n                <span>CARTON<\/span>\n                <span class=\"pack_carton_price\">$38.88<\/span>\n            <\/button>\n            <\/div>\n    <input type=\"hidden\" name=\"custom_price\" class=\"custom_price\" value=\"...\">\n\n    <div class=\"pcd-discount-info\">\n        <div class='pcd-discount-group pcd-discount-pack' style='display:none;'><div class='pcd-discount-qty active' data-type='pack' data-qty='1'>1<\/div><div class='pcd-discount-qty ' data-type='pack' data-qty='2'>2<\/div><div class='pcd-discount-qty ' data-type='pack' data-qty='5'>5<\/div><div class='pcd-discount-qty ' data-type='pack' data-qty='10'>10<\/div><\/div><div class='pcd-discount-group pcd-discount-carton' style='display:none;'><div class='pcd-discount-qty active' data-type='carton' data-qty='4'>4<\/div><div class='pcd-discount-qty ' data-type='carton' data-qty='5'>5<\/div><div class='pcd-discount-qty ' data-type='carton' data-qty='10'>10<\/div><div class='pcd-discount-qty ' data-type='carton' data-qty='20'>20<\/div><\/div>    <\/div>\n\n    <div class=\"pcd-add-to-cart-row\">\n        <div class=\"pcd-qty-input-box\">\n            <button class=\"pcd-qty-btn minus\">\u2212<\/button>\n            <input type=\"number\" min=\"1\" step=\"1\" value=\"1\" class=\"pcd-qty-input\" \/>\n            <button class=\"pcd-qty-btn plus\">+<\/button>\n        <\/div>\n        <button class=\"pcd-add-to-cart-btn\">Add to Cart<\/button>\n    <\/div>\n\n    <div class=\"pcd-price-display\" style=\"margin-top:5px;font-weight:bold;text-align:center;\"><\/div>\n    <div class=\"pcd-price-display_msg\" style=\"margin-top:5px;font-weight:bold;text-align:center;color:green;font-size:12px;display:none;\">QUANTITY DISCOUNT<\/div>\n<\/div>\n    <script>\n    jQuery(function($) {\n\n        function initPCDContainer(container) {\n            if (container.data('pcd-initialized')) return;\n            container.data('pcd-initialized', true);\n\n            container.parent().find('.wd-add-btn').remove();\n            $('.pcd-container-price-hide').parent().find('.price .woocommerce-Price-amount').hide();\n            $('.wd-product.product-type-variable .wd-add-btn').filter(function () {\n                return $(this).siblings('.wd-product-sku').length > 0;\n            }).css({'margin-bottom': '10px'});\n\n            var selectedTypeBtn = container.find('.pcd-type-button.active');\n            var selectedType    = selectedTypeBtn.data('type');\n            var quantityInput   = container.find('.pcd-qty-input');\n            var addToCartBtn    = container.find('.pcd-add-to-cart-btn');\n            var priceDisplay    = container.find('.pcd-price-display');\n            var priceDisplayMsg = container.find('.pcd-price-display_msg');\n            var productId       = container.data('product_id');\n\n            \/\/ Show active type's discount group on init\n            if (selectedType) {\n                container.find('.pcd-discount-group').hide();\n                container.find('.pcd-discount-' + selectedType.toLowerCase()).css({display:'flex'});\n\n                \/\/ Set default qty to 5 if Carton & 5 exists\n                if (selectedType === 'Carton') {\n                    var cGroup  = container.find('.pcd-discount-carton');\n                    var qtyBtns = cGroup.find('.pcd-discount-qty');\n                    qtyBtns.removeClass('active');\n                    var qty5 = qtyBtns.filter(function(){ return parseInt($(this).data('qty')) === 5; });\n                    if (qty5.length) { qty5.addClass('active'); quantityInput.val(5); }\n                    else { qtyBtns.first().addClass('active'); quantityInput.val(parseInt(qtyBtns.first().data('qty')) || 1); }\n                }\n            }\n\n            function getDiscount(qty) {\n                var type = container.find('.pcd-type-button.active').data('type');\n                if (!type) return 0;\n                type = type.toLowerCase();\n                var dataAttr = type === 'carton' ? 'data-discounts-carton' : 'data-discounts-pack';\n                var packages = [];\n                try { packages = JSON.parse(container[0].getAttribute(dataAttr) || '[]'); } catch(e){ return 0; }\n                var discount = 0;\n                packages.forEach(function(pkg){\n                    if (qty >= parseFloat(pkg.quantity)) discount = parseFloat(pkg.discount) \/ 100;\n                });\n                return discount;\n            }\n\n            function calculatePrice(unitPrice, qty) {\n                return (unitPrice * (1 - getDiscount(qty))).toFixed(2);\n            }\n\n            \/\/ Always keep highest matching swatch highlighted; fallback to first\n            function syncSwatches(activeTypeLower, currentQty) {\n                var $group    = container.find('.pcd-discount-' + activeTypeLower);\n                var $swatches = $group.find('.pcd-discount-qty');\n                $swatches.removeClass('active');\n                var $best = null;\n                $swatches.each(function(){\n                    if (parseInt($(this).data('qty'), 10) <= currentQty) $best = $(this);\n                });\n                if ($best) $best.addClass('active');\n                else $swatches.first().addClass('active');\n            }\n\n            function updatePriceDisplay() {\n                var qty        = parseInt(quantityInput.val(), 10) || 1;\n                var unitPrice  = parseFloat(container.find('.pcd-type-button.active').data('price')) || 0;\n                var finalUnit  = parseFloat(calculatePrice(unitPrice, qty));\n                var totalPrice = (finalUnit * qty).toFixed(2);\n                var discount   = getDiscount(qty);\n                var activeType = container.find('.pcd-type-button.active').data('type');\n\n                \/\/ Add to Cart button\n                addToCartBtn.text('ADD TO CART - $' + totalPrice);\n\n                \/\/ Total price display\n                if (discount > 0) {\n                    priceDisplay.html('Total: <del style=\"color:red;font-weight:400;\">$' + (unitPrice * qty).toFixed(2) + '<\/del> $' + totalPrice);\n                    priceDisplayMsg.show();\n                } else {\n                    priceDisplay.html('Total: $' + totalPrice);\n                    priceDisplayMsg.hide();\n                }\n\n                \/\/ Active button price with strikethrough\n                var priceHtml = discount > 0\n                    ? '<del style=\"color:red;\">$' + unitPrice.toFixed(2) + '<\/del> $' + finalUnit.toFixed(2)\n                    : '$' + finalUnit.toFixed(2);\n                container.find('.pcd-type-button.active .pack_carton_price').html(priceHtml);\n\n                \/\/ Sync swatch highlight \u2014 highest matching, never disappears\n                if (activeType) syncSwatches(activeType.toLowerCase(), qty);\n            }\n\n            \/\/ Pack\/Carton type switch\n            container.find('.pcd-type-button').off('click').on('click', function(){\n                container.find('.pcd-type-button').removeClass('active');\n                $(this).addClass('active');\n                selectedType = $(this).data('type');\n\n                container.find('.pcd-discount-group').hide();\n                container.find('.pcd-discount-' + selectedType.toLowerCase()).css({display:'flex'});\n\n                \/\/ Reset inactive button prices\n                container.find('.pcd-type-button').not('.active').each(function(){\n                    $(this).find('.pack_carton_price').html('$' + parseFloat($(this).data('price')).toFixed(2));\n                });\n\n                \/\/ Set first qty of new type\n                var firstQtyBtn = container.find('.pcd-discount-' + selectedType.toLowerCase() + ' .pcd-discount-qty');\n                var firstQty    = parseInt(firstQtyBtn.first().data('qty'), 10) || 1;\n                quantityInput.val(firstQty);\n                updatePriceDisplay();\n            });\n\n            \/\/ Swatch click \u2014 set qty, updatePriceDisplay handles highlight\n            container.find('.pcd-discount-qty').off('click').on('click', function(){\n                quantityInput.val(parseInt($(this).data('qty'), 10) || 1);\n                updatePriceDisplay();\n            });\n\n            \/\/ Minus\n            container.find('.pcd-qty-btn.minus').off('click').on('click', function(){\n                var v = parseInt(quantityInput.val(), 10) || 1;\n                if (v > 1) quantityInput.val(v - 1).trigger('change');\n            });\n\n            \/\/ Plus\n            container.find('.pcd-qty-btn.plus').off('click').on('click', function(){\n                var v = parseInt(quantityInput.val(), 10) || 1;\n                quantityInput.val(v + 1).trigger('change');\n            });\n\n            \/\/ Manual input\n            quantityInput.off('change keyup').on('change keyup', function(){\n                var val = parseInt($(this).val(), 10);\n                setTimeout(function(){ if (isNaN(val) || val < 1) quantityInput.val(1); }, 500);\n                updatePriceDisplay();\n            });\n\n            \/\/ Add to Cart\n            addToCartBtn.off('click').on('click', function(e){\n                e.preventDefault();\n                var qty        = parseInt(quantityInput.val(), 10) || 1;\n                var unitPrice  = parseFloat(container.find('.pcd-type-button.active').data('price')) || 0;\n                var finalPrice = calculatePrice(unitPrice, qty);\n                var purchType  = container.find('.pcd-type-button.active').data('type') || selectedType;\n\n                var data = {\n                    action:        'pcd_ajax_add_to_cart',\n                    product_id:    productId,\n                    quantity:      qty,\n                    purchase_type: purchType,\n                    custom_price:  finalPrice\n                };\n\n                addToCartBtn.prop('disabled', true).text('Adding...');\n\n                $.post('https:\/\/staging.nativenic.com\/wp-admin\/admin-ajax.php', data, function(response){\n                    if (response.success) {\n                        $(document.body).trigger('wc_fragment_refresh');\n                        addToCartBtn.text('Added!');\n                        var cartSidebar  = document.querySelector('.cart-widget-side.wd-side-hidden.wd-right');\n                        var cartBackdrop = document.querySelector('.wd-close-side.wd-fill');\n                        if (cartSidebar)  cartSidebar.classList.add('wd-opened');\n                        if (cartBackdrop) cartBackdrop.classList.add('wd-close-side-opened');\n                        setTimeout(function(){\n                            updatePriceDisplay();\n                            addToCartBtn.prop('disabled', false);\n                        }, 1500);\n                    } else {\n                        addToCartBtn.prop('disabled', false);\n                        updatePriceDisplay();\n                    }\n                }).fail(function(){\n                    addToCartBtn.prop('disabled', false);\n                    updatePriceDisplay();\n                });\n            });\n\n            updatePriceDisplay();\n        }\n\n        $('.pcd-container').each(function(){\n            initPCDContainer($(this));\n        });\n\n    });\n    <\/script>\n    \n\t\t\t\t<div class=\"wd-product-card-hover fade-in-block wd-scroll\">\n\t\t\t\t\t\t\n\t\t\t\t\t<\/div>\n\t<\/div>\n<\/div>\n<\/div>\n\t\t\t\t\t\t\t\t<div class=\"wd-product wd-col wd-hover-fw-button wd-hover-with-fade product-grid-item product type-product post-30459 status-publish first instock product_cat-cigarettes product_tag-canadian-full product_tag-dense-tobacco product_tag-full-strength product_tag-maximum-strength product_tag-veteran-smokers has-post-thumbnail shipping-taxable purchasable product-type-simple\" data-loop=\"8\" data-id=\"30459\">\n\t\n<div class=\"wd-product-wrapper product-wrapper\">\n\t<div class=\"wd-product-card-bg content-product-imagin\"><\/div>\n\t<div class=\"wd-product-thumb product-element-top wd-quick-shop\">\n\t\t<a href=\"https:\/\/staging.nativenic.com\/fr\/produit\/canadian-full-king-size\/\" class=\"wd-product-img-link product-image-link\" tabindex=\"-1\" aria-label=\"Canadian Full (King Size)\">\n\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"800\" src=\"https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Canadian-Full-King-Size-800x800.jpg\" class=\"attachment-large size-large\" alt=\"Canadian Full carton and pack \u2013 buy native cigarettes online at NativeNic Canada\" srcset=\"https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Canadian-Full-King-Size-800x800.jpg 800w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Canadian-Full-King-Size-300x300.jpg 300w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Canadian-Full-King-Size-150x150.jpg 150w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Canadian-Full-King-Size-768x768.jpg 768w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Canadian-Full-King-Size-1536x1536.jpg 1536w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Canadian-Full-King-Size-60x60.jpg 60w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Canadian-Full-King-Size-430x430.jpg 430w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Canadian-Full-King-Size-700x700.jpg 700w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Canadian-Full-King-Size.jpg 2048w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/>\t\t<\/a>\n\n\t\t\n\t\t<div class=\"wd-buttons wd-pos-r-t\">\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"wd-quick-view-btn wd-quick-view-icon wd-action-btn wd-style-icon\">\n\t\t\t<a\n\t\t\t\thref=\"https:\/\/staging.nativenic.com\/fr\/produit\/canadian-full-king-size\/\"\n\t\t\t\tclass=\"open-quick-view\"\n\t\t\t\trel=\"nofollow\"\n\t\t\t\tdata-id=\"30459\"\n\t\t\t\t>\n\t\t\t\t\t<span class=\"wd-action-icon\"><\/span>\n\t\t\t\t\t<span class=\"wd-action-text\">\n\t\t\t\t\t\tQuick view\t\t\t\t\t<\/span>\n\t\t\t<\/a>\n\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t<\/div>\n\n\t<div class=\"product-element-bottom\">\n\n\t\t<h3 class=\"wd-entities-title\"><a href=\"https:\/\/staging.nativenic.com\/fr\/produit\/canadian-full-king-size\/\">Canadian Full (King Size)<\/a><\/h3>\n\t\t\t\t<div class=\"wd-product-cats\">\n\t\t\t\t\t\t<a href=\"https:\/\/staging.nativenic.com\/fr\/categorie-produit\/cigarettes\/\" rel=\"tag\">Native Cigarettes<\/a>\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"wd-star-rating\">\n\t\t\n\t\t\t\t<div class=\"star-rating\" role=\"img\" aria-label=\"Note 4.73 sur 5\">\n\t\t\t\t\t<span style=\"width:94.6%\">\n\t\t\tNote <strong class=\"rating\">4.73<\/strong> sur 5\t\t<\/span>\n\t\t\t\t<\/div>\n\n\t\t\t\t<a href=\"https:\/\/staging.nativenic.com\/fr\/produit\/canadian-full-king-size\/#reviews\" class=\"woocommerce-review-link\" rel=\"nofollow\">\n\t\t\t(55)\n\t\t<\/a>\n\t\t\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\n\t\t\n\t\t<div class=\"wrap-price\">\n\t\t\t\n\t<span class=\"price\"><span class=\"woocommerce-Price-amount amount\"><bdi><span class=\"woocommerce-Price-currencySymbol\">&#36;<\/span>4.00<\/bdi><\/span><\/span>\n\n\t\t\t\t\t<\/div>\n\n\t\t<div class=\"wd-add-btn wd-add-btn-replace\">\n\t\t\t\n\t\t\t<a href=\"\/fr\/wp-json\/wp\/v2\/pages\/30587?add-to-cart=30459\" aria-describedby=\"woocommerce_loop_add_to_cart_link_describedby_30459\" data-quantity=\"1\" class=\"button product_type_simple add_to_cart_button ajax_add_to_cart pcd-add-to-cart-btn add-to-cart-loop\" data-product_id=\"30459\" data-product_sku=\"\" aria-label=\"Ajouter au panier\u00a0: &ldquo;Canadian Full (King Size)&rdquo;\" rel=\"nofollow\" data-success_message=\"\u00ab\u00a0Canadian Full (King Size)\u00a0\u00bb a \u00e9t\u00e9 ajout\u00e9 \u00e0 votre panier\" role=\"button\"><span class=\"wd-action-icon\"><span class=\"wd-check-icon\"><\/span><\/span><span class=\"wd-action-text\">Ajouter au panier<\/span><\/a>\t<span id=\"woocommerce_loop_add_to_cart_link_describedby_30459\" class=\"screen-reader-text\">\n\t\t\t<\/span>\n\t\t<\/div>\n\n\t\t<div class=\"pcd-container pcd-container-price-hide\"\n     data-product_id=\"30459\"\n     data-discounts-pack='[{\"quantity\":1,\"discount\":0},{\"quantity\":2,\"discount\":0},{\"quantity\":5,\"discount\":0},{\"quantity\":10,\"discount\":0}]'\n     data-discounts-carton='[{\"quantity\":4,\"discount\":0},{\"quantity\":5,\"discount\":20},{\"quantity\":10,\"discount\":22.85},{\"quantity\":20,\"discount\":28}]'>\n\n    <div class=\"pcd-type-select\">\n                    <button class=\"pcd-type-button\" data-type=\"Pack\" data-price=\"4.0\">\n                <span>PACK<\/span>\n                <span class=\"pack_carton_price\">$4.0<\/span>\n            <\/button>\n                            <button class=\"pcd-type-button active\" data-type=\"Carton\" data-price=\"38.88\">\n                <span>CARTON<\/span>\n                <span class=\"pack_carton_price\">$38.88<\/span>\n            <\/button>\n            <\/div>\n    <input type=\"hidden\" name=\"custom_price\" class=\"custom_price\" value=\"...\">\n\n    <div class=\"pcd-discount-info\">\n        <div class='pcd-discount-group pcd-discount-pack' style='display:none;'><div class='pcd-discount-qty active' data-type='pack' data-qty='1'>1<\/div><div class='pcd-discount-qty ' data-type='pack' data-qty='2'>2<\/div><div class='pcd-discount-qty ' data-type='pack' data-qty='5'>5<\/div><div class='pcd-discount-qty ' data-type='pack' data-qty='10'>10<\/div><\/div><div class='pcd-discount-group pcd-discount-carton' style='display:none;'><div class='pcd-discount-qty active' data-type='carton' data-qty='4'>4<\/div><div class='pcd-discount-qty ' data-type='carton' data-qty='5'>5<\/div><div class='pcd-discount-qty ' data-type='carton' data-qty='10'>10<\/div><div class='pcd-discount-qty ' data-type='carton' data-qty='20'>20<\/div><\/div>    <\/div>\n\n    <div class=\"pcd-add-to-cart-row\">\n        <div class=\"pcd-qty-input-box\">\n            <button class=\"pcd-qty-btn minus\">\u2212<\/button>\n            <input type=\"number\" min=\"1\" step=\"1\" value=\"1\" class=\"pcd-qty-input\" \/>\n            <button class=\"pcd-qty-btn plus\">+<\/button>\n        <\/div>\n        <button class=\"pcd-add-to-cart-btn\">Add to Cart<\/button>\n    <\/div>\n\n    <div class=\"pcd-price-display\" style=\"margin-top:5px;font-weight:bold;text-align:center;\"><\/div>\n    <div class=\"pcd-price-display_msg\" style=\"margin-top:5px;font-weight:bold;text-align:center;color:green;font-size:12px;display:none;\">QUANTITY DISCOUNT<\/div>\n<\/div>\n    <script>\n    jQuery(function($) {\n\n        function initPCDContainer(container) {\n            if (container.data('pcd-initialized')) return;\n            container.data('pcd-initialized', true);\n\n            container.parent().find('.wd-add-btn').remove();\n            $('.pcd-container-price-hide').parent().find('.price .woocommerce-Price-amount').hide();\n            $('.wd-product.product-type-variable .wd-add-btn').filter(function () {\n                return $(this).siblings('.wd-product-sku').length > 0;\n            }).css({'margin-bottom': '10px'});\n\n            var selectedTypeBtn = container.find('.pcd-type-button.active');\n            var selectedType    = selectedTypeBtn.data('type');\n            var quantityInput   = container.find('.pcd-qty-input');\n            var addToCartBtn    = container.find('.pcd-add-to-cart-btn');\n            var priceDisplay    = container.find('.pcd-price-display');\n            var priceDisplayMsg = container.find('.pcd-price-display_msg');\n            var productId       = container.data('product_id');\n\n            \/\/ Show active type's discount group on init\n            if (selectedType) {\n                container.find('.pcd-discount-group').hide();\n                container.find('.pcd-discount-' + selectedType.toLowerCase()).css({display:'flex'});\n\n                \/\/ Set default qty to 5 if Carton & 5 exists\n                if (selectedType === 'Carton') {\n                    var cGroup  = container.find('.pcd-discount-carton');\n                    var qtyBtns = cGroup.find('.pcd-discount-qty');\n                    qtyBtns.removeClass('active');\n                    var qty5 = qtyBtns.filter(function(){ return parseInt($(this).data('qty')) === 5; });\n                    if (qty5.length) { qty5.addClass('active'); quantityInput.val(5); }\n                    else { qtyBtns.first().addClass('active'); quantityInput.val(parseInt(qtyBtns.first().data('qty')) || 1); }\n                }\n            }\n\n            function getDiscount(qty) {\n                var type = container.find('.pcd-type-button.active').data('type');\n                if (!type) return 0;\n                type = type.toLowerCase();\n                var dataAttr = type === 'carton' ? 'data-discounts-carton' : 'data-discounts-pack';\n                var packages = [];\n                try { packages = JSON.parse(container[0].getAttribute(dataAttr) || '[]'); } catch(e){ return 0; }\n                var discount = 0;\n                packages.forEach(function(pkg){\n                    if (qty >= parseFloat(pkg.quantity)) discount = parseFloat(pkg.discount) \/ 100;\n                });\n                return discount;\n            }\n\n            function calculatePrice(unitPrice, qty) {\n                return (unitPrice * (1 - getDiscount(qty))).toFixed(2);\n            }\n\n            \/\/ Always keep highest matching swatch highlighted; fallback to first\n            function syncSwatches(activeTypeLower, currentQty) {\n                var $group    = container.find('.pcd-discount-' + activeTypeLower);\n                var $swatches = $group.find('.pcd-discount-qty');\n                $swatches.removeClass('active');\n                var $best = null;\n                $swatches.each(function(){\n                    if (parseInt($(this).data('qty'), 10) <= currentQty) $best = $(this);\n                });\n                if ($best) $best.addClass('active');\n                else $swatches.first().addClass('active');\n            }\n\n            function updatePriceDisplay() {\n                var qty        = parseInt(quantityInput.val(), 10) || 1;\n                var unitPrice  = parseFloat(container.find('.pcd-type-button.active').data('price')) || 0;\n                var finalUnit  = parseFloat(calculatePrice(unitPrice, qty));\n                var totalPrice = (finalUnit * qty).toFixed(2);\n                var discount   = getDiscount(qty);\n                var activeType = container.find('.pcd-type-button.active').data('type');\n\n                \/\/ Add to Cart button\n                addToCartBtn.text('ADD TO CART - $' + totalPrice);\n\n                \/\/ Total price display\n                if (discount > 0) {\n                    priceDisplay.html('Total: <del style=\"color:red;font-weight:400;\">$' + (unitPrice * qty).toFixed(2) + '<\/del> $' + totalPrice);\n                    priceDisplayMsg.show();\n                } else {\n                    priceDisplay.html('Total: $' + totalPrice);\n                    priceDisplayMsg.hide();\n                }\n\n                \/\/ Active button price with strikethrough\n                var priceHtml = discount > 0\n                    ? '<del style=\"color:red;\">$' + unitPrice.toFixed(2) + '<\/del> $' + finalUnit.toFixed(2)\n                    : '$' + finalUnit.toFixed(2);\n                container.find('.pcd-type-button.active .pack_carton_price').html(priceHtml);\n\n                \/\/ Sync swatch highlight \u2014 highest matching, never disappears\n                if (activeType) syncSwatches(activeType.toLowerCase(), qty);\n            }\n\n            \/\/ Pack\/Carton type switch\n            container.find('.pcd-type-button').off('click').on('click', function(){\n                container.find('.pcd-type-button').removeClass('active');\n                $(this).addClass('active');\n                selectedType = $(this).data('type');\n\n                container.find('.pcd-discount-group').hide();\n                container.find('.pcd-discount-' + selectedType.toLowerCase()).css({display:'flex'});\n\n                \/\/ Reset inactive button prices\n                container.find('.pcd-type-button').not('.active').each(function(){\n                    $(this).find('.pack_carton_price').html('$' + parseFloat($(this).data('price')).toFixed(2));\n                });\n\n                \/\/ Set first qty of new type\n                var firstQtyBtn = container.find('.pcd-discount-' + selectedType.toLowerCase() + ' .pcd-discount-qty');\n                var firstQty    = parseInt(firstQtyBtn.first().data('qty'), 10) || 1;\n                quantityInput.val(firstQty);\n                updatePriceDisplay();\n            });\n\n            \/\/ Swatch click \u2014 set qty, updatePriceDisplay handles highlight\n            container.find('.pcd-discount-qty').off('click').on('click', function(){\n                quantityInput.val(parseInt($(this).data('qty'), 10) || 1);\n                updatePriceDisplay();\n            });\n\n            \/\/ Minus\n            container.find('.pcd-qty-btn.minus').off('click').on('click', function(){\n                var v = parseInt(quantityInput.val(), 10) || 1;\n                if (v > 1) quantityInput.val(v - 1).trigger('change');\n            });\n\n            \/\/ Plus\n            container.find('.pcd-qty-btn.plus').off('click').on('click', function(){\n                var v = parseInt(quantityInput.val(), 10) || 1;\n                quantityInput.val(v + 1).trigger('change');\n            });\n\n            \/\/ Manual input\n            quantityInput.off('change keyup').on('change keyup', function(){\n                var val = parseInt($(this).val(), 10);\n                setTimeout(function(){ if (isNaN(val) || val < 1) quantityInput.val(1); }, 500);\n                updatePriceDisplay();\n            });\n\n            \/\/ Add to Cart\n            addToCartBtn.off('click').on('click', function(e){\n                e.preventDefault();\n                var qty        = parseInt(quantityInput.val(), 10) || 1;\n                var unitPrice  = parseFloat(container.find('.pcd-type-button.active').data('price')) || 0;\n                var finalPrice = calculatePrice(unitPrice, qty);\n                var purchType  = container.find('.pcd-type-button.active').data('type') || selectedType;\n\n                var data = {\n                    action:        'pcd_ajax_add_to_cart',\n                    product_id:    productId,\n                    quantity:      qty,\n                    purchase_type: purchType,\n                    custom_price:  finalPrice\n                };\n\n                addToCartBtn.prop('disabled', true).text('Adding...');\n\n                $.post('https:\/\/staging.nativenic.com\/wp-admin\/admin-ajax.php', data, function(response){\n                    if (response.success) {\n                        $(document.body).trigger('wc_fragment_refresh');\n                        addToCartBtn.text('Added!');\n                        var cartSidebar  = document.querySelector('.cart-widget-side.wd-side-hidden.wd-right');\n                        var cartBackdrop = document.querySelector('.wd-close-side.wd-fill');\n                        if (cartSidebar)  cartSidebar.classList.add('wd-opened');\n                        if (cartBackdrop) cartBackdrop.classList.add('wd-close-side-opened');\n                        setTimeout(function(){\n                            updatePriceDisplay();\n                            addToCartBtn.prop('disabled', false);\n                        }, 1500);\n                    } else {\n                        addToCartBtn.prop('disabled', false);\n                        updatePriceDisplay();\n                    }\n                }).fail(function(){\n                    addToCartBtn.prop('disabled', false);\n                    updatePriceDisplay();\n                });\n            });\n\n            updatePriceDisplay();\n        }\n\n        $('.pcd-container').each(function(){\n            initPCDContainer($(this));\n        });\n\n    });\n    <\/script>\n    \n\t\t\t\t<div class=\"wd-product-card-hover fade-in-block wd-scroll\">\n\t\t\t\t\t\t\n\t\t\t\t\t<\/div>\n\t<\/div>\n<\/div>\n<\/div>\n\t\t\t\t\t\t\t\t<div class=\"wd-product wd-col wd-hover-fw-button wd-hover-with-fade product-grid-item product type-product post-30520 status-publish instock product_cat-cigarettes product_tag-dks-light product_tag-grand-river product_tag-king-size product_tag-light-smoking product_tag-mild-flavour product_tag-native-cigarettes product_tag-six-nations has-post-thumbnail shipping-taxable purchasable product-type-simple\" data-loop=\"9\" data-id=\"30520\">\n\t\n<div class=\"wd-product-wrapper product-wrapper\">\n\t<div class=\"wd-product-card-bg content-product-imagin\"><\/div>\n\t<div class=\"wd-product-thumb product-element-top wd-quick-shop\">\n\t\t<a href=\"https:\/\/staging.nativenic.com\/fr\/produit\/dks-light-king-size\/\" class=\"wd-product-img-link product-image-link\" tabindex=\"-1\" aria-label=\"DK&#8217;s Light (King Size)\">\n\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"800\" src=\"https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/DK_s-Light-King-Size-800x800.jpg\" class=\"attachment-large size-large\" alt=\"DK&#039;s Light carton and pack \u2013 buy native cigarettes online at NativeNic Canada\" srcset=\"https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/DK_s-Light-King-Size-800x800.jpg 800w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/DK_s-Light-King-Size-300x300.jpg 300w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/DK_s-Light-King-Size-150x150.jpg 150w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/DK_s-Light-King-Size-768x768.jpg 768w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/DK_s-Light-King-Size-1536x1536.jpg 1536w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/DK_s-Light-King-Size-60x60.jpg 60w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/DK_s-Light-King-Size-430x430.jpg 430w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/DK_s-Light-King-Size-700x700.jpg 700w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/DK_s-Light-King-Size.jpg 2048w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/>\t\t<\/a>\n\n\t\t\n\t\t<div class=\"wd-buttons wd-pos-r-t\">\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"wd-quick-view-btn wd-quick-view-icon wd-action-btn wd-style-icon\">\n\t\t\t<a\n\t\t\t\thref=\"https:\/\/staging.nativenic.com\/fr\/produit\/dks-light-king-size\/\"\n\t\t\t\tclass=\"open-quick-view\"\n\t\t\t\trel=\"nofollow\"\n\t\t\t\tdata-id=\"30520\"\n\t\t\t\t>\n\t\t\t\t\t<span class=\"wd-action-icon\"><\/span>\n\t\t\t\t\t<span class=\"wd-action-text\">\n\t\t\t\t\t\tQuick view\t\t\t\t\t<\/span>\n\t\t\t<\/a>\n\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t<\/div>\n\n\t<div class=\"product-element-bottom\">\n\n\t\t<h3 class=\"wd-entities-title\"><a href=\"https:\/\/staging.nativenic.com\/fr\/produit\/dks-light-king-size\/\">DK&#8217;s Light (King Size)<\/a><\/h3>\n\t\t\t\t<div class=\"wd-product-cats\">\n\t\t\t\t\t\t<a href=\"https:\/\/staging.nativenic.com\/fr\/categorie-produit\/cigarettes\/\" rel=\"tag\">Native Cigarettes<\/a>\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"wd-star-rating\">\n\t\t\n\t\t\t\t<div class=\"star-rating\" role=\"img\" aria-label=\"Note 4.75 sur 5\">\n\t\t\t\t\t<span style=\"width:95%\">\n\t\t\tNote <strong class=\"rating\">4.75<\/strong> sur 5\t\t<\/span>\n\t\t\t\t<\/div>\n\n\t\t\t\t<a href=\"https:\/\/staging.nativenic.com\/fr\/produit\/dks-light-king-size\/#reviews\" class=\"woocommerce-review-link\" rel=\"nofollow\">\n\t\t\t(60)\n\t\t<\/a>\n\t\t\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\n\t\t\n\t\t<div class=\"wrap-price\">\n\t\t\t\n\t<span class=\"price\"><span class=\"woocommerce-Price-amount amount\"><bdi><span class=\"woocommerce-Price-currencySymbol\">&#36;<\/span>4.00<\/bdi><\/span><\/span>\n\n\t\t\t\t\t<\/div>\n\n\t\t<div class=\"wd-add-btn wd-add-btn-replace\">\n\t\t\t\n\t\t\t<a href=\"\/fr\/wp-json\/wp\/v2\/pages\/30587?add-to-cart=30520\" aria-describedby=\"woocommerce_loop_add_to_cart_link_describedby_30520\" data-quantity=\"1\" class=\"button product_type_simple add_to_cart_button ajax_add_to_cart pcd-add-to-cart-btn add-to-cart-loop\" data-product_id=\"30520\" data-product_sku=\"\" aria-label=\"Ajouter au panier\u00a0: &ldquo;DK&#039;s Light (King Size)&rdquo;\" rel=\"nofollow\" data-success_message=\"\u00ab\u00a0DK&#039;s Light (King Size)\u00a0\u00bb a \u00e9t\u00e9 ajout\u00e9 \u00e0 votre panier\" role=\"button\"><span class=\"wd-action-icon\"><span class=\"wd-check-icon\"><\/span><\/span><span class=\"wd-action-text\">Ajouter au panier<\/span><\/a>\t<span id=\"woocommerce_loop_add_to_cart_link_describedby_30520\" class=\"screen-reader-text\">\n\t\t\t<\/span>\n\t\t<\/div>\n\n\t\t<div class=\"pcd-container pcd-container-price-hide\"\n     data-product_id=\"30520\"\n     data-discounts-pack='[{\"quantity\":1,\"discount\":0},{\"quantity\":2,\"discount\":0},{\"quantity\":5,\"discount\":0},{\"quantity\":10,\"discount\":0}]'\n     data-discounts-carton='[{\"quantity\":4,\"discount\":0},{\"quantity\":5,\"discount\":20},{\"quantity\":10,\"discount\":22.85},{\"quantity\":20,\"discount\":28}]'>\n\n    <div class=\"pcd-type-select\">\n                    <button class=\"pcd-type-button\" data-type=\"Pack\" data-price=\"4.0\">\n                <span>PACK<\/span>\n                <span class=\"pack_carton_price\">$4.0<\/span>\n            <\/button>\n                            <button class=\"pcd-type-button active\" data-type=\"Carton\" data-price=\"38.88\">\n                <span>CARTON<\/span>\n                <span class=\"pack_carton_price\">$38.88<\/span>\n            <\/button>\n            <\/div>\n    <input type=\"hidden\" name=\"custom_price\" class=\"custom_price\" value=\"...\">\n\n    <div class=\"pcd-discount-info\">\n        <div class='pcd-discount-group pcd-discount-pack' style='display:none;'><div class='pcd-discount-qty active' data-type='pack' data-qty='1'>1<\/div><div class='pcd-discount-qty ' data-type='pack' data-qty='2'>2<\/div><div class='pcd-discount-qty ' data-type='pack' data-qty='5'>5<\/div><div class='pcd-discount-qty ' data-type='pack' data-qty='10'>10<\/div><\/div><div class='pcd-discount-group pcd-discount-carton' style='display:none;'><div class='pcd-discount-qty active' data-type='carton' data-qty='4'>4<\/div><div class='pcd-discount-qty ' data-type='carton' data-qty='5'>5<\/div><div class='pcd-discount-qty ' data-type='carton' data-qty='10'>10<\/div><div class='pcd-discount-qty ' data-type='carton' data-qty='20'>20<\/div><\/div>    <\/div>\n\n    <div class=\"pcd-add-to-cart-row\">\n        <div class=\"pcd-qty-input-box\">\n            <button class=\"pcd-qty-btn minus\">\u2212<\/button>\n            <input type=\"number\" min=\"1\" step=\"1\" value=\"1\" class=\"pcd-qty-input\" \/>\n            <button class=\"pcd-qty-btn plus\">+<\/button>\n        <\/div>\n        <button class=\"pcd-add-to-cart-btn\">Add to Cart<\/button>\n    <\/div>\n\n    <div class=\"pcd-price-display\" style=\"margin-top:5px;font-weight:bold;text-align:center;\"><\/div>\n    <div class=\"pcd-price-display_msg\" style=\"margin-top:5px;font-weight:bold;text-align:center;color:green;font-size:12px;display:none;\">QUANTITY DISCOUNT<\/div>\n<\/div>\n    <script>\n    jQuery(function($) {\n\n        function initPCDContainer(container) {\n            if (container.data('pcd-initialized')) return;\n            container.data('pcd-initialized', true);\n\n            container.parent().find('.wd-add-btn').remove();\n            $('.pcd-container-price-hide').parent().find('.price .woocommerce-Price-amount').hide();\n            $('.wd-product.product-type-variable .wd-add-btn').filter(function () {\n                return $(this).siblings('.wd-product-sku').length > 0;\n            }).css({'margin-bottom': '10px'});\n\n            var selectedTypeBtn = container.find('.pcd-type-button.active');\n            var selectedType    = selectedTypeBtn.data('type');\n            var quantityInput   = container.find('.pcd-qty-input');\n            var addToCartBtn    = container.find('.pcd-add-to-cart-btn');\n            var priceDisplay    = container.find('.pcd-price-display');\n            var priceDisplayMsg = container.find('.pcd-price-display_msg');\n            var productId       = container.data('product_id');\n\n            \/\/ Show active type's discount group on init\n            if (selectedType) {\n                container.find('.pcd-discount-group').hide();\n                container.find('.pcd-discount-' + selectedType.toLowerCase()).css({display:'flex'});\n\n                \/\/ Set default qty to 5 if Carton & 5 exists\n                if (selectedType === 'Carton') {\n                    var cGroup  = container.find('.pcd-discount-carton');\n                    var qtyBtns = cGroup.find('.pcd-discount-qty');\n                    qtyBtns.removeClass('active');\n                    var qty5 = qtyBtns.filter(function(){ return parseInt($(this).data('qty')) === 5; });\n                    if (qty5.length) { qty5.addClass('active'); quantityInput.val(5); }\n                    else { qtyBtns.first().addClass('active'); quantityInput.val(parseInt(qtyBtns.first().data('qty')) || 1); }\n                }\n            }\n\n            function getDiscount(qty) {\n                var type = container.find('.pcd-type-button.active').data('type');\n                if (!type) return 0;\n                type = type.toLowerCase();\n                var dataAttr = type === 'carton' ? 'data-discounts-carton' : 'data-discounts-pack';\n                var packages = [];\n                try { packages = JSON.parse(container[0].getAttribute(dataAttr) || '[]'); } catch(e){ return 0; }\n                var discount = 0;\n                packages.forEach(function(pkg){\n                    if (qty >= parseFloat(pkg.quantity)) discount = parseFloat(pkg.discount) \/ 100;\n                });\n                return discount;\n            }\n\n            function calculatePrice(unitPrice, qty) {\n                return (unitPrice * (1 - getDiscount(qty))).toFixed(2);\n            }\n\n            \/\/ Always keep highest matching swatch highlighted; fallback to first\n            function syncSwatches(activeTypeLower, currentQty) {\n                var $group    = container.find('.pcd-discount-' + activeTypeLower);\n                var $swatches = $group.find('.pcd-discount-qty');\n                $swatches.removeClass('active');\n                var $best = null;\n                $swatches.each(function(){\n                    if (parseInt($(this).data('qty'), 10) <= currentQty) $best = $(this);\n                });\n                if ($best) $best.addClass('active');\n                else $swatches.first().addClass('active');\n            }\n\n            function updatePriceDisplay() {\n                var qty        = parseInt(quantityInput.val(), 10) || 1;\n                var unitPrice  = parseFloat(container.find('.pcd-type-button.active').data('price')) || 0;\n                var finalUnit  = parseFloat(calculatePrice(unitPrice, qty));\n                var totalPrice = (finalUnit * qty).toFixed(2);\n                var discount   = getDiscount(qty);\n                var activeType = container.find('.pcd-type-button.active').data('type');\n\n                \/\/ Add to Cart button\n                addToCartBtn.text('ADD TO CART - $' + totalPrice);\n\n                \/\/ Total price display\n                if (discount > 0) {\n                    priceDisplay.html('Total: <del style=\"color:red;font-weight:400;\">$' + (unitPrice * qty).toFixed(2) + '<\/del> $' + totalPrice);\n                    priceDisplayMsg.show();\n                } else {\n                    priceDisplay.html('Total: $' + totalPrice);\n                    priceDisplayMsg.hide();\n                }\n\n                \/\/ Active button price with strikethrough\n                var priceHtml = discount > 0\n                    ? '<del style=\"color:red;\">$' + unitPrice.toFixed(2) + '<\/del> $' + finalUnit.toFixed(2)\n                    : '$' + finalUnit.toFixed(2);\n                container.find('.pcd-type-button.active .pack_carton_price').html(priceHtml);\n\n                \/\/ Sync swatch highlight \u2014 highest matching, never disappears\n                if (activeType) syncSwatches(activeType.toLowerCase(), qty);\n            }\n\n            \/\/ Pack\/Carton type switch\n            container.find('.pcd-type-button').off('click').on('click', function(){\n                container.find('.pcd-type-button').removeClass('active');\n                $(this).addClass('active');\n                selectedType = $(this).data('type');\n\n                container.find('.pcd-discount-group').hide();\n                container.find('.pcd-discount-' + selectedType.toLowerCase()).css({display:'flex'});\n\n                \/\/ Reset inactive button prices\n                container.find('.pcd-type-button').not('.active').each(function(){\n                    $(this).find('.pack_carton_price').html('$' + parseFloat($(this).data('price')).toFixed(2));\n                });\n\n                \/\/ Set first qty of new type\n                var firstQtyBtn = container.find('.pcd-discount-' + selectedType.toLowerCase() + ' .pcd-discount-qty');\n                var firstQty    = parseInt(firstQtyBtn.first().data('qty'), 10) || 1;\n                quantityInput.val(firstQty);\n                updatePriceDisplay();\n            });\n\n            \/\/ Swatch click \u2014 set qty, updatePriceDisplay handles highlight\n            container.find('.pcd-discount-qty').off('click').on('click', function(){\n                quantityInput.val(parseInt($(this).data('qty'), 10) || 1);\n                updatePriceDisplay();\n            });\n\n            \/\/ Minus\n            container.find('.pcd-qty-btn.minus').off('click').on('click', function(){\n                var v = parseInt(quantityInput.val(), 10) || 1;\n                if (v > 1) quantityInput.val(v - 1).trigger('change');\n            });\n\n            \/\/ Plus\n            container.find('.pcd-qty-btn.plus').off('click').on('click', function(){\n                var v = parseInt(quantityInput.val(), 10) || 1;\n                quantityInput.val(v + 1).trigger('change');\n            });\n\n            \/\/ Manual input\n            quantityInput.off('change keyup').on('change keyup', function(){\n                var val = parseInt($(this).val(), 10);\n                setTimeout(function(){ if (isNaN(val) || val < 1) quantityInput.val(1); }, 500);\n                updatePriceDisplay();\n            });\n\n            \/\/ Add to Cart\n            addToCartBtn.off('click').on('click', function(e){\n                e.preventDefault();\n                var qty        = parseInt(quantityInput.val(), 10) || 1;\n                var unitPrice  = parseFloat(container.find('.pcd-type-button.active').data('price')) || 0;\n                var finalPrice = calculatePrice(unitPrice, qty);\n                var purchType  = container.find('.pcd-type-button.active').data('type') || selectedType;\n\n                var data = {\n                    action:        'pcd_ajax_add_to_cart',\n                    product_id:    productId,\n                    quantity:      qty,\n                    purchase_type: purchType,\n                    custom_price:  finalPrice\n                };\n\n                addToCartBtn.prop('disabled', true).text('Adding...');\n\n                $.post('https:\/\/staging.nativenic.com\/wp-admin\/admin-ajax.php', data, function(response){\n                    if (response.success) {\n                        $(document.body).trigger('wc_fragment_refresh');\n                        addToCartBtn.text('Added!');\n                        var cartSidebar  = document.querySelector('.cart-widget-side.wd-side-hidden.wd-right');\n                        var cartBackdrop = document.querySelector('.wd-close-side.wd-fill');\n                        if (cartSidebar)  cartSidebar.classList.add('wd-opened');\n                        if (cartBackdrop) cartBackdrop.classList.add('wd-close-side-opened');\n                        setTimeout(function(){\n                            updatePriceDisplay();\n                            addToCartBtn.prop('disabled', false);\n                        }, 1500);\n                    } else {\n                        addToCartBtn.prop('disabled', false);\n                        updatePriceDisplay();\n                    }\n                }).fail(function(){\n                    addToCartBtn.prop('disabled', false);\n                    updatePriceDisplay();\n                });\n            });\n\n            updatePriceDisplay();\n        }\n\n        $('.pcd-container').each(function(){\n            initPCDContainer($(this));\n        });\n\n    });\n    <\/script>\n    \n\t\t\t\t<div class=\"wd-product-card-hover fade-in-block wd-scroll\">\n\t\t\t\t\t\t\n\t\t\t\t\t<\/div>\n\t<\/div>\n<\/div>\n<\/div>\n\t\t\t\t\t\t\t\t<div class=\"wd-product wd-col wd-hover-fw-button wd-hover-with-fade product-grid-item product type-product post-30476 status-publish instock product_cat-cigarettes product_tag-budget product_tag-canadian product_tag-cooling product_tag-king-size product_tag-menthol-cigarettes product_tag-native-brand has-post-thumbnail shipping-taxable purchasable product-type-simple\" data-loop=\"10\" data-id=\"30476\">\n\t\n<div class=\"wd-product-wrapper product-wrapper\">\n\t<div class=\"wd-product-card-bg content-product-imagin\"><\/div>\n\t<div class=\"wd-product-thumb product-element-top wd-quick-shop\">\n\t\t<a href=\"https:\/\/staging.nativenic.com\/fr\/produit\/canadian-menthol-king-size\/\" class=\"wd-product-img-link product-image-link\" tabindex=\"-1\" aria-label=\"Canadian Menthol (King Size)\">\n\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"800\" src=\"https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Canadian-Menthol-King-Size-800x800.jpg\" class=\"attachment-large size-large\" alt=\"Canadian Menthol carton and pack \u2013 buy native cigarettes online at NativeNic Canada\" srcset=\"https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Canadian-Menthol-King-Size-800x800.jpg 800w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Canadian-Menthol-King-Size-300x300.jpg 300w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Canadian-Menthol-King-Size-150x150.jpg 150w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Canadian-Menthol-King-Size-768x768.jpg 768w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Canadian-Menthol-King-Size-1536x1536.jpg 1536w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Canadian-Menthol-King-Size-60x60.jpg 60w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Canadian-Menthol-King-Size-430x430.jpg 430w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Canadian-Menthol-King-Size-700x700.jpg 700w, https:\/\/staging.nativenic.com\/wp-content\/uploads\/2026\/01\/Canadian-Menthol-King-Size.jpg 2048w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/>\t\t<\/a>\n\n\t\t\n\t\t<div class=\"wd-buttons wd-pos-r-t\">\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"wd-quick-view-btn wd-quick-view-icon wd-action-btn wd-style-icon\">\n\t\t\t<a\n\t\t\t\thref=\"https:\/\/staging.nativenic.com\/fr\/produit\/canadian-menthol-king-size\/\"\n\t\t\t\tclass=\"open-quick-view\"\n\t\t\t\trel=\"nofollow\"\n\t\t\t\tdata-id=\"30476\"\n\t\t\t\t>\n\t\t\t\t\t<span class=\"wd-action-icon\"><\/span>\n\t\t\t\t\t<span class=\"wd-action-text\">\n\t\t\t\t\t\tQuick view\t\t\t\t\t<\/span>\n\t\t\t<\/a>\n\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t<\/div>\n\n\t<div class=\"product-element-bottom\">\n\n\t\t<h3 class=\"wd-entities-title\"><a href=\"https:\/\/staging.nativenic.com\/fr\/produit\/canadian-menthol-king-size\/\">Canadian Menthol (King Size)<\/a><\/h3>\n\t\t\t\t<div class=\"wd-product-cats\">\n\t\t\t\t\t\t<a href=\"https:\/\/staging.nativenic.com\/fr\/categorie-produit\/cigarettes\/\" rel=\"tag\">Native Cigarettes<\/a>\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"wd-star-rating\">\n\t\t\n\t\t\t\t<div class=\"star-rating\" role=\"img\" aria-label=\"Note 4.85 sur 5\">\n\t\t\t\t\t<span style=\"width:97%\">\n\t\t\tNote <strong class=\"rating\">4.85<\/strong> sur 5\t\t<\/span>\n\t\t\t\t<\/div>\n\n\t\t\t\t<a href=\"https:\/\/staging.nativenic.com\/fr\/produit\/canadian-menthol-king-size\/#reviews\" class=\"woocommerce-review-link\" rel=\"nofollow\">\n\t\t\t(54)\n\t\t<\/a>\n\t\t\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\n\t\t\n\t\t<div class=\"wrap-price\">\n\t\t\t\n\t<span class=\"price\"><span class=\"woocommerce-Price-amount amount\"><bdi><span class=\"woocommerce-Price-currencySymbol\">&#36;<\/span>4.00<\/bdi><\/span><\/span>\n\n\t\t\t\t\t<\/div>\n\n\t\t<div class=\"wd-add-btn wd-add-btn-replace\">\n\t\t\t\n\t\t\t<a href=\"\/fr\/wp-json\/wp\/v2\/pages\/30587?add-to-cart=30476\" aria-describedby=\"woocommerce_loop_add_to_cart_link_describedby_30476\" data-quantity=\"1\" class=\"button product_type_simple add_to_cart_button ajax_add_to_cart pcd-add-to-cart-btn add-to-cart-loop\" data-product_id=\"30476\" data-product_sku=\"\" aria-label=\"Ajouter au panier\u00a0: &ldquo;Canadian Menthol (King Size)&rdquo;\" rel=\"nofollow\" data-success_message=\"\u00ab\u00a0Canadian Menthol (King Size)\u00a0\u00bb a \u00e9t\u00e9 ajout\u00e9 \u00e0 votre panier\" role=\"button\"><span class=\"wd-action-icon\"><span class=\"wd-check-icon\"><\/span><\/span><span class=\"wd-action-text\">Ajouter au panier<\/span><\/a>\t<span id=\"woocommerce_loop_add_to_cart_link_describedby_30476\" class=\"screen-reader-text\">\n\t\t\t<\/span>\n\t\t<\/div>\n\n\t\t<div class=\"pcd-container pcd-container-price-hide\"\n     data-product_id=\"30476\"\n     data-discounts-pack='[{\"quantity\":1,\"discount\":0},{\"quantity\":2,\"discount\":0},{\"quantity\":5,\"discount\":0},{\"quantity\":10,\"discount\":0}]'\n     data-discounts-carton='[{\"quantity\":4,\"discount\":0},{\"quantity\":5,\"discount\":20},{\"quantity\":10,\"discount\":22.85},{\"quantity\":20,\"discount\":28}]'>\n\n    <div class=\"pcd-type-select\">\n                    <button class=\"pcd-type-button\" data-type=\"Pack\" data-price=\"4.0\">\n                <span>PACK<\/span>\n                <span class=\"pack_carton_price\">$4.0<\/span>\n            <\/button>\n                            <button class=\"pcd-type-button active\" data-type=\"Carton\" data-price=\"38.88\">\n                <span>CARTON<\/span>\n                <span class=\"pack_carton_price\">$38.88<\/span>\n            <\/button>\n            <\/div>\n    <input type=\"hidden\" name=\"custom_price\" class=\"custom_price\" value=\"...\">\n\n    <div class=\"pcd-discount-info\">\n        <div class='pcd-discount-group pcd-discount-pack' style='display:none;'><div class='pcd-discount-qty active' data-type='pack' data-qty='1'>1<\/div><div class='pcd-discount-qty ' data-type='pack' data-qty='2'>2<\/div><div class='pcd-discount-qty ' data-type='pack' data-qty='5'>5<\/div><div class='pcd-discount-qty ' data-type='pack' data-qty='10'>10<\/div><\/div><div class='pcd-discount-group pcd-discount-carton' style='display:none;'><div class='pcd-discount-qty active' data-type='carton' data-qty='4'>4<\/div><div class='pcd-discount-qty ' data-type='carton' data-qty='5'>5<\/div><div class='pcd-discount-qty ' data-type='carton' data-qty='10'>10<\/div><div class='pcd-discount-qty ' data-type='carton' data-qty='20'>20<\/div><\/div>    <\/div>\n\n    <div class=\"pcd-add-to-cart-row\">\n        <div class=\"pcd-qty-input-box\">\n            <button class=\"pcd-qty-btn minus\">\u2212<\/button>\n            <input type=\"number\" min=\"1\" step=\"1\" value=\"1\" class=\"pcd-qty-input\" \/>\n            <button class=\"pcd-qty-btn plus\">+<\/button>\n        <\/div>\n        <button class=\"pcd-add-to-cart-btn\">Add to Cart<\/button>\n    <\/div>\n\n    <div class=\"pcd-price-display\" style=\"margin-top:5px;font-weight:bold;text-align:center;\"><\/div>\n    <div class=\"pcd-price-display_msg\" style=\"margin-top:5px;font-weight:bold;text-align:center;color:green;font-size:12px;display:none;\">QUANTITY DISCOUNT<\/div>\n<\/div>\n    <script>\n    jQuery(function($) {\n\n        function initPCDContainer(container) {\n            if (container.data('pcd-initialized')) return;\n            container.data('pcd-initialized', true);\n\n            container.parent().find('.wd-add-btn').remove();\n            $('.pcd-container-price-hide').parent().find('.price .woocommerce-Price-amount').hide();\n            $('.wd-product.product-type-variable .wd-add-btn').filter(function () {\n                return $(this).siblings('.wd-product-sku').length > 0;\n            }).css({'margin-bottom': '10px'});\n\n            var selectedTypeBtn = container.find('.pcd-type-button.active');\n            var selectedType    = selectedTypeBtn.data('type');\n            var quantityInput   = container.find('.pcd-qty-input');\n            var addToCartBtn    = container.find('.pcd-add-to-cart-btn');\n            var priceDisplay    = container.find('.pcd-price-display');\n            var priceDisplayMsg = container.find('.pcd-price-display_msg');\n            var productId       = container.data('product_id');\n\n            \/\/ Show active type's discount group on init\n            if (selectedType) {\n                container.find('.pcd-discount-group').hide();\n                container.find('.pcd-discount-' + selectedType.toLowerCase()).css({display:'flex'});\n\n                \/\/ Set default qty to 5 if Carton & 5 exists\n                if (selectedType === 'Carton') {\n                    var cGroup  = container.find('.pcd-discount-carton');\n                    var qtyBtns = cGroup.find('.pcd-discount-qty');\n                    qtyBtns.removeClass('active');\n                    var qty5 = qtyBtns.filter(function(){ return parseInt($(this).data('qty')) === 5; });\n                    if (qty5.length) { qty5.addClass('active'); quantityInput.val(5); }\n                    else { qtyBtns.first().addClass('active'); quantityInput.val(parseInt(qtyBtns.first().data('qty')) || 1); }\n                }\n            }\n\n            function getDiscount(qty) {\n                var type = container.find('.pcd-type-button.active').data('type');\n                if (!type) return 0;\n                type = type.toLowerCase();\n                var dataAttr = type === 'carton' ? 'data-discounts-carton' : 'data-discounts-pack';\n                var packages = [];\n                try { packages = JSON.parse(container[0].getAttribute(dataAttr) || '[]'); } catch(e){ return 0; }\n                var discount = 0;\n                packages.forEach(function(pkg){\n                    if (qty >= parseFloat(pkg.quantity)) discount = parseFloat(pkg.discount) \/ 100;\n                });\n                return discount;\n            }\n\n            function calculatePrice(unitPrice, qty) {\n                return (unitPrice * (1 - getDiscount(qty))).toFixed(2);\n            }\n\n            \/\/ Always keep highest matching swatch highlighted; fallback to first\n            function syncSwatches(activeTypeLower, currentQty) {\n                var $group    = container.find('.pcd-discount-' + activeTypeLower);\n                var $swatches = $group.find('.pcd-discount-qty');\n                $swatches.removeClass('active');\n                var $best = null;\n                $swatches.each(function(){\n                    if (parseInt($(this).data('qty'), 10) <= currentQty) $best = $(this);\n                });\n                if ($best) $best.addClass('active');\n                else $swatches.first().addClass('active');\n            }\n\n            function updatePriceDisplay() {\n                var qty        = parseInt(quantityInput.val(), 10) || 1;\n                var unitPrice  = parseFloat(container.find('.pcd-type-button.active').data('price')) || 0;\n                var finalUnit  = parseFloat(calculatePrice(unitPrice, qty));\n                var totalPrice = (finalUnit * qty).toFixed(2);\n                var discount   = getDiscount(qty);\n                var activeType = container.find('.pcd-type-button.active').data('type');\n\n                \/\/ Add to Cart button\n                addToCartBtn.text('ADD TO CART - $' + totalPrice);\n\n                \/\/ Total price display\n                if (discount > 0) {\n                    priceDisplay.html('Total: <del style=\"color:red;font-weight:400;\">$' + (unitPrice * qty).toFixed(2) + '<\/del> $' + totalPrice);\n                    priceDisplayMsg.show();\n                } else {\n                    priceDisplay.html('Total: $' + totalPrice);\n                    priceDisplayMsg.hide();\n                }\n\n                \/\/ Active button price with strikethrough\n                var priceHtml = discount > 0\n                    ? '<del style=\"color:red;\">$' + unitPrice.toFixed(2) + '<\/del> $' + finalUnit.toFixed(2)\n                    : '$' + finalUnit.toFixed(2);\n                container.find('.pcd-type-button.active .pack_carton_price').html(priceHtml);\n\n                \/\/ Sync swatch highlight \u2014 highest matching, never disappears\n                if (activeType) syncSwatches(activeType.toLowerCase(), qty);\n            }\n\n            \/\/ Pack\/Carton type switch\n            container.find('.pcd-type-button').off('click').on('click', function(){\n                container.find('.pcd-type-button').removeClass('active');\n                $(this).addClass('active');\n                selectedType = $(this).data('type');\n\n                container.find('.pcd-discount-group').hide();\n                container.find('.pcd-discount-' + selectedType.toLowerCase()).css({display:'flex'});\n\n                \/\/ Reset inactive button prices\n                container.find('.pcd-type-button').not('.active').each(function(){\n                    $(this).find('.pack_carton_price').html('$' + parseFloat($(this).data('price')).toFixed(2));\n                });\n\n                \/\/ Set first qty of new type\n                var firstQtyBtn = container.find('.pcd-discount-' + selectedType.toLowerCase() + ' .pcd-discount-qty');\n                var firstQty    = parseInt(firstQtyBtn.first().data('qty'), 10) || 1;\n                quantityInput.val(firstQty);\n                updatePriceDisplay();\n            });\n\n            \/\/ Swatch click \u2014 set qty, updatePriceDisplay handles highlight\n            container.find('.pcd-discount-qty').off('click').on('click', function(){\n                quantityInput.val(parseInt($(this).data('qty'), 10) || 1);\n                updatePriceDisplay();\n            });\n\n            \/\/ Minus\n            container.find('.pcd-qty-btn.minus').off('click').on('click', function(){\n                var v = parseInt(quantityInput.val(), 10) || 1;\n                if (v > 1) quantityInput.val(v - 1).trigger('change');\n            });\n\n            \/\/ Plus\n            container.find('.pcd-qty-btn.plus').off('click').on('click', function(){\n                var v = parseInt(quantityInput.val(), 10) || 1;\n                quantityInput.val(v + 1).trigger('change');\n            });\n\n            \/\/ Manual input\n            quantityInput.off('change keyup').on('change keyup', function(){\n                var val = parseInt($(this).val(), 10);\n                setTimeout(function(){ if (isNaN(val) || val < 1) quantityInput.val(1); }, 500);\n                updatePriceDisplay();\n            });\n\n            \/\/ Add to Cart\n            addToCartBtn.off('click').on('click', function(e){\n                e.preventDefault();\n                var qty        = parseInt(quantityInput.val(), 10) || 1;\n                var unitPrice  = parseFloat(container.find('.pcd-type-button.active').data('price')) || 0;\n                var finalPrice = calculatePrice(unitPrice, qty);\n                var purchType  = container.find('.pcd-type-button.active').data('type') || selectedType;\n\n                var data = {\n                    action:        'pcd_ajax_add_to_cart',\n                    product_id:    productId,\n                    quantity:      qty,\n                    purchase_type: purchType,\n                    custom_price:  finalPrice\n                };\n\n                addToCartBtn.prop('disabled', true).text('Adding...');\n\n                $.post('https:\/\/staging.nativenic.com\/wp-admin\/admin-ajax.php', data, function(response){\n                    if (response.success) {\n                        $(document.body).trigger('wc_fragment_refresh');\n                        addToCartBtn.text('Added!');\n                        var cartSidebar  = document.querySelector('.cart-widget-side.wd-side-hidden.wd-right');\n                        var cartBackdrop = document.querySelector('.wd-close-side.wd-fill');\n                        if (cartSidebar)  cartSidebar.classList.add('wd-opened');\n                        if (cartBackdrop) cartBackdrop.classList.add('wd-close-side-opened');\n                        setTimeout(function(){\n                            updatePriceDisplay();\n                            addToCartBtn.prop('disabled', false);\n                        }, 1500);\n                    } else {\n                        addToCartBtn.prop('disabled', false);\n                        updatePriceDisplay();\n                    }\n                }).fail(function(){\n                    addToCartBtn.prop('disabled', false);\n                    updatePriceDisplay();\n                });\n            });\n\n            updatePriceDisplay();\n        }\n\n        $('.pcd-container').each(function(){\n            initPCDContainer($(this));\n        });\n\n    });\n    <\/script>\n    \n\t\t\t\t<div class=\"wd-product-card-hover fade-in-block wd-scroll\">\n\t\t\t\t\t\t\n\t\t\t\t\t<\/div>\n\t<\/div>\n<\/div>\n<\/div>\n\t\t\n\t\t\t\t<\/div>\n\t\n\t\t\n\t\t\n\t\t\t\t\t<\/div>\n\t\t\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"wd-negative-gap elementor-element elementor-element-ed58723 e-flex e-con-boxed e-con e-parent\" data-id=\"ed58723\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2277f6a elementor-widget elementor-widget-heading\" data-id=\"2277f6a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\"> How to Order Native Cigarettes<br> Online in Thunder Bay at Native Nic<\/h2>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-8ddc00a e-flex e-con-boxed e-con e-parent\" data-id=\"8ddc00a\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-8295f7b e-con-full e-flex e-con e-child\" data-id=\"8295f7b\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1e8baa2 elementor-widget elementor-widget-heading\" data-id=\"1e8baa2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">1.<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4feb361 color-scheme-inherit text-left elementor-widget elementor-widget-text-editor\" data-id=\"4feb361\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\tBrowse available cigarette options online\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b373d88 e-con-full e-flex e-con e-child\" data-id=\"b373d88\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d095f02 elementor-widget elementor-widget-heading\" data-id=\"d095f02\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">2.<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1621a80 color-scheme-inherit text-left elementor-widget elementor-widget-text-editor\" data-id=\"1621a80\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\tSelect packs or cartons\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-8337325 e-con-full e-flex e-con e-child\" data-id=\"8337325\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-010fad2 elementor-widget elementor-widget-heading\" data-id=\"010fad2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">3.<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6028fb color-scheme-inherit text-left elementor-widget elementor-widget-text-editor\" data-id=\"a6028fb\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\tComplete secure checkout\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-9b46a0b e-con-full e-flex e-con e-child\" data-id=\"9b46a0b\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-3418406 elementor-widget elementor-widget-heading\" data-id=\"3418406\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">4.<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-cb894c6 color-scheme-inherit text-left elementor-widget elementor-widget-text-editor\" data-id=\"cb894c6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\tOrder is shipped within Canada\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"wd-negative-gap elementor-element elementor-element-f611568 e-flex e-con-boxed e-con e-parent\" data-id=\"f611568\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-63f47ea elementor-widget__width-initial elementor-widget elementor-widget-heading\" data-id=\"63f47ea\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Thunder Bay Native Cigarettes FAQs <\/h2>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-6e257dd e-flex e-con-boxed e-con e-parent\" data-id=\"6e257dd\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Buy Native Cigarettes Online in Thunder Bay, Ontario Residents of Thunder Bay can buy native cigarettes online and have their<\/p>","protected":false},"author":40,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"nn-location.php","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-30587","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/staging.nativenic.com\/fr\/wp-json\/wp\/v2\/pages\/30587","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/staging.nativenic.com\/fr\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/staging.nativenic.com\/fr\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/staging.nativenic.com\/fr\/wp-json\/wp\/v2\/users\/40"}],"replies":[{"embeddable":true,"href":"https:\/\/staging.nativenic.com\/fr\/wp-json\/wp\/v2\/comments?post=30587"}],"version-history":[{"count":1,"href":"https:\/\/staging.nativenic.com\/fr\/wp-json\/wp\/v2\/pages\/30587\/revisions"}],"predecessor-version":[{"id":35554,"href":"https:\/\/staging.nativenic.com\/fr\/wp-json\/wp\/v2\/pages\/30587\/revisions\/35554"}],"wp:attachment":[{"href":"https:\/\/staging.nativenic.com\/fr\/wp-json\/wp\/v2\/media?parent=30587"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}