Vérification d'âge

Ce site contient du contenu réservé aux adultes. Avez-vous 18 ans ou plus?

SexLust.ch

Private Schweizerin Eva Geprüfte Auflistung

BIO

Détails du profil

Tatouages: Non

Langues parlées: Anglais

À propos de

Switzerland
Ihr Konto Escort Girls Erotische Masseurinnen BDSM Trans Erotiksalons Wir haben getestet DE FR_FR EN ES IT Eine Anzeige hinzufügen Einloggen oder Registrieren Eine Anzeige hinzufügen document.body.dataset.activeTab = window.location.hash.substr(1); prevnext Private Schweizerin Eva Geprüfte Auflistung Einzigartig, sinnlich, authentisch. Eine Meinung hinterlassen ‹›1 / 12 ✓ Verifizierte Anzeige -Online-8H📍 Suisse allemandeEscort · Massage relax · Masseuses érotiques Private Schweizerin Eva Einzigartig, sinnlich, authentisch. Spezialitäten Erotische MassageNuru-MassageProstata-MassageSinnliche MassageTantra-Massage Was ich gerne mache Erotische Massage Nuru-Massage Prostata-Massage Sinnliche Massage Tantra-Massage Ich kandidiere für dich KEIN BORDELL SONDERN 100% PRIVAT UND EXKLUSIV! Besuch mich zu Hause-ich bin wirklich 100% privat. Ich bin eine sehr attraktive, schlanke, zierliche, und vollbusige Schweizerin mit viel Stil und Herz. Da für mich Sex und Erotik etwas vom schönsten überhaupt ist, empfange ich hin und wieder sympathische Männer bei mir zu Hause (schönes EHF, nähe Uster/ZH mit grosser Wellnesszone). 100% privat - KEIN Bordell! Dein Alter ist nicht entscheidend, denn ich empfange ausschliesslich Männer, die sympathisch sind und mich mit Respekt behandeln. Mit mir kann man schönste Girlfriend-Erotik geniessen ohne irgendwelche Verpflichtungen, dafür mit 100% Diskretion! Ich habe zwar viel Erfahrung und bin absolut unverklemmt, dennoch bin ich kein Profi. Für mich ist das ein prickelndes und wunderschönes Hobby! Mir ist bewusst, dass ich mich nicht im niedrigsten Preissegment bewege (ab CHF 600.- = 1 ½ Stunden), da ich das nur hin und wieder mache. Quickies oder 30 Minuten-Treffen gibts bei mir nicht, da mir das viel zu unpersönlich ist. Dafür kriegst du mit mir aber eine einmalig echte, schöne, authentische und intelligente Liebhaberin mit Stil und ganz viel Naturgeilheit. Meine Philosophie lautet: Du kommst als Gast und gehst als Freund. Du kannst mich unter der Woche, aber auch am Weekend besuchen. Hier meine Stats: 43 Jahre jung, sehr attraktiv, sportlich, mega zierlich und schlank (156 cm/39 Kg) aber mit grossem XL-Naturbusen (DD) > siehe Bild (topaktuell). Mit mir ist viel möglich: Von liebevollem Tantra bis zu hemmungslosem Sex. Einzige Bedingungen: GV nur mit Kondom, keine Spermaaufnahme, kein Dirty und keine Schmerzen/Verletzungen. Dafür hast du auch die Garantie, dass du dir bei mir nichts Unangenehmes einfängst. Ich bin auch für leichte BDSM-Spiele, Foto- oder Videosessions, Fusserotik, und andere erotische Spiele zu begeistern. Natürlich dürfen sich auch Paare oder zwei Männer melden. Falls du wirklich Interesse hast, freue ich mich auf deine Zuschrift. Wenn du auch noch ein Bild von dir mitschickst wäre das natürlich schön. Kontaktaufnahme ausschliesslich per Mail. Ich habe nämlich keine Lust auf Telefon-Onanisten. Ich beantworte ALLE qualifizierten und ernsthaften Anfragen umgehend! Dumme Anmach-Mails landen hingegen im Trashcan! LG Eva PS Vollste Diskretion wird geboten und auch von dir erwartet. [email protected] Mehr über mich auf meiner privaten Homepage. https://www.eva-zh.ch Du kannst mir auch auf Twitter folgen: https://x.com/CH_Eva_privat Direkter Kontakt Kontaktieren Sie diese Anzeige schnell per Telefon oder WhatsApp. P Private Schweizerin Eva Suisse allemande · -Online-8H 📞 Anrufen 🟢 WhatsApp ↗ Teilen ⚠ Melden Sicherheit. Zahlen Sie nichts im Voraus. Bevorzugen Sie verifizierte Anzeigen und melden Sie verdächtige Profile. Alles über mich Die Meinungen 0 prev next Whatsapp Call now Nachrichten Eine Meinung abgeben signaler une annonce prev next Video(s) prevnext Fotogalerie prevnext prevnext Ein bisschen mehr über mich Ich heiße Private Schweizerin Eva Alter 43 Herkunft Schweizerin Haarfarbe Braun Brust DD Gewicht 39 Größe 156 Augenfarbe Grün Ihre Begleitperson Ich gehe zu Ihnen Nein Entschuldigung Ich empfange Sie Ja bei mir zu Hause mit Vergnügen, Ja in einem Wohnzimmer Tarife Preis Kontaktieren Sie mich, um meine Preise zu erfahren Akzeptierte Zahlungsmittel CHF Stadt Deutschschweiz Sprache Englisch ⭐⭐⭐. Deutsch ⭐⭐⭐⭐⭐ Bevorzugen Sie verifizierte Anzeigen. ⚠️ Leisten Sie keine Zahlungen vor der Leistung: Dies ist eine gängige Methode von Betrügern. Melden Sie uns unverzüglich jedes zweifelhafte Profil. Bevorzugen Sie Anzeigen, die mit dem Gütesiegel zertifiziert sind. Bei mir zu Hause @media only screen and (min-width : 1200px) { #block_PfT7oIL .food-menu-items { grid-template-columns: repeat(1, 1fr); } } @media (min-width:768px) and (max-width:1200px) { #block_PfT7oIL .food-menu-items { grid-template-columns: repeat(1, 1fr); } } @media only screen and (max-width : 768px) { #block_PfT7oIL .food-menu-items { grid-template-columns: repeat(1, 1fr); } } Vermietung Mapbox OpenStreetMap Diese Karte verbessern 8610 Uster ZH Wegbeschreibung erhalten Pas encore de commentaires. Rezension erstellen Laisser un commentaire - Annuler la réponseDeine E-Mail-Adresse wird nicht veröffentlicht. Les champs obligatoires sont indiqués avec * Your Rating name E-Mail Votre message Speichern Sie meinen Namen, meine E-Mail-Adresse und meine Website in diesem Browser, wenn ich das nächste Mal kommentiere. Rezension absenden Alternative:WPA body[data-active-tab="tout-sur-moi"] .listing-tab { display: none; } body[data-active-tab="tout-sur-moi"] #listing_tab_tout-sur-moi { display: block; } body[data-active-tab="les-avis"] .listing-tab { display: none; } body[data-active-tab="les-avis"] #listing_tab_les-avis { display: block; } Sie könnten auch interessiert sein an Mia coquine Promoted Genf -Online-8H Fetischismus Julia Promoted Genf Online Ich mache alles Monica Promoted Museumstrasse 2 -Online-8H Citas Meetgirl ist die führende Website für Erotikanzeigen in der Schweiz. Die einzige führende Website mit zertifizierten Anzeigen, Videos und Geolokalisierung. KOSTENLOSE Allgemeine Bedingungen AGB Engagement und Ressourcen Unsere Partner Meetgirl-Partner werden Kontakt On Tour"-Pressemitteilung Wir haben für Sie getestet... News - Blog Kostenlos inserieren DE DE FR_FR EN IT ES // need to have the same with set from JS on both divs. Otherwise it can push stuff around in HTML var trp_ls_shortcodes = document.querySelectorAll('.trp_language_switcher_shortcode .trp-language-switcher'); if ( trp_ls_shortcodes.length > 0) { // get the last language switcher added var trp_el = trp_ls_shortcodes[trp_ls_shortcodes.length - 1]; var trp_shortcode_language_item = trp_el.querySelector( '.trp-ls-shortcode-language' ) // set width var trp_ls_shortcode_width = trp_shortcode_language_item.offsetWidth + 16; trp_shortcode_language_item.style.width = trp_ls_shortcode_width + 'px'; trp_el.querySelector( '.trp-ls-shortcode-current-language' ).style.width = trp_ls_shortcode_width + 'px'; // We're putting this on display: none after we have its width. trp_shortcode_language_item.style.display = 'none'; } Instagram BEGLEITPERSONEN IN GENF Freche Escortdame in Genf Französischer Escort in Genf Escort Métisse in Genf Diskreter Escort in Genf Unterwürfige Escort in Genf Domina Escort in Genf Escort Hure in Genf Blonde Escort in Genf Escort Prostituierte in Genf Trans Escort in Genf ESKORTEN NACH STADTTEILEN IN GENF Escort Genf Escort in Eaux-Vives Escort Viertel Paquis EROTISCHE MASSAGEN IN GENEVE Tantra-Massage in Genf Lingam-Massage in Genf Nuru-Massage in Genf Prostatamassage in Genf Sexuelle Massage in Genf Body-Body-Massage in Genf SEXUELLE DIENSTLEISTUNGEN IN GENEVE Facesitting in GenfSexuelle Fetische in GenfAnalsex und Sodomie in GenfDeep Throat in GenfEjakulation im Gesicht in GenfBlowjob in GenfEinreichung in GenfErotische Massagen in GenfGoldene Dusche in GenfSpanische Wichse in GenfAnulingus in Genf ESCORT SCHWEIZ RENCONTRE EROTIQUE SUISSE MEETGIRL ON TOUR Meetgirl On Tour GenfMeetgirl on Tour LausanneMeegirl save the dateMeetgirl On Tour Samstag ESCORTS IN LAUSANNE Escort LausanneFreche Escortdame in LausanneFranzösischer Escort in LausanneEscort Métisse in LausanneDiskreter Escort in LausanneUnterwürfige Escort in LausanneDomina Escort in LausanneLatex Escort in LausanneEscort Hure in LausanneBlonde Escortdame in LausanneEscort Prostituierte in LausanneEscort mit großen Brüsten in LausanneEscort praller Po in LausanneTrans Escort LausanneEscort Trans Domina in Lausanne EROTISCHE MASSAGEN IN LAUSANNE Tantra-Massage in LausanneLingam-Massage in LausanneNuru-Massage in LausanneProstatamassage in LausanneSexuelle Massage in LausanneBody-Body-Massage in LausanneErotische Massage in Lausanne ESCORTS NACH STADTTEIL IM KANTON WAADT Escort in RenensEscort in YverdonEscort in PayerneEscort in MontreuxEscort in NyonEscort GlandEscort in Vevey SEXUELLE DIENSTLEISTUNGEN IN LAUSANNE Facesitting in LausanneSexuelle Fetische in LausanneAnalsex und Sodomie in LausanneGorge Profonde in LausanneEjakulation im Gesicht in LausanneBlasen in LausanneAnulingus in LausanneEinreichung in LausanneErotische Massage in LausanneGoldene Dusche in LausanneFußfetischismus in LausanneBondage in LausanneShibari LausannePegging in LausanneSpanking in Lausanne69 in Lausanne ESCORTS IM WALLIS Escort WallisFreche Escortdame im WallisDiskreter Escort im WallisUnterwürfige Escortdame im WallisDominante Escortdame im WallisEscort Hure im WallisBlonde Escortdame im WallisEscort Prostituierte im WallisEscort mit großen Brüsten im WallisTrans Escort Im Wallis EROTISCHE MASSAGEN IM WALLIS Sexuelle Massage in WallisSinnliche Massage im WallisErotische Massage in Wallis ESCORTS NACH QUARTIER IM WALLIS Escort in SionEscort in SidersEscort in Martigny ESCORTS IN FREIBURG Freche Escortdame in FreiburgDiskreter Escort in FreiburgUnterwürfige Escort in FreiburgDomina Escort in FreiburgEscort Hure in FreiburgBlonde Escort in FreiburgEscort Prostituierte in FreiburgTrans Escort in Freiburg EROTISCHE MASSAGEN IN FREIBURG Sexuelle Massage in FreiburgSinnliche Massage in FreiburgErotische Massage in Freiburg ESCORTS NACH STADTTEIL IN FREIBURG Escort FreiburgEscort in BulleEscort Stadt FreiburgEscort Bern Warenkorb Ihr Warenkorb ist leer. <div class="mylisting-dialog-wrapper"> <div class="mylisting-dialog"> <div class="mylisting-dialog--message"></div><!-- --><div class="mylisting-dialog--actions"> <div class="mylisting-dialog--dismiss mylisting-dialog--action"><trp-gettext data-trpgettextoriginal=427>Ablehnen</trp-gettext></div> <div class="mylisting-dialog--loading mylisting-dialog--action hide"> <div class="paper-spinner " style="width: 24px; height: 24px;"> <div class="spinner-container active"> <div class="spinner-layer layer-1" style="border-color: #777;"> <div class="circle-clipper left"> <div class="circle" style="border-width: 2.5px;"></div> </div><div class="gap-patch"> <div class="circle" style="border-width: 2.5px;"></div> </div><div class="circle-clipper right"> <div class="circle" style="border-width: 2.5px;"></div> </div> </div> </div> </div> </div> </div> </div> </div> .c27-main-header .logo img { height: 38px; }@media screen and (max-width: 1200px) { .c27-main-header .logo img { height: 50px; } }@media screen and (max-width: 480px) { .c27-main-header .logo img { height: 40px; } }.c27-main-header:not(.header-scroll) .header-skin { background: #891c31 }.c27-main-header.header-scroll .header-skin{ background: #891c31 !important; }.c27-main-header.header-scroll .header-skin { border-bottom: 1px solid #891c31 !important; } .details-list .li_cTHRlqc a:hover i, .details-list .li_cTHRlqc a:hover .term-icon { background-color: #f67675 !important; border-color: #f67675 !important; color: #fff; }.details-list .li_SOFQMLM a:hover i, .details-list .li_SOFQMLM a:hover .term-icon { background-color: #f67675 !important; border-color: #f67675 !important; color: #fff; }.details-list .li_5L3eLyL a:hover i, .details-list .li_5L3eLyL a:hover .term-icon { background-color: #f67675 !important; border-color: #f67675 !important; color: #fff; }.details-list .li_5NwHr2H a:hover i, .details-list .li_5NwHr2H a:hover .term-icon { background-color: #f67675 !important; border-color: #f67675 !important; color: #fff; }.details-list .li_4O66BBN a:hover i, .details-list .li_4O66BBN a:hover .term-icon { background-color: #f67675 !important; border-color: #f67675 !important; color: #fff; } <a aria-label="<trp-gettext data-trpgettextoriginal=429>Markierung des Standortblocks auf der Karte</trp-gettext>" href="#" class="marker-icon"> <div class="marker-img" style="background-image: url({{marker-bg}});"></div> </a> <div class="cts-marker-pin"> <img alt="<trp-gettext data-trpgettextoriginal=430>Kartenmarkierungsnadel</trp-gettext>" src="https://meetgirl.ch/wp-content/themes/my-listing/assets/images/pin.png"> </div> <div class="cts-geoloc-marker"></div> <a aria-label="<trp-gettext data-trpgettextoriginal=431>Seite erforschen Kartenmarkierung</trp-gettext>" href="#" class="marker-icon {{listing-id}}"> {{icon}} <div class="marker-img" style="background-image: url({{marker-bg}});"></div> </a> /* <![CDATA[ */ var hasJetBlogPlaylist = 0; /* ]]> */ {"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/de/*"},{"not":{"href_matches":["/wp-*.php","/wp-admin/*","/wp-content/uploads/*","/wp-content/*","/wp-content/plugins/*","/wp-content/themes/my-listing-child/*","/wp-content/themes/my-listing/*","/de/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]} FR_FR FR_FR EN DE IT ES { "@context": "http://www.schema.org", "@type": "LocalBusiness", "@id": "https://meetgirl.ch/de/escorts/private-schweizerin-eva/", "name": "Private Schweizerin Eva", "legalName": "Private Schweizerin Eva", "description": "<p>KEIN BORDELL SONDERN 100% PRIVAT UND EXKLUSIV!</p>\n<p>Besuch mich zu Hause-ich bin wirklich 100% privat.\u00a0Ich bin eine sehr attraktive, schlanke, zierliche, und vollbusige Schweizerin mit viel Stil und Herz. Da f\u00fcr mich Sex und Erotik etwas vom sch\u00f6nsten \u00fcberhaupt ist, empfange ich hin und wieder sympathische M\u00e4nner bei mir zu Hause (sch\u00f6nes EHF, n\u00e4he Uster/ZH mit grosser Wellnesszone). 100% privat - KEIN Bordell! Dein Alter ist nicht entscheidend, denn ich empfange ausschliesslich M\u00e4nner, die sympathisch sind und mich mit Respekt behandeln.</p>\n<p>Mit mir kann man sch\u00f6nste Girlfriend-Erotik geniessen ohne irgendwelche Verpflichtungen, daf\u00fcr mit 100% Diskretion! Ich habe zwar viel Erfahrung und bin absolut unverklemmt, dennoch bin ich kein Profi. F\u00fcr mich ist das ein prickelndes und wundersch\u00f6nes Hobby! Mir ist bewusst, dass ich mich nicht im niedrigsten Preissegment bewege (ab CHF 600.- = 1 \u00bd Stunden), da ich das nur hin und wieder mache. Quickies oder 30 Minuten-Treffen gibts bei mir nicht, da mir das viel zu unpers\u00f6nlich ist. Daf\u00fcr kriegst du mit mir aber eine einmalig echte, sch\u00f6ne, authentische und intelligente Liebhaberin mit Stil und ganz viel Naturgeilheit. Meine Philosophie lautet: Du kommst als Gast und gehst als Freund. Du kannst mich unter der Woche, aber auch am Weekend besuchen.</p>\n<p>Hier meine Stats: 43 Jahre jung, sehr attraktiv, sportlich, mega zierlich und schlank (156 cm/39 Kg) aber mit grossem XL-Naturbusen (DD) > siehe Bild (topaktuell).</p>\n<p>Mit mir ist viel m\u00f6glich: Von liebevollem Tantra bis zu hemmungslosem Sex. Einzige Bedingungen: GV nur mit Kondom, keine Spermaaufnahme, kein Dirty und keine Schmerzen/Verletzungen. Daf\u00fcr hast du auch die Garantie, dass du dir bei mir nichts Unangenehmes einf\u00e4ngst. Ich bin auch f\u00fcr leichte BDSM-Spiele, Foto- oder Videosessions, Fusserotik, und andere erotische Spiele zu begeistern. Nat\u00fcrlich d\u00fcrfen sich auch Paare oder zwei M\u00e4nner melden. Falls du wirklich Interesse hast, freue ich mich auf deine Zuschrift. Wenn du auch noch ein Bild von dir mitschickst w\u00e4re das nat\u00fcrlich sch\u00f6n. Kontaktaufnahme ausschliesslich per Mail. Ich habe n\u00e4mlich keine Lust auf Telefon-Onanisten. Ich beantworte ALLE qualifizierten und ernsthaften Anfragen umgehend! Dumme Anmach-Mails landen hingegen im Trashcan!</p>\n<p>LG Eva</p>\n<p>PS Vollste Diskretion wird geboten und auch von dir erwartet.</p>\n<p>[email protected]</p>\n<p>Mehr \u00fcber mich auf meiner privaten Homepage. https://www.eva-zh.ch</p>\n<p>Du kannst mir auch auf Twitter folgen: https://x.com/CH_Eva_privat</p>\n", "url": "https://meetgirl.ch/de/escorts/private-schweizerin-eva/", "telephone": "+41789109080", "photo": [ "https://meetgirl.ch/wp-content/uploads/listing-uploads/cover/2026/06/Eva-6.26-1.jpg" ], "image": [ "https://meetgirl.ch/wp-content/uploads/listing-uploads/cover/2026/06/Eva-6.26-1.jpg" ], "photos": [ "https://meetgirl.ch/wp-content/uploads/listing-uploads/gallery/2026/01/breit2a.jpg", "https://meetgirl.ch/wp-content/uploads/listing-uploads/gallery/2026/01/3fach-mit-wasser-a.jpg", "https://meetgirl.ch/wp-content/uploads/listing-uploads/gallery/2026/01/2fach-sitzend-stehend-A.jpg", "https://meetgirl.ch/wp-content/uploads/listing-uploads/gallery/2026/01/3fach-23.jpg", "https://meetgirl.ch/wp-content/uploads/listing-uploads/gallery/2026/01/Massage-korr.jpg", "https://meetgirl.ch/wp-content/uploads/listing-uploads/gallery/2026/01/2fach-Busen.jpg", "https://meetgirl.ch/wp-content/uploads/listing-uploads/gallery/2026/01/DSC_1061a-3fach-alot.jpg", "https://meetgirl.ch/wp-content/uploads/listing-uploads/gallery/2026/01/div2025-B.jpg", "https://meetgirl.ch/wp-content/uploads/listing-uploads/gallery/2026/01/Stuhl_DSC_0228-Q.jpg", "https://meetgirl.ch/wp-content/uploads/listing-uploads/gallery/2026/01/Feet-23.jpg", "https://meetgirl.ch/wp-content/uploads/listing-uploads/gallery/2026/01/DSC_1000-2024-BF_neu.jpg", "https://meetgirl.ch/wp-content/uploads/listing-uploads/gallery/2026/01/IMG_2354-aQ.jpg" ], "hasMap": "https://www.google.com/maps/@47.34898,8.71665z", "address": { "address": "8610 Uster ZH", "lat": "47.34898", "lng": "8.71665" }, "contactPoint": { "@type": "ContactPoint", "contactType": "customer support", "telephone": "+41789109080" }, "geo": { "@type": "GeoCoordinates", "latitude": "47.34898", "longitude": "8.71665" } } <li :id="'jet-mobile-menu-item-'+itemDataObject.itemId" :class="itemClasses" > <div class="jet-mobile-menu__item-inner" tabindex="0" :aria-label="itemDataObject.name" aria-expanded="false" v-on:click="itemSubHandler" v-on:keyup.enter="itemSubHandler" > <a :class="itemLinkClasses" :href="itemDataObject.url" :rel="itemDataObject.xfn" :title="itemDataObject.attrTitle" :target="itemDataObject.target" > <div class="jet-menu-item-wrapper"> <div class="jet-menu-icon" v-if="isIconVisible" v-html="itemIconHtml" ></div> <div class="jet-menu-name"> <span class="jet-menu-label" v-if="isLabelVisible" v-html="itemDataObject.name" ></span> <small class="jet-menu-desc" v-if="isDescVisible" v-html="itemDataObject.description" ></small> </div> <div class="jet-menu-badge" v-if="isBadgeVisible" > <div class="jet-menu-badge__inner" v-html="itemDataObject.badgeContent"></div> </div> </div> </a> <span class="jet-dropdown-arrow" v-if="isSub && !templateLoadStatus" v-html="dropdownIconHtml" v-on:click="markerSubHandler" > </span> <div class="jet-mobile-menu__template-loader" v-if="templateLoadStatus" > <svg xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.0" width="24px" height="25px" viewBox="0 0 128 128" xml:space="preserve"> <g> <linearGradient :id="'linear-gradient-'+itemDataObject.itemId"> <stop offset="0%" :stop-color="loaderColor" stop-opacity="0"/> <stop offset="100%" :stop-color="loaderColor" stop-opacity="1"/> </linearGradient> <path d="M63.85 0A63.85 63.85 0 1 1 0 63.85 63.85 63.85 0 0 1 63.85 0zm.65 19.5a44 44 0 1 1-44 44 44 44 0 0 1 44-44z" :fill="'url(#linear-gradient-'+itemDataObject.itemId+')'" fill-rule="evenodd"/> <animateTransform attributeName="transform" type="rotate" from="0 64 64" to="360 64 64" dur="1080ms" repeatCount="indefinite"></animateTransform> </g> </svg> </div> </div> <transition name="menu-container-expand-animation"> <mobile-menu-list v-if="isDropdownLayout && subDropdownVisible" :depth="depth+1" :children-object="itemDataObject.children" ></mobile-menu-list> </transition> </li> <div class="jet-mobile-menu__list" role="navigation" > <ul class="jet-mobile-menu__items"> <mobile-menu-item v-for="(item, index) in childrenObject" :key="item.id" :item-data-object="item" :depth="depth" ></mobile-menu-item> </ul> </div> <div :class="instanceClass" v-on:keyup.esc="escapeKeyHandler" > <div class="jet-mobile-menu__toggle" role="button" ref="toggle" tabindex="0" aria-label="Open/Close Menu" aria-expanded="false" v-on:click="menuToggle" v-on:keyup.enter="menuToggle" > <div class="jet-mobile-menu__template-loader" v-if="toggleLoaderVisible" > <svg xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.0" width="24px" height="25px" viewBox="0 0 128 128" xml:space="preserve"> <g> <linearGradient :id="'linear-gradient-'+itemDataObject.itemId"> <stop offset="0%" :stop-color="loaderColor" stop-opacity="0"/> <stop offset="100%" :stop-color="loaderColor" stop-opacity="1"/> </linearGradient> <path d="M63.85 0A63.85 63.85 0 1 1 0 63.85 63.85 63.85 0 0 1 63.85 0zm.65 19.5a44 44 0 1 1-44 44 44 44 0 0 1 44-44z" :fill="'url(#linear-gradient-'+itemDataObject.itemId+')'" fill-rule="evenodd"/> <animateTransform attributeName="transform" type="rotate" from="0 64 64" to="360 64 64" dur="1080ms" repeatCount="indefinite"></animateTransform> </g> </svg> </div> <div class="jet-mobile-menu__toggle-icon" v-if="!menuOpen && !toggleLoaderVisible" v-html="toggleClosedIcon" ></div> <div class="jet-mobile-menu__toggle-icon" v-if="menuOpen && !toggleLoaderVisible" v-html="toggleOpenedIcon" ></div> <span class="jet-mobile-menu__toggle-text" v-if="toggleText" v-html="toggleText" ></span> </div> <transition name="cover-animation"> <div class="jet-mobile-menu-cover" v-if="menuContainerVisible && coverVisible" v-on:click="closeMenu" ></div> </transition> <transition :name="showAnimation"> <div class="jet-mobile-menu__container" v-if="menuContainerVisible" > <div class="jet-mobile-menu__container-inner" > <div class="jet-mobile-menu__header-template" v-if="headerTemplateVisible" > <div class="jet-mobile-menu__header-template-content" ref="header-template-content" v-html="headerContent" ></div> </div> <div class="jet-mobile-menu__controls" v-if="isBreadcrumbs || isBack || isClose" > <div class="jet-mobile-menu__breadcrumbs" v-if="isBreadcrumbs" > <div class="jet-mobile-menu__breadcrumb" v-for="(item, index) in breadcrumbsPathData" :key="index" > <div class="breadcrumb-label" v-on:click="breadcrumbHandle(index+1)" v-html="item" ></div> <div class="breadcrumb-divider" v-html="breadcrumbIcon" v-if="(breadcrumbIcon && index !== breadcrumbsPathData.length-1)" ></div> </div> </div> <div class="jet-mobile-menu__back" role="button" ref="back" tabindex="0" aria-label="Close Menu" aria-expanded="false" v-if="!isBack && isClose" v-html="closeIcon" v-on:click="menuToggle" v-on:keyup.enter="menuToggle" ></div> <div class="jet-mobile-menu__back" role="button" ref="back" tabindex="0" aria-label="Back to Prev Items" aria-expanded="false" v-if="isBack" v-html="backIcon" v-on:click="goBack" v-on:keyup.enter="goBack" ></div> </div> <div class="jet-mobile-menu__before-template" v-if="beforeTemplateVisible" > <div class="jet-mobile-menu__before-template-content" ref="before-template-content" v-html="beforeContent" ></div> </div> <div class="jet-mobile-menu__body" > <transition :name="animation"> <mobile-menu-list v-if="!templateVisible" :key="depth" :depth="depth" :children-object="itemsList" ></mobile-menu-list> <div class="jet-mobile-menu__template" ref="template-content" v-if="templateVisible" > <div class="jet-mobile-menu__template-content" v-html="itemTemplateContent" ></div> </div> </transition> </div> <div class="jet-mobile-menu__after-template" v-if="afterTemplateVisible" > <div class="jet-mobile-menu__after-template-content" ref="after-template-content" v-html="afterContent" ></div> </div> </div> </div> </transition> </div> (function($){ $(document).ready(function(){ window.cdts_process_dpk_rules( [], true ); }); })(jQuery); (function($){ $(document).ready(function(){ window.cdts_process_dpk_rules( [], true ); }); })(jQuery); var snp_f = []; var snp_hostname = new RegExp(location.host); var snp_http = new RegExp("^(http|https)://", "i"); var snp_cookie_prefix = ''; var snp_separate_cookies = false; var snp_ajax_url = 'https://meetgirl.ch/wp-admin/admin-ajax.php'; var snp_domain_url = 'https://meetgirl.ch'; var snp_ajax_nonce = '37688bf623'; var snp_ajax_ping_time = 1000; var snp_ignore_cookies = false; var snp_enable_analytics_events = false; var snp_is_mobile = false; var snp_enable_mobile = true; var snp_use_in_all = false; var snp_excluded_urls = []; var snp_close_on_esc_key = false; snp_excluded_urls.push(''); (function () { var c = document.body.className; c = c.replace(/woocommerce-no-js/, 'woocommerce-js'); document.body.className = c; })(); jQuery(function(jQuery){jQuery.datepicker.setDefaults({"closeText":"Schlie\u00dfen","currentText":"Heute","monthNames":["Januar","Februar","M\u00e4rz","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],"monthNamesShort":["Jan.","Feb.","M\u00e4rz","Apr.","Mai","Juni","Juli","Aug.","Sep.","Okt.","Nov.","Dez."],"nextText":"N\u00e4chster","prevText":"Vorheriger","dayNames":["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],"dayNamesShort":["So.","Mo.","Di.","Mi.","Do.","Fr.","Sa."],"dayNamesMin":["S","M","D","M","D","F","S"],"dateFormat":"d MM yy","firstDay":1,"isRTL":false});}); //# sourceURL=jquery-ui-datepicker-js-after var trp_data = {"trp_custom_ajax_url":"https://meetgirl.ch/wp-content/plugins/translatepress-multilingual/includes/trp-ajax.php","trp_wp_ajax_url":"https://meetgirl.ch/wp-admin/admin-ajax.php","trp_language_to_query":"de_DE","trp_original_language":"fr_FR","trp_current_language":"de_DE","trp_skip_selectors":["[data-no-translation]","[data-no-dynamic-translation]","[data-trp-translate-id-innertext]","script","style","head","trp-span","translate-press","#billing_country","#shipping_country","#billing_state","#shipping_state","#select2-billing_country-results","#select2-billing_state-results","#select2-shipping_country-results","#select2-shipping_state-results","[data-trp-translate-id]","[data-trpgettextoriginal]","[data-trp-post-slug]"],"trp_base_selectors":["data-trp-translate-id","data-trpgettextoriginal","data-trp-post-slug"],"trp_attributes_selectors":{"text":{"accessor":"outertext","attribute":false},"block":{"accessor":"innertext","attribute":false},"image_src":{"selector":"img[src]","accessor":"src","attribute":true},"submit":{"selector":"input[type='submit'],input[type='button'], input[type='reset']","accessor":"value","attribute":true},"placeholder":{"selector":"input[placeholder],textarea[placeholder]","accessor":"placeholder","attribute":true},"title":{"selector":"[title]","accessor":"title","attribute":true},"a_href":{"selector":"a[href]","accessor":"href","attribute":true},"button":{"accessor":"outertext","attribute":false},"option":{"accessor":"innertext","attribute":false},"aria_label":{"selector":"[aria-label]","accessor":"aria-label","attribute":true},"video_src":{"selector":"video[src]","accessor":"src","attribute":true},"video_poster":{"selector":"video[poster]","accessor":"poster","attribute":true},"video_source_src":{"selector":"video source[src]","accessor":"src","attribute":true},"audio_src":{"selector":"audio[src]","accessor":"src","attribute":true},"audio_source_src":{"selector":"audio source[src]","accessor":"src","attribute":true},"picture_image_src":{"selector":"picture image[src]","accessor":"src","attribute":true},"picture_source_srcset":{"selector":"picture source[srcset]","accessor":"srcset","attribute":true},"image_alt":{"selector":"img[alt]","accessor":"alt","attribute":true},"meta_desc":{"selector":"meta[name=\"description\"],meta[property=\"og:title\"],meta[property=\"og:description\"],meta[property=\"og:site_name\"],meta[property=\"og:image:alt\"],meta[name=\"twitter:title\"],meta[name=\"twitter:description\"],meta[name=\"twitter:image:alt\"],meta[name=\"DC.Title\"],meta[name=\"DC.Description\"],meta[property=\"article:section\"],meta[property=\"article:tag\"]","accessor":"content","attribute":true},"page_title":{"selector":"title","accessor":"innertext","attribute":false},"meta_desc_img":{"selector":"meta[property=\"og:image\"],meta[property=\"og:image:secure_url\"],meta[name=\"twitter:image\"]","accessor":"content","attribute":true}},"trp_attributes_accessors":["outertext","innertext","src","value","placeholder","title","href","aria-label","poster","srcset","alt","content"],"gettranslationsnonceregular":"1fc4bd46ae","showdynamiccontentbeforetranslation":"","skip_strings_from_dynamic_translation":[],"skip_strings_from_dynamic_translation_for_substrings":{"href":["amazon-adsystem","googleads","g.doubleclick"]},"duplicate_detections_allowed":"100","trp_translate_numerals_opt":"no","trp_no_auto_translation_selectors":["[data-no-auto-translation]"]}; //# sourceURL=trp-dynamic-translator-js-extra var eio_lazy_vars = {"exactdn_domain":"","skip_autoscale":0,"threshold":0,"use_dpr":1}; //# sourceURL=eio-lazy-load-js-before wp.i18n.setLocaleData( { 'text direction\u0004ltr': [ 'ltr' ] } ); //# sourceURL=wp-i18n-js-after ( function( domain, translations ) { var localeData = translations.locale_data[ domain ] || translations.locale_data.messages; localeData[""].domain = domain; wp.i18n.setLocaleData( localeData, domain ); } )( "contact-form-7", {"translation-revision-date":"2025-10-26 03:28:49+0000","generator":"GlotPress\/4.0.3","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","plural-forms":"nplurals=2; plural=n != 1;","lang":"de"},"This contact form is placed in the wrong place.":["Dieses Kontaktformular wurde an der falschen Stelle platziert."],"Error:":["Fehler:"]}},"comment":{"reference":"includes\/js\/index.js"}} ); //# sourceURL=contact-form-7-js-translations var wpcf7 = { "api": { "root": "https:\/\/meetgirl.ch\/de\/wp-json\/", "namespace": "contact-form-7\/v1" } }; //# sourceURL=contact-form-7-js-before wpa_field_info = {"wpa_field_name":"mtrxuy3800","wpa_field_value":875118,"wpa_add_test":"no"} //# sourceURL=wpascript-js-after var jetMenuPublicSettings = {"version":"2.4.15","ajaxUrl":"https://meetgirl.ch/wp-admin/admin-ajax.php","isMobile":"false","getElementorTemplateApiUrl":"https://meetgirl.ch/de/wp-json/jet-menu-api/v2/get-elementor-template-content","getBlocksTemplateApiUrl":"https://meetgirl.ch/de/wp-json/jet-menu-api/v2/get-blocks-template-content","menuItemsApiUrl":"https://meetgirl.ch/de/wp-json/jet-menu-api/v2/get-menu-items","restNonce":"96dc43b55b","devMode":"false","wpmlLanguageCode":"","menuSettings":{"jetMenuRollUp":"false","jetMenuMouseleaveDelay":"500","jetMenuMegaWidthType":"container","jetMenuMegaWidthSelector":"","jetMenuMegaOpenSubType":"hover","jetMenuMegaAjax":"false"}}; //# sourceURL=jet-menu-public-scripts-js-extra function CxCSSCollector(){"use strict";var t,e=window.CxCollectedCSS;void 0!==e&&((t=document.createElement("style")).setAttribute("title",e.title),t.setAttribute("type",e.type),t.textContent=e.css,document.head.appendChild(t))}CxCSSCollector(); //# sourceURL=jet-menu-public-scripts-js-after var jetPopupData = {"version":"2.0.18","ajax_url":"https://meetgirl.ch/wp-admin/admin-ajax.php","isElementor":"true"}; //# sourceURL=jet-popup-frontend-js-extra var wc_order_attribution = {"params":{"lifetime":1.0e-5,"session":30,"base64":false,"ajaxurl":"https://meetgirl.ch/wp-admin/admin-ajax.php","prefix":"wc_order_attribution_","allowTracking":true},"fields":{"source_type":"current.typ","referrer":"current_add.rf","utm_campaign":"current.cmp","utm_source":"current.src","utm_medium":"current.mdm","utm_content":"current.cnt","utm_id":"current.id","utm_term":"current.trm","utm_source_platform":"current.plt","utm_creative_format":"current.fmt","utm_marketing_tactic":"current.tct","session_entry":"current_add.ep","session_start_time":"current_add.fd","session_pages":"session.pgs","session_count":"udata.vst","user_agent":"udata.uag"}}; //# sourceURL=wc-order-attribution-js-extra moment.updateLocale( 'de_DE', {"months":["Januar","Februar","M\u00e4rz","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],"monthsShort":["Jan.","Feb.","M\u00e4rz","Apr.","Mai","Juni","Juli","Aug.","Sep.","Okt.","Nov.","Dez."],"weekdays":["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],"weekdaysShort":["So.","Mo.","Di.","Mi.","Do.","Fr.","Sa."],"week":{"dow":1},"longDateFormat":{"LT":"G\\hi","LTS":null,"L":null,"LL":"j F Y","LLL":"j. F Y, G:i","LLLL":null}} ); //# sourceURL=moment-js-after window.MyListing_Moment_Locale = 'de'; //# sourceURL=moment-locale-de-js-after var elementorFrontendConfig = {"environmentMode":{"edit":false,"wpPreview":false,"isScriptDebug":false},"i18n":{"shareOnFacebook":"<trp-gettext data-trpgettextoriginal=432>Auf Facebook teilen<\/trp-gettext>","shareOnTwitter":"<trp-gettext data-trpgettextoriginal=433>Auf Twitter teilen<\/trp-gettext>","pinIt":"<trp-gettext data-trpgettextoriginal=434>Anheften<\/trp-gettext>","download":"<trp-gettext data-trpgettextoriginal=435>Herunterladen<\/trp-gettext>","downloadImage":"<trp-gettext data-trpgettextoriginal=436>Bild downloaden<\/trp-gettext>","fullscreen":"<trp-gettext data-trpgettextoriginal=437>Vollbild<\/trp-gettext>","zoom":"<trp-gettext data-trpgettextoriginal=438>Vergr\u00f6\u00dfern<\/trp-gettext>","share":"<trp-gettext data-trpgettextoriginal=439>Teilen<\/trp-gettext>","playVideo":"<trp-gettext data-trpgettextoriginal=440>Video abspielen<\/trp-gettext>","previous":"<trp-gettext data-trpgettextoriginal=441>Zur\u00fcck<\/trp-gettext>","next":"<trp-gettext data-trpgettextoriginal=442>Weiter<\/trp-gettext>","close":"<trp-gettext data-trpgettextoriginal=443>Schlie\u00dfen<\/trp-gettext>","a11yCarouselPrevSlideMessage":"<trp-gettext data-trpgettextoriginal=445>Vorheriges Dia<\/trp-gettext>","a11yCarouselNextSlideMessage":"<trp-gettext data-trpgettextoriginal=446>N\u00e4chstes Dia<\/trp-gettext>","a11yCarouselFirstSlideMessage":"<trp-gettext data-trpgettextoriginal=447>Dies ist die erste Folie<\/trp-gettext>","a11yCarouselLastSlideMessage":"<trp-gettext data-trpgettextoriginal=448>Dies ist die letzte Folie<\/trp-gettext>","a11yCarouselPaginationBulletMessage":"<trp-gettext data-trpgettextoriginal=449>Zum Dia gehen<\/trp-gettext>"},"is_rtl":false,"breakpoints":{"xs":0,"sm":480,"md":768,"lg":1025,"xl":1440,"xxl":1600},"responsive":{"breakpoints":{"mobile":{"label":"Mobil Hochformat","value":767,"default_value":767,"direction":"max","is_enabled":true},"mobile_extra":{"label":"Mobil Querformat","value":880,"default_value":880,"direction":"max","is_enabled":false},"tablet":{"label":"Tablet Hochformat","value":1024,"default_value":1024,"direction":"max","is_enabled":true},"tablet_extra":{"label":"Tablet Querformat","value":1200,"default_value":1200,"direction":"max","is_enabled":false},"laptop":{"label":"Laptop","value":1366,"default_value":1366,"direction":"max","is_enabled":false},"widescreen":{"label":"Breitbild","value":2400,"default_value":2400,"direction":"min","is_enabled":false}},"hasCustomBreakpoints":false},"version":"3.32.3","is_static":false,"experimentalFeatures":{"e_font_icon_svg":true,"additional_custom_breakpoints":true,"container":true,"nested-elements":true,"home_screen":true,"global_classes_should_enforce_capabilities":true,"e_variables":true,"cloud-library":true,"e_opt_in_v4_page":true,"import-export-customization":true},"urls":{"assets":"https:\/\/meetgirl.ch\/wp-content\/plugins\/elementor\/assets\/","ajaxurl":"https:\/\/meetgirl.ch\/wp-admin\/admin-ajax.php","uploadUrl":"https:\/\/meetgirl.ch\/wp-content\/uploads"},"nonces":{"floatingButtonsClickTracking":"61def9f313"},"swiperClass":"swiper","settings":{"page":[],"editorPreferences":[]},"kit":{"active_breakpoints":["viewport_mobile","viewport_tablet"],"global_image_lightbox":"yes","lightbox_enable_counter":"yes","lightbox_enable_fullscreen":"yes","lightbox_enable_zoom":"yes","lightbox_enable_share":"yes","lightbox_title_src":"title","lightbox_description_src":"description"},"post":{"id":18999,"title":"Private%20Schweizerin%20Eva%20-%20Meetgirl%20-%20Annonces%20%C3%A9rotiques%20-%20Escorts%2C%20massages%20et%20salons","excerpt":"","featuredImage":false}}; //# sourceURL=elementor-frontend-js-before var wc_cart_fragments_params = {"ajax_url":"/wp-admin/admin-ajax.php","wc_ajax_url":"https://meetgirl.ch/de/?wc-ajax=%%endpoint%%","cart_hash_key":"wc_cart_hash_5ec4602bb995e26a2d5f164f485aa6f8","fragment_name":"wc_fragments_5ec4602bb995e26a2d5f164f485aa6f8","request_timeout":"5000"}; //# sourceURL=wc-cart-fragments-js-extra var jetElements = {"ajaxUrl":"https://meetgirl.ch/wp-admin/admin-ajax.php","isMobile":"false","templateApiUrl":"https://meetgirl.ch/de/wp-json/jet-elements-api/v1/elementor-template","devMode":"false","messages":{"invalidMail":"Please specify a valid e-mail"}}; //# sourceURL=jet-elements-js-extra var JetBlogSettings = {"ajaxurl":"https://meetgirl.ch/de/escorts/private-schweizerin-eva/?nocache=1784019846&jet_blog_ajax=1"}; //# sourceURL=jet-blog-js-extra (function() { function isMobileNow() { return window.innerWidth <= 767; } function patchIsotope() { if (!window.jQuery) return; var $ = window.jQuery; var orig = $.fn.isotope; if (!orig || $.fn.isotope.__mgSafeV4) return; $.fn.isotope = function() { if (isMobileNow()) return this; return orig.apply(this, arguments); }; $.fn.isotope.__mgSafeV4 = true; } if (window.jQuery) { patchIsotope(); } else { var waitJq = setInterval(function() { if (window.jQuery) { patchIsotope(); clearInterval(waitJq); } }, 30); } })(); document.addEventListener('DOMContentLoaded', function() { function isMobile() { return window.innerWidth <= 767; } function cleanText(s) { return (s || '') .replace(/[\u202F\u00A0]/g, ' ') .replace(/\s+/g, ' ') .trim(); } function normalize(s) { return cleanText(s) .toLowerCase() .normalize('NFD') .replace(/[\u0300-\u036f]/g, '') .replace(/[.,]/g, '') .trim(); } function looksLikeStreet(s) { var n = normalize(s); return /\b(rue|route|avenue|av|chemin|ch|boulevard|bd|place|pl|quai|impasse|allee|cours|strasse|straße|weg|gasse|platz)\b/.test(n); } function detectCanton(text) { var n = normalize(text); var map = { 'geneve':'GE','vaud':'VD','valais':'VS','wallis':'VS','fribourg':'FR','freiburg':'FR', 'berne':'BE','bern':'BE','zurich':'ZH','zuerich':'ZH','neuchatel':'NE','jura':'JU', 'tessin':'TI','ticino':'TI','grisons':'GR','graubunden':'GR','lucerne':'LU','luzern':'LU', 'soleure':'SO','solothurn':'SO','argovie':'AG','aargau':'AG','thurgovie':'TG','thurgau':'TG', 'saint-gall':'SG','st-gallen':'SG','schaffhouse':'SH','schaffhausen':'SH','schwyz':'SZ', 'uri':'UR','glaris':'GL','glarus':'GL','zoug':'ZG','zug':'ZG','bale-ville':'BS', 'basel-stadt':'BS','bale-campagne':'BL','basel-landschaft':'BL' }; for (var key in map) { if (n.indexOf(key) !== -1) return map[key]; } var m = cleanText(text).match(/\b(AG|AI|AR|BE|BL|BS|FR|GE|GL|GR|JU|LU|NE|NW|OW|SG|SH|SO|SZ|TG|TI|UR|VD|VS|ZG|ZH)\b/i); return m ? m[1].toUpperCase() : ''; } function extractCity(address) { var raw = cleanText(address); if (!raw) return ''; var parts = raw.split(',').map(cleanText).filter(Boolean); for (var i = 0; i < parts.length; i++) { var p = parts[i]; if (looksLikeStreet(p)) continue; if (/suisse|switzerland|schweiz/i.test(p)) continue; if (/canton/i.test(p)) continue; if (/^\d{4}$/.test(p)) continue; return p; } return ''; } function getLocation(card) { try { var dl = card.getAttribute('data-locations'); if (!dl || dl === 'false') return ''; var arr = JSON.parse(dl); if (!arr[0] || !arr[0].address) return ''; var address = arr[0].address; var city = extractCity(address); var canton = detectCanton(address); if (city && canton) return city + ', ' + canton; if (city) return city; if (canton) return canton; return ''; } catch(e) { return ''; } } function getStatus(card) { var status = card.querySelector('.codicts-online-status'); if (status) { var txt = cleanText(status.textContent); return { text: txt || 'Online', online: !!status.querySelector('.cdtsols-online') || /online/i.test(txt) }; } var all = cleanText(card.textContent); if (/online/i.test(all)) return { text: 'Online', online: true }; if (/-24h/i.test(all)) return { text: '-24H', online: false }; return null; } function getSlogan(card) { var blocks = card.querySelectorAll('.listing-details-3.c27-footer-section'); var loc = getLocation(card); for (var i = blocks.length - 1; i >= 0; i--) { var txt = cleanText(blocks[i].textContent); if (!txt) continue; if (/online|-24h|offline/i.test(txt)) continue; if (txt === loc) continue; if (looksLikeStreet(txt)) continue; if (/suisse|switzerland|canton/i.test(txt)) continue; if (txt.length > 90) continue; return txt; } return ''; } function injectVerified(card) { var anchor = card.querySelector('.lf-item > a'); if (!anchor) return; var old = anchor.querySelector('.mg-verified-badge'); if (old) old.remove(); var native = card.querySelector('.verified-listing') || card.querySelector('img[src*="tick.svg"]'); if (!native) return; var img = document.createElement('img'); img.className = 'mg-verified-badge'; img.src = native.getAttribute('src') || 'https://meetgirl.ch/wp-content/themes/my-listing/assets/images/tick.svg'; img.alt = 'Profil vérifié'; img.width = 22; img.height = 22; anchor.appendChild(img); } function injectLocation(card) { var info = card.querySelector('.lf-item-info'); if (!info) return; var old = info.querySelector('.mg-location-on-image'); if (old) old.remove(); var loc = getLocation(card); if (!loc) return; var span = document.createElement('span'); span.className = 'mg-location-on-image'; span.textContent = loc; info.appendChild(span); } function rebuildBottom(card) { var blocks = card.querySelectorAll('.listing-details-3.c27-footer-section'); if (!blocks.length) return; var first = blocks[0]; var slogan = getSlogan(card); var status = getStatus(card); for (var i = 0; i < blocks.length; i++) { blocks[i].classList.remove('mg-main-details'); } first.classList.add('mg-main-details'); first.innerHTML = ''; if (slogan) { var p = document.createElement('p'); p.className = 'mg-slogan-below'; p.textContent = slogan; first.appendChild(p); } if (status) { var wrap = document.createElement('div'); wrap.className = 'mg-online-below'; var dot = document.createElement('span'); dot.className = 'mg-online-dot ' + (status.online ? 'online' : 'offline'); var label = document.createElement('span'); label.className = 'mg-online-text'; label.textContent = status.text; wrap.appendChild(dot); wrap.appendChild(label); first.appendChild(wrap); } card.classList.add('mg-processed'); } function fixGrid() { if (!isMobile()) return; var grid = document.querySelector('.results-view.grid'); if (!grid) return; grid.querySelectorAll('.grid-item').forEach(function(item, index) { item.style.setProperty('position', 'relative', 'important'); item.style.setProperty('left', 'auto', 'important'); item.style.setProperty('top', 'auto', 'important'); item.style.setProperty('width', 'calc(50% - 4px)', 'important'); item.style.setProperty('margin', '0 0 8px 0', 'important'); item.style.setProperty('padding', '0', 'important'); item.style.setProperty('clear', 'none', 'important'); item.style.setProperty('box-sizing', 'border-box', 'important'); item.style.setProperty('float', index % 2 === 0 ? 'left' : 'right', 'important'); }); grid.style.setProperty('height', 'auto', 'important'); grid.style.setProperty('overflow', 'hidden', 'important'); grid.style.setProperty('display', 'block', 'important'); grid.style.setProperty('position', 'relative', 'important'); var parent = grid.parentElement; if (parent) { parent.style.setProperty('height', 'auto', 'important'); parent.style.setProperty('overflow', 'visible', 'important'); } } function process(card) { injectVerified(card); if (isMobile()) { injectLocation(card); rebuildBottom(card); } } function runAll() { document.querySelectorAll('.lf-item-container.listing-preview').forEach(process); fixGrid(); } var timer = null; function schedule(delay) { if (timer) clearTimeout(timer); timer = setTimeout(runAll, delay || 150); } runAll(); window.addEventListener('load', function() { runAll(); setTimeout(runAll, 300); setTimeout(runAll, 800); setTimeout(runAll, 1500); }); window.addEventListener('resize', function() { schedule(150); }); if (window.jQuery) { window.jQuery(document).on('mylisting:explore:request-complete', function() { setTimeout(runAll, 150); setTimeout(runAll, 500); setTimeout(runAll, 1200); }); } var obs = new MutationObserver(function() { schedule(200); }); var grid = document.querySelector('.results-view.grid'); if (grid) { obs.observe(grid, { childList: true, subtree: true }); } }); document.addEventListener('DOMContentLoaded', function () { const PACK_IDS = { PREMIUM: 6061, GOLD: 21426, EXPRESS: 166, FREE: 6056 }; function getLang() { const htmlLang = (document.documentElement.getAttribute('lang') || 'fr').toLowerCase(); if (htmlLang.startsWith('de')) return 'de'; if (htmlLang.startsWith('en')) return 'en'; if (htmlLang.startsWith('it')) return 'it'; if (htmlLang.startsWith('es')) return 'es'; return 'fr'; } const lang = getLang(); const I18N = { fr: { detailOpen: 'Détail de l’offre', detailClose: 'Masquer le détail', badges: { premium: 'Recommandé', gold: 'Maxi visibilité', express: 'Boost 7 jours', free: 'Sans frais' }, packs: { premium: { name: 'Pack Premium', hook: 'Avant les annonces gratuites', subhook: 'Girl of the day, push quotidien et vraie visibilité pendant 30 jours', summary: '30 jours · photos illimitées · vidéos illimitées · avant les annonces gratuites', detail: [ 'Avant les annonces gratuites', 'Girl of the day', 'Push quotidien', 'Priorité renforcée dans les résultats', 'Photos illimitées', 'Vidéos illimitées' ], cta: 'Choisir Premium' }, gold: { name: 'Gold Homepage', hook: 'Girl of the day en 1ère position', subhook: 'La visibilité maximale avec les avantages du Premium + présence homepage', summary: '30 jours · homepage · photos illimitées · vidéos illimitées', detail: [ 'Les mêmes avantages que Premium', 'Avant les annonces gratuites', 'Girl of the day (1ère position)', 'Priorité maximale dans les résultats pendant 30 jours', 'Présence sur la homepage', 'Photos illimitées', 'Vidéos illimitées', 'Label « vérifié »' ], cta: 'Choisir Gold' }, express: { name: 'Boost Express', hook: 'Avant les annonces gratuites', subhook: 'Le coup de projecteur sur 7 jours pour remonter rapidement', summary: '7 jours · photos illimitées · vidéos illimitées · Girl of the day', detail: [ 'Même logique de visibilité que Premium sur une durée plus courte', '7 jours coup de projecteur', 'Avant les annonces gratuites', 'Priorité pendant 7 jours', 'Girl of the day (1ère position)', 'Photos illimitées', 'Vidéos illimitées' ], cta: 'Choisir Express' }, free: { name: 'Gratuit', hook: 'Publier sans frais', subhook: 'Pour commencer simplement avec l’essentiel', summary: '1 annonce · 3 photos max · durée 15 jours', detail: [ '1 annonce', '3 photos', 'Durée : 15 jours', '<strong>Certification obligatoire</strong> : envoyer une photo de vous avec le mot meetgirl sur un papier pour montrer que c’est bien vous', 'Cette photo ne sera pas publiée', 'Seules les annonces certifiées et avec un numéro suisse seront publiées', 'Label « vérifié » obligatoire' ], cta: 'Publier gratuitement' } } }, en: { detailOpen: 'Offer details', detailClose: 'Hide details', badges: { premium: 'Recommended', gold: 'Maximum visibility', express: '7-day boost', free: 'Free' }, packs: { premium: { name: 'Premium Package', hook: 'Ahead of free listings', subhook: 'Girl of the day, daily push and real visibility for 30 days', summary: '30 days · unlimited photos · unlimited videos · ahead of free listings', detail: [ 'Ahead of free listings', 'Girl of the day', 'Daily push', 'Stronger priority in results', 'Unlimited photos', 'Unlimited videos' ], cta: 'Choose Premium' }, gold: { name: 'Gold Homepage', hook: 'Girl of the day in 1st position', subhook: 'Maximum visibility with Premium benefits + homepage presence', summary: '30 days · homepage · unlimited photos · unlimited videos', detail: [ 'All Premium benefits included', 'Ahead of free listings', 'Girl of the day (1st position)', 'Maximum priority in results for 30 days', 'Homepage presence', 'Unlimited photos', 'Unlimited videos', '“Verified” label' ], cta: 'Choose Gold' }, express: { name: 'Boost Express', hook: 'Ahead of free listings', subhook: 'A 7-day spotlight to move up fast', summary: '7 days · unlimited photos · unlimited videos · Girl of the day', detail: [ 'Same visibility logic as Premium over a shorter period', '7-day spotlight', 'Ahead of free listings', 'Priority for 7 days', 'Girl of the day (1st position)', 'Unlimited photos', 'Unlimited videos' ], cta: 'Choose Express' }, free: { name: 'Free', hook: 'Publish at no cost', subhook: 'A simple way to start with the essentials', summary: '1 listing · max 3 photos · 15 days', detail: [ '1 listing', '3 photos', 'Duration: 15 days', '<strong>Mandatory verification</strong>: send a photo of yourself with the word meetgirl written on paper to prove it is really you', 'This photo will not be published', 'Only verified listings with a Swiss phone number will be published', '“Verified” label required' ], cta: 'Publish for free' } } }, de: { detailOpen: 'Angebotsdetails', detailClose: 'Details ausblenden', badges: { premium: 'Empfohlen', gold: 'Maximale Sichtbarkeit', express: '7 Tage Boost', free: 'Kostenlos' }, packs: { premium: { name: 'Premium-Paket', hook: 'Vor kostenlosen Anzeigen', subhook: 'Girl of the day, täglicher Push und echte Sichtbarkeit für 30 Tage', summary: '30 Tage · unbegrenzte Fotos · unbegrenzte Videos · vor kostenlosen Anzeigen', detail: [ 'Vor kostenlosen Anzeigen', 'Girl of the day', 'Täglicher Push', 'Stärkere Priorität in den Ergebnissen', 'Unbegrenzte Fotos', 'Unbegrenzte Videos' ], cta: 'Premium wählen' }, gold: { name: 'Gold Homepage', hook: 'Girl of the day auf Platz 1', subhook: 'Maximale Sichtbarkeit mit allen Premium-Vorteilen + Homepage-Präsenz', summary: '30 Tage · Homepage · unbegrenzte Fotos · unbegrenzte Videos', detail: [ 'Alle Premium-Vorteile inklusive', 'Vor kostenlosen Anzeigen', 'Girl of the day (1. Position)', 'Maximale Priorität in den Ergebnissen für 30 Tage', 'Präsenz auf der Homepage', 'Unbegrenzte Fotos', 'Unbegrenzte Videos', '„Verifiziert“-Label' ], cta: 'Gold wählen' }, express: { name: 'Boost Express', hook: 'Vor kostenlosen Anzeigen', subhook: 'Das 7-Tage-Spotlight, um schnell nach oben zu kommen', summary: '7 Tage · unbegrenzte Fotos · unbegrenzte Videos · Girl of the day', detail: [ 'Gleiche Sichtbarkeitslogik wie Premium, aber kürzer', '7 Tage Spotlight', 'Vor kostenlosen Anzeigen', 'Priorität für 7 Tage', 'Girl of the day (1. Position)', 'Unbegrenzte Fotos', 'Unbegrenzte Videos' ], cta: 'Express wählen' }, free: { name: 'Kostenlos', hook: 'Kostenlos veröffentlichen', subhook: 'Einfach starten mit dem Wesentlichen', summary: '1 Anzeige · max. 3 Fotos · 15 Tage', detail: [ '1 Anzeige', '3 Fotos', 'Dauer: 15 Tage', '<strong>Pflicht-Verifizierung</strong>: Senden Sie ein Foto von sich mit dem Wort meetgirl auf einem Blatt Papier, um zu zeigen, dass Sie es wirklich sind', 'Dieses Foto wird nicht veröffentlicht', 'Nur verifizierte Anzeigen mit einer Schweizer Nummer werden veröffentlicht', '„Verifiziert“-Label erforderlich' ], cta: 'Kostenlos veröffentlichen' } } }, it: { detailOpen: 'Dettaglio dell’offerta', detailClose: 'Nascondi dettagli', badges: { premium: 'Consigliato', gold: 'Massima visibilità', express: 'Boost 7 giorni', free: 'Gratis' }, packs: { premium: { name: 'Pacchetto Premium', hook: 'Prima degli annunci gratuiti', subhook: 'Girl of the day, push quotidiano e vera visibilità per 30 giorni', summary: '30 giorni · foto illimitate · video illimitati · prima degli annunci gratuiti', detail: [ 'Prima degli annunci gratuiti', 'Girl of the day', 'Push quotidiano', 'Priorità rafforzata nei risultati', 'Foto illimitate', 'Video illimitati' ], cta: 'Scegli Premium' }, gold: { name: 'Gold Homepage', hook: 'Girl of the day in 1ª posizione', subhook: 'Massima visibilità con i vantaggi del Premium + presenza homepage', summary: '30 giorni · homepage · foto illimitate · video illimitati', detail: [ 'Tutti i vantaggi del Premium inclusi', 'Prima degli annunci gratuiti', 'Girl of the day (1ª posizione)', 'Priorità massima nei risultati per 30 giorni', 'Presenza sulla homepage', 'Foto illimitate', 'Video illimitati', 'Etichetta «verificato»' ], cta: 'Scegli Gold' }, express: { name: 'Boost Express', hook: 'Prima degli annunci gratuiti', subhook: 'Il colpo di visibilità di 7 giorni per risalire rapidamente', summary: '7 giorni · foto illimitate · video illimitati · Girl of the day', detail: [ 'Stessa logica di visibilità del Premium ma su durata più breve', '7 giorni di spinta', 'Prima degli annunci gratuiti', 'Priorità per 7 giorni', 'Girl of the day (1ª posizione)', 'Foto illimitate', 'Video illimitati' ], cta: 'Scegli Express' }, free: { name: 'Gratis', hook: 'Pubblica senza costi', subhook: 'Per iniziare in modo semplice con l’essenziale', summary: '1 annuncio · max 3 foto · 15 giorni', detail: [ '1 annuncio', '3 foto', 'Durata: 15 giorni', '<strong>Verifica obbligatoria</strong>: inviare una tua foto con la parola meetgirl scritta su un foglio per dimostrare che sei davvero tu', 'Questa foto non sarà pubblicata', 'Saranno pubblicati solo gli annunci verificati con un numero svizzero', 'Etichetta «verificato» obbligatoria' ], cta: 'Pubblica gratis' } } }, es: { detailOpen: 'Detalle de la oferta', detailClose: 'Ocultar detalle', badges: { premium: 'Recomendado', gold: 'Máxima visibilidad', express: 'Impulso 7 días', free: 'Gratis' }, packs: { premium: { name: 'Paquete Premium', hook: 'Antes de los anuncios gratuitos', subhook: 'Girl of the day, impulso diario y visibilidad real durante 30 días', summary: '30 días · fotos ilimitadas · vídeos ilimitados · antes de los anuncios gratuitos', detail: [ 'Antes de los anuncios gratuitos', 'Girl of the day', 'Impulso diario', 'Mayor prioridad en los resultados', 'Fotos ilimitadas', 'Vídeos ilimitados' ], cta: 'Elegir Premium' }, gold: { name: 'Gold Homepage', hook: 'Girl of the day en 1ª posición', subhook: 'Máxima visibilidad con las ventajas Premium + presencia en homepage', summary: '30 días · homepage · fotos ilimitadas · vídeos ilimitados', detail: [ 'Todas las ventajas de Premium incluidas', 'Antes de los anuncios gratuitos', 'Girl of the day (1ª posición)', 'Prioridad máxima en los resultados durante 30 días', 'Presencia en la homepage', 'Fotos ilimitadas', 'Vídeos ilimitados', 'Etiqueta «verificado»' ], cta: 'Elegir Gold' }, express: { name: 'Boost Express', hook: 'Antes de los anuncios gratuitos', subhook: 'El foco de 7 días para subir rápido', summary: '7 días · fotos ilimitadas · vídeos ilimitados · Girl of the day', detail: [ 'La misma lógica de visibilidad que Premium, pero por menos tiempo', 'Impulso de 7 días', 'Antes de los anuncios gratuitos', 'Prioridad durante 7 días', 'Girl of the day (1ª posición)', 'Fotos ilimitadas', 'Vídeos ilimitados' ], cta: 'Elegir Express' }, free: { name: 'Gratis', hook: 'Publica sin coste', subhook: 'Para empezar de forma simple con lo esencial', summary: '1 anuncio · máximo 3 fotos · 15 días', detail: [ '1 anuncio', '3 fotos', 'Duración: 15 días', '<strong>Verificación obligatoria</strong>: envía una foto tuya con la palabra meetgirl escrita en un papel para demostrar que realmente eres tú', 'Esta foto no será publicada', 'Solo se publicarán anuncios verificados con un número suizo', 'Etiqueta «verificado» obligatoria' ], cta: 'Publicar gratis' } } } }; const TXT = I18N[lang] || I18N.fr; function getPackageId(card) { if (!card) return null; const direct = [ card.getAttribute('data-package-id'), card.getAttribute('data-plan-id'), card.dataset.packageId, card.dataset.planId ].filter(Boolean); for (const v of direct) { const n = parseInt(v, 10); if (!isNaN(n)) return n; } const inputs = card.querySelectorAll('input, button, a, [data-package-id], [data-plan-id]'); for (const el of inputs) { const candidates = [ el.value, el.getAttribute && el.getAttribute('data-package-id'), el.getAttribute && el.getAttribute('data-plan-id'), el.getAttribute && el.getAttribute('data-id'), el.getAttribute && el.getAttribute('href'), el.getAttribute && el.getAttribute('onclick') ].filter(Boolean); for (const c of candidates) { const m = String(c).match(/\b(21426|6061|6056|166)\b/); if (m) return parseInt(m[1], 10); } } const html = card.innerHTML || ''; const m = html.match(/\b(21426|6061|6056|166)\b/); if (m) return parseInt(m[1], 10); return null; } function getPackKey(id) { if (id === PACK_IDS.PREMIUM) return 'premium'; if (id === PACK_IDS.GOLD) return 'gold'; if (id === PACK_IDS.EXPRESS) return 'express'; if (id === PACK_IDS.FREE) return 'free'; return null; } function scorePack(id) { if (id === PACK_IDS.PREMIUM) return 400; if (id === PACK_IDS.GOLD) return 300; if (id === PACK_IDS.EXPRESS) return 200; if (id === PACK_IDS.FREE) return 100; return 0; } function createEl(tag, className, html) { const el = document.createElement(tag); if (className) el.className = className; if (typeof html === 'string') el.innerHTML = html; return el; } const cards = document.querySelectorAll('#job_package_selection .pricing-item'); cards.forEach(function(card) { const id = getPackageId(card); const key = getPackKey(id); if (!id || !key || !TXT.packs[key]) return; card.setAttribute('data-mg-package-id', String(id)); card.classList.add('mg-pack', 'mg-pack-' + key); const data = TXT.packs[key]; const title = card.querySelector('.plan-name'); const desc = card.querySelector('.plan-desc'); const actionBtn = card.querySelector('.select-plan.buttons.button-2, .select-plan, .button-2.select-plan'); if (title) { title.innerHTML = data.name; } if (actionBtn) { actionBtn.textContent = data.cta; } if (!card.querySelector('.mg-pack-badge')) { const badge = createEl('div', 'mg-pack-badge', TXT.badges[key] || ''); card.appendChild(badge); } if (!card.querySelector('.mg-pack-hook')) { const hook = createEl('div', 'mg-pack-hook', data.hook); const subhook = createEl('div', 'mg-pack-subhook', data.subhook); const priceBlock = card.querySelector('.plan-price'); if (priceBlock && priceBlock.parentNode) { priceBlock.parentNode.insertBefore(hook, priceBlock); if (priceBlock.nextSibling) { priceBlock.parentNode.insertBefore(subhook, priceBlock.nextSibling); } else { priceBlock.parentNode.appendChild(subhook); } } } if (desc) { desc.innerHTML = ''; const summary = createEl('div', 'mg-pack-summary', data.summary); desc.appendChild(summary); const toggle = createEl('button', 'mg-pack-toggle', '<span>' + TXT.detailOpen + '</span><i aria-hidden="true">›</i>'); toggle.setAttribute('type', 'button'); toggle.setAttribute('aria-expanded', 'false'); const detailWrap = createEl('div', 'mg-pack-detail-wrap', ''); const detailList = createEl('ul', 'mg-pack-detail-list', ''); data.detail.forEach(function(item) { detailList.appendChild(createEl('li', '', item)); }); detailWrap.appendChild(detailList); toggle.addEventListener('click', function(e) { e.preventDefault(); e.stopPropagation(); const isOpen = card.classList.toggle('mg-detail-open'); toggle.setAttribute('aria-expanded', isOpen ? 'true' : 'false'); toggle.querySelector('span').textContent = isOpen ? TXT.detailClose : TXT.detailOpen; }); desc.appendChild(toggle); desc.appendChild(detailWrap); } }); const container = document.querySelector('#job_package_selection .row.section-body'); if (container) { const items = Array.from(container.children); items.sort(function(a, b) { const aCard = a.querySelector('.pricing-item'); const bCard = b.querySelector('.pricing-item'); const aId = aCard ? parseInt(aCard.getAttribute('data-mg-package-id') || '0', 10) : 0; const bId = bCard ? parseInt(bCard.getAttribute('data-mg-package-id') || '0', 10) : 0; return scorePack(bId) - scorePack(aId); }); items.forEach(function(el) { container.appendChild(el); }); } }); .profile-cover-gallery, .gallery-grid.photoswipe-gallery { position: relative !important; } .profile-cover-gallery { overflow: hidden; } .lbr-gallery-arrow { position: absolute; top: 50%; transform: translateY(-50%); z-index: 50; width: 48px; height: 48px; border: 0; border-radius: 999px; background: rgba(0,0,0,.58); color: #fff; font-size: 34px; line-height: 48px; text-align: center; cursor: pointer; box-shadow: 0 8px 26px rgba(0,0,0,.25); transition: .2s ease; } .lbr-gallery-arrow:hover { background: rgba(0,0,0,.82); transform: translateY(-50%) scale(1.05); } .lbr-gallery-prev { left: 22px; } .lbr-gallery-next { right: 22px; } .lbr-gallery-count { position: absolute; right: 24px; bottom: 24px; z-index: 55; padding: 8px 13px; border-radius: 999px; background: rgba(0,0,0,.62); color: #fff; font-size: 13px; font-weight: 700; backdrop-filter: blur(8px); } #lbr-hero-hint { position: absolute; left: 24px; bottom: 24px; z-index: 55; padding: 9px 14px; border-radius: 999px; background: rgba(255,255,255,.92); color: #111827; font-size: 13px; font-weight: 800; box-shadow: 0 10px 30px rgba(0,0,0,.18); } .gallery-grid.photoswipe-gallery { display: grid !important; grid-template-columns: repeat(3, 1fr); gap: 10px !important; } .gallery-grid.photoswipe-gallery .gallery-item { position: relative; display: block; overflow: hidden; border-radius: 12px; aspect-ratio: 16 / 9; background: #f3f4f6; } .gallery-grid.photoswipe-gallery .gallery-item img { width: 100% !important; height: 100% !important; object-fit: cover !important; display: block; transition: transform .25s ease, filter .25s ease; } .gallery-grid.photoswipe-gallery .gallery-item:hover img { transform: scale(1.04); filter: brightness(.86); } .gallery-grid.photoswipe-gallery .gallery-item i { position: absolute; inset: auto 10px 10px auto; z-index: 2; width: 34px; height: 34px; border-radius: 999px; background: rgba(0,0,0,.62); color: #fff; display: flex; align-items: center; justify-content: center; } .lbr-lightbox { position: fixed; inset: 0; z-index: 999999; background: rgba(0,0,0,.94); display: none; align-items: center; justify-content: center; } .lbr-lightbox.is-open { display: flex; } .lbr-lightbox-img { max-width: 92vw; max-height: 86vh; object-fit: contain; border-radius: 12px; background: #000; box-shadow: 0 20px 80px rgba(0,0,0,.45); } .lbr-lightbox-close, .lbr-lightbox-prev, .lbr-lightbox-next { position: fixed; z-index: 1000000; border: 0; border-radius: 999px; background: rgba(255,255,255,.16); color: #fff; cursor: pointer; backdrop-filter: blur(10px); } .lbr-lightbox-close { top: 22px; right: 22px; width: 48px; height: 48px; font-size: 34px; line-height: 44px; } .lbr-lightbox-prev, .lbr-lightbox-next { top: 50%; transform: translateY(-50%); width: 58px; height: 58px; font-size: 44px; line-height: 54px; } .lbr-lightbox-prev { left: 28px; } .lbr-lightbox-next { right: 28px; } .lbr-lightbox-counter { position: fixed; left: 50%; bottom: 24px; transform: translateX(-50%); z-index: 1000000; padding: 9px 15px; border-radius: 999px; background: rgba(255,255,255,.16); color: #fff; font-size: 14px; font-weight: 800; } @media (max-width: 768px) { .gallery-grid.photoswipe-gallery { grid-template-columns: repeat(2, 1fr); gap: 8px !important; } .lbr-gallery-arrow { width: 42px; height: 42px; line-height: 42px; font-size: 28px; } .lbr-gallery-prev { left: 12px; } .lbr-gallery-next { right: 12px; } #lbr-hero-hint { left: 12px; bottom: 14px; font-size: 12px; padding: 8px 11px; } .lbr-gallery-count { right: 12px; bottom: 14px; font-size: 12px; } .lbr-lightbox-img { max-width: 96vw; max-height: 78vh; border-radius: 8px; } .lbr-lightbox-prev, .lbr-lightbox-next { width: 44px; height: 44px; font-size: 34px; line-height: 40px; } .lbr-lightbox-prev { left: 10px; } .lbr-lightbox-next { right: 10px; } .lbr-lightbox-close { top: 14px; right: 14px; } } (function () { 'use strict'; function ready(fn) { if (document.readyState !== 'loading') fn(); else document.addEventListener('DOMContentLoaded', fn); } ready(function () { var heroGallery = document.querySelector('.profile-cover-gallery .header-gallery-carousel'); var thumbGallery = document.querySelector('.gallery-grid.photoswipe-gallery'); var heroLinks = heroGallery ? Array.prototype.slice.call(heroGallery.querySelectorAll('a.photoswipe-item[href]')) : []; var thumbLinks = thumbGallery ? Array.prototype.slice.call(thumbGallery.querySelectorAll('a.photoswipe-item[href]')) : []; var allLinks = thumbLinks.length ? thumbLinks : heroLinks; if (!allLinks.length) return; if (heroGallery && heroLinks.length > 1) { var section = document.querySelector('.profile-cover-gallery'); if (section && !section.querySelector('.lbr-gallery-prev')) { section.insertAdjacentHTML('beforeend', '<button class="lbr-gallery-arrow lbr-gallery-prev" type="button" aria-label="Image précédente">‹</button>' + '<button class="lbr-gallery-arrow lbr-gallery-next" type="button" aria-label="Image suivante">›</button>' + '<div class="lbr-gallery-count"><span class="lbr-current">1</span> / <span class="lbr-total">' + heroLinks.length + '</span></div>' ); } var heroCurrent = 0; var currentEl = section ? section.querySelector('.lbr-current') : null; function updateHeroCounter(index) { heroCurrent = ((index % heroLinks.length) + heroLinks.length) % heroLinks.length; if (currentEl) currentEl.textContent = String(heroCurrent + 1); } function owlGo(direction) { if (window.jQuery && jQuery(heroGallery).data('owl.carousel')) { jQuery(heroGallery).trigger(direction === 'next' ? 'next.owl.carousel' : 'prev.owl.carousel'); } } var heroPrev = section ? section.querySelector('.lbr-gallery-prev') : null; var heroNext = section ? section.querySelector('.lbr-gallery-next') : null; if (heroPrev) { heroPrev.addEventListener('click', function (e) { e.preventDefault(); e.stopPropagation(); owlGo('prev'); updateHeroCounter(heroCurrent - 1); }); } if (heroNext) { heroNext.addEventListener('click', function (e) { e.preventDefault(); e.stopPropagation(); owlGo('next'); updateHeroCounter(heroCurrent + 1); }); } } if (!document.querySelector('.lbr-lightbox')) { document.body.insertAdjacentHTML('beforeend', '<div class="lbr-lightbox" aria-hidden="true">' + '<button class="lbr-lightbox-close" type="button" aria-label="Fermer">×</button>' + '<button class="lbr-lightbox-prev" type="button" aria-label="Image précédente">‹</button>' + '<img class="lbr-lightbox-img" src="" alt="Image annonce">' + '<button class="lbr-lightbox-next" type="button" aria-label="Image suivante">›</button>' + '<div class="lbr-lightbox-counter"></div>' + '</div>' ); } var lightbox = document.querySelector('.lbr-lightbox'); var img = lightbox.querySelector('.lbr-lightbox-img'); var counter = lightbox.querySelector('.lbr-lightbox-counter'); var activeLinks = allLinks; var current = 0; function normalize(index, total) { return ((index % total) + total) % total; } function showImage(index) { if (!activeLinks.length) return; current = normalize(index, activeLinks.length); img.src = activeLinks[current].getAttribute('href'); counter.textContent = (current + 1) + ' / ' + activeLinks.length; } function openLightbox(index, sourceLinks) { activeLinks = sourceLinks && sourceLinks.length ? sourceLinks : allLinks; showImage(index); lightbox.classList.add('is-open'); lightbox.setAttribute('aria-hidden', 'false'); document.documentElement.style.overflow = 'hidden'; } function closeLightbox() { lightbox.classList.remove('is-open'); lightbox.setAttribute('aria-hidden', 'true'); img.src = ''; document.documentElement.style.overflow = ''; } function nextImage() { showImage(current + 1); } function prevImage() { showImage(current - 1); } function bindLinks(links) { links.forEach(function (link, index) { link.addEventListener('click', function (e) { e.preventDefault(); e.stopPropagation(); if (e.stopImmediatePropagation) e.stopImmediatePropagation(); openLightbox(index, links); return false; }, true); }); } bindLinks(heroLinks); bindLinks(thumbLinks); lightbox.querySelector('.lbr-lightbox-close').addEventListener('click', closeLightbox); lightbox.querySelector('.lbr-lightbox-next').addEventListener('click', nextImage); lightbox.querySelector('.lbr-lightbox-prev').addEventListener('click', prevImage); lightbox.addEventListener('click', function (e) { if (e.target === lightbox) closeLightbox(); }); document.addEventListener('keydown', function (e) { if (!lightbox.classList.contains('is-open')) return; if (e.key === 'Escape') closeLightbox(); if (e.key === 'ArrowRight') nextImage(); if (e.key === 'ArrowLeft') prevImage(); }); var startX = 0; lightbox.addEventListener('touchstart', function (e) { startX = e.changedTouches[0].clientX; }, { passive: true }); lightbox.addEventListener('touchend', function (e) { var endX = e.changedTouches[0].clientX; var diff = startX - endX; if (Math.abs(diff) > 45) { diff > 0 ? nextImage() : prevImage(); } }, { passive: true }); }); })(); :root{ --mgp-red:#8f1730; --mgp-pink:#f67675; --mgp-bg:#0f0b10; --mgp-card:#171116; --mgp-card2:#21151c; --mgp-text:#ffffff; --mgp-muted:rgba(255,255,255,.72); --mgp-soft:rgba(255,255,255,.08); --mgp-line:rgba(255,255,255,.12); --mgp-green:#2fd36b; --mgp-shadow:0 24px 70px rgba(0,0,0,.35); --mgp-radius:26px; } body.single-job_listing{ background: radial-gradient(circle at 15% 0%, rgba(246,118,117,.22), transparent 34%), linear-gradient(180deg,#190d13 0%, #0f0b10 42%, #0f0b10 100%) !important; color:var(--mgp-text); overflow-x:hidden !important; } body.single-job_listing .single-job-listing *, body.single-job_listing .mgp-shell *, body.single-job_listing .mgp-mobile-sticky *{ box-sizing:border-box; } body.single-job_listing .profile-cover, body.single-job_listing .profile-cover-gallery, body.single-job_listing .featured-section-gallery{ position:relative !important; background:#0d0a0d !important; overflow:hidden !important; } body.single-job_listing .profile-cover:after, body.single-job_listing .profile-cover-gallery:after, body.single-job_listing .featured-section-gallery:after{ content:""; position:absolute; inset:0; z-index:5; pointer-events:none; background:linear-gradient( 180deg, rgba(15,11,16,.02) 0%, rgba(15,11,16,.06) 38%, rgba(15,11,16,.78) 100% ); } body.single-job_listing .header-gallery-carousel .item, body.single-job_listing .featured-section-gallery .item{ min-height:420px !important; background-size:cover !important; background-position:center !important; } body.single-job_listing .main-info-desktop, body.single-job_listing .main-info-mobile, body.single-job_listing .qla-container, body.single-job_listing .listing-main-buttons, body.single-job_listing .quick-listing-actions, body.single-job_listing .profile-header{ display:none !important; } body.single-job_listing .cts-open-chat, body.single-job_listing a.cts-open-chat, body.single-job_listing li:has(.cts-open-chat){ display:none !important; } .mgp-shell{ max-width:1320px; margin:-72px auto 34px; padding:0 16px; position:relative; z-index:50; } .mgp-top{ display:grid; grid-template-columns:minmax(0,1fr) 390px; gap:22px; align-items:stretch; margin-bottom:22px; } .mgp-identity{ border-radius:var(--mgp-radius); background: linear-gradient(135deg, rgba(246,118,117,.16), transparent 42%), linear-gradient(180deg, rgba(33,21,28,.98), rgba(18,13,18,.98)); border:1px solid rgba(246,118,117,.22); box-shadow:var(--mgp-shadow); padding:24px; min-width:0; overflow:hidden; } .mgp-kicker{ display:flex; flex-wrap:wrap; align-items:center; gap:9px; margin-bottom:14px; } .mgp-badge{ display:inline-flex; align-items:center; justify-content:center; gap:7px; min-height:30px; padding:7px 11px; border-radius:999px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.12); color:#fff; font-size:12px; font-weight:850; line-height:1; white-space:nowrap; } .mgp-badge.is-verified{ background:rgba(47,211,107,.12); border-color:rgba(47,211,107,.28); color:#d9ffe5; } .mgp-badge.is-online{ background:rgba(47,211,107,.12); border-color:rgba(47,211,107,.28); color:#d9ffe5; } .mgp-dot{ width:8px; height:8px; border-radius:50%; display:inline-block; background:var(--mgp-pink); box-shadow:0 0 0 3px rgba(246,118,117,.15); } .mgp-dot.is-online{ background:var(--mgp-green); box-shadow:0 0 0 3px rgba(47,211,107,.16); } .mgp-title{ margin:0; color:#fff; font-size:clamp(28px, 4vw, 54px); line-height:.95; letter-spacing:-.055em; font-weight:950; } .mgp-tagline{ margin:12px 0 0; color:var(--mgp-pink); font-size:clamp(17px, 2vw, 24px); line-height:1.15; font-weight:850; letter-spacing:-.02em; } .mgp-submeta{ display:flex; flex-wrap:wrap; gap:10px 14px; margin-top:14px; color:var(--mgp-muted); font-size:14px; font-weight:750; } .mgp-specialties{ margin-top:18px; } .mgp-section-label{ display:block; margin:0 0 10px; color:rgba(255,255,255,.58); font-size:11px; font-weight:950; text-transform:uppercase; letter-spacing:.08em; } .mgp-chip-grid{ display:flex; flex-wrap:wrap; gap:8px; } .mgp-chip{ display:inline-flex; align-items:center; justify-content:center; min-height:34px; padding:8px 12px; border-radius:999px; background:rgba(246,118,117,.12); border:1px solid rgba(246,118,117,.26); color:#fff; font-size:13px; font-weight:850; line-height:1; } .mgp-contact{ border-radius:var(--mgp-radius); background: linear-gradient(180deg, rgba(246,118,117,.14), transparent 40%), linear-gradient(180deg,#20151c,#130f13); border:1px solid rgba(246,118,117,.24); box-shadow:var(--mgp-shadow); padding:20px; min-width:0; position:sticky; top:92px; align-self:start; } .mgp-contact-title{ margin:0; font-size:22px; line-height:1.05; letter-spacing:-.035em; font-weight:950; color:#fff; } .mgp-contact-sub{ margin:7px 0 16px; color:var(--mgp-muted); font-size:13px; font-weight:650; line-height:1.35; } .mgp-contact-card{ display:flex; align-items:center; gap:12px; padding:12px; border-radius:18px; background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.10); margin-bottom:13px; } .mgp-avatar{ width:50px; height:50px; border-radius:50%; background:linear-gradient(135deg,var(--mgp-pink),var(--mgp-red)); display:flex; align-items:center; justify-content:center; color:#fff; font-weight:950; font-size:18px; flex:0 0 auto; } .mgp-avatar img{ width:100%; height:100%; display:block; object-fit:cover; border-radius:50%; } .mgp-contact-name{ display:block; color:#fff; font-size:16px; font-weight:950; line-height:1.1; } .mgp-contact-line{ display:block; margin-top:4px; color:var(--mgp-muted); font-size:12px; font-weight:750; } .mgp-actions{ display:grid; grid-template-columns:1fr; gap:10px; } .mgp-btn{ display:flex; align-items:center; justify-content:center; gap:8px; min-height:52px; padding:13px 15px; border-radius:18px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.12); color:#fff !important; text-decoration:none !important; font-size:15px; font-weight:950; line-height:1; cursor:pointer; transition:transform .18s ease, box-shadow .18s ease, background .18s ease; } .mgp-btn:hover{ transform:translateY(-1px); background:rgba(255,255,255,.11); box-shadow:0 14px 26px rgba(0,0,0,.20); color:#fff !important; } .mgp-btn.call{ background:linear-gradient(180deg,#f98988,#f67675); border-color:rgba(246,118,117,.9); color:#fff !important; box-shadow:0 14px 26px rgba(246,118,117,.20); } .mgp-btn.wa{ background:linear-gradient(180deg,#31d978,#16b85a); border-color:rgba(47,211,107,.82); color:#fff !important; box-shadow:0 14px 26px rgba(47,211,107,.18); } .mgp-btn.is-hidden{ display:none !important; } .mgp-mini{ margin-top:13px; padding:12px 13px; border-radius:16px; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.10); color:rgba(255,255,255,.78); font-size:12px; font-weight:750; line-height:1.4; } .mgp-layout{ display:grid; grid-template-columns:minmax(0,1fr) 390px; gap:22px; align-items:start; } .mgp-content, .mgp-side{ min-width:0; } body.single-job_listing .listing-tabs{ background:transparent !important; padding:0 !important; } body.single-job_listing .listing-tab, body.single-job_listing .profile-body{ background:transparent !important; padding-top:0 !important; } body.single-job_listing .tab-template-two-columns{ width:100% !important; max-width:none !important; padding:0 !important; } body.single-job_listing .tab-template-two-columns > .row{ margin:0 !important; display:grid !important; grid-template-columns:minmax(0,1fr) 390px !important; gap:22px !important; } body.single-job_listing .tab-template-two-columns > .row > .col-md-6{ width:auto !important; float:none !important; padding:0 !important; } body.single-job_listing .cts-main-column, body.single-job_listing .cts-side-column{ margin:0 !important; } body.single-job_listing .block-type-gallery, body.single-job_listing .block-type-text, body.single-job_listing .block-type-tags, body.single-job_listing .block-type-table, body.single-job_listing .block-type-details, body.single-job_listing .block-type-categories, body.single-job_listing .block-type-location, body.single-job_listing .block-type-general_repeater{ width:100% !important; float:none !important; padding-left:0 !important; padding-right:0 !important; margin-bottom:18px !important; } body.single-job_listing .element, body.single-job_listing .gallery-block, body.single-job_listing .content-block, body.single-job_listing .table-block, body.single-job_listing .map-block, body.single-job_listing .single-menu-item{ background:rgba(23,17,22,.96) !important; border:1px solid rgba(255,255,255,.10) !important; border-radius:24px !important; box-shadow:0 18px 46px rgba(0,0,0,.22) !important; overflow:hidden !important; color:#fff !important; } body.single-job_listing .pf-head{ background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.025)) !important; border-bottom:1px solid rgba(255,255,255,.10) !important; padding:15px 18px !important; } body.single-job_listing .pf-head .title-style-1{ display:flex !important; align-items:center !important; gap:10px !important; margin:0 !important; } body.single-job_listing .pf-head .title-style-1 i{ color:var(--mgp-pink) !important; font-size:19px !important; } body.single-job_listing .pf-head h5{ color:#fff !important; font-size:15px !important; font-weight:950 !important; line-height:1.15 !important; margin:0 !important; letter-spacing:-.01em !important; } body.single-job_listing .pf-body{ padding:18px !important; color:rgba(255,255,255,.86) !important; } body.single-job_listing .wp-editor-content, body.single-job_listing .content-block, body.single-job_listing .content-block p{ color:rgba(255,255,255,.86) !important; font-size:15px !important; line-height:1.65 !important; font-weight:500 !important; } body.single-job_listing .content-block p{ margin:0 0 14px !important; } body.single-job_listing .extra-details li, body.single-job_listing .outlined-list li{ background:rgba(255,255,255,.06) !important; border:1px solid rgba(255,255,255,.10) !important; border-radius:16px !important; padding:12px 13px !important; margin-bottom:9px !important; color:#fff !important; } body.single-job_listing .item-attr{ color:rgba(255,255,255,.55) !important; font-size:11px !important; font-weight:950 !important; text-transform:uppercase !important; letter-spacing:.06em !important; margin-bottom:5px !important; } body.single-job_listing .item-property{ color:#fff !important; font-size:14px !important; font-weight:800 !important; line-height:1.32 !important; } body.single-job_listing .block-type-tags .outlined-list, body.single-job_listing .block-type-tags .details-list{ display:flex !important; flex-wrap:wrap !important; gap:8px !important; margin:0 !important; padding:0 !important; } body.single-job_listing .block-type-tags .outlined-list li, body.single-job_listing .block-type-tags .details-list li{ margin:0 !important; padding:0 !important; background:transparent !important; border:none !important; } body.single-job_listing .block-type-tags .outlined-list li a, body.single-job_listing .block-type-tags .details-list li a{ display:inline-flex !important; align-items:center !important; gap:8px !important; min-height:36px !important; padding:8px 12px !important; border-radius:999px !important; background:rgba(246,118,117,.12) !important; border:1px solid rgba(246,118,117,.26) !important; color:#fff !important; font-size:13px !important; font-weight:850 !important; text-decoration:none !important; } body.single-job_listing .block-type-tags .term-icon, body.single-job_listing .block-type-tags .term-icon img{ display:none !important; } body.single-job_listing .gallerySlider, body.single-job_listing .galleryPreview, body.single-job_listing .galleryPreview .owl-stage-outer{ border-radius:18px !important; overflow:hidden !important; } body.single-job_listing .galleryPreview img{ border-radius:18px !important; object-fit:cover !important; } body.single-job_listing .gallery-thumb{ margin-top:10px !important; } body.single-job_listing .gallery-thumb .slide-thumb{ border-radius:14px !important; overflow:hidden !important; border:1px solid rgba(255,255,255,.14) !important; } body.single-job_listing .map-block .contact-map, body.single-job_listing .c27-map{ border-radius:18px !important; overflow:hidden !important; } body.single-job_listing .map-block-address, body.single-job_listing .map-block-address p, body.single-job_listing .map-block-address a{ color:rgba(255,255,255,.82) !important; font-weight:750 !important; } body.single-job_listing .similar-listings{ background:#0f0b10 !important; padding-top:20px !important; } body.single-job_listing .similar-listings .section-title h2{ color:#fff !important; } .mgp-mobile-sticky{ display:none; } .mgp-share-toast{ position:fixed; left:50%; bottom:86px; transform:translateX(-50%) translateY(20px); z-index:10050; padding:12px 15px; border-radius:999px; background:rgba(15,11,16,.96); border:1px solid rgba(246,118,117,.35); color:#fff; font-size:13px; font-weight:850; opacity:0; pointer-events:none; transition:.2s ease; box-shadow:0 16px 40px rgba(0,0,0,.30); } .mgp-share-toast.is-visible{ opacity:1; transform:translateX(-50%) translateY(0); } @media (max-width: 991px){ body.single-job_listing{ padding-bottom:76px !important; } body.single-job_listing .header-gallery-carousel .item, body.single-job_listing .featured-section-gallery .item{ min-height:390px !important; } .mgp-shell{ margin:-54px auto 22px; padding:0 12px; } .mgp-top{ display:block; margin-bottom:16px; } .mgp-identity{ padding:18px; border-radius:24px; margin-bottom:12px; } .mgp-title{ font-size:32px; line-height:.98; } .mgp-tagline{ font-size:19px; } .mgp-contact{ position:relative; top:auto; padding:14px; border-radius:22px; } .mgp-contact-title, .mgp-contact-sub, .mgp-actions .mgp-btn.share, .mgp-actions .mgp-btn.report{ display:none !important; } .mgp-contact-card{ margin:0; padding:11px; } .mgp-actions{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); margin-top:10px; } .mgp-btn{ min-height:46px; border-radius:15px; font-size:13px; } body.single-job_listing .tab-template-two-columns > .row{ display:block !important; } body.single-job_listing .tab-template-two-columns > .row > .col-md-6{ width:100% !important; display:block !important; } body.single-job_listing .pf-head{ padding:13px 15px !important; } body.single-job_listing .pf-body{ padding:15px !important; } body.single-job_listing .element, body.single-job_listing .gallery-block, body.single-job_listing .content-block, body.single-job_listing .table-block, body.single-job_listing .map-block, body.single-job_listing .single-menu-item{ border-radius:20px !important; } .mgp-mobile-sticky{ position:fixed; left:0; right:0; bottom:0; z-index:10020; display:block; padding:9px 10px calc(9px + env(safe-area-inset-bottom)); background:rgba(15,11,16,.96); backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px); border-top:1px solid rgba(255,255,255,.10); box-shadow:0 -12px 30px rgba(0,0,0,.32); } .mgp-mobile-sticky-inner{ display:grid; grid-template-columns:1fr 1fr; gap:9px; max-width:680px; margin:0 auto; } .mgp-mobile-sticky .mgp-btn{ min-height:50px; border-radius:16px; font-size:14px; } .mgp-mobile-sticky .mgp-btn.only-one{ grid-column:1 / -1; } } @media (max-width: 520px){ body.single-job_listing .header-gallery-carousel .item, body.single-job_listing .featured-section-gallery .item{ min-height:350px !important; } .mgp-shell{ margin-top:-42px; } .mgp-kicker{ gap:7px; } .mgp-badge{ font-size:11px; min-height:28px; padding:7px 9px; } .mgp-title{ font-size:29px; } .mgp-chip{ font-size:12px; min-height:32px; padding:8px 10px; } } (function(){ 'use strict'; if (window.__MG_PREMIUM_LISTING_V1__) return; window.__MG_PREMIUM_LISTING_V1__ = true; var config = { postId: 18999, title: "Private Schweizerin Eva", permalink: "https:\/\/meetgirl.ch\/de\/escorts\/private-schweizerin-eva\/", phoneRaw: "+41789109080", whatsappRaw: "+41789109080", verified: "1", tags: ["Massage \u00e9rotique","Massage nuru","Massage prostate","Massage sensuel","Massage tantra"], cities: ["Suisse allemande"], regions: [], categories: ["Escort","Massage relax","Masseuses \u00e9rotiques"] }; function $(sel, root){ return (root || document).querySelector(sel); } function $all(sel, root){ return Array.prototype.slice.call((root || document).querySelectorAll(sel)); } function esc(str){ return String(str || '').replace(/[&<>"']/g, function(m){ return ({ '&':'&', '<':'<', '>':'>', '"':'"', "'":''' })[m]; }); } function cleanText(str){ return String(str || '').replace(/\s+/g, ' ').trim(); } function currentLang(){ var htmlLang = (document.documentElement.getAttribute('lang') || '').toLowerCase(); var path = (window.location.pathname || '').toLowerCase(); var body = document.body ? (document.body.className || '').toLowerCase() : ''; if (path.indexOf('/de/') === 0 || htmlLang.indexOf('de') === 0 || body.indexOf('translatepress-de') !== -1) return 'de'; if (path.indexOf('/en/') === 0 || htmlLang.indexOf('en') === 0 || body.indexOf('translatepress-en') !== -1) return 'en'; if (path.indexOf('/it/') === 0 || htmlLang.indexOf('it') === 0 || body.indexOf('translatepress-it') !== -1) return 'it'; if (path.indexOf('/es/') === 0 || htmlLang.indexOf('es') === 0 || body.indexOf('translatepress-es') !== -1) return 'es'; return 'fr'; } var LANG = currentLang(); var I18N = { fr: { verified: 'Annonce vérifiée', online: 'Online', recent: '-24H', specialties: 'Spécialités', location: 'Ville', categories: 'Catégorie', contact_title: 'Contact direct', contact_sub: 'Contactez cette annonce rapidement par téléphone ou WhatsApp.', call: 'Appeler', whatsapp: 'WhatsApp', share: 'Partager', report: 'Signaler', safety: 'Sécurité', safety_text: 'Ne versez aucun acompte avant la rencontre. Privilégiez les annonces vérifiées et signalez tout profil douteux.', copied: 'Lien copié.', copy_prompt: 'Copiez ce lien :', default_tagline: 'Profil disponible sur Meetgirl' }, de: { verified: 'Verifizierte Anzeige', online: 'Online', recent: '-24H', specialties: 'Spezialitäten', location: 'Ort', categories: 'Kategorie', contact_title: 'Direkter Kontakt', contact_sub: 'Kontaktieren Sie diese Anzeige schnell per Telefon oder WhatsApp.', call: 'Anrufen', whatsapp: 'WhatsApp', share: 'Teilen', report: 'Melden', safety: 'Sicherheit', safety_text: 'Zahlen Sie nichts im Voraus. Bevorzugen Sie verifizierte Anzeigen und melden Sie verdächtige Profile.', copied: 'Link kopiert.', copy_prompt: 'Kopieren Sie diesen Link:', default_tagline: 'Profil auf Meetgirl verfügbar' }, en: { verified: 'Verified listing', online: 'Online', recent: '-24H', specialties: 'Specialties', location: 'City', categories: 'Category', contact_title: 'Direct contact', contact_sub: 'Contact this listing quickly by phone or WhatsApp.', call: 'Call', whatsapp: 'WhatsApp', share: 'Share', report: 'Report', safety: 'Safety', safety_text: 'Do not send any payment before meeting. Prefer verified listings and report suspicious profiles.', copied: 'Link copied.', copy_prompt: 'Copy this link:', default_tagline: 'Profile available on Meetgirl' }, it: { verified: 'Annuncio verificato', online: 'Online', recent: '-24H', specialties: 'Specialità', location: 'Città', categories: 'Categoria', contact_title: 'Contatto diretto', contact_sub: 'Contatta rapidamente questo annuncio via telefono o WhatsApp.', call: 'Chiama', whatsapp: 'WhatsApp', share: 'Condividi', report: 'Segnala', safety: 'Sicurezza', safety_text: 'Non inviare pagamenti in anticipo. Preferisci annunci verificati e segnala i profili sospetti.', copied: 'Link copiato.', copy_prompt: 'Copia questo link:', default_tagline: 'Profilo disponibile su Meetgirl' }, es: { verified: 'Anuncio verificado', online: 'Online', recent: '-24H', specialties: 'Especialidades', location: 'Ciudad', categories: 'Categoría', contact_title: 'Contacto directo', contact_sub: 'Contacta este anuncio rápidamente por teléfono o WhatsApp.', call: 'Llamar', whatsapp: 'WhatsApp', share: 'Compartir', report: 'Reportar', safety: 'Seguridad', safety_text: 'No envíes ningún pago por adelantado. Prioriza anuncios verificados y reporta perfiles sospechosos.', copied: 'Enlace copiado.', copy_prompt: 'Copia este enlace:', default_tagline: 'Perfil disponible en Meetgirl' } }; function tr(key){ return (I18N[LANG] && I18N[LANG][key]) || I18N.fr[key] || key; } function normalizePhone(raw){ var v = String(raw || '').trim(); if (!v) return ''; v = v.replace(/[^\d+]/g, ''); if (v.indexOf('00') === 0) { v = '+' + v.slice(2); } if (v.charAt(0) !== '+') { if (v.indexOf('41') === 0) { v = '+' + v; } else if (v.charAt(0) === '0') { v = '+41' + v.slice(1); } } return v; } function findPhoneLink(){ var native = $('a[href^="tel:"]'); if (native && native.getAttribute('href')) return native.getAttribute('href'); var phone = normalizePhone(config.phoneRaw); return phone ? 'tel:' + phone : ''; } function findWhatsappLink(){ var native = $('a[href*="wa.me"], a[href*="whatsapp"]'); if (native && native.getAttribute('href')) return native.getAttribute('href'); var raw = config.whatsappRaw || config.phoneRaw; var phone = normalizePhone(raw); if (!phone) return ''; var digits = phone.replace(/[^\d]/g, ''); if (!digits) return ''; var text = encodeURIComponent('Bonjour, j’ai vu votre annonce sur Meetgirl : ' + config.permalink); return 'https://wa.me/' + digits + '?text=' + text; } function findReportButton(){ return $('a[href*="claim"], a[href*="report"], .claim-listing a, .report-listing a, a:has(.mi.warning), a:has(.mi.flag)'); } function findReviewButton(){ return $('.show-review-form'); } function getTagline(){ var el = $('.listing-tagline-field'); var txt = el ? cleanText(el.textContent) : ''; return txt || tr('default_tagline'); } function getTitle(){ var h1 = $('.profile-name h1'); if (!h1) return config.title || ''; var clone = h1.cloneNode(true); $all('.verified-badge, .tooltip-element, .edit-listing, img', clone).forEach(function(el){ el.remove(); }); var txt = cleanText(clone.textContent); return txt || config.title || ''; } function getSpecialties(){ var tags = []; $all('.block-type-tags .details-list a span, .block-type-tags .outlined-list a span').forEach(function(el){ var txt = cleanText(el.textContent); if (txt && tags.indexOf(txt) === -1) tags.push(txt); }); if (!tags.length && Array.isArray(config.tags)) { config.tags.forEach(function(t){ t = cleanText(t); if (t && tags.indexOf(t) === -1) tags.push(t); }); } return tags.slice(0, 10); } function getCategories(){ var cats = []; $all('.block-type-categories .category-name').forEach(function(el){ var txt = cleanText(el.textContent); if (txt && cats.indexOf(txt) === -1) cats.push(txt); }); if (!cats.length && Array.isArray(config.categories)) { config.categories.forEach(function(t){ t = cleanText(t); if (t && cats.indexOf(t) === -1) cats.push(t); }); } return cats.slice(0, 4); } function getLocation(){ var txt = ''; var villeBlock = $all('.block-type-details').filter(function(block){ return /ville|ort|city|città|ciudad/i.test(cleanText(block.textContent)); })[0]; if (villeBlock) { var val = $('.wp-editor-content', villeBlock); txt = val ? cleanText(val.textContent) : ''; } if (!txt && Array.isArray(config.cities) && config.cities.length) { txt = cleanText(config.cities[0]); } if (!txt && Array.isArray(config.regions) && config.regions.length) { txt = cleanText(config.regions[0]); } var mapAddr = $('.map-block-address p'); if (!txt && mapAddr) { txt = cleanText(mapAddr.textContent).split(',')[0]; } return txt; } function getStatus(){ var st = $('.codicts-online-status'); if (st) { var txt = cleanText(st.textContent); return { text: txt || tr('online'), online: !!$('.cdtsols-online', st) || /online/i.test(txt) }; } return { text: tr('recent'), online: false }; } function buildChips(items){ if (!items || !items.length) return ''; return items.map(function(item){ return '<span class="mgp-chip">' + esc(item) + '</span>'; }).join(''); } function initials(name){ name = cleanText(name); if (!name) return 'M'; return name.charAt(0).toUpperCase(); } function buildShell(){ if ($('#mgp-shell')) return; var hero = $('.profile-cover, .profile-cover-gallery, .featured-section-gallery'); var insertAfter = hero || $('#c27-single-listing'); if (!insertAfter || !insertAfter.parentNode) return; var title = getTitle(); var tagline = getTagline(); var loc = getLocation(); var status = getStatus(); var phoneHref = findPhoneLink(); var waHref = findWhatsappLink(); var specs = getSpecialties(); var cats = getCategories(); var verifiedHtml = config.verified ? '<span class="mgp-badge is-verified">✓ ' + esc(tr('verified')) + '</span>' : ''; var statusHtml = '' + '<span class="mgp-badge ' + (status.online ? 'is-online' : '') + '">' + ' <span class="mgp-dot ' + (status.online ? 'is-online' : '') + '"></span>' + ' ' + esc(status.text || tr('online')) + '</span>'; var locHtml = loc ? '<span class="mgp-badge">📍 ' + esc(loc) + '</span>' : ''; var catHtml = cats.length ? '<span class="mgp-badge">' + esc(cats.join(' · ')) + '</span>' : ''; var html = '' + '<div id="mgp-shell" class="mgp-shell">' + ' <div class="mgp-top">' + ' <section class="mgp-identity" aria-label="Meetgirl profil">' + ' <div class="mgp-kicker">' + verifiedHtml + statusHtml + locHtml + catHtml + '</div>' + ' <h1 class="mgp-title">' + esc(title) + '</h1>' + ' <p class="mgp-tagline">' + esc(tagline) + '</p>' + ' <div class="mgp-specialties">' + ' <span class="mgp-section-label">' + esc(tr('specialties')) + '</span>' + ' <div class="mgp-chip-grid">' + buildChips(specs) + '</div>' + ' </div>' + ' </section>' + ' <aside class="mgp-contact" aria-label="Contact">' + ' <h2 class="mgp-contact-title">' + esc(tr('contact_title')) + '</h2>' + ' <p class="mgp-contact-sub">' + esc(tr('contact_sub')) + '</p>' + ' <div class="mgp-contact-card">' + ' <div class="mgp-avatar">' + esc(initials(title)) + '</div>' + ' <div>' + ' <span class="mgp-contact-name">' + esc(title) + '</span>' + ' <span class="mgp-contact-line">' + esc([loc, status.text].filter(Boolean).join(' · ')) + '</span>' + ' </div>' + ' </div>' + ' <div class="mgp-actions">' + ' <a class="mgp-btn call ' + (phoneHref ? '' : 'is-hidden') + '" href="' + esc(phoneHref || '#') + '" rel="nofollow">📞 ' + esc(tr('call')) + '</a>' + ' <a class="mgp-btn wa ' + (waHref ? '' : 'is-hidden') + '" href="' + esc(waHref || '#') + '" target="_blank" rel="nofollow noopener">🟢 ' + esc(tr('whatsapp')) + '</a>' + ' <a class="mgp-btn share" href="#" id="mgp-share-btn">↗ ' + esc(tr('share')) + '</a>' + ' <a class="mgp-btn report" href="#" id="mgp-report-btn">⚠ ' + esc(tr('report')) + '</a>' + ' </div>' + ' <div class="mgp-mini"><strong>' + esc(tr('safety')) + '.</strong> ' + esc(tr('safety_text')) + '</div>' + ' </aside>' + ' </div>' + '</div>'; insertAfter.insertAdjacentHTML('afterend', html); bindShellButtons(); buildMobileSticky(phoneHref, waHref); enhanceNativeBlocks(); } function bindShellButtons(){ var shareBtn = $('#mgp-share-btn'); var reportBtn = $('#mgp-report-btn'); if (shareBtn) { shareBtn.addEventListener('click', function(e){ e.preventDefault(); shareListing(); }); } if (reportBtn) { reportBtn.addEventListener('click', function(e){ e.preventDefault(); var native = findReportButton(); if (native) { native.click(); } else { shareToast(tr('report')); } }); } } function buildMobileSticky(phoneHref, waHref){ if ($('#mgp-mobile-sticky')) return; if (!phoneHref && !waHref) return; var count = (phoneHref ? 1 : 0) + (waHref ? 1 : 0); var only = count === 1 ? ' only-one' : ''; var html = '' + '<div id="mgp-mobile-sticky" class="mgp-mobile-sticky">' + ' <div class="mgp-mobile-sticky-inner">' + (phoneHref ? '<a class="mgp-btn call' + only + '" href="' + esc(phoneHref) + '" rel="nofollow">📞 ' + esc(tr('call')) + '</a>' : '') + (waHref ? '<a class="mgp-btn wa' + only + '" href="' + esc(waHref) + '" target="_blank" rel="nofollow noopener">🟢 ' + esc(tr('whatsapp')) + '</a>' : '') + ' </div>' + '</div>'; document.body.insertAdjacentHTML('beforeend', html); } function shareToast(text){ var toast = $('#mgp-share-toast'); if (!toast) { document.body.insertAdjacentHTML('beforeend', '<div id="mgp-share-toast" class="mgp-share-toast"></div>'); toast = $('#mgp-share-toast'); } toast.textContent = text; toast.classList.add('is-visible'); setTimeout(function(){ toast.classList.remove('is-visible'); }, 1800); } function shareListing(){ var data = { title: config.title, text: config.title, url: config.permalink }; if (navigator.share) { navigator.share(data).catch(function(){}); return; } if (navigator.clipboard && navigator.clipboard.writeText) { navigator.clipboard.writeText(config.permalink).then(function(){ shareToast(tr('copied')); }); return; } window.prompt(tr('copy_prompt'), config.permalink); } function hideNativeMessaging(){ $all('.cts-open-chat').forEach(function(el){ var li = el.closest('li'); if (li) { li.style.display = 'none'; } el.style.display = 'none'; }); $all('.quick-listing-actions a').forEach(function(a){ var txt = cleanText(a.textContent).toLowerCase(); if (txt.indexOf('messagerie') !== -1 || txt.indexOf('message') !== -1 || a.classList.contains('cts-open-chat')) { var li = a.closest('li'); if (li) li.style.display = 'none'; a.style.display = 'none'; } }); } function enhanceNativeBlocks(){ hideNativeMessaging(); var tagsBlock = $('.block-type-tags'); var descBlock = $('.block-field-job_description, .block-type-text.block-field-job_description'); var galleryBlock = $('.block-field-job_gallery, .block-type-gallery'); if (tagsBlock && descBlock && descBlock.parentNode) { descBlock.parentNode.insertBefore(tagsBlock, descBlock); } if (galleryBlock) { galleryBlock.classList.add('mgp-gallery-main'); } var safetyBlock = $all('.block-type-details').filter(function(block){ return /versez|paiement|arnaque|sécurité|verifi|vérifi|douteux|warning/i.test(cleanText(block.textContent)); })[0]; if (safetyBlock) { safetyBlock.classList.add('mgp-safety-block'); } document.body.classList.add('mgp-ready'); } function init(){ buildShell(); hideNativeMessaging(); setTimeout(function(){ buildShell(); hideNativeMessaging(); enhanceNativeBlocks(); }, 400); setTimeout(function(){ hideNativeMessaging(); enhanceNativeBlocks(); }, 1200); } if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', init); } else { init(); } window.addEventListener('load', function(){ init(); setTimeout(init, 800); }); })(); /* ========================================================= MEETGIRL — FIX STRUCTURE FICHE PREMIUM V1.1 ========================================================= */ body.single-job_listing{ background:#981a34 !important; } body.single-job_listing .mgp-shell{ max-width:1320px !important; } body.single-job_listing .mgp-top{ align-items:start !important; } body.single-job_listing .mgp-identity{ min-height:0 !important; height:auto !important; } body.single-job_listing .mgp-specialties{ margin-bottom:0 !important; padding-bottom:0 !important; } body.single-job_listing .mgp-chip-grid{ margin-bottom:0 !important; padding-bottom:0 !important; } /* Corrige le gros bloc vide : ne jamais étirer la carte identité */ @media (min-width: 992px){ body.single-job_listing .mgp-top{ grid-template-columns:minmax(0, 1fr) 390px !important; align-items:start !important; } body.single-job_listing .mgp-identity, body.single-job_listing .mgp-contact{ align-self:start !important; } } /* ========================================================= Recentrage complet des blocs MyListing ========================================================= */ body.single-job_listing .listing-tabs, body.single-job_listing .listing-tab, body.single-job_listing .profile-body, body.single-job_listing .tab-template-two-columns{ background:transparent !important; width:100% !important; max-width:none !important; margin:0 auto !important; padding-left:0 !important; padding-right:0 !important; } body.single-job_listing .tab-template-two-columns > .row{ display:block !important; width:100% !important; max-width:1220px !important; margin:0 auto !important; padding:0 16px !important; } body.single-job_listing .tab-template-two-columns > .row > .col-md-6{ float:none !important; width:100% !important; max-width:1220px !important; margin:0 auto !important; padding:0 !important; display:block !important; } body.single-job_listing .cts-main-column, body.single-job_listing .cts-side-column, body.single-job_listing .cts-column-wrapper{ display:block !important; width:100% !important; max-width:1220px !important; margin:0 auto !important; padding:0 !important; } body.single-job_listing .cts-main-column > div, body.single-job_listing .cts-side-column > div, body.single-job_listing .block-type-gallery, body.single-job_listing .block-type-general_repeater, body.single-job_listing .block-type-location, body.single-job_listing .block-type-details, body.single-job_listing .block-type-table, body.single-job_listing .block-type-text, body.single-job_listing .block-type-tags, body.single-job_listing .block-type-categories{ float:none !important; width:100% !important; max-width:1220px !important; margin:0 auto 20px auto !important; padding-left:0 !important; padding-right:0 !important; display:block !important; clear:both !important; } /* ========================================================= Style uniforme pour TOUS les blocs, y compris galerie/ville/langue ========================================================= */ body.single-job_listing .element, body.single-job_listing .gallery-block, body.single-job_listing .content-block, body.single-job_listing .table-block, body.single-job_listing .map-block, body.single-job_listing .single-menu-item{ width:100% !important; max-width:100% !important; background:#140d13 !important; border:1px solid rgba(255,255,255,.10) !important; border-radius:24px !important; box-shadow:0 18px 46px rgba(0,0,0,.22) !important; overflow:hidden !important; color:#fff !important; } body.single-job_listing .pf-head{ background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.025)) !important; border-bottom:1px solid rgba(255,255,255,.10) !important; padding:15px 18px !important; } body.single-job_listing .pf-body{ padding:18px !important; } /* Galerie : pleine largeur propre */ body.single-job_listing .block-type-gallery .element, body.single-job_listing .block-type-gallery .gallery-block{ background:#140d13 !important; } body.single-job_listing .gallerySlider, body.single-job_listing .galleryPreview, body.single-job_listing .galleryPreview .owl-stage-outer{ width:100% !important; max-width:100% !important; border-radius:20px !important; overflow:hidden !important; } body.single-job_listing .galleryPreview img{ width:100% !important; max-height:none !important; object-fit:cover !important; border-radius:20px !important; } body.single-job_listing .gallery-thumb{ margin-top:12px !important; } body.single-job_listing .gallery-thumb .slide-thumb{ border-radius:14px !important; overflow:hidden !important; border:1px solid rgba(255,255,255,.16) !important; } /* Selfie/repeater : évite la carte blanche vide en bas */ body.single-job_listing .block-type-general_repeater .food-menu-items{ display:grid !important; grid-template-columns:1fr !important; gap:18px !important; } body.single-job_listing .block-type-general_repeater .single-menu-item{ background:#140d13 !important; border-radius:24px !important; } body.single-job_listing .block-type-general_repeater .gr-content{ display:block !important; } body.single-job_listing .block-type-general_repeater .menu-thumb, body.single-job_listing .block-type-general_repeater .menu-thumb a, body.single-job_listing .block-type-general_repeater .menu-thumb img{ width:100% !important; border-radius:20px !important; overflow:hidden !important; } body.single-job_listing .block-type-general_repeater .menu-content{ margin:0 !important; padding:14px 16px !important; background:#140d13 !important; color:#fff !important; } body.single-job_listing .block-type-general_repeater .menu-item-title{ color:#fff !important; font-weight:900 !important; } /* Ville + Langue : rendu comme les autres blocs */ body.single-job_listing .block-type-details .outlined-list, body.single-job_listing .block-type-details .details-block-content{ display:grid !important; grid-template-columns:1fr !important; gap:10px !important; margin:0 !important; padding:0 !important; } body.single-job_listing .block-type-details .outlined-list li, body.single-job_listing .block-type-details .details-block-content li{ display:flex !important; align-items:center !important; justify-content:space-between !important; gap:12px !important; background:rgba(255,255,255,.06) !important; border:1px solid rgba(255,255,255,.10) !important; border-radius:16px !important; padding:13px 14px !important; margin:0 !important; color:#fff !important; } body.single-job_listing .block-type-details .wp-editor-content{ color:#fff !important; font-size:15px !important; font-weight:850 !important; line-height:1.35 !important; } /* Tables type "Un peu plus sur moi" */ body.single-job_listing .extra-details{ display:grid !important; grid-template-columns:1fr !important; gap:10px !important; margin:0 !important; padding:0 !important; } body.single-job_listing .extra-details li{ display:flex !important; align-items:center !important; justify-content:space-between !important; gap:14px !important; background:rgba(255,255,255,.06) !important; border:1px solid rgba(255,255,255,.10) !important; border-radius:16px !important; padding:13px 14px !important; margin:0 !important; } body.single-job_listing .item-attr{ color:rgba(255,255,255,.55) !important; font-size:11px !important; font-weight:950 !important; text-transform:uppercase !important; letter-spacing:.06em !important; margin:0 !important; } body.single-job_listing .item-property{ color:#fff !important; font-size:14px !important; font-weight:850 !important; line-height:1.32 !important; text-align:right !important; } /* Description */ body.single-job_listing .block-field-job_description .pf-body, body.single-job_listing .content-block .pf-body{ padding:22px !important; } body.single-job_listing .content-block p{ color:rgba(255,255,255,.88) !important; font-size:15px !important; line-height:1.7 !important; font-weight:600 !important; margin:0 0 14px !important; } /* ========================================================= Mobile : pas de doublon Appeler / WhatsApp ========================================================= */ @media (max-width: 991px){ body.single-job_listing .mgp-contact .mgp-actions{ display:none !important; } body.single-job_listing .mgp-contact{ margin-bottom:16px !important; } body.single-job_listing .mgp-contact-card{ margin-bottom:0 !important; } body.single-job_listing .mgp-mini{ margin-top:12px !important; } body.single-job_listing .tab-template-two-columns > .row{ padding:0 10px !important; } body.single-job_listing .cts-main-column > div, body.single-job_listing .cts-side-column > div, body.single-job_listing .block-type-gallery, body.single-job_listing .block-type-general_repeater, body.single-job_listing .block-type-location, body.single-job_listing .block-type-details, body.single-job_listing .block-type-table, body.single-job_listing .block-type-text, body.single-job_listing .block-type-tags, body.single-job_listing .block-type-categories{ margin-bottom:14px !important; } body.single-job_listing .element, body.single-job_listing .gallery-block, body.single-job_listing .content-block, body.single-job_listing .table-block, body.single-job_listing .map-block, body.single-job_listing .single-menu-item{ border-radius:20px !important; } body.single-job_listing .pf-head{ padding:13px 15px !important; } body.single-job_listing .pf-body{ padding:15px !important; } body.single-job_listing .extra-details li, body.single-job_listing .block-type-details .outlined-list li, body.single-job_listing .block-type-details .details-block-content li{ align-items:flex-start !important; flex-direction:column !important; gap:5px !important; } body.single-job_listing .item-property{ text-align:left !important; } } /* Sécurité contre le grand vide rouge généré par les colonnes */ body.single-job_listing .row:before, body.single-job_listing .row:after{ display:none !important; } (function(){ 'use strict'; function all(sel, root){ return Array.prototype.slice.call((root || document).querySelectorAll(sel)); } function txt(el){ return (el && el.textContent ? el.textContent : '').replace(/\s+/g, ' ').trim(); } function moveNativeBlocksToSingleColumn(){ var main = document.querySelector('.cts-main-column'); var side = document.querySelector('.cts-side-column'); if (!main || !side) return; if (document.body.classList.contains('mgp-single-column-fixed')) return; var order = [ '.block-type-gallery', '.block-type-tags', '.block-field-job_description', '.block-type-table', '.block-type-details', '.block-type-categories', '.block-type-general_repeater', '.block-type-location' ]; order.forEach(function(selector){ all(selector, document).forEach(function(block){ if (!block || block.closest('.similar-listings')) return; main.appendChild(block); }); }); document.body.classList.add('mgp-single-column-fixed'); } function removeMobileDuplicateActions(){ if (window.innerWidth > 991) return; all('.mgp-contact .mgp-actions').forEach(function(el){ el.style.display = 'none'; }); } function removeEmptyTopSpace(){ all('.mgp-identity, .mgp-top, .mgp-shell').forEach(function(el){ el.style.minHeight = '0'; el.style.height = 'auto'; }); } function fixEmptyRepeaterCards(){ all('.block-type-general_repeater .single-menu-item').forEach(function(card){ var hasImg = !!card.querySelector('img, .menu-thumb'); var content = txt(card); if (!hasImg && content.length < 3) { card.style.display = 'none'; } }); } function cleanNativeMessaging(){ all('.cts-open-chat').forEach(function(el){ var li = el.closest('li'); if (li) li.style.display = 'none'; el.style.display = 'none'; }); all('.quick-listing-actions a').forEach(function(a){ var t = txt(a).toLowerCase(); if (t.indexOf('messagerie') !== -1 || t.indexOf('message') !== -1) { var li = a.closest('li'); if (li) li.style.display = 'none'; a.style.display = 'none'; } }); } function runFixes(){ moveNativeBlocksToSingleColumn(); removeMobileDuplicateActions(); removeEmptyTopSpace(); fixEmptyRepeaterCards(); cleanNativeMessaging(); } if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', runFixes); } else { runFixes(); } window.addEventListener('load', function(){ runFixes(); setTimeout(runFixes, 400); setTimeout(runFixes, 1200); }); window.addEventListener('resize', function(){ setTimeout(runFixes, 150); }); })(); /* ========================================================= MEETGIRL — FIX DESKTOP STRUCTURE V1.2 ========================================================= */ @media (min-width: 992px){ body.single-job_listing .mgp-top{ display:grid !important; grid-template-columns:minmax(0, 1fr) 390px !important; gap:22px !important; align-items:start !important; margin-bottom:22px !important; } body.single-job_listing .mgp-left-stack{ display:flex !important; flex-direction:column !important; gap:18px !important; min-width:0 !important; } body.single-job_listing .mgp-left-stack .mgp-identity{ margin:0 !important; } body.single-job_listing .mgp-left-stack .block-field-job_description, body.single-job_listing .mgp-left-stack .block-type-text.block-field-job_description{ margin:0 !important; width:100% !important; max-width:100% !important; } body.single-job_listing .mgp-left-stack .block-field-job_description .element, body.single-job_listing .mgp-left-stack .block-field-job_description .content-block{ border-radius:26px !important; background:#140d13 !important; border:1px solid rgba(255,255,255,.10) !important; box-shadow:0 18px 46px rgba(0,0,0,.22) !important; } body.single-job_listing .mgp-contact{ align-self:start !important; } /* Alignement propre des lignes desktop */ body.single-job_listing .extra-details li{ display:grid !important; grid-template-columns: 38% 1fr !important; align-items:center !important; gap:18px !important; } body.single-job_listing .item-attr{ text-align:left !important; white-space:normal !important; } body.single-job_listing .item-property{ text-align:left !important; justify-self:start !important; width:100% !important; } body.single-job_listing .block-type-details .outlined-list li, body.single-job_listing .block-type-details .details-block-content li{ display:grid !important; grid-template-columns: 38% 1fr !important; align-items:center !important; gap:18px !important; } body.single-job_listing .block-type-details .wp-editor-content{ text-align:left !important; justify-self:start !important; } } /* Si WhatsApp absent, on force la disparition propre */ body.single-job_listing.mgp-no-whatsapp .mgp-btn.wa, body.single-job_listing.mgp-no-whatsapp .mgp-mobile-sticky .mgp-btn.wa, body.single-job_listing.mgp-no-whatsapp a[href*="wa.me"], body.single-job_listing.mgp-no-whatsapp a[href*="whatsapp"]{ display:none !important; } body.single-job_listing.mgp-no-whatsapp .mgp-mobile-sticky-inner{ grid-template-columns:1fr !important; } body.single-job_listing.mgp-no-whatsapp .mgp-mobile-sticky .mgp-btn.call{ grid-column:1 / -1 !important; } (function(){ 'use strict'; var HAS_WHATSAPP = true; function one(sel, root){ return (root || document).querySelector(sel); } function all(sel, root){ return Array.prototype.slice.call((root || document).querySelectorAll(sel)); } function fixWhatsapp(){ if (HAS_WHATSAPP) return; document.body.classList.add('mgp-no-whatsapp'); all('.mgp-btn.wa, .mgp-mobile-sticky .mgp-btn.wa').forEach(function(el){ el.remove(); }); all('a[href*="wa.me"], a[href*="whatsapp"]').forEach(function(a){ var inPremium = a.closest('.mgp-contact') || a.closest('.mgp-mobile-sticky') || a.closest('.quick-listing-actions'); if (inPremium) { var li = a.closest('li'); if (li) { li.style.display = 'none'; } a.style.display = 'none'; } }); var stickyInner = one('.mgp-mobile-sticky-inner'); if (stickyInner && stickyInner.children.length === 1) { stickyInner.children[0].classList.add('only-one'); } } function moveDescriptionUnderIdentityDesktop(){ if (window.innerWidth < 992) return; var top = one('.mgp-top'); var identity = one('.mgp-identity'); var contact = one('.mgp-contact'); var desc = one('.block-field-job_description, .block-type-text.block-field-job_description'); if (!top || !identity || !contact || !desc) return; if (one('.mgp-left-stack')) return; var stack = document.createElement('div'); stack.className = 'mgp-left-stack'; top.insertBefore(stack, identity); stack.appendChild(identity); stack.appendChild(desc); if (contact.parentNode !== top) { top.appendChild(contact); } } function fixTablesAlignment(){ all('.extra-details li').forEach(function(li){ li.style.display = 'grid'; li.style.gridTemplateColumns = window.innerWidth >= 992 ? '38% 1fr' : '1fr'; li.style.alignItems = 'center'; }); } function run(){ fixWhatsapp(); moveDescriptionUnderIdentityDesktop(); fixTablesAlignment(); } if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', run); } else { run(); } window.addEventListener('load', function(){ run(); setTimeout(run, 400); setTimeout(run, 1200); }); window.addEventListener('resize', function(){ setTimeout(run, 180); }); })(); @media (min-width: 992px){ body.single-job_listing .mgp-shell{ max-width:1460px !important; padding-left:18px !important; padding-right:18px !important; } body.single-job_listing .mgp-top{ grid-template-columns:minmax(0, 1fr) 360px !important; gap:24px !important; max-width:1460px !important; margin-left:auto !important; margin-right:auto !important; } body.single-job_listing .mgp-left-stack{ width:100% !important; max-width:none !important; } body.single-job_listing .mgp-identity{ width:100% !important; max-width:none !important; min-height:0 !important; padding:28px 30px 30px !important; } body.single-job_listing .mgp-title{ font-size:clamp(42px, 4.2vw, 68px) !important; line-height:.92 !important; letter-spacing:-.065em !important; max-width:980px !important; } body.single-job_listing .mgp-tagline{ font-size:clamp(21px, 2vw, 30px) !important; max-width:900px !important; } body.single-job_listing .mgp-chip-grid{ max-width:980px !important; } body.single-job_listing .mgp-contact{ width:360px !important; max-width:360px !important; padding:18px !important; } body.single-job_listing .mgp-contact-title{ font-size:21px !important; } body.single-job_listing .mgp-contact-card{ padding:11px !important; } body.single-job_listing .mgp-btn{ min-height:49px !important; } body.single-job_listing .tab-template-two-columns > .row{ max-width:1320px !important; } body.single-job_listing .cts-main-column, body.single-job_listing .cts-side-column, body.single-job_listing .cts-column-wrapper, body.single-job_listing .cts-main-column > div, body.single-job_listing .cts-side-column > div, body.single-job_listing .block-type-gallery, body.single-job_listing .block-type-general_repeater, body.single-job_listing .block-type-location, body.single-job_listing .block-type-details, body.single-job_listing .block-type-table, body.single-job_listing .block-type-text, body.single-job_listing .block-type-tags, body.single-job_listing .block-type-categories{ max-width:1320px !important; } } @media (min-width: 1400px){ body.single-job_listing .mgp-shell{ max-width:1540px !important; } body.single-job_listing .mgp-top{ grid-template-columns:minmax(0, 1fr) 370px !important; max-width:1540px !important; } body.single-job_listing .mgp-contact{ width:370px !important; max-width:370px !important; } body.single-job_listing .mgp-title{ max-width:1080px !important; } body.single-job_listing .mgp-tagline, body.single-job_listing .mgp-chip-grid{ max-width:1040px !important; } } @media (max-width: 991px) { body.single-job_listing .mgp-contact .mgp-actions { display: none !important; } body.single-job_listing .mgp-mobile-bottom-actions { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 10px !important; max-width: 680px !important; margin: 18px auto 92px !important; padding: 0 10px !important; } body.single-job_listing .mgp-mobile-bottom-actions .mgp-btn { display: flex !important; align-items: center !important; justify-content: center !important; min-height: 46px !important; border-radius: 16px !important; background: rgba(255,255,255,.08) !important; border: 1px solid rgba(255,255,255,.14) !important; color: #ffffff !important; font-size: 13px !important; font-weight: 900 !important; text-decoration: none !important; } } @media (min-width: 992px) { body.single-job_listing .mgp-mobile-bottom-actions { display: none !important; } } (function(){ 'use strict'; function one(sel, root){ return (root || document).querySelector(sel); } function buildBottomActions(){ if (window.innerWidth > 991) return; if (one('.mgp-mobile-bottom-actions')) return; var share = one('#mgp-share-btn'); var report = one('#mgp-report-btn'); if (!share && !report) return; var wrap = document.createElement('div'); wrap.className = 'mgp-mobile-bottom-actions'; if (share) { var shareClone = share.cloneNode(true); shareClone.removeAttribute('id'); shareClone.addEventListener('click', function(e){ e.preventDefault(); share.click(); }); wrap.appendChild(shareClone); } if (report) { var reportClone = report.cloneNode(true); reportClone.removeAttribute('id'); reportClone.addEventListener('click', function(e){ e.preventDefault(); report.click(); }); wrap.appendChild(reportClone); } var target = one('.listing-tabs') || one('#c27-single-listing') || document.body; target.parentNode.insertBefore(wrap, target.nextSibling); } if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', buildBottomActions); } else { buildBottomActions(); } window.addEventListener('load', function(){ buildBottomActions(); setTimeout(buildBottomActions, 500); }); })(); @media (max-width: 991px) { body.single-job_listing .mg-slider-hint-v4 { position: fixed !important; left: 50% !important; top: 96px !important; transform: translateX(-50%) translateY(-8px) !important; z-index: 999999 !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; gap: 8px !important; padding: 9px 14px !important; border-radius: 999px !important; background: rgba(15, 11, 16, .82) !important; border: 1px solid rgba(255,255,255,.24) !important; color: #ffffff !important; font-size: 12px !important; font-weight: 850 !important; line-height: 1 !important; white-space: nowrap !important; box-shadow: 0 12px 30px rgba(0,0,0,.35) !important; backdrop-filter: blur(10px) !important; -webkit-backdrop-filter: blur(10px) !important; pointer-events: none !important; opacity: 0 !important; transition: opacity .35s ease, transform .35s ease !important; } body.single-job_listing .mg-slider-hint-v4.is-visible { opacity: 1 !important; transform: translateX(-50%) translateY(0) !important; } body.single-job_listing .mg-slider-hint-v4-icon { color: #f67675 !important; font-size: 15px !important; line-height: 1 !important; animation: mgSliderHintV4Move 1.1s ease-in-out infinite !important; } @keyframes mgSliderHintV4Move { 0%, 100% { transform: translateX(0); } 50% { transform: translateX(5px); } } } @media (min-width: 992px) { body.single-job_listing .mg-slider-hint-v4 { display: none !important; } } (function() { 'use strict'; var hintText = "Glisser pour voir les photos"; function isMobile() { return window.innerWidth <= 991; } function hasGallery() { return document.querySelector('.header-gallery-carousel') || document.querySelector('.profile-cover-gallery') || document.querySelector('.featured-section-gallery') || document.querySelector('.profile-cover'); } function removeOldHints() { document.querySelectorAll( '.mg-hero-slider-hint, .mg-hero-slider-hint-v2, .mg-hero-slider-hint-v3, .mg-slider-hint-v4' ).forEach(function(el) { el.remove(); }); } function initHint() { if (!isMobile()) return; if (!hasGallery()) return; removeOldHints(); var hint = document.createElement('div'); hint.className = 'mg-slider-hint-v4'; hint.innerHTML = '<span class="mg-slider-hint-v4-icon">↔</span>' + '<span>' + hintText + '</span>'; document.body.appendChild(hint); setTimeout(function() { hint.classList.add('is-visible'); }, 600); setTimeout(function() { hint.classList.remove('is-visible'); }, 5200); setTimeout(function() { if (hint && hint.parentNode) { hint.parentNode.removeChild(hint); } }, 6200); } if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', initHint); } else { initHint(); } window.addEventListener('load', function() { setTimeout(initHint, 500); }); })(); /* Masquer le bloc spécialités natif : déjà affiché dans le bloc premium */ body.single-job_listing .block-type-tags { display: none !important; } /* Anti débordement global */ body.single-job_listing, body.single-job_listing html, body.single-job_listing #c27-single-listing, body.single-job_listing .single-job-listing { overflow-x: hidden !important; max-width: 100vw !important; } @media (max-width: 991px) { body.single-job_listing { width: 100% !important; max-width: 100vw !important; overflow-x: hidden !important; touch-action: pan-y !important; } body.single-job_listing .mgp-shell, body.single-job_listing .listing-tabs, body.single-job_listing .tab-template-two-columns, body.single-job_listing .tab-template-two-columns > .row, body.single-job_listing .cts-main-column, body.single-job_listing .cts-side-column, body.single-job_listing .cts-column-wrapper { width: 100% !important; max-width: 100vw !important; overflow-x: hidden !important; } /* Stabilise les galeries MyListing */ body.single-job_listing .gallerySlider, body.single-job_listing .galleryPreview, body.single-job_listing .galleryPreview .owl-stage-outer, body.single-job_listing .gallery-thumb, body.single-job_listing .gallery-thumb .owl-stage-outer, body.single-job_listing .header-gallery-carousel, body.single-job_listing .header-gallery-carousel .owl-stage-outer { overflow: hidden !important; max-width: 100% !important; transform: none !important; will-change: auto !important; } body.single-job_listing .galleryPreview .owl-stage, body.single-job_listing .gallery-thumb .owl-stage, body.single-job_listing .header-gallery-carousel .owl-stage { will-change: auto !important; } body.single-job_listing .galleryPreview .owl-item, body.single-job_listing .gallery-thumb .owl-item, body.single-job_listing .header-gallery-carousel .owl-item { overflow: hidden !important; backface-visibility: hidden !important; -webkit-backface-visibility: hidden !important; } body.single-job_listing img, body.single-job_listing .lf-background, body.single-job_listing .item, body.single-job_listing .photoswipe-item { max-width: 100% !important; backface-visibility: hidden !important; -webkit-backface-visibility: hidden !important; } /* Similar listings : éviter les déplacements Isotope pendant scroll */ body.single-job_listing .similar-listings .section-body.grid { position: relative !important; height: auto !important; overflow: hidden !important; display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 8px !important; margin: 0 !important; } body.single-job_listing .similar-listings .grid-item { position: relative !important; left: auto !important; top: auto !important; float: none !important; width: 100% !important; padding: 0 !important; margin: 0 !important; transform: none !important; } body.single-job_listing .similar-listings .lf-item-container { width: 100% !important; max-width: 100% !important; overflow: hidden !important; transform: none !important; } body.single-job_listing .similar-listings .lf-item { overflow: hidden !important; transform: none !important; } body.single-job_listing .similar-listings .lf-item > a { overflow: hidden !important; } } (function(){ 'use strict'; function isMobile(){ return window.innerWidth <= 991; } function all(sel, root){ return Array.prototype.slice.call((root || document).querySelectorAll(sel)); } function hideSpecialtiesBlock(){ all('.block-type-tags').forEach(function(block){ block.style.display = 'none'; }); } function fixSimilarListingsMobile(){ if (!isMobile()) return; var grid = document.querySelector('.similar-listings .section-body.grid'); if (!grid) return; grid.style.setProperty('position', 'relative', 'important'); grid.style.setProperty('height', 'auto', 'important'); grid.style.setProperty('overflow', 'hidden', 'important'); grid.style.setProperty('display', 'grid', 'important'); grid.style.setProperty('grid-template-columns', 'repeat(2, minmax(0, 1fr))', 'important'); grid.style.setProperty('gap', '8px', 'important'); all('.similar-listings .grid-item').forEach(function(item){ item.style.setProperty('position', 'relative', 'important'); item.style.setProperty('left', 'auto', 'important'); item.style.setProperty('top', 'auto', 'important'); item.style.setProperty('float', 'none', 'important'); item.style.setProperty('width', '100%', 'important'); item.style.setProperty('padding', '0', 'important'); item.style.setProperty('margin', '0', 'important'); item.style.setProperty('transform', 'none', 'important'); }); } function fixOverflow(){ document.documentElement.style.setProperty('overflow-x', 'hidden', 'important'); document.body.style.setProperty('overflow-x', 'hidden', 'important'); all('.mgp-shell, .listing-tabs, .tab-template-two-columns, .cts-main-column, .cts-side-column').forEach(function(el){ el.style.setProperty('max-width', '100%', 'important'); el.style.setProperty('overflow-x', 'hidden', 'important'); }); } function run(){ hideSpecialtiesBlock(); fixOverflow(); fixSimilarListingsMobile(); } if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', run); } else { run(); } window.addEventListener('load', function(){ run(); setTimeout(run, 400); setTimeout(run, 1200); }); window.addEventListener('scroll', function(){ if (!isMobile()) return; window.requestAnimationFrame(fixSimilarListingsMobile); }, { passive: true }); window.addEventListener('resize', function(){ setTimeout(run, 150); }); })(); @media (max-width: 991px) { html, body { overflow-x: hidden !important; max-width: 100vw !important; } .lf-item-container.listing-preview, .lf-item-container.listing-preview .lf-item, .lf-item-container.listing-preview .lf-item > a { overflow: hidden !important; max-width: 100% !important; backface-visibility: hidden !important; -webkit-backface-visibility: hidden !important; transform: none !important; transition: none !important; will-change: auto !important; isolation: isolate !important; contain: paint !important; } .lf-item-container.listing-preview .lf-item > a { position: relative !important; clip-path: inset(0 round 14px) !important; } .lf-item-container.listing-preview .lf-background { position: absolute !important; inset: 0 !important; width: 100% !important; height: 100% !important; max-width: 100% !important; background-size: cover !important; background-position: center center !important; background-repeat: no-repeat !important; background-attachment: scroll !important; transform: none !important; transition: none !important; will-change: auto !important; backface-visibility: hidden !important; -webkit-backface-visibility: hidden !important; } .lf-item-container.listing-preview .overlay { position: absolute !important; inset: 0 !important; width: 100% !important; height: 100% !important; transform: none !important; transition: none !important; will-change: auto !important; pointer-events: none !important; } .results-view.grid, .section-body.grid, .similar-listings .section-body.grid { overflow: hidden !important; max-width: 100% !important; } .grid-item { max-width: 100% !important; backface-visibility: hidden !important; -webkit-backface-visibility: hidden !important; transform: none !important; transition: none !important; will-change: auto !important; } body.mg-mobile-is-scrolling .lf-item-container.listing-preview, body.mg-mobile-is-scrolling .lf-item-container.listing-preview .lf-item, body.mg-mobile-is-scrolling .lf-item-container.listing-preview .lf-background, body.mg-mobile-is-scrolling .lf-item-container.listing-preview .overlay, body.mg-mobile-is-scrolling .grid-item { transform: none !important; transition: none !important; will-change: auto !important; } } (function(){ 'use strict'; var timer = null; function isMobile(){ return window.innerWidth <= 991; } function stabilizeCards(){ if (!isMobile()) return; document.querySelectorAll('.lf-item-container.listing-preview .lf-background').forEach(function(bg){ bg.style.setProperty('transform', 'none', 'important'); bg.style.setProperty('transition', 'none', 'important'); bg.style.setProperty('will-change', 'auto', 'important'); bg.style.setProperty('background-attachment', 'scroll', 'important'); }); document.querySelectorAll('.lf-item-container.listing-preview, .lf-item-container.listing-preview .lf-item, .lf-item-container.listing-preview .lf-item > a').forEach(function(el){ el.style.setProperty('overflow', 'hidden', 'important'); el.style.setProperty('transform', 'none', 'important'); el.style.setProperty('transition', 'none', 'important'); el.style.setProperty('will-change', 'auto', 'important'); }); } function onScroll(){ if (!isMobile()) return; document.body.classList.add('mg-mobile-is-scrolling'); if (timer) { clearTimeout(timer); } timer = setTimeout(function(){ document.body.classList.remove('mg-mobile-is-scrolling'); stabilizeCards(); }, 180); } if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', stabilizeCards); } else { stabilizeCards(); } window.addEventListener('load', function(){ stabilizeCards(); setTimeout(stabilizeCards, 500); setTimeout(stabilizeCards, 1500); }); window.addEventListener('scroll', onScroll, { passive: true }); window.addEventListener('resize', function(){ setTimeout(stabilizeCards, 200); }); })(); window.lazyLoadOptions = [{ elements_selector: "img[data-lazy-src],.rocket-lazyload,iframe[data-lazy-src]", data_src: "lazy-src", data_srcset: "lazy-srcset", data_sizes: "lazy-sizes", class_loading: "lazyloading", class_loaded: "lazyloaded", threshold: 300, callback_loaded: function(element) { if ( element.tagName === "IFRAME" && element.dataset.rocketLazyload == "fitvidscompatible" ) { if (element.classList.contains("lazyloaded") ) { if (typeof window.jQuery != "undefined") { if (jQuery.fn.fitVids) { jQuery(element).parent().fitVids(); } } } } }},{ elements_selector: ".rocket-lazyload", data_src: "lazy-src", data_srcset: "lazy-srcset", data_sizes: "lazy-sizes", class_loading: "lazyloading", class_loaded: "lazyloaded", threshold: 300, }]; window.addEventListener('LazyLoad::Initialized', function (e) { var lazyLoadInstance = e.detail.instance; if (window.MutationObserver) { var observer = new MutationObserver(function(mutations) { var image_count = 0; var iframe_count = 0; var rocketlazy_count = 0; mutations.forEach(function(mutation) { for (var i = 0; i < mutation.addedNodes.length; i++) { if (typeof mutation.addedNodes[i].getElementsByTagName !== 'function') { continue; } if (typeof mutation.addedNodes[i].getElementsByClassName !== 'function') { continue; } images = mutation.addedNodes[i].getElementsByTagName('img'); is_image = mutation.addedNodes[i].tagName == "IMG"; iframes = mutation.addedNodes[i].getElementsByTagName('iframe'); is_iframe = mutation.addedNodes[i].tagName == "IFRAME"; rocket_lazy = mutation.addedNodes[i].getElementsByClassName('rocket-lazyload'); image_count += images.length; iframe_count += iframes.length; rocketlazy_count += rocket_lazy.length; if(is_image){ image_count += 1; } if(is_iframe){ iframe_count += 1; } } } ); if(image_count > 0 || iframe_count > 0 || rocketlazy_count > 0){ lazyLoadInstance.update(); } } ); var b = document.getElementsByTagName("body")[0]; var config = { childList: true, subtree: true }; observer.observe(b, config); } }, false);function lazyLoadThumb(e,alt){var t='<img loading="lazy" src="https://i.ytimg.com/vi/ID/hqdefault.jpg" alt="" width="480" height="360">',a='<button class="play" aria-label="play Youtube video"></button>';t=t.replace('alt=""','alt="'+alt+'"');return t.replace("ID",e)+a}function lazyLoadYoutubeIframe(){var e=document.createElement("iframe"),t="ID?autoplay=1";t+=0===this.parentNode.dataset.query.length?'':'&'+this.parentNode.dataset.query;e.setAttribute("src",t.replace("ID",this.parentNode.dataset.src)),e.setAttribute("frameborder","0"),e.setAttribute("allowfullscreen","1"),e.setAttribute("allow", "accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture"),this.parentNode.parentNode.replaceChild(e,this.parentNode)}document.addEventListener("DOMContentLoaded",function(){var e,t,p,a=document.getElementsByClassName("rll-youtube-player");for(t=0;t<a.length;t++)e=document.createElement("div"),e.setAttribute("data-id",a[t].dataset.id),e.setAttribute("data-query", a[t].dataset.query),e.setAttribute("data-src", a[t].dataset.src),e.innerHTML=lazyLoadThumb(a[t].dataset.id,a[t].dataset.alt),a[t].appendChild(e),p=e.querySelector('.play'),p.onclick=lazyLoadYoutubeIframe}); ׋› 📞 Anrufen🟢 WhatsApp Alter Überprüfung + 18 JahreSie bestätigen, dass Sie die gesetzliche Volljährigkeit in Ihrem Wohnsitzland erreicht haben. Indem Sie auf "Eintreten" klicken, akzeptieren Sie die [AGB] und bestätigen, dass Sie über 18 Jahre alt sind.Eingeben var snp_bld_open4614=function(){_snp_bld_open(4614);}; var snp_bld_close4614=function(){_snp_bld_close(4614);}; .snp-pop-4614 .snp-bld-step-cont-1 {}.snp-pop-4614 .snp-bld-step-1 {width: 500px;height: 600px;background-position: center center;background-repeat: repeat;}.snp-pop-4614 .bld-step-1-el-0 { border: 1px solid transparent;width: 501px;height: 599px;top: -0.9375px;left: -1px;z-index: 100;}.snp-pop-4614 .bld-step-1-el-0 .bld-el,.snp-pop-4614 .bld-step-1-el-0 .bld-el p,.snp-pop-4614 .bld-step-1-el-0 .bld-el:focus,.snp-pop-4614 .bld-step-1-el-0 .bld-el:active,.snp-pop-4614 .bld-step-1-el-0 .bld-el:hover{outline: 0;border-width: 0px;background-color: #7f012b !important;background-position: center center;background-repeat: repeat;}.snp-pop-4614 .bld-step-1-el-1 { border: 1px solid transparent;width: 316px;height: 35px;top: 170.0625px;left: 116px;z-index: 100;}.snp-pop-4614 .bld-step-1-el-1 .bld-el,.snp-pop-4614 .bld-step-1-el-1 .bld-el p,.snp-pop-4614 .bld-step-1-el-1 .bld-el:focus,.snp-pop-4614 .bld-step-1-el-1 .bld-el:active,.snp-pop-4614 .bld-step-1-el-1 .bld-el:hover{outline: 0;font-family: 'Roboto';border-width: 0px;background-position: center center;background-repeat: repeat;}.snp-pop-4614 .bld-step-1-el-2 { border: 1px solid transparent;width: 387px;height: 78px;top: 210.0625px;left: 54px;z-index: 100;}.snp-pop-4614 .bld-step-1-el-2 .bld-el,.snp-pop-4614 .bld-step-1-el-2 .bld-el p,.snp-pop-4614 .bld-step-1-el-2 .bld-el:focus,.snp-pop-4614 .bld-step-1-el-2 .bld-el:active,.snp-pop-4614 .bld-step-1-el-2 .bld-el:hover{outline: 0;font-family: 'Open Sans';border-width: 0px;background-position: center center;background-repeat: repeat;}.snp-pop-4614 .bld-step-1-el-3 { border: 1px solid transparent;width: 200px;height: 50px;top: 295px;left: 143px;z-index: 100;}.snp-pop-4614 .bld-step-1-el-3 .bld-el,.snp-pop-4614 .bld-step-1-el-3 .bld-el p,.snp-pop-4614 .bld-step-1-el-3 .bld-el:focus,.snp-pop-4614 .bld-step-1-el-3 .bld-el:active,.snp-pop-4614 .bld-step-1-el-3 .bld-el:hover{outline: 0;color: #ffffff;font-family: 'Roboto';font-size: 17px;font-weight: bold;border-style: none;border-width: 8px;border-radius: 8px;background-color: #f67675 !important;background-position: center center;background-repeat: repeat;padding-left: 10px;}.snp-pop-4614 .bld-step-1-el-4 { border: 1px solid transparent;width: 112.078px;height: 117px;top: 37px;left: 196px;z-index: 100;}.snp-pop-4614 .bld-step-1-el-4 .bld-el,.snp-pop-4614 .bld-step-1-el-4 .bld-el p,.snp-pop-4614 .bld-step-1-el-4 .bld-el:focus,.snp-pop-4614 .bld-step-1-el-4 .bld-el:active,.snp-pop-4614 .bld-step-1-el-4 .bld-el:hover{outline: 0;}.snp-pop-4614 .bld-step-1-el-5 { border: 1px solid transparent;width: 99px;height: 72px;top: 381px;left: 52px;z-index: 100;}.snp-pop-4614 .bld-step-1-el-5 .bld-el,.snp-pop-4614 .bld-step-1-el-5 .bld-el p,.snp-pop-4614 .bld-step-1-el-5 .bld-el:focus,.snp-pop-4614 .bld-step-1-el-5 .bld-el:active,.snp-pop-4614 .bld-step-1-el-5 .bld-el:hover{outline: 0;}.snp-pop-4614 .bld-step-1-el-6 { border: 1px solid transparent;width: 99px;height: 72px;top: 380px;left: 190px;z-index: 100;}.snp-pop-4614 .bld-step-1-el-6 .bld-el,.snp-pop-4614 .bld-step-1-el-6 .bld-el p,.snp-pop-4614 .bld-step-1-el-6 .bld-el:focus,.snp-pop-4614 .bld-step-1-el-6 .bld-el:active,.snp-pop-4614 .bld-step-1-el-6 .bld-el:hover{outline: 0;}.snp-pop-4614 .bld-step-1-el-7 { border: 1px solid transparent;width: 99px;height: 72px;top: 379px;left: 336px;z-index: 100;}.snp-pop-4614 .bld-step-1-el-7 .bld-el,.snp-pop-4614 .bld-step-1-el-7 .bld-el p,.snp-pop-4614 .bld-step-1-el-7 .bld-el:focus,.snp-pop-4614 .bld-step-1-el-7 .bld-el:active,.snp-pop-4614 .bld-step-1-el-7 .bld-el:hover{outline: 0;}.snp-pop-4614 .bld-step-1-el-8 { border: 1px solid transparent;width: 99px;height: 72px;top: 480px;left: 190px;z-index: 100;}.snp-pop-4614 .bld-step-1-el-8 .bld-el,.snp-pop-4614 .bld-step-1-el-8 .bld-el p,.snp-pop-4614 .bld-step-1-el-8 .bld-el:focus,.snp-pop-4614 .bld-step-1-el-8 .bld-el:active,.snp-pop-4614 .bld-step-1-el-8 .bld-el:hover{outline: 0;}#snp-pop-4614-overlay {opacity: 0.8;background-color: #5A5757;} snp_f['snppopup-welcome-open']=snp_bld_open4614; snp_f['snppopup-welcome-close']=snp_bld_close4614;
Private Schweizerin Eva Geprüfte Auflistung

Méthodes de contact

+41789109080
WhatsApp Sms Email Telegram
Retour à la galerie

Disponibilité

Switzerland

{}

Localisation

Switzerland

Switzerland

Appeler WhatsApp