Hvordan fastsætter man den faste og variable løn for en sælger ?

Vælg den rette salgsstatus: ansat eller selvstændig ?

Valget af salgsmedarbejderens status er et strategisk skridt for virksomheden, som direkte påvirker lønnen, skattebyrden, ansvarsområderne og evnen til at tilpasse sig vækst. De to hovedmuligheder er lønnet salgsmedarbejder og selvstændig salgsmedarbejder, fx som salgsagent eller fuldmægtig.

Simulering : Fast og variabel løn for en salgsmedarbejder

Ansat salgsmedarbejder Selvstændig salgsagent
Absolut (fast sats) Progressiv (trin) På bruttomarginen
/* Ce script simule le calcul du salaire fixe et variable d’un commercial, selon plusieurs modèles de commission (absolue, progressive, sur la marge), statut (salarié/indépendant), volume de ventes et primes. Il affiche un camembert visuel pour une répartition claire. Toutes les chaînes sont en français, facilement éditables. Sans dépendance externe, performant et accessible. */ /** * Affichage dynamique des blocs selon le choix du modèle de commission */ function switchBlocCommission() { const mode = document.getElementById(‘commission-modele’).value; document.getElementById(‘bloc-absolue’).classList.toggle(“hidden”, mode !== ‘absolue’); document.getElementById(‘bloc-progressive’).classList.toggle(“hidden”, mode !== ‘progressive’); document.getElementById(‘bloc-marge’).classList.toggle(“hidden”, mode !== ‘marge’); } document.getElementById(‘commission-modele’).addEventListener(‘change’, switchBlocCommission); /** * Affichage du bloc salaire fixe pour salarié uniquement */ document.getElementById(‘statut’).addEventListener(‘change’, e => { document.getElementById(‘bloc-fixe’).classList.toggle(“hidden”, e.target.value !== ‘salarie’); }); /** * Calcul de la commission selon le mode */ function calculCommission(mode, params) { let commission = 0; // Absolue : taux fixe % sur CA if (mode === ‘absolue’) { const tx = Number(params.taux) || 0; const ca = Number(params.ca) || 0; commission = ca * tx / 100; } // Progressive : palier avec deux taux else if (mode === ‘progressive’) { const seuil = Number(params.palierMontant) || 0; const tx1 = Number(params.palierTaux1) || 0; const tx2 = Number(params.palierTaux2) || 0; const ca = Number(params.ca) || 0; if (ca (v-0.25) * 2 * Math.PI; const start = angle(from); const end = angle(to); const x1 = cx + radius * Math.cos(start); const y1 = cy + radius * Math.sin(start); const x2 = cx + radius * Math.cos(end); const y2 = cy + radius * Math.sin(end); const largeArc = (to-from) > 0.5 ? 1 : 0; return `M${cx},${cy} L${x1},${y1} A${radius},${radius} 0 ${largeArc} 1 ${x2},${y2} Z`; } // Les angles const a1 = p1, a2 = p1 + p2, a3 = 1.0; document.getElementById(“chart-salaire”).innerHTML = ( `
Tærte-diagram lønfordeling ${desc} ${v1>0?“:”} ${v2>0?“:”} ${v3>0?“:”} <ul class="space-y-2"> <li class="flex items-center gap-2"><span class="inline-block w-4 h-4 rounded-full"><span class="text-gray-700">Fast løn <span class="font-mono text-xs ml-2">${fixe.toLocaleString(‘fr-FR’)} € <li class="flex items-center gap-2"><span class="inline-block w-4 h-4 rounded-full"><span class="text-gray-700">Provisioner <span class="font-mono text-xs ml-2">${commission.toLocaleString(‘fr-FR’)} € <li class="flex items-center gap-2"><span class="inline-block w-4 h-4 rounded-full"><span class="text-gray-700">Bonusser <span class="font-mono text-xs ml-2">${primes.toLocaleString(‘fr-FR’)} € ` ); } /** * Gestion de l’évènement principal */ document.getElementById(‘calculer’).addEventListener(‘click’, function(){ // Saisie / Par défaut const statut = document.getElementById(“statut”).value; const salaireFixe = statut === “salarie” ? Number(document.getElementById(“salaire-fixe”).value) || 0 : 0; const ca = Number(document.getElementById(“volume”).value) || 0; const primes = Number(document.getElementById(“primes”).value) || 0; const mode = document.getElementById(“commission-modele”).value; // Récupération paramètres selon mode let commission = 0; if (mode === “absolue”) { commission = calculCommission(‘absolue’, { taux: document.getElementById(“commission-taux”).value, ca: ca }); } else if (mode === “progressive”) { commission = calculCommission(‘progressive’, { palierMontant: document.getElementById(“palier-montant”).value, palierTaux1: document.getElementById(“palier-taux1”).value, palierTaux2: document.getElementById(“palier-taux2”).value, ca: ca }); } else if (mode === “marge”) { commission = calculCommission(‘marge’, { taux : document.getElementById(“marge-taux”).value, marge : document.getElementById(“marge-brute”).value }); } // Résultat let total = salaireFixe + commission + primes; // Affichage document.getElementById(‘res-fixe’).textContent = `${salaireFixe.toLocaleString(‘fr-FR’)} €`; document.getElementById(‘res-commission’).textContent = `${commission.toLocaleString(‘fr-FR’)} €`; document.getElementById(‘res-primes’).textContent = `${primes.toLocaleString(‘fr-FR’)} €`; document.getElementById(‘res-total’).textContent = `${total.toLocaleString(‘fr-FR’)} €`; document.getElementById(‘resultats’).classList.remove(‘hidden’); afficheChart({fixe: salaireFixe, commission: commission, primes: primes}); }); // Initialisation à l’affichage switchBlocCommission(); <p class="wp-block-paragraph">Den lønnede salgsmedarbejder nyder godt af en tryg ramme: garanteret fast løn, sociale rettigheder (sygeforsikring, pension) og en vis stabilitet. Til gengæld har vedkommende mindre fleksibilitet i organiseringen af sit arbejde, og aflønningen er ofte mindre fleksibel. Lønnen for denne type sælger inkluderer typisk en fast løn kombineret med en variabel del baseret på præstation. Vedkommende er ofte integreret i et struktureret salgsteam, hvilket fremmer samhørighed og strategisk alignment.</p> <p class="wp-block-paragraph">I modsætning hertil fungerer den selvstændige, såsom salgsagenten, på kontraktbasis og bliver ofte betalt via provision eller bonusser. Denne status giver større fleksibilitet for virksomheden og muliggør hurtig tilpasning til markedets udvikling. Det indebærer dog også større behov for styring af den selvsstændiges administration, aflønning og præstationer. Den variable aflønning er dominerende og rettet mod præstation og faktisk salg.</p> <p class="wp-block-paragraph">Valget afhænger som regel af flere kriterier: virksomhedens størrelse, ressourcer, forventninger til fleksibilitet og ønsket grad af involvering. For en lille organisation i opstartsfasen kan en selvstændig sælger give den nødvendige smidighed til at teste markeder uden at øge de faste omkostninger. En stor virksomhed med en præcis ledelsesstrategi vil sandsynligvis foretrække ansatstatus for at styrke sammenhæng og kontrol.</p> <figure class="wp-block-table"><table><tbody><tr><th rowspan="1" colspan="1"><p>Kendetegn</p></th><th rowspan="1" colspan="1"><p>Lønnet sælger</p></th><th rowspan="1" colspan="1"><p>Selvstændig sælger</p></th></tr><tr><td rowspan="1" colspan="1"><p>Løn</p></td><td rowspan="1" colspan="1"><p>Fast + variabel</p></td><td rowspan="1" colspan="1"><p>Provisioner / bonusser</p></td></tr><tr><td rowspan="1" colspan="1"><p>Sociale omkostninger</p></td><td rowspan="1" colspan="1"><p>Betales af arbejdsgiver og medarbejder</p></td><td rowspan="1" colspan="1"><p></p></td></tr><tr><td rowspan="1" colspan="1"><p>Fleksibilitet</p></td><td rowspan="1" colspan="1"><p>Begrænset, standardiseret kontrakt</p></td><td rowspan="1" colspan="1"><p></p></td></tr><tr><td rowspan="1" colspan="1"><p>Involvering i styring</p></td><td rowspan="1" colspan="1"><p>Lav, styret af virksomheden</p></td><td rowspan="1" colspan="1"><p></p></td></tr><tr><td rowspan="1" colspan="1"><p>Tilpasningsevne</p></td><td rowspan="1" colspan="1"><p>Mindre fleksibel, tidsbegrænset eller fast kontrakt</p></td><td rowspan="1" colspan="1"><p></p></td></tr></tbody></table></figure> <h3 class="wp-block-heading">Nøgleforskelle mellem lønnet sælger og selvstændig salgsagent</h3> <p class="wp-block-paragraph">De grundlæggende forskelle ligger i det juridiske rammeværk, aflønningen og den daglige ledelse. Forholdet til virksomheden påvirker også motivation og engagement. Den selvstændige salgsagent arbejder ofte under en fuldmagtkontrakt, med frihed i organiseringen og en direkte afhængighed af præstation for sin indtjening. Hans/hendes resultat afhænger fuldstændigt af de provisioner, der udbetales, hvilket kan motivere til maksimal indsats, men også indebærer økonomisk risiko.</p> <p class="wp-block-paragraph">Derimod har den lønnede sælger et struktureret arbejdsmiljø og økonomisk stabilitet, men kan mangle autonomi. Håndteringen af aflønning, især den variable del, er mere reguleret og knyttet til teamets resultater. Beslutningen om at vælge den ene eller den anden status bør derfor baseres på virksomhedens forretningsmodel og modenhed.</p> <h4 class="wp-block-heading">Tilpas status efter forretningsmodel og virksomhedens modenhed</h4> <p class="wp-block-paragraph">En start-up med fokus på hurtig ekspansion vil måske foretrække selvstændige sælgere for at begrænse de faste omkostninger og teste forskellige markeder. Modne virksomheder med en robust organisation er mere tilbøjelige til at investere i lønnede sælgere for at sikre holdbarhed i teamet og strategisk sammenhæng.</p> <h3 class="wp-block-heading">Kriterier for valg: kompetencer, forventninger og nødvendig involvering</h3> <p class="wp-block-paragraph">Salgsmedarbejderens profil og forventninger spiller en central rolle i valg af status. En junior eller en, der er i læringsfasen, foretrækker ofte stabiliteten ved en fast løn med en moderat variabel del. Omvendt kan en erfaren profil med et stærkt netværk vælge selvstændighed og satse på provisioner for at maksimere indkomsten.</p> <p class="wp-block-paragraph">De nødvendige kompetencer skal også tages i betragtning: høj grad af selvstændighed, evne til at håndtere egne anliggender og stærke salgsevner er afgørende for en selvstændig. Motivationen bør også matche det forventede niveau af involvering: et salgsteam drevet af præstation vil have større interesse i en fleksibel, resultatorienteret ordning.</p> <h2 class="wp-block-heading">Variabel salgsaflønning: forstå provisioner og målsatte bonusser</h2> <p class="wp-block-paragraph">Den variable aflønning er et strategisk værktøj til at fremme salgspræstation. Den hviler hovedsageligt på to instrumenter: provision, som motiverer salg, og målsatte bonusser, som fokuserer på specifikke resultater. En grundig forståelse af deres virkemåde gør det muligt at tilpasse salgsstrategien til teamets motivation.</p> <h3 class="wp-block-heading">Hvordan provisioner fungerer: incitamenter og sikkerhedsforanstaltninger</h3> <p class="wp-block-paragraph">Provisioner beregnes typisk som en procentdel af omsætningen eller den genererede margin. De udgør et direkte incitament til salg og øger motivationen for at erobre nye kunder eller øge kontraktværdien.</p> <p class="wp-block-paragraph">Et enkelt eksempel: hvis en sælger får 10% i provision på et salg på 10.000 €, tjener vedkommende 1.000 € for den kontrakt. Det anbefales dog at indføre trin eller tærskler for at undgå demotivation ved faldende præstation. Indførelse af loftsgrænser eller bonusser knyttet til opfyldelse af kvoter forebygger opportunistisk adfærd, som tvangssalg eller overdrevent rabatgivning.</p> <figure class="wp-block-table"><table><tbody><tr><th rowspan="1" colspan="1"><p>Type provision</p></th><th rowspan="1" colspan="1"><p>Beregning</p></th><th rowspan="1" colspan="1"><p>Styrker</p></th><th rowspan="1" colspan="1"><p>Risici</p></th></tr><tr><td rowspan="1" colspan="1"><p>Fast provision</p></td><td rowspan="1" colspan="1"><p>Fast procentdel</p></td><td rowspan="1" colspan="1"><p>Simplicitet, klar motivation</p></td><td rowspan="1" colspan="1"><p>Afhængighed af volumen</p></td></tr><tr><td rowspan="1" colspan="1"><p>Progressiv provision</p></td><td rowspan="1" colspan="1"><p>Trin (f.eks. 10% op til 50 000 €; derefter 12%)</p></td><td rowspan="1" colspan="1"><p>Tilskynder til toppræstation</p></td><td rowspan="1" colspan="1"><p>Mere kompleks beregning</p></td></tr><tr><td rowspan="1" colspan="1"><p>Provision baseret på margin</p></td><td rowspan="1" colspan="1"><p>Procentdel af bruttomargin</p></td><td rowspan="1" colspan="1"><p>Fremmer rentabilitet</p></td><td rowspan="1" colspan="1"><p>Kræver mere præcis analyse</p></td></tr></tbody></table></figure> <h3 class="wp-block-heading">Styrk motivationen med målsatte bonusser: fordele og begrænsninger</h3> <p class="wp-block-paragraph">Målsatte bonusser fastsætter kvalitative eller kvantitative resultater, som fx erhvervelse af nye kunder, øget omsætning eller fastholdelse af kunder. Hovedfordelen er, at de fokuserer på strategiske prioriteter og opfordrer sælgere til at nå definerede tærskler.</p> <p class="wp-block-paragraph">Et eksempel: en bonus på 2.000 € for hver ny kunde ud over 10 kontrakter indgået i et kvartal. Denne tilgang har dog begrænsninger: hvis målene er dårligt afstemt, kan sælgere fokusere udelukkende på kvantitet på bekostning af kvalitet eller kundetilfredshed. Over-motivation på kort sigt kan også føre til afvigende adfærd eller langsigtet demotivation, hvis resultaterne ikke følger med.</p> <h3 class="wp-block-heading">Kombination af provisioner og bonusser: kombinér instrumenterne for at øge præstation</h3> <p class="wp-block-paragraph">Den rette balance mellem provisioner og målsatte bonusser giver optimal fleksibilitet. Provisionen belønner direkte salget, mens bonusserne styrer mod strategiske resultater som fastholdelse eller udvikling i bestemte markedssegmenter.</p> <p class="wp-block-paragraph">En virksomhed kan således fremme salg samtidig med, at den værdsætter bidrag til bæredygtig vækst. Fx kan en sælger få 5% provision på hvert salg og 1.000 € i bonus, når vedkommende overstiger kvartalsmålet. Integration af begge instrumenter skal være klar, transparent og godt kommunikeret for at sikre teamets engagement.</p> <h2 class="wp-block-heading">Beregne den variable løn: metoder og tips til at optimere lønplanen</h2> <p class="wp-block-paragraph">Præcis beregning af den variable løn er afgørende for at sikre retfærdighed, motivation og rentabilitet. Der findes forskellige metoder, som kan tilpasses hver virksomheds model, samtidig med at de er i overensstemmelse med salgsstrategien.</p> <h3 class="wp-block-heading">Provisionmodeller: faste, progressive, territoriale, marginbaserede eller blandede</h3> <p class="wp-block-paragraph">Valget af model afhænger af salgskompleksiteten og de strategiske mål. Her er en kort oversigt over de vigtigste:</p> <ul class="wp-block-list"><li><p>Fast provision : aflønning i en fast procentdel af omsætningen eller salget.</p></li><li><p>Progressiv provision : salgstærskler, der udløser stigende procentsatser.</p></li><li><p>Territorial provision : baseret på sælgerens område eller marked.</p></li><li><p>Provision på marginen : prioriterer rentabilitet frem for volumen.</p></li><li><p>Blandet model : kombinerer flere typer for at balancere volumen og margin.</p></li></ul> <h4 class="wp-block-heading">Taleksempler : simulering af provisionsberegning & trin</h4> <figure class="wp-block-table"><table><tbody><tr><th rowspan="1" colspan="1"><p>Salg</p></th><th rowspan="1" colspan="1"><p>Model</p></th><th rowspan="1" colspan="1"><p>Detaljeret beregning</p></th><th rowspan="1" colspan="1"><p>Aflønning</p></th></tr><tr><td rowspan="1" colspan="1"><p>10 000 €</p></td><td rowspan="1" colspan="1"><p>Fast provision</p></td><td rowspan="1" colspan="1"><p>10% af 10 000 €</p></td><td rowspan="1" colspan="1"><p>1 000 €</p></td></tr><tr><td rowspan="1" colspan="1"><p>50 000 €</p></td><td rowspan="1" colspan="1"><p>Progressiv provision (0–50 000 € à 10%) ; >50 000 € à 12%)</p></td><td rowspan="1" colspan="1"><p>– 10% af 50 000 € = 5 000 €<br>– Hvis salget når 70 000 € :<br>– 50 000 € à 10% = 5 000 €<br>– 20 000 € à 12% = 2 400 €<br>– Total = 7 400 €</p></td><td rowspan="1" colspan="1"><p>Variable afhængig af realiseret volumen</p></td></tr></tbody></table></figure> <h3 class="wp-block-heading">Sammenkæd variabel løn med SMART salgs‑mål</h3> <p class="wp-block-paragraph">Målene skal være specifikke, målbare, opnåelige, realistiske og tidsbestemte. Fx at øge omsætningen med 15% på 6 måneder eller at skaffe 20 nye kunder i et kvartal. Et veldefineret mål sikrer vedvarende motivation og undgår overdreven opsøgende adfærd, der kan skade salgs‑kvaliteten. Det er også et redskab til effektiv strukturering af den variable aflønning.</p> <h3 class="wp-block-heading">Fastlæg betalingsperioden : indvirkning på motivation og likviditet</h3> <p class="wp-block-paragraph">Afhængig af aktivitetscyklussen kan betalingsperioden være ved underskrift, ved kundens betaling eller ved periodens afslutning. Hurtig udbetaling kan øge umiddelbar motivation, men kan også belaste likviditeten. Længere perioder som kvartalsvis eller årligt giver bedre økonomistyring for virksomheden, men kan mindske den øjeblikkelige incitamentseffekt. Den bedste tilgang balancerer disse hensyn for at sikre både motivation og finansiel sundhed.</p> <h2 class="wp-block-heading">Lykkes med kalibrering af sælgernes løn : personalisering, mål og moderne værktøjer</h2> <p class="wp-block-paragraph">En effektiv aflønning tilpasses hver profil og understøtter virksomhedens samlede strategi. Personaliseret planlægning, præcise mål og brug af moderne værktøjer er nøglen til vedvarende præstation.</p> <h3 class="wp-block-heading">Integrer sælgerens profil : junior, senior, felt eller intern</h3> <p class="wp-block-paragraph">En junior sælger har som regel behov for en højere fast løndel for at sikre stabilitet, med en moderat variabel andel. Omvendt kan en senior sælger få en større variabel andel for at maksimere præstationen, især hvis det er en feltprofil eller en ‘hunter’.</p> <p class="wp-block-paragraph">For interne profiler, orienteret mod administration eller support, bør den faste løn tilpasses, og den variable del bør belønne servicekvalitet eller fastholdelse.</p> <h3 class="wp-block-heading">Definer relevante salgskvoter : bottom-up & top-down tilgang</h3> <p class="wp-block-paragraph">Fastlæggelsen af kvoter bør bygge på to supplerende tilgange :</p> <ol class="wp-block-list"><li><p><strong>Bottom-up</strong> : præcis analyse af individuelle kapaciteter eller pr. territorium, som justerer målene i forhold til historisk præstation.</p></li><li><p><strong>Top-down</strong> : overordnede mål sat af ledelsen, med hensyntagen til markedet og ekspansionsstrategien.</p></li></ol> <p class="wp-block-paragraph">Løbende justering af kvoter i takt med resultater og markedsudvikling sikrer præcis og motiverende kalibrering.</p> <h4 class="wp-block-heading">Justering og løbende opfølgning : nøglen til varig motivation</h4> <p class="wp-block-paragraph">Moderne styringsværktøjer, som provision‑software, gør det nemmere at synkronisere mål og præstationer. Regelmæssig opsamling gør det muligt hurtigt at opdage afvigelser og justere udfordringer for at bevare en optimal dynamik.</p> <h3 class="wp-block-heading">Tag højde for Customer Acquisition Cost (CAC) for at justere den variable del</h3> <p class="wp-block-paragraph">Sammenholdning af aflønning og CAC sikrer rentabiliteten af salgsindsatsen. En for høj provision eller bonus for en erhvervet kunde kan reducere den samlede margin. CAC-analysen gør det muligt at justere bonusser efter kompleksitet eller kundens potentiale og sikrer dermed optimal afkast.</p> <h3 class="wp-block-heading">Sikre transparens og læsbarhed med værktøjer til provisionstyring</h3> <p class="wp-block-paragraph">Moderne software forenkler visualisering, sporbarhed og rapportering af præstationer. Transparens i provisionstyring fremmer tillid og engagement hos sælgerne og reducerer samtidig administrativt arbejde.</p> <h3 class="wp-block-heading">Plej kommunikation og støtte omkring aflønningen</h3> <p class="wp-block-paragraph">Klar, regelmæssig og målrettet kommunikation er afgørende for at sikre, at hver sælger forstår sine indtjeningsmuligheder. Personlig opfølgning og undervisning i aflønningssystemet fremmer tilslutning og undgår demotivation eller misforståelser.</p> <figure class="wp-block-image"><img decoding="async" src="https://mon-crm-eagle-rocket.fr/wp-content/uploads/2025/06/comment-determiner-le-salaire-fixe-et-variable-dun-commercial.jpg" alt="Découvrez les clés pour établir le salaire fixe et variable d'un commercial. Apprenez à évaluer les performances, à adapter les rémunérations et à motiver votre équipe de vente grâce à des stratégies efficaces." class="wp-image-140465" /></figure><div class="post-views content-post post-5932 entry-meta load-static"> <span class="post-views-icon dashicons dashicons-chart-bar"></span> <span class="post-views-label">Post Views:</span> <span class="post-views-count">8</span> </div> <!-- AUTHOR BOX --> <div style="margin-top: 6rem; padding-top: 3rem; border-top: 1px solid rgba(255,255,255,0.1); display: flex; gap: 2rem; align-items: center; justify-content: center; text-align: left;"> <img alt='' src='https://secure.gravatar.com/avatar/?s=100&d=mm&r=g' srcset='https://secure.gravatar.com/avatar/?s=200&d=mm&r=g 2x' class='avatar avatar-100 photo avatar-default' height='100' width='100' decoding='async'/> <div> <h4 style="color:#fff; font-size:1.4rem; margin-bottom:0.5rem; font-family:var(--font-display);"></h4> <p style="font-size:1rem; margin:0; color:var(--text-muted); max-width:400px;"></p> <a href="https://jenegociemonsalaire.com/da/author/" style="display:inline-block; margin-top:0.8rem; color:var(--accent); font-weight:700; font-size:0.9rem;">Voir les articles →</a> </div> </div> </main> <!-- SIDEBAR STICKY --> <aside class="article-sidebar"> <div class="sticky-wrapper"> <!-- TOC WIDGET --> <div class="widget-toc" id="tocWidget"> <div class="widget-title">Dans cet article</div> <ul class="toc-list" id="tocList"> <!-- JS will populate this --> </ul> </div> <!-- OFFER WIDGET --> <div class="widget-cta"> <h4>Ne laisse plus d'argent sur la table.</h4> <p>Télécharge le script exact pour demander +15%.</p> <a href="#" class="btn-black">Télécharger le PDF</a> </div> </div> </aside> </div> <!-- NEWSLETTER --> <section class="newsletter-section fade-in"> <h3 class="nl-title">Rejoins l'élite des négociateurs</h3> <p style="color: #bbb; max-width:500px; margin:0 auto;">Chaque lundi, reçois une technique de négociation interdite aux amateurs.</p> <form class="nl-form" action="#" method="post"> <input type="email" placeholder="Ton meilleur email..." class="nl-input" required> <button type="submit" class="nl-btn">Accéder aux secrets</button> </form> </section> </article> <!-- FOOTER --> <footer> <p>© 2026 JeNégocieMonSalaire. Version 3.5</p> </footer> <script type="speculationrules"> {"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/*"},{"not":{"href_matches":["/wp-*.php","/wp-admin/*","/wp-content/uploads/*","/wp-content/*","/wp-content/plugins/*","/wp-content/themes/template/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]} </script> <div class="eagle-contact-footer-link" style="text-align:center;padding:1.1rem 1rem;border-top:1px solid rgba(120,120,120,.25);font-size:1rem;line-height:1.4"><a href="https://jenegociemonsalaire.com/contact/" style="font-weight:600;text-decoration:underline">Contact</a></div><script id="pll_cookie_script-js-after"> (function() { var expirationDate = new Date(); expirationDate.setTime( expirationDate.getTime() + 31536000 * 1000 ); document.cookie = "pll_language=da; expires=" + expirationDate.toUTCString() + "; path=/; secure; SameSite=Lax"; }()); //# sourceURL=pll_cookie_script-js-after </script> <script id="template-navigation-js" src="https://jenegociemonsalaire.com/wp-content/themes/template/js/navigation.js?ver=1.0.0"></script> <script id="wp-emoji-settings" type="application/json"> {"baseUrl":"https://s.w.org/images/core/emoji/17.0.2/72x72/","ext":".png","svgUrl":"https://s.w.org/images/core/emoji/17.0.2/svg/","svgExt":".svg","source":{"concatemoji":"https://jenegociemonsalaire.com/wp-includes/js/wp-emoji-release.min.js?ver=7.0"}} </script> <script type="module"> /*! This file is auto-generated */ const a=JSON.parse(document.getElementById("wp-emoji-settings").textContent),o=(window._wpemojiSettings=a,"wpEmojiSettingsSupports"),s=["flag","emoji"];function i(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(o,JSON.stringify(t))}catch(e){}}function c(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0);const a=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);return t.every((e,t)=>e===a[t])}function p(e,t){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var n=e.getImageData(16,16,1,1);for(let e=0;e<n.data.length;e++)if(0!==n.data[e])return!1;return!0}function u(e,t,n,a){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\udde8\ud83c\uddf6","\ud83c\udde8\u200b\ud83c\uddf6")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!a(e,"\ud83e\u1fac8")}return!1}function f(e,t,n,a){let r;const o=(r="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):document.createElement("canvas")).getContext("2d",{willReadFrequently:!0}),s=(o.textBaseline="top",o.font="600 32px Arial",{});return e.forEach(e=>{s[e]=t(o,e,n,a)}),s}function r(e){var t=document.createElement("script");t.src=e,t.defer=!0,document.head.appendChild(t)}a.supports={everything:!0,everythingExceptFlag:!0},new Promise(t=>{let n=function(){try{var e=JSON.parse(sessionStorage.getItem(o));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(s),u.toString(),c.toString(),p.toString()].join(",")+"));",a=new Blob([e],{type:"text/javascript"});const r=new Worker(URL.createObjectURL(a),{name:"wpTestEmojiSupports"});return void(r.onmessage=e=>{i(n=e.data),r.terminate(),t(n)})}catch(e){}i(n=f(s,u,c,p))}t(n)}).then(e=>{for(const n in e)a.supports[n]=e[n],a.supports.everything=a.supports.everything&&a.supports[n],"flag"!==n&&(a.supports.everythingExceptFlag=a.supports.everythingExceptFlag&&a.supports[n]);var t;a.supports.everythingExceptFlag=a.supports.everythingExceptFlag&&!a.supports.flag,a.supports.everything||((t=a.source||{}).concatemoji?r(t.concatemoji):t.wpemoji&&t.twemoji&&(r(t.twemoji),r(t.wpemoji)))}); //# sourceURL=https://jenegociemonsalaire.com/wp-includes/js/wp-emoji-loader.min.js </script> <!-- SCRIPTS --> <script> document.addEventListener("DOMContentLoaded", function() { // 1. GENERATE TABLE OF CONTENTS const content = document.getElementById('mainContent'); const tocList = document.getElementById('tocList'); const headings = content.querySelectorAll('h2'); if (headings.length > 0) { headings.forEach((heading, index) => { const id = 'chapter-' + index; heading.id = id; const li = document.createElement('li'); const a = document.createElement('a'); a.href = '#' + id; a.textContent = heading.textContent; a.addEventListener('click', (e) => { e.preventDefault(); document.querySelector(a.getAttribute('href')).scrollIntoView({ behavior: 'smooth' }); }); li.appendChild(a); tocList.appendChild(li); }); } else { document.getElementById('tocWidget').style.display = 'none'; } // 2. PROGRESS BAR const progressBar = document.getElementById('progressBar'); window.addEventListener('scroll', () => { const scrollTop = window.scrollY; const docHeight = document.body.scrollHeight - window.innerHeight; const scrollPercent = (scrollTop / docHeight) * 100; progressBar.style.width = scrollPercent + "%"; }); // 3. FADE IN ANIMATION const observer = new IntersectionObserver((entries) => { entries.forEach(entry => { if (entry.isIntersecting) { entry.target.style.opacity = 1; entry.target.style.transform = 'translateY(0)'; } }); }); document.querySelectorAll('.fade-in').forEach(el => { el.style.opacity = 0; el.style.transform = 'translateY(20px)'; el.style.transition = '0.8s ease'; observer.observe(el); }); }); </script> </body> </html>