jQuery(document).ready(function($) {
// Find elements with class ".words-table"
$('.words-table').each(function() {
// Find text inside parentheses and wrap it with <em> tags
$(this).html(function(_, html) {
return html.replace(/\((.*?)\)/g, '(<em>$1</em>)');
});// Wrap the first column's text with <strong> tag
$(this).find('td:first-child').wrapInner('<strong></strong>');// Apply <strong> tag to the matching words in the third column (case insensitive)
$(this).find('tr').each(function() {
var firstColumnText = $(this).find('td:first-child').text().trim().toLowerCase(); // Convert to lowercase
var thirdColumnCell = $(this).find('td:nth-child(3)');var thirdColumnText = thirdColumnCell.text().trim(); // No need to convert to lowercase
if (thirdColumnText.toLowerCase().includes(firstColumnText)) {
thirdColumnCell.html(thirdColumnText.replace(new RegExp(firstColumnText, "gi"), '<strong>$&</strong>'));
}
});
});// Custom function for case-insensitive comparison
function isEqualIgnoreCase(str1, str2) {
return str1.localeCompare(str2, undefined, { sensitivity: 'base' }) === 0;
}
});
document.documentElement.className += " spai_has_js";
(function(w, d){
var b = d.getElementsByTagName('head')[0];
var s = d.createElement("script");
var v = ("IntersectionObserver" in w) ? "" : "-compat";
s.async = true; // This includes the script as async.
s.src = "https://cdn.shortpixel.ai/assets/js/bundles/spai-lib-bg" + v
+ ".1.1.min.js?v=3.11.6";
w.spaiDomain = "cdn.shortpixel.ai";
w.spaiData = {
version: "3.11.6",
key: "spai",
customKeys: [],
quality: "glossy",
convert: "auto",
lqip: false,
rootMargin: "500px",
crop: false,
sizeBreakpoints: {"on":false,"base":50,"rate":10},
backgroundsMaxWidth: 1920,
resizeStyleBackgrounds: false,
nativeLazyLoad: true,
safeLazyBackgrounds: false,
asyncInitialParsing: false,
debug: false,
doSelectors: "__SPAI_DO_SELECTORS__",
exclusions: "__SPAI_EXCLUSIONS__",
sizeFromImageSuffix: true,
ajax_url: "https://impactful.ninja/wp-admin/admin-ajax.php"
};
b.appendChild(s);
}(window, document));
Impactful Ninja is reader-supported. When you buy through links on our site, we may earn an affiliate commission. Learn moreLearn more.
Affiliate Disclosure
Hey fellow impactful ninja ?
You may have noticed that Impactful Ninja is all about providing helpful information to make a positive impact on the world and society. And that we love to link back to where we found all the information for each of our posts.
Most of these links are informational-based for you to check out their primary sources with one click.
But some of these links are so-called "affiliate links" to products that we recommend.
Why do we add these product links?
First and foremost, because we believe that they add value to you. For example, when we wrote a post about the environmental impact of long showers, we came across an EPA recommendation to use WaterSense showerheads. So we linked to where you can find them. Or, for many of our posts, we also link to our favorite books on that topic so that you can get a much more holistic overview than one single blog post could provide.
And when there is an affiliate program for these products, we sign up for it. For example, as Amazon Associates, we earn from qualifying purchases.
What do these affiliate links mean for you?
First, and most importantly, we still only recommend products that we believe add value for you.
When you buy something through one of our affiliate links, we may earn a small commission - but at no additional costs to you.
And when you buy something through a link that is not an affiliate link, we won’t receive any commission but we’ll still be happy to have helped you.
What do these affiliate links mean for us?
When we find products that we believe add value to you and the seller has an affiliate program, we sign up for it.
When you buy something through one of our affiliate links, we may earn a small commission (at no extra costs to you).
And at this point in time, all money is reinvested in sharing the most helpful content with you. This includes all operating costs for running this site and the content creation itself.
What does this mean for me personally?
You may have noticed by the way Impactful Ninja is operated that money is not the driving factor behind it. It is a passion project of mine and I love to share helpful information with you to make a positive impact on the world and society. However, it's a project in that I invest a lot of time and also quite some money.
Eventually, my dream is to one day turn this passion project into my full-time job and provide even more helpful information. But that's still a long time to go.
Reducing Emissions from Deforestation and Forest Degradation (REDD+) is a United Nations-backed framework established under the Paris Climate Agreement to combat global deforestation. REDD+ projects have faced criticism in terms of effectiveness and efficiency. So, we had to ask, how effective and efficient are REDD+ carbon offsets?
REDD+ carbon offsets are effective and efficient as they immediately reduce CO2 emissions from potential baseline deforestation. However, REDD+ offsets can lack additionality and permanence, projects only reduce emissions during project lifespans, and there can be a high rate of carbon re-emission.
Keep reading to find out how efficient and effective REDD+ carbon offsets are, how you can offset your carbon footprint with REDD+ offsets, what the pros and cons of REDD+ offsets are, how REDD+ offsets can mitigate climate change, and what better alternatives to REDD+ offsets are.
The Big Picture of REDD+ Carbon Offsets
Carbon offsets play a crucial role in reducing our carbon footprint, the amount of CO2 emissions associated with an individual or an entity.
“Carbon footprint: the amount of greenhouse gasses and specifically carbon dioxide emitted by something (such as a person’s activities or a product’s manufacture and transport) during a given period”
One way to reduce our carbon footprint is via the use of carbon offsets. These are reductions in GHG emissions that are measured in tons of CO2 equivalents and are bought and sold through international brokers, online retailers, and trading platforms.
“Carbon offset: a way for a company or person to reduce the level of carbon dioxide for which they are responsible by paying money to a company that works to reduce the total amount produced in the world, for example by planting trees”
Oxford Dictionary
Essentially, carbon offsets are reductions in GHG emissions that are used to compensate for emissions occurring elsewhere. They do not directly reduce your carbon footprint, instead, they make others reduce their carbon footprint to compensate for your carbon footprint.
Carbon offsets reduce greenhouse gas (GHG) emissions beyond what we each can achieve through individual actions. Reducing Emissions from Deforestation and Forest Degradation(REDD+) carbon offsets are a type of avoidance carbon offset, which involve measures aimed at preventing carbon from being released into the atmosphere.
“REDD+: a framework created by the UNFCCC Conference of the Parties (COP) to guide activities in the forest sector that reduces emissions from deforestation and forest degradation, as well as the sustainable management of forests and the conservation and enhancement of forest carbon stocks in developing countries.”
United Nations Framework Convention on Climate Change
The REDD+ mechanism places economic value on the actions a country takes to reduce deforestation and preserve forests. This is done either through direct payments or through the use of REDD+ Result Units (RRUs). RRUs are a specific type of carbon credit, tradable certificates or permits that give companies, industries, or countries the right to emit 1 tonne (1,000kg) of CO2 or the equivalent amount of a different greenhouse gas (GHG).
REDD+ carbon offsets are a specific type of carbon offset that focus on the practice of reducing deforestation and forest degradation.REDD+ projects reduce CO2 emissions by putting financial value on forests, thereby avoiding carbon emissions that would result from deforestation.
How Effective Are REDD+ Carbon Offset Programs at Mitigating Climate Change
REDD+ carbon offsets help reduce deforestation REDD+ offset baseline calculations have a high degree of uncertainty The majority of REDD+ offsets only protect the baseline REDD+ offsets often lack permanence
How Efficient Are REDD+ Carbon Offsets at Reducing CO2 Emissions
REDD+ carbon offsets chiefly preserve existing forests REDD+ carbon offsets are relatively cost-effective REDD+ offsets only avoid CO2 emissions during their project life span and can have a high rate of carbon re-emission
REDD+ efforts focus on protecting existing forests from deforestation and degradation. REDD+ varies in effectiveness and efficiency due to limitations involving additionality and permanence.
Here’s How Effective and Efficient REDD+ Carbon Offsets Are
In terms of effectiveness, REDD+ carbon offsets help reduce carbon emission through a reduction in deforestation; however, baseline emissions calculations can have a high degree of uncertainty. The majority of REDD+ projects only protect the baseline and often lack permanence.
In terms of efficiency, REDD+ carbon offsets chiefly preserve existing forests and are relatively cost-effective; however, they also only avoid emissions during the project’s life span and they can have a high rate of carbon re-emission.
How Effective Are REDD+ Carbon Offset Programs at Reducing CO2 Emissions
Effectiveness involves completing a task with a desired outcome, typically a successful one.
“Effective: producing the result that is wanted or intended; producing a successful result”
Oxford Dictionary
REDD+ offsets are effective because they help reduce deforestation; however, baseline emissions calculations can have a high degree of uncertainty. Most REDD+ projects also only protect the baseline and often lack permanence, making them less effective than other methods of carbon reduction.
In short, REDD+ offsets place a financial value on the carbon stored within our rainforests to incentivize against deforestation and future forest degradation.
REDD+ Offset Baseline Calculations Have a High Degree of Uncertainty
The number of carbon credits issued by a REDD+ project depends on how much carbon emissions are avoided due to the prevented deforestation. This is calculated by determining the baseline emissions, or the business-as-usual carbon emissions resulting from deforestation and forest degradation in the absence of efforts to reduce those emissions.
To identify the baseline, the calculations use the deforestation rate in a nearby area over the past 10 years. After this baseline is determined, the calculations then determine the number of carbon emissions avoided by a certain project and issue an equivalent number of carbon credits.
However, because we cannot know exactly what would happen to a specific forest in the absence of a REDD+ project, calculating the baseline has a high degree of uncertainty. And an inaccurate baseline could lead to overestimating carbon emissions reductions and subsequently over-issuing carbon credits. This gives the illusion that we are avoiding more carbon emissions than we actually are.
In short, we cannot know exactly what would happen to a specific forest in the absence of a REDD+ project, so it is impossible to calculate the baseline emissions with absolute certainty.
The Majority of REDD+ Offset Projects Only Protect the Baseline
However, even after offsetting your emissions with REDD+ offsets, you might still be a net carbon emitter. This is because you are offsetting avoided carbon emissions due to the avoided deforestation rather than offsetting your own direct carbon emissions.
In short, the majority of REDD+ offset projects only protect the baseline which can cause you to still be a net carbon emitter even after offsetting.
REDD+ Offsets Often Lack Permanence
REDD+ carbon offset projects must be permanent in order to be effective. This means there must be a full guarantee against reversals of carbon emissions for the foreseeable future.
But nature-based solutions, like REDD+, lack permanence because they are reversible. For REDD+ projects, carbon is stored in biomass (trees). Once a tree is protected by a REDD+ project, it should never be removed in order to guarantee permanence. But trees die naturally, and environmental disasters such as floods, fires, changes in land use, and climate change itself can negate any permanence.
When comparing REDD+ to other methods of carbon removal like direct carbon capture (DCC), in which carbon is removed from the atmosphere permanently, we find that REDD+ projects are less effective at reducing carbon emissions.
In short, nature-based solutions like REDD+ lack permanence because they are reversible.
How Efficient Are REDD+ Carbon Offset Programs at Mitigating Climate Change
Efficiency involves performing a task while using the least amount of resources and producing the least amount of waste possible.
“Efficient: working in a way that does not waste a resource (= something valuable such as fuel, water, or money)”
Cambridge Dictionary
REDD+ offsets are efficient because they chiefly preserve existing forests and are relatively cost-effective; however, they also only avoid emissions during the project’s life span and they can have a high rate of carbon re-emission, making them less effective than other methods of carbon reduction.
REDD+ offsets chiefly protect existing forests from deforestation, rather than creating new forests first and then protecting those forests.
Protecting existing forests rather than creating new ones is more time effective because finding suitable land and physically planting the trees to create a new forest takes time. Carbon emissions can also be reduced immediately when you protect existing forests, whereas creating new forests requires waiting for the trees to first reach maturity before they can begin to reduce carbon emissions.
In short, REDD+ offsets chiefly protect existing forests, which is more time and cost-effective than other methods of carbon emission reduction.
REDD+ Carbon Offsets Are Relatively Cost-Effective
But REDD+ carbon credits themselves are typically more cost-effective than other categories of offsets. For example, REDD+ offsets from leading providers (i.e., REDD.plus, Pachama, Wildlife Works, and Terrapass) cost less than $50 per ton of CO2. Compare this to direct carbon capture offsets which can cost anywhere from $250-$650 per ton of CO2.
In short, REDD+ offsets are relatively cost-effective when compared to other methods of carbon emission reduction.
REDD+ Offsets Only Avoid CO2 Emissions During Their Project Life Span and Can Have a High Rate of Carbon Re-Emission
REDD+ offsets are avoidance carbon offsets, practices that seek to prevent carbon from being released into the atmosphere. REDD+ projects are developed to protect forests over a certain period of time, and once that time span is over, the forest is no longer protected and may be subjected to deforestation.
Also, REDD+ carbon offsets often lack additionality, the idea that carbon emissions reductions would not have occurred without REDD+ interventions, and permanence, or full guarantee against reversals of carbon emission for the foreseeable future.
High rates of carbon re-emission can occur either from inaccurate calculations of baseline emissions affecting additionality or from the risk of environmental disasters such as floods, fires, changes in land use, and climate change itself negating permanence.
In short, REDD+ offsets avoid emissions only during project lifespans and REDD+ projects may have high rates of carbon re-emission due to a lack of additionality and permanence.
How Could you Offset Your Own Carbon Footprint With REDD+ Carbon Offsets
The market for carbon offsets was small in the year 2000, but by 2010 it had already grown to represent nearly $10 billion worldwide. The Ecosystem Marketplace predicts the VCM can grow to $50B by the year 2050. The voluntary carbon offset market (VCM) is where everyday consumers can purchase carbon offsets to offset their carbon emissions.
On the VCM, REDD.plus provides carbon credits that are verified by the UNFCCC and registered under the Paris Agreement. But there are others protecting rainforests and preventing further deforestation across the globe. Below are our favorite REDD+ offsets.
Carbon offset purchases support UNFCCC-verified REDD+ projects around the globe. REDD.plus is a central registry and exchange for REDD+ Result Units, a type of carbon credit.
Carbon offset purchases support third-party certified carbon offset projects including the Manoa, Pancajá Pará, and Chocó-Darién Bioregion REDD+ projects in Brazil and Colombia.
Carbon offset purchases support third-party certified carbon offset projects including The Kasigau Corridor, Mai Ndombe, and Southern Cardamom REDD+ projects in Kenya, Cambodia, and Colombia respectively.
Carbon offset purchases from their Carbon Balanced Programme supports REDD+ projects in Ecuador, Guatemala, Mexico, and Vietnam. World Land Trust protects threatened habitats by creating nature reserves on land they purchase.
Carbon offset purchases support third-party certified carbon offset projects including the Purus, Russas-Valparaiso, and Envira Amazonia REDD+ projects in Brazil.
Carbon offset purchases support Quality Assurance Standard certified carbon offset projects including the Brazilian Amazon Forest and Lower Zambezi Forest REDD+ projects in Brazil and Zambia.
Related: Are you interested in learning more about the best REDD+ carbon offsets? Check out the full article here: “Best REDD+ Carbon Offsets”
What Are The 5 Pros and 4 Cons of REDD+ Carbon Offsets
Reducing Emissions from Deforestation and Forest Degradation (REDD+) carbon offsets reduce deforestation and forest degradation, mitigate climate change, preserve biodiversity, help maintain the water cycle, and contribute to the advancement of modern medicine. They also allow us to reduce carbon emissions in ways we wouldn’t be able to accomplish individually.
However, REDD+ offsets often lack additionality and permanence, and determining baseline carbon emissions is difficult. They also do not reduce your own carbon emissions.
REDD+ offsets have various pros that make them effective at reducing deforestation, preserving rainforests, and preventing carbon stored in trees from entering our atmosphere.
5 Pros of REDD+ Carbon Offsets
Quick Facts
#1: REDD+ offsets reduce deforestation and forest degradation
REDD+ refers to the following 5 activities: Reducing emissions from deforestation Reducing emissions from forest degradation Conservation of forest carbon stocks Sustainable management of forests Enhancement of forest carbon stocks
Rainforests act like a giant carbon sink, capable of absorbing 2.4 billion tons of CO2 every year and producing approximately 20% of our oxygen. REDD+ offsets put financial value on rainforests and the carbon stored within them, incentivizing their protection.
#3: REDD+ offsets preserve biodiversity
REDD+ offsets protect rainforests and the biodiversity contained within them, which in turn maintains healthy ecosystems.
#4: REDD+ offsets help maintain the water cycle
REDD+ offsets help maintain the water cycle because they are capable of storing large amounts of water. Clouds created via evapotranspiration also provide precipitation for regions across the globe.
Understanding the drawbacks of REDD+ offsets is important when implementing this strategy on a large scale in order to mitigate climate change.
4 Cons of REDD+ Carbon Offsets
Quick Facts
#1: REDD+ offsets often lack additionality
REDD+ offsets often lack additionality because what would have happened without REDD+ intervention cannot be measured exactly
#2: REDD+ offsets lack permanence
REDD+ offsets lack permanence because they are reversible. Trees die naturally, and environmental disasters such as floods, fires, changes in land use, and climate change itself can negate any permanence.
#3: Identifying the baseline for REDD+ projects is not accurate
We cannot know exactly what would happen to a specific forest in the absence of a REDD+ project, so it is impossible to calculate the baseline emissions with absolute certainty. This can lead to an overestimation of carbon emissions reductions and an over-issuance of carbon credits.
#4: REDD+ offsets do not reduce your own carbon emissions, which can lead to greenwashing
If emissions are only offset and not reduced from the source, this could lead to greenwashing, when the consumer is deceived into thinking they are offsetting their emissions but in reality, they are not.
What Are Better Alternatives to REDD+ Carbon Offsets
If used correctly, Reducing Emissions from Deforestation and Forest Degradation (REDD+) carbon offsets can provide environmental, economic, and social benefits beyond reducing carbon emissions. They have the potential to instigate meaningful environmental change and protect our rainforest communities.
However, we can’t let this method be a guilt-free way to reduce carbon emissions. REDD+ carbon offsets help avoid carbon emissions from entering the atmosphere, but they do not help remove what is already there. REDD+ must be used in conjunction with direct carbon reduction measures until the industry has time to develop accurate baseline identification methods and can ensure additionality and permanence.
These direct reduction measures don’t have to involve drastic changes either. Actions that may seem small can have a big impact because those small changes add up! You can reduce your carbon footprint in three main areas of your life: household, travel, and lifestyle.
Walk or bike when possible: The most efficient ways of traveling are walking, bicycling, or taking the train. Using a bike instead of a car can reduce carbon emissions by 75%. These forms of transportation also provide lower levels of air pollution.
Switch to renewable energy sources: The six most common types of renewable energy are solar, wind, hydro, tidal, geothermal, and biomass energy. They are a substitute for fossil fuels that can reduce the effects of global warming by limiting global carbon emissions and other pollutants.
Recycle: Recycling uses less energy and deposits less waste in landfills. Less manufacturing and transportation energy costs mean fewer carbon emissions generated. Less waste in landfills means less CH4 is generated.
Eat less meat and dairy: Meat and dairy account for 14.5% of global GHG emissions, with beef and lamb being the most carbon-intensive. Globally, we consume much more meat than is considered sustainable, and switching to a vegan or vegetarian diet could reduce emissions.
Take shorter showers: Approximately 1.2 trillion gallons of water are used each year in the United States just for showering purposes, and showering takes up about 17% of residential water usage. The amount of water consumed and the energy cost of that consumption are directly related. The less water we use the less energy we use. And the less energy we use, the less of a negative impact we have on the environment.
Because REDD+ offsets are an indirect way and not a direct way of reducing emissions, they alone will not be enough to reduce global carbon emissions significantly. Direct measures of emission reductions, such as reducing individual energy use and consumption, are better alternatives to REDD+ offsets.
Reducing Emissions from Deforestation and Forest Degradation (REDD+) offsets are effective because they help reduce deforestation; however, the majority of REDD+ projects only protect a (difficult to establish) baseline, and projects often lack additionality and permanence. REDD+ offsets are efficient in the sense that they are time and cost-effective; however, they only avoid carbon emissions during the project lifespan and may have high rates of carbon re-emission.
Carbon offsets can instigate meaningful change, but they should not be seen as the only solution to climate change. They are effective at reducing CO2 in the short term, but in the long term, they fail to reduce CO2 enough.
When used in conjunction with direct CO2 reduction measures, carbon offsetting can be much more effective. We should reduce our own carbon footprint as much as possible first, and only then choose the most effective carbon offsets.
Grace loves to research and write about all things related to climate action and sustainability. She holds a Bachelor’s degree in Environmental Biology and works as a Natural Resource Specialist. Outside of work, she loves to work out, play soccer, and take her dog for long walks.
Get the 5-minute newsletter that brings real positive news to your inbox — every Mon, Wed, and Fri.
0
jQuery(document).ready(function () {
// Click event for the link with ".listen" class
$(".listen").click(function (e) {
e.preventDefault();
$("#affiliate-disclosure, #social-share-item").slideUp();
$("#l2it-audio-player").slideToggle("fast", "linear");
});// Click event for the link with ".disclosure" class
$(".disclosure").click(function (e) {
e.preventDefault();
$("#l2it-audio-player, #social-share-item").slideUp();
$("#affiliate-disclosure").slideToggle("fast", "linear");
});// Click event for the link with ".share-button" class
$(".share-button").click(function (e) {
e.preventDefault();
$("#l2it-audio-player, #affiliate-disclosure").slideUp();
$("#social-share-item").slideToggle("fast", "linear");
});// Open #affiliate-disclosure by default
$("#affiliate-disclosure").slideDown("fast", "linear");
});
window.fluent_form_ff_form_instance_5_2 = {"id":"5","ajaxUrl":"https:\/\/impactful.ninja\/wp-admin\/admin-ajax.php","settings":{"layout":{"labelPlacement":"top","helpMessagePlacement":"with_label","errorMessagePlacement":"inline"},"restrictions":{"denyEmptySubmission":{"enabled":false}}},"form_instance":"ff_form_instance_5_2","form_id_selector":"fluentform_5","rules":{"description":{"required":{"value":true,"message":"Please enter your feedback here.","global_message":"This field is required","global":false}},"names[first_name]":{"required":{"value":true,"message":"Please enter your name (or any pseudonym if you prefer) here.","global_message":"This field is required","global":false}},"names[middle_name]":{"required":{"value":false,"message":"This field is required","global_message":"This field is required","global":true}},"names[last_name]":{"required":{"value":false,"message":"This field is required","global_message":"This field is required","global":true}},"email":{"required":{"value":true,"message":"Please enter your email address here.","global_message":"This field is required","global":false},"email":{"value":true,"message":"This field must contain a valid email","global_message":"This field must contain a valid email","global":true}}},"debounce_time":300,"file_upload_settings":[]};
window.fluent_form_ff_form_instance_10_3 = {"id":"10","ajaxUrl":"https:\/\/impactful.ninja\/wp-admin\/admin-ajax.php","settings":{"layout":{"labelPlacement":"top","helpMessagePlacement":"with_label","errorMessagePlacement":"inline"},"restrictions":{"denyEmptySubmission":{"enabled":false}}},"form_instance":"ff_form_instance_10_3","form_id_selector":"fluentform_10","rules":{"names[first_name]":{"required":{"value":true,"message":"Please fill your name","global_message":"This field is required","global":false}},"names[middle_name]":{"required":{"value":false,"message":"This field is required","global_message":"This field is required","global":true}},"names[last_name]":{"required":{"value":false,"message":"This field is required","global_message":"This field is required","global":true}},"email":{"required":{"value":true,"message":"Please fill your email","global_message":"This field is required","global":false},"email":{"value":true,"message":"This field must contain a valid email","global_message":"This field must contain a valid email","global":true}}},"debounce_time":300,"file_upload_settings":[]};
window.fluent_form_ff_form_instance_17_4 = {"id":"17","ajaxUrl":"https:\/\/impactful.ninja\/wp-admin\/admin-ajax.php","settings":{"layout":{"labelPlacement":"top","helpMessagePlacement":"with_label","errorMessagePlacement":"inline"},"restrictions":{"denyEmptySubmission":{"enabled":false}}},"form_instance":"ff_form_instance_17_4","form_id_selector":"fluentform_17","rules":{"names[first_name]":{"required":{"value":true,"message":"Please fill your name","global_message":"This field is required","global":false}},"names[middle_name]":{"required":{"value":false,"message":"This field is required","global_message":"This field is required","global":true}},"names[last_name]":{"required":{"value":false,"message":"This field is required","global_message":"This field is required","global":true}},"email":{"required":{"value":true,"message":"Please fill your email","global_message":"This field is required","global":false},"email":{"value":true,"message":"This field must contain a valid email","global_message":"This field must contain a valid email","global":true}}},"debounce_time":300,"file_upload_settings":[]};
// Do not change this comment line otherwise Speed Optimizer won't be able to detect this script(function () {
function sendRequest(url, body) {
if(!window.fetch) {
const xhr = new XMLHttpRequest();
xhr.open("POST", url, true);
xhr.setRequestHeader("Content-Type", "application/json;charset=UTF-8");
xhr.send(JSON.stringify(body))
return
}const request = fetch(url, {
method: 'POST',
body: JSON.stringify(body),
keepalive: true,
headers: {
'Content-Type': 'application/json;charset=UTF-8'
}
});
}
const calculateParentDistance = (child, parent) => {
let count = 0;
let currentElement = child;// Traverse up the DOM tree until we reach parent or the top of the DOM
while (currentElement && currentElement !== parent) {
currentElement = currentElement.parentNode;
count++;
}// If parent was not found in the hierarchy, return -1
if (!currentElement) {
return -1; // Indicates parent is not an ancestor of element
}return count; // Number of layers between element and parent
}
const isMatchingClass = (linkRule, href, classes, ids) => {
return classes.includes(linkRule.value)
}
const isMatchingId = (linkRule, href, classes, ids) => {
return ids.includes(linkRule.value)
}
const isMatchingDomain = (linkRule, href, classes, ids) => {
if(!URL.canParse(href)) {
return false
}const url = new URL(href)
const host = url.host
const hostsToMatch = [host]if(host.startsWith('www.')) {
hostsToMatch.push(host.substring(4))
} else {
hostsToMatch.push('www.' + host)
}return hostsToMatch.includes(linkRule.value)
}
const isMatchingExtension = (linkRule, href, classes, ids) => {
if(!URL.canParse(href)) {
return false
}const url = new URL(href)return url.pathname.endsWith('.' + linkRule.value)
}
const isMatchingSubdirectory = (linkRule, href, classes, ids) => {
if(!URL.canParse(href)) {
return false
}const url = new URL(href)return url.pathname.startsWith('/' + linkRule.value + '/')
}
const isMatchingProtocol = (linkRule, href, classes, ids) => {
if(!URL.canParse(href)) {
return false
}const url = new URL(href)return url.protocol === linkRule.value + ':'
}
const isMatchingExternal = (linkRule, href, classes, ids) => {
if(!URL.canParse(href) || !URL.canParse(document.location.href)) {
return false
}const matchingProtocols = ['http:', 'https:']
const siteUrl = new URL(document.location.href)
const linkUrl = new URL(href)// Links to subdomains will appear to be external matches according to JavaScript,
// but the PHP rules will filter those events out.
return matchingProtocols.includes(linkUrl.protocol) && siteUrl.host !== linkUrl.host
}
const isMatch = (linkRule, href, classes, ids) => {
switch (linkRule.type) {
case 'class':
return isMatchingClass(linkRule, href, classes, ids)
case 'id':
return isMatchingId(linkRule, href, classes, ids)
case 'domain':
return isMatchingDomain(linkRule, href, classes, ids)
case 'extension':
return isMatchingExtension(linkRule, href, classes, ids)
case 'subdirectory':
return isMatchingSubdirectory(linkRule, href, classes, ids)
case 'protocol':
return isMatchingProtocol(linkRule, href, classes, ids)
case 'external':
return isMatchingExternal(linkRule, href, classes, ids)
default:
return false;
}
}
const track = (element) => {
const href = element.href ?? null
const classes = Array.from(element.classList)
const ids = [element.id]
const linkRules = [{"type":"extension","value":"pdf"},{"type":"extension","value":"zip"},{"type":"protocol","value":"mailto"},{"type":"protocol","value":"tel"}]
if(linkRules.length === 0) {
return
}// For link rules that target an id, we need to allow that id to appear
// in any ancestor up to the 7th ancestor. This loop looks for those matches
// and counts them.
linkRules.forEach((linkRule) => {
if(linkRule.type !== 'id') {
return;
}const matchingAncestor = element.closest('#' + linkRule.value)if(!matchingAncestor || matchingAncestor.matches('html, body')) {
return;
}const depth = calculateParentDistance(element, matchingAncestor)if(depth < 7) {
ids.push(linkRule.value)
}
});// For link rules that target a class, we need to allow that class to appear
// in any ancestor up to the 7th ancestor. This loop looks for those matches
// and counts them.
linkRules.forEach((linkRule) => {
if(linkRule.type !== 'class') {
return;
}const matchingAncestor = element.closest('.' + linkRule.value)if(!matchingAncestor || matchingAncestor.matches('html, body')) {
return;
}const depth = calculateParentDistance(element, matchingAncestor)if(depth < 7) {
classes.push(linkRule.value)
}
});const hasMatch = linkRules.some((linkRule) => {
return isMatch(linkRule, href, classes, ids)
})if(!hasMatch) {
return
}const url = "https://impactful.ninja/wp-content/plugins/independent-analytics-pro/iawp-click-endpoint.php";
const siteId = "";
const body = {
href: href,
classes: classes.join(' '),
ids: ids.join(' '),
siteId: siteId,
...{"payload":{"resource":"singular","singular_id":27581,"page":1},"signature":"8b9cbe71734fe5fa3df1c04032747005"} };sendRequest(url, body)
}
let hasSearched = false;
function search() {
if(hasSearched) {
return;
}
hasSearched = true;if (document.hasOwnProperty("visibilityState") && document.visibilityState === "prerender") {
return;
}if (navigator.webdriver || /bot|crawler|spider|crawling|semrushbot|chrome-lighthouse/i.test(navigator.userAgent)) {
return;
}
let referrer_url = null;if (typeof document.referrer === 'string' && document.referrer.length > 0) {
referrer_url = document.referrer;
}const params = location.search.slice(1).split('&').reduce((acc, s) => {
const [k, v] = s.split('=');
return Object.assign(acc, {[k]: v});
}, {});const url = "https://impactful.ninja/wp-json/iawp/search";
const body = {
referrer_url,
utm_source: params.utm_source,
utm_medium: params.utm_medium,
utm_campaign: params.utm_campaign,
utm_term: params.utm_term,
utm_content: params.utm_content,
gclid: params.gclid,
...{"payload":{"resource":"singular","singular_id":27581,"page":1},"signature":"8b9cbe71734fe5fa3df1c04032747005"} };sendRequest(url, body)
}
document.addEventListener('mousedown', function (event) {
if (navigator.webdriver || /bot|crawler|spider|crawling|semrushbot|chrome-lighthouse/i.test(navigator.userAgent)) {
return;
}
const element = event.target.closest('a')if(!element) {
return
}const isPro = true
if(!isPro) {
return
}// Don't track left clicks with this event. The click event is used for that.
if(event.button === 0) {
return
}track(element)
})
document.addEventListener('click', function (event) {
if (navigator.webdriver || /bot|crawler|spider|crawling|semrushbot|chrome-lighthouse/i.test(navigator.userAgent)) {
return;
}
const element = event.target.closest('a, button, input[type="submit"], input[type="button"]')if(!element) {
return
}const isPro = true
if(!isPro) {
return
}track(element)
})
document.addEventListener('play', function (event) {
if (navigator.webdriver || /bot|crawler|spider|crawling|semrushbot|chrome-lighthouse/i.test(navigator.userAgent)) {
return;
}
const element = event.target.closest('audio, video')if(!element) {
return
}const isPro = true
if(!isPro) {
return
}track(element)
}, true)
document.addEventListener("DOMContentLoaded", function (e) {
search();
});
document.addEventListener("iawpSearch", function (e) {
search();
});
})();
var hamburgers = document.querySelectorAll(".hamburger"),
menuToggle = document.querySelector( '.menu-toggle' ),
menuItems = document.querySelectorAll( 'nav ul a' ),
htmlEl = document.documentElement;menuToggle.addEventListener("click", function() {
for ( var h = 0; h < hamburgers.length; h++ ) {
hamburgers[h].classList.toggle("is-active");
}
} );for ( var i = 0; i < menuItems.length; i++ ) {
menuItems[i].addEventListener( 'click', function( e ) {
var closest_nav = this.closest( 'nav' );
if ( closest_nav.classList.contains( 'toggled' ) || htmlEl.classList.contains( 'slide-opened' ) ) {
var url = this.getAttribute( 'href' );
var hash = url.split('#')[1];// Open the sub-menu if the link has no destination
if ( '#' === url ) {
e.preventDefault();
for ( var h = 0; h < hamburgers.length; h++ ) {
hamburgers[h].classList.toggle("is-active");
}
}
}
}, false );
}var checkHamburgers = function() {
var openedMobileMenus = document.querySelectorAll( '.toggled, .has-active-search' );for ( var i = 0; i < openedMobileMenus.length; i++ ) {
var menuToggle = openedMobileMenus[i].querySelector( '.menu-toggle' );if ( menuToggle && menuToggle.offsetParent === null ) {
if ( openedMobileMenus[i].classList.contains( 'toggled' ) ) {
var hamburgers = document.querySelectorAll(".hamburger");for ( var h = 0; h < hamburgers.length; h++ ) {
hamburgers[h].classList.remove("is-active");
}
}
}
}
}
window.addEventListener( 'resize', checkHamburgers, false );
window.addEventListener( 'orientationchange', checkHamburgers, false );
jQuery(document).ready(function() {
jQuery(".show-more button").on("click", function() {
var $this = jQuery(this);
var $content = $this.parent().prev("div.content");
$content.toggleClass("hideContent showContent");
$this.remove(); // Remove the button after it is clicked
});
});
window.fluent_form_ff_form_instance_17_1 = {"id":"17","ajaxUrl":"https:\/\/impactful.ninja\/wp-admin\/admin-ajax.php","settings":{"layout":{"labelPlacement":"top","helpMessagePlacement":"with_label","errorMessagePlacement":"inline"},"restrictions":{"denyEmptySubmission":{"enabled":false}}},"form_instance":"ff_form_instance_17_1","form_id_selector":"fluentform_17","rules":{"names[first_name]":{"required":{"value":true,"message":"Please fill your name","global_message":"This field is required","global":false}},"names[middle_name]":{"required":{"value":false,"message":"This field is required","global_message":"This field is required","global":true}},"names[last_name]":{"required":{"value":false,"message":"This field is required","global_message":"This field is required","global":true}},"email":{"required":{"value":true,"message":"Please fill your email","global_message":"This field is required","global":false},"email":{"value":true,"message":"This field must contain a valid email","global_message":"This field must contain a valid email","global":true}}},"debounce_time":300,"file_upload_settings":[]};
(function () {
var c = document.body.className;
c = c.replace(/woocommerce-no-js/, 'woocommerce-js');
document.body.className = c;
})();
var fluentFormVars = {"ajaxUrl":"https://impactful.ninja/wp-admin/admin-ajax.php","forms":[],"step_text":"Step %activeStep% of %totalStep% - %stepTitle%","step_completed_text":"Completed","is_rtl":"","date_i18n":{"previousMonth":"Previous Month","nextMonth":"Next Month","months":{"shorthand":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"longhand":["January","February","March","April","May","June","July","August","September","October","November","December"]},"weekdays":{"longhand":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"shorthand":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]},"daysInMonth":[31,28,31,30,31,30,31,31,30,31,30,31],"rangeSeparator":" to ","weekAbbreviation":"Wk","scrollTitle":"Scroll to increment","toggleTitle":"Click to toggle","amPM":["AM","PM"],"yearAriaLabel":"Year","firstDayOfWeek":1},"pro_version":"6.2.15","fluentform_version":"6.2.15","force_init":"","stepAnimationDuration":"350","upload_completed_txt":"100% Completed","upload_start_txt":"0% Completed","uploading_txt":"Uploading","choice_js_vars":{"noResultsText":"No results found","loadingText":"Loading...","noChoicesText":"No choices to choose from","itemSelectText":"Press to select","maxItemTextSingular":"Only %%maxItemCount%% option can be added","maxItemTextPlural":"Only %%maxItemCount%% options can be added"},"input_mask_vars":{"clearIfNotMatch":false},"nonce":"e91bf942f6","file_delete_nonce":"397f2fec62","form_id":"17","step_change_focus":"1","has_cleantalk":"","pro_payment_script_compatible":"1","crop_image_title":"Crop Image","crop_confirm_txt":"Crop & Upload","crop_cancel_txt":"Cancel","crop_close_txt":"Close","crop_reset_txt":"Reset","crop_ratio_txt":"Crop ratio","crop_ratio_free_txt":"Free","crop_invalid_dimensions_txt":"The selected image is smaller than the required crop size.","crop_exact_dimensions_txt":"The cropped image must match the required width and height.","crop_dimension_instruction_txt":"Crop the image to exactly %1$s px x %2$s px.","crop_invalid_image_txt":"Unable to process the selected image.","crop_loading_txt":"Preparing image..."};
var fluentform_submission_messages_17 = {"file_upload_in_progress":"File upload in progress. Please wait...","javascript_handler_failed":"Javascript handler could not be loaded. Form submission has been failed. Reload the page and try again"};
var fluentform_payment_messages_17 = {"stock_out_message":"This Item is Stock Out","item_label":"Item","price_label":"Price","qty_label":"Qty","line_total_label":"Line Total","sub_total_label":"Sub Total","discount_label":"Discount","total_label":"Total","signup_fee_label":"Signup Fee","trial_label":"Trial","processing_text":"Processing...","confirming_text":"Confirming..."};
var fluentform_save_progress_messages_17 = {"copy_button":"Copy","email_button":"Email","email_placeholder":"Your Email Here","copy_success":"Copied"};
var fluentform_address_messages_17 = {"please_wait":"Please wait ...","location_not_determined":"Could not determine address from location.","address_fetch_failed":"Failed to fetch address from coordinates.","geolocation_failed":"Geolocation failed or was denied.","geolocation_not_supported":"Geolocation is not supported by this browser."};
var fluentform_gateway_messages_17 = {"request_failed":"Request failed. Please try again","payment_failed":"Payment process failed!","no_method_found":"No method found","processing_text":"Processing..."};
var fluentform_submission_messages_global = {"javascript_handler_failed":"Javascript handler could not be loaded. Form submission has been failed. Reload the page and try again"};
var fluentform_address_messages_global = {"please_wait":"Please wait ...","location_not_determined":"Could not determine address from location.","address_fetch_failed":"Failed to fetch address from coordinates.","geolocation_failed":"Geolocation failed or was denied.","geolocation_not_supported":"Geolocation is not supported by this browser."};
var fluentFormVars = {"ajaxUrl":"https://impactful.ninja/wp-admin/admin-ajax.php","forms":[],"step_text":"Step %activeStep% of %totalStep% - %stepTitle%","step_completed_text":"Completed","is_rtl":"","date_i18n":{"previousMonth":"Previous Month","nextMonth":"Next Month","months":{"shorthand":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"longhand":["January","February","March","April","May","June","July","August","September","October","November","December"]},"weekdays":{"longhand":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"shorthand":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]},"daysInMonth":[31,28,31,30,31,30,31,31,30,31,30,31],"rangeSeparator":" to ","weekAbbreviation":"Wk","scrollTitle":"Scroll to increment","toggleTitle":"Click to toggle","amPM":["AM","PM"],"yearAriaLabel":"Year","firstDayOfWeek":1},"pro_version":"6.2.15","fluentform_version":"6.2.15","force_init":"","stepAnimationDuration":"350","upload_completed_txt":"100% Completed","upload_start_txt":"0% Completed","uploading_txt":"Uploading","choice_js_vars":{"noResultsText":"No results found","loadingText":"Loading...","noChoicesText":"No choices to choose from","itemSelectText":"Press to select","maxItemTextSingular":"Only %%maxItemCount%% option can be added","maxItemTextPlural":"Only %%maxItemCount%% options can be added"},"input_mask_vars":{"clearIfNotMatch":false},"nonce":"e91bf942f6","file_delete_nonce":"397f2fec62","form_id":"5","step_change_focus":"1","has_cleantalk":"","pro_payment_script_compatible":"1","crop_image_title":"Crop Image","crop_confirm_txt":"Crop & Upload","crop_cancel_txt":"Cancel","crop_close_txt":"Close","crop_reset_txt":"Reset","crop_ratio_txt":"Crop ratio","crop_ratio_free_txt":"Free","crop_invalid_dimensions_txt":"The selected image is smaller than the required crop size.","crop_exact_dimensions_txt":"The cropped image must match the required width and height.","crop_dimension_instruction_txt":"Crop the image to exactly %1$s px x %2$s px.","crop_invalid_image_txt":"Unable to process the selected image.","crop_loading_txt":"Preparing image..."};
var fluentform_submission_messages_5 = {"file_upload_in_progress":"File upload in progress. Please wait...","javascript_handler_failed":"Javascript handler could not be loaded. Form submission has been failed. Reload the page and try again"};
var fluentform_payment_messages_5 = {"stock_out_message":"This Item is Stock Out","item_label":"Item","price_label":"Price","qty_label":"Qty","line_total_label":"Line Total","sub_total_label":"Sub Total","discount_label":"Discount","total_label":"Total","signup_fee_label":"Signup Fee","trial_label":"Trial","processing_text":"Processing...","confirming_text":"Confirming..."};
var fluentform_save_progress_messages_5 = {"copy_button":"Copy","email_button":"Email","email_placeholder":"Your Email Here","copy_success":"Copied"};
var fluentform_address_messages_5 = {"please_wait":"Please wait ...","location_not_determined":"Could not determine address from location.","address_fetch_failed":"Failed to fetch address from coordinates.","geolocation_failed":"Geolocation failed or was denied.","geolocation_not_supported":"Geolocation is not supported by this browser."};
var fluentform_gateway_messages_5 = {"request_failed":"Request failed. Please try again","payment_failed":"Payment process failed!","no_method_found":"No method found","processing_text":"Processing..."};
var fluentform_submission_messages_global = {"javascript_handler_failed":"Javascript handler could not be loaded. Form submission has been failed. Reload the page and try again"};
var fluentform_address_messages_global = {"please_wait":"Please wait ...","location_not_determined":"Could not determine address from location.","address_fetch_failed":"Failed to fetch address from coordinates.","geolocation_failed":"Geolocation failed or was denied.","geolocation_not_supported":"Geolocation is not supported by this browser."};
var fluentFormVars = {"ajaxUrl":"https://impactful.ninja/wp-admin/admin-ajax.php","forms":[],"step_text":"Step %activeStep% of %totalStep% - %stepTitle%","step_completed_text":"Completed","is_rtl":"","date_i18n":{"previousMonth":"Previous Month","nextMonth":"Next Month","months":{"shorthand":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"longhand":["January","February","March","April","May","June","July","August","September","October","November","December"]},"weekdays":{"longhand":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"shorthand":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]},"daysInMonth":[31,28,31,30,31,30,31,31,30,31,30,31],"rangeSeparator":" to ","weekAbbreviation":"Wk","scrollTitle":"Scroll to increment","toggleTitle":"Click to toggle","amPM":["AM","PM"],"yearAriaLabel":"Year","firstDayOfWeek":1},"pro_version":"6.2.15","fluentform_version":"6.2.15","force_init":"","stepAnimationDuration":"350","upload_completed_txt":"100% Completed","upload_start_txt":"0% Completed","uploading_txt":"Uploading","choice_js_vars":{"noResultsText":"No results found","loadingText":"Loading...","noChoicesText":"No choices to choose from","itemSelectText":"Press to select","maxItemTextSingular":"Only %%maxItemCount%% option can be added","maxItemTextPlural":"Only %%maxItemCount%% options can be added"},"input_mask_vars":{"clearIfNotMatch":false},"nonce":"e91bf942f6","file_delete_nonce":"397f2fec62","form_id":"10","step_change_focus":"1","has_cleantalk":"","pro_payment_script_compatible":"1","crop_image_title":"Crop Image","crop_confirm_txt":"Crop & Upload","crop_cancel_txt":"Cancel","crop_close_txt":"Close","crop_reset_txt":"Reset","crop_ratio_txt":"Crop ratio","crop_ratio_free_txt":"Free","crop_invalid_dimensions_txt":"The selected image is smaller than the required crop size.","crop_exact_dimensions_txt":"The cropped image must match the required width and height.","crop_dimension_instruction_txt":"Crop the image to exactly %1$s px x %2$s px.","crop_invalid_image_txt":"Unable to process the selected image.","crop_loading_txt":"Preparing image..."};
var fluentform_submission_messages_10 = {"file_upload_in_progress":"File upload in progress. Please wait...","javascript_handler_failed":"Javascript handler could not be loaded. Form submission has been failed. Reload the page and try again"};
var fluentform_payment_messages_10 = {"stock_out_message":"This Item is Stock Out","item_label":"Item","price_label":"Price","qty_label":"Qty","line_total_label":"Line Total","sub_total_label":"Sub Total","discount_label":"Discount","total_label":"Total","signup_fee_label":"Signup Fee","trial_label":"Trial","processing_text":"Processing...","confirming_text":"Confirming..."};
var fluentform_save_progress_messages_10 = {"copy_button":"Copy","email_button":"Email","email_placeholder":"Your Email Here","copy_success":"Copied"};
var fluentform_address_messages_10 = {"please_wait":"Please wait ...","location_not_determined":"Could not determine address from location.","address_fetch_failed":"Failed to fetch address from coordinates.","geolocation_failed":"Geolocation failed or was denied.","geolocation_not_supported":"Geolocation is not supported by this browser."};
var fluentform_gateway_messages_10 = {"request_failed":"Request failed. Please try again","payment_failed":"Payment process failed!","no_method_found":"No method found","processing_text":"Processing..."};
var fluentform_submission_messages_global = {"javascript_handler_failed":"Javascript handler could not be loaded. Form submission has been failed. Reload the page and try again"};
var fluentform_address_messages_global = {"please_wait":"Please wait ...","location_not_determined":"Could not determine address from location.","address_fetch_failed":"Failed to fetch address from coordinates.","geolocation_failed":"Geolocation failed or was denied.","geolocation_not_supported":"Geolocation is not supported by this browser."};
var fluentFormVars = {"ajaxUrl":"https://impactful.ninja/wp-admin/admin-ajax.php","forms":[],"step_text":"Step %activeStep% of %totalStep% - %stepTitle%","step_completed_text":"Completed","is_rtl":"","date_i18n":{"previousMonth":"Previous Month","nextMonth":"Next Month","months":{"shorthand":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"longhand":["January","February","March","April","May","June","July","August","September","October","November","December"]},"weekdays":{"longhand":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"shorthand":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]},"daysInMonth":[31,28,31,30,31,30,31,31,30,31,30,31],"rangeSeparator":" to ","weekAbbreviation":"Wk","scrollTitle":"Scroll to increment","toggleTitle":"Click to toggle","amPM":["AM","PM"],"yearAriaLabel":"Year","firstDayOfWeek":1},"pro_version":"6.2.15","fluentform_version":"6.2.15","force_init":"","stepAnimationDuration":"350","upload_completed_txt":"100% Completed","upload_start_txt":"0% Completed","uploading_txt":"Uploading","choice_js_vars":{"noResultsText":"No results found","loadingText":"Loading...","noChoicesText":"No choices to choose from","itemSelectText":"Press to select","maxItemTextSingular":"Only %%maxItemCount%% option can be added","maxItemTextPlural":"Only %%maxItemCount%% options can be added"},"input_mask_vars":{"clearIfNotMatch":false},"nonce":"e91bf942f6","file_delete_nonce":"397f2fec62","form_id":"17","step_change_focus":"1","has_cleantalk":"","pro_payment_script_compatible":"1","crop_image_title":"Crop Image","crop_confirm_txt":"Crop & Upload","crop_cancel_txt":"Cancel","crop_close_txt":"Close","crop_reset_txt":"Reset","crop_ratio_txt":"Crop ratio","crop_ratio_free_txt":"Free","crop_invalid_dimensions_txt":"The selected image is smaller than the required crop size.","crop_exact_dimensions_txt":"The cropped image must match the required width and height.","crop_dimension_instruction_txt":"Crop the image to exactly %1$s px x %2$s px.","crop_invalid_image_txt":"Unable to process the selected image.","crop_loading_txt":"Preparing image..."};
var fluentform_submission_messages_17 = {"file_upload_in_progress":"File upload in progress. Please wait...","javascript_handler_failed":"Javascript handler could not be loaded. Form submission has been failed. Reload the page and try again"};
var fluentform_payment_messages_17 = {"stock_out_message":"This Item is Stock Out","item_label":"Item","price_label":"Price","qty_label":"Qty","line_total_label":"Line Total","sub_total_label":"Sub Total","discount_label":"Discount","total_label":"Total","signup_fee_label":"Signup Fee","trial_label":"Trial","processing_text":"Processing...","confirming_text":"Confirming..."};
var fluentform_save_progress_messages_17 = {"copy_button":"Copy","email_button":"Email","email_placeholder":"Your Email Here","copy_success":"Copied"};
var fluentform_address_messages_17 = {"please_wait":"Please wait ...","location_not_determined":"Could not determine address from location.","address_fetch_failed":"Failed to fetch address from coordinates.","geolocation_failed":"Geolocation failed or was denied.","geolocation_not_supported":"Geolocation is not supported by this browser."};
var fluentform_gateway_messages_17 = {"request_failed":"Request failed. Please try again","payment_failed":"Payment process failed!","no_method_found":"No method found","processing_text":"Processing..."};
var fluentform_submission_messages_global = {"javascript_handler_failed":"Javascript handler could not be loaded. Form submission has been failed. Reload the page and try again"};
var fluentform_address_messages_global = {"please_wait":"Please wait ...","location_not_determined":"Could not determine address from location.","address_fetch_failed":"Failed to fetch address from coordinates.","geolocation_failed":"Geolocation failed or was denied.","geolocation_not_supported":"Geolocation is not supported by this browser."};
//# sourceURL=fluent-form-submission-js-extra
var PayPalCommerceGateway = {"url":"https://www.paypal.com/sdk/js?client-id=AV7sN95De2IGlDsM9Ik1rVkYH9DOGaadfuQEmmGw-rMqKiZ4eSw_A6MT_5-dnW8Aw3nJUWcRxdCVYV5w¤cy=USD&integration-date=2026-09-02&components=buttons,funding-eligibility&vault=false&commit=false&intent=capture&disable-funding=card,paylater&enable-funding=venmo","url_params":{"client-id":"AV7sN95De2IGlDsM9Ik1rVkYH9DOGaadfuQEmmGw-rMqKiZ4eSw_A6MT_5-dnW8Aw3nJUWcRxdCVYV5w","currency":"USD","integration-date":"2026-09-02","components":"buttons,funding-eligibility","vault":"false","commit":"false","intent":"capture","disable-funding":"bancontact,blik,eps,ideal,mybank,p24,trustly,multibanco,oxxo,card,paylater","enable-funding":"venmo"},"script_attributes":{"data-partner-attribution-id":"Woo_PPCP"},"client_id":"AV7sN95De2IGlDsM9Ik1rVkYH9DOGaadfuQEmmGw-rMqKiZ4eSw_A6MT_5-dnW8Aw3nJUWcRxdCVYV5w","currency":"USD","data_client_id":{"set_attribute":false,"endpoint":"/?wc-ajax=ppc-data-client-id","nonce":"3a6fbd89e3","user":0,"has_subscriptions":false,"paypal_subscriptions_enabled":true},"redirect":"https://impactful.ninja/checkout/","context":"mini-cart","ajax":{"simulate_cart":{"endpoint":"/?wc-ajax=ppc-simulate-cart","nonce":"c269e1fae1"},"change_cart":{"endpoint":"/?wc-ajax=ppc-change-cart","nonce":"8ba6c371a3"},"create_order":{"endpoint":"/?wc-ajax=ppc-create-order","nonce":"f239e1d049"},"approve_order":{"endpoint":"/?wc-ajax=ppc-approve-order","nonce":"174d2211fe"},"get_order":{"endpoint":"/?wc-ajax=ppc-get-order","nonce":"f03167b59b"},"approve_subscription":{"endpoint":"/?wc-ajax=ppc-approve-subscription","nonce":"06ff18240d"},"save_checkout_form":{"endpoint":"/?wc-ajax=ppc-save-checkout-form","nonce":"2d7579f257"},"validate_checkout":{"endpoint":"/?wc-ajax=ppc-validate-checkout","nonce":"dbfe3890e8"},"cart_script_params":{"endpoint":"/?wc-ajax=ppc-cart-script-params"},"create_setup_token":{"endpoint":"/?wc-ajax=ppc-create-setup-token","nonce":"407b8d7063"},"create_payment_token":{"endpoint":"/?wc-ajax=ppc-create-payment-token","nonce":"170868e2cf"},"create_payment_token_for_guest":{"endpoint":"/?wc-ajax=ppc-update-customer-id","nonce":"82032bc764"},"update_shipping":{"endpoint":"/?wc-ajax=ppc-update-shipping","nonce":"6cf896a6ea"},"update_customer_shipping":{"shipping_options":{"endpoint":"https://impactful.ninja/wp-json/wc/store/v1/cart/select-shipping-rate"},"shipping_address":{"cart_endpoint":"https://impactful.ninja/wp-json/wc/store/v1/cart/","update_customer_endpoint":"https://impactful.ninja/wp-json/wc/store/v1/cart/update-customer"},"wp_rest_nonce":"513a374849","update_shipping_method":"/?wc-ajax=update_shipping_method"}},"cart_contains_subscription":"","subscription_plan_id":"","subscription_custom_id":"","variable_paypal_subscription_variations":[],"variable_paypal_subscription_variation_from_cart":"","subscription_product_allowed":"","subscription_button_allowed":"1","locations_with_subscription_product":{"product":false,"payorder":false,"cart":false},"subscriptions_accept_manual_renewals":"","enforce_vault":"","can_save_vault_token":"","is_free_trial_cart":"","bn_codes":{"checkout":"Woo_PPCP","cart":"Woo_PPCP","mini-cart":"Woo_PPCP","product":"Woo_PPCP"},"payer":null,"button":{"wrapper":"#ppc-button-ppcp-gateway","is_disabled":false,"mini_cart_wrapper":"#ppc-button-minicart","is_mini_cart_disabled":false,"cancel_wrapper":"#ppcp-cancel","mini_cart_style":{"layout":"vertical","color":"gold","shape":"rect","label":"paypal","tagline":false,"height":35},"style":{"layout":"vertical","color":"gold","shape":"rect","label":"paypal","tagline":false}},"separate_buttons":{"card":{"id":"ppcp-card-button-gateway","wrapper":"#ppc-button-ppcp-card-button-gateway","style":{"shape":"rect","color":"black","layout":"horizontal"}}},"hosted_fields":{"wrapper":"#ppcp-hosted-fields","labels":{"credit_card_number":"","cvv":"","mm_yy":"MM/YY","fields_empty":"Card payment details are missing. Please fill in all required fields.","fields_not_valid":"Unfortunately, your credit card details are not valid.","card_not_supported":"Unfortunately, we do not support your credit card.","cardholder_name_required":"Cardholder's first and last name are required, please fill the checkout form required fields."},"valid_cards":[],"contingency":"NO_3D_SECURE"},"messages":{"wrapper":".ppcp-messages","is_hidden":false,"block":{"enabled":false},"amount":0,"placement":"payment","style":{"layout":"text","logo":{"type":"primary","position":"left"},"text":{"color":"black","size":"12"},"color":"blue","ratio":"1x1"}},"labels":{"error":{"generic":"Something went wrong. Please try again or choose another payment source.","required":{"generic":"Required form fields are not filled.","field":"%s is a required field.","elements":{"terms":"Please read and accept the terms and conditions to proceed with your order."}}},"billing_field":"Billing %s","shipping_field":"Shipping %s"},"simulate_cart":{"enabled":true,"throttling":5000},"order_id":"0","order_key":"","single_product_buttons_enabled":"1","mini_cart_buttons_enabled":"1","basic_checkout_validation_enabled":"","early_checkout_validation_enabled":"1","funding_sources_without_redirect":["paypal","paylater","venmo","card"],"user":{"is_logged":false,"has_wc_card_payment_tokens":false},"should_handle_shipping_in_paypal":"","server_side_shipping_callback":{"enabled":true},"appswitch":{"enabled":true},"needShipping":"","vaultingEnabled":"","productType":null,"manualRenewalEnabled":"","final_review_enabled":"1"};
//# sourceURL=ppcp-smart-button-js-extra