@sezzle/sezzle-react-widget 3.1.6 → 3.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.es.js CHANGED
@@ -1,60 +1,42 @@
1
1
  import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
 
4
- var clickToLearnMore$2 = "Click to learn more about";
5
- var closeSezzleModal$2 = "Close Sezzle Modal";
6
- var dualInstall$2 = "Buy now, pay later with %%logo%%%%afterpay%%%%min-price%%";
7
- var linkToCompleteTerms$2 = "<a href=\"https://legal.sezzle.com/user\" target=\"_blank\">Click here for complete terms.</a>";
8
- var locale$2 = "en-us";
9
- var longTerm$2 = "or monthly payments as low as %%price%% with %%logo%% %%info%%";
10
4
  var LTadjustedTotal$2 = "Total Payment:";
5
+ var LThideDetails$2 = "Hide details";
11
6
  var LTinterest$2 = "Total Interest:";
12
- var LTmonthlyAmount$2 = "/ month";
7
+ var LTmonthlyAmount$2 = "/ month*";
13
8
  var LTperMonth$2 = "per month";
14
9
  var LTpercent$2 = "percent";
15
10
  var LTreadApr$2 = "A.P.R.";
16
11
  var LTsampleApr$2 = "APR:";
17
- var LTsezzleHeader$2 = "Make easy monthly payments on your&nbsp;order";
18
- var LTsezzlePaymentHeader$2 = "Sample payments for";
19
- var LTsezzleRowChild$2 = "Checking eligibility won't affect your credit.";
12
+ var LTseeDetails$2 = "See details";
20
13
  var LTsingleFeatureAffordable$2 = "Affordable monthly plans";
21
14
  var LTsingleFeaturePrequalify$2 = "Simple, quick pre-qualification";
22
15
  var LTsingleFeatureTrusted$2 = "Trusted by over 10&nbsp;million consumers";
23
16
  var LTtermLength$2 = "months";
24
- var LTterms1$2 = "Signing up for Sezzle will not impact your credit score. Learn&nbsp;more&nbsp;about <a href=\"https://sezzle.com/how-it-works\" target=\"_blank\">Sezzle buy now, pay later.</a>";
25
- var LTterms2$2 = "Subject to approval. <a href=\"https://legal.sezzle.com/user\" target=\"_blank\">Click here for complete terms.</a> First payment date and amount may fluctuate based on eligibility and time of merchant order completion.";
26
- var LTterms3$2 = "* Subject to credit approval by a third party lender. Rates from 9.99% - 34.99% APR; terms from 3 months – 48 months, which may vary by lender. 0% APR options may be available. APRs will vary depending on credit qualifications, loan amount, term, and lender. Minimum purchase is required.";
27
- var or$2 = " or ";
28
- var PI4close$2 = "Close";
29
- var PI4completePurchase$2 = "2. Complete your purchase with a 25% down payment.";
30
- var PI4footnote$2 = "Footnote";
31
- var PI4pieAlt$2 = "pie at";
32
- var PI4schedulePayments$2 = "3. Schedule the rest of your payments.";
33
- var PI4selectSezzle$2 = "1. Pay later by selecting Sezzle at checkout.";
34
- var PI4sezzleHeader$2 = "Buy Now. Pay Later.";
35
- var PI4sezzleHeaderChild$2 = "Available for purchases of $20 to $2,500.<sup>1</sup>";
36
- var PI4sezzleHeaderChild2$2 = "Instant decision. No impact to your credit score.<sup>2</sup>";
37
- var PI4trustPilotReviewStatus$2 = "Excellent";
38
- var PI4trustPilotReviews$2 = "reviews on";
39
- var PI4trustPilotReviewsCount$2 = "14K+";
40
- var PI4trustPilotTitle$2 = "4.3 out of 5 star rating on Trustpilot";
41
- var PI5Amount$2 = "Amount*";
42
- var PI5SeePlans$2 = "See payment plans for";
43
- var PI5Step1$2 = "Choose 'Buy Now, Pay Later with Sezzle' at checkout";
44
- var PI5Step2$2 = "Select your payment plan";
45
- var PI5Step3$2 = "Complete your order! That's it!";
46
- var PI5every2Weeks$2 = "every 2 weeks";
47
- var PI5header$2 = "Pay over time with Sezzle's flexible payment option";
48
- var PI5howToPay$2 = "How to pay with";
49
- var PI5payIn$2 = "Pay in";
50
- var PI5samplePayments$2 = "Sample payment plans for";
51
- var PI5trusted$2 = "Trusted by millions of shoppers";
52
- var PI5weeks$2 = "weeks";
53
- var PI5previousSlide$2 = "Previous slide";
54
- var PI5nextSlide$2 = "Next slide";
55
- var PI5slide$2 = "Slide";
56
- var PI5carouselPosition$2 = "Carousel position indicator";
17
+ var LTterms3$2 = "* Subject to credit approval by a third party lender. Rates from {minAPR}% - {maxAPR}% APR; terms from {minTermMonths} months – {maxTermMonths} months, which may vary by lender. 0% APR options may be available. APRs will vary depending on credit qualifications, loan amount, term, and lender. Minimum purchase is required.";
18
+ var MultiPlanAmount$2 = "Amount*";
19
+ var MultiPlanSeePlans$2 = "See payment plans for";
20
+ var MultiPlanStep1$2 = "Choose 'Buy Now, Pay Later with Sezzle' at checkout";
21
+ var MultiPlanStep2$2 = "Select your payment plan";
22
+ var MultiPlanStep3$2 = "Complete your order! That's it!";
23
+ var MultiPlanevery2Weeks$2 = "every 2 weeks";
24
+ var MultiPlanheader$2 = "Pay over time with Sezzle's flexible payment option";
25
+ var MultiPlanhowToPay$2 = "How to pay with";
26
+ var MultiPlanpayIn$2 = "Pay in";
27
+ var MultiPlantrusted$2 = "Trusted by millions of shoppers";
28
+ var MultiPlanweeks$2 = "weeks";
29
+ var apDualInstall$2 = " or %%afterpay-logo%%";
30
+ var carouselPosition$2 = "Carousel position indicator";
31
+ var clickToLearnMore$2 = "Click to learn more about";
32
+ var closeSezzleModal$2 = "Close Sezzle Modal";
33
+ var dualInstall$2 = "Buy now, pay later with %%logo%%{apDualInstallText}{thresholdPriceText}";
34
+ var linkToCompleteTerms$2 = "<a href=\"https://legal.sezzle.com/user\" target=\"_blank\">Click here for complete terms.</a>";
35
+ var longTerm$2 = "or monthly payments as low as %%price%% with %%logo%% %%info%%";
36
+ var nextSlide$2 = "Next slide";
37
+ var previousSlide$2 = "Previous slide";
57
38
  var sezzleInformation$2 = "Sezzle Information";
39
+ var slide$2 = "Slide";
58
40
  var terms1$2 = "First payment date and amount may fluctuate based on eligibility and time of merchant order completion. Late fees and failed payment fees may apply.";
59
41
  var terms2$2 = "Signing up for Sezzle will not impact your credit score. You may opt-in to our free credit reporting program, Sezzle Up, to have your payments reported to credit bureaus.";
60
42
  var termsHiw$2 = "<a href='https://sezzle.com/how-it-works' target='_blank'>Learn more about Sezzle buy now, pay later here.</a>";
@@ -63,63 +45,44 @@ var today$2 = "Today";
63
45
  var webBankTerms$2 = "Pay later loans are originated by WebBank or Sezzle. Refer to your loan agreement for lender information.";
64
46
  var webBankTermsPI4$2 = "For example, for a $300 Pay in 4 loan, you would make one $75 down payment today, then three $75 payments every two weeks for a 45.0% annual percentage rate (APR) and a total of payments of $307.49 which includes a $7.49 Service Fee (finance charge) charged at loan origination. Service fees vary and can range from $0 to $7.49 depending on the purchase price and Sezzle product. Actual fees are reflected in checkout.";
65
47
  var webBankTermsPI5$2 = "For example, for a $300 Pay in 5 loan, you would make one $60 down payment today, then four $60 payments every two weeks for a 33.29% annual percentage rate (APR) and a total of payments of $307.49, which includes a $7.49 Service Fee (finance charge) charged at loan origination. Service fees vary and can range from $0 to $7.49, depending on the purchase price and Sezzle product. Actual fees are reflected in checkout.";
66
- var week$2 = "Week";
67
- var widget$2 = "or %%numberOfPayments%% payments of %%price%% with %%logo%%%%afterpay%%%%min-price%% %%info%%";
48
+ var widget$2 = "or {numberOfPayments} payments of %%price%% with %%logo%%{apDualInstallText}{thresholdPriceText} %%info%%";
68
49
  var enTranslations = {
69
- clickToLearnMore: clickToLearnMore$2,
70
- closeSezzleModal: closeSezzleModal$2,
71
- dualInstall: dualInstall$2,
72
- linkToCompleteTerms: linkToCompleteTerms$2,
73
- locale: locale$2,
74
- longTerm: longTerm$2,
75
50
  LTadjustedTotal: LTadjustedTotal$2,
51
+ LThideDetails: LThideDetails$2,
76
52
  LTinterest: LTinterest$2,
77
53
  LTmonthlyAmount: LTmonthlyAmount$2,
78
54
  LTperMonth: LTperMonth$2,
79
55
  LTpercent: LTpercent$2,
80
56
  LTreadApr: LTreadApr$2,
81
57
  LTsampleApr: LTsampleApr$2,
82
- LTsezzleHeader: LTsezzleHeader$2,
83
- LTsezzlePaymentHeader: LTsezzlePaymentHeader$2,
84
- LTsezzleRowChild: LTsezzleRowChild$2,
58
+ LTseeDetails: LTseeDetails$2,
85
59
  LTsingleFeatureAffordable: LTsingleFeatureAffordable$2,
86
60
  LTsingleFeaturePrequalify: LTsingleFeaturePrequalify$2,
87
61
  LTsingleFeatureTrusted: LTsingleFeatureTrusted$2,
88
62
  LTtermLength: LTtermLength$2,
89
- LTterms1: LTterms1$2,
90
- LTterms2: LTterms2$2,
91
63
  LTterms3: LTterms3$2,
92
- or: or$2,
93
- PI4close: PI4close$2,
94
- PI4completePurchase: PI4completePurchase$2,
95
- PI4footnote: PI4footnote$2,
96
- PI4pieAlt: PI4pieAlt$2,
97
- PI4schedulePayments: PI4schedulePayments$2,
98
- PI4selectSezzle: PI4selectSezzle$2,
99
- PI4sezzleHeader: PI4sezzleHeader$2,
100
- PI4sezzleHeaderChild: PI4sezzleHeaderChild$2,
101
- PI4sezzleHeaderChild2: PI4sezzleHeaderChild2$2,
102
- PI4trustPilotReviewStatus: PI4trustPilotReviewStatus$2,
103
- PI4trustPilotReviews: PI4trustPilotReviews$2,
104
- PI4trustPilotReviewsCount: PI4trustPilotReviewsCount$2,
105
- PI4trustPilotTitle: PI4trustPilotTitle$2,
106
- PI5Amount: PI5Amount$2,
107
- PI5SeePlans: PI5SeePlans$2,
108
- PI5Step1: PI5Step1$2,
109
- PI5Step2: PI5Step2$2,
110
- PI5Step3: PI5Step3$2,
111
- PI5every2Weeks: PI5every2Weeks$2,
112
- PI5header: PI5header$2,
113
- PI5howToPay: PI5howToPay$2,
114
- PI5payIn: PI5payIn$2,
115
- PI5samplePayments: PI5samplePayments$2,
116
- PI5trusted: PI5trusted$2,
117
- PI5weeks: PI5weeks$2,
118
- PI5previousSlide: PI5previousSlide$2,
119
- PI5nextSlide: PI5nextSlide$2,
120
- PI5slide: PI5slide$2,
121
- PI5carouselPosition: PI5carouselPosition$2,
64
+ MultiPlanAmount: MultiPlanAmount$2,
65
+ MultiPlanSeePlans: MultiPlanSeePlans$2,
66
+ MultiPlanStep1: MultiPlanStep1$2,
67
+ MultiPlanStep2: MultiPlanStep2$2,
68
+ MultiPlanStep3: MultiPlanStep3$2,
69
+ MultiPlanevery2Weeks: MultiPlanevery2Weeks$2,
70
+ MultiPlanheader: MultiPlanheader$2,
71
+ MultiPlanhowToPay: MultiPlanhowToPay$2,
72
+ MultiPlanpayIn: MultiPlanpayIn$2,
73
+ MultiPlantrusted: MultiPlantrusted$2,
74
+ MultiPlanweeks: MultiPlanweeks$2,
75
+ apDualInstall: apDualInstall$2,
76
+ carouselPosition: carouselPosition$2,
77
+ clickToLearnMore: clickToLearnMore$2,
78
+ closeSezzleModal: closeSezzleModal$2,
79
+ dualInstall: dualInstall$2,
80
+ linkToCompleteTerms: linkToCompleteTerms$2,
81
+ longTerm: longTerm$2,
82
+ nextSlide: nextSlide$2,
83
+ previousSlide: previousSlide$2,
122
84
  sezzleInformation: sezzleInformation$2,
85
+ slide: slide$2,
123
86
  terms1: terms1$2,
124
87
  terms2: terms2$2,
125
88
  termsHiw: termsHiw$2,
@@ -128,64 +91,45 @@ var enTranslations = {
128
91
  webBankTerms: webBankTerms$2,
129
92
  webBankTermsPI4: webBankTermsPI4$2,
130
93
  webBankTermsPI5: webBankTermsPI5$2,
131
- week: week$2,
132
94
  widget: widget$2
133
95
  };
134
96
 
135
- var clickToLearnMore$1 = "Cliquez pour en savoir plus sur";
136
- var closeSezzleModal$1 = "Fermer la fenêtre modale de Sezzle";
137
- var dualInstall$1 = "Achetez maintenant, payez plus tard avec %%logo%%%%afterpay%%%%min-price%%";
138
- var linkToCompleteTerms$1 = "<a href=\"https://legal.sezzle.com/user/fr-ca/\" target=\"_blank\">Cliquez ici pour découvrir les conditions complètes.</a>";
139
- var locale$1 = "fr-ca";
140
- var longTerm$1 = "ou des paiements mensuels aussi bas que %%price%% avec %%logo%% %%info%%";
141
97
  var LTadjustedTotal$1 = "Paiement Total:";
98
+ var LThideDetails$1 = "Masquer les détails";
142
99
  var LTinterest$1 = "Intérêt Total:";
143
- var LTmonthlyAmount$1 = "/ mois";
100
+ var LTmonthlyAmount$1 = "/ mois*";
144
101
  var LTperMonth$1 = "par mois";
145
102
  var LTpercent$1 = "pour cent";
146
103
  var LTreadApr$1 = "T.A.E.G.";
147
104
  var LTsampleApr$1 = "TAEG:";
148
- var LTsezzleHeader$1 = "Effectuez des paiements mensuels faciles sur votre&nbsp;achat";
149
- var LTsezzlePaymentHeader$1 = "Exemples de paiements pour";
150
- var LTsezzleRowChild$1 = "La vérification de l’éligibilité n’affectera pas votre crédit.";
105
+ var LTseeDetails$1 = "Voir les détails";
151
106
  var LTsingleFeatureAffordable$1 = "Forfaits mensuels abordables";
152
107
  var LTsingleFeaturePrequalify$1 = "Pré-qualification simple et rapide";
153
108
  var LTsingleFeatureTrusted$1 = "Approuvé par plus de 10&nbsp;millions de consommateurs";
154
109
  var LTtermLength$1 = "mois";
155
- var LTterms1$1 = "L'inscription à Sezzle n'aura aucun impact sur votre score de crédit. En savoir&nbsp;plus&nbsp;sur <a href=\"https://sezzle.com/fr-ca/how-it-works/\" target=\"_blank\">Achetez maintenant, payez plus tard avec Sezzle.</a>";
156
- var LTterms2$1 = "Sous réserve d'approbation. <a href=\"https://legal.sezzle.com/user/fr-ca/\" target=\"_blank\">Cliquez ici pour connaître les conditions complètes.</a> La date et le montant du premier paiement peuvent fluctuer en fonction de l'éligibilité et de l'heure de finalisation de la commande du marchand.";
157
- var LTterms3$1 = "* Sous réserve de l'approbation du crédit par un prêteur tiers. Tarifs de 9,99 % à 34,99 % TAEG ; durées de 3 à 48 mois pouvant varier selon le prêteur. Des options de 0 % TAEG peuvent être disponibles. Les TAEG varient en fonction des qualifications en matière de crédit, du montant du prêt, de la durée et du prêteur. Un achat minimum est requis.";
158
- var or$1 = " ou ";
159
- var PI4close$1 = "Fermer";
160
- var PI4completePurchase$1 = "2. Complétez votre achat avec un acompte de 25 %.";
161
- var PI4footnote$1 = "note de bas de page";
162
- var PI4pieAlt$1 = "graphique circulaire à";
163
- var PI4schedulePayments$1 = "3. Planifiez le reste de vos paiements.";
164
- var PI4selectSezzle$1 = "1. Payez plus tard en sélectionnant Sezzle au moment du paiement.";
165
- var PI4sezzleHeader$1 = "Achetez maintenant. Payez plus tard.";
166
- var PI4sezzleHeaderChild$1 = "Disponible pour des achats de 20 $ à 2 500 $.<sup>1</sup>";
167
- var PI4sezzleHeaderChild2$1 = "Décision instantanée. Aucun impact sur votre cote de crédit.<sup>2</sup>";
168
- var PI4trustPilotReviewStatus$1 = "Excellent";
169
- var PI4trustPilotReviews$1 = "Avis sur";
170
- var PI4trustPilotReviewsCount$1 = "14 000 +";
171
- var PI4trustPilotTitle$1 = "Note de 4,3 sur 5 étoiles sur Trustpilot";
172
- var PI5Amount$1 = "Montant*";
173
- var PI5SeePlans$1 = "Voir les plans de paiement pour";
174
- var PI5Step1$1 = "Choisissez « Achetez maintenant, payez plus tard avec Sezzle » au moment du paiement.";
175
- var PI5Step2$1 = "Sélectionnez votre plan de paiement";
176
- var PI5Step3$1 = "Terminez votre commande ! C'est tout !";
177
- var PI5every2Weeks$1 = "toutes les 2 semaines";
178
- var PI5header$1 = "Payez au fil du temps avec l'option de paiement flexible de Sezzle";
179
- var PI5howToPay$1 = "Comment payer avec";
180
- var PI5payIn$1 = "Payer en";
181
- var PI5samplePayments$1 = "Exemples de plans de paiement pour";
182
- var PI5trusted$1 = "Des millions d'acheteurs nous font confiance";
183
- var PI5weeks$1 = "semaines";
184
- var PI5previousSlide$1 = "Diapositive précédente";
185
- var PI5nextSlide$1 = "Diapositive suivante";
186
- var PI5slide$1 = "Diapositive";
187
- var PI5carouselPosition$1 = "Indicateur de position du carrousel";
110
+ var LTterms3$1 = "* Sous réserve de l'approbation du crédit par un prêteur tiers. Tarifs de {minAPR} % à {maxAPR} % TAEG ; durées de {minTermMonths} à {maxTermMonths} mois pouvant varier selon le prêteur. Des options de 0 % TAEG peuvent être disponibles. Les TAEG varient en fonction des qualifications en matière de crédit, du montant du prêt, de la durée et du prêteur. Un achat minimum est requis.";
111
+ var MultiPlanAmount$1 = "Montant*";
112
+ var MultiPlanSeePlans$1 = "Voir les plans de paiement pour";
113
+ var MultiPlanStep1$1 = "Choisissez « Achetez maintenant, payez plus tard avec Sezzle » au moment du paiement.";
114
+ var MultiPlanStep2$1 = "Sélectionnez votre plan de paiement";
115
+ var MultiPlanStep3$1 = "Terminez votre commande ! C'est tout !";
116
+ var MultiPlanevery2Weeks$1 = "toutes les 2 semaines";
117
+ var MultiPlanheader$1 = "Payez au fil du temps avec l'option de paiement flexible de Sezzle";
118
+ var MultiPlanhowToPay$1 = "Comment payer avec";
119
+ var MultiPlanpayIn$1 = "Payer en";
120
+ var MultiPlantrusted$1 = "Des millions d'acheteurs nous font confiance";
121
+ var MultiPlanweeks$1 = "semaines";
122
+ var apDualInstall$1 = " ou %%afterpay-logo%%";
123
+ var carouselPosition$1 = "Indicateur de position du carrousel";
124
+ var clickToLearnMore$1 = "Cliquez pour en savoir plus sur";
125
+ var closeSezzleModal$1 = "Fermer le modal Sezzle";
126
+ var dualInstall$1 = "Achetez maintenant, payez plus tard avec %%logo%%{apDualInstallText}{thresholdPriceText}";
127
+ var linkToCompleteTerms$1 = "<a href=\"https://legal.sezzle.com/user/fr-ca/\" target=\"_blank\">Cliquez ici pour découvrir les conditions complètes.</a>";
128
+ var longTerm$1 = "ou des paiements mensuels aussi bas que %%price%% avec %%logo%% %%info%%";
129
+ var nextSlide$1 = "Diapositive suivante";
130
+ var previousSlide$1 = "Diapositive précédente";
188
131
  var sezzleInformation$1 = "Informations Sezzle";
132
+ var slide$1 = "Diapositive";
189
133
  var terms1$1 = "La date et le montant du premier paiement peuvent fluctuer en fonction de l'éligibilité et du moment où la commande du marchand est finalisée. Des frais de retard et des frais d'échec de paiement peuvent s'appliquer.";
190
134
  var terms2$1 = "L'inscription à Sezzle n'aura aucun impact sur votre score de crédit. Vous pouvez opter pour notre programme gratuit de rapport de crédit, Sezzle Up, pour que vos paiements soient signalés aux agences d'évaluation du crédit.";
191
135
  var termsHiw$1 = "<a href='https://sezzle.com/fr-ca/how-it-works/' target='_blank'>Apprenez-en plus sur « Achetez maintenant, payez plus tard avec Sezzle » ici.</a>";
@@ -194,63 +138,44 @@ var today$1 = "Aujourd'hui";
194
138
  var webBankTerms$1 = "Les prêts à remboursement différé sont proposés par WebBank ou Sezzle. Consultez votre contrat de prêt pour obtenir des informations sur le prêteur.";
195
139
  var webBankTermsPI4$1 = "Par exemple, pour un prêt de 300 $ payable en 4 fois, vous verseriez un acompte de 75 $ aujourd'hui, puis trois versements de 75 $ toutes les deux semaines, soit un taux annuel effectif global (TAEG) de 45 % et un total de 307,49 $, incluant des frais de service (frais financiers) de 7,49 $ facturés à l'octroi du prêt. Ces frais varient et peuvent aller de 0 $ à 7,49 $ selon le prix d'achat et le produit Sezzle. Les frais exacts sont indiqués au moment du paiement.";
196
140
  var webBankTermsPI5$1 = "Par exemple, pour un prêt de 300 $ payable en 5 fois, vous verseriez un acompte de 60 $ aujourd'hui, puis quatre versements de 60 $ toutes les deux semaines, soit un taux annuel effectif global (TAEG) de 33,29 % et un total de 307,49 $, incluant des frais de service (frais financiers) de 7,49 $ facturés à l'octroi du prêt. Ces frais varient et peuvent aller de 0 $ à 7,49 $ selon le prix d'achat et le produit Sezzle. Les frais exacts sont indiqués au moment du paiement.";
197
- var week$1 = "Semaine";
198
- var widget$1 = "ou %%numberOfPayments%% paiements de %%price%% avec %%logo%%%%afterpay%%%%min-price%% %%info%%";
141
+ var widget$1 = "ou {numberOfPayments} paiements de %%price%% avec %%logo%%{apDualInstallText}{thresholdPriceText} %%info%%";
199
142
  var frTranslations = {
200
- clickToLearnMore: clickToLearnMore$1,
201
- closeSezzleModal: closeSezzleModal$1,
202
- dualInstall: dualInstall$1,
203
- linkToCompleteTerms: linkToCompleteTerms$1,
204
- locale: locale$1,
205
- longTerm: longTerm$1,
206
143
  LTadjustedTotal: LTadjustedTotal$1,
144
+ LThideDetails: LThideDetails$1,
207
145
  LTinterest: LTinterest$1,
208
146
  LTmonthlyAmount: LTmonthlyAmount$1,
209
147
  LTperMonth: LTperMonth$1,
210
148
  LTpercent: LTpercent$1,
211
149
  LTreadApr: LTreadApr$1,
212
150
  LTsampleApr: LTsampleApr$1,
213
- LTsezzleHeader: LTsezzleHeader$1,
214
- LTsezzlePaymentHeader: LTsezzlePaymentHeader$1,
215
- LTsezzleRowChild: LTsezzleRowChild$1,
151
+ LTseeDetails: LTseeDetails$1,
216
152
  LTsingleFeatureAffordable: LTsingleFeatureAffordable$1,
217
153
  LTsingleFeaturePrequalify: LTsingleFeaturePrequalify$1,
218
154
  LTsingleFeatureTrusted: LTsingleFeatureTrusted$1,
219
155
  LTtermLength: LTtermLength$1,
220
- LTterms1: LTterms1$1,
221
- LTterms2: LTterms2$1,
222
156
  LTterms3: LTterms3$1,
223
- or: or$1,
224
- PI4close: PI4close$1,
225
- PI4completePurchase: PI4completePurchase$1,
226
- PI4footnote: PI4footnote$1,
227
- PI4pieAlt: PI4pieAlt$1,
228
- PI4schedulePayments: PI4schedulePayments$1,
229
- PI4selectSezzle: PI4selectSezzle$1,
230
- PI4sezzleHeader: PI4sezzleHeader$1,
231
- PI4sezzleHeaderChild: PI4sezzleHeaderChild$1,
232
- PI4sezzleHeaderChild2: PI4sezzleHeaderChild2$1,
233
- PI4trustPilotReviewStatus: PI4trustPilotReviewStatus$1,
234
- PI4trustPilotReviews: PI4trustPilotReviews$1,
235
- PI4trustPilotReviewsCount: PI4trustPilotReviewsCount$1,
236
- PI4trustPilotTitle: PI4trustPilotTitle$1,
237
- PI5Amount: PI5Amount$1,
238
- PI5SeePlans: PI5SeePlans$1,
239
- PI5Step1: PI5Step1$1,
240
- PI5Step2: PI5Step2$1,
241
- PI5Step3: PI5Step3$1,
242
- PI5every2Weeks: PI5every2Weeks$1,
243
- PI5header: PI5header$1,
244
- PI5howToPay: PI5howToPay$1,
245
- PI5payIn: PI5payIn$1,
246
- PI5samplePayments: PI5samplePayments$1,
247
- PI5trusted: PI5trusted$1,
248
- PI5weeks: PI5weeks$1,
249
- PI5previousSlide: PI5previousSlide$1,
250
- PI5nextSlide: PI5nextSlide$1,
251
- PI5slide: PI5slide$1,
252
- PI5carouselPosition: PI5carouselPosition$1,
157
+ MultiPlanAmount: MultiPlanAmount$1,
158
+ MultiPlanSeePlans: MultiPlanSeePlans$1,
159
+ MultiPlanStep1: MultiPlanStep1$1,
160
+ MultiPlanStep2: MultiPlanStep2$1,
161
+ MultiPlanStep3: MultiPlanStep3$1,
162
+ MultiPlanevery2Weeks: MultiPlanevery2Weeks$1,
163
+ MultiPlanheader: MultiPlanheader$1,
164
+ MultiPlanhowToPay: MultiPlanhowToPay$1,
165
+ MultiPlanpayIn: MultiPlanpayIn$1,
166
+ MultiPlantrusted: MultiPlantrusted$1,
167
+ MultiPlanweeks: MultiPlanweeks$1,
168
+ apDualInstall: apDualInstall$1,
169
+ carouselPosition: carouselPosition$1,
170
+ clickToLearnMore: clickToLearnMore$1,
171
+ closeSezzleModal: closeSezzleModal$1,
172
+ dualInstall: dualInstall$1,
173
+ linkToCompleteTerms: linkToCompleteTerms$1,
174
+ longTerm: longTerm$1,
175
+ nextSlide: nextSlide$1,
176
+ previousSlide: previousSlide$1,
253
177
  sezzleInformation: sezzleInformation$1,
178
+ slide: slide$1,
254
179
  terms1: terms1$1,
255
180
  terms2: terms2$1,
256
181
  termsHiw: termsHiw$1,
@@ -259,64 +184,45 @@ var frTranslations = {
259
184
  webBankTerms: webBankTerms$1,
260
185
  webBankTermsPI4: webBankTermsPI4$1,
261
186
  webBankTermsPI5: webBankTermsPI5$1,
262
- week: week$1,
263
187
  widget: widget$1
264
188
  };
265
189
 
266
- var clickToLearnMore = "Haga clic para obtener más información sobre";
267
- var closeSezzleModal = "Cerrar modal de Sezzle";
268
- var dualInstall = "Compra ahora, paga después con %%logo%%%%afterpay%%%%min-price%%";
269
- var linkToCompleteTerms = "<a href=\"https://legal.sezzle.com/user\" target=\"_blank\">Haga clic aquí para conocer los términos completos.</a>";
270
- var locale = "en-es";
271
- var longTerm = "o pagos mensuales tan bajos como %%price%% con %%logo%% %%info%%";
272
190
  var LTadjustedTotal = "Pago Total:";
191
+ var LThideDetails = "Ocultar detalles";
273
192
  var LTinterest = "Interés Total:";
274
- var LTmonthlyAmount = "/ mes";
193
+ var LTmonthlyAmount = "/ mes*";
275
194
  var LTperMonth = "por mes";
276
195
  var LTpercent = "por ciento";
277
196
  var LTreadApr = "T.A.E.";
278
197
  var LTsampleApr = "TAE:";
279
- var LTsezzleHeader = "Realice pagos mensuales sencillos en su&nbsp;pedido";
280
- var LTsezzlePaymentHeader = "Ejemplos de pagos para";
281
- var LTsezzleRowChild = "Verificar la elegibilidad no afectará su crédito.";
198
+ var LTseeDetails = "Ver detalles";
282
199
  var LTsingleFeatureAffordable = "Planes mensuales asequibles";
283
200
  var LTsingleFeaturePrequalify = "Precalificación sencilla y rápida";
284
201
  var LTsingleFeatureTrusted = "Con la confianza de más de 10&nbsp;millones de consumidores";
285
202
  var LTtermLength = "meses";
286
- var LTterms1 = "Registrarse en Sezzle no afectará su puntaje crediticio. Obtenga más información en <a href=\"https://sezzle.com/how-it-works\" target=\"_blank\">Compre ahora, pague después con Sezzle.</a>";
287
- var LTterms2 = "Sujeto a aprobación. <a href=\"https://legal.sezzle.com/user\" target=\"_blank\">Haga clic aquí para conocer los términos completos.</a> La fecha y el monto del primer pago pueden fluctuar según la elegibilidad del comerciante y el tiempo de finalización del pedido.";
288
- var LTterms3 = "* Sujeto a aprobación crediticia por parte de un prestamista externo. Tasas desde 9,99% hasta 34,99% TAE; plazos de 3 a 48 meses que pueden variar dependiendo del prestamista. Pueden estar disponibles opciones con 0% APR. Las APR varían según las calificaciones crediticias, el monto del préstamo, el plazo y el prestamista. Se requiere una compra mínima.";
289
- var or = " o ";
290
- var PI4close = "Cerca";
291
- var PI4completePurchase = "2. Completa tu compra con un pago inicial del 25%.";
292
- var PI4footnote = "Nota";
293
- var PI4pieAlt = "pastel en";
294
- var PI4schedulePayments = "3. Programa el resto de tus pagos.";
295
- var PI4selectSezzle = "1. Pague más tarde seleccionando Sezzle al finalizar la compra.";
296
- var PI4sezzleHeader = "Compra ahora. Paga después.";
297
- var PI4sezzleHeaderChild = "Disponible para compras de $20 a $2,500.<sup>1</sup>";
298
- var PI4sezzleHeaderChild2 = "Decisión instantánea. No afecta su calificación crediticia.<sup>2</sup>";
299
- var PI4trustPilotReviewStatus = "Excelente";
300
- var PI4trustPilotReviews = "Reseñas sobre";
301
- var PI4trustPilotReviewsCount = "14K+";
302
- var PI4trustPilotTitle = "4,3 de 5 estrellas en Trustpilot";
303
- var PI5Amount = "Cantidad*";
304
- var PI5SeePlans = "Ver planes de pago para";
305
- var PI5Step1 = "Seleccione \"Comprar ahora, pagar después con Sezzle\" al finalizar la compra.";
306
- var PI5Step2 = "Seleccione su plan de pago";
307
- var PI5Step3 = "¡Completa tu pedido! ¡Listo!";
308
- var PI5every2Weeks = "cada 2 semanas";
309
- var PI5header = "Pague con el tiempo con la opción de pago flexible de Sezzle";
310
- var PI5howToPay = "Cómo pagar con";
311
- var PI5payIn = "Ingresar";
312
- var PI5samplePayments = "Ejemplos de planes de pago para";
313
- var PI5trusted = "Con la confianza de millones de compradores";
314
- var PI5weeks = "semanas";
315
- var PI5previousSlide = "Diapositiva anterior";
316
- var PI5nextSlide = "Siguiente diapositiva";
317
- var PI5slide = "Diapositiva";
318
- var PI5carouselPosition = "Indicador de posición del carrusel";
203
+ var LTterms3 = "* Sujeto a aprobación crediticia por parte de un prestamista externo. Tasas desde {minAPR}% hasta {maxAPR}% TAE; plazos de {minTermMonths} a {maxTermMonths} meses que pueden variar dependiendo del prestamista. Pueden estar disponibles opciones con 0% APR. Las APR varían según las calificaciones crediticias, el monto del préstamo, el plazo y el prestamista. Se requiere una compra mínima.";
204
+ var MultiPlanAmount = "Cantidad*";
205
+ var MultiPlanSeePlans = "Ver planes de pago para";
206
+ var MultiPlanStep1 = "Seleccione \"Comprar ahora, pagar después con Sezzle\" al finalizar la compra.";
207
+ var MultiPlanStep2 = "Seleccione su plan de pago";
208
+ var MultiPlanStep3 = "¡Completa tu pedido! ¡Listo!";
209
+ var MultiPlanevery2Weeks = "cada 2 semanas";
210
+ var MultiPlanheader = "Pague con el tiempo con la opción de pago flexible de Sezzle";
211
+ var MultiPlanhowToPay = "Cómo pagar con";
212
+ var MultiPlanpayIn = "Ingresar";
213
+ var MultiPlantrusted = "Con la confianza de millones de compradores";
214
+ var MultiPlanweeks = "semanas";
215
+ var apDualInstall = " o %%afterpay-logo%%";
216
+ var carouselPosition = "Indicador de posición del carrusel";
217
+ var clickToLearnMore = "Haga clic para obtener más información sobre";
218
+ var closeSezzleModal = "Cerrar modal de Sezzle";
219
+ var dualInstall = "Compra ahora, paga después con %%logo%%{apDualInstallText}{thresholdPriceText}";
220
+ var linkToCompleteTerms = "<a href=\"https://legal.sezzle.com/user\" target=\"_blank\">Haga clic aquí para conocer los términos completos.</a>";
221
+ var longTerm = "o pagos mensuales tan bajos como %%price%% con %%logo%% %%info%%";
222
+ var nextSlide = "Siguiente diapositiva";
223
+ var previousSlide = "Diapositiva anterior";
319
224
  var sezzleInformation = "Información de Sezzle";
225
+ var slide = "Diapositiva";
320
226
  var terms1 = "La fecha y el monto del primer pago pueden fluctuar dependiendo de la elegibilidad y del momento en que se complete el pedido del comerciante. Se pueden aplicar cargos por pagos atrasados ​​y pagos fallidos.";
321
227
  var terms2 = "Registrarse en Sezzle no afectará su puntaje crediticio. Puede optar por nuestro programa gratuito de informes de crédito, Sezzle Up, para que sus pagos se informen a las agencias de informes de crédito.";
322
228
  var termsHiw = "<a href='https://sezzle.com/how-it-works' target='_blank'>Obtenga más información sobre \"Compre ahora, pague después con Sezzle\" aquí.</a>";
@@ -325,63 +231,44 @@ var today = "Hoy";
325
231
  var webBankTerms = "Los préstamos con pago a plazos son gestionados por WebBank o Sezzle. Consulte su contrato de préstamo para obtener información sobre el prestamista.";
326
232
  var webBankTermsPI4 = "Por ejemplo, para un préstamo de $300 con pago en 4 cuotas, realizaría un pago inicial de $75 hoy, luego tres pagos de $75 cada dos semanas, con una tasa de porcentaje anual (TAE) del 45.0% y un total de pagos de $307.49, que incluye una comisión por servicio (cargo financiero) de $7.49 al momento de la apertura del préstamo. Las comisiones por servicio varían entre $0 y $7.49, según el precio de compra y el producto Sezzle. Las comisiones reales se reflejan al finalizar la compra.";
327
233
  var webBankTermsPI5 = "Por ejemplo, para un préstamo de $300 con pago en 5 cuotas, realizaría un pago inicial de $60 hoy, luego cuatro pagos de $60 cada dos semanas, con una tasa de porcentaje anual (TAE) del 33.29% y un total de pagos de $307.49, que incluye una comisión por servicio (cargo financiero) de $7.49 al momento de la apertura del préstamo. Las comisiones por servicio varían entre $0 y $7.49, según el precio de compra y el producto Sezzle. Las comisiones reales se reflejan al finalizar la compra.";
328
- var week = "Semana";
329
- var widget = "o %%numberOfPayments%% pagos de %%price%% con %%logo%%%%afterpay%%%%min-price%% %%info%%";
234
+ var widget = "o {numberOfPayments} pagos de %%price%% con %%logo%%{apDualInstallText}{thresholdPriceText} %%info%%";
330
235
  var esTranslations = {
331
- clickToLearnMore: clickToLearnMore,
332
- closeSezzleModal: closeSezzleModal,
333
- dualInstall: dualInstall,
334
- linkToCompleteTerms: linkToCompleteTerms,
335
- locale: locale,
336
- longTerm: longTerm,
337
236
  LTadjustedTotal: LTadjustedTotal,
237
+ LThideDetails: LThideDetails,
338
238
  LTinterest: LTinterest,
339
239
  LTmonthlyAmount: LTmonthlyAmount,
340
240
  LTperMonth: LTperMonth,
341
241
  LTpercent: LTpercent,
342
242
  LTreadApr: LTreadApr,
343
243
  LTsampleApr: LTsampleApr,
344
- LTsezzleHeader: LTsezzleHeader,
345
- LTsezzlePaymentHeader: LTsezzlePaymentHeader,
346
- LTsezzleRowChild: LTsezzleRowChild,
244
+ LTseeDetails: LTseeDetails,
347
245
  LTsingleFeatureAffordable: LTsingleFeatureAffordable,
348
246
  LTsingleFeaturePrequalify: LTsingleFeaturePrequalify,
349
247
  LTsingleFeatureTrusted: LTsingleFeatureTrusted,
350
248
  LTtermLength: LTtermLength,
351
- LTterms1: LTterms1,
352
- LTterms2: LTterms2,
353
249
  LTterms3: LTterms3,
354
- or: or,
355
- PI4close: PI4close,
356
- PI4completePurchase: PI4completePurchase,
357
- PI4footnote: PI4footnote,
358
- PI4pieAlt: PI4pieAlt,
359
- PI4schedulePayments: PI4schedulePayments,
360
- PI4selectSezzle: PI4selectSezzle,
361
- PI4sezzleHeader: PI4sezzleHeader,
362
- PI4sezzleHeaderChild: PI4sezzleHeaderChild,
363
- PI4sezzleHeaderChild2: PI4sezzleHeaderChild2,
364
- PI4trustPilotReviewStatus: PI4trustPilotReviewStatus,
365
- PI4trustPilotReviews: PI4trustPilotReviews,
366
- PI4trustPilotReviewsCount: PI4trustPilotReviewsCount,
367
- PI4trustPilotTitle: PI4trustPilotTitle,
368
- PI5Amount: PI5Amount,
369
- PI5SeePlans: PI5SeePlans,
370
- PI5Step1: PI5Step1,
371
- PI5Step2: PI5Step2,
372
- PI5Step3: PI5Step3,
373
- PI5every2Weeks: PI5every2Weeks,
374
- PI5header: PI5header,
375
- PI5howToPay: PI5howToPay,
376
- PI5payIn: PI5payIn,
377
- PI5samplePayments: PI5samplePayments,
378
- PI5trusted: PI5trusted,
379
- PI5weeks: PI5weeks,
380
- PI5previousSlide: PI5previousSlide,
381
- PI5nextSlide: PI5nextSlide,
382
- PI5slide: PI5slide,
383
- PI5carouselPosition: PI5carouselPosition,
250
+ MultiPlanAmount: MultiPlanAmount,
251
+ MultiPlanSeePlans: MultiPlanSeePlans,
252
+ MultiPlanStep1: MultiPlanStep1,
253
+ MultiPlanStep2: MultiPlanStep2,
254
+ MultiPlanStep3: MultiPlanStep3,
255
+ MultiPlanevery2Weeks: MultiPlanevery2Weeks,
256
+ MultiPlanheader: MultiPlanheader,
257
+ MultiPlanhowToPay: MultiPlanhowToPay,
258
+ MultiPlanpayIn: MultiPlanpayIn,
259
+ MultiPlantrusted: MultiPlantrusted,
260
+ MultiPlanweeks: MultiPlanweeks,
261
+ apDualInstall: apDualInstall,
262
+ carouselPosition: carouselPosition,
263
+ clickToLearnMore: clickToLearnMore,
264
+ closeSezzleModal: closeSezzleModal,
265
+ dualInstall: dualInstall,
266
+ linkToCompleteTerms: linkToCompleteTerms,
267
+ longTerm: longTerm,
268
+ nextSlide: nextSlide,
269
+ previousSlide: previousSlide,
384
270
  sezzleInformation: sezzleInformation,
271
+ slide: slide,
385
272
  terms1: terms1,
386
273
  terms2: terms2,
387
274
  termsHiw: termsHiw,
@@ -390,7 +277,6 @@ var esTranslations = {
390
277
  webBankTerms: webBankTerms,
391
278
  webBankTermsPI4: webBankTermsPI4,
392
279
  webBankTermsPI5: webBankTermsPI5,
393
- week: week,
394
280
  widget: widget
395
281
  };
396
282
 
@@ -509,6 +395,19 @@ function getCurrency(priceString) {
509
395
  return currencyMatch ? currencyMatch[0] : defaultCurrency;
510
396
  }
511
397
 
398
+ /**
399
+ * Renders a numeric value with the decimal separator appropriate for the
400
+ * language: a period for English, a comma for French/Spanish. Only the decimal
401
+ * separator is swapped; no grouping is applied.
402
+ * @param value - number or numeric string (e.g. an APR like 9.99)
403
+ * @param lang - Language code (en, fr, es)
404
+ * @return string
405
+ */
406
+ function formatNumberForLocale(value, lang) {
407
+ var str = String(value);
408
+ return lang === 'fr' || lang === 'es' ? str.replace('.', ',') : str;
409
+ }
410
+
512
411
  /**
513
412
  * Returns the translation object for the specified language
514
413
  * @param currentLang - Language code (en, fr, es)
@@ -523,23 +422,249 @@ function getTranslations(currentLang) {
523
422
  return translationsMap[currentLang];
524
423
  }
525
424
 
526
- function isProductEligibleLT(priceText, minPriceLT, maxPrice) {
425
+ function _toConsumableArray$1(r) { return _arrayWithoutHoles$1(r) || _iterableToArray$1(r) || _unsupportedIterableToArray$1(r) || _nonIterableSpread$1(); }
426
+ function _nonIterableSpread$1() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
427
+ function _iterableToArray$1(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
428
+ function _arrayWithoutHoles$1(r) { if (Array.isArray(r)) return _arrayLikeToArray$1(r); }
429
+ function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$1(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
430
+ function _unsupportedIterableToArray$1(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$1(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$1(r, a) : void 0; } }
431
+ function _arrayLikeToArray$1(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
432
+ function ownKeys$4(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
433
+ function _objectSpread$4(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$4(Object(t), !0).forEach(function (r) { _defineProperty$4(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$4(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
434
+ function _defineProperty$4(e, r, t) { return (r = _toPropertyKey$4(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
435
+ function _toPropertyKey$4(t) { var i = _toPrimitive$4(t, "string"); return "symbol" == _typeof$4(i) ? i : i + ""; }
436
+ function _toPrimitive$4(t, r) { if ("object" != _typeof$4(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof$4(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
437
+ function _typeof$4(o) { "@babel/helpers - typeof"; return _typeof$4 = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof$4(o); }
438
+ // Long-term (LT) product configuration.
439
+ //
440
+ // The widget supports long-term payment options whose defaults differ by
441
+ // lending partner. To make per-partner rollouts easy, each partner's complete
442
+ // set of LT defaults is bundled under a neutral alias ("a", "b", ...). The
443
+ // alias is deliberately non-branded so the lending partner is never exposed to
444
+ // merchants. An account manager guides the merchant on which alias to use based
445
+ // on their enrollment, so the merchant no longer has to set every LT field by
446
+ // hand. "a" is the default fallback preset.
447
+ //
448
+ // Every LT option follows a consistent contract: 0 (or unset) means "not set."
449
+ // To disable LT entirely, omit both `minPriceLT` and `LTgroup`.
450
+ //
451
+ // Units note: unlike the backend LT API (which uses cents), every LT value in
452
+ // this widget is expressed in whole currency units (dollars), matching the rest
453
+ // of this project's config — minPriceLT, maxPriceLT, and the termsToShow
454
+ // thresholds are all dollar amounts.
455
+
456
+ var DEFAULT_LT_GROUP = 'a';
457
+
458
+ // Recursively freeze an object and all nested objects/arrays. The presets below
459
+ // are shared, long-lived references that resolve* helpers hand out directly
460
+ // (e.g. resolveTermsToShow returns the preset's termsToShow, including its term
461
+ // arrays, by reference). Freezing makes any accidental downstream mutation
462
+ // (e.g. config.termsToShow.default.push(12)) throw instead of silently
463
+ // corrupting the preset for the lifetime of the page.
464
+ function deepFreeze(obj) {
465
+ for (var _i = 0, _Object$values = Object.values(obj); _i < _Object$values.length; _i++) {
466
+ var value = _Object$values[_i];
467
+ if (value && _typeof$4(value) === 'object' && !Object.isFrozen(value)) {
468
+ deepFreeze(value);
469
+ }
470
+ }
471
+ return Object.freeze(obj);
472
+ }
473
+
474
+ // Per-partner presets. Each preset is a COMPLETE set of LT defaults:
475
+ // minPriceLT – lowest price (inclusive) eligible for LT
476
+ // maxPriceLT – highest price (inclusive) eligible for LT
477
+ // minAPR – lowest APR offered; lower bound of the disclaimer APR range
478
+ // medianAPR – representative APR; drives per-card monthly payment + per-card APR display
479
+ // maxAPR – highest APR offered; upper bound of the disclaimer APR range
480
+ // termsToShow – price-threshold → term-length map (see termsToShow shape below)
481
+ //
482
+ // termsToShow shape: keys are price thresholds in dollars, values are arrays of
483
+ // term lengths in months. The `default` key handles prices below all
484
+ // thresholds. A price selects the array for the highest threshold it strictly
485
+ // exceeds, mirroring the previously hardcoded tiers.
486
+ var LT_GROUPS = deepFreeze({
487
+ // "a" is seeded from this project's prior production values
488
+ // (APR range 9.99–34.99, median 21.99, maxPriceLT 15000, and the original
489
+ // hardcoded term tiers).
490
+ a: {
491
+ minPriceLT: 150,
492
+ maxPriceLT: 15000,
493
+ minAPR: 9.99,
494
+ medianAPR: 21.99,
495
+ maxAPR: 34.99,
496
+ termsToShow: {
497
+ "default": [3, 6, 9],
498
+ 300: [6, 9, 12],
499
+ 500: [12, 18, 24],
500
+ 1000: [24, 36, 48]
501
+ }
502
+ },
503
+ b: {
504
+ minPriceLT: 400,
505
+ maxPriceLT: 8000,
506
+ minAPR: 24.99,
507
+ medianAPR: 29.99,
508
+ maxAPR: 35.99,
509
+ termsToShow: {
510
+ "default": [3, 6, 9],
511
+ 600: [6, 9, 12],
512
+ 800: [9, 12, 24],
513
+ 1000: [12, 24, 36]
514
+ }
515
+ }
516
+ });
517
+
518
+ // Resolve an LTgroup alias to its canonical (lowercased) preset key, or null
519
+ // when no alias is given. An unrecognized (non-empty) alias warns (listing the
520
+ // accepted values) and resolves to null so callers fall back to the default.
521
+ function normalizeGroup(alias) {
522
+ if (alias === undefined || alias === null || alias === '') return null;
523
+ var key = String(alias).toLowerCase();
524
+ if (LT_GROUPS[key]) return key;
525
+ console.warn("[Sezzle] Unknown LTgroup \"".concat(alias, "\". Accepted values: ").concat(Object.keys(LT_GROUPS).map(function (k) {
526
+ return "\"".concat(k, "\"");
527
+ }).join(', '), ". Falling back to \"").concat(DEFAULT_LT_GROUP, "\"."));
528
+ return null;
529
+ }
530
+
531
+ // True when `value` is a well-formed termsToShow map: an object whose values are
532
+ // non-empty arrays of positive numbers (months).
533
+ function isValidTermsToShow(value) {
534
+ if (!value || _typeof$4(value) !== 'object' || Array.isArray(value)) return false;
535
+ var entries = Object.values(value);
536
+ if (entries.length === 0) return false;
537
+ return entries.every(function (arr) {
538
+ return Array.isArray(arr) && arr.length > 0 && arr.every(function (n) {
539
+ return Number.isFinite(n) && n > 0;
540
+ });
541
+ });
542
+ }
543
+
544
+ // Resolve a merchant-supplied termsToShow against the group preset. Malformed
545
+ // input warns (with the expected shape) and falls back to the preset. A valid
546
+ // map missing the `default` key warns and borrows the preset's default so
547
+ // below-threshold lookups never fall through.
548
+ function resolveTermsToShow(provided, presetTerms) {
549
+ if (provided === undefined || provided === null) return presetTerms;
550
+ if (!isValidTermsToShow(provided)) {
551
+ console.warn('[Sezzle] Malformed termsToShow. Expected an object mapping price ' + 'thresholds (numbers, in dollars) to arrays of term lengths in months, ' + 'plus a "default" key for prices below all thresholds, e.g. ' + '{ default: [3, 6, 9], 500: [12, 18, 24] }. Falling back to the ' + 'LTgroup preset.');
552
+ return presetTerms;
553
+ }
554
+ if (!Array.isArray(provided["default"])) {
555
+ console.warn('[Sezzle] termsToShow is missing a "default" key for prices below all ' + "thresholds. Using the LTgroup preset's default.");
556
+ return _objectSpread$4(_objectSpread$4({}, provided), {}, {
557
+ "default": presetTerms["default"]
558
+ });
559
+ }
560
+ return provided;
561
+ }
562
+
563
+ // Pick an explicit prop when it is "set" (> 0), otherwise the preset value.
564
+ // A value of 0 is never a valid LT setting, so it is treated as "not set."
565
+ function pickPrice(value, fallback) {
566
+ return Number(value) > 0 ? Number(value) : fallback;
567
+ }
568
+
569
+ // Resolve the effective LT config from widget props.
570
+ //
571
+ // Every LT value defaults to a group preset, falling back to group "a" even
572
+ // when LT is off, so maxPriceLT / the APRs / termsToShow are never 0 or null
573
+ // downstream. `minPriceLT` is the sole exception: it is the render trigger
574
+ // (the widget shows LT only when minPriceLT > 0), so it stays 0 when LT is
575
+ // disabled — i.e. when neither LTgroup nor minPriceLT is provided.
576
+ function resolveLTConfig() {
577
+ var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
578
+ var explicitGroup = normalizeGroup(props.LTgroup);
579
+ // Backcompat: pre-LTgroup configs enabled LT via minPriceLT alone. When that's
580
+ // set without an explicit LTgroup, auto-resolve to the default preset so the
581
+ // remaining LT defaults come from the original group "a".
582
+ var minPriceLTSet = Number(props.minPriceLT) > 0;
583
+ var group = explicitGroup || (minPriceLTSet ? DEFAULT_LT_GROUP : null);
584
+ var groupDefaults = LT_GROUPS[group] || LT_GROUPS[DEFAULT_LT_GROUP];
585
+ return {
586
+ minPriceLT: pickPrice(props.minPriceLT, group ? groupDefaults.minPriceLT : 0),
587
+ maxPriceLT: pickPrice(props.maxPriceLT, groupDefaults.maxPriceLT),
588
+ minAPR: pickPrice(props.minAPR, groupDefaults.minAPR),
589
+ medianAPR: pickPrice(props.medianAPR, groupDefaults.medianAPR),
590
+ maxAPR: pickPrice(props.maxAPR, groupDefaults.maxAPR),
591
+ termsToShow: resolveTermsToShow(props.termsToShow, groupDefaults.termsToShow)
592
+ };
593
+ }
594
+
595
+ // Select the term-length array for a price from a termsToShow map. Returns the
596
+ // array for the highest dollar threshold the price strictly exceeds, falling
597
+ // back to the `default` key. Returns undefined only when the map is missing /
598
+ // has no usable default — callers guard against that.
599
+ function selectTermsToShow(price, termsConfig) {
600
+ if (!termsConfig || _typeof$4(termsConfig) !== 'object') return undefined;
601
+ var thresholds = Object.keys(termsConfig).filter(function (k) {
602
+ return k !== 'default';
603
+ }).map(Number).filter(Number.isFinite).sort(function (a, b) {
604
+ return a - b;
605
+ });
606
+ var selected = termsConfig["default"];
607
+ var _iterator = _createForOfIteratorHelper(thresholds),
608
+ _step;
609
+ try {
610
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
611
+ var threshold = _step.value;
612
+ if (price > threshold) selected = termsConfig[threshold];
613
+ }
614
+ } catch (err) {
615
+ _iterator.e(err);
616
+ } finally {
617
+ _iterator.f();
618
+ }
619
+ return selected;
620
+ }
621
+
622
+ // Min and max term-month across the whole termsToShow map (the union of every
623
+ // term array, including `default`). Used for the disclaimer's term-length
624
+ // bounds. Returns null when no usable terms exist.
625
+ function termMonthBounds(termsConfig) {
626
+ if (!termsConfig || _typeof$4(termsConfig) !== 'object') return null;
627
+ var months = Object.values(termsConfig).filter(Array.isArray).flat().filter(function (n) {
628
+ return Number.isFinite(n);
629
+ });
630
+ if (months.length === 0) return null;
631
+ return {
632
+ min: Math.min.apply(Math, _toConsumableArray$1(months)),
633
+ max: Math.max.apply(Math, _toConsumableArray$1(months))
634
+ };
635
+ }
636
+
637
+ var PI5_MIN_PRICE = 50;
638
+ function isProductEligibleLT(priceText, minPriceLT, maxPriceLT) {
639
+ if (!minPriceLT) return false;
640
+ var price = parsePrice(priceText);
641
+ return Number.isFinite(price) && price >= minPriceLT && price <= maxPriceLT;
642
+ }
643
+ function isProductEligiblePI4(priceText, minPrice, maxPrice) {
527
644
  var price = parsePrice(priceText);
528
- return minPriceLT && price >= minPriceLT && price <= maxPrice;
645
+ return Number.isFinite(price) && price >= minPrice && price <= maxPrice;
529
646
  }
530
- function termsToShow$1(price) {
531
- switch (true) {
532
- case price > 1000:
533
- return [24, 36, 48];
534
- case price > 500:
535
- return [12, 18, 24];
536
- case price > 300:
537
- return [6, 9, 12];
538
- default:
539
- return [3, 6, 9];
647
+ function isProductEligiblePI5(priceText, maxPrice, numberOfPayments) {
648
+ if (numberOfPayments !== 5) return false;
649
+ var price = parsePrice(priceText);
650
+ return Number.isFinite(price) && price >= PI5_MIN_PRICE && price <= maxPrice;
651
+ }
652
+ function isInputAmountValid(priceText, minPrice, maxPrice, minPriceLT, maxPriceLT) {
653
+ var price = parsePrice(priceText);
654
+ if (!Number.isFinite(price) || price <= 0) return false;
655
+ // LT is only active when minPriceLT is set; otherwise maxPriceLT is ignored
656
+ // and maxPrice is the sole upper bound.
657
+ var upper = minPriceLT > 0 ? Math.max(maxPrice, maxPriceLT || 0) : maxPrice;
658
+ return price >= minPrice && price <= upper;
659
+ }
660
+ function addDelimiters(priceString) {
661
+ var parsedPrice = Number(priceString).toFixed(2);
662
+ if (parsedPrice.length > 6) {
663
+ return parsedPrice.substring(0, parsedPrice.indexOf('.') - 3) + ',' + parsedPrice.substring(parsedPrice.indexOf('.') - 3, parsedPrice.length);
540
664
  }
665
+ return parsedPrice;
541
666
  }
542
- function calculateMonthlyWithInterest$1(priceText, term, APR) {
667
+ function calculateMonthlyWithInterest(priceText, term, APR) {
543
668
  var price = Number(priceText);
544
669
  if (APR > 0) {
545
670
  var rate = APR / 100 / 12;
@@ -551,12 +676,24 @@ function calculateMonthlyWithInterest$1(priceText, term, APR) {
551
676
  return price / term;
552
677
  }
553
678
  }
554
- function getFormattedPrice(price, numberOfPayments, minPriceLT, maxPrice, bestAPR) {
679
+ function getFormattedPrice(price, numberOfPayments, minPriceLT, maxPriceLT, medianAPR, termsConfig) {
555
680
  var priceString = parsePriceString(price);
556
681
  var priceReplacer = parsePrice(price);
557
682
  var formatter = price.replace(priceString, '{price}');
558
- var terms = termsToShow$1(priceReplacer);
559
- var sezzleInstallmentPrice = isProductEligibleLT(priceString, minPriceLT, maxPrice) ? calculateMonthlyWithInterest$1(priceString, terms[terms.length - 1], bestAPR) : priceReplacer / numberOfPayments;
683
+ var sezzleInstallmentPrice;
684
+ if (isProductEligibleLT(priceString, minPriceLT, maxPriceLT)) {
685
+ var terms = selectTermsToShow(priceReplacer, termsConfig);
686
+ // Defensive guard: when LT-eligible but no terms match (e.g. a malformed
687
+ // termsToShow that slipped past validation), fall back to the bi-weekly
688
+ // installment price rather than producing NaN.
689
+ if (Array.isArray(terms) && terms.length > 0) {
690
+ sezzleInstallmentPrice = calculateMonthlyWithInterest(priceString, terms[terms.length - 1], medianAPR);
691
+ } else {
692
+ sezzleInstallmentPrice = priceReplacer / numberOfPayments;
693
+ }
694
+ } else {
695
+ sezzleInstallmentPrice = priceReplacer / numberOfPayments;
696
+ }
560
697
  var sezzleInstallmentFormattedPrice = formatter.replace('{price}', sezzleInstallmentPrice.toFixed(2));
561
698
  return sezzleInstallmentFormattedPrice;
562
699
  }
@@ -588,89 +725,101 @@ function styleInject(css, ref) {
588
725
  }
589
726
  }
590
727
 
591
- var css_248z$1 = ".sezzle-shopify-info-button {\n display: block;\n overflow: hidden;\n margin: 0;\n border: none;\n padding: 0;\n background: none;\n}\n.sezzle-shopify-info-button .sezzle-checkout-button-wrapper {\n display: block;\n box-sizing: border-box;\n width: 100%;\n border: none;\n padding: 0;\n background: none;\n color: inherit;\n}\n.sezzle-shopify-info-button .sezzle-checkout-button-wrapper:focus {\n outline: 5px auto;\n}\n.sezzle-shopify-info-button .sezzle-checkout-button-wrapper.sezzle-left {\n text-align: left;\n float: left;\n}\n.sezzle-shopify-info-button .sezzle-checkout-button-wrapper.sezzle-center {\n text-align: center;\n float: none;\n}\n.sezzle-shopify-info-button .sezzle-checkout-button-wrapper.sezzle-right {\n text-align: right;\n float: right;\n}\n.sezzle-shopify-info-button .sezzle-checkout-button-wrapper .sezzle-button-text {\n width: unset;\n margin: auto;\n border: 0;\n padding: 0;\n background: none;\n vertical-align: baseline;\n word-wrap: normal;\n line-height: 18px;\n font-size: 14px;\n font-weight: 500;\n font-family: inherit;\n color: inherit;\n}\n.sezzle-shopify-info-button .sezzle-checkout-button-wrapper .sezzle-button-text.sezzle-left {\n text-align: left;\n margin: 0;\n}\n.sezzle-shopify-info-button .sezzle-checkout-button-wrapper .sezzle-button-text.sezzle-center {\n text-align: center;\n}\n.sezzle-shopify-info-button .sezzle-checkout-button-wrapper .sezzle-button-text.sezzle-right {\n float: right;\n text-align: right;\n}\n.sezzle-shopify-info-button .sezzle-checkout-button-wrapper .sezzle-button-text .sezzle-payment-amount {\n zoom: 1;\n float: none;\n margin: 0;\n border: 0;\n padding: 0;\n background: none;\n vertical-align: baseline;\n font-weight: 900;\n font-size: 1.2em;\n}\n.sezzle-shopify-info-button .sezzle-checkout-button-wrapper .sezzle-button-text .sezzle-logo {\n display: inline-block;\n box-sizing: border-box;\n height: 18px;\n width: auto;\n opacity: 1;\n float: none;\n margin: 0;\n margin-bottom: -3px;\n border: 0;\n padding: 0;\n background: none;\n vertical-align: baseline;\n}\n.sezzle-shopify-info-button .sezzle-checkout-button-wrapper .sezzle-button-text .sezzle-info-icon {\n display: contents;\n width: auto;\n position: absolute;\n margin: 0;\n box-shadow: none;\n border: none;\n padding: 0px 0px 0px 3px;\n background: none;\n vertical-align: baseline;\n line-height: initial;\n font-size: inherit;\n color: inherit;\n cursor: pointer;\n}\n.sezzle-shopify-info-button .sezzle-checkout-button-wrapper .sezzle-button-text .sezzle-info-link {\n text-decoration: underline;\n cursor: pointer;\n background: none;\n border: none;\n padding: 0px;\n display: inline;\n}\n.sezzle-shopify-info-button .sezzle-checkout-button-wrapper .sezzle-button-text .sezzle-ap-logo {\n height: 45px;\n margin: 0;\n border: 0;\n padding: 0;\n vertical-align: middle;\n}\n.sezzle-shopify-info-button .sezzle-checkout-button-wrapper .sezzle-button-text button.ap-modal-info-link {\n display: inline;\n width: auto;\n margin: 0;\n box-shadow: none;\n border: none;\n padding: 0;\n background: none;\n vertical-align: middle;\n line-height: inherit;\n font-size: inherit;\n color: inherit;\n cursor: pointer;\n}\n\n.sezzle-hidden {\n display: none;\n visibility: hidden;\n}";
728
+ var css_248z$1 = ".sezzle-shopify-info-button {\n display: block;\n overflow: hidden;\n margin: 0;\n border: none;\n padding: 0;\n background: none;\n}\n.sezzle-shopify-info-button .sezzle-checkout-button-wrapper {\n display: block;\n box-sizing: border-box;\n width: 100%;\n border: none;\n padding: 0;\n background: none;\n color: inherit;\n}\n.sezzle-shopify-info-button .sezzle-checkout-button-wrapper:focus {\n outline: 5px auto;\n}\n.sezzle-shopify-info-button .sezzle-checkout-button-wrapper.sezzle-left {\n text-align: left;\n float: left;\n}\n.sezzle-shopify-info-button .sezzle-checkout-button-wrapper.sezzle-center {\n text-align: center;\n float: none;\n}\n.sezzle-shopify-info-button .sezzle-checkout-button-wrapper.sezzle-right {\n text-align: right;\n float: right;\n}\n.sezzle-shopify-info-button .sezzle-checkout-button-wrapper .sezzle-button-text {\n width: unset;\n margin: auto;\n border: 0;\n padding: 0;\n background: none;\n vertical-align: baseline;\n word-wrap: normal;\n line-height: 18px;\n font-size: 14px;\n font-weight: 500;\n font-family: inherit;\n color: inherit;\n}\n.sezzle-shopify-info-button .sezzle-checkout-button-wrapper .sezzle-button-text.sezzle-left {\n text-align: left;\n margin: 0;\n}\n.sezzle-shopify-info-button .sezzle-checkout-button-wrapper .sezzle-button-text.sezzle-center {\n text-align: center;\n}\n.sezzle-shopify-info-button .sezzle-checkout-button-wrapper .sezzle-button-text.sezzle-right {\n float: right;\n text-align: right;\n}\n.sezzle-shopify-info-button .sezzle-checkout-button-wrapper .sezzle-button-text sup {\n vertical-align: super;\n font-size: 0.5em;\n}\n.sezzle-shopify-info-button .sezzle-checkout-button-wrapper .sezzle-button-text .sezzle-payment-amount {\n zoom: 1;\n float: none;\n margin: 0;\n border: 0;\n padding: 0;\n background: none;\n vertical-align: baseline;\n font-weight: 900;\n font-size: 1.2em;\n}\n.sezzle-shopify-info-button .sezzle-checkout-button-wrapper .sezzle-button-text .sezzle-logo {\n display: inline-block;\n box-sizing: border-box;\n height: 18px;\n width: auto;\n opacity: 1;\n float: none;\n margin: 0;\n margin-bottom: -3px;\n border: 0;\n padding: 0;\n background: none;\n vertical-align: baseline;\n}\n.sezzle-shopify-info-button .sezzle-checkout-button-wrapper .sezzle-button-text .sezzle-info-icon {\n display: inline-flex;\n align-items: center;\n padding: 0;\n vertical-align: text-top;\n line-height: initial;\n cursor: pointer;\n}\n.sezzle-shopify-info-button .sezzle-checkout-button-wrapper .sezzle-button-text .sezzle-info-link {\n text-decoration: underline;\n cursor: pointer;\n background: none;\n border: none;\n padding: 0px;\n display: inline;\n}\n.sezzle-shopify-info-button .sezzle-checkout-button-wrapper .sezzle-button-text .sezzle-ap-logo {\n height: 45px;\n margin: -5px;\n border: 0;\n padding: 0;\n vertical-align: middle;\n display: inline;\n}\n.sezzle-shopify-info-button .sezzle-checkout-button-wrapper .sezzle-button-text button.ap-modal-info-link {\n display: inline;\n width: auto;\n margin: 0;\n box-shadow: none;\n border: none;\n padding: 0;\n background: none;\n vertical-align: middle;\n line-height: inherit;\n font-size: inherit;\n color: inherit;\n cursor: pointer;\n}\n\n.sezzle-hidden {\n display: none;\n visibility: hidden;\n}";
592
729
  styleInject(css_248z$1);
593
730
 
594
- function getStandardModal(modalNode, minPrice, maxPrice) {
595
- var currentLang = getLanguage();
596
- var translations = getTranslations(currentLang);
597
- modalNode.className = 'sezzle-checkout-modal-lightbox close-sezzle-modal sezzle-modal';
598
- var modalContent = "<section class=\"sezzle-checkout-modal-lightbox close-sezzle-modal\" lang=\"".concat(translations.locale, "\"\n aria-label=\"").concat(translations.sezzleInformation, "\" style=\"display: block;\">\n <div id=\"sezzle-modal-container\" role=\"dialog\" aria-label=\"Sezzle Modal\"\n class=\"sezzle-checkout-modal-hidden sezzle-four-pay\">\n <div class=\"sezzle-modal\">\n <div><button role=\"button\" aria-label=\"").concat(translations.closeSezzleModal, "\" class=\"close-sezzle-modal\"></button></div>\n <div class=\"sezzle-logo\" title=\"Sezzle\"></div>\n <div id=\"sezzle-modal-core-content\" class=\"sezzle-modal-content\">\n <div id=\"tp-widget-wrapper\" class=\"tp-widget-wrapper visible\">\n <a id=\"profile-link\" target=\"_blank\" href=\"https://www.trustpilot.com/review/sezzle.com?utm_medium=trustbox&amp;utm_source=MicroCombo\">\n <div id=\"tp-review-status\" class=\"tp-review-status\">").concat(translations.PI4trustPilotReviewStatus, "</div>\n <!-- Stars -->\n <div id=\"tp-widget-stars\" class=\"tp-widget-stars\">\n <div class=\"\">\n <div class=\"tp-stars tp-stars--4 tp-stars--4--half\">\n <div style=\"position: relative; height: 0; width: 100%; padding: 0; padding-bottom: 18.326693227091635%;\">\n\n <svg role=\"img\" viewBox=\"0 0 251 46\" xmlns=\"http://www.w3.org/2000/svg\" style=\"position: absolute; height: 100%; width: 100%; left: 0; top: 0;\">\n <title id=\"starRating-tfnn0cd6r0c\" lang=\"en-US\">").concat(translations.PI4trustPilotTitle, "</title>\n <g class=\"tp-star\">\n <path class=\"tp-star__canvas\" fill=\"#dcdce6\" d=\"M0 46.330002h46.375586V0H0z\"></path>\n <path class=\"tp-star__shape\" d=\"M39.533936 19.711433L13.230239 38.80065l3.838216-11.797827L7.02115 19.711433h12.418975l3.837417-11.798624 3.837418 11.798624h12.418975zM23.2785 31.510075l7.183595-1.509576 2.862114 8.800152L23.2785 31.510075z\" fill=\"#FFF\"></path>\n </g>\n <g class=\"tp-star\">\n <path class=\"tp-star__canvas\" fill=\"#dcdce6\" d=\"M51.24816 46.330002h46.375587V0H51.248161z\"></path>\n <path class=\"tp-star__canvas--half\" fill=\"#dcdce6\" d=\"M51.24816 46.330002h23.187793V0H51.248161z\"></path>\n <path class=\"tp-star__shape\" d=\"M74.990978 31.32991L81.150908 30 84 39l-9.660206-7.202786L64.30279 39l3.895636-11.840666L58 19.841466h12.605577L74.499595 8l3.895637 11.841466H91L74.990978 31.329909z\" fill=\"#FFF\"></path>\n </g>\n <g class=\"tp-star\">\n <path class=\"tp-star__canvas\" fill=\"#dcdce6\" d=\"M102.532209 46.330002h46.375586V0h-46.375586z\"></path>\n <path class=\"tp-star__canvas--half\" fill=\"#dcdce6\" d=\"M102.532209 46.330002h23.187793V0h-23.187793z\"></path>\n <path class=\"tp-star__shape\" d=\"M142.066994 19.711433L115.763298 38.80065l3.838215-11.797827-10.047304-7.291391h12.418975l3.837418-11.798624 3.837417 11.798624h12.418975zM125.81156 31.510075l7.183595-1.509576 2.862113 8.800152-10.045708-7.290576z\" fill=\"#FFF\"></path>\n </g>\n <g class=\"tp-star\">\n <path class=\"tp-star__canvas\" fill=\"#dcdce6\" d=\"M153.815458 46.330002h46.375586V0h-46.375586z\"></path>\n <path class=\"tp-star__canvas--half\" fill=\"#dcdce6\" d=\"M153.815458 46.330002h23.187793V0h-23.187793z\"></path>\n <path class=\"tp-star__shape\" d=\"M193.348355 19.711433L167.045457 38.80065l3.837417-11.797827-10.047303-7.291391h12.418974l3.837418-11.798624 3.837418 11.798624h12.418974zM177.09292 31.510075l7.183595-1.509576 2.862114 8.800152-10.045709-7.290576z\" fill=\"#FFF\"></path>\n </g>\n <g class=\"tp-star\">\n <path class=\"tp-star__canvas\" fill=\"#dcdce6\" d=\"M205.064416 46.330002h46.375587V0h-46.375587z\"></path>\n <path class=\"tp-star__canvas--half\" fill=\"#dcdce6\" d=\"M205.064416 46.330002h23.187793V0h-23.187793z\"></path>\n <path class=\"tp-star__shape\" d=\"M244.597022 19.711433l-26.3029 19.089218 3.837419-11.797827-10.047304-7.291391h12.418974l3.837418-11.798624 3.837418 11.798624h12.418975zm-16.255436 11.798642l7.183595-1.509576 2.862114 8.800152-10.045709-7.290576z\" fill=\"#FFF\"></path>\n </g>\n </svg>\n </div>\n </div>\n </div>\n </div>\n <div class=\"widget-info\">\n <!-- Business Info -->\n <div id=\"tp-widget-review-count\" class=\"tp-widget-review-count\">").concat(translations.PI4trustPilotReviewsCount, "</div>\n <div id=\"tp-widget-rating\" class=\"tp-widget-rating\">").concat(translations.PI4trustPilotReviews, "</div>\n <!-- Logo -->\n <div id=\"tp-widget-logo\" class=\"tp-widget-logo\">\n <div class=\"\">\n <div style=\"position: relative; height: 0; width: 100%; padding: 0; padding-bottom: 24.6031746031746%;\">\n <svg role=\"img\" viewBox=\"0 0 126 31\" xmlns=\"http://www.w3.org/2000/svg\" style=\"position: absolute; height: 100%; width: 100%; left: 0; top: 0;\">\n <title id=\"trustpilotLogo-wwxihtot4h\">Trustpilot</title>\n <path class=\"tp-logo__text\" d=\"M33.074774 11.07005H45.81806v2.364196h-5.010656v13.290316h-2.755306V13.434246h-4.988435V11.07005h.01111zm12.198892 4.319629h2.355341v2.187433h.04444c.077771-.309334.222203-.60762.433295-.894859.211092-.287239.466624-.56343.766597-.79543.299972-.243048.633276-.430858.999909-.585525.366633-.14362.744377-.220953 1.12212-.220953.288863 0 .499955.011047.611056.022095.1111.011048.222202.033143.344413.04419v2.408387c-.177762-.033143-.355523-.055238-.544395-.077333-.188872-.022096-.366633-.033143-.544395-.033143-.422184 0-.822148.08838-1.199891.254096-.377744.165714-.699936.41981-.977689.740192-.277753.331429-.499955.729144-.666606 1.21524-.166652.486097-.244422 1.03848-.244422 1.668195v5.39125h-2.510883V15.38968h.01111zm18.220567 11.334883H61.02779v-1.579813h-.04444c-.311083.574477-.766597 1.02743-1.377653 1.369908-.611055.342477-1.233221.51924-1.866497.51924-1.499864 0-2.588654-.364573-3.25526-1.104765-.666606-.740193-.999909-1.856005-.999909-3.347437V15.38968h2.510883v6.948968c0 .994288.188872 1.701337.577725 2.1101.377744.408763.922139.618668 1.610965.618668.533285 0 .96658-.077333 1.322102-.243048.355524-.165714.644386-.37562.855478-.65181.222202-.265144.377744-.596574.477735-.972194.09999-.37562.144431-.784382.144431-1.226288v-6.573349h2.510883v11.323836zm4.27739-3.634675c.07777.729144.355522 1.237336.833257 1.535623.488844.287238 1.06657.441905 1.744286.441905.233312 0 .499954-.022095.799927-.055238.299973-.033143.588836-.110476.844368-.209905.266642-.099429.477734-.254096.655496-.452954.166652-.198857.244422-.452953.233312-.773335-.01111-.320381-.133321-.585525-.355523-.784382-.222202-.209906-.499955-.364573-.844368-.497144-.344413-.121525-.733267-.232-1.17767-.320382-.444405-.088381-.888809-.18781-1.344323-.287239-.466624-.099429-.922138-.232-1.355432-.37562-.433294-.14362-.822148-.342477-1.166561-.596573-.344413-.243048-.622166-.56343-.822148-.950097-.211092-.386668-.311083-.861716-.311083-1.436194 0-.618668.155542-1.12686.455515-1.54667.299972-.41981.688826-.75124 1.14434-1.005336.466624-.254095.97769-.430858 1.544304-.541334.566615-.099429 1.11101-.154667 1.622075-.154667.588836 0 1.15545.066286 1.688736.18781.533285.121524 1.02213.320381 1.455423.60762.433294.276191.788817.640764 1.07768 1.08267.288863.441905.466624.98324.544395 1.612955h-2.621984c-.122211-.596572-.388854-1.005335-.822148-1.204193-.433294-.209905-.933248-.309334-1.488753-.309334-.177762 0-.388854.011048-.633276.04419-.244422.033144-.466624.088382-.688826.165715-.211092.077334-.388854.198858-.544395.353525-.144432.154667-.222203.353525-.222203.60762 0 .309335.111101.552383.322193.740193.211092.18781.488845.342477.833258.475048.344413.121524.733267.232 1.177671.320382.444404.088381.899918.18781 1.366542.287239.455515.099429.899919.232 1.344323.37562.444404.14362.833257.342477 1.17767.596573.344414.254095.622166.56343.833258.93905.211092.37562.322193.850668.322193 1.40305 0 .673906-.155541 1.237336-.466624 1.712385-.311083.464001-.711047.850669-1.199891 1.137907-.488845.28724-1.04435.508192-1.644295.640764-.599946.132572-1.199891.198857-1.788727.198857-.722156 0-1.388762-.077333-1.999818-.243048-.611056-.165714-1.14434-.408763-1.588745-.729144-.444404-.33143-.799927-.740192-1.05546-1.226289-.255532-.486096-.388853-1.071621-.411073-1.745528h2.533103v-.022095zm8.288135-7.700208h1.899828v-3.402675h2.510883v3.402675h2.26646v1.867052h-2.26646v6.054109c0 .265143.01111.486096.03333.684954.02222.18781.07777.353524.155542.486096.07777.132572.199981.232.366633.298287.166651.066285.377743.099428.666606.099428.177762 0 .355523 0 .533285-.011047.177762-.011048.355523-.033143.533285-.077334v1.933338c-.277753.033143-.555505.055238-.811038.088381-.266642.033143-.533285.04419-.811037.04419-.666606 0-1.199891-.066285-1.599855-.18781-.399963-.121523-.722156-.309333-.944358-.552381-.233313-.243049-.377744-.541335-.466625-.905907-.07777-.364573-.13332-.784383-.144431-1.248384v-6.683825h-1.899827v-1.889147h-.02222zm8.454788 0h2.377562V16.9253h.04444c.355523-.662858.844368-1.12686 1.477644-1.414098.633276-.287239 1.310992-.430858 2.055369-.430858.899918 0 1.677625.154667 2.344231.475048.666606.309335 1.222111.740193 1.666515 1.292575.444405.552382.766597 1.193145.9888 1.92229.222202.729145.333303 1.513527.333303 2.3421 0 .762288-.099991 1.50248-.299973 2.20953-.199982.718096-.499955 1.347812-.899918 1.900194-.399964.552383-.911029.98324-1.533194 1.31467-.622166.33143-1.344323.497144-2.18869.497144-.366634 0-.733267-.033143-1.0999-.099429-.366634-.066286-.722157-.176762-1.05546-.320381-.333303-.14362-.655496-.33143-.933249-.56343-.288863-.232-.522175-.497144-.722157-.79543h-.04444v5.656393h-2.510883V15.38968zm8.77698 5.67849c0-.508193-.06666-1.005337-.199981-1.491433-.133321-.486096-.333303-.905907-.599946-1.281527-.266642-.37562-.599945-.673906-.988799-.894859-.399963-.220953-.855478-.342477-1.366542-.342477-1.05546 0-1.855387.364572-2.388672 1.093717-.533285.729144-.799928 1.701337-.799928 2.916578 0 .574478.066661 1.104764.211092 1.59086.144432.486097.344414.905908.633276 1.259432.277753.353525.611056.629716.99991.828574.388853.209905.844367.309334 1.355432.309334.577725 0 1.05546-.121524 1.455423-.353525.399964-.232.722157-.541335.97769-.905907.255531-.37562.444403-.79543.555504-1.270479.099991-.475049.155542-.961145.155542-1.458289zm4.432931-9.99812h2.510883v2.364197h-2.510883V11.07005zm0 4.31963h2.510883v11.334883h-2.510883V15.389679zm4.755124-4.31963h2.510883v15.654513h-2.510883V11.07005zm10.210184 15.963847c-.911029 0-1.722066-.154667-2.433113-.452953-.711046-.298287-1.310992-.718097-1.810946-1.237337-.488845-.530287-.866588-1.160002-1.12212-1.889147-.255533-.729144-.388854-1.535622-.388854-2.408386 0-.861716.133321-1.657147.388853-2.386291.255533-.729145.633276-1.35886 1.12212-1.889148.488845-.530287 1.0999-.93905 1.810947-1.237336.711047-.298286 1.522084-.452953 2.433113-.452953.911028 0 1.722066.154667 2.433112.452953.711047.298287 1.310992.718097 1.810947 1.237336.488844.530287.866588 1.160003 1.12212 1.889148.255532.729144.388854 1.524575.388854 2.38629 0 .872765-.133322 1.679243-.388854 2.408387-.255532.729145-.633276 1.35886-1.12212 1.889147-.488845.530287-1.0999.93905-1.810947 1.237337-.711046.298286-1.522084.452953-2.433112.452953zm0-1.977528c.555505 0 1.04435-.121524 1.455423-.353525.411074-.232.744377-.541335 1.01102-.916954.266642-.37562.455513-.806478.588835-1.281527.12221-.475049.188872-.961145.188872-1.45829 0-.486096-.066661-.961144-.188872-1.44724-.122211-.486097-.322193-.905907-.588836-1.281527-.266642-.37562-.599945-.673907-1.011019-.905907-.411074-.232-.899918-.353525-1.455423-.353525-.555505 0-1.04435.121524-1.455424.353525-.411073.232-.744376.541334-1.011019.905907-.266642.37562-.455514.79543-.588835 1.281526-.122211.486097-.188872.961145-.188872 1.447242 0 .497144.06666.98324.188872 1.458289.12221.475049.322193.905907.588835 1.281527.266643.37562.599946.684954 1.01102.916954.411073.243048.899918.353525 1.455423.353525zm6.4883-9.66669h1.899827v-3.402674h2.510883v3.402675h2.26646v1.867052h-2.26646v6.054109c0 .265143.01111.486096.03333.684954.02222.18781.07777.353524.155541.486096.077771.132572.199982.232.366634.298287.166651.066285.377743.099428.666606.099428.177762 0 .355523 0 .533285-.011047.177762-.011048.355523-.033143.533285-.077334v1.933338c-.277753.033143-.555505.055238-.811038.088381-.266642.033143-.533285.04419-.811037.04419-.666606 0-1.199891-.066285-1.599855-.18781-.399963-.121523-.722156-.309333-.944358-.552381-.233313-.243049-.377744-.541335-.466625-.905907-.07777-.364573-.133321-.784383-.144431-1.248384v-6.683825h-1.899827v-1.889147h-.02222z\" fill=\"#191919\"></path>\n <path class=\"tp-logo__star\" fill=\"#00B67A\" d=\"M30.141707 11.07005H18.63164L15.076408.177071l-3.566342 10.892977L0 11.059002l9.321376 6.739063-3.566343 10.88193 9.321375-6.728016 9.310266 6.728016-3.555233-10.88193 9.310266-6.728016z\"></path>\n <path class=\"tp-logo__star-notch\" fill=\"#005128\" d=\"M21.631369 20.26169l-.799928-2.463625-5.755033 4.153914z\"></path>\n </svg>\n </div>\n </div>\n </div>\n </div>\n </a>\n </div>\n <header class=\"sezzle-header\">").concat(translations.PI4sezzleHeader, "\n </header>\n <p class=\"sezzle-row\">\n <span>").concat(translations.PI4sezzleHeaderChild, "</span>\n <span>").concat(translations.PI4sezzleHeaderChild2, "</span>\n </p>\n <div class=\"sezzle-four-pay ").concat(currentLang !== 'en' ? 'sezzle-four-pay-fr-es' : '', "\">\n <div class=\"sezzle-pie-area\">\n <div class=\"due-today\">\n <div class=\"payment-item\">\n <div class=\"pie-icon\" title=\"").concat(translations.PI4pieAlt, " 25%\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"46\" height=\"47\" viewBox=\"0 0 46 47\" fill=\"none\">\n <path d=\"M45.9594 23.0996C45.9594 35.7835 35.677 46.0659 22.9931 46.0659C10.3092 46.0659 0.0268555 35.7835 0.0268555 23.0996C0.0268555 10.4157 10.3092 0.133301 22.9931 0.133301C35.677 0.133301 45.9594 10.4157 45.9594 23.0996ZM11.51 23.0996C11.51 29.4415 16.6512 34.5827 22.9931 34.5827C29.3351 34.5827 34.4763 29.4415 34.4763 23.0996C34.4763 16.7576 29.3351 11.6164 22.9931 11.6164C16.6512 11.6164 11.51 16.7576 11.51 23.0996Z\" fill=\"#8333D4\" fill-opacity=\"0.05\"/>\n <path d=\"M22.9927 0.133171C26.0086 0.133171 28.9951 0.727215 31.7815 1.88138C34.5679 3.03554 37.0997 4.72722 39.2323 6.85984C41.3649 8.99245 43.0566 11.5242 44.2107 14.3106C45.3649 17.097 45.9589 20.0835 45.9589 23.0994L34.4758 23.0994C34.4758 21.5915 34.1788 20.0982 33.6017 18.705C33.0246 17.3118 32.1788 16.0459 31.1125 14.9796C30.0462 13.9133 28.7803 13.0675 27.3871 12.4904C25.9939 11.9133 24.5007 11.6163 22.9927 11.6163L22.9927 0.133171Z\" fill=\"#8333D4\"/>\n <path d=\"M45.9589 23.0994C45.9589 26.2704 43.3884 28.8408 40.2174 28.8408C37.0464 28.8408 34.4758 26.2704 34.4758 23.0994C34.4758 19.9285 37.0464 17.3577 40.2174 17.3577C43.3884 17.3577 45.9589 19.9285 45.9589 23.0994Z\" fill=\"#8333D4\"/>\n <ellipse cx=\"40.2181\" cy=\"23.0995\" rx=\"5.74157\" ry=\"5.74157\" fill=\"#8333D4\"/>\n </svg>\n </div>\n <div class=\"breakdown-row\">\n <div class=\"percentage\">25%</div>\n <div class=\"due\">").concat(translations.today, "</div>\n </div>\n </div>\n </div>\n <div class=\"future-payments\">\n <div class=\"payment-item\">\n <div class=\"pie-icon\" title=\"").concat(translations.PI4pieAlt, " 50%\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"47\" height=\"47\" viewBox=\"0 0 47 47\" fill=\"none\">\n <path d=\"M46.1933 23.0998C46.1933 35.7837 35.9109 46.0661 23.227 46.0661C10.5431 46.0661 0.260742 35.7837 0.260742 23.0998C0.260742 10.4159 10.5431 0.133545 23.227 0.133545C35.9109 0.133545 46.1933 10.4159 46.1933 23.0998ZM11.7439 23.0998C11.7439 29.4418 16.8851 34.583 23.227 34.583C29.569 34.583 34.7101 29.4418 34.7101 23.0998C34.7101 16.7579 29.569 11.6167 23.227 11.6167C16.8851 11.6167 11.7439 16.7579 11.7439 23.0998Z\" fill=\"#8333D4\" fill-opacity=\"0.05\"/>\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M23.2953 46.0655C35.9478 46.0287 46.1933 35.7605 46.1933 23.0993C46.1933 10.4154 35.911 0.133057 23.2271 0.133057V11.6162C29.569 11.6162 34.7102 16.7574 34.7102 23.0993C34.7102 29.4413 29.569 34.5825 23.2271 34.5825V34.5828C20.0562 34.5829 17.4858 37.1535 17.4858 40.3243C17.4858 43.4953 20.0564 46.0659 23.2274 46.0659C23.2501 46.0659 23.2727 46.0658 23.2953 46.0655Z\" fill=\"#8333D4\"/>\n </svg>\n </div>\n <div class=\"breakdown-row\">\n <div class=\"percentage\">25%</div>\n <div class=\"due\">").concat(translations.week, " 2</div>\n </div>\n </div>\n <div class=\"payment-item\">\n <div class=\"pie-icon\" title=\"").concat(translations.PI4pieAlt, " 75%\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"47\" height=\"47\" viewBox=\"0 0 47 47\" fill=\"none\">\n <path d=\"M46.0663 23.0996C46.0663 35.7835 35.784 46.0659 23.1001 46.0659C10.4161 46.0659 0.133789 35.7835 0.133789 23.0996C0.133789 10.4157 10.4161 0.133301 23.1001 0.133301C35.784 0.133301 46.0663 10.4157 46.0663 23.0996ZM11.6169 23.0996C11.6169 29.4415 16.7581 34.5827 23.1001 34.5827C29.442 34.5827 34.5832 29.4415 34.5832 23.0996C34.5832 16.7576 29.442 11.6164 23.1001 11.6164C16.7581 11.6164 11.6169 16.7576 11.6169 23.0996Z\" fill=\"#8333D4\" fill-opacity=\"0.05\"/>\n <path d=\"M23.1001 0.133368C27.6424 0.133368 32.0826 1.48031 35.8594 4.00388C39.6362 6.52745 42.5799 10.1143 44.3181 14.3108C46.0564 18.5074 46.5112 23.1251 45.625 27.5801C44.7389 32.0352 42.5516 36.1274 39.3397 39.3392C36.1278 42.5511 32.0356 44.7385 27.5806 45.6246C23.1255 46.5108 18.5078 46.056 14.3112 44.3177C10.1147 42.5795 6.52787 39.6358 4.0043 35.859C1.48074 32.0822 0.133788 27.6419 0.133788 23.0996L11.6169 23.0996C11.6169 25.3708 12.2904 27.5909 13.5522 29.4793C14.814 31.3677 16.6074 32.8395 18.7057 33.7087C20.8039 34.5778 23.1128 34.8052 25.3403 34.3621C27.5678 33.9191 29.6139 32.8254 31.2199 31.2194C32.8258 29.6135 33.9195 27.5674 34.3625 25.3399C34.8056 23.1124 34.5782 20.8035 33.7091 18.7052C32.84 16.607 31.3681 14.8135 29.4797 13.5518C27.5914 12.29 25.3712 11.6165 23.1001 11.6165L23.1001 0.133368Z\" fill=\"#8333D4\"/>\n <path d=\"M11.6169 23.0996C11.6169 26.2706 9.04634 28.8412 5.87536 28.8412C2.70438 28.8412 0.133788 26.2706 0.133788 23.0996C0.133788 19.9287 2.70438 17.3581 5.87536 17.3581C9.04634 17.3581 11.6169 19.9287 11.6169 23.0996Z\" fill=\"#8333D4\"/>\n <ellipse cx=\"5.87536\" cy=\"23.0997\" rx=\"5.74157\" ry=\"5.74157\" fill=\"#8333D4\"/>\n </svg>\n </div>\n <div class=\"breakdown-row\">\n <div class=\"percentage\">25%</div>\n <div class=\"due\">").concat(translations.week, " 4</div>\n </div>\n </div>\n <div class=\"payment-item\">\n <div class=\"pie-icon\" title=\"").concat(translations.PI4pieAlt, " 100%\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"47\" height=\"47\" viewBox=\"0 0 47 47\" fill=\"none\">\n <path d=\"M46.4394 23.0996C46.4394 35.7835 36.157 46.0659 23.4731 46.0659C10.7892 46.0659 0.506836 35.7835 0.506836 23.0996C0.506836 10.4157 10.7892 0.133301 23.4731 0.133301C36.157 0.133301 46.4394 10.4157 46.4394 23.0996ZM11.99 23.0996C11.99 29.4415 17.1311 34.5827 23.4731 34.5827C29.8151 34.5827 34.9562 29.4415 34.9562 23.0996C34.9562 16.7576 29.8151 11.6164 23.4731 11.6164C17.1311 11.6164 11.99 16.7576 11.99 23.0996Z\" fill=\"#8333D4\"/>\n </svg>\n </div>\n <div class=\"breakdown-row\">\n <div class=\"percentage\">25%</div>\n <div class=\"due\">").concat(translations.week, " 6<sup>3</sup></div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"sezzle-features\">\n <p class=\"single-feature\">\n ").concat(translations.PI4selectSezzle, "\n </p>\n <p class=\"single-feature\">\n ").concat(translations.PI4completePurchase, "\n </p>\n <p class=\"single-feature\">\n ").concat(translations.PI4schedulePayments, "\n </p>\n </div>\n <div class=\"terms-container\">\n <p class=\"terms\">\n <span><sup role=\"doc-noteref\" aria-label=\"").concat(translations.PI4footnote, " 1\">1</sup>").concat(translations.terms1, "</span><br /><span>").concat(translations.termsHiw, "</span>\n </p>\n <p class=\"terms\"><sup role=\"doc-noteref\" aria-label=\"").concat(translations.PI4footnote, " 2\">2</sup>").concat(translations.terms2, "</p>\n <p class=\"terms\">\n <span class=\"webbank-terms\"><sup role=\"doc-noteref\" aria-label=\"").concat(translations.PI4footnote, " 3\">3</sup>").concat(translations.webBankTerms, " ").concat(translations.webBankTermsPI4, "</span><br /><span>").concat(translations.linkToCompleteTerms, "</span>\n </p>\n </div>\n <div class=\"close-btn-container close-sezzle-modal\">\n <button class=\"close-btn\">").concat(translations.PI4close, "</button>\n </div>\n </div>\n </div>\n </div>\n</section>");
599
- modalNode.innerHTML = modalContent.replace('%%min-price%%', Intl.NumberFormat(currentLang).format(minPrice)).replace('%%max-price%%', Intl.NumberFormat(currentLang).format(maxPrice));
600
- }
601
-
731
+ function _typeof$3(o) { "@babel/helpers - typeof"; return _typeof$3 = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof$3(o); }
732
+ function ownKeys$3(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
733
+ function _objectSpread$3(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$3(Object(t), !0).forEach(function (r) { _defineProperty$3(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$3(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
734
+ function _defineProperty$3(e, r, t) { return (r = _toPropertyKey$3(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
735
+ function _toPropertyKey$3(t) { var i = _toPrimitive$3(t, "string"); return "symbol" == _typeof$3(i) ? i : i + ""; }
736
+ function _toPrimitive$3(t, r) { if ("object" != _typeof$3(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof$3(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
602
737
  var CAROUSEL_MIN_TAB = 1;
603
738
  var CAROUSEL_MAX_TAB = 3;
604
739
  var INPUT_DEBOUNCE_DELAY_MS = 150;
605
- var CURRENCY_REGEX_GLOBAL$1 = /[$€£₤₹]/g;
740
+ var CURRENCY_REGEX_GLOBAL = /[$€£₤₹]/g;
606
741
  var SANITIZE_REGEX = /[^0-9,.$€£₤₹]/g;
607
- function updateInstallmentContent(elements, priceString) {
608
- for (var i = 0; i < elements.length; i++) {
609
- elements[i].textContent = priceString;
610
- }
742
+ function computeEligibility(priceString, opts) {
743
+ return {
744
+ pi4: isProductEligiblePI4(priceString, opts.minPrice, opts.maxPrice),
745
+ pi5: isProductEligiblePI5(priceString, opts.maxPrice, opts.numberOfPayments),
746
+ lt: isProductEligibleLT(priceString, opts.minPriceLT, opts.maxPriceLT)
747
+ };
611
748
  }
612
-
613
- /**
614
- * Generates the HTML for a payment card with the specified number of installments
615
- * @param {number} numberOfPayments - Number of payments (4 or 5)
616
- * @param {string} currency - Currency symbol
617
- * @param {string} priceString - Price as string
618
- * @param {number} minPriceLT - Minimum price for long-term
619
- * @param {number} maxPrice - Maximum price
620
- * @param {number} bestAPR - Best APR rate
621
- * @param {object} translations - Translation object
622
- * @return {string} - HTML string for the payment card
623
- */
624
- function generatePaymentCard(numberOfPayments, currency, priceString, minPriceLT, maxPrice, bestAPR, translations) {
749
+ function formatLTAmount(currency, value) {
750
+ return currency + addDelimiters(value);
751
+ }
752
+ function generateBiweeklyCard(numberOfPayments, currency, priceString, translations) {
625
753
  var classModifier = numberOfPayments === 4 ? 'fourth' : 'fifth';
626
754
  var dashWidth = numberOfPayments === 4 ? 30 : 22;
627
- var installmentPrice = getFormattedPrice(currency + priceString, numberOfPayments, minPriceLT, maxPrice, bestAPR);
628
-
629
- // Generate installment breakdowns
755
+ // Biweekly cards always show the bi-weekly installment (price / numberOfPayments),
756
+ // never the long-term monthly amount. Passing minPriceLT/maxPriceLT = 0 forces
757
+ // getFormattedPrice down the non-LT branch even for LT-eligible prices.
758
+ var installmentPrice = getFormattedPrice(currency + priceString, numberOfPayments, 0, 0, 0, null);
759
+ var pillLabel = numberOfPayments === 5 ? "".concat(translations.MultiPlanpayIn, " 5 <sup>TM</sup>") : "".concat(translations.MultiPlanpayIn, " ").concat(numberOfPayments);
630
760
  var installments = [];
631
761
  for (var i = 0; i < numberOfPayments; i++) {
632
762
  var isFirst = i === 0;
633
763
  var isLast = i === numberOfPayments - 1;
634
764
  var weekNumber = i * 2;
635
- var dueText = isFirst ? translations.today : "".concat(weekNumber, " ").concat(translations.PI5weeks);
765
+ var dueText = isFirst ? translations.today : "".concat(weekNumber, " ").concat(translations.MultiPlanweeks);
636
766
  installments.push("\n <div class='installment'>\n <div class='graphic'>\n <div class='dash left ".concat(classModifier, "'>\n <svg width=\"").concat(dashWidth, "\" height=\"2\" viewBox=\"0 0 ").concat(dashWidth, " 2\" fill=\"#E8E8E8\" xmlns=\"http://www.w3.org/2000/svg\"").concat(isFirst ? ' style="visibility: hidden"' : '', ">\n <rect x=\"").concat(dashWidth === 30 ? '0.75' : '0.399994', "\" width=\"").concat(dashWidth, "\" height=\"2\" fill=\"#E8E8E8\"/>\n </svg>\n </div>\n <div class='dot'>\n <svg width=\"17\" height=\"16\" viewBox=\"0 0 17 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M8.39999 12C10.6091 12 12.4 10.2091 12.4 8C12.4 5.79086 10.6091 4 8.39999 4C6.19085 4 4.39999 5.79086 4.39999 8C4.39999 10.2091 6.19085 12 8.39999 12Z\" fill=\"#8333D4\"></path>\n </svg>\n </div>\n <div class='dash right ").concat(classModifier, "'>\n <svg width=\"").concat(dashWidth, "\" height=\"").concat(i > 0 && i < numberOfPayments - 1 ? 16 : 2, "\" viewBox=\"0 0 ").concat(dashWidth, " ").concat(i > 0 && i < numberOfPayments - 1 ? 16 : 2, "\" fill=\"#E8E8E8\" xmlns=\"http://www.w3.org/2000/svg\"").concat(isLast ? ' style="visibility: hidden"' : '', ">\n <rect x=\"").concat(dashWidth === 30 ? '0.75' : '0.399994', "\" ").concat(i > 0 && i < numberOfPayments - 1 ? 'y="7" ' : '', "width=\"").concat(dashWidth, "\" height=\"2\" fill=\"#E8E8E8\"/>\n </svg>\n </div>\n </div>\n <div class='detail").concat(isFirst ? ' first-installment' : '', "'>\n <div class='amount ").concat(numberOfPayments, "-pay-installment'>\n ").concat(installmentPrice, "\n </div>\n <div class='due'>\n ").concat(dueText, "\n </div>\n </div>\n </div>\n "));
637
767
  }
638
- return "\n <div class='payment-card ".concat(numberOfPayments, "-pay-installment-card'>\n <div class='plan-summary'>\n <div class='purple'>\n <div class='left'>\n <span class='price ").concat(numberOfPayments, "-pay-installment'>").concat(installmentPrice, "</span>\n <span class='due'>").concat(translations.today, "</span>\n </div>\n <div class='right'>\n <span class='pill'>").concat(translations.PI5payIn, " ").concat(numberOfPayments, "</span>\n </div>\n </div>\n <div class='grey'>\n <span class=\"").concat(numberOfPayments, "-pay-installment\">").concat(installmentPrice, "</span> ").concat(translations.PI5every2Weeks, "\n </div>\n </div>\n <div class='payment-breakdown'>\n ").concat(installments.join(''), "\n </div>\n </div>\n ");
768
+ return "\n <div class='payment-card ".concat(numberOfPayments, "-pay-installment-card'>\n <div class='plan-summary'>\n <div class='purple'>\n <div class='left'>\n <span class='price ").concat(numberOfPayments, "-pay-installment'>").concat(installmentPrice, "</span>\n <span class='due'>").concat(translations.today, "</span>\n </div>\n <div class='right'>\n <span class='pill'>").concat(pillLabel, "</span>\n </div>\n </div>\n <div class='grey'>\n <span class=\"").concat(numberOfPayments, "-pay-installment\">").concat(installmentPrice, "</span> ").concat(translations.MultiPlanevery2Weeks, "\n </div>\n </div>\n <div class='payment-breakdown'>\n ").concat(installments.join(''), "\n </div>\n </div>\n ");
639
769
  }
640
-
641
- /**
642
- * Updates the state of arrow buttons based on current position
643
- * @param {HTMLElement} leftArrow - The left arrow button element
644
- * @param {HTMLElement} rightArrow - The right arrow button element
645
- * @param {number} activeTab - Current active tab position (1-based)
646
- */
647
- function updateArrowStates(leftArrow, rightArrow, activeTab) {
648
- if (!leftArrow || !rightArrow) return;
649
-
650
- // Update left arrow
651
- if (activeTab === CAROUSEL_MIN_TAB) {
652
- leftArrow.classList.add('disabled');
653
- leftArrow.setAttribute('aria-disabled', 'true');
654
- } else {
655
- leftArrow.classList.remove('disabled');
656
- leftArrow.removeAttribute('aria-disabled');
770
+ function generateMonthlyCard(months, currency, priceString, medianAPR, translations, lang) {
771
+ var monthly = calculateMonthlyWithInterest(priceString, months, medianAPR);
772
+ var total = monthly * months;
773
+ var interest = total - Number(priceString);
774
+ var aprDisplay = formatNumberForLocale(medianAPR, lang);
775
+ return "\n <div class='payment-card monthly-installment-card' data-months='".concat(months, "'>\n <div class='plan-summary'>\n <div class='purple'>\n <div class='left'>\n <span class='price monthly-amount' data-months='").concat(months, "'>").concat(formatLTAmount(currency, monthly), "</span>\n <span class='due' aria-label='").concat(translations.LTperMonth, "'>\n <span aria-hidden='true'>").concat(translations.LTmonthlyAmount, "</span>\n </span>\n </div>\n <div class='right'>\n <span class='pill'>").concat(months, " ").concat(translations.LTtermLength, "</span>\n </div>\n </div>\n </div>\n <div class='plan-details monthly-plan-details'>\n <div class='monthly-detail-row' aria-label='").concat(translations.LTreadApr, " ").concat(aprDisplay, " ").concat(translations.LTpercent, "'>\n <span class='detail-label' aria-hidden='true'>").concat(translations.LTsampleApr, "</span>\n <span class='detail-value monthly-apr' aria-hidden='true'>").concat(aprDisplay, "%</span>\n </div>\n <div class='monthly-detail-row'>\n <span class='detail-label'>").concat(translations.LTinterest, "</span>\n <span class='detail-value monthly-interest' data-months='").concat(months, "'>").concat(formatLTAmount(currency, interest), "</span>\n </div>\n <div class='monthly-detail-row'>\n <span class='detail-label'>").concat(translations.LTadjustedTotal, "</span>\n <span class='detail-value monthly-total' data-months='").concat(months, "'>").concat(formatLTAmount(currency, total), "</span>\n </div>\n </div>\n </div>\n ");
776
+ }
777
+ function featureCheckSvg() {
778
+ return "<svg width=\"14\" height=\"14\" viewBox=\"0 0 14 14\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M6.66667 0C2.98667 0 0 2.98667 0 6.66667C0 10.3467 2.98667 13.3333 6.66667 13.3333C10.3467 13.3333 13.3333 10.3467 13.3333 6.66667C13.3333 2.98667 10.3467 0 6.66667 0ZM6.66667 12C3.72667 12 1.33333 9.60667 1.33333 6.66667C1.33333 3.72667 3.72667 1.33333 6.66667 1.33333C9.60667 1.33333 12 3.72667 12 6.66667C12 9.60667 9.60667 12 6.66667 12ZM9.25333 4.19333L5.33333 8.11333L4.08 6.86C3.82 6.6 3.4 6.6 3.14 6.86C2.88 7.12 2.88 7.54 3.14 7.8L4.86667 9.52667C5.12667 9.78667 5.54667 9.78667 5.80667 9.52667L10.2 5.13333C10.46 4.87333 10.46 4.45333 10.2 4.19333C9.94 3.93333 9.51333 3.93333 9.25333 4.19333Z\" fill=\"#8333D4\"/>\n </svg>";
779
+ }
780
+ function generateBiweeklyInner(eligibility, currency, priceString, opts, translations) {
781
+ if (!eligibility.pi4) return '';
782
+ return "\n ".concat(generateBiweeklyCard(4, currency, priceString, translations), "\n ").concat(eligibility.pi5 ? generateBiweeklyCard(5, currency, priceString, translations) : '', "\n ");
783
+ }
784
+ function generateMonthlyInner(eligibility, currency, priceString, opts, translations, lang) {
785
+ if (!eligibility.lt) return '';
786
+ var terms = selectTermsToShow(parsePrice(priceString), opts.termsToShow) || [];
787
+ var cards = terms.map(function (months) {
788
+ return generateMonthlyCard(months, currency, priceString, opts.medianAPR, translations, lang);
789
+ }).join('');
790
+ var seeDetails = translations.LTseeDetails;
791
+ var hideDetails = translations.LThideDetails;
792
+ return "\n ".concat(cards, "\n <div class=\"features-accordion\">\n <div class=\"accordion-title-bar\">\n <span class=\"accordion-title\" aria-hidden='true'>").concat(seeDetails, "</span>\n <button class=\"accordion-icon accordion-toggle\" aria-expanded=\"false\" aria-controls=\"features-drawer\" aria-label='").concat(seeDetails, "' data-label-expand='").concat(seeDetails, "' data-label-collapse='").concat(hideDetails, "'>\n <svg class=\"accordion-icon-expand\" width=\"12\" height=\"7\" viewBox=\"0 0 12 7\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M9.4625 0.2925L5.5825 4.1725L1.7025 0.2925C1.3125 -0.0975 0.6825 -0.0975 0.2925 0.2925C-0.0975 0.6825 -0.0975 1.3125 0.2925 1.7025L4.8825 6.2925C5.2725 6.6825 5.9025 6.6825 6.2925 6.2925L10.8825 1.7025C11.2725 1.3125 11.2725 0.6825 10.8825 0.2925C10.4925 -0.0875 9.8525 -0.0975 9.4625 0.2925Z\" fill=\"#8333D4\"/>\n </svg>\n <svg class=\"accordion-icon-collapse\" style=\"display:none\" width=\"12\" height=\"7\" viewBox=\"0 0 12 7\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M4.8825 0.2925L0.2925 4.8825C-0.0975 5.2725 -0.0975 5.9025 0.2925 6.2925C0.6825 6.6825 1.3125 6.6825 1.7025 6.2925L5.5925 2.4125L9.4725 6.2925C9.8625 6.6825 10.4925 6.6825 10.8825 6.2925C11.2725 5.9025 11.2725 5.2725 10.8825 4.8825L6.2925 0.2925C5.9125 -0.0975 5.2725 -0.0975 4.8825 0.2925Z\" fill=\"#8333D4\"/>\n </svg>\n </button>\n </div>\n <div id=\"features-drawer\" class=\"features-drawer\" style=\"display: none;\">\n <div class=\"single-feature\"><div>").concat(featureCheckSvg(), "</div><span>").concat(translations.LTsingleFeatureAffordable, "</span></div>\n <div class=\"single-feature\"><div>").concat(featureCheckSvg(), "</div><span>").concat(translations.LTsingleFeaturePrequalify, "</span></div>\n <div class=\"single-feature\"><div>").concat(featureCheckSvg(), "</div><span>").concat(translations.LTsingleFeatureTrusted, "</span></div>\n </div>\n </div>\n ");
793
+ }
794
+ function generateTermsInner(eligibility, translations, opts, lang) {
795
+ var webBank = '';
796
+ if (eligibility.pi4) {
797
+ var productTerms = eligibility.pi5 ? translations.webBankTermsPI5 : translations.webBankTermsPI4;
798
+ webBank = "\n <p class=\"terms\">\n <span class=\"webbank-terms\">".concat(translations.webBankTerms, " ").concat(productTerms, "</span>\n <br />\n <span>").concat(translations.linkToCompleteTerms, "</span>\n </p>\n ");
657
799
  }
658
-
659
- // Update right arrow
660
- if (activeTab === CAROUSEL_MAX_TAB) {
661
- rightArrow.classList.add('disabled');
662
- rightArrow.setAttribute('aria-disabled', 'true');
663
- } else {
664
- rightArrow.classList.remove('disabled');
665
- rightArrow.removeAttribute('aria-disabled');
800
+ var ltTerms = '';
801
+ if (eligibility.lt) {
802
+ // APR range comes from the resolved LT config; term-month bounds derive from
803
+ // the union of every termsToShow array. APR values render with the
804
+ // locale-appropriate decimal separator.
805
+ var bounds = termMonthBounds(opts.termsToShow) || {
806
+ min: '',
807
+ max: ''
808
+ };
809
+ var ltTerms3 = (translations.LTterms3 || '* Subject to credit approval by a third party lender.').replace('{minAPR}', formatNumberForLocale(opts.minAPR, lang)).replace('{maxAPR}', formatNumberForLocale(opts.maxAPR, lang)).replace('{minTermMonths}', bounds.min).replace('{maxTermMonths}', bounds.max);
810
+ ltTerms = "<p class=\"terms lt-terms\">".concat(ltTerms3, "</p>");
666
811
  }
812
+ return "\n <p class=\"terms\"><span>".concat(translations.terms1, "</span><br /><span>").concat(translations.termsHiw, "</span></p>\n <p class=\"terms\">").concat(translations.terms2, "</p>\n ").concat(webBank, "\n ").concat(ltTerms, "\n ");
813
+ }
814
+ function updateArrowStates(leftArrow, rightArrow, activeTab) {
815
+ if (!leftArrow || !rightArrow) return;
816
+ var leftDisabled = activeTab === CAROUSEL_MIN_TAB;
817
+ var rightDisabled = activeTab === CAROUSEL_MAX_TAB;
818
+ leftArrow.disabled = leftDisabled;
819
+ leftArrow.classList.toggle('disabled', leftDisabled);
820
+ rightArrow.disabled = rightDisabled;
821
+ rightArrow.classList.toggle('disabled', rightDisabled);
667
822
  }
668
-
669
- /**
670
- * Updates the visual state of carousel dots
671
- * @param {HTMLCollection} dots - Collection of dot elements
672
- * @param {number} activeTab - Current active tab position (1-based)
673
- */
674
823
  function updateDotStates(dots, activeTab) {
675
824
  if (!dots) return;
676
825
  for (var i = 0; i < dots.length; i++) {
@@ -679,24 +828,11 @@ function updateDotStates(dots, activeTab) {
679
828
  dots[i].setAttribute('aria-selected', isActive ? 'true' : 'false');
680
829
  }
681
830
  }
682
-
683
- /**
684
- * Updates carousel position to specified tab
685
- * @param {HTMLElement} carouselWrapper - The carousel wrapper element
686
- * @param {number} activeTab - Target tab position (1-based)
687
- */
688
831
  function updateCarouselPosition(carouselWrapper, activeTab) {
689
832
  if (!carouselWrapper) return;
690
833
  var carousel = carouselWrapper.querySelector('.carousel');
691
- if (carousel) {
692
- carousel.className = "carousel position-".concat(activeTab);
693
- }
834
+ if (carousel) carousel.className = "carousel position-".concat(activeTab);
694
835
  }
695
-
696
- /**
697
- * Handles arrow button clicks and updates carousel state
698
- * @param {HTMLElement} btn - The clicked arrow button
699
- */
700
836
  function handleCarouselTabStyles(btn) {
701
837
  var _carouselWrapper$quer;
702
838
  if (!btn || btn.classList.contains('disabled')) return;
@@ -705,19 +841,12 @@ function handleCarouselTabStyles(btn) {
705
841
  var carouselWrapper = btn.closest('.how-to-sezzle');
706
842
  if (!carouselWrapper) return;
707
843
  var activeTab = parseInt(modalNode.dataset.activeTab || CAROUSEL_MIN_TAB, 10);
708
-
709
- // Determine direction and update position
710
- var isRightArrow = btn.classList.contains('arrow-right');
711
- if (isRightArrow) {
844
+ if (btn.classList.contains('arrow-right')) {
712
845
  activeTab = Math.min(activeTab + 1, CAROUSEL_MAX_TAB);
713
846
  } else {
714
847
  activeTab = Math.max(activeTab - 1, CAROUSEL_MIN_TAB);
715
848
  }
716
-
717
- // Update state
718
849
  modalNode.dataset.activeTab = activeTab;
719
-
720
- // Get arrow elements
721
850
  var arrows = btn.parentElement.querySelectorAll('.arrow');
722
851
  var leftArrow = Array.from(arrows).find(function (arrow) {
723
852
  return arrow.classList.contains('arrow-left');
@@ -725,18 +854,11 @@ function handleCarouselTabStyles(btn) {
725
854
  var rightArrow = Array.from(arrows).find(function (arrow) {
726
855
  return arrow.classList.contains('arrow-right');
727
856
  });
728
-
729
- // Update UI
730
857
  updateCarouselPosition(carouselWrapper, activeTab);
731
858
  updateArrowStates(leftArrow, rightArrow, activeTab);
732
859
  var dots = (_carouselWrapper$quer = carouselWrapper.querySelector('.carousel-dots')) === null || _carouselWrapper$quer === void 0 ? void 0 : _carouselWrapper$quer.children;
733
860
  updateDotStates(dots, activeTab);
734
861
  }
735
-
736
- /**
737
- * Initializes or resets the carousel to the first position
738
- * @param {HTMLElement} modalNode - The modal container element
739
- */
740
862
  function handleCarousel(modalNode) {
741
863
  if (!modalNode) return;
742
864
  var carouselWrapper = modalNode.querySelector('.how-to-sezzle');
@@ -752,18 +874,14 @@ function handleCarousel(modalNode) {
752
874
  var isInitialized = modalNode.dataset.carouselInitialized === 'true';
753
875
  if (isInitialized) {
754
876
  var _carouselWrapper$quer2;
755
- // Reset to first position
756
877
  modalNode.dataset.activeTab = CAROUSEL_MIN_TAB;
757
878
  updateCarouselPosition(carouselWrapper, CAROUSEL_MIN_TAB);
758
879
  updateArrowStates(leftArrow, rightArrow, CAROUSEL_MIN_TAB);
759
880
  var dots = (_carouselWrapper$quer2 = carouselWrapper.querySelector('.carousel-dots')) === null || _carouselWrapper$quer2 === void 0 ? void 0 : _carouselWrapper$quer2.children;
760
881
  updateDotStates(dots, CAROUSEL_MIN_TAB);
761
882
  } else {
762
- // First time initialization
763
883
  modalNode.dataset.carouselInitialized = 'true';
764
884
  modalNode.dataset.activeTab = CAROUSEL_MIN_TAB;
765
-
766
- // Attach event listeners
767
885
  for (var i = 0; i < arrows.length; i++) {
768
886
  arrows[i].addEventListener('click', function (e) {
769
887
  e.stopPropagation();
@@ -773,28 +891,61 @@ function handleCarousel(modalNode) {
773
891
  }
774
892
  }
775
893
 
776
- /**
777
- * Sets up input event listener for the PI5 modal amount input
778
- * @param {HTMLElement} modalNode - The modal container element
779
- * @param {number} minPriceLT - Minimum price for long-term
780
- * @param {number} maxPrice - Maximum price
781
- * @param {number} bestAPR - Best APR rate
782
- * @param {string} initialCurrency - Initial currency symbol
783
- * @param {string} initialPriceString - Initial price string
784
- */
785
- function handlePI5Input(modalNode, minPriceLT, maxPrice, bestAPR, initialCurrency, initialPriceString) {
786
- var input = modalNode.querySelector('.input-amount');
787
- var pay4Installments = modalNode.getElementsByClassName('4-pay-installment');
788
- var pay5Installments = modalNode.getElementsByClassName('5-pay-installment');
789
- if (!input || input.dataset.listenersAdded) return;
894
+ // Attach (or re-attach after re-render) the See details accordion toggle.
895
+ function attachFeaturesAccordion(modalNode) {
896
+ var toggle = modalNode.querySelector('.accordion-toggle');
897
+ if (!toggle || toggle.dataset.listenersAdded === 'true') return;
898
+ toggle.addEventListener('click', function (e) {
899
+ e.stopPropagation();
900
+ var drawer = modalNode.querySelector('#features-drawer');
901
+ var expandIcon = toggle.querySelector('.accordion-icon-expand');
902
+ var collapseIcon = toggle.querySelector('.accordion-icon-collapse');
903
+ var title = modalNode.querySelector('.accordion-title');
904
+ var isExpanded = toggle.getAttribute('aria-expanded') === 'true';
905
+ if (isExpanded) {
906
+ drawer.style.display = 'none';
907
+ expandIcon.style.display = '';
908
+ collapseIcon.style.display = 'none';
909
+ toggle.setAttribute('aria-expanded', 'false');
910
+ if (title) title.textContent = toggle.dataset.labelExpand;
911
+ } else {
912
+ drawer.style.display = '';
913
+ expandIcon.style.display = 'none';
914
+ collapseIcon.style.display = '';
915
+ toggle.setAttribute('aria-expanded', 'true');
916
+ if (title) title.textContent = toggle.dataset.labelCollapse;
917
+ }
918
+ });
919
+ toggle.dataset.listenersAdded = 'true';
920
+ }
790
921
 
791
- // Validate installment elements exist
792
- if (!pay4Installments.length || !pay5Installments.length) return;
922
+ // Swap in re-rendered HTML for the sections that depend on the input amount.
923
+ function renderDynamicSections(modalNode, currency, priceString, opts, translations, lang) {
924
+ var eligibility = computeEligibility(priceString, opts);
925
+ var container = modalNode.querySelector('#sezzle-modal-container');
926
+ if (container) container.classList.toggle('pi4-only', !eligibility.pi5);
927
+ var biweekly = modalNode.querySelector('.payment-cards-biweekly');
928
+ if (biweekly) {
929
+ biweekly.innerHTML = generateBiweeklyInner(eligibility, currency, priceString, opts, translations);
930
+ biweekly.style.display = eligibility.pi4 ? '' : 'none';
931
+ }
932
+ var monthly = modalNode.querySelector('.payment-cards-monthly');
933
+ if (monthly) {
934
+ monthly.innerHTML = generateMonthlyInner(eligibility, currency, priceString, opts, translations, lang);
935
+ monthly.style.display = eligibility.lt ? '' : 'none';
936
+ if (eligibility.lt) attachFeaturesAccordion(modalNode);
937
+ }
938
+ var terms = modalNode.querySelector('.terms-container');
939
+ if (terms) terms.innerHTML = generateTermsInner(eligibility, translations, opts, lang);
940
+ }
941
+ function handleMultiPlanInput(modalNode, opts, initialCurrency) {
942
+ var input = modalNode.querySelector('.input-amount');
943
+ var container = modalNode.querySelector('.input-amount-container');
944
+ if (!input || input.dataset.listenersAdded === 'true') return;
793
945
  var currency = initialCurrency;
794
- var priceString = initialPriceString;
795
946
  var debounceTimer = null;
796
-
797
- // Prevent input interactions from closing the modal
947
+ var lang = getLanguage();
948
+ var translations = getTranslations(lang);
798
949
  input.addEventListener('click', function (e) {
799
950
  return e.stopPropagation();
800
951
  });
@@ -803,100 +954,85 @@ function handlePI5Input(modalNode, minPriceLT, maxPrice, bestAPR, initialCurrenc
803
954
  });
804
955
  input.addEventListener('input', function (event) {
805
956
  event.stopPropagation();
806
-
807
- // Clear previous debounce timer
808
- if (debounceTimer) {
809
- clearTimeout(debounceTimer);
810
- }
957
+ if (debounceTimer) clearTimeout(debounceTimer);
811
958
  debounceTimer = setTimeout(function () {
812
- // Sanitize input to allowed characters only
813
- var amount = event.target.value.replace(SANITIZE_REGEX, '');
814
-
815
- // Detect and update currency if present
816
- currency = getCurrency(amount);
817
-
818
- // Remove currency symbols and normalize decimal format
819
- // Converts European format (1.234,56) to US format (1234.56)
820
- priceString = amount.replace(CURRENCY_REGEX_GLOBAL$1, '');
821
-
822
- // Update both payment plan displays
823
- updateInstallmentContent(pay4Installments, getFormattedPrice(currency + priceString, 4, minPriceLT, maxPrice, bestAPR));
824
- updateInstallmentContent(pay5Installments, getFormattedPrice(currency + priceString, 5, minPriceLT, maxPrice, bestAPR));
959
+ var raw = event.target.value.replace(SANITIZE_REGEX, '');
960
+ currency = getCurrency(raw);
961
+ var priceString = raw.replace(CURRENCY_REGEX_GLOBAL, '');
962
+ var valid = isInputAmountValid(priceString, opts.minPrice, opts.maxPrice, opts.minPriceLT, opts.maxPriceLT);
963
+ if (!valid) {
964
+ input.classList.add('input-error');
965
+ if (container) container.classList.add('input-error');
966
+ return;
967
+ }
968
+ input.classList.remove('input-error');
969
+ if (container) container.classList.remove('input-error');
970
+ renderDynamicSections(modalNode, currency, priceString, opts, translations, lang);
825
971
  }, INPUT_DEBOUNCE_DELAY_MS);
826
972
  });
827
973
  input.dataset.listenersAdded = 'true';
828
974
  }
829
- function getPI5Modal(modalNode, priceString, minPriceLT, maxPrice, bestAPR) {
830
- var currentLang = getLanguage();
831
- var translations = getTranslations(currentLang);
832
- var currency = getCurrency(priceString);
833
- priceString = priceString.replace(CURRENCY_REGEX_GLOBAL$1, '').trim();
834
- modalNode.className = 'sezzle-checkout-modal-lightbox close-sezzle-modal sezzle-modal';
835
- var modalContent = "<section class=\"sezzle-checkout-modal-lightbox close-sezzle-modal\" lang=\"".concat(translations.locale, "\"\n aria-label=\"").concat(translations.sezzleInformation, "\" style=\"display: block;\">\n <div id=\"sezzle-modal-container\" role=\"dialog\" aria-label=\"Sezzle Modal\" class=\"sezzle-checkout-modal-hidden sezzle-five-pay\">\n <div class=\"sezzle-modal\">\n <div><button role=\"button\" aria-label=\"").concat(translations.closeSezzleModal, "\" class=\"close-sezzle-modal\"></button></div>\n <div class=\"sezzle-logo\" title=\"Sezzle\"></div>\n <div id=\"sezzle-modal-core-content\" class=\"sezzle-modal-content\">\n <p class='trusted'>").concat(translations.PI5trusted, "</p>\n <header class='sezzle-header'>").concat(translations.PI5header, "</header>\n <div class='payment-plan-wrapper'>\n <p class='sample-payments ").concat(currentLang === 'fr' ? 'sezzle-five-pay-fr' : '', "'>\n <span class=\"sample-payments-title\">").concat(translations.PI5SeePlans, "</span>\n <span class=\"input-amount-container\">\n <label class=\"input-amount-label\" for=\"PI5-input-amount\">").concat(translations.PI5Amount, "</label>\n <input class='price input-amount' id=\"PI5-input-amount\" value='").concat(currency + priceString, "'/>\n </span>\n </p>\n <div class='payment-cards'>\n ").concat(generatePaymentCard(4, currency, priceString, minPriceLT, maxPrice, bestAPR, translations), "\n ").concat(generatePaymentCard(5, currency, priceString, minPriceLT, maxPrice, bestAPR, translations), "\n </div>\n </div>\n <div class='how-to-sezzle'>\n <div class='carousel-header'>\n <div class='how-to-text-wrapper'>\n <span class='how-to-text'>").concat(translations.PI5howToPay, "</span>\n <div class='how-to-logo'>\n <svg width=\"58\" height=\"14\" viewBox=\"0 0 58 14\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M0.969597 9.41471C2.2624 10.681 4.35809 10.681 5.65089 9.41471L5.7748 9.29334C6.42084 8.66055 5.12804 5.34085 5.7748 4.70805L0.969597 9.41471Z\" fill=\"url(#paint0_linear_366_310)\"/>\n <path d=\"M5.89942 4.58599L5.77552 4.70736C5.12947 5.34015 6.42156 8.65985 5.77552 9.29265L10.5807 4.58599C9.93396 3.9532 9.08737 3.6368 8.24007 3.6368C7.39277 3.6361 6.54547 3.9532 5.89942 4.58599Z\" fill=\"url(#paint1_linear_366_310)\"/>\n <path d=\"M0.969599 4.82942C-0.3232 6.09571 -0.3232 8.14843 0.969599 9.41471L5.90014 4.58529C7.19294 3.319 7.19294 1.26629 5.90014 0L0.969599 4.82942Z\" fill=\"url(#paint2_linear_366_310)\"/>\n <path d=\"M5.65089 9.41471C4.35809 10.681 4.35809 12.7337 5.65089 14L10.5814 9.17058C11.8742 7.90429 11.8742 5.85157 10.5814 4.58529L5.65089 9.41471Z\" fill=\"url(#paint3_linear_366_310)\"/>\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M29.3202 6.07817C29.5143 6.37212 29.6626 6.69132 29.7621 7.02526C29.8588 7.35007 29.6683 7.69172 29.3367 7.78713L24.1318 9.28212C24.3546 9.64552 24.6676 9.94228 25.0422 10.1422C25.6101 10.4453 26.2834 10.5161 26.9008 10.3386C27.183 10.2573 27.4437 10.131 27.6743 9.96262C27.685 9.94999 27.7058 9.93175 27.7273 9.91492C27.978 9.72129 28.1843 9.48417 28.3397 9.21197C28.4507 9.01694 28.6613 8.89627 28.8897 8.89627C28.9972 8.89627 29.1032 8.92363 29.197 8.97485C29.5 9.14111 29.6088 9.51784 29.4391 9.81459C29.3438 9.98226 29.2343 10.1429 29.1125 10.293L29.0824 10.3295C28.6061 10.9034 27.9758 11.3117 27.2532 11.5186C26.9115 11.6176 26.5598 11.6674 26.2075 11.6674C25.5944 11.6674 24.9834 11.5137 24.4405 11.2226C23.672 10.8115 23.1449 10.2608 22.8304 9.53959C22.8283 9.53538 22.7273 9.2716 22.6643 9.06535L22.6614 9.05623C22.3871 8.13019 22.4959 7.15504 22.9672 6.30828C23.4414 5.45731 24.2242 4.83995 25.1725 4.56915C26.1115 4.30116 27.1321 4.4085 27.9866 4.86521C28.5281 5.15564 28.9886 5.57517 29.3202 6.07817ZM27.3842 5.94348C27.0232 5.75125 26.62 5.64953 26.2175 5.64953C25.9861 5.64953 25.7534 5.6825 25.5256 5.74774C24.8996 5.92804 24.3832 6.33564 24.0709 6.89617C23.8632 7.26869 23.7601 7.68541 23.7716 8.10423L28.3032 6.80216C28.2942 6.78779 28.285 6.77342 28.2758 6.75933C28.2725 6.75415 28.2692 6.74902 28.2659 6.74394C28.0453 6.4107 27.7402 6.13359 27.3842 5.94348Z\" fill=\"#382757\"/>\n <path d=\"M36.4424 10.4958H32.9988L36.85 4.955C36.923 4.85047 36.9302 4.71578 36.87 4.60353C36.8098 4.49128 36.6917 4.42183 36.562 4.42183H31.6659C31.3407 4.42183 31.0764 4.6807 31.0764 4.9992C31.0764 5.3177 31.3407 5.57657 31.6659 5.57657H34.9469L31.0972 11.1174C31.0241 11.2226 31.017 11.3573 31.0771 11.4688C31.1373 11.5811 31.2555 11.6498 31.3851 11.6498H36.4417C36.7669 11.6498 37.0312 11.391 37.0312 11.0725C37.0319 10.7554 36.7676 10.4958 36.4424 10.4958Z\" fill=\"#382757\"/>\n <path d=\"M44.0717 10.4958H40.6288L44.4793 4.955C44.5523 4.85047 44.5595 4.71578 44.4993 4.60353C44.4391 4.49198 44.321 4.42253 44.1913 4.42253H39.2959C38.9707 4.42253 38.7064 4.6814 38.7064 4.9999C38.7064 5.3184 38.9707 5.57727 39.2959 5.57727H42.5769L38.7272 11.1181C38.6549 11.2233 38.647 11.358 38.7071 11.4695C38.768 11.5818 38.8855 11.6505 39.0151 11.6505H44.0717C44.3969 11.6505 44.6612 11.3917 44.6612 11.0732C44.6612 10.7554 44.3969 10.4958 44.0717 10.4958Z\" fill=\"#382757\"/>\n <path d=\"M47.4717 1.29575C47.1465 1.29575 46.8822 1.55462 46.8822 1.87312V11.0935C46.8822 11.412 47.1465 11.6709 47.4717 11.6709C47.7968 11.6709 48.0611 11.4113 48.0611 11.0935V1.87312C48.0611 1.55462 47.7968 1.29575 47.4717 1.29575Z\" fill=\"#382757\"/>\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M56.7003 6.07888C56.8937 6.37352 57.0427 6.69202 57.1415 7.02596C57.2382 7.35007 57.0477 7.69172 56.7161 7.78713L51.5105 9.28353C51.7325 9.64693 52.0462 9.94368 52.4208 10.1436C52.9888 10.4467 53.6628 10.5175 54.2795 10.3401C54.5624 10.2587 54.8231 10.1324 55.0537 9.96402C55.0652 9.9514 55.0852 9.93316 55.1074 9.91632C55.3574 9.72269 55.5637 9.48627 55.7191 9.21337C55.8301 9.01834 56.0407 8.89768 56.2691 8.89768C56.3766 8.89768 56.4826 8.92504 56.5764 8.97625C56.8794 9.14252 56.9882 9.51924 56.8185 9.816C56.7239 9.98156 56.6144 10.1422 56.4926 10.293L56.4618 10.3316C55.9862 10.9048 55.3559 11.3131 54.6333 11.52C54.2916 11.619 53.9392 11.6688 53.5876 11.6688C52.9745 11.6688 52.3635 11.5151 51.8206 11.224C51.0521 10.8122 50.525 10.2622 50.2105 9.54099C50.2084 9.53608 50.1074 9.2723 50.0444 9.06675L50.0415 9.05693C49.7679 8.13089 49.8761 7.15504 50.3481 6.30898C50.8215 5.45801 51.6043 4.84065 52.5526 4.56986C53.4923 4.30187 54.5115 4.4092 55.3667 4.86591C55.9074 5.15635 56.3687 5.57587 56.7003 6.07888ZM54.7643 5.94348C54.4033 5.75125 54.0001 5.64953 53.5976 5.64953C53.3655 5.64953 53.1328 5.6825 52.9057 5.74774C52.2797 5.92804 51.7633 6.33564 51.451 6.89617C51.2433 7.26869 51.1402 7.68471 51.1517 8.10423L55.6833 6.80216C55.6744 6.7878 55.6651 6.77344 55.656 6.75935C55.6526 6.75417 55.6493 6.74903 55.646 6.74394C55.4247 6.4107 55.1203 6.13359 54.7643 5.94348Z\" fill=\"#382757\"/>\n <path d=\"M20.6867 8.44027C20.512 8.18982 20.2592 7.98076 19.9368 7.8194C19.409 7.55632 18.725 7.43566 18.0689 7.33534L17.9651 7.3199C17.5045 7.24975 17.0282 7.17679 16.7224 7.02525C16.4911 6.9102 16.4087 6.78112 16.4087 6.52926C16.4087 6.04169 16.9509 5.67408 17.6693 5.67408C18.5273 5.67408 19.0057 5.91962 19.5429 6.24023C19.6425 6.29986 19.7571 6.33143 19.8731 6.33143C20.0966 6.33143 20.2993 6.22058 20.416 6.03397C20.5041 5.89226 20.5313 5.72529 20.4912 5.56324C20.4511 5.40188 20.3494 5.26508 20.2047 5.17879C19.9075 5.0006 19.5823 4.81539 19.1719 4.67087C18.7099 4.50882 18.2186 4.42954 17.67 4.42954C17.0082 4.42954 16.3886 4.62668 15.9267 4.98446C15.4189 5.37733 15.1388 5.92593 15.1388 6.52926C15.1388 7.25185 15.4883 7.80747 16.1494 8.1351C16.635 8.37572 17.2123 8.46342 17.7702 8.5483L17.8734 8.56374C19.3044 8.78332 19.7184 8.98116 19.7184 9.44488C19.7184 10.0194 19.1311 10.3955 18.2222 10.4032H18.1892C17.2137 10.4032 16.6665 10.0363 16.3729 9.83914C16.3242 9.80687 16.2826 9.77811 16.2411 9.75285C16.1401 9.69112 16.0241 9.65885 15.9052 9.65885C15.6846 9.65885 15.4826 9.76829 15.3659 9.95139C15.1804 10.2425 15.2713 10.627 15.5685 10.8087C15.585 10.8185 15.6101 10.8353 15.638 10.8543L15.6552 10.8655C16.004 11.0991 16.8205 11.6477 18.1892 11.6477H18.2329C19.0222 11.6407 19.6998 11.4331 20.194 11.0458C20.7061 10.6438 20.9883 10.0756 20.9883 9.44558C20.9876 9.06324 20.8859 8.72579 20.6867 8.44027Z\" fill=\"#382757\"/>\n <defs>\n <linearGradient id=\"paint0_linear_366_310\" x1=\"6.70119\" y1=\"8.23486\" x2=\"4.07958\" y2=\"5.85164\" gradientUnits=\"userSpaceOnUse\">\n <stop stop-color=\"#CE5DCB\"/>\n <stop offset=\"0.2095\" stop-color=\"#C558CC\"/>\n <stop offset=\"0.5525\" stop-color=\"#AC4ACF\"/>\n <stop offset=\"0.9845\" stop-color=\"#8534D4\"/>\n <stop offset=\"1\" stop-color=\"#8333D4\"/>\n </linearGradient>\n <linearGradient id=\"paint1_linear_366_310\" x1=\"5.58896\" y1=\"9.29233\" x2=\"10.5806\" y2=\"9.29233\" gradientUnits=\"userSpaceOnUse\">\n <stop offset=\"0.0237\" stop-color=\"#FF5667\"/>\n <stop offset=\"0.6592\" stop-color=\"#FC8B82\"/>\n <stop offset=\"1\" stop-color=\"#FBA28E\"/>\n </linearGradient>\n <linearGradient id=\"paint2_linear_366_310\" x1=\"-0.000179058\" y1=\"9.41484\" x2=\"6.86972\" y2=\"9.41484\" gradientUnits=\"userSpaceOnUse\">\n <stop stop-color=\"#00B874\"/>\n <stop offset=\"0.5126\" stop-color=\"#29D3A2\"/>\n <stop offset=\"0.6817\" stop-color=\"#53DFB6\"/>\n <stop offset=\"1\" stop-color=\"#9FF4D9\"/>\n </linearGradient>\n <linearGradient id=\"paint3_linear_366_310\" x1=\"4.6811\" y1=\"14\" x2=\"11.5509\" y2=\"14\" gradientUnits=\"userSpaceOnUse\">\n <stop stop-color=\"#FCD77E\"/>\n <stop offset=\"0.5241\" stop-color=\"#FEA500\"/>\n <stop offset=\"1\" stop-color=\"#FF5B00\"/>\n </linearGradient>\n </defs>\n </svg>\n </div>\n </div>\n <div class='arrows'>\n <button type='button' class='arrow arrow-left disabled' aria-label='").concat(translations.PI5previousSlide, "' aria-disabled='true'>\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M14.5 16.4078C14.825 16.0828 14.825 15.5578 14.5 15.2328L11.2667 11.9995L14.5 8.76614C14.825 8.44114 14.825 7.91614 14.5 7.59114C14.175 7.26614 13.65 7.26614 13.325 7.59114L9.5 11.4161C9.175 11.7411 9.175 12.2661 9.5 12.5911L13.325 16.4161C13.6417 16.7328 14.175 16.7328 14.5 16.4078Z\" fill=\"#8333D4\"/>\n </svg>\n </button>\n <button type='button' class='arrow arrow-right' aria-label='").concat(translations.PI5nextSlide, "'>\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M9.5 7.59219C9.175 7.91719 9.175 8.44219 9.5 8.76719L12.7333 12.0005L9.5 15.2339C9.175 15.5589 9.175 16.0839 9.5 16.4089C9.825 16.7339 10.35 16.7339 10.675 16.4089L14.5 12.5839C14.825 12.2589 14.825 11.7339 14.5 11.4089L10.675 7.58386C10.3583 7.26719 9.825 7.26719 9.5 7.59219Z\" fill=\"#8333D4\"/>\n </svg>\n </button>\n </div>\n </div>\n <div class='carousel position-1'>\n <div class='carousel-item'>\n <div class='carousel-item-content'>\n <div class='step-number'>\n <span class='step-number-content'>1</span>\n </div>\n <div class='step-name'>").concat(translations.PI5Step1, "</div>\n <div class='step-image'>\n <svg width=\"29\" height=\"30\" viewBox=\"0 0 29 30\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M4.20398 0.532364H23.2401C25.1839 0.532364 26.7606 2.10906 26.7606 4.05287V14.5919C26.7605 16.5356 25.1838 18.1115 23.2401 18.1115H4.20398C2.26027 18.1115 0.683633 16.5356 0.683472 14.5919V4.05287C0.683472 2.10906 2.26017 0.532364 4.20398 0.532364Z\" fill=\"#F9F5FD\" stroke=\"#E8E8E8\" stroke-width=\"0.479474\"/>\n <path d=\"M9.92301 11.1327C10.8766 12.0668 12.4225 12.0668 13.3761 11.1327L13.4675 11.0432C13.944 10.5764 12.9904 8.12767 13.4675 7.6609L9.92301 11.1327Z\" fill=\"url(#paint0_linear_366_339)\"/>\n <path d=\"M13.5596 7.57113L13.4682 7.66065C12.9917 8.12742 13.9447 10.5762 13.4682 11.0429L17.0127 7.57113C16.5356 7.10436 15.9112 6.87097 15.2861 6.87097C14.6611 6.87046 14.0361 7.10436 13.5596 7.57113Z\" fill=\"url(#paint1_linear_366_339)\"/>\n <path d=\"M9.9228 7.75064C8.96918 8.6847 8.96918 10.1989 9.9228 11.1329L13.5597 7.57055C14.5134 6.6365 14.5134 5.12234 13.5597 4.18828L9.9228 7.75064Z\" fill=\"url(#paint2_linear_366_339)\"/>\n <path d=\"M13.3763 11.1335C12.4226 12.0676 12.4226 13.5817 13.3763 14.5158L17.0132 10.9534C17.9668 10.0194 17.9668 8.50523 17.0132 7.57117L13.3763 11.1335Z\" fill=\"url(#paint3_linear_366_339)\"/>\n <path d=\"M24.8175 26.5304C25.9447 25.012 26.0538 22.3367 26.0538 21.1436V20.0229C26.0538 19.6975 25.9084 19.3721 25.6902 19.119C25.4356 18.866 25.1084 18.7575 24.7811 18.7575C24.5993 18.7575 24.4538 18.7937 24.3084 18.866C24.1993 18.2514 23.6902 17.7814 23.0357 17.7814C22.7447 17.7814 22.5266 17.8537 22.3084 17.9983C22.0902 17.5644 21.6538 17.2752 21.1448 17.2752C20.9266 17.2752 20.7448 17.3475 20.563 17.4198V13.9491C20.563 13.2261 19.9811 12.6476 19.2539 12.6476C18.5266 12.6476 17.9448 13.2261 17.9448 13.9491V20.4567L17.3993 19.119C17.2175 18.649 16.7448 18.3237 16.1994 18.3237C16.0175 18.3237 15.8721 18.3598 15.7266 18.4321C15.0721 18.7213 14.7448 19.4444 14.9994 20.0952L16.3448 24.4697C16.3812 24.6505 16.6721 25.9158 17.363 26.7112C17.2175 26.8558 17.1448 27.0004 17.1448 27.2174V28.4466C17.1448 28.8443 17.4721 29.1335 17.8357 29.1335H24.5629C24.9629 29.1335 25.2538 28.8081 25.2538 28.4466V27.1812C25.2902 26.892 25.1084 26.6389 24.8175 26.5304ZM17.0357 24.2889L15.6175 19.8059C15.5084 19.5167 15.6539 19.1552 15.9448 19.0467C16.2357 18.9383 16.2357 19.1913 16.3448 19.4806L17.6177 22.4361C17.6904 22.5807 18.163 22.5897 18.3448 22.5536C18.5266 22.5174 18.6357 22.3728 18.6357 22.1921V13.9491C18.6357 13.6237 18.8902 13.3707 19.2175 13.3707C19.5448 13.3707 19.5496 13.256 19.5496 13.5814V19.119C19.5496 19.2998 19.9448 19.4806 20.163 19.4806C20.3448 19.4806 20.5266 19.3359 20.5266 19.119V18.5406C20.5266 18.2152 20.7811 17.9621 21.1084 17.9621C21.4357 17.9621 21.497 18.2152 21.497 18.5406V19.7336C21.497 19.9144 21.8357 20.0952 22.0538 20.0952C22.2357 20.0952 22.4175 19.9506 22.4175 19.7336V19.0467C22.4175 18.7213 22.672 18.4683 22.9993 18.4683C23.3266 18.4683 23.5167 18.7213 23.5167 19.0467V20.3121C23.5167 20.4929 23.7266 20.6736 23.9447 20.6736C24.1629 20.6736 24.3084 20.529 24.3084 20.3121V19.6975C24.5266 19.4444 24.9629 19.3721 25.1811 19.6252C25.2902 19.7336 25.3629 19.8782 25.3629 20.059V21.1798C25.3993 23.7105 24.8538 25.6989 23.9447 26.4943H18.1993C17.5084 26.0605 17.1084 24.7589 17.0357 24.2889ZM24.5629 28.4466H17.8721V27.1812H24.5993V28.4466H24.5629Z\" fill=\"#FCD7B6\"/>\n <path d=\"M16.5722 27.7895C16.5722 27.0533 17.169 26.4564 17.9053 26.4564H24.7613C25.4976 26.4564 26.0944 27.0533 26.0944 27.7895C26.0944 28.5258 25.4976 29.1227 24.7613 29.1227H17.9053C17.169 29.1227 16.5722 28.5258 16.5722 27.7895Z\" fill=\"#FF8100\"/>\n <path d=\"M25.3768 20.9796V21.0547C25.4143 23.6819 24.8513 25.7462 23.913 26.5719H17.983C17.2699 26.1215 16.857 24.7704 16.7819 24.2824V24.2449L15.3182 19.6285C15.2056 19.3282 15.3557 18.9529 15.656 18.8403C15.9562 18.7277 16.3316 18.8778 16.4441 19.1781L17.7202 22.2557C17.7953 22.4058 17.9454 22.5184 18.1331 22.4809C18.3207 22.4434 18.4333 22.2933 18.4333 22.1056V13.5483C18.4333 13.2105 18.6961 12.9478 19.0339 12.9478C19.3716 12.9478 19.6344 13.2105 19.6344 13.5483V18.9154C19.6344 19.103 19.7845 19.2907 20.0097 19.2907C20.1973 19.2907 20.385 19.1406 20.385 18.9154V18.3149C20.385 17.9771 20.6477 17.7144 20.9855 17.7144C21.3233 17.7144 21.586 17.9771 21.586 18.3149V19.5534C21.586 19.7411 21.7362 19.9287 21.9613 19.9287C22.149 19.9287 22.3367 19.7786 22.3367 19.5534V18.8403C22.3367 18.5025 22.5994 18.2398 22.9372 18.2398C23.275 18.2398 23.5377 18.5025 23.5377 18.8403V20.1539C23.5377 20.3416 23.6878 20.5293 23.913 20.5293C24.1382 20.5293 24.2883 20.3791 24.2883 20.1539V19.5159C24.5135 19.2532 24.9639 19.1781 25.1891 19.4408C25.3017 19.5534 25.3768 19.7035 25.3768 19.8912V20.9796Z\" fill=\"#FCD7B6\"/>\n <defs>\n <linearGradient id=\"paint0_linear_366_339\" x1=\"14.1508\" y1=\"10.2624\" x2=\"12.217\" y2=\"8.50446\" gradientUnits=\"userSpaceOnUse\">\n <stop stop-color=\"#CE5DCB\"/>\n <stop offset=\"0.2095\" stop-color=\"#C558CC\"/>\n <stop offset=\"0.5525\" stop-color=\"#AC4ACF\"/>\n <stop offset=\"0.9845\" stop-color=\"#8534D4\"/>\n <stop offset=\"1\" stop-color=\"#8333D4\"/>\n </linearGradient>\n <linearGradient id=\"paint1_linear_366_339\" x1=\"13.3306\" y1=\"11.0427\" x2=\"17.0126\" y2=\"11.0427\" gradientUnits=\"userSpaceOnUse\">\n <stop offset=\"0.0237\" stop-color=\"#FF5667\"/>\n <stop offset=\"0.6592\" stop-color=\"#FC8B82\"/>\n <stop offset=\"1\" stop-color=\"#FBA28E\"/>\n </linearGradient>\n <linearGradient id=\"paint2_linear_366_339\" x1=\"9.20745\" y1=\"11.133\" x2=\"14.2749\" y2=\"11.133\" gradientUnits=\"userSpaceOnUse\">\n <stop stop-color=\"#00B874\"/>\n <stop offset=\"0.5126\" stop-color=\"#29D3A2\"/>\n <stop offset=\"0.6817\" stop-color=\"#53DFB6\"/>\n <stop offset=\"1\" stop-color=\"#9FF4D9\"/>\n </linearGradient>\n <linearGradient id=\"paint3_linear_366_339\" x1=\"12.6609\" y1=\"14.5158\" x2=\"17.7283\" y2=\"14.5158\" gradientUnits=\"userSpaceOnUse\">\n <stop stop-color=\"#FCD77E\"/>\n <stop offset=\"0.5241\" stop-color=\"#FEA500\"/>\n <stop offset=\"1\" stop-color=\"#FF5B00\"/>\n </linearGradient>\n </defs>\n </svg>\n </div>\n </div>\n </div>\n <div class='carousel-item'>\n <div class='carousel-item-content'>\n <div class='step-number'>\n <span class='step-number-content'>2</span>\n </div>\n <div class='step-name'>").concat(translations.PI5Step2, "</div>\n <div class='step-image'>\n <svg width=\"26\" height=\"34\" viewBox=\"0 0 26 34\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M3.64778 0.579407H23.2738C24.6286 0.579407 25.7277 1.67775 25.7279 3.03253V10.9378H1.19466V3.03253C1.1948 1.67784 2.29309 0.579548 3.64778 0.579407Z\" fill=\"#F9F5FD\" stroke=\"#E8E8E8\" stroke-width=\"0.54517\"/>\n <path d=\"M23.2746 21.2961L3.64859 21.2961C2.29378 21.2961 1.19463 20.1978 1.19449 18.843L1.19449 10.9377L25.7277 10.9377L25.7277 18.843C25.7275 20.1977 24.6293 21.296 23.2746 21.2961Z\" fill=\"#F9F5FD\" stroke=\"#E8E8E8\" stroke-width=\"0.54517\"/>\n <path d=\"M8.00809 2.7605C9.6633 2.7605 11.0051 4.10238 11.0052 5.75757C11.0052 7.41283 9.66336 8.75464 8.00809 8.75464C6.35291 8.75454 5.01102 7.41277 5.01102 5.75757C5.01112 4.10244 6.35297 2.76059 8.00809 2.7605Z\" stroke=\"#AEAEAE\" stroke-width=\"0.54517\"/>\n <path d=\"M8.00809 13.1184C9.6633 13.1184 11.0051 14.4603 11.0052 16.1155C11.0052 17.7707 9.66336 19.1125 8.00809 19.1125C6.35291 19.1125 5.01102 17.7707 5.01102 16.1155C5.01112 14.4604 6.35297 13.1185 8.00809 13.1184Z\" stroke=\"#8333D4\" stroke-width=\"0.54517\"/>\n <path d=\"M14.5516 6.84883C15.1538 6.84883 15.6419 6.36067 15.6419 5.75849C15.6419 5.15631 15.1538 4.66815 14.5516 4.66815C13.9494 4.66815 13.4613 5.15631 13.4613 5.75849C13.4613 6.36067 13.9494 6.84883 14.5516 6.84883Z\" fill=\"#E8E8E8\"/>\n <path d=\"M14.5516 17.2077C15.1538 17.2077 15.6419 16.7195 15.6419 16.1173C15.6419 15.5151 15.1538 15.027 14.5516 15.027C13.9494 15.027 13.4613 15.5151 13.4613 16.1173C13.4613 16.7195 13.9494 17.2077 14.5516 17.2077Z\" fill=\"#E8E8E8\"/>\n <path d=\"M17.8224 6.84883C18.4246 6.84883 18.9128 6.36067 18.9128 5.75849C18.9128 5.15631 18.4246 4.66815 17.8224 4.66815C17.2203 4.66815 16.7321 5.15631 16.7321 5.75849C16.7321 6.36067 17.2203 6.84883 17.8224 6.84883Z\" fill=\"#E8E8E8\"/>\n <path d=\"M17.8224 17.2077C18.4246 17.2077 18.9128 16.7195 18.9128 16.1173C18.9128 15.5151 18.4246 15.027 17.8224 15.027C17.2203 15.027 16.7321 15.5151 16.7321 16.1173C16.7321 16.7195 17.2203 17.2077 17.8224 17.2077Z\" fill=\"#E8E8E8\"/>\n <path d=\"M21.0937 6.84883C21.6959 6.84883 22.1841 6.36067 22.1841 5.75849C22.1841 5.15631 21.6959 4.66815 21.0937 4.66815C20.4916 4.66815 20.0034 5.15631 20.0034 5.75849C20.0034 6.36067 20.4916 6.84883 21.0937 6.84883Z\" fill=\"#E8E8E8\"/>\n <path d=\"M21.0937 17.2077C21.6959 17.2077 22.1841 16.7195 22.1841 16.1173C22.1841 15.5151 21.6959 15.027 21.0937 15.027C20.4916 15.027 20.0034 15.5151 20.0034 16.1173C20.0034 16.7195 20.4916 17.2077 21.0937 17.2077Z\" fill=\"#E8E8E8\"/>\n <path d=\"M8.00952 18.2976C9.21388 18.2976 10.1902 17.3213 10.1902 16.1169C10.1902 14.9125 9.21388 13.9362 8.00952 13.9362C6.80517 13.9362 5.82884 14.9125 5.82884 16.1169C5.82884 17.3213 6.80517 18.2976 8.00952 18.2976Z\" fill=\"#8333D4\"/>\n <path d=\"M13.5528 31.0899C14.68 29.5714 14.7891 26.8961 14.7891 25.703V24.5823C14.7891 24.2569 14.6437 23.9315 14.4255 23.6785C14.171 23.4254 13.8437 23.3169 13.5164 23.3169C13.3346 23.3169 13.1891 23.3531 13.0437 23.4254C12.9346 22.8108 12.4255 22.3408 11.771 22.3408C11.4801 22.3408 11.2619 22.4131 11.0437 22.5577C10.8255 22.1239 10.3892 21.8346 9.88008 21.8346C9.6619 21.8346 9.48009 21.907 9.29827 21.9793V18.5085C9.29827 17.7855 8.71646 17.207 7.98919 17.207C7.26192 17.207 6.68011 17.7855 6.68011 18.5085V25.0161L6.13466 23.6785C5.95285 23.2085 5.48012 22.8831 4.93467 22.8831C4.75286 22.8831 4.6074 22.9192 4.46195 22.9915C3.80741 23.2808 3.48014 24.0038 3.73468 24.6546L5.08013 29.0291C5.11649 29.2099 5.4074 30.4753 6.0983 31.2706C5.95285 31.4153 5.88012 31.5599 5.88012 31.7768V33.006C5.88012 33.4037 6.20739 33.6929 6.57102 33.6929H13.2982C13.6982 33.6929 13.9891 33.3675 13.9891 33.006V31.7406C14.0255 31.4514 13.8437 31.1983 13.5528 31.0899ZM5.77103 28.8484L4.35286 24.3654C4.24377 24.0761 4.38922 23.7146 4.68013 23.6062C4.97104 23.4977 4.97104 23.7508 5.08013 24.04L6.353 26.9955C6.42573 27.1401 6.89829 27.1492 7.08011 27.113C7.26193 27.0769 7.37101 26.9323 7.37101 26.7515V18.5085C7.37101 18.1832 7.62556 17.9301 7.95283 17.9301C8.2801 17.9301 8.28494 17.8154 8.28494 18.1408V23.6785C8.28494 23.8592 8.68009 24.04 8.89827 24.04C9.08009 24.04 9.26191 23.8954 9.26191 23.6785V23.1C9.26191 22.7746 9.51645 22.5216 9.84372 22.5216C10.171 22.5216 10.2323 22.7746 10.2323 23.1V24.2931C10.2323 24.4738 10.571 24.6546 10.7892 24.6546C10.971 24.6546 11.1528 24.51 11.1528 24.2931V23.6062C11.1528 23.2808 11.4073 23.0277 11.7346 23.0277C12.0619 23.0277 12.252 23.2808 12.252 23.6062V24.8715C12.252 25.0523 12.4619 25.2331 12.6801 25.2331C12.8982 25.2331 13.0437 25.0884 13.0437 24.8715V24.2569C13.2619 24.0038 13.6982 23.9315 13.9164 24.1846C14.0255 24.2931 14.0982 24.4377 14.0982 24.6184V25.7392C14.1346 28.2699 13.5891 30.2584 12.6801 31.0537H6.93466C6.24375 30.6199 5.84376 29.3184 5.77103 28.8484ZM13.2982 33.006H6.60739V31.7406H13.3346V33.006H13.2982Z\" fill=\"#FCD7B6\"/>\n <path d=\"M5.3075 32.349C5.3075 31.6127 5.90436 31.0158 6.64062 31.0158H13.4966C14.2329 31.0158 14.8298 31.6127 14.8298 32.349C14.8298 33.0852 14.2329 33.6821 13.4966 33.6821H6.64062C5.90436 33.6821 5.3075 33.0852 5.3075 32.349Z\" fill=\"#FF8100\"/>\n <path d=\"M14.1121 25.5391V25.6142C14.1496 28.2414 13.5866 30.3057 12.6483 31.1314H6.71828C6.00517 30.681 5.59232 29.3298 5.51726 28.8419V28.8044L4.05351 24.1879C3.94092 23.8877 4.09104 23.5124 4.3913 23.3998C4.69155 23.2872 5.06687 23.4373 5.17947 23.7376L6.45556 26.8152C6.53062 26.9653 6.68075 27.0779 6.86841 27.0404C7.05607 27.0028 7.16866 26.8527 7.16866 26.6651V18.1078C7.16866 17.77 7.43139 17.5073 7.76917 17.5073C8.10696 17.5073 8.36968 17.77 8.36968 18.1078V23.4748C8.36968 23.6625 8.51981 23.8502 8.745 23.8502C8.93266 23.8502 9.12032 23.7 9.12032 23.4748V22.8743C9.12032 22.5365 9.38305 22.2738 9.72084 22.2738C10.0586 22.2738 10.3213 22.5365 10.3213 22.8743V24.1129C10.3213 24.3005 10.4715 24.4882 10.6967 24.4882C10.8843 24.4882 11.072 24.3381 11.072 24.1129V23.3998C11.072 23.062 11.3347 22.7993 11.6725 22.7993C12.0103 22.7993 12.273 23.062 12.273 23.3998V24.7134C12.273 24.9011 12.4231 25.0887 12.6483 25.0887C12.8735 25.0887 13.0236 24.9386 13.0236 24.7134V24.0754C13.2488 23.8126 13.6992 23.7376 13.9244 24.0003C14.037 24.1129 14.1121 24.263 14.1121 24.4507V25.5391Z\" fill=\"#FCD7B6\"/>\n </svg>\n </div>\n </div>\n </div>\n <div class='carousel-item'>\n <div class='carousel-item-content'>\n <div class='step-number'>\n <span class='step-number-content'>3</span>\n </div>\n <div class='step-name'>").concat(translations.PI5Step3, "</div>\n <div class='step-image'>\n <svg width=\"27\" height=\"34\" viewBox=\"0 0 27 34\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <rect y=\"9.14136\" width=\"24.6\" height=\"9.6\" rx=\"4.8\" fill=\"#D39BD3\"/>\n <path d=\"M16.2 6.22824C16.2 2.59102 19.7403 0.0333434 23.2058 1.14939C25.4037 1.85362 27 3.91967 27 6.34017C27 9.32499 24.5842 11.7175 21.6 11.6849H21.5384C18.5874 11.6242 16.2 9.19439 16.2 6.22824Z\" fill=\"#29D3A2\"/>\n <path d=\"M20.0227 6.58523L20.9311 7.50497L22.3518 6.06665L23.7725 4.62833C23.9609 4.43753 24.2702 4.43753 24.4587 4.62833C24.6471 4.81913 24.6471 5.12734 24.4587 5.31814L22.8664 6.93013L21.2742 8.54213C21.0858 8.73293 20.7813 8.73293 20.5929 8.54213L19.3413 7.27504C19.1529 7.08424 19.1529 6.77603 19.3413 6.58523C19.5298 6.39443 19.8342 6.39443 20.0227 6.58523Z\" fill=\"white\"/>\n <path d=\"M8.4 15.1413C9.06274 15.1413 9.6 14.6041 9.6 13.9413C9.6 13.2786 9.06274 12.7413 8.4 12.7413C7.73726 12.7413 7.2 13.2786 7.2 13.9413C7.2 14.6041 7.73726 15.1413 8.4 15.1413Z\" fill=\"#E8E8E8\"/>\n <path d=\"M12.6 15.1413C13.2627 15.1413 13.8 14.6041 13.8 13.9413C13.8 13.2786 13.2627 12.7413 12.6 12.7413C11.9373 12.7413 11.4 13.2786 11.4 13.9413C11.4 14.6041 11.9373 15.1413 12.6 15.1413Z\" fill=\"#E8E8E8\"/>\n <path d=\"M16.8 15.1413C17.4627 15.1413 18 14.6041 18 13.9413C18 13.2786 17.4627 12.7413 16.8 12.7413C16.1373 12.7413 15.6 13.2786 15.6 13.9413C15.6 14.6041 16.1373 15.1413 16.8 15.1413Z\" fill=\"#E8E8E8\"/>\n <path d=\"M16.5045 30.5119C17.6318 28.9934 17.7409 26.3181 17.7409 25.125V24.0043C17.7409 23.6789 17.5954 23.3535 17.3772 23.1005C17.1227 22.8474 16.7954 22.7389 16.4681 22.7389C16.2863 22.7389 16.1409 22.7751 15.9954 22.8474C15.8863 22.2328 15.3772 21.7628 14.7227 21.7628C14.4318 21.7628 14.2136 21.8351 13.9954 21.9797C13.7773 21.5459 13.3409 21.2566 12.8318 21.2566C12.6136 21.2566 12.4318 21.3289 12.25 21.4013V17.9305C12.25 17.2075 11.6682 16.629 10.9409 16.629C10.2136 16.629 9.63183 17.2075 9.63183 17.9305V24.4381L9.08638 23.1005C8.90457 22.6305 8.43184 22.3051 7.88639 22.3051C7.70458 22.3051 7.55912 22.3412 7.41367 22.4135C6.75913 22.7028 6.43186 23.4258 6.6864 24.0766L8.03185 28.4511C8.06821 28.6319 8.35912 29.8973 9.05002 30.6926C8.90457 30.8373 8.83184 30.9819 8.83184 31.1988V32.428C8.83184 32.8257 9.15911 33.1149 9.52274 33.1149H16.25C16.65 33.1149 16.9409 32.7895 16.9409 32.428V31.1626C16.9772 30.8734 16.7954 30.6203 16.5045 30.5119ZM8.72275 28.2704L7.30458 23.7874C7.19549 23.4981 7.34094 23.1366 7.63185 23.0282C7.92276 22.9197 7.92276 23.1728 8.03185 23.462L9.30472 26.4175C9.37745 26.5621 9.85001 26.5712 10.0318 26.535C10.2136 26.4989 10.3227 26.3543 10.3227 26.1735V17.9305C10.3227 17.6052 10.5773 17.3521 10.9045 17.3521C11.2318 17.3521 11.2367 17.2374 11.2367 17.5628V23.1005C11.2367 23.2812 11.6318 23.462 11.85 23.462C12.0318 23.462 12.2136 23.3174 12.2136 23.1005V22.522C12.2136 22.1966 12.4682 21.9436 12.7954 21.9436C13.1227 21.9436 13.1841 22.1966 13.1841 22.522V23.7151C13.1841 23.8958 13.5227 24.0766 13.7409 24.0766C13.9227 24.0766 14.1045 23.932 14.1045 23.7151V23.0282C14.1045 22.7028 14.3591 22.4497 14.6863 22.4497C15.0136 22.4497 15.2037 22.7028 15.2037 23.0282V24.2935C15.2037 24.4743 15.4136 24.655 15.6318 24.655C15.85 24.655 15.9954 24.5104 15.9954 24.2935V23.6789C16.2136 23.4258 16.65 23.3535 16.8681 23.6066C16.9772 23.7151 17.05 23.8597 17.05 24.0404V25.1612C17.0863 27.6919 16.5409 29.6803 15.6318 30.4757H9.88638C9.19547 30.0419 8.79548 28.7404 8.72275 28.2704ZM16.25 32.428H9.55911V31.1626H16.2863V32.428H16.25Z\" fill=\"#FCD7B6\"/>\n <path d=\"M8.25923 31.771C8.25923 31.0347 8.85609 30.4378 9.59235 30.4378H16.4484C17.1846 30.4378 17.7815 31.0347 17.7815 31.771C17.7815 32.5072 17.1846 33.1041 16.4484 33.1041H9.59235C8.85609 33.1041 8.25923 32.5072 8.25923 31.771Z\" fill=\"#FF8100\"/>\n <path d=\"M17.0638 24.9611V25.0362C17.1013 27.6634 16.5383 29.7277 15.6 30.5534H9.67C8.95689 30.103 8.54404 28.7518 8.46898 28.2639V28.2264L7.00523 23.6099C6.89264 23.3097 7.04277 22.9344 7.34302 22.8218C7.64328 22.7092 8.0186 22.8593 8.13119 23.1596L9.40728 26.2372C9.48234 26.3873 9.63247 26.4999 9.82013 26.4624C10.0078 26.4248 10.1204 26.2747 10.1204 26.0871V17.5298C10.1204 17.192 10.3831 16.9293 10.7209 16.9293C11.0587 16.9293 11.3214 17.192 11.3214 17.5298V22.8968C11.3214 23.0845 11.4715 23.2722 11.6967 23.2722C11.8844 23.2722 12.072 23.122 12.072 22.8968V22.2963C12.072 21.9585 12.3348 21.6958 12.6726 21.6958C13.0103 21.6958 13.2731 21.9585 13.2731 22.2963V23.5349C13.2731 23.7225 13.4232 23.9102 13.6484 23.9102C13.836 23.9102 14.0237 23.7601 14.0237 23.5349V22.8218C14.0237 22.484 14.2864 22.2213 14.6242 22.2213C14.962 22.2213 15.2247 22.484 15.2247 22.8218V24.1354C15.2247 24.3231 15.3749 24.5107 15.6 24.5107C15.8252 24.5107 15.9754 24.3606 15.9754 24.1354V23.4974C16.2006 23.2346 16.6509 23.1596 16.8761 23.4223C16.9887 23.5349 17.0638 23.685 17.0638 23.8727V24.9611Z\" fill=\"#FCD7B6\"/>\n </svg>\n </div>\n </div>\n </div>\n </div>\n <div class='carousel-dots' role=\"tablist\" aria-label=\"").concat(translations.PI5carouselPosition, "\">\n <div class=\"dot active\" role=\"tab\" aria-selected=\"true\" aria-label=\"").concat(translations.PI5slide, " 1\">\n <svg width=\"6\" height=\"6\" viewBox=\"0 0 6 6\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\">\n <rect width=\"6\" height=\"6\" rx=\"3\" fill=\"#8333D4\"/>\n </svg>\n </div>\n <div class=\"dot\" role=\"tab\" aria-selected=\"false\" aria-label=\"").concat(translations.PI5slide, " 2\">\n <svg width=\"6\" height=\"6\" viewBox=\"0 0 6 6\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\">\n <rect width=\"6\" height=\"6\" rx=\"3\" fill=\"#8333D4\"/>\n </svg>\n </div>\n <div class=\"dot\" role=\"tab\" aria-selected=\"false\" aria-label=\"").concat(translations.PI5slide, " 3\">\n <svg width=\"6\" height=\"6\" viewBox=\"0 0 6 6\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\">\n <rect width=\"6\" height=\"6\" rx=\"3\" fill=\"#8333D4\"/>\n </svg>\n </div>\n </div>\n </div>\n <div class=\"terms-container\">\n <p class=\"terms\"><span>").concat(translations.terms1, "</span><br /><span>").concat(translations.termsHiw, "</span></p>\n <p class=\"terms\">").concat(translations.terms2, "</p>\n <p class=\"terms\">\n <span class=\"webbank-terms\">").concat(translations.webBankTerms, "</span> <span class=\"webbank-terms\">").concat(translations.webBankTermsPI5, "</span>\n <br />\n <span>").concat(translations.linkToCompleteTerms, "</span>\n </p>\n </div>\n </div></div></div>\n</section>");
836
- modalNode.innerHTML = modalContent;
837
- handleCarousel(modalNode);
838
- handlePI5Input(modalNode, minPriceLT, maxPrice, bestAPR, currency, priceString);
839
- }
840
975
 
841
- var CURRENCY_REGEX_GLOBAL = /[$€£₤₹]/g;
842
- function addDelimiters(priceString) {
843
- var parsedPrice = Number(priceString).toFixed(2);
844
- if (parsedPrice.length > 6) {
845
- return parsedPrice.substring(0, parsedPrice.indexOf('.') - 3) + ',' + parsedPrice.substring(parsedPrice.indexOf('.') - 3, parsedPrice.length);
846
- } else {
847
- return parsedPrice;
848
- }
849
- }
850
- function calculateMonthlyWithInterest(priceText, term, APR) {
851
- var price = Number(priceText);
852
- if (APR > 0) {
853
- var rate = APR / 100 / 12;
854
- var numerator = price * rate * Math.pow(1 + rate, term);
855
- var denominator = Math.pow(1 + rate, term) - 1;
856
- var interestPayment = numerator / denominator;
857
- return interestPayment;
858
- } else {
859
- return price / term;
860
- }
861
- }
862
- function formatMonthly(priceString, term, APR) {
863
- var interestAmount = calculateMonthlyWithInterest(priceString, term, APR);
864
- return addDelimiters(interestAmount.toFixed(2));
865
- }
866
- function formatTotalInterest(priceString, term, APR) {
867
- var adjustedTotal = calculateMonthlyWithInterest(priceString, term, APR) * term;
868
- return addDelimiters(adjustedTotal - priceString);
869
- }
870
- function formatAdjustedTotal(priceString, term, APR) {
871
- var amountPlusInterest = calculateMonthlyWithInterest(priceString, term, APR);
872
- return addDelimiters(amountPlusInterest * term);
873
- }
874
- function termsToShow(price) {
875
- switch (true) {
876
- case price > 1000:
877
- return [24, 36, 48];
878
- case price > 500:
879
- return [12, 18, 24];
880
- case price > 300:
881
- return [6, 9, 12];
882
- default:
883
- return [3, 6, 9];
976
+ // Resets the modal to reflect the current widget price. Called when the modal
977
+ // is (re)opened so the input never carries stale text from a prior session and
978
+ // the cards/terms reflect the latest props.price. Eligibility uses the same
979
+ // minPrice=0 relaxation as the initial render so PI4 is always visible on open.
980
+ function resetMultiPlanModal(modalNode, rawPrice, opts) {
981
+ if (!modalNode) return;
982
+ var lang = getLanguage();
983
+ var translations = getTranslations(lang);
984
+ // Whitelist-sanitize before interpolating into innerHTML downstream, matching
985
+ // the user-input path in handleMultiPlanInput so all entry points share the
986
+ // same trust posture regardless of how the caller sourced rawPrice.
987
+ var sanitized = rawPrice.replace(SANITIZE_REGEX, '');
988
+ var currency = getCurrency(sanitized);
989
+ var priceString = sanitized.replace(CURRENCY_REGEX_GLOBAL, '').trim();
990
+ var input = modalNode.querySelector('.input-amount');
991
+ var container = modalNode.querySelector('.input-amount-container');
992
+ if (input) {
993
+ input.value = currency + priceString;
994
+ input.classList.remove('input-error');
884
995
  }
996
+ if (container) container.classList.remove('input-error');
997
+ renderDynamicSections(modalNode, currency, priceString, _objectSpread$3(_objectSpread$3({}, opts), {}, {
998
+ minPrice: 0
999
+ }), translations, lang);
885
1000
  }
886
- function getLongTermModal(modalNode, priceString, bestAPR) {
1001
+ function getMultiPlanModal(modalNode, priceString, opts) {
887
1002
  var currentLang = getLanguage();
888
1003
  var translations = getTranslations(currentLang);
889
- var currency = getCurrency(priceString);
890
- priceString = priceString.replace(CURRENCY_REGEX_GLOBAL, '').trim();
891
- var terms = termsToShow(priceString);
892
- modalNode.className = 'sezzle-checkout-modal-lightbox close-sezzle-modal sezzle-modal';
893
- modalNode.innerHTML = "<section class=\"sezzle-checkout-modal-lightbox close-sezzle-modal\" lang=\"".concat(translations.locale, "\" aria-label=\"").concat(translations.sezzleInformation, "\" style=\"display: block;\">\n <div id=\"sezzle-modal-container\" role=\"dialog\" aria-label=\"Sezzle Modal\" class=\"sezzle-checkout-modal-hidden long-term\">\n <div class=\"sezzle-modal\">\n <div>\n <button role=\"button\" aria-label=\"").concat(translations.closeSezzleModal, "\" class=\"close-sezzle-modal\"></button>\n </div>\n <div class=\"sezzle-logo\" title=\"Sezzle\"> </div>\n <div id=\"sezzle-modal-core-content\" class=\"sezzle-modal-content\">\n <header class=\"sezzle-header\">").concat(translations.LTsezzleHeader, "</header>\n <div class=\"sezzle-row\">").concat(translations.LTsezzleRowChild, "</div>\n <div class=\"sezzle-lt-payments\">\n <div class=\"sezzle-lt-payment-header\">").concat(translations.LTsezzlePaymentHeader, " <span>&nbsp;").concat(currency + addDelimiters(priceString), "</span></div>\n <div class=\"sezzle-lt-payment-options ").concat(terms[2], "-month\" ").concat(terms[2] === undefined ? 'style="display: none;"' : 'style="display: block;"', ">\n <div class=\"plan\">\n <div class=\"monthly-amount\">\n <span>").concat(currency + formatMonthly(priceString, terms[2], bestAPR), "</span>\n <span aria-label=\"").concat(translations.LTperMonth, "\">\n <span class=\"per-month\" aria-hidden=\"true\">").concat(translations.LTmonthlyAmount, "<sup>*</sup></span>\n </span>\n </div>\n <div class=\"term-length\">").concat(terms[2], " ").concat(translations.LTtermLength, "</div>\n </div>\n <div class=\"plan-details\">\n <div class=\"adjusted-total\">").concat(translations.LTadjustedTotal, " <span>").concat(currency + formatAdjustedTotal(priceString, terms[2], bestAPR), "</span></div>\n <div class=\"interest-amount\">").concat(translations.LTinterest, " <span>").concat(currency + formatTotalInterest(priceString, terms[2], bestAPR), "</span></div>\n <div class=\"sample-apr\">\n <span aria-label=\"").concat(translations.LTreadApr, " ").concat(bestAPR, " ").concat(translations.LTpercent, "\">\n <span class=\"apr-label\" aria-hidden=\"true\">").concat(translations.LTsampleApr, "</span>\n <span aria-hidden=\"true\">").concat(bestAPR, "%</span>\n </span>\n </div>\n </div>\n </div>\n <div class=\"sezzle-lt-payment-options ").concat(terms[1], "-month\">\n <div class=\"plan\">\n <div class=\"monthly-amount\">\n <span>").concat(currency + formatMonthly(priceString, terms[1], bestAPR), "</span>\n <span aria-label=\"").concat(translations.LTperMonth, "\">\n <span class=\"per-month\" aria-hidden=\"true\">").concat(translations.LTmonthlyAmount, "<sup>*</sup></span>\n </span>\n </div>\n <div class=\"term-length\">").concat(terms[1], " ").concat(translations.LTtermLength, "</div>\n </div>\n <div class=\"plan-details\">\n <div class=\"adjusted-total\">").concat(translations.LTadjustedTotal, " <span>").concat(currency + formatAdjustedTotal(priceString, terms[1], bestAPR), "</span></div>\n <div class=\"interest-amount\">").concat(translations.LTinterest, " <span>").concat(currency + formatTotalInterest(priceString, terms[1], bestAPR), "</span></div>\n <div class=\"sample-apr\">\n <span aria-label=\"").concat(translations.LTreadApr, " ").concat(bestAPR, " ").concat(translations.LTpercent, "\">\n <span class=\"apr-label\" aria-hidden=\"true\">").concat(translations.LTsampleApr, "</span>\n <span aria-hidden=\"true\">").concat(bestAPR, "%</span>\n </span>\n </div>\n </div>\n </div>\n <div class=\"sezzle-lt-payment-options ").concat(terms[0], "-month\">\n <div class=\"plan\">\n <div class=\"monthly-amount\">\n <span>").concat(currency + formatMonthly(priceString, terms[0], bestAPR), "</span>\n <span aria-label=\"").concat(translations.LTperMonth, "\">\n <span class=\"per-month\" aria-hidden=\"true\">").concat(translations.LTmonthlyAmount, "<sup>*</sup></span>\n </span>\n </div>\n <div class=\"term-length\">").concat(terms[0], " ").concat(translations.LTtermLength, "</div>\n </div>\n <div class=\"plan-details\">\n <div class=\"adjusted-total\">").concat(translations.LTadjustedTotal, " <span>").concat(currency + formatAdjustedTotal(priceString, terms[0], bestAPR), "</span></div>\n <div class=\"interest-amount\">").concat(translations.LTinterest, " <span>").concat(currency + formatTotalInterest(priceString, terms[0], bestAPR), "</span></div>\n <div class=\"sample-apr\">\n <span aria-label=\"").concat(translations.LTreadApr, " ").concat(bestAPR, " ").concat(translations.LTpercent, "\">\n <span class=\"apr-label\" aria-hidden=\"true\">").concat(translations.LTsampleApr, "</span>\n <span aria-hidden=\"true\">").concat(bestAPR, "%</span>\n </span>\n </div>\n </div>\n </div>\n </div>\n <div class=\"details\">").concat(translations.LTsingleFeatureAffordable, "</div>\n <div class=\"details\">").concat(translations.LTsingleFeaturePrequalify, "</div>\n <div class=\"details\">").concat(translations.LTsingleFeatureTrusted, "</div>\n <div class=\"terms\">\n <p>").concat(translations.LTterms1, "</p>\n <p>").concat(translations.LTterms2, "</p>\n <p>").concat(translations.LTterms3, "</p>\n </div>\n </div>\n </div>\n </div>\n </section>");
1004
+ // Whitelist-sanitize before interpolating into innerHTML downstream, matching
1005
+ // the user-input path in handleMultiPlanInput so all entry points share the
1006
+ // same trust posture regardless of how the caller sourced priceString.
1007
+ var sanitized = priceString.replace(SANITIZE_REGEX, '');
1008
+ var currency = getCurrency(sanitized);
1009
+ priceString = sanitized.replace(CURRENCY_REGEX_GLOBAL, '').trim();
1010
+
1011
+ // Initial render relaxes minPrice to 0 so that opening the modal always
1012
+ // shows at least one biweekly card, even when the configured minPrice
1013
+ // exceeds the current price. Strict minPrice still applies to user input
1014
+ // via handleMultiPlanInput → isInputAmountValid.
1015
+ var eligibility = computeEligibility(priceString, _objectSpread$3(_objectSpread$3({}, opts), {}, {
1016
+ minPrice: 0
1017
+ }));
1018
+ modalNode.className = 'sezzle-checkout-modal-lightbox sezzle-modal';
1019
+ var modalContent = "<section class=\"sezzle-checkout-modal-lightbox close-sezzle-modal\" lang=\"".concat(currentLang, "\" aria-label=\"").concat(translations.sezzleInformation, "\" style=\"display: block;\">\n <div id=\"sezzle-modal-container\" role=\"dialog\" aria-label=\"Sezzle Modal\" class=\"sezzle-checkout-modal-hidden sezzle-multi-plan").concat(eligibility.pi5 ? '' : ' pi4-only', "\">\n <div class=\"sezzle-modal\">\n <div><button role=\"button\" aria-label=\"").concat(translations.closeSezzleModal, "\" class=\"close-sezzle-modal\"></button></div>\n <div class=\"sezzle-logo\" title=\"Sezzle\"></div>\n <div id=\"sezzle-modal-core-content\" class=\"sezzle-modal-content\">\n <p class='trusted'>").concat(translations.MultiPlantrusted, "</p>\n <header class='sezzle-header'>").concat(translations.MultiPlanheader, "</header>\n <div class='payment-plan-wrapper'>\n <p class='sample-payments ").concat(currentLang === 'fr' ? 'sezzle-multi-plan-fr' : '', "'>\n <span class=\"sample-payments-title\">").concat(translations.MultiPlanSeePlans, "</span>\n <span class=\"input-amount-container\">\n <label class=\"input-amount-label\" for=\"multi-plan-input-amount\">").concat(translations.MultiPlanAmount, "</label>\n <input class='price input-amount' id=\"multi-plan-input-amount\" maxlength=\"12\" value='").concat(currency + priceString, "'/>\n </span>\n </p>\n <div class='payment-cards payment-cards-biweekly'").concat(eligibility.pi4 ? '' : ' style="display:none"', ">").concat(generateBiweeklyInner(eligibility, currency, priceString, opts, translations), "</div>\n <div class='payment-cards payment-cards-monthly'").concat(eligibility.lt ? '' : ' style="display:none"', ">").concat(generateMonthlyInner(eligibility, currency, priceString, opts, translations, currentLang), "</div>\n </div>\n <div class='how-to-sezzle'>\n <div class='carousel-header'>\n <div class='how-to-text-wrapper'>\n <span class='how-to-text'>").concat(translations.MultiPlanhowToPay, "</span>\n <div class='how-to-logo'>\n <img class=\"how-to-sezzle-logo szl-light-image\" src=\"https://media.sezzle.com/branding/2.0/Sezzle_Logo_FullColor.svg\" alt=\"Sezzle\" style=\"height: 14px; width: 58px;\">\n </div>\n </div>\n <div class='arrows'>\n <button type='button' class='arrow arrow-left disabled' disabled aria-label='").concat(translations.previousSlide, "'>\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M14.5 16.4078C14.825 16.0828 14.825 15.5578 14.5 15.2328L11.2667 11.9995L14.5 8.76614C14.825 8.44114 14.825 7.91614 14.5 7.59114C14.175 7.26614 13.65 7.26614 13.325 7.59114L9.5 11.4161C9.175 11.7411 9.175 12.2661 9.5 12.5911L13.325 16.4161C13.6417 16.7328 14.175 16.7328 14.5 16.4078Z\" fill=\"#8333D4\"/></svg>\n </button>\n <button type='button' class='arrow arrow-right' aria-label='").concat(translations.nextSlide, "'>\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M9.5 7.59219C9.175 7.91719 9.175 8.44219 9.5 8.76719L12.7333 12.0005L9.5 15.2339C9.175 15.5589 9.175 16.0839 9.5 16.4089C9.825 16.7339 10.35 16.7339 10.675 16.4089L14.5 12.5839C14.825 12.2589 14.825 11.7339 14.5 11.4089L10.675 7.58386C10.3583 7.26719 9.825 7.26719 9.5 7.59219Z\" fill=\"#8333D4\"/></svg>\n </button>\n </div>\n </div>\n <div class='carousel position-1'>\n <div class='carousel-item'><div class='carousel-item-content'><div class='step-number'><span class='step-number-content'>1</span></div><div class='step-name'>").concat(translations.MultiPlanStep1, "</div></div></div>\n <div class='carousel-item'><div class='carousel-item-content'><div class='step-number'><span class='step-number-content'>2</span></div><div class='step-name'>").concat(translations.MultiPlanStep2, "</div></div></div>\n <div class='carousel-item'><div class='carousel-item-content'><div class='step-number'><span class='step-number-content'>3</span></div><div class='step-name'>").concat(translations.MultiPlanStep3, "</div></div></div>\n </div>\n <div class='carousel-dots' role=\"tablist\" aria-label=\"").concat(translations.carouselPosition, "\">\n <div class=\"dot active\" role=\"tab\" aria-selected=\"true\" aria-label=\"").concat(translations.slide, " 1\"><svg width=\"6\" height=\"6\" viewBox=\"0 0 6 6\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\"><rect width=\"6\" height=\"6\" rx=\"3\" fill=\"#8333D4\"/></svg></div>\n <div class=\"dot\" role=\"tab\" aria-selected=\"false\" aria-label=\"").concat(translations.slide, " 2\"><svg width=\"6\" height=\"6\" viewBox=\"0 0 6 6\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\"><rect width=\"6\" height=\"6\" rx=\"3\" fill=\"#8333D4\"/></svg></div>\n <div class=\"dot\" role=\"tab\" aria-selected=\"false\" aria-label=\"").concat(translations.slide, " 3\"><svg width=\"6\" height=\"6\" viewBox=\"0 0 6 6\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\"><rect width=\"6\" height=\"6\" rx=\"3\" fill=\"#8333D4\"/></svg></div>\n </div>\n </div>\n <div class=\"terms-container\">").concat(generateTermsInner(eligibility, translations, opts, currentLang), "</div>\n </div>\n </div>\n </div>\n</section>");
1020
+ modalNode.innerHTML = modalContent;
1021
+ handleCarousel(modalNode);
1022
+ if (eligibility.lt) attachFeaturesAccordion(modalNode);
1023
+ handleMultiPlanInput(modalNode, opts, currency);
894
1024
  }
895
1025
 
896
- var css_248z = "@import url(\"https://fonts.cdnfonts.com/css/satoshi\");\n.sezzle-modal-open {\n position: fixed;\n top: 0;\n bottom: 0;\n right: 0;\n left: 0;\n}\n\n.sezzle-checkout-modal-lightbox * {\n vertical-align: baseline;\n box-sizing: border-box;\n line-height: normal;\n background-color: unset;\n box-shadow: unset;\n font-family: unset;\n color: unset;\n font-size: unset;\n font-weight: unset;\n padding: unset;\n border: unset;\n margin: unset;\n stroke: none;\n}\n\n.sezzle-checkout-modal-lightbox {\n display: none;\n position: fixed;\n top: 0;\n left: 0;\n z-index: 2147483647;\n background-color: rgba(5, 31, 52, 0.57);\n width: 100vw;\n height: 100vh;\n overflow-y: auto;\n overflow-x: hidden;\n color: unset;\n}\n.sezzle-checkout-modal-lightbox .sezzle-checkout-modal-hidden {\n transition: all 0.4s ease;\n margin-top: 0;\n}\n.sezzle-checkout-modal-lightbox .sezzle-checkout-modal {\n position: fixed;\n top: 50%;\n left: 50%;\n margin-top: -384px;\n margin-left: -325px;\n z-index: 99999998;\n background-color: #ffffff;\n box-shadow: 0 10px 20px rgba(5, 31, 52, 0.19), 0 6px 6px rgba(5, 31, 52, 0.2);\n border-radius: 20px;\n color: #303030;\n font-family: Satoshi, \"Open Sans\", sans-serif;\n transition: all 0.4s ease;\n width: 650px;\n}\n@media (max-width: 650px) {\n .sezzle-checkout-modal-lightbox .sezzle-checkout-modal {\n position: relative;\n top: 0px;\n left: 0px;\n padding: 50px 20px;\n margin: 0;\n border-radius: 0;\n height: 100%;\n font-size: 15px;\n max-width: 100%;\n min-width: 320px;\n overflow: auto;\n }\n}\n@media (max-height: 767px) and (min-width: 651px) {\n .sezzle-checkout-modal-lightbox .sezzle-checkout-modal {\n position: relative;\n top: 0px;\n left: 0px;\n margin: 20px auto;\n }\n}\n.sezzle-checkout-modal-lightbox .sezzle-checkout-modal h1 {\n font-size: 18px;\n text-align: center;\n margin: 0 auto;\n}\n@media (max-width: 450px) {\n .sezzle-checkout-modal-lightbox .sezzle-checkout-modal h1 .sezzle-checkout-modal h1 {\n font-size: 16px;\n }\n}\n.sezzle-checkout-modal-lightbox .sezzle-checkout-modal p {\n display: block;\n text-align: center;\n text-transform: none;\n font-size: 12pt;\n line-height: 25px;\n font-weight: 300;\n box-sizing: border-box;\n color: #5e5e5e;\n margin: 5px 0 !important;\n letter-spacing: 0.25px;\n}\n@media (max-width: 768px) {\n .sezzle-checkout-modal-lightbox .sezzle-checkout-modal p {\n text-align: center;\n }\n}\n@media (max-width: 450px) {\n .sezzle-checkout-modal-lightbox .sezzle-checkout-modal p {\n font-size: 11pt;\n text-align: center;\n letter-spacing: 0.5px;\n line-height: 18px;\n }\n}\n.sezzle-checkout-modal-lightbox .sezzle-checkout-modal p small {\n display: block;\n box-sizing: border-box;\n font-size: 11pt;\n opacity: 0.8;\n}\n@media (max-width: 450px) {\n .sezzle-checkout-modal-lightbox .sezzle-checkout-modal p small {\n font-size: 7.5pt;\n }\n}\n.sezzle-checkout-modal-lightbox .sezzle-checkout-modal a {\n display: block;\n margin: 4px auto 0;\n color: #17ce6a;\n font-size: 8pt;\n font-weight: 500;\n text-transform: lowercase;\n text-align: left;\n letter-spacing: 0.25px;\n text-decoration: none;\n transition: 0.15s;\n opacity: 0.65;\n}\n.sezzle-checkout-modal-lightbox .sezzle-checkout-modal a:hover {\n transition: 0.1s;\n opacity: 1;\n}\n.sezzle-checkout-modal-lightbox .sezzle-checkout-modal h2 {\n font-size: 18px;\n text-align: center;\n margin: 0 auto;\n color: unset;\n}\n@media (max-width: 768px) {\n .sezzle-checkout-modal-lightbox .sezzle-checkout-modal h2 {\n text-align: center;\n }\n}\n.sezzle-checkout-modal-lightbox .sezzle-checkout-modal h2 img {\n margin: 0 4px;\n display: inline-block;\n height: 30px !important;\n width: auto;\n position: relative;\n top: 6px;\n vertical-align: initial;\n}\n\n.sezzle-checkout-modal-hidden {\n width: 100%;\n height: 100%;\n -webkit-font-smoothing: antialiased;\n transition: all 0.4s ease;\n margin-top: 0;\n}\n@media screen and (min-width: 0px) and (max-width: 280px) {\n .sezzle-checkout-modal-hidden {\n display: none;\n }\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal {\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n position: absolute;\n box-shadow: 0 10px 20px rgba(5, 31, 52, 0.19), 0 6px 6px rgba(5, 31, 52, 0.2);\n height: auto;\n max-height: 100%;\n width: 391px;\n color: #303030;\n font-family: Satoshi, \"Open Sans\", sans-serif;\n background-color: #ffffff;\n overflow: auto;\n padding: 20px 0;\n border-radius: 10px;\n box-sizing: border-box;\n gap: 16px;\n justify-items: center;\n}\n@media screen and (max-width: 768px) {\n .sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal {\n width: 100vw;\n height: 100vh;\n padding: 20px 0 2px 0;\n border-radius: 0px;\n }\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal div button.close-sezzle-modal {\n position: absolute;\n right: 16px;\n top: 16px;\n width: 24px;\n height: 24px;\n opacity: 0.2;\n cursor: pointer;\n padding: 0;\n outline: 0;\n background: 0 0;\n border: none;\n box-shadow: none;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal div button.close-sezzle-modal:hover {\n opacity: 1;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal div button.close-sezzle-modal:focus {\n opacity: 0.5;\n}\n@media screen and (max-width: 600px) {\n .sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal div button.close-sezzle-modal {\n opacity: 0.8;\n }\n .sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal div button.close-sezzle-modal:focus {\n opacity: 1;\n }\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal div button.close-sezzle-modal::before {\n position: absolute;\n left: 10px;\n content: \" \";\n top: 0;\n transform: rotate(45deg);\n background-color: #5e5e5e;\n width: 2px;\n height: 15px;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal div button.close-sezzle-modal::after {\n position: absolute;\n left: 10px;\n content: \" \";\n top: 0;\n transform: rotate(-45deg);\n background-color: #5e5e5e;\n width: 2px;\n height: 15px;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-logo {\n display: block;\n height: 29.39px;\n width: 120px;\n margin: 10px auto 0;\n background-image: url(https://media.sezzle.com/branding/2.0/Sezzle_Logo_FullColor.svg);\n background-repeat: no-repeat;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content {\n height: auto;\n text-align: center;\n padding: 0px 16px;\n font-family: Satoshi, \"Open Sans\", sans-serif;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .tp-widget-wrapper {\n font-size: 12px;\n margin: 16px 0px;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .tp-widget-wrapper a {\n text-decoration: none;\n color: #303030;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .tp-widget-wrapper .tp-review-status {\n color: #382757;\n font-size: 11.06px;\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 700;\n line-height: 23.95px;\n word-wrap: break-word;\n display: inline-block;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .tp-widget-wrapper .tp-widget-trustscore {\n font-weight: 500;\n display: inline-block;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .tp-widget-wrapper .tp-widget-stars {\n display: inline-block;\n width: 80px;\n position: relative;\n top: 3px;\n margin-left: 7px;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .tp-widget-wrapper .tp-widget-stars div .tp-stars--4--half div svg {\n display: block;\n position: absolute;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .tp-widget-wrapper .tp-widget-stars div .tp-stars--4--half div svg .tp-star:nth-of-type(-n + 4) .tp-star__canvas {\n fill: #00b67a;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .tp-widget-wrapper .tp-widget-stars div .tp-stars--4--half div svg .tp-star .tp-star__canvas {\n fill: #dcdce6;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .tp-widget-wrapper .tp-widget-stars div .tp-stars--4--half div svg .tp-star .tp-star__canvas--half {\n fill: #00b67a;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .tp-widget-wrapper .tp-widget-stars div .tp-stars--4--half div svg .tp-star .tp-star__shape {\n fill: #ffffff;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .tp-widget-wrapper .widget-info {\n display: inline-block;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .tp-widget-wrapper .widget-info .tp-widget-review-count {\n font-weight: 700;\n display: inline-block;\n margin-left: 7px;\n font-size: 12px;\n line-height: 23.95px;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .tp-widget-wrapper .widget-info .tp-widget-rating {\n display: inline-block;\n font-size: 12px;\n line-height: 23.95px;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .tp-widget-wrapper .widget-info .tp-widget-logo {\n display: inline-block;\n width: 60px;\n position: relative;\n top: 3px;\n margin-left: 7px;\n line-height: 23.95px;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .sezzle-header {\n position: relative;\n display: block;\n text-align: center;\n font-style: normal;\n font-size: 26px;\n font-weight: 700;\n line-height: 35px;\n letter-spacing: 0.1px;\n font-family: Satoshi, \"Open Sans\", sans-serif;\n color: #303030;\n margin: 16px 0;\n float: none;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .sezzle-row {\n text-align: center;\n font-style: normal;\n font-size: 15px;\n font-weight: 400;\n line-height: 21px;\n color: #303030;\n letter-spacing: 0.4px;\n margin: 12px 0px 24px;\n font-family: Satoshi, \"Open Sans\", sans-serif;\n display: block;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .sezzle-row span {\n display: block;\n font-family: Satoshi, \"Open Sans\", sans-serif;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .sezzle-row span sup {\n vertical-align: super;\n font-size: 0.75em;\n font-family: Satoshi, \"Open Sans\", sans-serif;\n position: unset;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .sezzle-four-pay {\n display: flex;\n flex-direction: column;\n align-items: center;\n background: rgba(131, 51, 212, 0.05);\n border-radius: 11.483px;\n padding: 18.37px;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .sezzle-four-pay.sezzle-four-pay-fr-es {\n margin: 0px 0px;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .sezzle-four-pay .sezzle-pie-area {\n display: flex;\n align-items: flex-start;\n justify-content: space-between;\n gap: 18.373px;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .sezzle-four-pay .sezzle-pie-area .due-today {\n display: flex;\n padding: 18.373px;\n flex-direction: column;\n align-items: center;\n gap: 9.187px;\n border-radius: 11.483px;\n background: #ffffff;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .sezzle-four-pay .sezzle-pie-area .future-payments {\n display: flex;\n padding: 18.373px;\n align-items: flex-start;\n gap: 18.373px;\n border-radius: 11.483px;\n background: #ffffff;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .sezzle-four-pay .sezzle-pie-area .payment-item {\n display: inline-flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 9.19px;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .sezzle-four-pay .sezzle-pie-area .payment-item .pie-icon {\n position: relative;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .sezzle-four-pay .sezzle-pie-area .payment-item .pie-icon svg {\n width: 45.93px;\n height: 45.93px;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .sezzle-four-pay .sezzle-pie-area .payment-item .breakdown-row {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 2.3px;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .sezzle-four-pay .sezzle-pie-area .payment-item .breakdown-row .percentage {\n text-align: center;\n color: #8333d4;\n font-size: 17.22px;\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 400;\n line-height: 24.11px;\n letter-spacing: 0.17px;\n word-wrap: break-word;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .sezzle-four-pay .sezzle-pie-area .payment-item .breakdown-row .due {\n text-align: center;\n color: #5e5e5e;\n font-size: 13.78px;\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 400;\n line-height: 19.52px;\n letter-spacing: 0.46px;\n white-space: nowrap;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .sezzle-four-pay .sezzle-pie-area .payment-item .breakdown-row .due sup {\n vertical-align: super;\n font-size: 0.75em;\n font-family: Satoshi, \"Open Sans\", sans-serif;\n position: unset;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .sezzle-features {\n margin: 16px 0 16px 0;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .sezzle-features .single-feature {\n text-align: center;\n align-self: stretch;\n font-size: 17px;\n font-style: normal;\n font-weight: 700;\n line-height: 23px;\n letter-spacing: 0.2px;\n color: #303030;\n font-family: Satoshi, \"Open Sans\", sans-serif !important;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .sezzle-features.hide {\n display: none;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .sezzle-giveaway, .sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .sezzle-promo {\n font-size: 17px;\n font-weight: 700;\n line-height: 23px;\n margin: 16px 0;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .sezzle-giveaway.hide, .sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .sezzle-promo.hide {\n display: none;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .sezzle-giveaway sup, .sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .sezzle-promo sup {\n vertical-align: super;\n font-size: 0.75em;\n font-family: Satoshi, \"Open Sans\", sans-serif;\n position: unset;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .terms {\n text-align: center;\n font-style: normal;\n font-size: 11px;\n font-weight: 400;\n line-height: 12px;\n color: #5e5e5e;\n font-family: Satoshi, \"Open Sans\", sans-serif !important;\n margin: 0 0 10px;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .terms sup {\n vertical-align: super;\n font-size: 0.75em;\n padding-right: 2px;\n font-family: Satoshi, \"Open Sans\", sans-serif;\n position: unset;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .terms span {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .terms a {\n color: #8333d4;\n font-family: Satoshi, \"Open Sans\", sans-serif;\n text-decoration: underline;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .terms a:hover {\n color: #af0fda;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .terms.hide {\n display: none;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .close-btn-container {\n margin-top: 10px;\n display: flex;\n justify-content: center;\n}\n@media screen and (max-width: 768px) {\n .sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .close-btn-container {\n position: sticky;\n bottom: 0;\n }\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .close-btn {\n display: flex;\n width: 95%;\n height: 48px;\n position: static;\n padding: 13px 16px;\n justify-content: center;\n align-items: center;\n gap: 10px;\n flex-shrink: 0;\n border-radius: 100px;\n background: #382757;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .close-btn:hover {\n background: #7d25cb;\n}\n.sezzle-checkout-modal-hidden.sezzle-four-pay .sezzle-modal .sezzle-modal-content .close-btn {\n color: #ffffff;\n /* Button/Large */\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-size: 15px;\n font-style: normal;\n font-weight: 500;\n line-height: 24px; /* 160% */\n letter-spacing: 0.25px;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal {\n width: fit-content;\n border-radius: 10px;\n padding: 16px;\n gap: 10px;\n background-color: #f4f4f4;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n position: absolute;\n box-shadow: 0 10px 20px rgba(5, 31, 52, 0.19), 0 6px 6px rgba(5, 31, 52, 0.2);\n height: auto;\n max-height: 100%;\n color: #303030;\n font-family: Satoshi, \"Open Sans\", sans-serif;\n overflow: auto;\n box-sizing: border-box;\n justify-items: center;\n}\n@media screen and (max-width: 768px) {\n .sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal {\n width: 100vw;\n height: 100vh;\n padding: 20px 0 2px 0;\n border-radius: 0px;\n }\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal button.close-sezzle-modal {\n position: absolute;\n right: 16px;\n top: 16px;\n width: 24px;\n height: 24px;\n opacity: 0.2;\n cursor: pointer;\n padding: 0;\n outline: 0;\n background: 0 0;\n border: none;\n box-shadow: none;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal button.close-sezzle-modal:hover {\n opacity: 1;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal button.close-sezzle-modal:focus {\n opacity: 0.5;\n}\n@media screen and (max-width: 600px) {\n .sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal button.close-sezzle-modal {\n opacity: 0.8;\n }\n .sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal button.close-sezzle-modal:focus {\n opacity: 1;\n }\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal button.close-sezzle-modal::before {\n position: absolute;\n left: 10px;\n content: \" \";\n top: 0;\n transform: rotate(45deg);\n background-color: #5e5e5e;\n width: 2px;\n height: 15px;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal button.close-sezzle-modal::after {\n position: absolute;\n left: 10px;\n content: \" \";\n top: 0;\n transform: rotate(-45deg);\n background-color: #5e5e5e;\n width: 2px;\n height: 15px;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-logo {\n display: block;\n height: 29.39px;\n width: 120px;\n margin: 10px auto 0;\n background-image: url(https://media.sezzle.com/branding/2.0/Sezzle_Logo_FullColor.svg);\n background-repeat: no-repeat;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content {\n display: flex;\n flex-direction: column;\n gap: 8px;\n width: 326px;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .trusted {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 400;\n font-size: 11px;\n line-height: 17px;\n letter-spacing: 0.2px;\n color: #5e5e5e;\n margin: 8px auto 0px;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .sezzle-header {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 700;\n font-size: 21px;\n line-height: 28px;\n letter-spacing: 0.1px;\n text-align: center;\n color: #303030;\n margin: auto;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .sample-payments {\n display: flex;\n justify-content: space-between;\n padding: 0 16px;\n margin: 8px auto;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .sample-payments.sezzle-five-pay-fr {\n padding: 0px;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .sample-payments .sample-payments-title {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 400;\n font-size: 15px;\n line-height: 21px;\n letter-spacing: 0.15px;\n text-align: center;\n color: #303030;\n align-content: center;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .sample-payments .input-amount-container {\n width: min-content;\n height: 58px;\n border-radius: 10px;\n padding: 0 16px;\n align-content: center;\n border: 1px solid #767676;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .sample-payments .input-amount-container .input-amount-label {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 500;\n font-size: 12px;\n line-height: 17px;\n letter-spacing: 0.4px;\n vertical-align: middle;\n color: #5e5e5e;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .sample-payments .input-amount-container .input-amount {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 500;\n font-size: 15px;\n line-height: 21px;\n letter-spacing: 0.15px;\n vertical-align: middle;\n color: #303030;\n width: 75px;\n background: none;\n border: none;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .sample-payments .input-amount-container .input-amount:focus-visible {\n outline: none;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .sample-payments .input-amount-container:focus-within {\n border: 2px solid #af0fda;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards {\n border-radius: 10px;\n background-color: #ffffff;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card {\n gap: 8px;\n padding: 16px;\n display: flex;\n flex-direction: column;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card:first-child {\n border-bottom: 3px solid #f4f4f4;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .plan-summary .purple {\n display: flex;\n justify-content: space-between;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .plan-summary .purple .left {\n text-align: left;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .plan-summary .purple .left .price {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 700;\n font-size: 17px;\n line-height: 23px;\n letter-spacing: 0.2px;\n color: #8333d4;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .plan-summary .purple .left .due {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 700;\n font-size: 15px;\n line-height: 21px;\n letter-spacing: 0.15px;\n color: #8333d4;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .plan-summary .purple .right {\n width: fit-content;\n border-radius: 24px;\n height: fit-content;\n padding: 4px 10px;\n background-color: #f9f5fd;\n align-items: center;\n display: flex;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .plan-summary .purple .right .pill {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 500;\n font-size: 12px;\n line-height: 17px;\n letter-spacing: 0.4px;\n color: #8333d4;\n width: fit-content;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .plan-summary .grey {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 400;\n font-size: 12px;\n line-height: 17px;\n letter-spacing: 0.4px;\n color: #5e5e5e;\n text-align: left;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .payment-breakdown {\n display: flex;\n justify-content: center;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .payment-breakdown .installment {\n width: -webkit-fill-available;\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .payment-breakdown .installment .graphic {\n display: flex;\n justify-content: space-between;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .payment-breakdown .installment .graphic .dash {\n display: flex;\n align-items: center;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .payment-breakdown .installment .graphic .dot {\n display: flex;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .payment-breakdown .installment .graphic .dot svg {\n width: 16px;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .payment-breakdown .installment .detail .amount {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 500;\n font-size: 12px;\n line-height: 17px;\n letter-spacing: 0.4px;\n text-align: center;\n color: #5e5e5e;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .payment-breakdown .installment .detail .due {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 400;\n font-size: 11px;\n line-height: 17px;\n letter-spacing: 0.2px;\n text-align: center;\n color: #5e5e5e;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .payment-breakdown .installment .detail.first-installment .amount {\n font-weight: 700;\n color: #303030;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .payment-breakdown .installment .detail.first-installment .due {\n color: #303030;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .how-to-sezzle {\n display: flex;\n flex-direction: column;\n padding-top: 8px;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel-header {\n display: flex;\n justify-content: space-between;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel-header .how-to-text-wrapper {\n gap: 4px;\n display: flex;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel-header .how-to-text-wrapper .how-to-text {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 500;\n font-size: 13px;\n line-height: 17px;\n letter-spacing: 0.4px;\n color: #303030;\n align-content: center;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel-header .how-to-text-wrapper .how-to-logo {\n display: flex;\n align-items: center;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel-header .how-to-text-wrapper .how-to-logo svg {\n width: 57.1666717529px;\n height: 24px;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel-header .arrows {\n gap: 4px;\n display: flex;\n flex-direction: row;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel-header .arrows .arrow.disabled {\n filter: grayscale(1) opacity(0.5);\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel-header .arrows .arrow svg {\n width: 24px;\n height: 24px;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel {\n gap: 8px;\n display: flex;\n flex-direction: row;\n overflow: hidden;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel.position-1 {\n justify-content: start;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel.position-2 {\n justify-content: center;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel.position-3 {\n justify-content: end;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel .carousel-item {\n border-radius: 10px;\n padding-top: 16px;\n padding-right: 12px;\n padding-bottom: 16px;\n padding-left: 12px;\n background-color: #ffffff;\n display: flex;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel .carousel-item .carousel-item-content {\n width: 260px;\n display: flex;\n flex-direction: row;\n align-items: center;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel .carousel-item .carousel-item-content .step-number {\n height: 20px;\n border-radius: 31.04px;\n padding: 0 2.47px;\n background-color: #f9f5fd;\n display: flex;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel .carousel-item .carousel-item-content .step-number .step-number-content {\n display: flex;\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 500;\n font-size: 12px;\n line-height: 17px;\n letter-spacing: 0.4px;\n color: #8333d4;\n width: 17px;\n align-items: center;\n justify-content: center;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel .carousel-item .carousel-item-content .step-name {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 400;\n font-size: 12px;\n line-height: 17px;\n letter-spacing: 0.4px;\n color: #303030;\n padding: 0 25px 0 8px;\n text-align: left;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel .carousel-item .carousel-item-content .step-image svg {\n width: 28.5557861328px;\n height: 29.4137878418px;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel-dots {\n display: flex;\n flex-direction: row;\n gap: 8px;\n justify-content: center;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel-dots .dot:not(.active) {\n filter: grayscale(1) opacity(0.25);\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel-dots .dot svg {\n height: 20px;\n width: 6px;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .terms-container {\n gap: 8px;\n display: flex;\n flex-direction: column;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .terms-container .terms {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 400;\n font-size: 9px;\n line-height: 12px;\n letter-spacing: 0.2px;\n text-align: center;\n color: #5e5e5e;\n margin: 0;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .terms-container .terms sup {\n vertical-align: super;\n font-size: 0.75em;\n padding-right: 2px;\n font-family: Satoshi, \"Open Sans\", sans-serif;\n position: unset;\n}\n.sezzle-checkout-modal-hidden.sezzle-five-pay .sezzle-modal .sezzle-modal-content .terms-container .terms a {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 400;\n font-size: 9px;\n line-height: 12px;\n letter-spacing: 0.2px;\n color: #8333d4;\n}\n.sezzle-checkout-modal-hidden.long-term .sezzle-modal {\n background-image: none;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n position: absolute;\n box-shadow: 0 10px 20px rgba(5, 31, 52, 0.19), 0 6px 6px rgba(5, 31, 52, 0.2);\n height: auto;\n max-height: 100%;\n width: 391px;\n color: #303030;\n font-family: Satoshi, \"Open Sans\", sans-serif;\n background-color: #ffffff;\n overflow: auto;\n padding: 20px 0;\n border-radius: 10px;\n box-sizing: border-box;\n gap: 16px;\n justify-items: center;\n}\n@media screen and (max-width: 768px) {\n .sezzle-checkout-modal-hidden.long-term .sezzle-modal {\n width: 100vw;\n height: 100vh;\n padding: 20px 0 2px 0;\n border-radius: 0px;\n }\n}\n.sezzle-checkout-modal-hidden.long-term .sezzle-modal div button.close-sezzle-modal {\n position: absolute;\n right: 16px;\n top: 16px;\n width: 24px;\n height: 24px;\n opacity: 0.2;\n cursor: pointer;\n padding: 0;\n outline: 0;\n background: 0 0;\n border: none;\n box-shadow: none;\n}\n.sezzle-checkout-modal-hidden.long-term .sezzle-modal div button.close-sezzle-modal:hover {\n opacity: 1;\n}\n.sezzle-checkout-modal-hidden.long-term .sezzle-modal div button.close-sezzle-modal:focus {\n opacity: 0.5;\n}\n@media screen and (max-width: 600px) {\n .sezzle-checkout-modal-hidden.long-term .sezzle-modal div button.close-sezzle-modal {\n opacity: 0.8;\n }\n .sezzle-checkout-modal-hidden.long-term .sezzle-modal div button.close-sezzle-modal:focus {\n opacity: 1;\n }\n}\n.sezzle-checkout-modal-hidden.long-term .sezzle-modal div button.close-sezzle-modal::before {\n position: absolute;\n left: 10px;\n content: \" \";\n top: 0;\n transform: rotate(45deg);\n background-color: #5e5e5e;\n width: 2px;\n height: 15px;\n}\n.sezzle-checkout-modal-hidden.long-term .sezzle-modal div button.close-sezzle-modal::after {\n position: absolute;\n left: 10px;\n content: \" \";\n top: 0;\n transform: rotate(-45deg);\n background-color: #5e5e5e;\n width: 2px;\n height: 15px;\n}\n.sezzle-checkout-modal-hidden.long-term .sezzle-modal .sezzle-logo {\n display: block;\n width: 98px;\n background-image: url(https://media.sezzle.com/branding/2.0/Sezzle_Logo_FullColor.svg);\n background-repeat: no-repeat;\n background-position: 50%;\n height: 24px;\n margin: 10px auto 20px auto;\n}\n.sezzle-checkout-modal-hidden.long-term .sezzle-modal .sezzle-modal-content {\n height: auto;\n width: auto;\n text-align: center;\n padding: 0px 16px;\n}\n.sezzle-checkout-modal-hidden.long-term .sezzle-modal .sezzle-modal-content .sezzle-header {\n font-size: 24px;\n line-height: 30px;\n margin: 10px auto;\n font-weight: 700;\n}\n.sezzle-checkout-modal-hidden.long-term .sezzle-modal .sezzle-modal-content .sezzle-row {\n font-size: 15px;\n line-height: 20px;\n margin: 8px auto;\n}\n.sezzle-checkout-modal-hidden.long-term .sezzle-modal .sezzle-modal-content .sezzle-lt-payments {\n height: fit-content;\n margin: 20px auto;\n padding: 20px 0 0;\n border: 1px solid #e5e5e5;\n border-radius: 5px;\n max-width: 502px;\n display: block;\n flex-direction: column;\n align-items: center;\n padding: 0px;\n gap: 24px;\n font-family: Satoshi, \"Open Sans\", sans-serif;\n}\n.sezzle-checkout-modal-hidden.long-term .sezzle-modal .sezzle-modal-content .sezzle-lt-payments .sezzle-lt-payment-header {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-style: normal;\n font-weight: 600;\n font-size: 15px;\n line-height: 20px;\n display: block;\n align-items: center;\n text-align: center;\n padding: 15px;\n letter-spacing: -0.3px;\n border-bottom: 1px solid #e5e5e5;\n color: #303030;\n}\n.sezzle-checkout-modal-hidden.long-term .sezzle-modal .sezzle-modal-content .sezzle-lt-payments .sezzle-lt-payment-header span {\n font-size: 17px;\n line-height: 22px;\n font-weight: 700;\n}\n.sezzle-checkout-modal-hidden.long-term .sezzle-modal .sezzle-modal-content .sezzle-lt-payments .sezzle-lt-payment-options {\n font-size: 12px;\n line-height: 14px;\n margin: 0px 20px 0;\n padding: 20px 0px;\n border-bottom: 1px solid #e5e5e5;\n}\n.sezzle-checkout-modal-hidden.long-term .sezzle-modal .sezzle-modal-content .sezzle-lt-payments .sezzle-lt-payment-options .plan {\n display: flex;\n justify-content: space-between;\n padding-bottom: 10px;\n font-size: 12px;\n}\n.sezzle-checkout-modal-hidden.long-term .sezzle-modal .sezzle-modal-content .sezzle-lt-payments .sezzle-lt-payment-options .plan .monthly-amount span {\n font-size: 17px;\n line-height: 22px;\n color: #8333d4;\n font-weight: 600;\n letter-spacing: -0.3px;\n}\n.sezzle-checkout-modal-hidden.long-term .sezzle-modal .sezzle-modal-content .sezzle-lt-payments .sezzle-lt-payment-options .plan .monthly-amount .per-month {\n font-size: 13px;\n}\n.sezzle-checkout-modal-hidden.long-term .sezzle-modal .sezzle-modal-content .sezzle-lt-payments .sezzle-lt-payment-options .plan .term-length {\n border-radius: 100px;\n background: rgba(41, 211, 162, 0.1);\n color: #00804a;\n padding: 2px 8px;\n font-size: 12px;\n font-weight: 600;\n display: flex;\n align-items: center;\n}\n.sezzle-checkout-modal-hidden.long-term .sezzle-modal .sezzle-modal-content .sezzle-lt-payments .sezzle-lt-payment-options .plan-details {\n display: flex;\n justify-content: space-between;\n}\n.sezzle-checkout-modal-hidden.long-term .sezzle-modal .sezzle-modal-content .sezzle-lt-payments .sezzle-lt-payment-options .plan-details .adjusted-total {\n color: #5e5e5e;\n font-size: 12px;\n width: fit-content;\n text-align: left;\n font-weight: 400;\n line-height: 16px;\n}\n.sezzle-checkout-modal-hidden.long-term .sezzle-modal .sezzle-modal-content .sezzle-lt-payments .sezzle-lt-payment-options .plan-details .adjusted-total span {\n display: block;\n}\n.sezzle-checkout-modal-hidden.long-term .sezzle-modal .sezzle-modal-content .sezzle-lt-payments .sezzle-lt-payment-options .plan-details .interest-amount {\n color: #5e5e5e;\n font-size: 12px;\n width: fit-content;\n text-align: left;\n font-weight: 400;\n line-height: 16px;\n}\n.sezzle-checkout-modal-hidden.long-term .sezzle-modal .sezzle-modal-content .sezzle-lt-payments .sezzle-lt-payment-options .plan-details .interest-amount span {\n display: block;\n}\n.sezzle-checkout-modal-hidden.long-term .sezzle-modal .sezzle-modal-content .sezzle-lt-payments .sezzle-lt-payment-options .plan-details .sample-apr {\n color: #5e5e5e;\n font-size: 12px;\n width: fit-content;\n text-align: left;\n font-weight: 400;\n line-height: 16px;\n}\n.sezzle-checkout-modal-hidden.long-term .sezzle-modal .sezzle-modal-content .sezzle-lt-payments .sezzle-lt-payment-options .plan-details .sample-apr span {\n display: block;\n}\n.sezzle-checkout-modal-hidden.long-term .sezzle-modal .sezzle-modal-content .sezzle-lt-payments:last-child {\n border: none;\n}\n.sezzle-checkout-modal-hidden.long-term .sezzle-modal .sezzle-modal-content .details {\n font-size: 17px;\n line-height: 22px;\n margin: 16px auto;\n font-weight: 600;\n font-family: Satoshi, \"Open Sans\", sans-serif;\n letter-spacing: -0.3px;\n}\n.sezzle-checkout-modal-hidden.long-term .sezzle-modal .sezzle-modal-content .terms {\n font-style: normal;\n font-size: 11px;\n line-height: 13px;\n color: #5e5e5e;\n margin: 10px auto 0;\n padding: 12px 0 0;\n border-top: 1px solid #e5e5e5;\n text-align: center;\n font-family: Satoshi, \"Open Sans\", sans-serif !important;\n font-weight: 400;\n}\n.sezzle-checkout-modal-hidden.long-term .sezzle-modal .sezzle-modal-content .terms p {\n margin: 0 0 10px;\n}\n.sezzle-checkout-modal-hidden.long-term .sezzle-modal .sezzle-modal-content .terms p a {\n color: #8333d4;\n font-family: Satoshi, \"Open Sans\", sans-serif;\n text-decoration: underline;\n}\n.sezzle-checkout-modal-hidden.long-term .sezzle-modal .sezzle-modal-content .terms p a:hover {\n color: #af0fda;\n}";
1026
+ var css_248z = "@import url(\"https://fonts.cdnfonts.com/css/satoshi\");\n.sezzle-modal-open {\n position: fixed;\n top: 0;\n bottom: 0;\n right: 0;\n left: 0;\n}\n\n.sezzle-checkout-modal-lightbox * {\n vertical-align: baseline;\n box-sizing: border-box;\n line-height: normal;\n background-color: unset;\n box-shadow: unset;\n font-family: unset;\n color: unset;\n font-size: unset;\n font-weight: unset;\n padding: unset;\n border: unset;\n margin: unset;\n stroke: none;\n}\n\n.sezzle-checkout-modal-lightbox {\n display: none;\n position: fixed;\n top: 0;\n left: 0;\n z-index: 2147483647;\n background-color: rgba(5, 31, 52, 0.57);\n width: 100vw;\n height: 100vh;\n overflow-y: auto;\n overflow-x: hidden;\n color: unset;\n}\n.sezzle-checkout-modal-lightbox .sezzle-checkout-modal-hidden {\n transition: all 0.4s ease;\n margin-top: 0;\n}\n.sezzle-checkout-modal-lightbox .sezzle-checkout-modal {\n position: fixed;\n top: 50%;\n left: 50%;\n margin-top: -384px;\n margin-left: -325px;\n z-index: 99999998;\n background-color: #ffffff;\n box-shadow: 0 10px 20px rgba(5, 31, 52, 0.19), 0 6px 6px rgba(5, 31, 52, 0.2);\n border-radius: 20px;\n color: #303030;\n font-family: Satoshi, \"Open Sans\", sans-serif;\n transition: all 0.4s ease;\n width: 650px;\n}\n@media (max-width: 650px) {\n .sezzle-checkout-modal-lightbox .sezzle-checkout-modal {\n position: relative;\n top: 0px;\n left: 0px;\n padding: 50px 20px;\n margin: 0;\n border-radius: 0;\n height: 100%;\n font-size: 15px;\n max-width: 100%;\n min-width: 320px;\n overflow: auto;\n }\n}\n@media (max-height: 767px) and (min-width: 651px) {\n .sezzle-checkout-modal-lightbox .sezzle-checkout-modal {\n position: relative;\n top: 0px;\n left: 0px;\n margin: 20px auto;\n }\n}\n.sezzle-checkout-modal-lightbox .sezzle-checkout-modal h1 {\n font-size: 18px;\n text-align: center;\n margin: 0 auto;\n}\n@media (max-width: 450px) {\n .sezzle-checkout-modal-lightbox .sezzle-checkout-modal h1 .sezzle-checkout-modal h1 {\n font-size: 16px;\n }\n}\n.sezzle-checkout-modal-lightbox .sezzle-checkout-modal p {\n display: block;\n text-align: center;\n text-transform: none;\n font-size: 12pt;\n line-height: 25px;\n font-weight: 300;\n box-sizing: border-box;\n color: #5e5e5e;\n margin: 5px 0 !important;\n letter-spacing: 0.25px;\n}\n@media (max-width: 768px) {\n .sezzle-checkout-modal-lightbox .sezzle-checkout-modal p {\n text-align: center;\n }\n}\n@media (max-width: 450px) {\n .sezzle-checkout-modal-lightbox .sezzle-checkout-modal p {\n font-size: 11pt;\n text-align: center;\n letter-spacing: 0.5px;\n line-height: 18px;\n }\n}\n.sezzle-checkout-modal-lightbox .sezzle-checkout-modal p small {\n display: block;\n box-sizing: border-box;\n font-size: 11pt;\n opacity: 0.8;\n}\n@media (max-width: 450px) {\n .sezzle-checkout-modal-lightbox .sezzle-checkout-modal p small {\n font-size: 7.5pt;\n }\n}\n.sezzle-checkout-modal-lightbox .sezzle-checkout-modal a {\n display: block;\n margin: 4px auto 0;\n color: #17ce6a;\n font-size: 8pt;\n font-weight: 500;\n text-transform: lowercase;\n text-align: left;\n letter-spacing: 0.25px;\n text-decoration: none;\n transition: 0.15s;\n opacity: 0.65;\n}\n.sezzle-checkout-modal-lightbox .sezzle-checkout-modal a:hover {\n transition: 0.1s;\n opacity: 1;\n}\n.sezzle-checkout-modal-lightbox .sezzle-checkout-modal h2 {\n font-size: 18px;\n text-align: center;\n margin: 0 auto;\n color: unset;\n}\n@media (max-width: 768px) {\n .sezzle-checkout-modal-lightbox .sezzle-checkout-modal h2 {\n text-align: center;\n }\n}\n.sezzle-checkout-modal-lightbox .sezzle-checkout-modal h2 img {\n margin: 0 4px;\n display: inline-block;\n height: 30px !important;\n width: auto;\n position: relative;\n top: 6px;\n vertical-align: initial;\n}\n\n.sezzle-checkout-modal-hidden {\n width: 100%;\n height: 100%;\n -webkit-font-smoothing: antialiased;\n transition: all 0.4s ease;\n margin-top: 0;\n}\n@media screen and (min-width: 0px) and (max-width: 280px) {\n .sezzle-checkout-modal-hidden {\n display: none;\n }\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal {\n width: 358px;\n border-radius: 10px;\n padding: 16px;\n gap: 10px;\n background-color: #f4f4f4;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n position: absolute;\n box-shadow: 0 10px 20px rgba(5, 31, 52, 0.19), 0 6px 6px rgba(5, 31, 52, 0.2);\n height: auto;\n max-height: 100%;\n color: #303030;\n font-family: Satoshi, \"Open Sans\", sans-serif;\n overflow: auto;\n box-sizing: border-box;\n justify-items: center;\n}\n@media screen and (max-width: 768px) {\n .sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal {\n width: 100vw;\n height: 100vh;\n padding: 20px 0 2px 0;\n border-radius: 0px;\n }\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal button.close-sezzle-modal {\n position: absolute;\n right: 16px;\n top: 16px;\n width: 24px;\n height: 24px;\n opacity: 0.2;\n cursor: pointer;\n padding: 0;\n outline: 0;\n background: 0 0;\n border: none;\n box-shadow: none;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal button.close-sezzle-modal:hover {\n opacity: 1;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal button.close-sezzle-modal:focus {\n opacity: 0.5;\n}\n@media screen and (max-width: 600px) {\n .sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal button.close-sezzle-modal {\n opacity: 0.8;\n }\n .sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal button.close-sezzle-modal:focus {\n opacity: 1;\n }\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal button.close-sezzle-modal::before {\n position: absolute;\n left: 10px;\n content: \" \";\n top: 0;\n transform: rotate(45deg);\n background-color: #5e5e5e;\n width: 2px;\n height: 15px;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal button.close-sezzle-modal::after {\n position: absolute;\n left: 10px;\n content: \" \";\n top: 0;\n transform: rotate(-45deg);\n background-color: #5e5e5e;\n width: 2px;\n height: 15px;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-logo {\n display: block;\n height: 29.39px;\n width: 120px;\n margin: 10px auto 0;\n background-image: url(https://media.sezzle.com/branding/2.0/Sezzle_Logo_FullColor.svg);\n background-repeat: no-repeat;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content {\n display: flex;\n flex-direction: column;\n gap: 8px;\n width: 326px;\n justify-items: center;\n margin: auto;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .trusted {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 400;\n font-size: 11px;\n line-height: 17px;\n letter-spacing: 0.2px;\n color: #5e5e5e;\n margin: 8px auto 0;\n text-align: center;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .sezzle-header {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 700;\n font-size: 21px;\n line-height: 28px;\n letter-spacing: 0.1px;\n text-align: center;\n color: #303030;\n margin: auto;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .sample-payments {\n display: flex;\n justify-content: space-between;\n padding: 0 16px;\n margin: 8px auto;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .sample-payments.sezzle-multi-plan-fr {\n padding: 0;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .sample-payments .sample-payments-title {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 400;\n font-size: 15px;\n line-height: 21px;\n letter-spacing: 0.15px;\n text-align: center;\n color: #303030;\n align-content: center;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .sample-payments .input-amount-container {\n width: min-content;\n height: 58px;\n border-radius: 10px;\n padding: 0 16px;\n align-content: center;\n border: 1px solid #767676;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .sample-payments .input-amount-container .input-amount-label {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 500;\n font-size: 12px;\n line-height: 17px;\n letter-spacing: 0.4px;\n vertical-align: middle;\n color: #5e5e5e;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .sample-payments .input-amount-container .input-amount {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 500;\n font-size: 15px;\n line-height: 21px;\n letter-spacing: 0.15px;\n vertical-align: middle;\n color: #303030;\n width: 75px;\n background: none;\n border: none;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .sample-payments .input-amount-container .input-amount:focus-visible {\n outline: none;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .sample-payments .input-amount-container .input-amount.input-error {\n color: #d32f2f;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .sample-payments .input-amount-container:focus-within {\n border: 2px solid #af0fda;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .sample-payments .input-amount-container.input-error {\n border: 2px solid #d32f2f;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards {\n border-radius: 10px;\n background-color: #ffffff;\n margin-top: 8px;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card {\n gap: 8px;\n padding: 16px;\n display: flex;\n flex-direction: column;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card:not(:last-child) {\n border-bottom: 2px solid #f4f4f4;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .plan-summary .purple {\n display: flex;\n justify-content: space-between;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .plan-summary .purple .left {\n text-align: left;\n display: flex;\n flex-direction: row;\n gap: 6px;\n align-items: anchor-center;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .plan-summary .purple .left .price {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 700;\n font-size: 17px;\n line-height: 23px;\n letter-spacing: 0.2px;\n color: #8333d4;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .plan-summary .purple .left .due {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 700;\n font-size: 15px;\n line-height: 21px;\n letter-spacing: 0.15px;\n color: #8333d4;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .plan-summary .purple .right {\n width: fit-content;\n border-radius: 24px;\n height: fit-content;\n padding: 4px 10px;\n background-color: #f9f5fd;\n align-items: center;\n display: flex;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .plan-summary .purple .right .pill {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 500;\n font-size: 12px;\n line-height: 17px;\n letter-spacing: 0.4px;\n color: #8333d4;\n width: fit-content;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .plan-summary .purple .right .pill sup {\n vertical-align: super;\n font-size: 0.6em;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .plan-summary .grey {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 400;\n font-size: 12px;\n line-height: 17px;\n letter-spacing: 0.4px;\n color: #5e5e5e;\n text-align: left;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .payment-breakdown {\n display: flex;\n justify-content: center;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .payment-breakdown .installment {\n width: -webkit-fill-available;\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .payment-breakdown .installment .graphic {\n display: flex;\n justify-content: space-between;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .payment-breakdown .installment .graphic .dash {\n display: flex;\n align-items: center;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .payment-breakdown .installment .graphic .dot {\n display: flex;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .payment-breakdown .installment .graphic .dot svg {\n width: 16px;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .payment-breakdown .installment .detail .amount {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 500;\n font-size: 12px;\n line-height: 17px;\n letter-spacing: 0.4px;\n text-align: center;\n color: #5e5e5e;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .payment-breakdown .installment .detail .due {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 400;\n font-size: 11px;\n line-height: 17px;\n letter-spacing: 0.2px;\n text-align: center;\n color: #5e5e5e;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .payment-breakdown .installment .detail.first-installment .amount {\n font-weight: 700;\n color: #303030;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .payment-breakdown .installment .detail.first-installment .due {\n color: #303030;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .monthly-plan-details {\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .monthly-plan-details .monthly-detail-row {\n display: flex;\n flex-direction: column;\n width: -webkit-fill-available;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .monthly-plan-details .monthly-detail-row .detail-label {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 400;\n font-size: 12px;\n line-height: 17px;\n letter-spacing: 0.4px;\n color: #5e5e5e;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .payment-card .monthly-plan-details .monthly-detail-row .detail-value {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 500;\n font-size: 12px;\n line-height: 17px;\n letter-spacing: 0.4px;\n color: #303030;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .features-accordion {\n display: flex;\n flex-direction: column;\n gap: 8px;\n padding: 11px 16px 16px;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .features-accordion .accordion-title-bar {\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n align-items: anchor-center;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .features-accordion .accordion-title-bar .accordion-title {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-style: normal;\n font-weight: 500;\n font-size: 12px;\n line-height: 17px;\n letter-spacing: 0.4px;\n color: #303030;\n height: fit-content;\n align-content: center;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .features-accordion .accordion-title-bar .accordion-icon {\n background: none;\n border: none;\n cursor: pointer;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .features-accordion .accordion-title-bar .accordion-icon svg {\n width: 12px;\n height: 7px;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .features-accordion .features-drawer {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .features-accordion .features-drawer .single-feature {\n display: flex;\n flex-direction: row;\n gap: 4px;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .features-accordion .features-drawer .single-feature div {\n align-content: center;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .features-accordion .features-drawer .single-feature svg {\n width: 13.333px;\n height: 13.333px;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .payment-plan-wrapper .payment-cards .features-accordion .features-drawer .single-feature span {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 400;\n font-size: 12px;\n line-height: 17px;\n letter-spacing: 0.4px;\n color: #303030;\n text-align: left;\n align-self: anchor-center;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .how-to-sezzle {\n display: flex;\n flex-direction: column;\n padding-top: 8px;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel-header {\n display: flex;\n justify-content: space-between;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel-header .how-to-text-wrapper {\n gap: 4px;\n display: flex;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel-header .how-to-text-wrapper .how-to-text {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 500;\n font-size: 13px;\n line-height: 17px;\n letter-spacing: 0.4px;\n color: #303030;\n align-content: center;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel-header .how-to-text-wrapper .how-to-logo {\n display: flex;\n align-items: center;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel-header .how-to-text-wrapper .how-to-logo img {\n margin: 0;\n background: none;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel-header .arrows {\n gap: 4px;\n display: flex;\n flex-direction: row;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel-header .arrows .arrow {\n background: none;\n border: none;\n cursor: pointer;\n padding: 0;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel-header .arrows .arrow.disabled {\n filter: grayscale(1) opacity(0.5);\n cursor: default;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel-header .arrows .arrow svg {\n width: 24px;\n height: 24px;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel {\n gap: 8px;\n display: flex;\n flex-direction: row;\n overflow: hidden;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel.position-1 {\n justify-content: start;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel.position-2 {\n justify-content: center;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel.position-3 {\n justify-content: end;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel .carousel-item {\n border-radius: 10px;\n padding: 16px 12px;\n background-color: #ffffff;\n display: flex;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel .carousel-item .carousel-item-content {\n width: 260px;\n display: flex;\n flex-direction: row;\n align-items: center;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel .carousel-item .carousel-item-content .step-number {\n height: 20px;\n border-radius: 31.04px;\n padding: 0 2.47px;\n background-color: #f9f5fd;\n display: flex;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel .carousel-item .carousel-item-content .step-number .step-number-content {\n display: flex;\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 500;\n font-size: 12px;\n line-height: 17px;\n letter-spacing: 0.4px;\n color: #8333d4;\n width: 17px;\n align-items: center;\n justify-content: center;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel .carousel-item .carousel-item-content .step-name {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 400;\n font-size: 12px;\n line-height: 17px;\n letter-spacing: 0.4px;\n color: #303030;\n padding: 0 25px 0 8px;\n text-align: left;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel .carousel-item .carousel-item-content .step-image svg {\n width: 28.5557861328px;\n height: 29.4137878418px;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel-dots {\n display: flex;\n flex-direction: row;\n gap: 8px;\n justify-content: center;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel-dots .dot:not(.active) {\n filter: grayscale(1) opacity(0.25);\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .how-to-sezzle .carousel-dots .dot svg {\n height: 20px;\n width: 6px;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .terms-container {\n gap: 8px;\n display: flex;\n flex-direction: column;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .terms-container .terms {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 400;\n font-size: 9px;\n line-height: 12px;\n letter-spacing: 0.2px;\n text-align: center;\n color: #5e5e5e;\n margin: 0;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .terms-container .terms sup {\n vertical-align: super;\n font-size: 0.75em;\n padding-right: 2px;\n font-family: Satoshi, \"Open Sans\", sans-serif;\n position: unset;\n}\n.sezzle-checkout-modal-hidden.sezzle-multi-plan .sezzle-modal .sezzle-modal-content .terms-container .terms a {\n font-family: Satoshi, \"Open Sans\", sans-serif;\n font-weight: 400;\n font-size: 9px;\n line-height: 12px;\n letter-spacing: 0.2px;\n color: #8333d4;\n}\n@media screen and (max-width: 768px) {\n .sezzle-checkout-modal-hidden.sezzle-multi-plan.pi4-only .sezzle-modal {\n border-radius: 10px;\n height: auto;\n padding: 20px 0;\n }\n}";
897
1027
  styleInject(css_248z);
898
1028
 
899
1029
  function _typeof$2(o) { "@babel/helpers - typeof"; return _typeof$2 = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof$2(o); }
1030
+ function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
1031
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
1032
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
1033
+ function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
1034
+ function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
1035
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
900
1036
  function ownKeys$2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
901
1037
  function _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t), !0).forEach(function (r) { _defineProperty$2(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
902
1038
  function _classCallCheck$2(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
@@ -923,12 +1059,22 @@ var Modal = /*#__PURE__*/function (_React$Component) {
923
1059
  isModalVisible: isModalVisible
924
1060
  }));
925
1061
 
926
- // Reset carousel position when PI5 modal is opened
927
- if (isModalVisible && _this.props.modalType !== 'afterpay') {
928
- var isPI5Modal = !isProductEligibleLT(_this.props.price, _this.props.minPriceLT, _this.props.maxPrice) && _this.props.numberOfPayments === 5;
929
- if (isPI5Modal && _this.state.modalElement) {
930
- handleCarousel(_this.state.modalElement);
931
- }
1062
+ // On open: reset input + cards to the current props.price (covers both
1063
+ // stale typed input from a prior open and runtime price prop changes),
1064
+ // and reset the carousel to the first slide.
1065
+ if (isModalVisible && _this.props.modalType !== 'afterpay' && _this.state.modalElement) {
1066
+ resetMultiPlanModal(_this.state.modalElement, _this.props.price, {
1067
+ minPrice: _this.props.minPrice,
1068
+ maxPrice: _this.props.maxPrice,
1069
+ minPriceLT: _this.props.minPriceLT,
1070
+ maxPriceLT: _this.props.maxPriceLT,
1071
+ minAPR: _this.props.minAPR,
1072
+ medianAPR: _this.props.medianAPR,
1073
+ maxAPR: _this.props.maxAPR,
1074
+ termsToShow: _this.props.termsToShow,
1075
+ numberOfPayments: _this.props.numberOfPayments
1076
+ });
1077
+ handleCarousel(_this.state.modalElement);
932
1078
  }
933
1079
  }
934
1080
  });
@@ -947,17 +1093,23 @@ var Modal = /*#__PURE__*/function (_React$Component) {
947
1093
  value: function componentDidMount() {
948
1094
  var _this2 = this;
949
1095
  document.querySelector('html').appendChild(this.state.modalElement);
950
- var sezzleModal;
951
- if (this.props.modalType === 'afterpay') {
952
- sezzleModal = document.querySelector('.sezzle-ap-modal');
953
- } else {
954
- sezzleModal = document.querySelector('.sezzle-modal');
1096
+
1097
+ // Scope queries to this Modal instance's element so handlers don't bleed
1098
+ // across Sezzle/Afterpay modal instances when both are rendered.
1099
+ var sezzleModal = this.state.modalElement.querySelector(this.props.modalType === 'afterpay' ? '.sezzle-ap-modal' : '.sezzle-modal');
1100
+ if (sezzleModal) {
1101
+ sezzleModal.addEventListener('click', function (event) {
1102
+ return event.stopPropagation();
1103
+ });
955
1104
  }
956
- sezzleModal.addEventListener('click', function (event) {
957
- return event.stopPropagation();
1105
+
1106
+ // Include modalElement itself plus any descendants carrying the
1107
+ // close-sezzle-modal class (the overlay <section> and the X button).
1108
+ var closeTargets = [this.state.modalElement].concat(_toConsumableArray(this.state.modalElement.querySelectorAll('.close-sezzle-modal'))).filter(function (el) {
1109
+ return el.classList.contains('close-sezzle-modal');
958
1110
  });
959
- document.querySelectorAll('.close-sezzle-modal').length && document.querySelectorAll('.close-sezzle-modal').forEach(function (modal) {
960
- return modal.addEventListener('click', function (event) {
1111
+ closeTargets.forEach(function (el) {
1112
+ return el.addEventListener('click', function (event) {
961
1113
  return _this2.modalCloseHandler(event);
962
1114
  });
963
1115
  });
@@ -977,22 +1129,24 @@ var Modal = /*#__PURE__*/function (_React$Component) {
977
1129
  value: function getDerivedStateFromProps(props, state) {
978
1130
  if (!state.modalElement) {
979
1131
  var modalElement = document.createElement('div');
980
- switch (props.modalType) {
981
- case 'afterpay':
982
- if (document.querySelector('.sezzle-ap-modal')) {
983
- modalElement = document.querySelector('.sezzle-ap-modal');
984
- break;
985
- }
1132
+ if (props.modalType === 'afterpay') {
1133
+ if (document.querySelector('.sezzle-ap-modal')) {
1134
+ modalElement = document.querySelector('.sezzle-ap-modal');
1135
+ } else {
986
1136
  getAPModal(modalElement);
987
- break;
988
- default:
989
- if (isProductEligibleLT(props.price, props.minPriceLT, props.maxPrice)) {
990
- getLongTermModal(modalElement, props.price, props.bestAPR);
991
- } else if (props.numberOfPayments === 5) {
992
- getPI5Modal(modalElement, props.price, props.minPriceLT, props.maxPrice, props.bestAPR);
993
- } else {
994
- getStandardModal(modalElement, props.minPrice, props.maxPrice);
995
- }
1137
+ }
1138
+ } else {
1139
+ getMultiPlanModal(modalElement, props.price, {
1140
+ minPrice: props.minPrice,
1141
+ maxPrice: props.maxPrice,
1142
+ minPriceLT: props.minPriceLT,
1143
+ maxPriceLT: props.maxPriceLT,
1144
+ minAPR: props.minAPR,
1145
+ medianAPR: props.medianAPR,
1146
+ maxAPR: props.maxAPR,
1147
+ termsToShow: props.termsToShow,
1148
+ numberOfPayments: props.numberOfPayments
1149
+ });
996
1150
  }
997
1151
  state = _objectSpread$2(_objectSpread$2({}, state), {}, {
998
1152
  modalElement: modalElement
@@ -1012,7 +1166,11 @@ Modal.propTypes = {
1012
1166
  minPrice: PropTypes.number,
1013
1167
  maxPrice: PropTypes.number,
1014
1168
  minPriceLT: PropTypes.number,
1015
- bestAPR: PropTypes.number
1169
+ maxPriceLT: PropTypes.number,
1170
+ minAPR: PropTypes.number,
1171
+ medianAPR: PropTypes.number,
1172
+ maxAPR: PropTypes.number,
1173
+ termsToShow: PropTypes.object
1016
1174
  };
1017
1175
 
1018
1176
  function _typeof$1(o) { "@babel/helpers - typeof"; return _typeof$1 = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof$1(o); }
@@ -1031,11 +1189,6 @@ function _isNativeReflectConstruct$1() { try { var t = !Boolean.prototype.valueO
1031
1189
  function _getPrototypeOf$1(t) { return _getPrototypeOf$1 = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { return t.__proto__ || Object.getPrototypeOf(t); }, _getPrototypeOf$1(t); }
1032
1190
  function _inherits$1(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && _setPrototypeOf$1(t, e); }
1033
1191
  function _setPrototypeOf$1(t, e) { return _setPrototypeOf$1 = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf$1(t, e); }
1034
- var translationsMap = {
1035
- en: enTranslations,
1036
- fr: frTranslations,
1037
- es: esTranslations
1038
- };
1039
1192
  var SezzleWidgetText = /*#__PURE__*/function (_React$Component) {
1040
1193
  function SezzleWidgetText(props) {
1041
1194
  var _this;
@@ -1061,30 +1214,42 @@ var SezzleWidgetText = /*#__PURE__*/function (_React$Component) {
1061
1214
  'white-flat': 'https://media.sezzle.com/branding/2.0/Sezzle_Logo_WhiteAlt.svg'
1062
1215
  };
1063
1216
  var language = getLanguage();
1064
- var translations = translationsMap[language];
1217
+ var translations = getTranslations(language);
1065
1218
  var priceFloat = parsePrice(parsePriceString(this.state.config.price));
1066
- var widgetTemplate = '';
1067
- if (priceFloat > this.state.config.maxPrice) {
1219
+ var includeAPModal = !!this.state.config.includeAPModal;
1220
+ var minPriceLT = this.state.config.minPriceLT || 0;
1221
+ var ltEnabled = minPriceLT > 0;
1222
+ var upperBound = ltEnabled ? this.state.config.maxPriceLT : this.state.config.maxPrice;
1223
+ if (priceFloat <= 0 || priceFloat > upperBound) {
1068
1224
  return;
1069
- } else if (isProductEligibleLT(parsePriceString(this.state.config.price), this.state.config.minPriceLT, this.state.config.maxPrice)) {
1225
+ }
1226
+
1227
+ // <$50 forces 4-installment messaging (PI5 minimum is $50). At or above
1228
+ // $50, honor the config: 4 if explicitly set, otherwise 5.
1229
+ var effectiveNumberOfPayments = priceFloat >= PI5_MIN_PRICE && this.state.config.numberOfPayments !== 4 ? 5 : 4;
1230
+ var widgetTemplate;
1231
+ if (ltEnabled && priceFloat >= minPriceLT) {
1070
1232
  widgetTemplate = translations.longTerm;
1071
- } else if (this.state.config.numberOfPayments === 5 && this.state.config.includeAPModal) {
1233
+ } else if (effectiveNumberOfPayments === 5 && includeAPModal) {
1072
1234
  widgetTemplate = translations.dualInstall;
1073
1235
  } else {
1074
1236
  widgetTemplate = translations.widget;
1075
1237
  }
1238
+
1239
+ // Resolve curly-brace placeholders to plain strings before splitting on
1240
+ // %% for component substitution. Empty when the feature is off.
1241
+ var apDualInstallText = includeAPModal ? translations.apDualInstall : '';
1242
+ var thresholdPriceText = this.state.config.minPrice > 0 && priceFloat < this.state.config.minPrice ? translations.thresholdPrice.replace('%%min-price%%', "$".concat(this.state.config.minPrice)) : '';
1243
+ widgetTemplate = widgetTemplate.replace('{numberOfPayments}', effectiveNumberOfPayments).replace('{apDualInstallText}', apDualInstallText).replace('{thresholdPriceText}', thresholdPriceText);
1076
1244
  var subtemplates = [];
1077
1245
  widgetTemplate.split('%%').forEach(function (subTemplate, index) {
1078
1246
  switch (subTemplate) {
1079
- case 'numberOfPayments':
1080
- subtemplates.push(_this2.state.config.numberOfPayments);
1081
- break;
1082
1247
  case 'price':
1083
1248
  // eslint-disable-next-line no-case-declarations
1084
1249
  var priceElement = /*#__PURE__*/React.createElement("span", {
1085
1250
  className: "sezzle-payment-amount sezzle-button-text",
1086
1251
  key: index
1087
- }, getFormattedPrice(_this2.state.config.price, _this2.state.config.numberOfPayments, _this2.state.config.minPriceLT, _this2.state.config.maxPrice, _this2.state.config.bestAPR));
1252
+ }, getFormattedPrice(_this2.state.config.price, effectiveNumberOfPayments, _this2.state.config.minPriceLT, _this2.state.config.maxPriceLT, _this2.state.config.medianAPR, _this2.state.config.termsToShow));
1088
1253
  subtemplates.push(priceElement);
1089
1254
  break;
1090
1255
  case 'logo':
@@ -1108,6 +1273,8 @@ var SezzleWidgetText = /*#__PURE__*/function (_React$Component) {
1108
1273
  subtemplates.push(logoElement);
1109
1274
  break;
1110
1275
  case 'info':
1276
+ // eslint-disable-next-line no-case-declarations
1277
+ var iconSize = _this2.state.config.fontSize || 14;
1111
1278
  // eslint-disable-next-line no-case-declarations
1112
1279
  var infoElement = /*#__PURE__*/React.createElement("div", {
1113
1280
  "aria-label": "".concat(translations.clickToLearnMore),
@@ -1115,34 +1282,37 @@ var SezzleWidgetText = /*#__PURE__*/function (_React$Component) {
1115
1282
  key: index,
1116
1283
  onClick: function onClick() {
1117
1284
  return _this2.openModal('sezzle');
1118
- }
1119
- }, "\u24D8");
1285
+ },
1286
+ role: "button"
1287
+ }, /*#__PURE__*/React.createElement("svg", {
1288
+ width: iconSize,
1289
+ height: iconSize,
1290
+ viewBox: "0 0 14 14",
1291
+ fill: "none",
1292
+ xmlns: "http://www.w3.org/2000/svg",
1293
+ "aria-hidden": "true"
1294
+ }, /*#__PURE__*/React.createElement("path", {
1295
+ fillRule: "evenodd",
1296
+ clipRule: "evenodd",
1297
+ d: "M7 0C3.13 0 0 3.13 0 7s3.13 7 7 7 7-3.13 7-7-3.13-7-7-7zm0 12.6A5.6 5.6 0 1 1 7 1.4a5.6 5.6 0 0 1 0 11.2zM6.3 3.5h1.4v1.4H6.3V3.5zm0 2.8h1.4v4.2H6.3V6.3z",
1298
+ fill: "currentColor"
1299
+ })));
1120
1300
  subtemplates.push(infoElement);
1121
1301
  break;
1122
- case 'afterpay':
1123
- if (_this2.state.config.includeAPModal) {
1124
- subtemplates.push("".concat(translations.or));
1125
- var apLogo = /*#__PURE__*/React.createElement("img", {
1126
- className: "sezzle-ap-logo ap-modal-info-link no-sezzle-info",
1127
- src: 'https://media.sezzle.com/sezzle-credit-website-assets/ap-badge-black-on-mint.svg',
1128
- onClick: function onClick(event) {
1129
- event.stopPropagation();
1130
- _this2.openModal('afterpay');
1131
- },
1132
- key: index,
1133
- alt: "Afterpay"
1134
- });
1135
- subtemplates.push(apLogo);
1136
- }
1302
+ case 'afterpay-logo':
1303
+ // eslint-disable-next-line no-case-declarations
1304
+ var apLogo = /*#__PURE__*/React.createElement("img", {
1305
+ className: "sezzle-ap-logo ap-modal-info-link no-sezzle-info",
1306
+ src: 'https://media.sezzle.com/sezzle-credit-website-assets/ap-badge-black-on-mint.svg',
1307
+ onClick: function onClick(event) {
1308
+ event.stopPropagation();
1309
+ _this2.openModal('afterpay');
1310
+ },
1311
+ key: index,
1312
+ alt: "Afterpay"
1313
+ });
1314
+ subtemplates.push(apLogo);
1137
1315
  break;
1138
- case 'min-price':
1139
- {
1140
- var _priceFloat = parsePrice(parsePriceString(_this2.state.config.price));
1141
- if (_this2.state.config.minPrice > _priceFloat && !_this2.state.config.includeAPModal) {
1142
- subtemplates.push(" ".concat(translations.thresholdPrice, " $").concat(_this2.state.config.minPrice));
1143
- }
1144
- break;
1145
- }
1146
1316
  default:
1147
1317
  subtemplates.push(subTemplate);
1148
1318
  }
@@ -1203,7 +1373,11 @@ var SezzleWidgetText = /*#__PURE__*/function (_React$Component) {
1203
1373
  minPrice: _this3.state.config.minPrice,
1204
1374
  maxPrice: _this3.state.config.maxPrice,
1205
1375
  minPriceLT: _this3.state.config.minPriceLT,
1206
- bestAPR: _this3.state.config.bestAPR,
1376
+ maxPriceLT: _this3.state.config.maxPriceLT,
1377
+ minAPR: _this3.state.config.minAPR,
1378
+ medianAPR: _this3.state.config.medianAPR,
1379
+ maxAPR: _this3.state.config.maxAPR,
1380
+ termsToShow: _this3.state.config.termsToShow,
1207
1381
  price: _this3.state.config.price,
1208
1382
  numberOfPayments: _this3.state.config.numberOfPayments
1209
1383
  });
@@ -1245,15 +1419,31 @@ var SezzleWidgetWrapper = /*#__PURE__*/function (_React$Component) {
1245
1419
  var _this;
1246
1420
  _classCallCheck(this, SezzleWidgetWrapper);
1247
1421
  _this = _callSuper(this, SezzleWidgetWrapper, [props]);
1422
+ // Resolve LT options from the LTgroup alias preset, overlaid with any
1423
+ // explicitly-set LT props. Returns a fully-disabled config when neither
1424
+ // LTgroup nor minPriceLT is provided.
1425
+ var ltConfig = resolveLTConfig({
1426
+ LTgroup: _this.props.LTgroup,
1427
+ minPriceLT: _this.props.minPriceLT,
1428
+ maxPriceLT: _this.props.maxPriceLT,
1429
+ minAPR: _this.props.minAPR,
1430
+ medianAPR: _this.props.medianAPR,
1431
+ maxAPR: _this.props.maxAPR,
1432
+ termsToShow: _this.props.termsToShow
1433
+ });
1248
1434
  _this.state = {
1249
1435
  sezzleConfig: {
1250
1436
  price: _this.props.price || 0,
1251
1437
  merchantId: _this.props.merchantId || '',
1252
1438
  includeAPModal: _this.props.includeAPModal || false,
1253
- minPrice: _this.props.minPrice || 20,
1439
+ minPrice: _this.props.minPrice || 0,
1254
1440
  maxPrice: _this.props.maxPrice || 2500,
1255
- minPriceLT: _this.props.minPriceLT || 0,
1256
- bestAPR: _this.props.bestAPR || 9.99,
1441
+ minPriceLT: ltConfig.minPriceLT,
1442
+ maxPriceLT: ltConfig.maxPriceLT,
1443
+ minAPR: ltConfig.minAPR,
1444
+ medianAPR: ltConfig.medianAPR,
1445
+ maxAPR: ltConfig.maxAPR,
1446
+ termsToShow: ltConfig.termsToShow,
1257
1447
  theme: _this.props.theme || 'light',
1258
1448
  alignment: _this.props.alignment || 'auto',
1259
1449
  fontWeight: _this.props.fontWeight || 500,
@@ -1303,8 +1493,13 @@ SezzleWidgetWrapper.propTypes = {
1303
1493
  logoSize: PropTypes.number,
1304
1494
  minPrice: PropTypes.number,
1305
1495
  maxPrice: PropTypes.number,
1496
+ LTgroup: PropTypes.string,
1306
1497
  minPriceLT: PropTypes.number,
1307
- bestAPR: PropTypes.number,
1498
+ maxPriceLT: PropTypes.number,
1499
+ minAPR: PropTypes.number,
1500
+ medianAPR: PropTypes.number,
1501
+ maxAPR: PropTypes.number,
1502
+ termsToShow: PropTypes.object,
1308
1503
  includeAPModal: PropTypes.bool,
1309
1504
  numberOfPayments: PropTypes.number
1310
1505
  };