PageSourceSearch

https://www.govi.de/apotheke/pharmazeutische-beratung

html govi.de collected 2026-10-04 13:45:57 UTC 636,815 bytes, 10,292 lines download raw bytes

1<!doctype html>
2<html lang="de">
3<head prefix="og: http://ogp.me/ns# category: http://ogp.me/ns/category#">
4    <meta charset="utf-8"/>
5<meta name="title" content="govi.de: Pharmazeutische Beratung - Apotheke"/>
6<meta name="description" content="govi.de ist der Medien-Shop für pharmazeutische und medizinische Fachliteratur der Avoxa Mediengruppe. Im Angebot sind auch Romane, Sachbücher und Kinderbücher."/>
7<meta name="keywords" content="Pharmazie, Medizin, Fachbücher, Fachliteratur, Apotheke, Apotheker, Apothekerin, PTA, Pharmazie-Studium, Bücher, Software, Romane, Sachbücher, Ratgeber, Lebenshilfe, Kinderbücher"/>
8<meta name="robots" content="INDEX,FOLLOW"/>
9<meta name="viewport" content="width=device-width, initial-scale=1"/>
10<title>govi.de: Pharmazeutische Beratung - Apotheke</title>
11        <link rel="stylesheet" type="text/css" media="all" href="https://www.govi.de/static/version1790667299/frontend/AMD/hyvaShop/de_DE/css/styles.css" />
12<link rel="canonical" href="https://www.govi.de/apotheke/pharmazeutische-beratung" />
13<link rel="icon" type="image/x-icon" href="https://www.govi.de/media/favicon/stores/1/Govi_onlineshop_Kurzlogo_Favicon.png" />
14<link rel="shortcut icon" type="image/x-icon" href="https://www.govi.de/media/favicon/stores/1/Govi_onlineshop_Kurzlogo_Favicon.png" />
15    
15<script>if(!"gdprAppliesGlobally" in window){window.gdprAppliesGlobally=true}if(!("cmp_id" in window)||window.cmp_id<1){window.cmp_id=0}if(!("cmp_cdid" in window)){window.cmp_cdid="d45df603b1967"}if(!("cmp_params" in window)){window.cmp_params=""}if(!("cmp_host" in window)){window.cmp_host="delivery.consentmanager.net"}if(!("cmp_cdn" in window)){window.cmp_cdn="cdn.consentmanager.net"}if(!("cmp_proto" in window)){window.cmp_proto="https:"}if(!("cmp_codesrc" in window)){window.cmp_codesrc="0"}window.cmp_getsupportedLangs=function(){var b=["DE","EN","FR","IT","NO","DA","FI","ES","PT","RO","BG","ET","EL","GA","HR","LV","LT","MT","NL","PL","SV","SK","SL","CS","HU","RU","SR","ZH","TR","UK","AR","BS"];if("cmp_customlanguages" in window){for(var a=0;a<window.cmp_customlanguages.length;a++){b.push(window.cmp_customlanguages[a].l.toUpperCase())}}return b};window.cmp_getRTLLangs=function(){var a=["AR"];if("cmp_customlanguages" in window){for(var b=0;b<window.cmp_customlanguages.length;b++){if("r" in window.cmp_customlanguages[b]&&window.cmp_customlanguages[b].r){a.push(window.cmp_customlanguages[b].l)}}}return a};window.cmp_getlang=function(j){if(typeof(j)!="boolean"){j=true}if(j&&typeof(cmp_getlang.usedlang)=="string"&&cmp_getlang.usedlang!==""){return cmp_getlang.usedlang}var g=window.cmp_getsupportedLangs();var c=[];var f=location.hash;var e=location.search;var a="languages" in navigator?navigator.languages:[];if(f.indexOf("cmplang=")!=-1){c.push(f.substr(f.indexOf("cmplang=")+8,2).toUpperCase())}else{if(e.indexOf("cmplang=")!=-1){c.push(e.substr(e.indexOf("cmplang=")+8,2).toUpperCase())}else{if("cmp_setlang" in window&&window.cmp_setlang!=""){c.push(window.cmp_setlang.toUpperCase())}else{if(a.length>0){for(var d=0;d<a.length;d++){c.push(a[d])}}}}}if("language" in navigator){c.push(navigator.language)}if("userLanguage" in navigator){c.push(navigator.userLanguage)}var h="";for(var d=0;d<c.length;d++){var b=c[d].toUpperCase();if(g.indexOf(b)!=-1){h=b;break}if(b.indexOf("-")!=-1){b=b.substr(0,2)}if(g.indexOf(b)!=-1){h=b;break}}if(h==""&&typeof(cmp_getlang.defaultlang)=="string"&&cmp_getlang.defaultlang!==""){return cmp_getlang.defaultlang}else{if(h==""){h="EN"}}h=h.toUpperCase();return h};(function(){var y=document;var z=y.getElementsByTagName;var j=window;var r="";var b="_en";if("cmp_getlang" in j){r=j.cmp_getlang().toLowerCase();if("cmp_customlanguages" in j){var g=j.cmp_customlanguages;for(var u=0;u<g.length;u++){if(g[u].l.toUpperCase()==r){r="en";break}}}b="_"+r}function A(e,D){e+="=";var d="";var m=e.length;var i=location;var E=i.hash;var w=i.search;var s=E.indexOf(e);var C=w.indexOf(e);if(s!=-1){d=E.substring(s+m,9999)}else{if(C!=-1){d=w.substring(C+m,9999)}else{return D}}var B=d.indexOf("&");if(B!=-1){d=d.substring(0,B)}return d}var n=("cmp_proto" in j)?j.cmp_proto:"https:";if(n!="http:"&&n!="https:"){n="https:"}var h=("cmp_ref" in j)?j.cmp_ref:location.href;var k=y.createElement("script");k.setAttribute("data-cmp-ab","1");var c=A("cmpdesign","cmp_design" in j?j.cmp_design:"");var f=A("cmpregulationkey","cmp_regulationkey" in j?j.cmp_regulationkey:"");var v=A("cmpgppkey","cmp_gppkey" in j?j.cmp_gppkey:"");var p=A("cmpatt","cmp_att" in j?j.cmp_att:"");k.src=n+"//"+j.cmp_host+"/delivery/cmp.php?"+("cmp_id" in j&&j.cmp_id>0?"id="+j.cmp_id:"")+("cmp_cdid" in j?"&cdid="+j.cmp_cdid:"")+"&h="+encodeURIComponent(h)+(c!=""?"&cmpdesign="+encodeURIComponent(c):"")+(f!=""?"&cmpregulationkey="+encodeURIComponent(f):"")+(v!=""?"&cmpgppkey="+encodeURIComponent(v):"")+(p!=""?"&cmpatt="+encodeURIComponent(p):"")+("cmp_params" in j?"&"+j.cmp_params:"")+(y.cookie.length>0?"&__cmpfcc=1":"")+"&l="+r.toLowerCase()+"&o="+(new Date()).getTime();k.type="text/javascript";k.async=true;if(y.currentScript&&y.currentScript.parentElement){y.currentScript.parentElement.appendChild(k)}else{if(y.body){y.body.appendChild(k)}else{var q=["body","div","span","script","head"];for(var u=0;u<q.length;u++){var x=z(q[u]);if(x.length>0){x[0].appendChild(k);break}}}}var o="js";var t=A("cmpdebugunminimized","cmpdebugunminimized" in j?j.cmpdebugunminimized:0)>0?"":".min";var a=A("cmpdebugcoverage","cmp_debugcoverage" in j?j.cmp_debugcoverage:"");if(a=="1"){o="instrumented";t=""}var k=y.createElement("script");k.src=n+"//"+j.cmp_cdn+"/delivery/"+o+"/cmp"+b+t+".js";k.type="text/javascript";k.setAttribute("data-cmp-ab","1");k.async=true;if(y.currentScript&&y.currentScript.parentElement){y.currentScript.parentElement.appendChild(k)}else{if(y.body){y.body.appendChild(k)}else{var x=z("body");if(x.length==0){x=z("div")}if(x.length==0){x=z("span")}if(x.length==0){x=z("ins")}if(x.length==0){x=z("script")}if(x.length==0){x=z("head")}if(x.length>0){x[0].appendChild(k)}}}})();window.cmp_addFrame=function(b){if(!window.frames[b]){if(document.body){var a=document.createElement("iframe");a.style.cssText="display:none";if("cmp_cdn" in window&&"cmp_ultrablocking" in window&&window.cmp_ultrablocking>0){a.src="//"+window.cmp_cdn+"/delivery/empty.html"}a.name=b;a.setAttribute("title","Intentionally hidden, please ignore");a.setAttribute("role","none");a.setAttribute("tabindex","-1");document.body.appendChild(a)}else{window.setTimeout(window.cmp_addFrame,10,b)}}};window.cmp_rc=function(h){var b=document.cookie;var f="";var d=0;while(b!=""&&d<100){d++;while(b.substr(0,1)==" "){b=b.substr(1,b.length)}var g=b.substring(0,b.indexOf("="));if(b.indexOf(";")!=-1){var c=b.substring(b.indexOf("=")+1,b.indexOf(";"))}else{var c=b.substr(b.indexOf("=")+1,b.length)}if(h==g){f=c}var e=b.indexOf(";")+1;if(e==0){e=b.length}b=b.substring(e,b.length)}return(f)};window.cmp_stub=function(){var a=arguments;__cmp.a=__cmp.a||[];if(!a.length){return __cmp.a}else{if(a[0]==="ping"){if(a[1]===2){a[2]({gdprApplies:gdprAppliesGlobally,cmpLoaded:false,cmpStatus:"stub",displayStatus:"hidden",apiVersion:"2.2",cmpId:31},true)}else{a[2](false,true)}}else{if(a[0]==="getUSPData"){a[2]({version:1,uspString:window.cmp_rc("")},true)}else{if(a[0]==="getTCData"){__cmp.a.push([].slice.apply(a))}else{if(a[0]==="addEventListener"||a[0]==="removeEventListener"){__cmp.a.push([].slice.apply(a))}else{if(a.length==4&&a[3]===false){a[2]({},false)}else{__cmp.a.push([].slice.apply(a))}}}}}}};window.cmp_gpp_ping=function(){return{gppVersion:"1.1",cmpStatus:"stub",cmpDisplayStatus:"hidden",signalStatus:"no ready",supportedAPIs:["5:tcfcav1","7:usnat","8:usca","9:usva","10:usco","11:usut","12:usct"],cmpId:31,sectionList:[],applicableSections:[0],gppString:"",parsedSections:{}}};window.cmp_gppstub=function(){var c=arguments;__gpp.q=__gpp.q||[];if(!c.length){return __gpp.q}var h=c[0];var g=c.length>1?c[1]:null;var f=c.length>2?c[2]:null;var a=null;var j=false;if(h==="ping"){a=window.cmp_gpp_ping();j=true}else{if(h==="addEventListener"){__gpp.e=__gpp.e||[];if(!("lastId" in __gpp)){__gpp.lastId=0}__gpp.lastId++;var d=__gpp.lastId;
15__gpp.e.push({id:d,callback:g});a={eventName:"listenerRegistered",listenerId:d,data:true,pingData:window.cmp_gpp_ping()};j=true}else{if(h==="removeEventListener"){__gpp.e=__gpp.e||[];a=false;for(var e=0;e<__gpp.e.length;e++){if(__gpp.e[e].id==f){__gpp.e[e].splice(e,1);a=true;break}}j=true}else{__gpp.q.push([].slice.apply(c))}}}if(a!==null&&typeof(g)==="function"){g(a,j)}};window.cmp_msghandler=function(d){var a=typeof d.data==="string";try{var c=a?JSON.parse(d.data):d.data}catch(f){var c=null}if(typeof(c)==="object"&&c!==null&&"__cmpCall" in c){var b=c.__cmpCall;window.__cmp(b.command,b.parameter,function(h,g){var e={__cmpReturn:{returnValue:h,success:g,callId:b.callId}};d.source.postMessage(a?JSON.stringify(e):e,"*")})}if(typeof(c)==="object"&&c!==null&&"__uspapiCall" in c){var b=c.__uspapiCall;window.__uspapi(b.command,b.version,function(h,g){var e={__uspapiReturn:{returnValue:h,success:g,callId:b.callId}};d.source.postMessage(a?JSON.stringify(e):e,"*")})}if(typeof(c)==="object"&&c!==null&&"__tcfapiCall" in c){var b=c.__tcfapiCall;window.__tcfapi(b.command,b.version,function(h,g){var e={__tcfapiReturn:{returnValue:h,success:g,callId:b.callId}};d.source.postMessage(a?JSON.stringify(e):e,"*")},b.parameter)}if(typeof(c)==="object"&&c!==null&&"__gppCall" in c){var b=c.__gppCall;window.__gpp(b.command,function(h,g){var e={__gppReturn:{returnValue:h,success:g,callId:b.callId}};d.source.postMessage(a?JSON.stringify(e):e,"*")},"parameter" in b?b.parameter:null,"version" in b?b.version:1)}};window.cmp_setStub=function(a){if(!(a in window)||(typeof(window[a]
15)!=="function"&&typeof(window[a])!=="object"&&(typeof(window[a])==="undefined"||window[a]!==null))){window[a]=window.cmp_stub;window[a].msgHandler=window.cmp_msghandler;window.addEventListener("message",window.cmp_msghandler,false)}};window.cmp_setGppStub=function(a){if(!(a in window)||(typeof(window[a])!=="function"&&typeof(window[a])!=="object"&&(typeof(window[a])==="undefined"||window[a]!==null))){window[a]=window.cmp_gppstub;window[a].msgHandler=window.cmp_msghandler;window.addEventListener("message",window.cmp_msghandler,false)}};window.cmp_addFrame("__cmpLocator");if(!("cmp_disableusp" in window)||!window.cmp_disableusp){window.cmp_addFrame("__uspapiLocator")}if(!("cmp_disabletcf" in window)||!window.cmp_disabletcf){window.cmp_addFrame("__tcfapiLocator")}if(!("cmp_disablegpp" in window)||!window.cmp_disablegpp){window.cmp_addFrame("__gppLocator")}window.cmp_setStub("__cmp");if(!("cmp_disabletcf" in window)||!window.cmp_disabletcf){window.cmp_setStub("__tcfapi")}if(!("cmp_disableusp" in window)||!window.cmp_disableusp){window.cmp_setStub("__uspapi")}if(!("cmp_disablegpp" in window)||!window.cmp_disablegpp){window.cmp_setGppStub("__gpp")};</script>
vendor: 1 bytes, line 15
15
16<script type="text&#x2F;javascript">window.dataLayer = window.dataLayer || [];
17window.getAmGa4Cookie = function () {
18    let cookies = {};
19    document.cookie.split(';').forEach(function (el) {
20        let [key, value] = el.split('=');
21        cookies[key.trim()] = value;
22    });
23
24    return cookies['amga4_customer']
25        ? decodeURIComponent(cookies['amga4_customer'])
26        : '{}';
27};
28
29(function () {
30        /**
31     * @var {[Object]}
32     */
33    const userProperties = JSON.parse(window.getAmGa4Cookie());
34
35    if (userProperties.customerGroup) {
36        window.dataLayer.push({'customerGroup': userProperties.customerGroup});
37    }
38    if (userProperties.customerId) {
39        window.dataLayer.push({'customerId': userProperties.customerId});
40    }
41        /**
42     * @var {[Object]}
43     */
44    const dataToPush = JSON.parse('\u005B\u005D');
45
46    dataToPush.forEach((dataObject) => {
47        window.dataLayer.push(dataObject);
48    });
49})();
50</script>
50
51<!-- Google Tag Manager -->
52<script>
53    function callAmGA4GTM () {
54        (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
55                new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
56            j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
57            'https://www.googletagmanager.com/gtm.js?id='+i+dl;var n=d.querySelector('[nonce]');
58            n&&j.setAttribute('nonce',n.nonce||n.getAttribute('nonce'));f.parentNode.insertBefore(j,f);
59        })(window,document,'script','dataLayer', 'GTM-MMM4WFVS');
60    }
61</script>
61
62<!-- End Google Tag Manager -->
63    
63<script>
64        (function () {
65            const googleAnalyticsCookieName = '_ga';
66            const events = ['cookiebar-action-accept-finish', 'cookiebar-action-allow-finish'];
67            events.forEach(event => {
68                window.addEventListener(event, function(event) {
69                    if (!amastyCookieManager.isCookieAllowed(googleAnalyticsCookieName)) {
70                        return;
71                    }
72
73                    callAmGA4GTM();
74                });
75            });
76
77            document.addEventListener('alpine:initialized', () => {
78                if (!hyva.getCookie('amcookie_policy_restriction')
79                    || !amastyCookieManager.isCookieAllowed(googleAnalyticsCookieName)
80                ) {
81                    return;
82                }
83
84                callAmGA4GTM();
85            });
86
87        })();
88    </script>
88
89    
89<script>
90    var BASE_URL = 'https://www.govi.de/';
91    var THEME_PATH = 'https://www.govi.de/static/version1790667299/frontend/AMD/hyvaShop/de_DE';
92    var COOKIE_CONFIG = {
93        "expires": null,
94        "path": "\u002F",
95        "domain": ".www.govi.de",
96        "secure": true,
97        "lifetime": "3600",
98        "cookie_restriction_enabled": false    };
99    var CURRENT_STORE_CODE = 'de';
100    var CURRENT_WEBSITE_ID = '1';
101
102    window.hyva = window.hyva || {}
103
104    window.cookie_consent_groups = window.cookie_consent_groups || {}
105    window.cookie_consent_groups['necessary'] = true;
106
107    window.cookie_consent_config = window.cookie_consent_config || {};
108    window.cookie_consent_config['necessary'] = [].concat(
109        window.cookie_consent_config['necessary'] || [],
110        [
111            'user_allowed_save_cookie',
112            'form_key',
113            'mage-messages',
114            'private_content_version',
115            'mage-cache-sessid',
116            'last_visited_store',
117            'section_data_ids'
118        ]
119    );
120    //# sourceURL=hyva-variables.js
121</script>
vendor: 1 bytes, line 121
121
122<script>
123    (function( hyva, undefined ) {
124
125        function lifetimeToExpires(options, defaults) {
126
127            const lifetime = options.lifetime || defaults.lifetime;
128
129            if (lifetime) {
130                const date = new Date;
131                date.setTime(date.getTime() + lifetime * 1000);
132                return date;
133            }
134
135            return null;
136        }
137
138        function generateRandomString() {
139
140            const allowedCharacters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ',
141                length = 16;
142
143            let formKey = '',
144                charactersLength = allowedCharacters.length;
145
146            for (let i = 0; i < length; i++) {
147                formKey += allowedCharacters[Math.round(Math.random() * (charactersLength - 1))]
148            }
149
150            return formKey;
151        }
152
153        const sessionCookieMarker = {noLifetime: true}
154
155        const cookieTempStorage = {};
156
157        const internalCookie = {
158            get(name) {
159                const v = document.cookie.match('(^|;) ?' + name + '=([^;]*)(;|$)');
160                return v ? v[2] : null;
161            },
162            set(name, value, days, skipSetDomain) {
163                let expires,
164                    path,
165                    domain,
166                    secure,
167                    samesite;
168
169                const defaultCookieConfig = {
170                    expires: null,
171                    path: '/',
172                    domain: null,
173                    secure: false,
174                    lifetime: null,
175                    samesite: 'lax'
176                };
177
178                const cookieConfig = window.COOKIE_CONFIG || {};
179
180                expires = days && days !== sessionCookieMarker
181                    ? lifetimeToExpires({lifetime: 24 * 60 * 60 * days, expires: null}, defaultCookieConfig)
182                    : lifetimeToExpires(window.COOKIE_CONFIG, defaultCookieConfig) || defaultCookieConfig.expires;
183
184                path = cookieConfig.path || defaultCookieConfig.path;
185                domain = !skipSetDomain && (cookieConfig.domain || defaultCookieConfig.domain);
186                secure = cookieConfig.secure || defaultCookieConfig.secure;
187                samesite = cookieConfig.samesite || defaultCookieConfig.samesite;
188
189                document.cookie = name + "=" + encodeURIComponent(value) +
190                    (expires && days !== sessionCookieMarker ? '; expires=' + expires.toGMTString() : '') +
191                    (path ? '; path=' + path : '') +
192                    (domain ? '; domain=' + domain : '') +
193                    (secure ? '; secure' : '') +
194                    (samesite ? '; samesite=' + samesite : 'lax');
195            },
196            isWebsiteAllowedToSaveCookie() {
197                const allowedCookies = this.get('user_allowed_save_cookie');
198                if (allowedCookies) {
199                    const allowedWebsites = JSON.parse(unescape(allowedCookies));
200
201                    return allowedWebsites[CURRENT_WEBSITE_ID] === 1;
202                }
203                return false;
204            },
205            getGroupByCookieName(name) {
206                const cookieConsentConfig = window.cookie_consent_config || {};
207                let group = null;
208                for (let prop in cookieConsentConfig) {
209                    if (!cookieConsentConfig.hasOwnProperty(prop)) continue;
210                    if (cookieConsentConfig[prop].includes(name)) {
211                        group = prop;
212                        break;
213                    }
214                }
215                return group;
216            },
217            isCookieAllowed(name) {
218                const cookieGroup = this.getGroupByCookieName(name);
219                return cookieGroup
220                    ? window.cookie_consent_groups[cookieGroup]
221                    : this.isWebsiteAllowedToSaveCookie();
222            },
223            saveTempStorageCookies() {
224                for (const [name, data] of Object.entries(cookieTempStorage)) {
225                    if (this.isCookieAllowed(name)) {
226                        this.set(name, data['value'], data['days'], data['skipSetDomain']);
227                        delete cookieTempStorage[name];
228                    }
229                }
230            }
231        };
232
233        hyva.getCookie = (name) => {
234            const cookieConfig = window.COOKIE_CONFIG || {};
235
236            if (cookieConfig.cookie_restriction_enabled && ! internalCookie.isCookieAllowed(name)) {
237                return cookieTempStorage[name] ? cookieTempStorage[name]['value'] : null;
238            }
239
240            return internalCookie.get(name);
241        }
242
243        hyva.setCookie = (name, value, days, skipSetDomain) => {
244            const cookieConfig = window.COOKIE_CONFIG || {};
245
246            if (cookieConfig.cookie_restriction_enabled && ! internalCookie.isCookieAllowed(name)) {
247                cookieTempStorage[name] = {value, days, skipSetDomain};
248                return;
249            }
250            return internalCookie.set(name, value, days, skipSetDomain);
251        }
252
253
254        hyva.setSessionCookie = (name, value, skipSetDomain) => {
255            return hyva.setCookie(name, value, sessionCookieMarker, skipSetDomain)
256        }
257
258        hyva.getBrowserStorage = () => {
259            const browserStorage = window.localStorage || window.sessionStorage;
260            if (!browserStorage) {
261                console.warn('Browser Storage is unavailable');
262                return false;
263            }
264            try {
265                browserStorage.setItem('storage_test', '1');
266                browserStorage.removeItem('storage_test');
267            } catch (error) {
268                console.warn('Browser Storage is not accessible', error);
269                return false;
270            }
271            return browserStorage;
272        }
273
274        hyva.postForm = (postParams) => {
275            const form = document.createElement("form");
276
277            let data = postParams.data;
278
279            if (! postParams.skipUenc && ! data.uenc) {
280                data.uenc = btoa(window.location.href);
281            }
282            form.method = "POST";
283            form.action = postParams.action;
284
285            Object.keys(postParams.data).map(key => {
286                const field = document.createElement("input");
287                field.type = 'hidden'
288                field.value = postParams.data[key];
289                field.name = key;
290                form.appendChild(field);
291            });
292
293            const form_key = document.createElement("input");
294            form_key.type = 'hidden';
295            form_key.value = hyva.getFormKey();
296            form_key.name="form_key";
297            form.appendChild(form_key);
298
299            document.body.appendChild(form);
300
301            form.submit();
302        }
303
304        hyva.getFormKey = function () {
305            let formKey = hyva.getCookie('form_key');
306
307            if (!formKey) {
308                formKey = generateRandomString();
309                hyva.setCookie('form_key', formKey);
310            }
311
312            return formKey;
313        }
314
315        hyva.formatPrice = (value, showSign, options = {}) => {
316            const groupSeparator = options.groupSeparator;
317            const decimalSeparator = options.decimalSeparator
318            delete options.groupSeparator;
319            delete options.decimalSeparator;
320            const formatter = new Intl.NumberFormat(
321                'de\u002DDE',
322                Object.assign({
323                    style: 'currency',
324                    currency: 'EUR',
325                    signDisplay: showSign ? 'always' : 'auto'
326                }, options)
327            );
328            return (typeof Intl.NumberFormat.prototype.formatToParts === 'function') ?
329                formatter.formatToParts(value).map(({type, value}) => {
330                    switch (type) {
331                        case 'currency':
332                            return '\u20AC' || value;
333                        case 'minusSign':
334                            return '- ';
335                        case 'plusSign':
336                            return '+ ';
337                        case 'group':
338                            return groupSeparator !== undefined ? groupSeparator : value;
339                        case 'decimal':
340                            return decimalSeparator !== undefined ? decimalSeparator : value;
341                        default :
342                            return value;
343                    }
344                }).reduce((string, part) => string + part) :
345                formatter.format(value);
346        }
347
348        const formatStr = function (str, nStart) {
349            const args = Array.from(arguments).slice(2);
350
351            return str.replace(/(%+)([0-9]+)/g, (m, p, n) => {
352                const idx = parseInt(n) - nStart;
353
354                if (args[idx] === null || args[idx] === void 0) {
355                    return m;
356                }
357                return p.length % 2
358                    ? p.slice(0, -1).replace('%%', '%') + args[idx]
359                    : p.replace('%%', '%') + n;
360            })
361        }
362
363        hyva.str = function (string) {
364            const args = Array.from(arguments);
365            args.splice(1, 0, 1);
366
367            return formatStr.apply(undefined, args);
368        }
369
370        hyva.strf = function () {
371            const args = Array.from(arguments);
372            args.splice(1, 0, 0);
373
374            return formatStr.apply(undefined, args);
375        }
376
377        /**
378         * Take a html string as `content` parameter and
379         * extract an element from the DOM to replace in
380         * the current page under the same selector,
381         * defined by `targetSelector`
382         */
383        hyva.replaceDomElement = (targetSelector, content) => {
384            // Parse the content and extract the DOM node using the `targetSelector`
385            const parser = new DOMParser();
386            const doc = parser.parseFromString(content, 'text/html');
387            const contentNode = doc.querySelector(targetSelector);
388
389            // Bail if content or target can't be found
390            if (!contentNode || !document.querySelector(targetSelector)) {
391                return;
392            }
393
394                        hyva.activateScripts(contentNode);
395            
396            // Replace the old DOM node with the new content
397            document.querySelector(targetSelector).replaceWith(contentNode);
398
399            // Reload customerSectionData and display cookie-messages if present
400            window.dispatchEvent(new CustomEvent("reload-customer-section-data"));
401            hyva.initMessages();
402        }
403
404        hyva.removeScripts = (contentNode) => {
405            const scripts = contentNode.getElementsByTagName('script');
406            for (let i = 0; i < scripts.length; i++) {
407                scripts[i].parentNode.removeChild(scripts[i]);
408            }
409            const templates = contentNode.getElementsByTagName('template');
410            for (let i = 0; i < templates.length; i++) {
411                const container = document.createElement('div');
412                container.innerHTML = templates[i].innerHTML;
413                hyva.removeScripts(container);
414                templates[i].innerHTML = container.innerHTML;
415            }
416        }
417
418        hyva.activateScripts = (contentNode) => {
419            // Create new array from HTMLCollection to avoid mutation of collection while manipulating the DOM.
420            const scripts = Array.from(contentNode.getElementsByTagName('script'));
421
422            // Iterate over all script tags to duplicate+inject each into the head
423            for (const original of scripts) {
424                const script = document.createElement('script');
425                original.type && (script.type = original.type);
426                script.innerHTML = original.innerHTML;
427
428                // Remove the original (non-executing) script from the contentNode
429                original.parentNode.removeChild(original)
430
431                // Add script to head
432                document.head.appendChild(script);
433            }
434
435            return contentNode;
436        }
437
438        const replace = {['+']: '-', ['/']: '_', ['=']: ','};
439        hyva.getUenc = () => btoa(window.location.href).replace(/[+/=]/g, match => replace[match]);
440
441        let currentTrap;
442
443        const focusableElements = (rootElement) => {
444            const selector = 'button, [href], input, select, textarea, details, [tabindex]:not([tabindex="-1"]';
445            return Array.from(rootElement.querySelectorAll(selector))
446                .filter(el => {
447                    return el.style.display !== 'none'
448                        && !el.disabled
449                        && el.tabIndex !== -1
450                        && (el.offsetWidth || el.offsetHeight || el.getClientRects().length)
451                })
452        }
453
454        const focusTrap = (e) => {
455            const isTabPressed = e.key === 'Tab' || e.keyCode === 9;
456            if (!isTabPressed) return;
457
458            const focusable = focusableElements(currentTrap)
459            const firstFocusableElement = focusable[0]
460            const lastFocusableElement = focusable[focusable.length - 1]
461
462            e.shiftKey
463                ? document.activeElement === firstFocusableElement && (lastFocusableElement.focus(), e.preventDefault())
464                : document.activeElement === lastFocusableElement && (firstFocusableElement.focus(), e.preventDefault())
465        };
466
467        hyva.releaseFocus = (rootElement) => {
468            if (currentTrap && (!rootElement || rootElement === currentTrap)) {
469                currentTrap.removeEventListener('keydown', focusTrap)
470                currentTrap = null
471            }
472        }
473        hyva.trapFocus = (rootElement) => {
474            if (!rootElement) return;
475            hyva.releaseFocus()
476            currentTrap = rootElement
477            rootElement.addEventListener('keydown', focusTrap)
478            const firstElement = focusableElements(rootElement)[0]
479            firstElement && firstElement.focus()
480        }
481
482        hyva.safeParseNumber = (rawValue) => {
483            const number = rawValue ? parseFloat(rawValue) : null;
484
485            return Array.isArray(number) || isNaN(number) ? rawValue : number;
486        }
487
488        const toCamelCase = s => s.split('_').map(word => word.charAt(0).toUpperCase() + word.slice(1)).join('');
489        hyva.createBooleanObject = (name, value = false, additionalMethods = {}) => {
490
491            const camelCase = toCamelCase(name);
492            const key = '__hyva_bool_' + name
493
494            return new Proxy(Object.assign(
495                additionalMethods,
496                {
497                    [key]: !!value,
498                    [name]() {return !!this[key]},
499                    ['!' + name]() {return !this[key]}, // @deprecated This does not work with non-CSP Alpine
500                    ['not' + camelCase]() {return !this[key]},
501                    ['toggle' + camelCase]() {this[key] = !this[key]},
502                    [`set${camelCase}True`]() {this[key] = true},
503                    [`set${camelCase}False`]() {this[key] = false},
504                }
505            ), {
506                set(target, prop, value) {
507                    return prop === name
508                        ? (target[key] = !!value)
509                        : Reflect.set(...arguments);
510                }
511            })
512        }
513
514                hyva.alpineInitialized = (fn) => window.addEventListener('alpine:initialized', fn, {once: true})
515        window.addEventListener('alpine:init', () => Alpine.data('{}', () => ({})), {once: true});
516                window.addEventListener('user-allowed-save-cookie', () => internalCookie.saveTempStorageCookies())
517
518    }( window.hyva = window.hyva || {} ));
519    //# sourceURL=hyva.js
520</script>
vendor: 1 bytes, line 520
520
521<script type="speculationrules">
522{
523    "tag": "Hyva Theme",
524    "prefetch": [{
525        "source": "document",
526        "where": {
527            "and": [
528                { "href_matches": "/*" },
529                { "not": {
530                    "href_matches": ["/customer/*","/search/*","/sales/*","/wishlist/*","/checkout/*","/paypal/*","/newsletter/*","/stores/store/redirect/*"]                }},
531                { "not": {
532                    "selector_matches": [".no-preload", ".do-not-prerender", "[download]", "[rel~=nofollow]", "[target]"]
533                }}
534            ]
535        },
536        "eagerness": "moderate"
537    }]
538}
539</script>
539
540<!-- Google Tag Manager -->
541<script>
vendor: 327 bytes, lines 541-545
541(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
542new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
543j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
544'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
545})(window,document,'script','dataLayer','
545GTM-MMM4WFVS
vendor: 3 bytes, line 545
545');
545</script>
545
546<!-- End Google Tag Manager -->
547<script>
548    (function () {
549        let amSplideProcessed = false;
550
551        window.addEventListener('load-amsplide', () => {
552            if (amSplideProcessed) {
553                window?.Splide && window.dispatchEvent(new CustomEvent('amsplide-loaded', {}));
554                return;
555            }
556
557            const script = document.createElement('script');
558            script.src = 'https://www.govi.de/static/version1790667299/frontend/AMD/hyvaShop/de_DE/Amasty_LibSplideJs/4.1.3/js/splide/splide.min.js';
559            script.async = true;
560            document.body.appendChild(script);
561
562            amSplideProcessed = true;
563
564            script.onload = () => {
565                window.dispatchEvent(new CustomEvent('amsplide-loaded', {}));
566            }
567
568            const stylesHref = 'https://www.govi.de/static/version1790667299/frontend/AMD/hyvaShop/de_DE/Amasty_LibSplideJs/4.1.3/css/splide/splide.min.css';
569
570            if (document.querySelector(`link[href="${stylesHref}"]`)) {
571                return;
572            }
573
574            const styles = document.createElement('link');
575            styles.rel = 'stylesheet';
576            styles.type = 'text/css';
577            styles.href = stylesHref;
578
579            document.head.appendChild(styles);
580        });
581    }());
582</script>
582
583<link rel="next" href="https://www.govi.de/apotheke/pharmazeutische-beratung?p=2" />
584</head>
585<body id="html-body" class="page-with-filter page-products categorypath-apotheke-pharmazeutische-beratung category-pharmazeutische-beratung page-layout-2columns-left catalog-category-view page-layout-category-full-width">
586
587<!-- Google Tag Manager (noscript) -->
vendor: 73 bytes, lines 587-589
587
588<noscript>
589    <iframe src="https://www.googletagmanager.com/ns.html?id=
589GTM-MMM4WFVS
vendor: 96 bytes, lines 589-591
589"
590            height="0" width="0" style="display:none;visibility:hidden"></iframe>
591</noscript>
592<!-- End Google Tag Manager (noscript) -->
593
594
595<input name="form_key" type="hidden" value="MHFk6olfWgubb4xR" />
596    <noscript>
597        <section class="message global noscript border-b-2 border-blue-500 bg-blue-50 shadow-none m-0 px-0 rounded-none font-normal">
598            <div class="container text-center">
599                <p>
600                    <strong>JavaScript scheint in Ihrem Browser deaktiviert zu sein.</strong>
601                    <span>
602                        Um unsere Website in bester Weise zu erfahren, aktivieren Sie Javascript in Ihrem Browser.                    </span>
603                </p>
604            </div>
605        </section>
606    </noscript>
607
608
609<script>
610    document.body.addEventListener('touchstart', () => {}, {passive: true})
611</script>
vendor: 1 bytes, line 611
611
612<script>
613    window.addEventListener('DOMContentLoaded', () => {
614        if (hyva && hyva.formValidation) {
615            hyva.formValidation.addRule('postcode', function(value, options, field, context) {
616                const rules = {
617                    CH: ['^(CH-)?\\d{4}$', 'In der Schweiz besteht die PLZ aus 4 Zahlen.'],
618                    AT: ['^(AT-)?\\d{4}$', 'In Österreich besteht die PLZ aus 4 Zahlen.'],
619                    DE: ['^(D-)?\\d{5}$', 'In Deutschland besteht die PLZ aus 5 Zahlen.'],
620                };
621                context.validateField(context.fields['country_id']);
622
623                if (context.fields['country_id'].state.valid) {
624                    const country = context.fields['country_id'].element.value;
625                    const rule = new RegExp(rules[country][0], '');
626                    if (!rule.test(value)) {
627                        return rules[country][1];
628                    } else {
629                        return true;
630                    }
631                } else {
632                    return 'Select\u0020country\u0020first'
633                }
634            })
635        }
636    })
637</script>
vendor: 1 bytes, line 637
637
638<script>
639    // https://github.com/Fischer-L/autoComplt
640    !function(t,e){"function"==typeof define&&define.amd?define(e):"object"==typeof exports?module.exports=e():t.autoComplt=t.returnExports=e()}(this,function(){"use strict";Array.prototype.indexOf||(Array.prototype.indexOf=function(t,e){if(void 0===this||null===this)throw new TypeError('"this" is null or not defined');var o=this.length>>>0;for(e=+e||0,Math.abs(e)===1/0&&(e=0),0>e&&(e+=o,0>e&&(e=0));o>e;e++)if(this[e]===t)return e;return-1});var t=function(){var t=-1;if("Microsoft Internet Explorer"==navigator.appName){var e=navigator.userAgent,o=new RegExp("MSIE ([0-9]{1,}[.0-9]{0,})");null!=o.exec(e)&&(t=+RegExp.$1)}return-1===t?NaN:t},e=function(){var e=window.navigator.userAgent.toLowerCase();return e.search(/mobile|windows phone/)>=0?i.modeMobile:t()<=9?i.modePC:o().windowWidth>i.modeMobileW?i.modePC:i.modeMobile},o=function(){return window.innerWidth?{windowWidth:window.innerWidth,windowHeight:window.innerHeight}:document.documentElement.offsetHeight?{windowWidth:document.documentElement.offsetWidth,windowHeight:document.documentElement.offsetHeight}:document.body.offsetHeight?{windowWidth:document.body.offsetWidth,windowHeight:document.body.offsetHeight}:document.documentElement.clientHeight?{windowWidth:document.documentElement.clientWidth,windowHeight:document.documentElement.clientHeight}:document.body.clientHeight?{windowWidth:document.body.clientWidth,windowHeight:document.body.clientHeight}:{windowWidth:-1,windowHeight:-1}},i=function(t){return i=t,t.modePC="modePC",t.modeMobile="modeMobile",t.modeMobileW=768,t.autoCompltListClass="autoComplt-list",t.autoCompltHintClass="autoComplt-hint",t.autoCompltHintSelectedClass="autoComplt-hint-selected",t.maxHintNum=e()===i.modePC?10:5,t.autoCompltDelay=250,t.hiddenArg_close_list_n_make_final_selection="hiddenArg_close_list_n_make_final_selection",t.listStatus={attr:"data-listStatus",open:"open"},t.keyCode={up:38,down:40,esc:27,enter:13},t.defaultStyles={autoCompltList:{maxHeight:"none",border:"1px solid #aaa",padding:"0",margin:"0",zIndex:99,overflowX:"hidden",overflowY:"auto",display:"none",position:"absolute",backgroundColor:"#fff"},autoCompltHint:{height:"1.5em",padding:e()===i.modePC?"2px 6px 2px 10px":"6px 6px 6px 10px",margin:"6px 0",overflow:"hidden",listStyleType:"none",color:"#000",backgroundColor:"#fff",cursor:"default",fontSize:"1em"},autoCompltHintSelected:{color:"#fff",backgroundColor:"#3399ff"}},t.adjStyleAttrs={autoCompltList:["border","maxHeight","backgroundColor"],autoCompltHint:["height","padding","margin","color","backgroundColor","fontSize"],autoCompltHintSelected:["color","backgroundColor"]},t.listenersSupported=["select"],i}({}),n=function(t){return t||(t=window.event),t.target||(t.target=t.srcElement),t.stopBubble=function(){this.cancelBubble=!0,this.stopPropoagation&&this.stopPropoagation()},t.stopDefault=function(){return this.preventDefault&&this.preventDefault(),this.returnValue=!1,!1},t},l=function(t,e,o){t.addEventListener?t.addEventListener(e,o):t.attachEvent&&t.attachEvent("on"+e,o)},s=function(t,e,o){t.removeEventListener?t.removeEventListener(e,o):t.detachEvent&&t.detachEvent("on"+e,o)},u=function(t,e){var o=null;if(window.getComputedStyle)o=window.getComputedStyle(t)[e]||null;else if(t.currentStyle){o=t.currentStyle&&t.currentStyle[e];var i,n,l=t.style;null==o&&l&&l[e]&&(o=l[e]),i=l.left,n=t.runtimeStyle&&t.runtimeStyle.left,n&&(t.runtimeStyle.left=t.currentStyle.left),l.left="fontSize"===e?"1em":o,o=l.pixelLeft+"px",l.left=i,n&&(t.runtimeStyle.left=n)}return o},a={buildElem:function(t){var e=document.createElement("DIV");return e.innerHTML=t,e.firstChild.cloneNode(!0)},buildHint:function(t,e){return"string"==typeof t&&t?(t=this.buildElem('<li class="'+i.autoCompltHintClass+'">'+t+"</li>"),t.style.height=t.style.lineHeight=e.autoCompltHint.height,t.style.padding=e.autoCompltHint.padding,t.style.margin=e.autoCompltHint.margin,t.style.overflow=e.autoCompltHint.overflow,t.style.listStyleType=e.autoCompltHint.listStyleType,t.style.color=e.autoCompltHint.color,t.style.backgroundColor=e.autoCompltHint.backgroundColor,t.style.cursor=e.autoCompltHint.cursor,t.style.fontSize=e.autoCompltHint.fontSize,t):null},buildList:function(t){var e=this.buildElem('<ul class="'+i.autoCompltListClass+'"></ul>');return e.style.maxHeight=t.autoCompltList.maxHeight,e.style.border=t.autoCompltList.border,e.style.padding=t.autoCompltList.padding,e.style.margin=t.autoCompltList.margin,e.style.zIndex=t.autoCompltList.zIndex,e.style.overflowX=t.autoCompltList.overflowX,e.style.overflowY=t.autoCompltList.overflowY,e.style.display=t.autoCompltList.display,e.style.position=t.autoCompltList.position,e.style.backgroundColor=t.autoCompltList.backgroundColor,e}},r=function(t){this.uiElem=null,this.assocInput=t,this.mouseOnList=!1,this.onMouseSelectionListener=null,this.maxHintNum=i.maxHintNum,this.styles=JSON.parse(JSON.stringify(i.defaultStyles))};r.prototype.genList=function(){if(!this.uiElem){var t=this;this.uiElem=a.buildList(this.styles),l(this.uiElem,"mouseover",function(e){e=n(e),t.isHint(e.target)&&(t.pick(e.target),t.autoScroll())}),l(this.uiElem,"mouseout",function(e){t.unpick()}),l(this.uiElem,"mousedown",function(e){t.mouseOnList=!0,setTimeout(function(){t.assocInput.focus()},50)}),l(this.uiElem,"mouseup",function(e){e=n(e),t.isHint(e.target)&&(t.pick(e.target),"function"==typeof t.onMouseSelectionListener&&t.onMouseSelectionListener())}),document.body.appendChild(this.uiElem)}},r.prototype.isHint=function(t){if(t&&"object"==typeof t&&1===t.nodeType){var e=" "+t.className+" ";return e.indexOf(" "+i.autoCompltHintClass+" ")>=0}return!1},r.prototype.putHints=function(t){var e=0;if(t instanceof Array){var o,i,n=[];for(i=Math.min(t.length,this.maxHintNum),o=0;i>o;o++)n.push(a.buildHint(t[o],this.styles)),n[n.length-1]||n.pop();if(n.length>0){var l=document.createDocumentFragment();for(o=0,e=n.length;e>o;o++)l.appendChild(n[o]);this.clearHints(),this.genList(),this.uiElem.appendChild(l)}}return e},r.prototype.clearHints=function(){this.uiElem&&(this.uiElem.innerHTML="")},r.prototype.isOpen=function(){return this.uiElem?this.uiElem.getAttribute(i.listStatus.attr)==i.listStatus.open:!1},r.prototype.open=function(){var t;if(this.uiElem&&(t=this.uiElem.querySelectorAll("."+i.autoCompltHintClass))&&t.length){var e,o;for(o=this.assocInput.getBoundingClientRect(),this.uiElem.style.top=(document.documentElement&&document.documentElement.scrollTop?document.documentElement.scrollTop:document.body.scrollTop)+o.bottom+"px",this.uiElem.style.left=o.left+"px",o=o.right-o.left-parseFloat(u(this.uiElem,"borderLeftWidth"))-parseFloat(u(this.uiElem,"borderRightWidth")),this.uiElem.style.width=o+"px",e=0,o=0;e<t.length;
640e++)o+=parseFloat(u(t[e],"height"))+parseFloat(u(t[e],"paddingTop"))+parseFloat(u(t[e],"paddingBottom")),t[e+1]&&(o+=Math.max(parseFloat(u(t[e],"marginBottom")),parseFloat(u(t[e+1],"marginTop"))));o+=parseFloat(u(t[0],"marginTop"))+parseFloat(u(t[t.length-1],"marginBottom")),this.uiElem.style.height=o+1+"px",this.uiElem.setAttribute(i.listStatus.attr,i.listStatus.open),this.uiElem.style.display="block"}},r.prototype.close=function(){this.uiElem&&(this.mouseOnList=!1,this.uiElem.parentNode.removeChild(this.uiElem),this.uiElem=null)},r.prototype.autoScroll=function(){var t=this.getPicked();if(t){var e,o=0,i=0,n=t.clientHeight,l=parseFloat(u(t,"marginTop")),s=parseFloat(u(t,"marginBottom"));for(e=t.previousSibling,i=n+(e?Math.max(l,s):l);e;)o+=n,e=e.previousSibling,o+=e?Math.max(l,s):l;(this.uiElem.clientHeight+this.uiElem.scrollTop-o<i||o-this.uiElem.scrollTop<i)&&(this.uiElem.scrollTop=o)}},r.prototype.pick=function(t){if(this.uiElem){var e=null;if(this.isHint(t))e=t;else if("number"==typeof t&&(t>=0||-1===t)){var o=this.uiElem.querySelectorAll("."+i.autoCompltHintClass);o.length>0&&(e=+t,e=-1===e||e>o.length-1?o.length-1:e,e=o[e])}null!==e&&(this.unpick(),e.className+=" "+i.autoCompltHintSelectedClass,e.style.color=this.styles.autoCompltHintSelected.color,e.style.backgroundColor=this.styles.autoCompltHintSelected.backgroundColor)}},r.prototype.unpick=function(){if(this.uiElem){var t=this.getPicked();t&&(t.className=i.autoCompltHintClass,t.style.color=this.styles.autoCompltHint.color,t.style.backgroundColor=this.styles.autoCompltHint.backgroundColor)}},r.prototype.getPicked=function(){return this.uiElem?this.uiElem.querySelector("."+i.autoCompltHintSelectedClass)||null:null};var c={enable:function(t,o){if(t&&"object"==typeof t&&"string"==typeof t.tagName&&"input"==t.tagName.toLowerCase()&&"text"==t.type&&1===t.nodeType&&!t.autoComplt){t.autoComplt={};var u=i.autoCompltDelay,a=!0,c="",p=null,m=null,d=new r(t),f=function(){if(t.value.length>0&&a&&"function"==typeof p&&c!==t.value){var e={that:t,compltTarget:c=t.value,compltTargetMatchCurrentTarget:function(){return e.compltTarget===c},call:function(){e.compltTargetMatchCurrentTarget()&&p.call(e.that,e.compltTarget,e.openHint)},openHint:function(t){e.compltTargetMatchCurrentTarget()&&(d.putHints(t)?d.open():e.that.autoComplt.close())}};setTimeout(e.call,u)}},h=function(){if(a){var e=d.getPicked();e?t.value=e.innerHTML:t.value=c}},y=function(e){d.mouseOnList?(t.focus(),d.mouseOnList=!1):d.isOpen()&&t.autoComplt.close(i.hiddenArg_close_list_n_make_final_selection)},g=function(o){if(e()!==i.modeMobile&&(o=n(o),a))if("keydown"!=o.type||!d.isOpen()||o.keyCode!==i.keyCode.up&&o.keyCode!==i.keyCode.down){if("keyup"==o.type){var l=!1;switch(o.keyCode){case i.keyCode.up:case i.keyCode.down:d.isOpen()||(l=!0);break;case i.keyCode.esc:d.isOpen()&&(t.value=c,t.autoComplt.close(i.hiddenArg_close_list_n_make_final_selection));break;case i.keyCode.enter:d.isOpen()&&(h(),t.autoComplt.close(i.hiddenArg_close_list_n_make_final_selection));break;default:l=!0}l&&(t.value.length>0?f():t.autoComplt.close())}}else{var s=d.getPicked();o.keyCode===i.keyCode.up?s?s.previousSibling?d.pick(s.previousSibling):d.unpick():d.pick(-1):o.keyCode===i.keyCode.down&&(s?s.nextSibling?d.pick(s.nextSibling):d.unpick():d.pick(0)),d.autoScroll(),h()}},C=function(o){e()!==i.modePC&&(t.value.length>0?f():t.autoComplt.close())},H=function(e){null!=m&&"function"==typeof m[e]&&m[e].call(t)};return t.autoComplt.setHintsFetcher=function(t){return null===t||"function"==typeof t?(p=t,!0):!1},t.autoComplt.setListener=function(t,e){return(null===e||"function"==typeof e)&&i.listenersSupported.indexOf(t)>=0?(null==m&&(m={}),m[t]=e,!0):!1},t.autoComplt.setStyles=function(t,e){var o,n,l=!1;switch(t){case i.autoCompltListClass:o=d.styles.autoCompltList,n=i.adjStyleAttrs.autoCompltList;break;case i.autoCompltHintClass:o=d.styles.autoCompltHint,n=i.adjStyleAttrs.autoCompltHint;break;case i.autoCompltHintSelectedClass:o=d.styles.autoCompltHintSelected,n=i.adjStyleAttrs.autoCompltHintSelected}if(e instanceof Object&&o&&n)for(var s=0;s<n.length;s++)("string"==typeof e[n[s]]||"number"==typeof e[n[s]])&&(l||(l={}),l[n[s]]=o[n[s]]=e[n[s]]);return l},t.autoComplt.config=function(t){var e=!1;if(t instanceof Object){var o;void 0!==t.delay&&(o=Math.floor(t.delay))>0&&(e||(e={}),u=e.delay=o),void 0!==t.maxHintNum&&(o=Math.floor(t.maxHintNum))>0&&(e||(e={}),d.maxHintNum=e.maxHintNum=o)}return e},t.autoComplt.close=function(){c="",d.close(),a&&""!==t.value&&arguments[0]===i.hiddenArg_close_list_n_make_final_selection&&H("select")},t.autoComplt.enable=function(){a=!0},t.autoComplt.disable=function(){a=!1,this.close()},t.autoComplt.destroy=function(){s(t,"blur",y),s(t,"keyup",g),s(t,"keydown",g),this.disable(),delete t.autoComplt},d.onMouseSelectionListener=function(){h(),t.autoComplt.close(i.hiddenArg_close_list_n_make_final_selection)},l(t,"blur",y),l(t,"keyup",g),l(t,"keydown",g),l(t,"input",C),o instanceof Object&&(t.autoComplt.config(o),t.autoComplt.setHintsFetcher(o.hintsFetcher)),t}return null}};return c});
641</script>
641
642<div class="page-wrapper"><header class="page-header"><a class="action skip sr-only focus:not-sr-only focus:absolute focus:z-40 focus:bg-white
643   contentarea"
644   href="#contentarea">
645    <span>
646        Zum Inhalt springen    </span>
647</a>
648<script>
649    function initHeader () {
650        return {
651            searchOpen: true,
652            cart: {},
653            isCartOpen: false,
654            getData(data) {
655                if (data.cart) { this.cart = data.cart }
656            },
657            isCartEmpty() {
658                return !this.cart.summary_count
659            },
660            toggleCart(event) {
661                if (event.detail && event.detail.isOpen !== undefined) {
662                    this.isCartOpen = event.detail.isOpen
663                    if (!this.isCartOpen && this.$refs && this.$refs.cartButton) {
664                        this.$refs.cartButton.focus()
665                    }
666                } else {
667                                        this.isCartOpen = true
668                }
669            }
670        }
671    }
672    function initCompareHeader() {
673        return {
674            compareProducts: null,
675            itemCount: 0,
676            receiveCompareData(data) {
677                if (data['compare-products']) {
678                    this.compareProducts = data['compare-products'];
679                    this.itemCount = this.compareProducts.count;
680                }
681            }
682        }
683    }
684</script>
684
685<div id="header"
686     class="relative z-30 w-full border-b bg-container-lighter border-container-lighter"
687     x-data="initHeader()"
688     @private-content-loaded.window="getData(event.detail.data)"
689>
690    <!-- Topbar -->
691    <div class="flex items-center justify-center py-1 bg-c8 text-center text-l text-white font-bold mb-4">
692        <div class="container topbar">
693            <style>#html-body [data-pb-style=HRSL65K]{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;margin:0;padding:0}</style><div data-content-type="row" data-appearance="contained" data-element="main"><div data-enable-parallax="0" data-parallax-speed="0.5" data-background-images="{}" data-background-type="image" data-video-loop="true" data-video-play-only-visible="true" data-video-lazy-load="true" data-video-fallback-src="" data-background-lazy-load="false" data-element="inner" data-pb-style="HRSL65K"><div data-content-type="html" data-appearance="default" data-element="main" data-decoded="true">
693<script type="application/ld+json">
694{
695  "@context": "https://schema.org",
696  "@type": "Organization",
697  "name": "govi.de - Der Medienshop für Pharmazie",
698  "url": "https://govi.de",
699  "makesOffer": [
700    {
701		"@type": "Offer",
702        "name" : "Versandkostenfreie Lieferung innerhalb Deutschlands",
703        "description" : "Wir liefern für Sie frei Haus innerhalb Deutschlands",
704		"shippingDetails": {
705		  "@type": "OfferShippingDetails",
706		  "shippingDestination": {
707			"@type": "DefinedRegion",
708			"addressCountry": "DE"
709		  },
710		  "shippingRate": {
711			"@type": "MonetaryAmount",
712			"value": "0",
713			"currency": "EUR"
714		  }
715		}
716	},
717    {
718      "@type": "Offer",
719      "itemOffered": {
720        "@type": "Service",
721        "name": "24-Stunden-Bestellmöglichkeit",
722        "description": "Unsere Online-Bestellplattform steht Ihnen rund um die Uhr zur Verfügung."
723      }
724    },
725    {
726      "@type": "Offer",
727      "itemOffered": {
728        "@type": "Service",
729        "name": "Erstellungen von Literaturlisten",
730        "description": "Wir helfen Ihnen bei der Zusammenstellung passender Literaturquellen für Studium und Beruf."
731      }
732    }
733  ]
734}
735</script>
735</div><div data-content-type="html" data-appearance="default" data-element="main" data-decoded="true"><ul class="topbar-animated">
736<li>✓ 24-Stunden-Bestellmöglichkeit</li>
737<li>✓ Versandkostenfrei in Deutschland </li>
738<li>✓ Erstellungen von Literaturlisten</li>
739</ul></div></div></div>        </div>
740    </div>
741    <div class="container flex flex-wrap items-center justify-between w-full px-6 py-3 mx-auto mt-0">
742        <!--Logo-->
743        <div class="order-1 sm:order-2 lg:order-1 w-full pb-2 sm:w-auto sm:pb-0">
744    <a
745        class="flex items-center justify-center text-xl font-medium tracking-wide text-gray-800
746            no-underline hover:no-underline font-title"
747        href="https://www.govi.de/"
748        aria-label="Go&#x20;to&#x20;Home&#x20;page"
749    >
750        <img
751            src="https://www.govi.de/static/version1790667299/frontend/AMD/hyvaShop/de_DE/images/Govi-Logo-RGB.svg"
752            alt="Store&#x20;logo"
753            class="w-1/2 sm:w-[18rem]"
754        />
755            </a>
756</div>
757        <!-- Avoxa Logo -->
758        <!-- Avoxa Logo -->
759<div class="hidden lg:block order-2 sm:order-4 lg:order-2 xl:order-4
760        w-full pb-2 sm:w-auto sm:pb-0 pt-4 sm:pt-0 lg:pt-0 ml-0 xl:ml-4">
761    <a
762        class="flex items-center justify-center text-xl font-medium tracking-wide text-gray-800
763            no-underline hover:no-underline font-title"
764        href="https://avoxa.de"
765        target="_blank"
766        aria-label="Avoxa"
767    >
768        <img
769            src="https://www.govi.de/static/version1790667299/frontend/AMD/hyvaShop/de_DE/images/Avoxa-Logo-RGB.svg"
770            alt="Avoxa"
771            class="w-[15rem]"
772        />
773    </a>
774</div>
775    </div>
776    <div class="container flex flex-wrap items-center justify-between w-full px-6 py-0 mx-auto mt-0">
777        <!--Main Navigation-->
778        <nav
779    x-data="initMenuMobile_6ac21e8075380()"
780    @load.window="setActiveMenu($root)"
781    @keydown.window.escape="closeMenu()"
782    class="z-20 order-3 sm:order-1 lg:order-3 xl:order-2 navigation lg:hidden w-12 h-12"
783    aria-label="Site&#x20;navigation"
784    role="navigation"
785>
786    <!-- mobile -->
787    <button
788        x-ref="mobileMenuTrigger"
789        @click="openMenu()"
790        :class="{'overflow-x-hidden overflow-y-auto fixed top-0 left-0 w-full' : open}"
791        type="button"
792        aria-label="Open&#x20;menu"
793        aria-haspopup="menu"
794        :aria-expanded="open"
795        :hidden="open"
796    >
797        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="p-3" width="48" height="48" :class="{ 'hidden' : open, 'block': !open }" aria-hidden="true">
798  <path stroke-linecap="round" stroke-linejoin="round" d="M4 6h16M4 12h16M4 18h16"/>
799</svg>
800    </button>
801    <div
802        x-ref="mobileMenuNavLinks"
803        class="
804            fixed top-0 right-0 w-full h-full p-1 flex
805            flex-col border-t border-container bg-container-lighter
806            overflow-y-auto overflow-x-hidden
807        "
808        :class="{ 'hidden' : !open }"
809        :aria-hidden="open ? 'false' : 'true'"
810        role="dialog"
811        aria-modal="true"
812    >
813        <ul
814            class="border-t flex flex-col gap-y-1 mt-16"
815            aria-label="Site&#x20;navigation&#x20;links"
816        >
817                            <li
818                    data-child-id="category-node-14-main"
819                    class="level-0"
820                >
821                    <div
822                        class="flex items-center transition-transform duration-150 ease-in-out transform"
823                        :class="{
824                            '-translate-x-full' : mobilePanelActiveId,
825                            'translate-x-0' : !mobilePanelActiveId
826                        }"
827                    >
828                        <a
829                            class="flex items-center w-full px-8 py-4 border-b cursor-pointer
830                                bg-container-lighter border-container level-0
831                            "
832                            href="https://www.govi.de/apotheke"
833                            title="Apotheke"
834                        >
835                            Apotheke                        </a>
836                                                    <button
837                                @click="openSubcategory('category-node-14')"
838                                class="absolute right-0 flex items-center justify-center w-11 h-11 mr-8 cursor-pointer
839                                bg-container-lighter border-container"
840                                aria-label="Open&#x20;Apotheke&#x20;subcategories"
841                                aria-haspopup="true"
842                                :aria-expanded="mobilePanelActiveId === 'category-node-14'"
843                            >
844                                <div class="w-8 h-8 border rounded">
845                                    <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-full h-full p-1" width="24" height="24" aria-hidden="true">
846  <path stroke-linecap="round" stroke-linejoin="round" d="M9 5l7 7-7 7"/>
847</svg>
848                                </div>
849                            </button>
850                                            </div>
851                                            <div
852                            data-child-id="category-node-14"
853                            class="absolute top-0 right-0 z-10 flex flex-col gap-1 w-full h-full p-1 bg-container-lighter"
854                            :class="{
855                                'hidden': mobilePanelActiveId !== 'category-node-14'
856                            }"
857                        >
858                            <ul
859                                class="mt-16 transition-transform duration-200 ease-in-out translate-x-full transform"
860                                :class="{
861                                    'translate-x-full' : mobilePanelActiveId !== 'category-node-14',
862                                    'translate-x-0' : mobilePanelActiveId === 'category-node-14',
863                                }"
864                                aria-label="Subcategories"
865                            >
866                                <li>
867                                    <button
868                                        type="button"
869                                        class="flex items-center px-8 py-4 border-b cursor-pointer bg-container border-container w-full border-t"
870                                        @click="backToMainCategories('category-node-14-main')"
871                                        aria-label="Back&#x20;to&#x20;main&#x20;categories"
872                                    >
873                                        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" width="24" height="24" aria-hidden="true">
874  <path stroke-linecap="round" stroke-linejoin="round" d="M15 19l-7-7 7-7"/>
875</svg>
876                                        <span class="ml-4">
877                                            Apotheke                                        </span>
878                                    </button>
879                                </li>
880                                <li>
881                                    <a
882                                        href="https://www.govi.de/apotheke"
883                                        title="Apotheke"
884                                        class="flex items-center w-full px-8 py-4 border-b cursor-pointer
885                                            bg-container-lighter border-container
886                                        "
887                                    >
888                                        <span class="ml-10">
889                                            Alle anzeigen                                        </span>
890                                    </a>
891                                </li>
892                                                                    <li>
893                                        <a
894                                            href="https://www.govi.de/apotheke/arzneibuecher"
895                                            title="Arzneib&#xFC;cher"
896                                            class="flex items-center w-full px-8 py-4 border-b cursor-pointer
897                                                bg-container-lighter border-container
898                                            "
899                                        >
900                                            <span class="ml-10 text-base text-gray-700">
901                                                Arzneibücher                                            </span>
902                                        </a>
903                                    </li>
904                                                                    <li>
905                                        <a
906                                            href="https://www.govi.de/apotheke/pharmazeutische-beratung"
907                                            title="Pharmazeutische&#x20;Beratung"
908                                            class="flex items-center w-full px-8 py-4 border-b cursor-pointer
909                                                bg-container-lighter border-container
910                                            "
911                                        >
912                                            <span class="ml-10 text-base text-gray-700">
913                                                Pharmazeutische Beratung                                            </span>
914                                        </a>
915                                    </li>
916                                                                    <li>
917                                        <a
918                                            href="https://www.govi.de/apotheke/einrichtung-revision"
919                                            title="Einrichtung&#x20;&amp;&#x20;Revision"
920                                            class="flex items-center w-full px-8 py-4 border-b cursor-pointer
921                                                bg-container-lighter border-container
922                                            "
923                                        >
924                                            <span class="ml-10 text-base text-gray-700">
925                                                Einrichtung &amp; Revision                                            </span>
926                                        </a>
927                                    </li>
928                                                                    <li>
929                                        <a
930                                            href="https://www.govi.de/apotheke/management"
931                                            title="Management"
932                                            class="flex items-center w-full px-8 py-4 border-b cursor-pointer
933                                                bg-container-lighter border-container
934                                            "
935                                        >
936                                            <span class="ml-10 text-base text-gray-700">
937                                                Management                                            </span>
938                                        </a>
939                                    </li>
940                                                                    <li>
941                                        <a
942                                            href="https://www.govi.de/apotheke/nachschlagewerke"
943                                            title="Nachschlagewerke"
944                                            class="flex items-center w-full px-8 py-4 border-b cursor-pointer
945                                                bg-container-lighter border-container
946                                            "
947                                        >
948                                            <span class="ml-10 text-base text-gray-700">
949                                                Nachschlagewerke                                            </span>
950                                        </a>
951                                    </li>
952                                                                    <li>
953                                        <a
954                                            href="https://www.govi.de/apotheke/recht-dokumentation"
955                                            title="Recht&#x20;&amp;&#x20;Dokumentation"
956                                            class="flex items-center w-full px-8 py-4 border-b cursor-pointer
957                                                bg-container-lighter border-container
958                                            "
959                                        >
960                                            <span class="ml-10 text-base text-gray-700">
961                                                Recht &amp; Dokumentation                                            </span>
962                                        </a>
963                                    </li>
964                                                                    <li>
965                                        <a
966                                            href="https://www.govi.de/apotheke/rezeptur-defektur-kosmetik"
967                                            title="Rezeptur,&#x20;Defektur&#x20;&amp;&#x20;Kosmetik"
968                                            class="flex items-center w-full px-8 py-4 border-b cursor-pointer
969                                                bg-container-lighter border-container
970                                            "
971                                        >
972                                            <span class="ml-10 text-base text-gray-700">
973                                                Rezeptur, Defektur &amp; Kosmetik                                            </span>
974                                        </a>
975                                    </li>
976                                                                    <li>
977                                        <a
978                                            href="https://www.govi.de/apotheke/mitarbeiterschulungen"
979                                            title="Mitarbeiterschulungen"
980                                            class="flex items-center w-full px-8 py-4 border-b cursor-pointer
981                                                bg-container-lighter border-container
982                                            "
983                                        >
984                                            <span class="ml-10 text-base text-gray-700">
985                                                Mitarbeiterschulungen                                            </span>
986                                        </a>
987                                    </li>
988                                                            </ul>
989                            <button
990                                @click="closeMenu()"
991                                class="absolute flex justify-end w-16 self-end mb-1 transition-none"
992                                aria-label="Close&#x20;menu"
993                            >
994                                <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="hidden p-4" width="64" height="64" :class="{ 'hidden' : !open, 'block': open }" aria-hidden="true">
995  <path stroke-linecap="round" stroke-linejoin="round" d="M6 18L18 6M6 6l12 12"/>
996</svg>
997                            </button>
998                        </div>
999                                    </li>
1000                            <li
1001                    data-child-id="category-node-4-main"
1002                    class="level-0"
1003                >
1004                    <div
1005                        class="flex items-center transition-transform duration-150 ease-in-out transform"
1006                        :class="{
1007                            '-translate-x-full' : mobilePanelActiveId,
1008                            'translate-x-0' : !mobilePanelActiveId
1009                        }"
1010                    >
1011                        <a
1012                            class="flex items-center w-full px-8 py-4 border-b cursor-pointer
1013                                bg-container-lighter border-container level-0
1014                            "
1015                            href="https://www.govi.de/pharmazie-medizin"
1016                            title="Pharmazie&#x20;&amp;&#x20;Medizin"
1017                        >
1018                            Pharmazie &amp; Medizin                        </a>
1019                                                    <button
1020                                @click="openSubcategory('category-node-4')"
1021                                class="absolute right-0 flex items-center justify-center w-11 h-11 mr-8 cursor-pointer
1022                                bg-container-lighter border-container"
1023                                aria-label="Open&#x20;Pharmazie&#x20;&amp;&#x20;Medizin&#x20;subcategories"
1024                                aria-haspopup="true"
1025                                :aria-expanded="mobilePanelActiveId === 'category-node-4'"
1026                            >
1027                                <div class="w-8 h-8 border rounded">
1028                                    <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-full h-full p-1" width="24" height="24" aria-hidden="true">
1029  <path stroke-linecap="round" stroke-linejoin="round" d="M9 5l7 7-7 7"/>
1030</svg>
1031                                </div>
1032                            </button>
1033                                            </div>
1034                                            <div
1035                            data-child-id="category-node-4"
1036                            class="absolute top-0 right-0 z-10 flex flex-col gap-1 w-full h-full p-1 bg-container-lighter"
1037                            :class="{
1038                                'hidden': mobilePanelActiveId !== 'category-node-4'
1039                            }"
1040                        >
1041                            <ul
1042                                class="mt-16 transition-transform duration-200 ease-in-out translate-x-full transform"
1043                                :class="{
1044                                    'translate-x-full' : mobilePanelActiveId !== 'category-node-4',
1045                                    'translate-x-0' : mobilePanelActiveId === 'category-node-4',
1046                                }"
1047                                aria-label="Subcategories"
1048                            >
1049                                <li>
1050                                    <button
1051                                        type="button"
1052                                        class="flex items-center px-8 py-4 border-b cursor-pointer bg-container border-container w-full border-t"
1053                                        @click="backToMainCategories('category-node-4-main')"
1054                                        aria-label="Back&#x20;to&#x20;main&#x20;categories"
1055                                    >
1056                                        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" width="24" height="24" aria-hidden="true">
1057  <path stroke-linecap="round" stroke-linejoin="round" d="M15 19l-7-7 7-7"/>
1058</svg>
1059                                        <span class="ml-4">
1060                                            Pharmazie &amp; Medizin                                        </span>
1061                                    </button>
1062                                </li>
1063                                <li>
1064                                    <a
1065                                        href="https://www.govi.de/pharmazie-medizin"
1066                                        title="Pharmazie&#x20;&amp;&#x20;Medizin"
1067                                        class="flex items-center w-full px-8 py-4 border-b cursor-pointer
1068                                            bg-container-lighter border-container
1069                                        "
1070                                    >
1071                                        <span class="ml-10">
1072                                            Alle anzeigen                                        </span>
1073                                    </a>
1074                                </li>
1075                                                                    <li>
1076                                        <a
1077                                            href="https://www.govi.de/pharmazie-medizin/ausbildung-studium"
1078                                            title="Ausbildung&#x20;&amp;&#x20;Studium"
1079                                            class="flex items-center w-full px-8 py-4 border-b cursor-pointer
1080                                                bg-container-lighter border-container
1081                                            "
1082                                        >
1083                                            <span class="ml-10 text-base text-gray-700">
1084                                                Ausbildung &amp; Studium                                            </span>
1085                                        </a>
1086                                    </li>
1087                                                                    <li>
1088                                        <a
1089                                            href="https://www.govi.de/apotheke/pharmazeutische-beratung"
1090                                            title="Pharmazeutische&#x20;Beratung"
1091                                            class="flex items-center w-full px-8 py-4 border-b cursor-pointer
1092                                                bg-container-lighter border-container
1093                                            "
1094                                        >
1095                                            <span class="ml-10 text-base text-gray-700">
1096                                                Pharmazeutische Beratung                                            </span>
1097                                        </a>
1098                                    </li>
1099                                                                    <li>
1100                                        <a
1101                                            href="https://www.govi.de/pharmazie-medizin/biologie-chemie-physik-mathematik"
1102                                            title="Biologie,&#x20;Chemie,&#x20;Physik,&#x20;Mathematik"
1103                                            class="flex items-center w-full px-8 py-4 border-b cursor-pointer
1104                                                bg-container-lighter border-container
1105                                            "
1106                                        >
1107                                            <span class="ml-10 text-base text-gray-700">
1108                                                Biologie, Chemie, Physik, Mathematik                                            </span>
1109                                        </a>
1110                                    </li>
1111                                                                    <li>
1112                                        <a
1113                                            href="https://www.govi.de/pharmazie-medizin/komplementaermedizin"
1114                                            title="Komplement&#xE4;rmedizin"
1115                                            class="flex items-center w-full px-8 py-4 border-b cursor-pointer
1116                                                bg-container-lighter border-container
1117                                            "
1118                                        >
1119                                            <span class="ml-10 text-base text-gray-700">
1120                                                Komplementärmedizin                                            </span>
1121                                        </a>
1122                                    </li>
1123                                                                    <li>
1124                                        <a
1125                                            href="https://www.govi.de/pharmazie-medizin/medizin"
1126                                            title="Medizin"
1127                                            class="flex items-center w-full px-8 py-4 border-b cursor-pointer
1128                                                bg-container-lighter border-container
1129                                            "
1130                                        >
1131                                            <span class="ml-10 text-base text-gray-700">
1132                                                Medizin                                            </span>
1133                                        </a>
1134                                    </li>
1135                                                                    <li>
1136                                        <a
1137                                            href="https://www.govi.de/pharmazie-medizin/pharmakologie-toxikologie"
1138                                            title="Pharmakologie&#x20;&amp;&#x20;Toxikologie"
1139                                            class="flex items-center w-full px-8 py-4 border-b cursor-pointer
1140                                                bg-container-lighter border-container
1141                                            "
1142                                        >
1143                                            <span class="ml-10 text-base text-gray-700">
1144                                                Pharmakologie &amp; Toxikologie                                            </span>
1145                                        </a>
1146                                    </li>
1147                                                                    <li>
1148                                        <a
1149                                            href="https://www.govi.de/pharmazie-medizin/pharmaziegeschichte"
1150                                            title="Pharmaziegeschichte"
1151                                            class="flex items-center w-full px-8 py-4 border-b cursor-pointer
1152                                                bg-container-lighter border-container
1153                                            "
1154                                        >
1155                                            <span class="ml-10 text-base text-gray-700">
1156                                                Pharmaziegeschichte                                            </span>
1157                                        </a>
1158                                    </li>
1159                                                                    <li>
1160                                        <a
1161                                            href="https://www.govi.de/pharmazie-medizin/tiermedizin"
1162                                            title="Tiermedizin"
1163                                            class="flex items-center w-full px-8 py-4 border-b cursor-pointer
1164                                                bg-container-lighter border-container
1165                                            "
1166                                        >
1167                                            <span class="ml-10 text-base text-gray-700">
1168                                                Tiermedizin                                            </span>
1169                                        </a>
1170                                    </li>
1171                                                                    <li>
1172                                        <a
1173                                            href="https://www.govi.de/pharmazie-medizin/zeitschriften"
1174                                            title="Zeitschriften"
1175                                            class="flex items-center w-full px-8 py-4 border-b cursor-pointer
1176                                                bg-container-lighter border-container
1177                                            "
1178                                        >
1179                                            <span class="ml-10 text-base text-gray-700">
1180                                                Zeitschriften                                            </span>
1181                                        </a>
1182                                    </li>
1183                                                            </ul>
1184                            <button
1185                                @click="closeMenu()"
1186                                class="absolute flex justify-end w-16 self-end mb-1 transition-none"
1187                                aria-label="Close&#x20;menu"
1188                            >
1189                                <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="hidden p-4" width="64" height="64" :class="{ 'hidden' : !open, 'block': open }" aria-hidden="true">
1190  <path stroke-linecap="round" stroke-linejoin="round" d="M6 18L18 6M6 6l12 12"/>
1191</svg>
1192                            </button>
1193                        </div>
1194                                    </li>
1195                            <li
1196                    data-child-id="category-node-5-main"
1197                    class="level-0"
1198                >
1199                    <div
1200                        class="flex items-center transition-transform duration-150 ease-in-out transform"
1201                        :class="{
1202                            '-translate-x-full' : mobilePanelActiveId,
1203                            'translate-x-0' : !mobilePanelActiveId
1204                        }"
1205                    >
1206                        <a
1207                            class="flex items-center w-full px-8 py-4 border-b cursor-pointer
1208                                bg-container-lighter border-container level-0
1209                            "
1210                            href="https://www.govi.de/digitale-loesungen"
1211                            title="Digitale&#x20;L&#xF6;sungen"
1212                        >
1213                            Digitale Lösungen                        </a>
1214                                                    <button
1215                                @click="openSubcategory('category-node-5')"
1216                                class="absolute right-0 flex items-center justify-center w-11 h-11 mr-8 cursor-pointer
1217                                bg-container-lighter border-container"
1218                                aria-label="Open&#x20;Digitale&#x20;L&#xF6;sungen&#x20;subcategories"
1219                                aria-haspopup="true"
1220                                :aria-expanded="mobilePanelActiveId === 'category-node-5'"
1221                            >
1222                                <div class="w-8 h-8 border rounded">
1223                                    <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-full h-full p-1" width="24" height="24" aria-hidden="true">
1224  <path stroke-linecap="round" stroke-linejoin="round" d="M9 5l7 7-7 7"/>
1225</svg>
1226                                </div>
1227                            </button>
1228                                            </div>
1229                                            <div
1230                            data-child-id="category-node-5"
1231                            class="absolute top-0 right-0 z-10 flex flex-col gap-1 w-full h-full p-1 bg-container-lighter"
1232                            :class="{
1233                                'hidden': mobilePanelActiveId !== 'category-node-5'
1234                            }"
1235                        >
1236                            <ul
1237                                class="mt-16 transition-transform duration-200 ease-in-out translate-x-full transform"
1238                                :class="{
1239                                    'translate-x-full' : mobilePanelActiveId !== 'category-node-5',
1240                                    'translate-x-0' : mobilePanelActiveId === 'category-node-5',
1241                                }"
1242                                aria-label="Subcategories"
1243                            >
1244                                <li>
1245                                    <button
1246                                        type="button"
1247                                        class="flex items-center px-8 py-4 border-b cursor-pointer bg-container border-container w-full border-t"
1248                                        @click="backToMainCategories('category-node-5-main')"
1249                                        aria-label="Back&#x20;to&#x20;main&#x20;categories"
1250                                    >
1251                                        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" width="24" height="24" aria-hidden="true">
1252  <path stroke-linecap="round" stroke-linejoin="round" d="M15 19l-7-7 7-7"/>
1253</svg>
1254                                        <span class="ml-4">
1255                                            Digitale Lösungen                                        </span>
1256                                    </button>
1257                                </li>
1258                                <li>
1259                                    <a
1260                                        href="https://www.govi.de/digitale-loesungen"
1261                                        title="Digitale&#x20;L&#xF6;sungen"
1262                                        class="flex items-center w-full px-8 py-4 border-b cursor-pointer
1263                                            bg-container-lighter border-container
1264                                        "
1265                                    >
1266                                        <span class="ml-10">
1267                                            Alle anzeigen                                        </span>
1268                                    </a>
1269                                </li>
1270                                                                    <li>
1271                                        <a
1272                                            href="https://www.govi.de/digitale-loesungen/programme"
1273                                            title="Programme"
1274                                            class="flex items-center w-full px-8 py-4 border-b cursor-pointer
1275                                                bg-container-lighter border-container
1276                                            "
1277                                        >
1278                                            <span class="ml-10 text-base text-gray-700">
1279                                                Programme                                            </span>
1280                                        </a>
1281                                    </li>
1282                                                                    <li>
1283                                        <a
1284                                            href="https://www.govi.de/digitale-loesungen/schulungen"
1285                                            title="Schulungen"
1286                                            class="flex items-center w-full px-8 py-4 border-b cursor-pointer
1287                                                bg-container-lighter border-container
1288                                            "
1289                                        >
1290                                            <span class="ml-10 text-base text-gray-700">
1291                                                Schulungen                                            </span>
1292                                        </a>
1293                                    </li>
1294                                                                    <li>
1295                                        <a
1296                                            href="https://www.govi.de/digitale-loesungen/e-journals-e-artikel"
1297                                            title="E-Journals&#x20;&amp;&#x20;E-Artikel"
1298                                            class="flex items-center w-full px-8 py-4 border-b cursor-pointer
1299                                                bg-container-lighter border-container
1300                                            "
1301                                        >
1302                                            <span class="ml-10 text-base text-gray-700">
1303                                                E-Journals &amp; E-Artikel                                            </span>
1304                                        </a>
1305                                    </li>
1306                                                                    <li>
1307                                        <a
1308                                            href="https://www.govi.de/digitale-loesungen/avoxa-content-service"
1309                                            title="Avoxa&#x20;Content&#x20;Service"
1310                                            class="flex items-center w-full px-8 py-4 border-b cursor-pointer
1311                                                bg-container-lighter border-container
1312                                            "
1313                                        >
1314                                            <span class="ml-10 text-base text-gray-700">
1315                                                Avoxa Content Service                                            </span>
1316                                        </a>
1317                                    </li>
1318                                                            </ul>
1319                            <button
1320                                @click="closeMenu()"
1321                                class="absolute flex justify-end w-16 self-end mb-1 transition-none"
1322                                aria-label="Close&#x20;menu"
1323                            >
1324                                <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="hidden p-4" width="64" height="64" :class="{ 'hidden' : !open, 'block': open }" aria-hidden="true">
1325  <path stroke-linecap="round" stroke-linejoin="round" d="M6 18L18 6M6 6l12 12"/>
1326</svg>
1327                            </button>
1328                        </div>
1329                                    </li>
1330                            <li
1331                    data-child-id="category-node-6-main"
1332                    class="level-0"
1333                >
1334                    <div
1335                        class="flex items-center transition-transform duration-150 ease-in-out transform"
1336                        :class="{
1337                            '-translate-x-full' : mobilePanelActiveId,
1338                            'translate-x-0' : !mobilePanelActiveId
1339                        }"
1340                    >
1341                        <a
1342                            class="flex items-center w-full px-8 py-4 border-b cursor-pointer
1343                                bg-container-lighter border-container level-0
1344                            "
1345                            href="https://www.govi.de/sachbuch-literatur"
1346                            title="Sachbuch&#x20;&amp;&#x20;Literatur"
1347                        >
1348                            Sachbuch &amp; Literatur                        </a>
1349                                                    <button
1350                                @click="openSubcategory('category-node-6')"
1351                                class="absolute right-0 flex items-center justify-center w-11 h-11 mr-8 cursor-pointer
1352                                bg-container-lighter border-container"
1353                                aria-label="Open&#x20;Sachbuch&#x20;&amp;&#x20;Literatur&#x20;subcategories"
1354                                aria-haspopup="true"
1355                                :aria-expanded="mobilePanelActiveId === 'category-node-6'"
1356                            >
1357                                <div class="w-8 h-8 border rounded">
1358                                    <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-full h-full p-1" width="24" height="24" aria-hidden="true">
1359  <path stroke-linecap="round" stroke-linejoin="round" d="M9 5l7 7-7 7"/>
1360</svg>
1361                                </div>
1362                            </button>
1363                                            </div>
1364                                            <div
1365                            data-child-id="category-node-6"
1366                            class="absolute top-0 right-0 z-10 flex flex-col gap-1 w-full h-full p-1 bg-container-lighter"
1367                            :class="{
1368                                'hidden': mobilePanelActiveId !== 'category-node-6'
1369                            }"
1370                        >
1371                            <ul
1372                                class="mt-16 transition-transform duration-200 ease-in-out translate-x-full transform"
1373                                :class="{
1374                                    'translate-x-full' : mobilePanelActiveId !== 'category-node-6',
1375                                    'translate-x-0' : mobilePanelActiveId === 'category-node-6',
1376                                }"
1377                                aria-label="Subcategories"
1378                            >
1379                                <li>
1380                                    <button
1381                                        type="button"
1382                                        class="flex items-center px-8 py-4 border-b cursor-pointer bg-container border-container w-full border-t"
1383                                        @click="backToMainCategories('category-node-6-main')"
1384                                        aria-label="Back&#x20;to&#x20;main&#x20;categories"
1385                                    >
1386                                        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" width="24" height="24" aria-hidden="true">
1387  <path stroke-linecap="round" stroke-linejoin="round" d="M15 19l-7-7 7-7"/>
1388</svg>
1389                                        <span class="ml-4">
1390                                            Sachbuch &amp; Literatur                                        </span>
1391                                    </button>
1392                                </li>
1393                                <li>
1394                                    <a
1395                                        href="https://www.govi.de/sachbuch-literatur"
1396                                        title="Sachbuch&#x20;&amp;&#x20;Literatur"
1397                                        class="flex items-center w-full px-8 py-4 border-b cursor-pointer
1398                                            bg-container-lighter border-container
1399                                        "
1400                                    >
1401                                        <span class="ml-10">
1402                                            Alle anzeigen                                        </span>
1403                                    </a>
1404                                </li>
1405                                                                    <li>
1406                                        <a
1407                                            href="https://www.govi.de/sachbuch-literatur/gesundheitsratgeber"
1408                                            title="Gesundheitsratgeber"
1409                                            class="flex items-center w-full px-8 py-4 border-b cursor-pointer
1410                                                bg-container-lighter border-container
1411                                            "
1412                                        >
1413                                            <span class="ml-10 text-base text-gray-700">
1414                                                Gesundheitsratgeber                                            </span>
1415                                        </a>
1416                                    </li>
1417                                                                    <li>
1418                                        <a
1419                                            href="https://www.govi.de/sachbuch-literatur/gesunde-ernaehrung"
1420                                            title="Gesunde&#x20;Ern&#xE4;hrung"
1421                                            class="flex items-center w-full px-8 py-4 border-b cursor-pointer
1422                                                bg-container-lighter border-container
1423                                            "
1424                                        >
1425                                            <span class="ml-10 text-base text-gray-700">
1426                                                Gesunde Ernährung                                            </span>
1427                                        </a>
1428                                    </li>
1429                                                                    <li>
1430                                        <a
1431                                            href="https://www.govi.de/sachbuch-literatur/heilpflanzen-garten"
1432                                            title="Heilpflanzen&#x20;&amp;&#x20;Garten"
1433                                            class="flex items-center w-full px-8 py-4 border-b cursor-pointer
1434                                                bg-container-lighter border-container
1435                                            "
1436                                        >
1437                                            <span class="ml-10 text-base text-gray-700">
1438                                                Heilpflanzen &amp; Garten                                            </span>
1439                                        </a>
1440                                    </li>
1441                                                                    <li>
1442                                        <a
1443                                            href="https://www.govi.de/sachbuch-literatur/sachbuecher"
1444                                            title="Sachb&#xFC;cher"
1445                                            class="flex items-center w-full px-8 py-4 border-b cursor-pointer
1446                                                bg-container-lighter border-container
1447                                            "
1448                                        >
1449                                            <span class="ml-10 text-base text-gray-700">
1450                                                Sachbücher                                            </span>
1451                                        </a>
1452                                    </li>
1453                                                                    <li>
1454                                        <a
1455                                            href="https://www.govi.de/sachbuch-literatur/kinderbuecher"
1456                                            title="Kinderb&#xFC;cher"
1457                                            class="flex items-center w-full px-8 py-4 border-b cursor-pointer
1458                                                bg-container-lighter border-container
1459                                            "
1460                                        >
1461                                            <span class="ml-10 text-base text-gray-700">
1462                                                Kinderbücher                                            </span>
1463                                        </a>
1464                                    </li>
1465                                                                    <li>
1466                                        <a
1467                                            href="https://www.govi.de/sachbuch-literatur/lesevergnuegen"
1468                                            title="Lesevergn&#xFC;gen"
1469                                            class="flex items-center w-full px-8 py-4 border-b cursor-pointer
1470                                                bg-container-lighter border-container
1471                                            "
1472                                        >
1473                                            <span class="ml-10 text-base text-gray-700">
1474                                                Lesevergnügen                                            </span>
1475                                        </a>
1476                                    </li>
1477                                                            </ul>
1478                            <button
1479                                @click="closeMenu()"
1480                                class="absolute flex justify-end w-16 self-end mb-1 transition-none"
1481                                aria-label="Close&#x20;menu"
1482                            >
1483                                <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="hidden p-4" width="64" height="64" :class="{ 'hidden' : !open, 'block': open }" aria-hidden="true">
1484  <path stroke-linecap="round" stroke-linejoin="round" d="M6 18L18 6M6 6l12 12"/>
1485</svg>
1486                            </button>
1487                        </div>
1488                                    </li>
1489                        <li>
1490                <!-- Topbar -->
1491                <div class="block flex items-center justify-center py-2 bg-c8 text-center text-l text-white">
1492                    <div class="container topbar">
1493                        <style>#html-body [data-pb-style=AGJ6Y07]{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;margin:0;padding:0}</style><div data-content-type="row" data-appearance="contained" data-element="main"><div data-enable-parallax="0" data-parallax-speed="0.5" data-background-images="{}" data-background-type="image" data-video-loop="true" data-video-play-only-visible="true" data-video-lazy-load="true" data-video-fallback-src="" data-background-lazy-load="false" data-element="inner" data-pb-style="AGJ6Y07"><div data-content-type="html" data-appearance="default" data-element="main" data-decoded="true"><ul class="">
1494<li>✓ 24-Stunden-Bestellmöglichkeit</li>
1495<li>✓ Versandkostenfreie Lieferung innerhalb Deutschlands</li>
1496<li>✓ Erstellungen von Literaturlisten</li>
1497</ul></div></div></div>                    </div>
1498                </div>
1499            </li>
1500            <li data-child-id="avoxa-logo-main"
1501                    class="level-0">
1502                <!-- Avoxa Logo -->
1503                <!-- Avoxa Logo -->
1504<div class="block pt-8 sm:pt-8 order-2 sm:order-4 lg:order-2 xl:order-4
1505        w-full pb-2 sm:w-auto sm:pb-0 pt-4 sm:pt-0 lg:pt-0 ml-0 xl:ml-4">
1506    <a
1507        class="flex items-center justify-center text-xl font-medium tracking-wide text-gray-800
1508            no-underline hover:no-underline font-title"
1509        href="https://avoxa.de"
1510        target="_blank"
1511        aria-label="Avoxa"
1512    >
1513        <img
1514            src="https://www.govi.de/static/version1790667299/frontend/AMD/hyvaShop/de_DE/images/Avoxa-Logo-RGB.svg"
1515            alt="Avoxa"
1516            class="w-[15rem]"
1517        />
1518    </a>
1519</div>
1520            </li>
1521        </ul>
1522        <button
1523            @click="closeMenu()"
1524            class="absolute flex justify-end w-16 self-end mb-1"
1525            aria-label="Close&#x20;menu"
1526            type="button"
1527        >
1528            <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="hidden p-4" width="64" height="64" :class="{ 'hidden' : !open, 'block': open }" aria-hidden="true">
1529  <path stroke-linecap="round" stroke-linejoin="round" d="M6 18L18 6M6 6l12 12"/>
1530</svg>
1531        </button>
1532    </div>
1533</nav>
1534<script>
1535    'use strict';
1536
1537    const initMenuMobile_6ac21e8075380 = () => {
1538        return {
1539            mobilePanelActiveId: null,
1540            open: false,
1541            setActiveMenu(menuNode) {
1542                Array.from(menuNode.querySelectorAll('a')).filter(link => {
1543                    return link.href === window.location.href.split('?')[0];
1544                }).map(item => {
1545                    item.classList.add('underline');
1546                    item.closest('li.level-0') &&
1547                    item.closest('li.level-0').querySelector('a.level-0').classList.add('underline');
1548                });
1549            },
1550            openMenu() {
1551                this.open = true
1552                this.$nextTick(() => hyva.trapFocus(this.$refs['mobileMenuNavLinks']));
1553                // Prevent from body scrolling while mobile menu opened
1554                document.body.style.position = 'fixed';
1555            },
1556            closeMenu() {
1557                document.body.style.position = '';
1558
1559                if (this.open) {
1560                    this.$nextTick(() => this.$refs['mobileMenuTrigger'].focus() || hyva.releaseFocus());
1561                }
1562
1563                this.open = false
1564                this.mobilePanelActiveId = null
1565            },
1566            openSubcategory(index) {
1567                const menuNodeRef = document.querySelector('[data-child-id=' + index + ']')
1568                this.mobilePanelActiveId = this.mobilePanelActiveId === index ? 0 : index
1569                this.$nextTick(() => hyva.trapFocus(menuNodeRef))
1570            },
1571            backToMainCategories(index) {
1572                const menuNodeRef = document.querySelector('[data-child-id=' + index + ']')
1573                this.mobilePanelActiveId = 0
1574                this.$nextTick(() => {
1575                    hyva.trapFocus(this.$refs['mobileMenuNavLinks'])
1576                    menuNodeRef.querySelector('a').focus()
1577                })
1578            }
1579        }
1580    }
1581</script>
1581
1582<div x-data="initMenuDesktop_6ac21e8079072()"
1583     class="z-20 order-3 sm:order-1 lg:order-3 xl:order-2 navigation hidden lg:flex"
1584>
1585    <!-- desktop -->
1586    <div x-ref="nav-desktop"
1587         @load.window="setActiveMenu($root)"
1588         class="hidden lg:block lg:relative lg:min-h-0 lg:w-auto lg:pt-0">
1589        <nav
1590            class="duration-150 ease-in-out transform w-auto relative min-h-0 transition-display"
1591            aria-label="Main&#x20;menu"
1592        >
1593            <ul class="flex justify-start">
1594                                    <li class="relative mr-2 level-0"
1595                        @mouseenter="hoverPanelActiveId = 'category-node-14'"
1596                        @mouseleave="hoverPanelActiveId = 0"
1597                        @keyup.escape="hoverPanelActiveId = 0"
1598                    >
1599                        <span class="flex items-center gap-1 p-3 text-md bg-opacity-95">
1600                            <a class="w-full py-3 text-base text-gray-700 hover:underline level-0"
1601                               href="https://www.govi.de/apotheke"
1602                               title="Apotheke"
1603                               @focus="hoverPanelActiveId = 0"
1604                            >
1605                                Apotheke                            </a>
1606                                                            <button
1607                                    type="button"
1608                                    data-sr-button-id="category-node-14"
1609                                    :aria-expanded="hoverPanelActiveId === 'category-node-14' ? 'true' : 'false'"
1610                                    @click="openMenuOnClick('category-node-14')"
1611                                >
1612                                    <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="flex self-center h-5 w-5" width="25" height="25" aria-hidden="true">
1613  <path fill-rule="evenodd" d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z" clip-rule="evenodd"/>
1614</svg>
1615                                    <span class="sr-only">
1616                                        Show submenu for Apotheke category                                    </span>
1617                                </button>
1618                                                    </span>
1619                                                    <ul
1620                                class="absolute z-10 hidden px-6 py-4 -ml-6 shadow-lg bg-container-lighter/95"
1621                                :class="{
1622                                    'hidden' : hoverPanelActiveId !== 'category-node-14',
1623                                    'block' : hoverPanelActiveId === 'category-node-14'
1624                                }"
1625                            >
1626                                                                    <li>
1627                                        <a href="https://www.govi.de/apotheke/arzneibuecher"
1628                                           title="Arzneib&#xFC;cher"
1629                                           class="block w-full px-3 py-1 my-1 whitespace-nowrap first:mt-0 hover:underline"
1630                                           @keyup.escape="$nextTick(() => document.querySelector('[data-sr-button-id=category\u002Dnode\u002D14]').focus())"
1631                                        >
1632                                            <span class="text-base text-gray-700">
1633                                                Arzneibücher                                            </span>
1634                                        </a>
1635                                    </li>
1636                                                                    <li>
1637                                        <a href="https://www.govi.de/apotheke/pharmazeutische-beratung"
1638                                           title="Pharmazeutische&#x20;Beratung"
1639                                           class="block w-full px-3 py-1 my-1 whitespace-nowrap first:mt-0 hover:underline"
1640                                           @keyup.escape="$nextTick(() => document.querySelector('[data-sr-button-id=category\u002Dnode\u002D14]').focus())"
1641                                        >
1642                                            <span class="text-base text-gray-700">
1643                                                Pharmazeutische Beratung                                            </span>
1644                                        </a>
1645                                    </li>
1646                                                                    <li>
1647                                        <a href="https://www.govi.de/apotheke/einrichtung-revision"
1648                                           title="Einrichtung&#x20;&amp;&#x20;Revision"
1649                                           class="block w-full px-3 py-1 my-1 whitespace-nowrap first:mt-0 hover:underline"
1650                                           @keyup.escape="$nextTick(() => document.querySelector('[data-sr-button-id=category\u002Dnode\u002D14]').focus())"
1651                                        >
1652                                            <span class="text-base text-gray-700">
1653                                                Einrichtung &amp; Revision                                            </span>
1654                                        </a>
1655                                    </li>
1656                                                                    <li>
1657                                        <a href="https://www.govi.de/apotheke/management"
1658                                           title="Management"
1659                                           class="block w-full px-3 py-1 my-1 whitespace-nowrap first:mt-0 hover:underline"
1660                                           @keyup.escape="$nextTick(() => document.querySelector('[data-sr-button-id=category\u002Dnode\u002D14]').focus())"
1661                                        >
1662                                            <span class="text-base text-gray-700">
1663                                                Management                                            </span>
1664                                        </a>
1665                                    </li>
1666                                                                    <li>
1667                                        <a href="https://www.govi.de/apotheke/nachschlagewerke"
1668                                           title="Nachschlagewerke"
1669                                           class="block w-full px-3 py-1 my-1 whitespace-nowrap first:mt-0 hover:underline"
1670                                           @keyup.escape="$nextTick(() => document.querySelector('[data-sr-button-id=category\u002Dnode\u002D14]').focus())"
1671                                        >
1672                                            <span class="text-base text-gray-700">
1673                                                Nachschlagewerke                                            </span>
1674                                        </a>
1675                                    </li>
1676                                                                    <li>
1677                                        <a href="https://www.govi.de/apotheke/recht-dokumentation"
1678                                           title="Recht&#x20;&amp;&#x20;Dokumentation"
1679                                           class="block w-full px-3 py-1 my-1 whitespace-nowrap first:mt-0 hover:underline"
1680                                           @keyup.escape="$nextTick(() => document.querySelector('[data-sr-button-id=category\u002Dnode\u002D14]').focus())"
1681                                        >
1682                                            <span class="text-base text-gray-700">
1683                                                Recht &amp; Dokumentation                                            </span>
1684                                        </a>
1685                                    </li>
1686                                                                    <li>
1687                                        <a href="https://www.govi.de/apotheke/rezeptur-defektur-kosmetik"
1688                                           title="Rezeptur,&#x20;Defektur&#x20;&amp;&#x20;Kosmetik"
1689                                           class="block w-full px-3 py-1 my-1 whitespace-nowrap first:mt-0 hover:underline"
1690                                           @keyup.escape="$nextTick(() => document.querySelector('[data-sr-button-id=category\u002Dnode\u002D14]').focus())"
1691                                        >
1692                                            <span class="text-base text-gray-700">
1693                                                Rezeptur, Defektur &amp; Kosmetik                                            </span>
1694                                        </a>
1695                                    </li>
1696                                                                    <li>
1697                                        <a href="https://www.govi.de/apotheke/mitarbeiterschulungen"
1698                                           title="Mitarbeiterschulungen"
1699                                           class="block w-full px-3 py-1 my-1 whitespace-nowrap first:mt-0 hover:underline"
1700                                           @keyup.escape="$nextTick(() => document.querySelector('[data-sr-button-id=category\u002Dnode\u002D14]').focus())"
1701                                        >
1702                                            <span class="text-base text-gray-700">
1703                                                Mitarbeiterschulungen                                            </span>
1704                                        </a>
1705                                    </li>
1706                                                            </ul>
1707                                            </li>
1708                                    <li class="relative mr-2 level-0"
1709                        @mouseenter="hoverPanelActiveId = 'category-node-4'"
1710                        @mouseleave="hoverPanelActiveId = 0"
1711                        @keyup.escape="hoverPanelActiveId = 0"
1712                    >
1713                        <span class="flex items-center gap-1 p-3 text-md bg-opacity-95">
1714                            <a class="w-full py-3 text-base text-gray-700 hover:underline level-0"
1715                               href="https://www.govi.de/pharmazie-medizin"
1716                               title="Pharmazie&#x20;&amp;&#x20;Medizin"
1717                               @focus="hoverPanelActiveId = 0"
1718                            >
1719                                Pharmazie &amp; Medizin                            </a>
1720                                                            <button
1721                                    type="button"
1722                                    data-sr-button-id="category-node-4"
1723                                    :aria-expanded="hoverPanelActiveId === 'category-node-4' ? 'true' : 'false'"
1724                                    @click="openMenuOnClick('category-node-4')"
1725                                >
1726                                    <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="flex self-center h-5 w-5" width="25" height="25" aria-hidden="true">
1727  <path fill-rule="evenodd" d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z" clip-rule="evenodd"/>
1728</svg>
1729                                    <span class="sr-only">
1730                                        Show submenu for Pharmazie &amp; Medizin category                                    </span>
1731                                </button>
1732                                                    </span>
1733                                                    <ul
1734                                class="absolute z-10 hidden px-6 py-4 -ml-6 shadow-lg bg-container-lighter/95"
1735                                :class="{
1736                                    'hidden' : hoverPanelActiveId !== 'category-node-4',
1737                                    'block' : hoverPanelActiveId === 'category-node-4'
1738                                }"
1739                            >
1740                                                                    <li>
1741                                        <a href="https://www.govi.de/pharmazie-medizin/ausbildung-studium"
1742                                           title="Ausbildung&#x20;&amp;&#x20;Studium"
1743                                           class="block w-full px-3 py-1 my-1 whitespace-nowrap first:mt-0 hover:underline"
1744                                           @keyup.escape="$nextTick(() => document.querySelector('[data-sr-button-id=category\u002Dnode\u002D4]').focus())"
1745                                        >
1746                                            <span class="text-base text-gray-700">
1747                                                Ausbildung &amp; Studium                                            </span>
1748                                        </a>
1749                                    </li>
1750                                                                    <li>
1751                                        <a href="https://www.govi.de/apotheke/pharmazeutische-beratung"
1752                                           title="Pharmazeutische&#x20;Beratung"
1753                                           class="block w-full px-3 py-1 my-1 whitespace-nowrap first:mt-0 hover:underline"
1754                                           @keyup.escape="$nextTick(() => document.querySelector('[data-sr-button-id=category\u002Dnode\u002D4]').focus())"
1755                                        >
1756                                            <span class="text-base text-gray-700">
1757                                                Pharmazeutische Beratung                                            </span>
1758                                        </a>
1759                                    </li>
1760                                                                    <li>
1761                                        <a href="https://www.govi.de/pharmazie-medizin/biologie-chemie-physik-mathematik"
1762                                           title="Biologie,&#x20;Chemie,&#x20;Physik,&#x20;Mathematik"
1763                                           class="block w-full px-3 py-1 my-1 whitespace-nowrap first:mt-0 hover:underline"
1764                                           @keyup.escape="$nextTick(() => document.querySelector('[data-sr-button-id=category\u002Dnode\u002D4]').focus())"
1765                                        >
1766                                            <span class="text-base text-gray-700">
1767                                                Biologie, Chemie, Physik, Mathematik                                            </span>
1768                                        </a>
1769                                    </li>
1770                                                                    <li>
1771                                        <a href="https://www.govi.de/pharmazie-medizin/komplementaermedizin"
1772                                           title="Komplement&#xE4;rmedizin"
1773                                           class="block w-full px-3 py-1 my-1 whitespace-nowrap first:mt-0 hover:underline"
1774                                           @keyup.escape="$nextTick(() => document.querySelector('[data-sr-button-id=category\u002Dnode\u002D4]').focus())"
1775                                        >
1776                                            <span class="text-base text-gray-700">
1777                                                Komplementärmedizin                                            </span>
1778                                        </a>
1779                                    </li>
1780                                                                    <li>
1781                                        <a href="https://www.govi.de/pharmazie-medizin/medizin"
1782                                           title="Medizin"
1783                                           class="block w-full px-3 py-1 my-1 whitespace-nowrap first:mt-0 hover:underline"
1784                                           @keyup.escape="$nextTick(() => document.querySelector('[data-sr-button-id=category\u002Dnode\u002D4]').focus())"
1785                                        >
1786                                            <span class="text-base text-gray-700">
1787                                                Medizin                                            </span>
1788                                        </a>
1789                                    </li>
1790                                                                    <li>
1791                                        <a href="https://www.govi.de/pharmazie-medizin/pharmakologie-toxikologie"
1792                                           title="Pharmakologie&#x20;&amp;&#x20;Toxikologie"
1793                                           class="block w-full px-3 py-1 my-1 whitespace-nowrap first:mt-0 hover:underline"
1794                                           @keyup.escape="$nextTick(() => document.querySelector('[data-sr-button-id=category\u002Dnode\u002D4]').focus())"
1795                                        >
1796                                            <span class="text-base text-gray-700">
1797                                                Pharmakologie &amp; Toxikologie                                            </span>
1798                                        </a>
1799                                    </li>
1800                                                                    <li>
1801                                        <a href="https://www.govi.de/pharmazie-medizin/pharmaziegeschichte"
1802                                           title="Pharmaziegeschichte"
1803                                           class="block w-full px-3 py-1 my-1 whitespace-nowrap first:mt-0 hover:underline"
1804                                           @keyup.escape="$nextTick(() => document.querySelector('[data-sr-button-id=category\u002Dnode\u002D4]').focus())"
1805                                        >
1806                                            <span class="text-base text-gray-700">
1807                                                Pharmaziegeschichte                                            </span>
1808                                        </a>
1809                                    </li>
1810                                                                    <li>
1811                                        <a href="https://www.govi.de/pharmazie-medizin/tiermedizin"
1812                                           title="Tiermedizin"
1813                                           class="block w-full px-3 py-1 my-1 whitespace-nowrap first:mt-0 hover:underline"
1814                                           @keyup.escape="$nextTick(() => document.querySelector('[data-sr-button-id=category\u002Dnode\u002D4]').focus())"
1815                                        >
1816                                            <span class="text-base text-gray-700">
1817                                                Tiermedizin                                            </span>
1818                                        </a>
1819                                    </li>
1820                                                                    <li>
1821                                        <a href="https://www.govi.de/pharmazie-medizin/zeitschriften"
1822                                           title="Zeitschriften"
1823                                           class="block w-full px-3 py-1 my-1 whitespace-nowrap first:mt-0 hover:underline"
1824                                           @keyup.escape="$nextTick(() => document.querySelector('[data-sr-button-id=category\u002Dnode\u002D4]').focus())"
1825                                        >
1826                                            <span class="text-base text-gray-700">
1827                                                Zeitschriften                                            </span>
1828                                        </a>
1829                                    </li>
1830                                                            </ul>
1831                                            </li>
1832                                    <li class="relative mr-2 level-0"
1833                        @mouseenter="hoverPanelActiveId = 'category-node-5'"
1834                        @mouseleave="hoverPanelActiveId = 0"
1835                        @keyup.escape="hoverPanelActiveId = 0"
1836                    >
1837                        <span class="flex items-center gap-1 p-3 text-md bg-opacity-95">
1838                            <a class="w-full py-3 text-base text-gray-700 hover:underline level-0"
1839                               href="https://www.govi.de/digitale-loesungen"
1840                               title="Digitale&#x20;L&#xF6;sungen"
1841                               @focus="hoverPanelActiveId = 0"
1842                            >
1843                                Digitale Lösungen                            </a>
1844                                                            <button
1845                                    type="button"
1846                                    data-sr-button-id="category-node-5"
1847                                    :aria-expanded="hoverPanelActiveId === 'category-node-5' ? 'true' : 'false'"
1848                                    @click="openMenuOnClick('category-node-5')"
1849                                >
1850                                    <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="flex self-center h-5 w-5" width="25" height="25" aria-hidden="true">
1851  <path fill-rule="evenodd" d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z" clip-rule="evenodd"/>
1852</svg>
1853                                    <span class="sr-only">
1854                                        Show submenu for Digitale Lösungen category                                    </span>
1855                                </button>
1856                                                    </span>
1857                                                    <ul
1858                                class="absolute z-10 hidden px-6 py-4 -ml-6 shadow-lg bg-container-lighter/95"
1859                                :class="{
1860                                    'hidden' : hoverPanelActiveId !== 'category-node-5',
1861                                    'block' : hoverPanelActiveId === 'category-node-5'
1862                                }"
1863                            >
1864                                                                    <li>
1865                                        <a href="https://www.govi.de/digitale-loesungen/programme"
1866                                           title="Programme"
1867                                           class="block w-full px-3 py-1 my-1 whitespace-nowrap first:mt-0 hover:underline"
1868                                           @keyup.escape="$nextTick(() => document.querySelector('[data-sr-button-id=category\u002Dnode\u002D5]').focus())"
1869                                        >
1870                                            <span class="text-base text-gray-700">
1871                                                Programme                                            </span>
1872                                        </a>
1873                                    </li>
1874                                                                    <li>
1875                                        <a href="https://www.govi.de/digitale-loesungen/schulungen"
1876                                           title="Schulungen"
1877                                           class="block w-full px-3 py-1 my-1 whitespace-nowrap first:mt-0 hover:underline"
1878                                           @keyup.escape="$nextTick(() => document.querySelector('[data-sr-button-id=category\u002Dnode\u002D5]').focus())"
1879                                        >
1880                                            <span class="text-base text-gray-700">
1881                                                Schulungen                                            </span>
1882                                        </a>
1883                                    </li>
1884                                                                    <li>
1885                                        <a href="https://www.govi.de/digitale-loesungen/e-journals-e-artikel"
1886                                           title="E-Journals&#x20;&amp;&#x20;E-Artikel"
1887                                           class="block w-full px-3 py-1 my-1 whitespace-nowrap first:mt-0 hover:underline"
1888                                           @keyup.escape="$nextTick(() => document.querySelector('[data-sr-button-id=category\u002Dnode\u002D5]').focus())"
1889                                        >
1890                                            <span class="text-base text-gray-700">
1891                                                E-Journals &amp; E-Artikel                                            </span>
1892                                        </a>
1893                                    </li>
1894                                                                    <li>
1895                                        <a href="https://www.govi.de/digitale-loesungen/avoxa-content-service"
1896                                           title="Avoxa&#x20;Content&#x20;Service"
1897                                           class="block w-full px-3 py-1 my-1 whitespace-nowrap first:mt-0 hover:underline"
1898                                           @keyup.escape="$nextTick(() => document.querySelector('[data-sr-button-id=category\u002Dnode\u002D5]').focus())"
1899                                        >
1900                                            <span class="text-base text-gray-700">
1901                                                Avoxa Content Service                                            </span>
1902                                        </a>
1903                                    </li>
1904                                                            </ul>
1905                                            </li>
1906                                    <li class="relative mr-2 level-0"
1907                        @mouseenter="hoverPanelActiveId = 'category-node-6'"
1908                        @mouseleave="hoverPanelActiveId = 0"
1909                        @keyup.escape="hoverPanelActiveId = 0"
1910                    >
1911                        <span class="flex items-center gap-1 p-3 text-md bg-opacity-95">
1912                            <a class="w-full py-3 text-base text-gray-700 hover:underline level-0"
1913                               href="https://www.govi.de/sachbuch-literatur"
1914                               title="Sachbuch&#x20;&amp;&#x20;Literatur"
1915                               @focus="hoverPanelActiveId = 0"
1916                            >
1917                                Sachbuch &amp; Literatur                            </a>
1918                                                            <button
1919                                    type="button"
1920                                    data-sr-button-id="category-node-6"
1921                                    :aria-expanded="hoverPanelActiveId === 'category-node-6' ? 'true' : 'false'"
1922                                    @click="openMenuOnClick('category-node-6')"
1923                                >
1924                                    <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="flex self-center h-5 w-5" width="25" height="25" aria-hidden="true">
1925  <path fill-rule="evenodd" d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z" clip-rule="evenodd"/>
1926</svg>
1927                                    <span class="sr-only">
1928                                        Show submenu for Sachbuch &amp; Literatur category                                    </span>
1929                                </button>
1930                                                    </span>
1931                                                    <ul
1932                                class="absolute z-10 hidden px-6 py-4 -ml-6 shadow-lg bg-container-lighter/95"
1933                                :class="{
1934                                    'hidden' : hoverPanelActiveId !== 'category-node-6',
1935                                    'block' : hoverPanelActiveId === 'category-node-6'
1936                                }"
1937                            >
1938                                                                    <li>
1939                                        <a href="https://www.govi.de/sachbuch-literatur/gesundheitsratgeber"
1940                                           title="Gesundheitsratgeber"
1941                                           class="block w-full px-3 py-1 my-1 whitespace-nowrap first:mt-0 hover:underline"
1942                                           @keyup.escape="$nextTick(() => document.querySelector('[data-sr-button-id=category\u002Dnode\u002D6]').focus())"
1943                                        >
1944                                            <span class="text-base text-gray-700">
1945                                                Gesundheitsratgeber                                            </span>
1946                                        </a>
1947                                    </li>
1948                                                                    <li>
1949                                        <a href="https://www.govi.de/sachbuch-literatur/gesunde-ernaehrung"
1950                                           title="Gesunde&#x20;Ern&#xE4;hrung"
1951                                           class="block w-full px-3 py-1 my-1 whitespace-nowrap first:mt-0 hover:underline"
1952                                           @keyup.escape="$nextTick(() => document.querySelector('[data-sr-button-id=category\u002Dnode\u002D6]').focus())"
1953                                        >
1954                                            <span class="text-base text-gray-700">
1955                                                Gesunde Ernährung                                            </span>
1956                                        </a>
1957                                    </li>
1958                                                                    <li>
1959                                        <a href="https://www.govi.de/sachbuch-literatur/heilpflanzen-garten"
1960                                           title="Heilpflanzen&#x20;&amp;&#x20;Garten"
1961                                           class="block w-full px-3 py-1 my-1 whitespace-nowrap first:mt-0 hover:underline"
1962                                           @keyup.escape="$nextTick(() => document.querySelector('[data-sr-button-id=category\u002Dnode\u002D6]').focus())"
1963                                        >
1964                                            <span class="text-base text-gray-700">
1965                                                Heilpflanzen &amp; Garten                                            </span>
1966                                        </a>
1967                                    </li>
1968                                                                    <li>
1969                                        <a href="https://www.govi.de/sachbuch-literatur/sachbuecher"
1970                                           title="Sachb&#xFC;cher"
1971                                           class="block w-full px-3 py-1 my-1 whitespace-nowrap first:mt-0 hover:underline"
1972                                           @keyup.escape="$nextTick(() => document.querySelector('[data-sr-button-id=category\u002Dnode\u002D6]').focus())"
1973                                        >
1974                                            <span class="text-base text-gray-700">
1975                                                Sachbücher                                            </span>
1976                                        </a>
1977                                    </li>
1978                                                                    <li>
1979                                        <a href="https://www.govi.de/sachbuch-literatur/kinderbuecher"
1980                                           title="Kinderb&#xFC;cher"
1981                                           class="block w-full px-3 py-1 my-1 whitespace-nowrap first:mt-0 hover:underline"
1982                                           @keyup.escape="$nextTick(() => document.querySelector('[data-sr-button-id=category\u002Dnode\u002D6]').focus())"
1983                                        >
1984                                            <span class="text-base text-gray-700">
1985                                                Kinderbücher                                            </span>
1986                                        </a>
1987                                    </li>
1988                                                                    <li>
1989                                        <a href="https://www.govi.de/sachbuch-literatur/lesevergnuegen"
1990                                           title="Lesevergn&#xFC;gen"
1991                                           class="block w-full px-3 py-1 my-1 whitespace-nowrap first:mt-0 hover:underline"
1992                                           @keyup.escape="$nextTick(() => document.querySelector('[data-sr-button-id=category\u002Dnode\u002D6]').focus())"
1993                                        >
1994                                            <span class="text-base text-gray-700">
1995                                                Lesevergnügen                                            </span>
1996                                        </a>
1997                                    </li>
1998                                                            </ul>
1999                                            </li>
2000                            </ul>
2001        </nav>
2002    </div>
2003</div>
2004<script>
2005    'use strict';
2006
2007    const initMenuDesktop_6ac21e8079072 = () => {
2008        return {
2009            hoverPanelActiveId: null,
2010            setActiveMenu(menuNode) {
2011                Array.from(menuNode.querySelectorAll('a')).filter(link => {
2012                    return link.href === window.location.href.split('?')[0];
2013                }).map(item => {
2014                    item.classList.add('underline');
2015                    item.closest('div.level-0') &&
2016                    item.closest('div.level-0').querySelector('a.level-0').classList.add('underline');
2017                });
2018            },
2019            openMenuOnClick(menuNode) {
2020                if (menuNode === this.hoverPanelActiveId) {
2021                    this.hoverPanelActiveId = 0;
2022                } else {
2023                    this.hoverPanelActiveId = menuNode
2024                }
2025            }
2026        }
2027    }
2028</script>
2028
2029
2030        <div class="flex items-center order-4 sm:order-3 lg:order-3">
2031            <!--Search Icon-->
2032            <button
2033                id="menu-search-icon"
2034                class="inline-block ml-1 no-underline sm:ml-3 hover:text-black"
2035                @click.prevent="
2036                    searchOpen = !searchOpen;
2037                    $dispatch('search-open');
2038                "
2039                aria-label="Suchformular&#x20;umschalten"
2040                aria-haspopup="true"
2041                :aria-expanded="searchOpen"
2042                x-ref="searchButton"
2043                title="Suche"
2044            >
2045                <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-8 h-8 md:h-6 md:w-6 hover:text-black" width="25" height="25" aria-hidden="true">
2046  <path stroke-linecap="round" stroke-linejoin="round" d="M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"/>
2047</svg>
2048            </button>
2049
2050            <!--Customer Icon & Dropdown-->
2051            <!-- BLOCK header.customer -->
2052<div
2053    class="relative inline-block ml-1 sm:ml-3"
2054    x-data="{ open: false }"
2055    @keyup.escape="open = false"
2056>
2057    <button
2058        type="button"
2059        id="customer-menu"
2060        class="block hover:text-black"
2061        @click="open = !open"
2062        @click.outside="open = false"
2063        :aria-expanded="open ? 'true' : 'false'"
2064        aria-label="Mein&#x20;Konto"
2065        title="Mein&#x20;Konto"
2066        aria-haspopup="true"
2067    >
2068        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="md:h-6 md:w-6" width="32" height="32" aria-hidden="true">
2069  <path stroke-linecap="round" stroke-linejoin="round" d="M16 7a4 4 0 11-8 0 4 4 0 018 0zM12 14a7 7 0 00-7 7h14a7 7 0 00-7-7z"/>
2070</svg>
2071    </button>
2072    <nav
2073        class="
2074            absolute right-0 z-20 w-40 py-2 mt-2 -mr-4 px-1 overflow-auto origin-top-right rounded-sm
2075            shadow-lg sm:w-48 lg:mt-3 bg-container-lighter
2076        "
2077        x-cloak
2078        x-show="open"
2079        aria-labelledby="customer-menu"
2080        @click.outside="open = false"
2081    >
2082                    
2083<a id="customer.header.sign.in.link"
2084   class="block px-4 py-2 lg:px-5 lg:py-2 hover:bg-gray-100"
2085   onclick="hyva.setCookie && hyva.setCookie(
2086       'login_redirect',
2087       window.location.href,
2088       1
2089   )"
2090   href="https://www.govi.de/customer/account/index/"
2091   title="Anmelden"
2092>
2093    Anmelden</a>
2094
2095    <a id="customer.header.register.link"
2096       class="block px-4 py-2 lg:px-5 lg:py-2 hover:bg-gray-100"
2097       href="https://www.govi.de/customer/account/create/"
2098       title="Ein&#x20;Konto&#x20;erstellen"
2099    >
2100        Ein Konto erstellen    </a>
2101            </nav>
2102</div>
2103<!-- /BLOCK header.customer -->
2104            <!--Cart Icon-->
2105                            <button
2106                            id="menu-cart-icon"
2107                class="relative inline-block ml-1 no-underline sm:ml-3 hover:text-black"
2108                x-ref="cartButton"
2109                :aria-disabled="isCartEmpty()"
2110                title="Warenkorb"
2111                                    @click.prevent.stop="() => {
2112                        $dispatch('toggle-cart', { isOpen: true })
2113                    }"
2114                    @toggle-cart.window="toggleCart($event)"
2115                    :aria-expanded="isCartOpen"
2116                    aria-haspopup="dialog"
2117                            >
2118                <span
2119                    class="sr-only label"
2120                    x-text="`
2121                        Toggle minicart,
2122                        ${isCartEmpty() ?
2123                        'Sie haben keine Artikel in Ihrem Warenkorb.' :
2124                        hyva.str(
2125                            'You have %1 product%2 in your cart.',
2126                            cart.summary_count,
2127                            cart.summary_count === 1 ? '' : 's'
2128                        )}`
2129                    "
2130                >
2131                </span>
2132
2133                <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-8 h-8 md:h-6 md:w-6 hover:text-black" width="25" height="25" role="img">
2134  <path stroke-linecap="round" stroke-linejoin="round" d="M3 3h2l.4 2M7 13h10l4-8H5.4M7 13L5.4 5M7 13l-2.293 2.293c-.63.63-.184 1.707.707 1.707H17m0 0a2 2 0 100 4 2 2 0 000-4zm-8 2a2 2 0 11-4 0 2 2 
21340 014 0z"/>
2135<title>Warenkorb</title></svg>
2136
2137                <span
2138                    x-text="cart.summary_count"
2139                    x-show="!isCartEmpty()"
2140                    x-cloak
2141                    class="
2142                        absolute top-0 right-0 h-5 px-2 py-1 -mt-5 -mr-4 text-xs font-semibold
2143                        leading-none text-center text-white uppercase transform -translate-x-1
2144                        translate-y-1/2 rounded-full bg-primary
2145                    "
2146                    aria-hidden="true"
2147                ></span>
2148                            </button>
2149            
2150        </div>
2151    </div>
2152    <!--Search-->
2153    <div class="relative z-10 w-full border-t shadow-sm bg-container-lighter border-container-lighter"
2154         id="search-content"
2155         x-cloak x-show="searchOpen"
2156         @click.outside="searchOpen = true"
2157         @keydown.escape="
2158            searchOpen = true;
2159            $refs.searchButton.focus();
2160         "
2161    >
2162        
2162<script>
2163    'use strict';
2164
2165    function initMiniSearch() {
2166        return {
2167            minSearchLength: 3,
2168                        suggestions: [],
2169            suggest() {
2170                const search = this.$refs.searchInput;
2171                if (search.value.length >= this.minSearchLength) {
2172                    search.setCustomValidity('');
2173                    search.reportValidity();
2174                    this.fetchSuggestions(search.value);
2175                } else {
2176                    this.suggestions = [];
2177                }
2178            },
2179            fetchSuggestions(term) {
2180                fetch(
2181                    window.BASE_URL + 'search/ajax/suggest?' + new URLSearchParams({q: term}),
2182                    {
2183                        headers: {
2184                            'X-Requested-With': 'XMLHttpRequest'
2185                        }
2186                    }
2187                )
2188                .then(response => response.json())
2189                .then(result => this.suggestions = result);
2190            },
2191                        search(term) {
2192                const search = this.$refs.searchInput;
2193                term = term || search.value;
2194                if (term.length < this.minSearchLength) {
2195                    search.setCustomValidity('Die\u0020minimale\u0020L\u00E4nge\u0020der\u0020Suchbegriffe\u0020ist\u00203\u0020Zeichen');
2196                    search.reportValidity();
2197                } else {
2198                    search.setCustomValidity('');
2199                    search.value = term;
2200                    this.$refs.form.submit();
2201                }
2202            },
2203            focusElement(element) {
2204                if (element && element.nodeName === "DIV") {
2205                    element.focus();
2206                    return true;
2207                } else {
2208                    return false;
2209                }
2210            }
2211        }
2212    }
2213</script>
2213
2214<div class="container py-2 mx-auto text-black" x-data="initMiniSearch()">
2215    <search title="Shop" role="search">
2216        <form
2217            id="search_mini_form"
2218            class="form minisearch flex"
2219            action="https://www.govi.de/catalogsearch/result/"
2220            method="get"
2221            @submit.prevent="search()"
2222            x-ref="form"
2223        >
2224            <label class="sr-only" for="search">
2225                Suche            </label>
2226            <input
2227                id="search"
2228                x-ref="searchInput"
2229                type="search"
2230                autocomplete="off"
2231                name="q"
2232                value=""
2233                placeholder="Gesamten&#x20;Shop&#x20;hier&#x20;durchsuchen..."
2234                maxlength="128"
2235                class="w-full text-lg lg:text-xl text-grey-800 focus:border-transparent focus:outline-none rounded-l"
2236                @search-open.window.debounce.10="$el.focus(); $el.select()"
2237                                    @focus.once="suggest"
2238                    @input.debounce.300="suggest"
2239                    @keydown.arrow-down.prevent="focusElement($root.querySelector('[tabindex]'))"
2240                            >
2241            <button
2242                type="submit"
2243                class="action search btn btn-primary rounded-l-none rounded-r shrink-0 p-3 shadow-none"
2244                title="Suche"
2245                aria-label="Suche"
2246            >
2247                <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" width="20" height="20" aria-hidden="true">
2248  <path stroke-linecap="round" stroke-linejoin="round" d="M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"/>
2249</svg>
2250            </button>
2251        </form>
2252    </search>
2253            <template x-if="suggestions.length > 0">
2254            <nav
2255                aria-label="Search&#x20;Suggestions"
2256                class="flex flex-col mt-1 text-grey-800 gap-1"
2257            >
2258                <template x-for="suggestion in suggestions">
2259                    <button
2260                        type="button"
2261                        class="flex justify-between p-2 bg-container-lighter even:bg-container border border-container hover:bg-container-darker"
2262                        @click="search(suggestion.title)"
2263                        @keydown.enter="search(suggestion.title)"
2264                        @keydown.arrow-up.prevent="focusElement($event.target.previousElementSibling) || $refs.searchInput.focus()"
2265                        @keydown.arrow-down.prevent="focusElement($event.target.nextElementSibling)"
2266                    >
2267                        <span x-text="suggestion.title"></span>
2268                        <span x-text="suggestion.num_results"></span>
2269                    </button>
2270                </template>
2271            </nav>
2272        </template>
2273    </div>
2274    </div>
2275
2276    <!--Cart Drawer-->
2277    
2277<script>
2278    function initCartDrawer() {
2279        return {
2280            open: false,
2281            isLoading: false,
2282            cart: {},
2283            maxItemsToDisplay: 10,
2284            itemsCount: 0,
2285            totalCartAmount: 0,
2286            getData(data) {
2287                if (data.cart) {
2288                    this.cart = data.cart;
2289                    this.itemsCount = data.cart.items && data.cart.items.length || 0;
2290                    this.totalCartAmount = this.cart.summary_count;
2291                    this.setCartItems();
2292                }
2293                this.isLoading = false;
2294            },
2295            cartItems: [],
2296            getItemCountTitle() {
2297                return hyva.strf('\u00250\u0020of\u0020\u00251\u0020products\u0020in\u0020cart\u0020displayed', this.maxItemsToDisplay, this.totalCartAmount)
2298            },
2299            setCartItems() {
2300                this.cartItems = this.cart.items && this.cart.items.sort((a, b) => b.item_id - a.item_id) || [];
2301
2302                if (this.maxItemsToDisplay > 0) {
2303                    this.cartItems = this.cartItems.slice(0, parseInt(this.maxItemsToDisplay, 10));
2304                }
2305            },
2306            deleteItemFromCart(itemId) {
2307                this.isLoading = true;
2308
2309                const formKey = hyva.getFormKey();
2310                const postUrl = BASE_URL + 'checkout/sidebar/removeItem/';
2311
2312                fetch(postUrl, {
2313                    "headers": {
2314                        "content-type": "application/x-www-form-urlencoded; charset=UTF-8",
2315                    },
2316                    "body": "form_key=" + formKey + "&item_id=" + itemId,
2317                    "method": "POST",
2318                    "mode": "cors",
2319                    "credentials": "include"
2320                }).then(response => {
2321                    if (response.redirected) {
2322                        window.location.href = response.url;
2323                    } else if (response.ok) {
2324                        return response.json();
2325                    } else {
2326                        window.dispatchMessages && window.dispatchMessages([{
2327                            type: 'warning',
2328                            text: 'Could\u0020not\u0020remove\u0020item\u0020from\u0020quote.'
2329                        }]);
2330                        this.isLoading = false;
2331                    }
2332                }).then(result => {
2333                    window.dispatchMessages && window.dispatchMessages([{
2334                        type: result.success ? 'success' : 'error',
2335                        text: result.success
2336                            ? 'Sie\u0020haben\u0020den\u0020Artikel\u0020entfernt.'
2337                            : result.error_message
2338                    }], result.success ? 5000 : 0)
2339                    window.dispatchEvent(new CustomEvent('reload-customer-section-data'));
2340                });
2341            },
2342            toggleCartDrawer(event) {
2343                if (event.detail && event.detail.isOpen !== undefined) {
2344                    if (event.detail.isOpen) {
2345                        this.openCartDrawer()
2346                    } else {
2347                        this.open = false
2348                        this.$refs && this.$refs.cartDialogContent && hyva.releaseFocus(this.$refs.cartDialogContent)
2349                    }
2350                } else {
2351                                        this.openCartDrawer()
2352                }
2353            },
2354            openCartDrawer() {
2355                this.open = true;
2356                this.$nextTick(() => {
2357                    this.$refs && this.$refs.cartDialogContent && hyva.trapFocus(this.$refs.cartDialogContent)
2358                })
2359            },
2360            closeCartDrawer() {
2361                this.$dispatch('toggle-cart', { isOpen: false })
2362            }
2363        }
2364    }
2365</script>
2365
2366<section x-cloak
2367         x-show="cart"
2368         id="cart-drawer"
2369         x-data="initCartDrawer()"
2370         @private-content-loaded.window="getData($event.detail.data)"
2371         @toggle-cart.window="toggleCartDrawer($event)"
2372         @keydown.window.escape="closeCartDrawer"
2373>
2374    <div role="dialog"
2375         aria-labelledby="cart-drawer-title"
2376         aria-modal="true"
2377         :aria-hidden="!open"
2378         class="fixed inset-y-0 right-0 z-30 flex max-w-full">
2379        <div class="backdrop"
2380             x-show="open"
2381             x-transition:enter="ease-in-out duration-500"
2382             x-transition:enter-start="opacity-0"
2383             x-transition:enter-end="opacity-100"
2384             x-transition:leave="ease-in-out duration-500"
2385             x-transition:leave-start="opacity-100"
2386             x-transition:leave-end="opacity-0"
2387             role="button"
2388             @click="closeCartDrawer"
2389             aria-label="Close&#x20;minicart"></div>
2390        <div class="relative w-screen max-w-md shadow-2xl"
2391             x-show="open"
2392             x-transition:enter="transform transition ease-in-out duration-500 sm:duration-700"
2393             x-transition:enter-start="translate-x-full"
2394             x-transition:enter-end="translate-x-0"
2395             x-transition:leave="transform transition ease-in-out duration-500 sm:duration-700"
2396             x-transition:leave-start="translate-x-0"
2397             x-transition:leave-end="translate-x-full"
2398             x-ref="cartDialogContent"
2399             role="region"
2400             :tabindex="open ? 0 : -1"
2401             aria-label="Mein&#x20;Warenkorb"
2402
2403        >
2404            <div class="flex flex-col h-full py-6 space-y-6 bg-white shadow-xl">
2405                
2406                <header class="px-4 sm:px-6">
2407                    <h2 id="cart-drawer-title" class="text-lg font-medium leading-7 text-gray-900">
2408                        Mein Warenkorb                        <span class="items-total text-xs"
2409                              x-show="maxItemsToDisplay && maxItemsToDisplay < itemsCount"
2410                              x-text="getItemCountTitle()">
2411                        </span>
2412                    </h2>
2413                </header>
2414
2415                
2416                <template x-if="!itemsCount">
2417                    <div class="relative px-4 py-6 bg-white border-bs sm:px-6 border-container">
2418                        Sie haben keine Artikel in Ihrem Warenkorb.                    </div>
2419                </template>
2420
2421                <template x-if="itemsCount">
2422                    <div class="relative grid gap-6 px-4 py-6 overflow-y-auto overscroll-y-contain bg-white border-b
2423                                sm:gap-8 sm:px-6 border-container"
2424                    >
2425                        <template x-for="item in cartItems">
2426                            <div class="flex items-start p-3 -m-3 space-x-4 transition duration-150
2427                        ease-in-out rounded-lg hover:bg-gray-100">
2428                                <a :href="item.configure_url"
2429                                    class="w-1/4"
2430                                    :aria-label="hyva.strf('Product\u0020\u0022\u00250\u0022', item.product_name)"
2431                                >
2432                                    <img
2433                                        :src="item.product_image.src"
2434                                        :width="item.product_image.width"
2435                                        :height="item.product_image.height"
2436                                        loading="lazy"
2437                                        alt=""
2438                                    />
2439                                </a>
2440                                <div class="w-3/4 space-y-2">
2441                                    <div>
2442                                        <p class="text-xl">
2443                                            <span x-html="item.qty"></span> x <span x-html="item.product_name"></span>
2444                                        </p>
2445                                    </div>
2446                                    <template x-for="option in item.options">
2447                                        <div class="pt-1">
2448                                            <span class="font-semibold" x-text="option.label + ':'"></span>
2449                                            <span x-html="option.value"></span>
2450                                        </div>
2451                                    </template>
2452                                    <p><span x-html="item.product_price"></span></p>
2453                                    <div class="pt-4">
2454                                        <a :href="item.configure_url"
2455                                            x-show="item.product_type !== 'grouped'"
2456                                            class="inline-flex p-2 mr-2 btn btn-primary"
2457                                            :aria-label="hyva.strf('Artikel\u0020\u0022\u00250\u0022\u0020bearbeiten', item.product_name)"
2458                                            :title="hyva.strf('Artikel\u0020\u0022\u00250\u0022\u0020bearbeiten', item.product_name)"
2459                                        >
2460                                            <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" width="20" height="20" aria-hidden="true">
2461  <path stroke-linecap="round" stroke-linejoin="round" d="M15.232 5.232l3.536 3.536m-2.036-5.036a2.5 2.5 0 113.536 3.536L6.5 21.036H3v-3.572L16.732 3.732z"/>
2462</svg>
2463                                        </a>
2464                                        <button type="button"
2465                                                class="inline-flex p-2 btn btn-primary"
2466                                                @click="deleteItemFromCart(item.item_id)"
2467                                                :aria-label="hyva.strf('Artikel\u0020\u0022\u00250\u0022\u0020aus\u0020dem\u0020Warenkorb\u0020entfernen', item.product_name)"
2468                                                :title="hyva.strf('Artikel\u0020\u0022\u00250\u0022\u0020aus\u0020dem\u0020Warenkorb\u0020entfernen', item.product_name)"
2469                                        >
2470                                            <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" width="20" height="20" aria-hidden="true">
2471  <path stroke-linecap="round" stroke-linejoin="round" d="M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16"/>
2472</svg>
2473                                        </button>
2474                                    </div>
2475
2476                                </div>
2477                            </div>
2478                        </template>
2479                    </div>
2480                </template>
2481
2482                <template x-if="itemsCount">
2483                    <div>
2484                        
2485                        <div class="relative grid gap-6 px-4 py-6 bg-white sm:gap-8 sm:px-6">
2486                            <div class="w-full p-3 -m-3 space-x-4 transition duration-150 ease-in-out rounded-lg
2487                                        hover:bg-gray-100"
2488                            >
2489                                <p>Zwischensumme: <span x-html="cart.subtotal"></span></p>
2490                            </div>
2491                            <div class="w-full p-3 -m-3 space-x-4 transition duration-150 ease-in-out rounded-lg
2492                                        hover:bg-gray-100"
2493                            >
2494                                <a @click.prevent.stop="$dispatch('toggle-authentication',
2495                                    {url: 'https://www.govi.de/checkout/'});"
2496                                    href="https://www.govi.de/checkout/"
2497                                    class="inline-flex btn btn-primary"
2498                                >
2499                                    Zur Kasse                                </a>
2500                                <span>oder</span>
2501                                <a href="https://www.govi.de/checkout/cart/"
2502                                    class="underline"
2503                                >
2504                                    Zum Warenkorb                                </a>
2505                            </div>
2506                                                    </div>
2507                    </div>
2508                </template>
2509
2510                            </div>
2511
2512            <button
2513                type="button"
2514                @click="closeCartDrawer"
2515                aria-label="Close&#x20;minicart"
2516                class="absolute top-0 right-0 p-4 mt-2 text-gray-300 transition-colors hover:text-black"
2517            >
2518                <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" width="24" height="24" aria-hidden="true">
2519  <path stroke-linecap="round" stroke-linejoin="round" d="M6 18L18 6M6 6l12 12"/>
2520</svg>
2521            </button>
2522        </div>
2523        <div
2524    class="z-50 fixed inset-0 grid place-items-center bg-white/70 text-slate-800"
2525    x-cloak
2526    x-show="isLoading"
2527    x-transition.opacity.duration.200ms
2528>
2529    <div class="flex gap-10 items-center p-4">
2530        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 57 57" width="57" height="57" fill="none" stroke="currentColor" stroke-width="2" aria-hidden="true">
2531    <style>
2532        @keyframes spinner-ball-triangle1 {
2533            0% { transform: translate(0%, 0%); }
2534            33% { transform: translate(38%, -79%); }
2535            66% { transform: translate(77%, 0%); }
2536            100% { transform: translate(0%, 0%); }
2537        }
2538
2539        @keyframes spinner-ball-triangle2 {
2540            0% { transform: translate(0%, 0%); }
2541            33% { transform: translate(38%, 79%); }
2542            66% { transform: translate(-38%, 79%); }
2543            100% { transform: translate(0%, 0%); }
2544        }
2545
2546        @keyframes spinner-ball-triangle3 {
2547            0% { transform: translate(0%, 0%); }
2548            33% { transform: translate(-77%, 0%); }
2549            66% { transform: translate(-38%, -79%); }
2550            100% { transform: translate(0%, 0%); }
2551        }
2552    </style>
2553    <circle cx="5" cy="50" r="5" style="animation: spinner-ball-triangle1 2.2s linear infinite"/>
2554    <circle cx="27" cy="5" r="5" style="animation: spinner-ball-triangle2 2.2s linear infinite"/>
2555    <circle cx="49" cy="50" r="5" style="animation: spinner-ball-triangle3 2.2s linear infinite"/>
2556</svg>
2557        <span class="text-xl select-none">
2558            Wird geladen …        </span>
2559    </div>
2560</div>
2561    </div>
2562
2563</section>
2564
2565    <!--Authentication Pop-Up-->
2566    <!-- BLOCK authentication-popup -->
2566<script>
2567    function initAuthentication() {
2568        return {
2569            open: false,
2570            close() {
2571                this.open = false;
2572            },
2573            forceAuthentication: false,
2574            checkoutUrl: 'https://www.govi.de/checkout/index/',
2575            errors: 0,
2576            hasCaptchaToken: 0,
2577            displayErrorMessage: false,
2578            errorMessages: [],
2579            setErrorMessages(message) {
2580                this.errorMessages = [message];
2581                this.displayErrorMessage = true;
2582            },
2583            submitForm() {
2584                // Do not rename $form, the variable is expected to be declared in the recaptcha output
2585                const $form = document.querySelector('#login-form');
2586                
2587                if (this.errors === 0) {
2588                    this.dispatchLoginRequest($form);
2589                }
2590            },
2591            onPrivateContentLoaded() {
2592                const data = this.$event.detail.data;
2593                const isLoggedIn = data.customer && data.customer.firstname;
2594                if (data.cart && !isLoggedIn) {
2595                    this.forceAuthentication = !data.cart.isGuestCheckoutAllowed;
2596                }
2597            },
2598            redirectIfAuthenticated() {
2599                const event = this.$event;
2600                this.open = this.forceAuthentication;
2601
2602                if (event.detail && event.detail.url) {
2603                    this.checkoutUrl = event.detail.url;
2604                }
2605                if (!this.forceAuthentication) {
2606                    window.location.href = this.checkoutUrl;
2607                }
2608            },
2609            resetErrors() {
2610                this.errors = 0;
2611            },
2612            dispatchLoginRequest(form) {
2613                this.isLoading = true;
2614                const username = this.$refs['customer-email'].value;
2615                const password = this.$refs['customer-password'].value;
2616                const formKey = hyva.getFormKey();
2617                const bodyFields = {
2618                    'username': username,
2619                    'password': password,
2620                    'formKey': formKey
2621                };
2622                                const fieldName = 'g\u002Drecaptcha\u002Dresponse';
2623                const recaptchaField = fieldName && form[fieldName];
2624                if (recaptchaField) {
2625                    bodyFields[fieldName] = recaptchaField.value;
2626                }
2627                fetch('https://www.govi.de/customer/ajax/login/', {
2628                        method: 'POST',
2629                        headers: {
2630                            'Content-Type': 'application/json',
2631                            'X-Requested-With': 'XMLHttpRequest'
2632                        },
2633                        body: JSON.stringify(bodyFields)
2634                    }
2635                ).then(response => {
2636                        return response.json()
2637                    }
2638                ).then(data => {
2639                    this.isLoading = false;
2640                    if (data.errors) {
2641                        this.setErrorMessages(data.message);
2642                        this.errors = 1;
2643                        this.hasCaptchaToken = 0;
2644                    } else {
2645                        window.location.href = this.checkoutUrl;
2646                    }
2647                });
2648            }
2649        }
2650    }
2651
2652    window.addEventListener('alpine:init', () => Alpine.data('initAuthentication', initAuthentication), {once: true})
2653</script>
2653
2654<section id="authentication-popup"
2655         x-data="initAuthentication"
2656         @private-content-loaded.window="onPrivateContentLoaded"
2657         @toggle-authentication.window="redirectIfAuthenticated"
2658         @keydown.window.escape="close"
2659>
2660    <div
2661        class="backdrop"
2662        aria-hidden="true"
2663        x-cloak
2664        x-show="open"
2665        x-transition:enter="ease-in-out duration-500"
2666        x-transition:enter-start="opacity-0"
2667        x-transition:enter-end="opacity-100"
2668        x-transition:leave="ease-in-out duration-500"
2669        x-transition:leave-start="opacity-100"
2670        x-transition:leave-end="opacity-0"
2671        @click="close"
2672    ></div>
2673    <div role="dialog"
2674         aria-modal="true"
2675         @click.outside="close"
2676         class="inset-y-0 right-0 z-30 flex max-w-full fixed"
2677         x-cloak
2678         x-show="open"
2679    >
2680        <div class="relative w-screen max-w-md pt-16 bg-container-lighter"
2681             x-show="open"
2682             x-cloak
2683             x-transition:enter="transform transition ease-in-out duration-500 sm:duration-700"
2684             x-transition:enter-start="translate-x-full"
2685             x-transition:enter-end="translate-x-0"
2686             x-transition:leave="transform transition ease-in-out duration-500 sm:duration-700"
2687             x-transition:leave-start="translate-x-0"
2688             x-transition:leave-end="translate-x-full"
2689        >
2690            <div
2691                x-show="open"
2692                x-cloak
2693                x-transition:enter="ease-in-out duration-500"
2694                x-transition:enter-start="opacity-0"
2695                x-transition:enter-end="opacity-100"
2696                x-transition:leave="ease-in-out duration-500"
2697                x-transition:leave-start="opacity-100"
2698                x-transition:leave-end="opacity-0" class="absolute top-0 right-2 flex p-2 mt-2">
2699                <button
2700                    type="button"
2701                    @click="close"
2702                    aria-label="Panel&#x20;schlie&#xDF;en"
2703                    class="p-2 text-gray-300 transition duration-150 ease-in-out hover:text-black"
2704                >
2705                    <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" width="24" height="24" aria-hidden="true">
2706  <path stroke-linecap="round" stroke-linejoin="round" d="M6 18L18 6M6 6l12 12"/>
2707</svg>
2708                </button>
2709            </div>
2710            <template x-if="open">
2711                <div class="flex flex-col h-full py-6 space-y-6 bg-white shadow-xl overflow-y-auto">
2712                    <div class="mx-4">
2713                        <div class="message error mb-0" x-show="errors" x-cloak>
2714                            <template x-for="(message, index) in errorMessages" :key="index">
2715                                <div>
2716                                    <template x-if="message">
2717                                        <span x-html="message"></span>
2718                                    </template>
2719                                </div>
2720                            </template>
2721                        </div>
2722                    </div>
2723                    <div class="block-customer-login bg-container border border-container mx-4 p-4 shadow-sm">
2724                        <p id="authenticate-customer-login" class="text-lg leading-7 text-gray-900">
2725                            <strong class="font-medium">Mit Ihrem Konto bestellen</strong>
2726                        </p>
2727
2728                        <form class="form form-login"
2729                              method="post"
2730                              @submit.prevent="submitForm"
2731                              id="login-form"
2732                        >
2733                                                        <div class="fieldset login">
2734                                <div class="field email required">
2735                                    <label class="label" for="form-login-username" form="login-form" >
2736                                        <span>E-Mail-Adresse</span>
2737                                    </label>
2738                                    <div class="control">
2739                                        <input name="username"
2740                                               id="form-login-username"
2741                                               x-ref="customer-email"
2742                                               @change="resetErrors"
2743                                               type="email"
2744                                               required
2745                                               autocomplete="off"
2746                                               class="form-input"
2747                                        >
2748                                    </div>
2749                                </div>
2750                                <div class="field password required">
2751                                    <label for="form-login-password" class="label" form="login-form">
2752                                        <span>Passwort</span>
2753                                    </label>
2754                                    <div class="control">
2755                                        <input name="password"
2756                                               id="form-login-password"
2757                                               type="password"
2758                                               class="form-input"
2759                                               required
2760                                               x-ref="customer-password"
2761                                               autocomplete="off"
2762                                               @change="resetErrors"
2763                                        >
2764                                    </div>
2765                                </div>
2766
2767                                <input name="context" type="hidden" value="checkout">
2768                                <div class="actions-toolbar pt-6 pb-2">
2769                                    <button type="submit"                                            class="inline-flex btn btn-primary disabled:opacity-75"
2770                                    >
2771                                        Anmelden                                    </button>
2772                                    <a href="https://www.govi.de/customer/account/forgotpassword/"
2773                                    >
2774                                        Passwort vergessen?                                    </a>
2775                                </div>
2776
2777                            </div>
2778                        </form>
2779                    </div>
2780                    <div class="mx-4">
2781                                            </div>
2782                    <div class="block-new-customer bg-container border border-container mx-4 p-4 shadow-sm">
2783                        <p id="authenticate-new-customer" class="text-lg mb-2 leading-7 text-gray-900">
2784                            <strong class="font-medium">Als neuer Kunde bestellen</strong>
2785                        </p>
2786
2787                        <div class="block-content">
2788                            <p class="mb-1">
2789                                Das Erstellen eines Kontos hat viele Vorteile:                            </p>
2790                            <ul class="list-disc pl-5">
2791                                <li> Bestell- und Versandstatus ansehen</li>
2792                                <li> Bestellverlauf verfolgen</li>
2793                                <li> Schnellerer Bestellvorgang</li>
2794                            </ul>
2795                            <div class="actions-toolbar mt-6 mb-2">
2796                                <a href="https://www.govi.de/customer/account/create/"
2797                                   class="inline-flex btn btn-primary">
2798                                    Ein Konto erstellen                                </a>
2799                            </div>
2800                        </div>
2801                    </div>
2802                </div>
2803            </template>
2804        </div>
2805    </div>
2806</section>
2807<!-- /BLOCK authentication-popup --></div>
2808
2809</header><div class="top-container">
2810<nav class="breadcrumbs bg-container-lighter text-slate-900 shadow-sm" aria-label="Breadcrumb">
2811    <div class="container">
2812        <ol class="items list-reset py-4 rounded flex flex-wrap text-grey text-sm">
2813                            <li class="item flex home">
2814                                                    <a
2815                        href="https://www.govi.de/"
2816                                                    aria-label="Zur&#x20;Startseite"
2817                                            >Startseite</a>
2818                                </li>
2819                                            <li class="item flex category14">
2820                                    <span aria-hidden="true" class="separator text-slate-600 px-2">/</span>
2821                                                    <a
2822                        href="https://www.govi.de/apotheke"
2823                                            >Apotheke</a>
2824                                </li>
2825                                            <li class="item flex category19">
2826                                    <span aria-hidden="true" class="separator text-slate-600 px-2">/</span>
2827                                                    <a
2828                        href="https://www.govi.de/apotheke/pharmazeutische-beratung"
2829                        class="text-slate-600"
2830                        aria-current="page"
2831                    >Pharmazeutische Beratung</a>
2832                                </li>
2833                                    </ol>
2834    </div>
2835</nav>
2836
2837    
2837<script type="application/ld+json">
2838        { "@context": "https://schema.org", "@type": "BreadcrumbList", "itemListElement": [{"@type":"ListItem","position":1,"item":{"@id":"https:\/\/www.govi.de\/","name":"Startseite"}},{"@type":"ListItem","position":2,"item":{"@id":"https:\/\/www.govi.de\/apotheke","name":"Apotheke"}},{"@type":"ListItem","position":3,"item":{"@id":"https:\/\/www.govi.de\/apotheke\/pharmazeutische-beratung","name":"Pharmazeutische Beratung"}}] }
2839    </script>
2839
2840</div><div class="page-main"><div class="page messages">
2840<script>
2841        function initMessages() {
2842        "use strict";
2843        return {
2844            messages: window.mageMessages || [],
2845            isEmpty() {
2846                return this.messages.reduce(
2847                    function (isEmpty, message) {
2848                        return isEmpty && message === undefined
2849                    }, true
2850                )
2851            },
2852            hasMessages() {
2853                return !this.isEmpty();
2854            },
2855            hasMessage() {
2856                return !!this.message;
2857            },
2858            removeMessage() {
2859                this.messages[this.index] = undefined;
2860            },
2861            addMessages(messages, hideAfter) {
2862                messages.map((message) => {
2863                    this.messages = this.messages.concat(message);
2864                    if (hideAfter === undefined && message.type === 'success' && window.defaultSuccessMessageTimeout) {
2865                        hideAfter = window.defaultSuccessMessageTimeout;
2866                    }
2867                    if (hideAfter) {
2868                        this.setHideTimeOut(this.messages.length -1, hideAfter);
2869                    }
2870                });
2871            },
2872            setHideTimeOut(messageIndex, hideAfter) {
2873                setTimeout((messageIndex) => {
2874                    this.messages[messageIndex] = undefined;
2875                }, hideAfter, messageIndex);
2876            },
2877            eventListeners: {
2878                ['@messages-loaded.window'](event) {
2879                    this.addMessages(event.detail.messages, event.detail.hideAfter)
2880                },
2881                ['@private-content-loaded.window'](event) {
2882                    const data = event.detail.data;
2883                    if (
2884                        data.messages &&
2885                        data.messages.messages &&
2886                        data.messages.messages.length
2887                    ) {
2888                        this.addMessages(data.messages.messages);
2889                    }
2890                },
2891                ['@clear-messages.window']() {
2892                    this.messages = [];
2893                }
2894            },
2895            getMessageUiId() {
2896                return 'message-' + this.message.type;
2897            }
2898        }
2899    }
2900
2901    window.addEventListener('alpine:init', () => Alpine.data('initMessages', initMessages), {once: true})
2902</script>
2902
2903<section id="messages"
2904         x-data="initMessages"
2905         x-bind="eventListeners"
2906         role="alert"
2907>
2908    <template x-if="hasMessages">
2909        <div class="w-full">
2910            <div class="messages container mx-auto py-3">
2911                <template x-for="(message, index) in messages" :key="index">
2912                    <div>
2913                        <template x-if="hasMessage">
2914                            <div class="message"
2915                                 :class="message.type"
2916                                 :ui-id="getMessageUiId"
2917                            >
2918                                <span x-html="message.text"></span>
2919                                <button
2920                                    type="button"
2921                                    class="text-gray-600 hover:text-black"
2922                                    aria-label="Close message"
2923                                    @click.prevent="removeMessage"
2924                                >
2925                                    <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="stroke-current" width="18" height="18" aria-hidden="true">
2926  <path stroke-linecap="round" stroke-linejoin="round" d="M6 18L18 6M6 6l12 12"/>
2927</svg>
2928                                </button>
2929                            </div>
2930                        </template>
2931                    </div>
2932                </template>
2933            </div>
2934        </div>
2935    </template>
2936</section>
2937</div><div class="container&#x20;flex&#x20;flex-col&#x20;md&#x3A;flex-row&#x20;flex-wrap&#x20;my-6&#x20;font-bold&#x20;lg&#x3A;mt-8&#x20;justify-start&#x20;text-4xl&#x20;mb-4">
2938    <h1 class="text-gray-900 page-title title-font"
2939        >
2940        <span class="base" data-ui-id="page-title-wrapper" >Pharmazeutische Beratung</span>    </h1>
2941    </div>
2942</div><main id="maincontent" class="page-main"><div id="contentarea" tabindex="-1"></div>
2943<div class="columns"><aside class="sidebar sidebar-main">    <div
2944        x-data="initLayeredNavigation()"
2945        x-init="checkIsMobileResolution()"
2946        @resize.window.debounce="checkIsMobileResolution()"
2947        @visibilitychange.window.debounce="checkIsMobileResolution()"
2948        class="block border border-container bg-container-darker p-4 md:border-0 md:bg-transparent md:py-0 md:px-0 my-6"
2949        role="region"
2950        aria-label="Product&#x20;filters"
2951    >
2952        <h2
2953            id="filters-heading"
2954            class="block-title"
2955        >
2956            <button
2957                type="button"
2958                @click="blockOpen = !blockOpen"
2959                class="block-title flex items-center justify-between w-full"
2960                aria-controls="filters-content"
2961                :aria-expanded="blockOpen"
2962                :aria-disabled="!isMobile"
2963                :disabled="!isMobile ? '' : null"
2964            >
2965                <span class="text-primary text-md md:text-3xl font-medium uppercase">
2966                    filter                </span>
2967                <span
2968                    class="py-1 px-1 bg-container-lighter rounded border border-container-darker hidden"
2969                    :class="{ 'block' : isMobile, 'hidden': !isMobile }"
2970                >
2971                    <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="transition-transform transform duration-300 ease-in-out" width="24" height="24" :class="{ 'rotate-180': blockOpen }" aria-hidden="true" focusable="false">
2972  <path stroke-linecap="round" stroke-linejoin="round" d="M19 9l-7 7-7-7"/>
2973</svg>
2974                </span>
2975            </button>
2976        </h2>
2977        <div
2978            id="filters-content"
2979            class="block-content filter-content pt-4"
2980            x-show="isMobile && blockOpen || !isMobile"
2981        >
2982                        <a
2983                href="#product-list"
2984                class="sr-only focus:not-sr-only bg-blue-600 text-white px-12 py-4 text-center block rounded-sm"
2985            >
2986                Zur Produktliste springen            </a>
2987                                                                            <div
2988                        x-data="{
2989                            open: false,
2990                            id: $id('filter-option')
2991                        }"
2992                        class="filter-option card my-4"
2993                    >
2994                        <h3 :id="`${id}-title`">
2995                            <button
2996                                type="button"
2997                                @click="open = !open"
2998                                class="filter-options-title flex justify-between items-center cursor-pointer hover:text-secondary-darker border-container w-full"
2999                                :class="{ 'border-b pb-4': open }"
3000                                :aria-controls="`${id}-content`"
3001                                :aria-expanded="open"
3002                            >
3003                                <span class="title text-md md:text-lg font-semibold">
3004                                    Govi Titel                                    <span class="sr-only"> filter</span>
3005                                </span>
3006                                    <span class="py-1 px-1 rounded border border-container">
3007                                    <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="transition-transform transform duration-300 ease-in-out" width="24" height="24" :class="{ 'rotate-180': open }" aria-hidden="true" focusable="false">
3008  <path stroke-linecap="round" stroke-linejoin="round" d="M19 9l-7 7-7-7"/>
3009</svg>
3010                                </span>
3011                            </button>
3012                        </h3>
3013                        <template x-if="open">
3014                            <div
3015                                :id="`${id}-content`"
3016                                class="filter-options-content pt-3"
3017                            >
3018                                                                    <ol class="items" aria-label="Govi&#x20;Titel&#x20;Filter&#x20;Optionen">
3019            <li>
3020                            <a
3021                    href="https://www.govi.de/apotheke/pharmazeutische-beratung?is_govi_title=1"
3022                    class="flex justify-between py-1 hover:text-black"
3023                                        aria-label="Ja&#x20;Filter,&#x20;43&#x20;verf&#xFC;gbare&#x20;Produkte"
3024                                    >
3025                    <span>Ja</span>
3026                                            <span class="count text-primary">(43)</span>
3027                                    </a>
3028                    </li>
3029            <li>
3030                            <a
3031                    href="https://www.govi.de/apotheke/pharmazeutische-beratung?is_govi_title=0"
3032                    class="flex justify-between py-1 hover:text-black"
3033                                        aria-label="Nein&#x20;Filter,&#x20;67&#x20;verf&#xFC;gbare&#x20;Produkte"
3034                                    >
3035                    <span>Nein</span>
3036                                            <span class="count text-primary">(67)</span>
3037                                    </a>
3038                    </li>
3039    </ol>                                                            </div>
3040                        </template>
3041                    </div>
3042                                                                                            <div
3043                        x-data="{
3044                            open: false,
3045                            id: $id('filter-option')
3046                        }"
3047                        class="filter-option card my-4"
3048                    >
3049                        <h3 :id="`${id}-title`">
3050                            <button
3051                                type="button"
3052                                @click="open = !open"
3053                                class="filter-options-title flex justify-between items-center cursor-pointer hover:text-secondary-darker border-container w-full"
3054                                :class="{ 'border-b pb-4': open }"
3055                                :aria-controls="`${id}-content`"
3056                                :aria-expanded="open"
3057                            >
3058                                <span class="title text-md md:text-lg font-semibold">
3059                                    Autor                                    <span class="sr-only"> filter</span>
3060                                </span>
3061                                    <span class="py-1 px-1 rounded border border-container">
3062                                    <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="transition-transform transform duration-300 ease-in-out" width="24" height="24" :class="{ 'rotate-180': open }" aria-hidden="true" focusable="false">
3063  <path stroke-linecap="round" stroke-linejoin="round" d="M19 9l-7 7-7-7"/>
3064</svg>
3065                                </span>
3066                            </button>
3067                        </h3>
3068                        <template x-if="open">
3069                            <div
3070                                :id="`${id}-content`"
3071                                class="filter-options-content pt-3"
3072                            >
3073                                                                    <div x-data="{
3074            search: '',
3075            open: true,
3076            showAllConstant: false,
3077            canShowShowAll: true,
3078            canShowSearchField: true,
3079            items: [
3080                                                                    {
3081                    label: 'Sch&#xE4;fer,&#x20;Constanze',
3082                    count: '(8)',
3083                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Sch%C3%A4fer%2C+Constanze',
3084                    show: true,
3085                    arialabel: 'Schäfer, Constanze Filter, 8 verfügbare Produkte'
3086                },
3087                                                                        {
3088                    label: 'Smollich,&#x20;Martin',
3089                    count: '(4)',
3090                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Smollich%2C+Martin',
3091                    show: true,
3092                    arialabel: 'Smollich, Martin Filter, 4 verfügbare Produkte'
3093                },
3094                                                                        {
3095                    label: 'Hergenr&#xF6;ther,&#x20;Andrea',
3096                    count: '(3)',
3097                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Hergenr%C3%B6ther%2C+Andrea',
3098                    show: true,
3099                    arialabel: 'Hergenröther, Andrea Filter, 3 verfügbare Produkte'
3100                },
3101                                                                        {
3102                    label: 'Lamping,&#x20;Almut',
3103                    count: '(3)',
3104                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Lamping%2C+Almut',
3105                    show: true,
3106                    arialabel: 'Lamping, Almut Filter, 3 verfügbare Produkte'
3107                },
3108                                                                        {
3109                    label: 'Schlenk,&#x20;Margit',
3110                    count: '(3)',
3111                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Schlenk%2C+Margit',
3112                    show: true,
3113                    arialabel: 'Schlenk, Margit Filter, 3 verfügbare Produkte'
3114                },
3115                                                                        {
3116                    label: 'Strehl,&#x20;Egid',
3117                    count: '(3)',
3118                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Strehl%2C+Egid',
3119                    show: true,
3120                    arialabel: 'Strehl, Egid Filter, 3 verfügbare Produkte'
3121                },
3122                                                                        {
3123                    label: 'Wiesenauer,&#x20;Markus',
3124                    count: '(3)',
3125                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Wiesenauer%2C+Markus',
3126                    show: true,
3127                    arialabel: 'Wiesenauer, Markus Filter, 3 verfügbare Produkte'
3128                },
3129                                                                        {
3130                    label: 'Winterhagen,&#x20;Ines',
3131                    count: '(3)',
3132                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Winterhagen%2
3132C+Ines',
3133                    show: true,
3134                    arialabel: 'Winterhagen, Ines Filter, 3 verfügbare Produkte'
3135                },
3136                                                                        {
3137                    label: 'Dartsch,&#x20;Dorothee',
3138                    count: '(2)',
3139                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Dartsch%2C+Dorothee',
3140                    show: true,
3141                    arialabel: 'Dartsch, Dorothee Filter, 2 verfügbare Produkte'
3142                },
3143                                                                        {
3144                    label: 'Effertz,&#x20;Dennis&#x20;A.',
3145                    count: '(2)',
3146                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Effertz%2C+Dennis+A.',
3147                    show: true,
3148                    arialabel: 'Effertz, Dennis A. Filter, 2 verfügbare Produkte'
3149                },
3150                                                                        {
3151                    label: 'Gathen,&#x20;Hiltrud&#x20;von&#x20;der',
3152                    count: '(2)',
3153                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Gathen%2C+Hiltrud+von+der',
3154                    show: false,
3155                    arialabel: 'Gathen, Hiltrud von der Filter, 2 verfügbare Produkte'
3156                },
3157                                                                        {
3158                    label: 'Hahn,&#x20;Martina',
3159                    count: '(2)',
3160                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Hahn%2C+Martina',
3161                    show: false,
3162                    arialabel: 'Hahn, Martina Filter, 2 verfügbare Produkte'
3163                },
3164                                                                        {
3165                    label: 'Immel-Sehr,&#x20;Annette',
3166                    count: '(2)',
3167                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Immel-Sehr%2C+Annette',
3168                    show: false,
3169                    arialabel: 'Immel-Sehr, Annette Filter, 2 verfügbare Produkte'
3170                },
3171                                                                        {
3172                    label: 'Lebert,&#x20;Cordula',
3173                    count: '(2)',
3174                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Lebert%2C+Cordula',
3175                    show: false,
3176                    arialabel: 'Lebert, Cordula Filter, 2 verfügbare Produkte'
3177                },
3178                                                                        {
3179                    label: 'Riedl,&#x20;Thomas',
3180                    count: '(2)',
3181                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Riedl%2C+Thomas',
3182                    show: false,
3183                    arialabel: 'Riedl, Thomas Filter, 2 verfügbare Produkte'
3184                },
3185                                                                        {
3186                    label: 'Schiffter-Weinle,&#x20;Heiko&#x20;A.',
3187                    count: '(2)',
3188                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Schiffter-Weinle%2C+Heiko+A.',
3189                    show: false,
3190                    arialabel: 'Schiffter-Weinle, Heiko A. Filter, 2 verfügbare Produkte'
3191                },
3192                                                                        {
3193                    label: 'Schilcher,&#x20;Heinz',
3194                    count: '(2)',
3195                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Schilcher%2C+Heinz',
3196                    show: false,
3197                    arialabel: 'Schilcher, Heinz Filter, 2 verfügbare Produkte'
3198                },
3199                                                                        {
3200                    label: 'Schneider,&#x20;Monika',
3201                    count: '(2)',
3202                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Schneider%2C+Monika',
3203                    show: false,
3204                    arialabel: 'Schneider, Monika Filter, 2 verfügbare Produkte'
3205                },
3206                                                                        {
3207                    label: 'Schrulle,&#x20;Hedwig',
3208                    count: '(2)',
3209                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Schrulle%2C+Hedwig',
3210                    show: false,
3211                    arialabel: 'Schrulle, Hedwig Filter, 2 verfügbare Produkte'
3212                },
3213                                                                        {
3214                    label: 'Ude,&#x20;Christian',
3215                    count: '(2)',
3216                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Ude%2C+Christian',
3217                    show: false,
3218                    arialabel: 'Ude, Christian Filter, 2 verfügbare Produkte'
3219                },
3220                                                                        {
3221                    label: 'Vasel-Biergans,&#x20;Anette',
3222                    count: '(2)',
3223                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Vasel-Biergans%2C+Anette',
3224                    show: false,
3225                    arialabel: 'Vasel-Biergans, Anette Filter, 2 verfügbare Produkte'
3226                },
3227                                                                        {
3228                    label: 'Wolz,&#x20;Dietmar',
3229                    count: '(2)',
3230                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Wolz%2C+Dietmar',
3231                    show: false,
3232                    arialabel: 'Wolz, Dietmar Filter, 2 verfügbare Produkte'
3233                },
3234                                                                        {
3235                    label: 'Aktories,&#x20;Klaus',
3236                    count: '(1)',
3237                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Aktories%2C+Klaus',
3238                    show: false,
3239                    arialabel: 'Aktories, Klaus Filter, 1 verfügbares Produkt'
3240                },
3241                                                                        {
3242                    label: 'Apperger,&#x20;Claudia',
3243                    count: '(1)',
3244                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Apperger%2C+Claudia',
3245                    show: false,
3246                    arialabel: 'Apperger, Claudia Filter, 1 verfügbares Produkt'
3247                },
3248                                                                        {
3249                    label: 'Atreya,&#x20;Raja',
3250                    count: '(1)',
3251                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Atreya%2C+Raja',
3252                    show: false,
3253                    arialabel: 'Atreya, Raja Filter, 1 verfügbares Produkt'
3254                },
3255                                                                        {
3256                    label: 'Bauer,&#x20;J&#xFC;rgen&#x20;M.',
3257                    count: '(1)',
3258                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Bauer%2C+J%C3%BCrgen+M.',
3259                    show: false,
3260                    arialabel: 'Bauer, Jürgen M. Filter, 1 verfügbares Produkt'
3261                },
3262                                                                        {
3263                    label: 'Baum,&#x20;Sebastian',
3264                    count: '(1)',
3265                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Baum%2C+Sebastian',
3266                    show: false,
3267                    arialabel: 'Baum, Sebastian Filter, 1 verfügbares Produkt'
3268                },
3269                                                                        {
3270                    label: 'Becker,&#x20;Clemens',
3271                    count: '(1)',
3272                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Becker%2C+Clemens',
3273                    show: false,
3274                    arialabel: 'Becker, Clemens Filter, 1 verfügbares Produkt'
3275                },
3276                                                                        {
3277                    label: 'Bennack,&#x20;Edith',
3278                    count: '(1)',
3279                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Bennack%2C+Edith',
3280                    show: false,
3281                    arialabel: 'Bennack, Edith Filter, 1 verfügbares Produkt'
3282                },
3283                                                                        {
3284                    label: 'Berger,&#x20;Reinhild',
3285                    count: '(1)',
3286                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Berger%2C+Reinhild',
3287                    show: false,
3288                    arialabel: 'Berger, Reinhild Filter, 1 verfügbares Produkt'
3289                },
3290                                                                        {
3291                    label: 'Bergmann,&#x20;Sylke',
3292                    count: '(1)',
3293                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Bergmann%2C+Sylke',
3294                    show: false,
3295                    arialabel: 'Bergmann, Sylke Filter, 1 verfügbares Produkt'
3296                },
3297                                                                        {
3298                    label: 'Bl&#xFC;mle,&#x20;
3298Heidegun',
3299                    count: '(1)',
3300                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Bl%C3%BCmle%2C+Heidegun',
3301                    show: false,
3302                    arialabel: 'Blümle, Heidegun Filter, 1 verfügbares Produkt'
3303                },
3304                                                                        {
3305                    label: 'Brandt,&#x20;Hartmuth',
3306                    count: '(1)',
3307                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Brandt%2C+Hartmuth',
3308                    show: false,
3309                    arialabel: 'Brandt, Hartmuth Filter, 1 verfügbares Produkt'
3310                },
3311                                                                        {
3312                    label: 'Dahse,&#x20;Kirsten',
3313                    count: '(1)',
3314                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Dahse%2C+Kirsten',
3315                    show: false,
3316                    arialabel: 'Dahse, Kirsten Filter, 1 verfügbares Produkt'
3317                },
3318                                                                        {
3319                    label: 'Denkinger,&#x20;Michael',
3320                    count: '(1)',
3321                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Denkinger%2C+Michael',
3322                    show: false,
3323                    arialabel: 'Denkinger, Michael Filter, 1 verfügbares Produkt'
3324                },
3325                                                                        {
3326                    label: 'Deutsche&#x20;Gesellschaft&#x20;f&#xFC;r&#x20;Kardiologie',
3327                    count: '(1)',
3328                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Deutsche+Gesellschaft+f%C3%BCr+Kardiologie',
3329                    show: false,
3330                    arialabel: 'Deutsche Gesellschaft für Kardiologie Filter, 1 verfügbares Produkt'
3331                },
3332                                                                        {
3333                    label: 'Dingermann,&#x20;Theodor',
3334                    count: '(1)',
3335                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Dingermann%2C+Theodor',
3336                    show: false,
3337                    arialabel: 'Dingermann, Theodor Filter, 1 verfügbares Produkt'
3338                },
3339                                                                        {
3340                    label: 'Eisele,&#x20;Matthias',
3341                    count: '(1)',
3342                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Eisele%2C+Matthias',
3343                    show: false,
3344                    arialabel: 'Eisele, Matthias Filter, 1 verfügbares Produkt'
3345                },
3346                                                                        {
3347                    label: 'Erdal,&#x20;Andrea',
3348                    count: '(1)',
3349                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Erdal%2C+Andrea',
3350                    show: false,
3351                    arialabel: 'Erdal, Andrea Filter, 1 verfügbares Produkt'
3352                },
3353                                                                        {
3354                    label: 'Erfurt-Berge,&#x20;Cornelia',
3355                    count: '(1)',
3356                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Erfurt-Berge%2C+Cornelia',
3357                    show: false,
3358                    arialabel: 'Erfurt-Berge, Cornelia Filter, 1 verfügbares Produkt'
3359                },
3360                                                                        {
3361                    label: 'Findeisen,&#x20;Peter',
3362                    count: '(1)',
3363                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Findeisen%2C+Peter',
3364                    show: false,
3365                    arialabel: 'Findeisen, Peter Filter, 1 verfügbares Produkt'
3366                },
3367                                                                        {
3368                    label: 'Fink,&#x20;Erika',
3369                    count: '(1)',
3370                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Fink%2C+Erika',
3371                    show: false,
3372                    arialabel: 'Fink, Erika Filter, 1 verfügbares Produkt'
3373                },
3374                                                                        {
3375                    label: 'Flake,&#x20;Frank',
3376                    count: '(1)',
3377                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Flake%2C+Frank',
3378                    show: false,
3379                    arialabel: 'Flake, Frank Filter, 1 verfügbares Produkt'
3380                },
3381                                                                        {
3382                    label: 'Frank,&#x20;Bruno',
3383                    count: '(1)',
3384                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Frank%2C+Bruno',
3385                    show: false,
3386                    arialabel: 'Frank, Bruno Filter, 1 verfügbares Produkt'
3387                },
3388                                                                        {
3389                    label: 'Frank,&#x20;Helga',
3390                    count: '(1)',
3391                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Frank%2C+Helga',
3392                    show: false,
3393                    arialabel: 'Frank, Helga Filter, 1 verfügbares Produkt'
3394                },
3395                                                                        {
3396                    label: 'Fresenius,&#x20;Werner',
3397                    count: '(1)',
3398                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Fresenius%2C+Werner',
3399                    show: false,
3400                    arialabel: 'Fresenius, Werner Filter, 1 verfügbares Produkt'
3401                },
3402                                                                        {
3403                    label: 'Frohn,&#x20;Lars&#x20;Peter',
3404                    count: '(1)',
3405                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Frohn%2C+Lars+Peter',
3406                    show: false,
3407                    arialabel: 'Frohn, Lars Peter Filter, 1 verfügbares Produkt'
3408                },
3409                                                                        {
3410                    label: 'Giermann,&#x20;Florian',
3411                    count: '(1)',
3412                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Giermann%2C+Florian',
3413                    show: false,
3414                    arialabel: 'Giermann, Florian Filter, 1 verfügbares Produkt'
3415                },
3416                                                                        {
3417                    label: 'Goetzendorff,&#x20;Holger',
3418                    count: '(1)',
3419                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Goetzendorff%2C+Holger',
3420                    show: false,
3421                    arialabel: 'Goetzendorff, Holger Filter, 1 verfügbares Produkt'
3422                },
3423                                                                        {
3424                    label: 'Gollwitzer,&#x20;Stephanie',
3425                    count: '(1)',
3426                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Gollwitzer%2C+Stephanie',
3427                    show: false,
3428                    arialabel: 'Gollwitzer, Stephanie Filter, 1 verfügbares Produkt'
3429                },
3430                                                                        {
3431                    label: 'Gregor,&#x20;
3431Heidi',
3432                    count: '(1)',
3433                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Gregor%2C+Heidi',
3434                    show: false,
3435                    arialabel: 'Gregor, Heidi Filter, 1 verfügbares Produkt'
3436                },
3437                                                                        {
3438                    label: 'G&#xE4;rditz&#x20;,&#x20;Klaus&#x20;Ferdinand',
3439                    count: '(1)',
3440                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=G%C3%A4rditz+%2C+Klaus+Ferdinand',
3441                    show: false,
3442                    arialabel: 'Gärditz , Klaus Ferdinand Filter, 1 verfügbares Produkt'
3443                },
3444                                                                        {
3445                    label: 'Hamer,&#x20;Hajo',
3446                    count: '(1)',
3447                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Hamer%2C+Hajo',
3448                    show: false,
3449                    arialabel: 'Hamer, Hajo Filter, 1 verfügbares Produkt'
3450                },
3451                                                                        {
3452                    label: 'Hempel,&#x20;Georg',
3453                    count: '(1)',
3454                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Hempel%2C+Georg',
3455                    show: false,
3456                    arialabel: 'Hempel, Georg Filter, 1 verfügbares Produkt'
3457                },
3458                                                                        {
3459                    label: 'Herold,&#x20;Holger',
3460                    count: '(1)',
3461                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Herold%2C+Holger',
3462                    show: false,
3463                    arialabel: 'Herold, Holger Filter, 1 verfügbares Produkt'
3464                },
3465                                                                        {
3466                    label: 'Hoffmann,&#x20;Boris&#x20;Alexander',
3467                    count: '(1)',
3468                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Hoffmann%2C+Boris+Alexander',
3469                    show: false,
3470                    arialabel: 'Hoffmann, Boris Alexander Filter, 1 verfügbares Produkt'
3471                },
3472                                                                        {
3473                    label: 'Hopf,&#x20;Yvonne',
3474                    count: '(1)',
3475                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Hopf%2C+Yvonne',
3476                    show: false,
3477                    arialabel: 'Hopf, Yvonne Filter, 1 verfügbares Produkt'
3478                },
3479                                                                        {
3480                    label: 'Im&#xF6;hl,&#x20;Matthias',
3481                    count: '(1)',
3482                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Im%C3%B6hl%2C+Matthias',
3483                    show: false,
3484                    arialabel: 'Imöhl, Matthias Filter, 1 verfügbares Produkt'
3485                },
3486                                                                        {
3487                    label: 'Kasperzik,&#x20;Birte',
3488                    count: '(1)',
3489                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Kasperzik%2C+Birte',
3490                    show: false,
3491                    arialabel: 'Kasperzik, Birte Filter, 1 verfügbares Produkt'
3492                },
3493                                                                        {
3494                    label: 'Kastner,&#x20;Ulrich',
3495                    count: '(1)',
3496                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Kastner%2C+Ulrich',
3497                    show: false,
3498                    arialabel: 'Kastner, Ulrich Filter, 1 verfügbares Produkt'
3499                },
3500                                                                        {
3501                    label: 'Keiner,&#x20;Dirk',
3502                    count: '(1)',
3503                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Keiner%2C+Dirk',
3504                    show: false,
3505                    arialabel: 'Keiner, Dirk Filter, 1 verfügbares Produkt'
3506                },
3507                                                                        {
3508                    label: 'Kemmritz,&#x20;Kerstin',
3509                    count: '(1)',
3510                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Kemmritz%2C+Kerstin',
3511                    show: false,
3512                    arialabel: 'Kemmritz, Kerstin Filter, 1 verfügbares Produkt'
3513                },
3514                                                                        {
3515                    label: 'Kircher,&#x20;Wolfgang',
3516                    count: '(1)',
3517                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Kircher%2C+Wolfgang',
3518                    show: false,
3519                    arialabel: 'Kircher, Wolfgang Filter, 1 verfügbares Produkt'
3520                },
3521                                                                        {
3522                    label: 'Klem-Radinger,&#x20;Sabrina',
3523                    count: '(1)',
3524                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Klem-Radinger%2C+Sabrina',
3525                    show: false,
3526                    arialabel: 'Klem-Radinger, Sabrina Filter, 1 verfügbares Produkt'
3527                },
3528                                                                        {
3529                    label: 'Kollaritsch,&#x20;Herwig',
3530                    count: '(1)',
3531                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Kollaritsch%2C+Herwig',
3532                    show: false,
3533                    arialabel: 'Kollaritsch, Herwig Filter, 1 verfügbares Produkt'
3534                },
3535                                                                        {
3536                    label: 'Krebs,&#x20;Sabine',
3537                    count: '(1)',
3538                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Krebs%2C+Sabine',
3539                    show: false,
3540                    arialabel: 'Krebs, Sabine Filter, 1 verfügbares Produkt'
3541                },
3542                                                                        {
3543                    label: 'Kreutner-Reisinger&#x20;,&#x20;Gudrun',
3544                    count: '(1)',
3545                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Kreutner-Reisinger+%2C+Gudrun',
3546                    show: false,
3547                    arialabel: 'Kreutner-Reisinger , Gudrun Filter, 1 verfügbares Produkt'
3548                },
3549                                                                        {
3550                    label: 'Kr&#xE4;nzle,&#x20;Susanne',
3551                    count: '(1)',
3552                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Kr%C3%A4nzle%2C+Susanne',
3553                    show: false,
3554                    arialabel: 'Kränzle, Susanne Filter, 1 verfügbares Produkt'
3555                },
3556                                                                        {
3557                    label: 'Kupka,&#x20;Danny',
3558                    count: '(1)',
3559                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Kupka%2C+Danny',
3560                    show: false,
3561                    arialabel: 'Kupka, Danny Filter, 1 verfügbares Produkt'
3562                },
3563                                                                        {
3564                    label: 'K&#xFC;hnel,&#x20;Patricia',
3565                    count: '(1)',
3566                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=K%C3%BChnel%2C+Patricia',
3567                    show: false,
3568                    arialabel: 'Kühnel, Patricia Filter, 1 verfügbares Produkt'
3569                },
3570                                                                        {
3571                    label: 'Landmesser,&#x20;Ulf',
3572                    count: '(1)',
3573                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Landmesser%2C+Ulf',
3574                    show: false,
3575                    arialabel: 'Landmesser, Ulf Filter, 1 verfügbares Produkt'
3576                },
3577                                                                        {
3578                    label: 'Laven,&#x20;Anna',
3579                    count: '(1)',
3580                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Laven%2C+Anna',
3581                    show: false,
3582                    arialabel: 'Laven, Anna Filter, 1 verfügbares Produkt'
3583                },
3584                                                                        {
3585                    label: 'Leibniz-Institut&#x20;f&#xFC;r&#x20;Lebensmittel-Systembiologie&#x20;an&#x20;der&#x20;Technischen&#x20;Universit&#xE4;t&#x20;M&#xFC;nchen',
3586                    count: '(1)',
3587                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Leibniz-Institut+f%C3%BCr+Lebensmittel-Systembiologie+an+der+Technischen+Universit%C3%A4t+M%C3%BCnchen',
3588                    show: false,
3589                    arialabel: 'Leibniz-Institut für Lebensmittel-Systembiologie an der Technischen Universität München Filter, 1 verfügbares Produkt'
3590                },
3591                                                                        {
3592                    label: 'Lennecke,&#x20;Kirsten',
3593                    count: '(1)',
3594                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Lennecke%2C+Kirsten',
3595                    show: false,
3596                    arialabel: 'Lennecke, Kirsten Filter, 1 verfügbares Produkt'
3597                },
3598                                                                        {
3599                    label: 'Lim,&#x20;Silke',
3600                    count: '(1)',
3601                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Lim%2C+Silke',
3602                    show: false,
3603                    arialabel: 'Lim, Silke Filter, 1 verfügbares Produkt'
3604                },
3605                                                                        {
3606                    label: 'Ludwig,&#x20;Andrea',
3607                    count: '(1)',
3608                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Ludwig%2C+Andrea',
3609                    show: false,
3610                    arialabel: 'Ludwig, Andrea Filter, 1 verfügbares Produkt'
3611                },
3612                                                                        {
3613                    label: 'Lunzner,&#x20;Anna',
3614                    count: '(1)',
3615                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Lunzner%2C+Anna',
3616                    show: false,
3617                    arialabel: 'Lunzner, Anna Filter, 1 verfügbares Produkt'
3618                },
3619                                                                        {
3620                    label: 'L&#xF6;bach,&#x20;Rita',
3621                    count: '(1)',
3622                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=L%C3%B6bach%2C+Rita',
3623                    show: false,
3624                    arialabel: 'Löbach, Rita Filter, 1 verfügbares Produkt'
3625                },
3626                                                                        {
3627                    label: 'L&#xFC;ckerath,&#x20;Eva',
3628                    count: '(1)',
3629                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=L%C3%BCckerath%2C+Eva',
3630                    show: false,
3631                    arialabel: 'Lückerath, Eva Filter, 1 verfügbares Produkt'
3632                },
3633                                                                        {
3634                    label: 'L&#xFC;scher,&#x20;Thomas&#x20;F.',
3635                    count: '(1)',
3636                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=L%C3%BCscher%2C+Thomas+F.',
3637                    show: false,
3638                    arialabel: 'Lüscher, Thomas F. Filter, 1 verfügbares Produkt'
3639                },
3640                                                                        {
3641                    label: 'Mehlhorn,&#x20;Birgit',
3642                    count: '(1)',
3643                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Mehlhorn%2C+Birgit',
3644                    show: false,
3645                    arialabel: 'Mehlhorn, Birgit Filter, 1 verfügbares Produkt'
3646                },
3647                                                                        {
3648                    label: 'Mehlhorn,&#x20;
3648Heinz',
3649                    count: '(1)',
3650                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Mehlhorn%2C+Heinz',
3651                    show: false,
3652                    arialabel: 'Mehlhorn, Heinz Filter, 1 verfügbares Produkt'
3653                },
3654                                                                        {
3655                    label: 'Mehnert,&#x20;Wolfgang',
3656                    count: '(1)',
3657                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Mehnert%2C+Wolfgang',
3658                    show: false,
3659                    arialabel: 'Mehnert, Wolfgang Filter, 1 verfügbares Produkt'
3660                },
3661                                                                        {
3662                    label: 'Mei&#xDF;ner,&#x20;Carl',
3663                    count: '(1)',
3664                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Mei%C3%9Fner%2C+Carl',
3665                    show: false,
3666                    arialabel: 'Meißner, Carl Filter, 1 verfügbares Produkt'
3667                },
3668                                                                        {
3669                    label: 'Melhorn,&#x20;Stefanie',
3670                    count: '(1)',
3671                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Melhorn%2C+Stefanie',
3672                    show: false,
3673                    arialabel: 'Melhorn, Stefanie Filter, 1 verfügbares Produkt'
3674                },
3675                                                                        {
3676                    label: 'Michael,&#x20;Sebastian',
3677                    count: '(1)',
3678                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Michael%2C+Sebastian',
3679                    show: false,
3680                    arialabel: 'Michael, Sebastian Filter, 1 verfügbares Produkt'
3681                },
3682                                                                        {
3683                    label: 'Miller,&#x20;David',
3684                    count: '(1)',
3685                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Miller%2C+David',
3686                    show: false,
3687                    arialabel: 'Miller, David Filter, 1 verfügbares Produkt'
3688                },
3689                                                                        {
3690                    label: 'M&#xFC;ller,&#x20;Sven-David',
3691                    count: '(1)',
3692                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=M%C3%BCller%2C+Sven-David',
3693                    show: false,
3694                    arialabel: 'Müller, Sven-David Filter, 1 verfügbares Produkt'
3695                },
3696                                                                        {
3697                    label: 'M&#xFC;ller-Frahling,&#x20;Margit',
3698                    count: '(1)',
3699                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=M%C3%BCller-Frahling%2C+Margit',
3700                    show: false,
3701                    arialabel: 'Müller-Frahling, Margit Filter, 1 verfügbares Produkt'
3702                },
3703                                                                        {
3704                    label: 'Neukirchen,&#x20;Rainer',
3705                    count: '(1)',
3706                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Neukirchen%2C+Rainer',
3707                    show: false,
3708                    arialabel: 'Neukirchen, Rainer Filter, 1 verfügbares Produkt'
3709                },
3710                                                                        {
3711                    label: 'Niklas,&#x20;Herbert',
3712                    count: '(1)',
3713                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Niklas%2C+Herbert',
3714                    show: false,
3715                    arialabel: 'Niklas, Herbert Filter, 1 verfügbares Produkt'
3716                },
3717                                                                        {
3718                    label: 'Pagelsdorf,&#x20;Sylke',
3719                    count: '(1)',
3720                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Pagelsdorf%2C+Sylke',
3721                    show: false,
3722                    arialabel: 'Pagelsdorf, Sylke Filter, 1 verfügbares Produkt'
3723                },
3724                                                                        {
3725                    label: 'Pfister,&#x20;Elisabeth',
3726                    count: '(1)',
3727                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Pfister%2C+Elisabeth',
3728                    show: false,
3729                    arialabel: 'Pfister, Elisabeth Filter, 1 verfügbares Produkt'
3730                },
3731                                                                        {
3732                    label: 'Podlogar,&#x20;Julia',
3733                    count: '(1)',
3734                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Podlogar%2C+Julia',
3735                    show: false,
3736                    arialabel: 'Podlogar, Julia Filter, 1 verfügbares Produkt'
3737                },
3738                                                                        {
3739                    label: 'Pudritz,&#x20;Yvonne&#x20;Marina',
3740                    count: '(1)',
3741                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Pudritz%2C+Yvonne+Marina',
3742                    show: false,
3743                    arialabel: 'Pudritz, Yvonne Marina Filter, 1 verfügbares Produkt'
3744                },
3745                                                                        {
3746                    label: 'Roll,&#x20;Sibylle',
3747                    count: '(1)',
3748                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Roll%2C+Sibylle',
3749                    show: false,
3750                    arialabel: 'Roll, Sibylle Filter, 1 verfügbares Produkt'
3751                },
3752                                                                        {
3753                    label: 'Rose,&#x20;Olaf',
3754                    count: '(1)',
3755                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Rose%2C+Olaf',
3756                    show: false,
3757                    arialabel: 'Rose, Olaf Filter, 1 verfügbares Produkt'
3758                },
3759                                                                        {
3760                    label: 'Sax,&#x20;Michael',
3761                    count: '(1)',
3762                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Sax%2C+Michael',
3763                    show: false,
3764                    arialabel: 'Sax, Michael Filter, 1 verfügbares Produkt'
3765                },
3766                                                                        {
3767                    label: 'Scherzer,&#x20;Birgit',
3768                    count: '(1)',
3769                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Scherzer%2C+Birgit',
3770                    show: false,
3771                    arialabel: 'Scherzer, Birgit Filter, 1 verfügbares Produkt'
3772                },
3773                                                                        {
3774                    label: 'Schindler,&#x20;Elisabeth',
3775                    count: '(1)',
3776                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Schindler%2C+Elisabeth',
3777                    show: false,
3778                    arialabel: 'Schindler, Elisabeth Filter, 1 verfügbares Produkt'
3779                },
3780                                                                        {
3781                    label: 'Schlett,&#x20;Siegfried',
3782                    count: '(1)',
3783                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Schlett%2C+Siegfried',
3784                    show: false,
3785                    arialabel: 'Schlett, Siegfried Filter, 1 verfügbares Produkt'
3786                },
3787                                                                        {
3788                    label: 'Schmid,&#x20;Ulrike',
3789                    count: '(1)',
3790                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Schmid%2C+Ulrike',
3791                    show: false,
3792                    arialabel: 'Schmid, Ulrike Filter, 1 verfügbares Produkt'
3793                },
3794                                                                        {
3795                    label: 'Schmidt,&#x20;Carola',
3796                    count: '(1)',
3797                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Schmidt%2C+Carola',
3798                    show: false,
3799                    arialabel: 'Schmidt, Carola Filter, 1 verfügbares Produkt'
3800                },
3801                                                                        {
3802                    label: 'Schneider,&#x20;Simon',
3803                    count: '(1)',
3804                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Schneider%2C+Simon',
3805                    show: false,
3806                    arialabel: 'Schneider, Simon Filter, 1 verfügbares Produkt'
3807                },
3808                                                                        {
3809                    label: 'Scholle,&#x20;Oliver',
3810                    count: '(1)',
3811                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Scholle%2C+Oliver',
3812                    show: false,
3813                    arialabel: 'Scholle, Oliver Filter, 1 verfügbares Produkt'
3814                },
3815                                                                        {
3816                    label: 'Schraut,&#x20;Veronika',
3817                    count: '(1)',
3818                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Schraut%2C+Veronika',
3819                    show: false,
3820                    arialabel: 'Schraut, Veronika Filter, 1 verfügbares Produkt'
3821                },
3822                                                                        {
3823                    label: 'Sch&#xE4;fer,&#x20;Patrick',
3824                    count: '(1)',
3825                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Sch%C3%A4fer%2C+Patrick',
3826                    show: false,
3827                    arialabel: 'Schäfer, Patrick Filter, 1 verfügbares Produkt'
3828                },
3829                                                                        {
3830                    label: 'Sch&#xE4;ferlein,&#x20;Susanne',
3831                    count: '(1)',
3832                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Sch%C3%A4ferlein%2C+Susanne',
3833                    show: false,
3834                    arialabel: 'Schäferlein, Susanne Filter, 1 verfügbares Produkt'
3835                },
3836                                                                        {
3837                    label: 'Sch&#xF6;nberger,&#x20;Norbert&#x20;L.',
3838                    count: '(1)',
3839                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Sch%C3%B6nberger%2C+Norbert+L.',
3840                    show: false,
3841                    arialabel: 'Schönberger, Norbert L. Filter, 1 verfügbares Produkt'
3842                },
3843                                                                        {
3844                    label: 'Seeger,&#x20;Christa',
3845                    count: '(1)',
3846                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Seeger%2C+Christa',
3847                    show: false,
3848                    arialabel: 'Seeger, Christa Filter, 1 verfügbares Produkt'
3849                },
3850                                                                        {
3851                    label: 'Stadelmann,&#x20;Ingeborg',
3852                    count: '(1)',
3853                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Stadelmann%2C+Ingeborg',
3854                    show: false,
3855                    arialabel: 'Stadelmann, Ingeborg Filter, 1 verfügbares Produkt'
3856                },
3857                                                                        {
3858                    label: 'Staufenbiel,&#x20;Barbara',
3859                    count: '(1)',
3860                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Staufenbiel%2C+Barbara',
3861                    show: false,
3862                    arialabel: 'Staufenbiel, Barbara Filter, 1 verfügbares Produkt'
3863                },
3864                                                                        {
3865                    label: 'Stollhof,&#x20;Bettina',
3866                    count: '(1)',
3867                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Stollhof%2C+Bettina',
3868                    show: false,
3869                    arialabel: 'Stollhof, Bettina Filter, 1 verfügbares Produkt'
3870                },
3871                                                                        {
3872                    label: 'Szabo,&#x20;Bela',
3873                    count: '(1)',
3874                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Szabo%2C+Bela',
3875                    show: false,
3876                    arialabel: 'Szabo, Bela Filter, 1 verfügbares Produkt'
3877                },
3878                                                                        {
3879                    label: 'Tetzner,&#x20;
3879Heide',
3880                    count: '(1)',
3881                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Tetzner%2C+Heide',
3882                    show: false,
3883                    arialabel: 'Tetzner, Heide Filter, 1 verfügbares Produkt'
3884                },
3885                                                                        {
3886                    label: 'Thees,&#x20;Carlos',
3887                    count: '(1)',
3888                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Thees%2C+Carlos',
3889                    show: false,
3890                    arialabel: 'Thees, Carlos Filter, 1 verfügbares Produkt'
3891                },
3892                                                                        {
3893                    label: 'Trenk,&#x20;Dietmar',
3894                    count: '(1)',
3895                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Trenk%2C+Dietmar',
3896                    show: false,
3897                    arialabel: 'Trenk, Dietmar Filter, 1 verfügbares Produkt'
3898                },
3899                                                                        {
3900                    label: 'Uhlemayr,&#x20;Ursula',
3901                    count: '(1)',
3902                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Uhlemayr%2C+Ursula',
3903                    show: false,
3904                    arialabel: 'Uhlemayr, Ursula Filter, 1 verfügbares Produkt'
3905                },
3906                                                                        {
3907                    label: 'Ulmer,&#x20;Susanne',
3908                    count: '(1)',
3909                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Ulmer%2C+Susanne',
3910                    show: false,
3911                    arialabel: 'Ulmer, Susanne Filter, 1 verfügbares Produkt'
3912                },
3913                                                                        {
3914                    label: 'Vogelreuter,&#x20;Axel',
3915                    count: '(1)',
3916                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Vogelreuter%2C+Axel',
3917                    show: false,
3918                    arialabel: 'Vogelreuter, Axel Filter, 1 verfügbares Produkt'
3919                },
3920                                                                        {
3921                    label: 'Walach,&#x20;Harald',
3922                    count: '(1)',
3923                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Walach%2C+Harald',
3924                    show: false,
3925                    arialabel: 'Walach, Harald Filter, 1 verfügbares Produkt'
3926                },
3927                                                                        {
3928                    label: 'Waltering,&#x20;Isabel',
3929                    count: '(1)',
3930                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Waltering%2C+Isabel',
3931                    show: false,
3932                    arialabel: 'Waltering, Isabel Filter, 1 verfügbares Produkt'
3933                },
3934                                                                        {
3935                    label: 'Weber,&#x20;Christiane',
3936                    count: '(1)',
3937                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Weber%2C+Christiane',
3938                    show: false,
3939                    arialabel: 'Weber, Christiane Filter, 1 verfügbares Produkt'
3940                },
3941                                                                        {
3942                    label: 'Weber,&#x20;Stefanie',
3943                    count: '(1)',
3944                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Weber%2C+Stefanie',
3945                    show: false,
3946                    arialabel: 'Weber, Stefanie Filter, 1 verfügbares Produkt'
3947                },
3948                                                                        {
3949                    label: 'Weiler,&#x20;Lorenz',
3950                    count: '(1)',
3951                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Weiler%2C+Lorenz',
3952                    show: false,
3953                    arialabel: 'Weiler, Lorenz Filter, 1 verfügbares Produkt'
3954                },
3955                                                                        {
3956                    label: 'Weitschies,&#x20;Werner',
3957                    count: '(1)',
3958                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Weitschies%2C+Werner',
3959                    show: false,
3960                    arialabel: 'Weitschies, Werner Filter, 1 verfügbares Produkt'
3961                },
3962                                                                        {
3963                    label: 'Werner,&#x20;Sabine',
3964                    count: '(1)',
3965                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Werner%2C+Sabine',
3966                    show: false,
3967                    arialabel: 'Werner, Sabine Filter, 1 verfügbares Produkt'
3968                },
3969                                                                        {
3970                    label: 'Wirth,&#x20;Rainer',
3971                    count: '(1)',
3972                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Wirth%2C+Rainer',
3973                    show: false,
3974                    arialabel: 'Wirth, Rainer Filter, 1 verfügbares Produkt'
3975                },
3976                                                                        {
3977                    label: 'Wolf,&#x20;Elke',
3978                    count: '(1)',
3979                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Wolf%2C+Elke',
3980                    show: false,
3981                    arialabel: 'Wolf, Elke Filter, 1 verfügbares Produkt'
3982                },
3983                                                                        {
3984                    label: 'Wunderlich,&#x20;Silke',
3985                    count: '(1)',
3986                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Wunderlich%2C+Silke',
3987                    show: false,
3988                    arialabel: 'Wunderlich, Silke Filter, 1 verfügbares Produkt'
3989                },
3990                                                                        {
3991                    label: 'Wurglics,&#x20;Mario',
3992                    count: '(1)',
3993                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Wurglics%2C+Mario',
3994                    show: false,
3995                    arialabel: 'Wurglics, Mario Filter, 1 verfügbares Produkt'
3996                },
3997                                                                        {
3998                    label: 'Ziermann,&#x20;Janine',
3999                    count: '(1)',
4000                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Ziermann%2C+Janine',
4001                    show: false,
4002                    arialabel: 'Ziermann, Janine Filter, 1 verfügbares Produkt'
4003                },
4004                                                                        {
4005                    label: 'Zimmer,&#x20;Robert',
4006                    count: '(1)',
4007                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?person=Zimmer%2C+Robert',
4008                    show: false,
4009                    arialabel: 'Zimmer, Robert Filter, 1 verfügbares Produkt'
4010                },
4011                                                ],
4012
4013            get filteredItems() {
4014                res = this.items.filter(
4015                    i => i.label.toLowerCase().includes(this.search.toLowerCase())
4016                );
4017                if(this.search.toLowerCase().length > 0){
4018                    this.canShowShowAll = false;
4019                    res.forEach(function(i){
4020                        i.show = true;
4021                    });
4022                }
4023                else {
4024                    this.canShowShowAll = true;
4025                    this.hideAll();
4026                }
4027                return res;
4028            },
4029
4030            showAll(){
4031                this.showAllConstant = true;
4032                this.items.forEach(function(i){
4033                    i.show = true;
4034                });
4035            },
4036
4037            hideAll(){
4038                this.showAllConstant = false;
4039                let counter = 1;
4040                this.items.forEach(function(i){
4041                    if(counter <= 10){
4042                        i.show = true;
4043                    }
4044                    else {
4045                        i.show = false;
4046                    }
4047                    counter++;
4048                });
4049            }
4050        }" class="">
4051    <input
4052        x-show="canShowSearchField"
4053        type="search"
4054        x-model="search"
4055        placeholder="Suche"
4056        class="w-full form-input mb-3">
4057
4058    <ol x-show="open" class="w-full items" aria-label="Autor&#x20;Filter&#x20;Optionen">
4059        <template x-for="item in filteredItems" :key="item.link">
4060            <li x-show="item.show">
4061                <a class="flex justify-between py-1 hover:text-black" x-bind:href="item.link"
4062                    :aria-label="item.arialabel"
4063                >
4064                    <span x-text="item.label"></span>
4065                    <span class="count text-primary" x-text="item.count"></span>
4066                </a>
4067            </li>
4068        </template>
4069        <div x-show="canShowShowAll">
4070            <button x-show="!showAllConstant" @click="showAll()"
4071                class="action submit primary btn btn-primary disabled:opacity-75">
4072                Mehr anzeigen            </button>
4073            <button x-show="showAllConstant" @click="hideAll()"
4074                class="action submit primary btn btn-primary disabled:opacity-75">
4075                Weniger anzeigen            </button>
4076        </div>
4077    </ol>
4078</div>                                                            </div>
4079                        </template>
4080                    </div>
4081                                                                <div
4082                        x-data="{
4083                            open: false,
4084                            id: $id('filter-option')
4085                        }"
4086                        class="filter-option card my-4"
4087                    >
4088                        <h3 :id="`${id}-title`">
4089                            <button
4090                                type="button"
4091                                @click="open = !open"
4092                                class="filter-options-title flex justify-between items-center cursor-pointer hover:text-secondary-darker border-container w-full"
4093                                :class="{ 'border-b pb-4': open }"
4094                                :aria-controls="`${id}-content`"
4095                                :aria-expanded="open"
4096                            >
4097                                <span class="title text-md md:text-lg font-semibold">
4098                                    Preis                                    <span class="sr-only"> filter</span>
4099                                </span>
4100                                    <span class="py-1 px-1 rounded border border-container">
4101                                    <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="transition-transform transform duration-300 ease-in-out" width="24" height="24" :class="{ 'rotate-180': open }" aria-hidden="true" focusable="false">
4102  <path stroke-linecap="round" stroke-linejoin="round" d="M19 9l-7 7-7-7"/>
4103</svg>
4104                                </span>
4105                            </button>
4106                        </h3>
4107                        <template x-if="open">
4108                            <div
4109                                :id="`${id}-content`"
4110                                class="filter-options-content pt-3"
4111                            >
4112                                                                    <ol class="items" aria-label="Price&#x20;Filter&#x20;Optionen">
4113            <li>
4114                            <a
4115                    href="https://www.govi.de/apotheke/pharmazeutische-beratung?price=0-25"
4116                    class="flex justify-between py-1 hover:text-black"
4117                                        aria-label="&lt;span&#x20;class&#x3D;&quot;price&quot;&gt;0,00&#xA0;&#x20AC;&lt;&#x2F;span&gt;&#x20;&#x2013;&#x20;&lt;span&#x20;class&#x3D;&quot;price&quot;&gt;24,99&#xA0;&#x20AC;&lt;&#x2F;span&gt;&#x20;Filter,&#x20;33&#x20;verf&#xFC;gbare&#x20;Produkte"
4118                                    >
4119                    <span><span class="price">0,00 €</span> – <span class="price">24,99 €</span></span>
4120                                            <span class="count text-primary">(33)</span>
4121                                    </a>
4122                    </li>
4123            <li>
4124                            <a
4125                    href="https://www.govi.de/apotheke/pharmazeutische-beratung?price=25-50"
4126                    class="flex justify-between py-1 hover:text-black"
4127                                        aria-label="&lt;span&#x20;class&#x3D;&quot;price&quot;&gt;25,00&#xA0;&#x20AC;&lt;&#x2F;span&gt;&#x20;&#x2013;&#x20;&lt;span&#x20;class&#x3D;&quot;price&quot;&gt;49,99&#xA0;&#x20AC;&lt;&#x2F;span&gt;&#x20;Filter,&#x20;54&#x20;verf&#xFC;gbare&#x20;Produkte"
4128                                    >
4129                    <span><span class="price">25,00 €</span> – <span class="price">49,99 €</span></span>
4130                                            <span class="count text-primary">(54)</span>
4131                                    </a>
4132                    </li>
4133            <li>
4134                            <a
4135                    href="https://www.govi.de/apotheke/pharmazeutische-beratung?price=50-75"
4136                    class="flex justify-between py-1 hover:text-black"
4137                                        aria-label="&lt;span&#x20;class&#x3D;&quot;price&quot;&gt;50,00&#xA0;&#x20AC;&lt;&#x2F;span&gt;&#x20;&#x2013;&#x20;&lt;span&#x20;class&#x3D;&quot;price&quot;&gt;74,99&#xA0;&#x20AC;&lt;&#x2F;span&gt;&#x20;Filter,&#x20;13&#x20;verf&#xFC;gbare&#x20;Produkte"
4138                                    >
4139                    <span><span class="price">50,00 €</span> – <span class="price">74,99 €</span></span>
4140                                            <span class="count text-primary">(13)</span>
4141                                    </a>
4142                    </li>
4143            <li>
4144                            <a
4145                    href="https://www.govi.de/apotheke/pharmazeutische-beratung?price=75-100"
4146                    class="flex justify-between py-1 hover:text-black"
4147                                        aria-label="&lt;span&#x20;class&#x3D;&quot;price&quot;&gt;75,00&#xA0;&#x20AC;&lt;&#x2F;span&gt;&#x20;&#x2013;&#x20;&lt;span&#x20;class&#x3D;&quot;price&quot;&gt;99,99&#xA0;&#x20AC;&lt;&#x2F;span&gt;&#x20;Filter,&#x20;6&#x20;verf&#xFC;gbare&#x20;Produkte"
4148                                    >
4149                    <span><span class="price">75,00 €</span> – <span class="price">99,99 €</span></span>
4150                                            <span class="count text-primary">(6)</span>
4151                                    </a>
4152                    </li>
4153            <li>
4154                            <a
4155                    href="https://www.govi.de/apotheke/pharmazeutische-beratung?price=100-125"
4156                    class="flex justify-between py-1 hover:text-black"
4157                                        aria-label="&lt;span&#x20;class&#x3D;&quot;price&quot;&gt;100,00&#xA0;&#x20AC;&lt;&#x2F;span&gt;&#x20;&#x2013;&#x20;&lt;span&#x20;class&#x3D;&quot;price&quot;&gt;124,99&#xA0;&#x20AC;&lt;&#x2F;span&gt;&#x20;Filter,&#x20;3&#x20;verf&#xFC;gbare&#x20;Produkte"
4158                                    >
4159                    <span><span class="price">100,00 €</span> – <span class="price">124,99 €</span></span>
4160                                            <span class="count text-primary">(3)</span>
4161                                    </a>
4162                    </li>
4163            <li>
4164                            <a
4165                    href="https://www.govi.de/apotheke/pharmazeutische-beratung?price=125-150"
4166                    class="flex justify-between py-1 hover:text-black"
4167                                        aria-label="&lt;span&#x20;class&#x3D;&quot;price&quot;&gt;125,00&#xA0;&#x20AC;&lt;&#x2F;span&gt;&#x20;&#x2013;&#x20;&lt;span&#x20;class&#x3D;&quot;price&quot;&gt;149,99&#xA0;&#x20AC;&lt;&#x2F;span&gt;&#x20;Filter,&#x20;1&#x20;verf&#xFC;gbares&#x20;Produkt"
4168                                    >
4169                    <span><span class="price">125,00 €</span> – <span class="price">149,99 €</span></span>
4170                                            <span class="count text-primary">(1)</span>
4171                                    </a>
4172                    </li>
4173            <li>
4174                            <a
4175                    href="https://www.govi.de/apotheke/pharmazeutische-beratung?price=175-200"
4176                    class="flex justify-between py-1 hover:text-black"
4177                                        aria-label="&lt;span&#x20;class&#x3D;&quot;price&quot;&gt;175,00&#xA0;&#x20AC;&lt;&#x2F;span&gt;&#x20;und&#x20;mehr&#x20;Filter,&#x20;1&#x20;verf&#xFC;gbares&#x20;Produkt"
4178                                    >
4179                    <span><span class="price">175,00 €</span> und mehr</span>
4180                                            <span class="count text-primary">(1)</span>
4181                                    </a>
4182                    </li>
4183    </ol>                                                            </div>
4184                        </template>
4185                    </div>
4186                                                                <div
4187                        x-data="{
4188                            open: false,
4189                            id: $id('filter-option')
4190                        }"
4191                        class="filter-option card my-4"
4192                    >
4193                        <h3 :id="`${id}-title`">
4194                            <button
4195                                type="button"
4196                                @click="open = !open"
4197                                class="filter-options-title flex justify-between items-center cursor-pointer hover:text-secondary-darker border-container w-full"
4198                                :class="{ 'border-b pb-4': open }"
4199                                :aria-controls="`${id}-content`"
4200                                :aria-expanded="open"
4201                            >
4202                                <span class="title text-md md:text-lg font-semibold">
4203                                    Medium                                    <span class="sr-only"> filter</span>
4204                                </span>
4205                                    <span class="py-1 px-1 rounded border border-container">
4206                                    <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="transition-transform transform duration-300 ease-in-out" width="24" height="24" :class="{ 'rotate-180': open }" aria-hidden="true" focusable="false">
4207  <path stroke-linecap="round" stroke-linejoin="round" d="M19 9l-7 7-7-7"/>
4208</svg>
4209                                </span>
4210                            </button>
4211                        </h3>
4212                        <template x-if="open">
4213                            <div
4214                                :id="`${id}-content`"
4215                                class="filter-options-content pt-3"
4216                            >
4217                                                                    
4217<script>
4218    function initLayeredSwatch_medium() {
4219        return {
4220            getSwatchType(typeNumber) {
4221                switch ("" + typeNumber) {
4222                    case '1':
4223                        return "color"
4224                    case '2':
4225                        return "image"
4226                    case '0':
4227                    default:
4228                        return "text"
4229                }
4230            },
4231            getSwatchBackgroundStyle(type, value, image) {
4232                if (this.getSwatchType(type) === "color") {
4233                    return 'background-color:' + value;
4234                } else if (this.getSwatchType(type) === "image") {
4235                    return "background: #ffffff url('" + image + "') no-repeat center";
4236                } else {
4237                    return '';
4238                }
4239            },
4240            activeTooltipItem: false,
4241            tooltipPositionElement: false,
4242            isTooltipVisible() {
4243                return this.activeTooltipItem
4244            },
4245            isFirstItemCol() {
4246                const left = this.tooltipPositionElement.offsetLeft;
4247                const leftParent = this.tooltipPositionElement.parentNode.offsetLeft;
4248                const width = this.tooltipPositionElement.offsetWidth;
4249                return left - leftParent < width;
4250            },
4251            getTooltipImageStyle() {
4252                const type = this.activeTooltipItem.type;
4253
4254                if (this.getSwatchType(type) === "color") {
4255                    return 'background-color:' + this.activeTooltipItem.value + '; width: 110px; height: 90px;';
4256                } else if (this.getSwatchType(type) === "image") {
4257                    return "background: #ffffff url('" + this.activeTooltipItem.thumb +
4258                        "') center center no-repeat; width: 110px; height: 90px;";
4259                } else {
4260                    return 'display:none';
4261                }
4262            },
4263            getTooltipPosition() {
4264                return this.tooltipPositionElement ?
4265                    (
4266                        `top: ${this.tooltipPositionElement.offsetTop}px;` +
4267                        `left: ${this.tooltipPositionElement.offsetLeft}px;`
4268                    ) : ''
4269            },
4270            getTooltipLabel() {
4271                return this.activeTooltipItem.label || ''
4272            },
4273            isVisualSwatch() {
4274                return this.getSwatchType(this.activeTooltipItem.type) !== 'text'
4275            }
4276        }
4277    }
4278</script>
4278
4279
4280<div class="swatch-attribute swatch-layered medium"
4281     x-data="initLayeredSwatch_medium()"
4282>
4283    <div class="swatch-attribute-options clearfix">
4284                                <a
4285                href="https://www.govi.de/apotheke/pharmazeutische-beratung?medium=18" rel="nofollow"
4286                aria-label="Filter&#x20;Medium&#x20;Buch"
4287                class="swatch-option-link-layered swatch-option cursor-pointer bg-container-lighter shadow-sm relative select-none border-container-darker "
4288                                            >
4289                                    Buch                            </a>
4290                                <a
4291                href="https://www.govi.de/apotheke/pharmazeutische-beratung?medium=19" rel="nofollow"
4292                aria-label="Filter&#x20;Medium&#x20;Drehscheibe"
4293                class="swatch-option-link-layered swatch-option cursor-pointer bg-container-lighter shadow-sm relative select-none border-container-darker "
4294                                            >
4295                                    Drehscheibe                            </a>
4296                                <a
4297                href="https://www.govi.de/apotheke/pharmazeutische-beratung?medium=25" rel="nofollow"
4298                aria-label="Filter&#x20;Medium&#x20;Loseblattwerk&#x20;zur&#x20;Fortsetzung"
4299                class="swatch-option-link-layered swatch-option cursor-pointer bg-container-lighter shadow-sm relative select-none border-container-darker "
4300                                            >
4301                                    Loseblattwerk zur Fortsetzung                            </a>
4302                                <a
4303                href="https://www.govi.de/apotheke/pharmazeutische-beratung?medium=26" rel="nofollow"
4304                aria-label="Filter&#x20;Medium&#x20;Karteikarten"
4305                class="swatch-option-link-layered swatch-option cursor-pointer bg-container-lighter shadow-sm relative select-none border-container-darker "
4306                                            >
4307                                    Karteikarten                            </a>
4308                                <a
4309                href="https://www.govi.de/apotheke/pharmazeutische-beratung?medium=28" rel="nofollow"
4310                aria-label="Filter&#x20;Medium&#x20;PDF"
4311                class="swatch-option-link-layered swatch-option cursor-pointer bg-container-lighter shadow-sm relative select-none border-container-darker "
4312                                            >
4313                                    PDF                            </a>
4314                                <a
4315                href="https://www.govi.de/apotheke/pharmazeutische-beratung?medium=29" rel="nofollow"
4316                aria-label="Filter&#x20;Medium&#x20;EPUB"
4317                class="swatch-option-link-layered swatch-option cursor-pointer bg-container-lighter shadow-sm relative select-none border-container-darker "
4318                                            >
4319                                    EPUB                            </a>
4320                                <a
4321                href="https://www.govi.de/apotheke/pharmazeutische-beratung?medium=31" rel="nofollow"
4322                aria-label="Filter&#x20;Medium&#x20;CD-ROM"
4323                class="swatch-option-link-layered swatch-option cursor-pointer bg-container-lighter shadow-sm relative select-none border-container-darker "
4324                                            >
4325                                    CD-ROM                            </a>
4326                                <a
4327                href="https://www.govi.de/apotheke/pharmazeutische-beratung?medium=47" rel="nofollow"
4328                aria-label="Filter&#x20;Medium&#x20;Protokolle"
4329                class="swatch-option-link-layered swatch-option cursor-pointer bg-container-lighter shadow-sm relative select-none border-container-darker "
4330                                            >
4331                                    Protokolle                            </a>
4332                                <a
4333                href="https://www.govi.de/apotheke/pharmazeutische-beratung?medium=40" rel="nofollow"
4334                aria-label="Filter&#x20;Medium&#x20;Sonstiges"
4335                class="swatch-option-link-layered swatch-option cursor-pointer bg-container-lighter shadow-sm relative select-none border-container-darker "
4336                                            >
4337                                    Sonstiges                            </a>
4338            </div>
4339    </div>
4340
4341                                                            </div>
4342                        </template>
4343                    </div>
4344                                                                <div
4345                        x-data="{
4346                            open: false,
4347                            id: $id('filter-option')
4348                        }"
4349                        class="filter-option card my-4"
4350                    >
4351                        <h3 :id="`${id}-title`">
4352                            <button
4353                                type="button"
4354                                @click="open = !open"
4355                                class="filter-options-title flex justify-between items-center cursor-pointer hover:text-secondary-darker border-container w-full"
4356                                :class="{ 'border-b pb-4': open }"
4357                                :aria-controls="`${id}-content`"
4358                                :aria-expanded="open"
4359                            >
4360                                <span class="title text-md md:text-lg font-semibold">
4361                                    Erscheinungsjahr                                    <span class="sr-only"> filter</span>
4362                                </span>
4363                                    <span class="py-1 px-1 rounded border border-container">
4364                                    <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="transition-transform transform duration-300 ease-in-out" width="24" height="24" :class="{ 'rotate-180': open }" aria-hidden="true" focusable="false">
4365  <path stroke-linecap="round" stroke-linejoin="round" d="M19 9l-7 7-7-7"/>
4366</svg>
4367                                </span>
4368                            </button>
4369                        </h3>
4370                        <template x-if="open">
4371                            <div
4372                                :id="`${id}-content`"
4373                                class="filter-options-content pt-3"
4374                            >
4375                                                                    <div x-data="{
4376            search: '',
4377            open: true,
4378            showAllConstant: false,
4379            canShowShowAll: true,
4380            canShowSearchField: true,
4381            items: [
4382                                                                    {
4383                    label: '2027',
4384                    count: '(1)',
4385                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?publishing_year=2027',
4386                    show: true,
4387                    arialabel: '2027 Filter, 1 verfügbares Produkt'
4388                },
4389                                                                        {
4390                    label: '2026',
4391                    count: '(1)',
4392                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?publishing_year=2026',
4393                    show: true,
4394                    arialabel: '2026 Filter, 1 verfügbares Produkt'
4395                },
4396                                                                        {
4397                    label: '2025',
4398                    count: '(14)',
4399                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?publishing_year=2025',
4400                    show: true,
4401                    arialabel: '2025 Filter, 14 verfügbare Produkte'
4402                },
4403                                                                        {
4404                    label: '2024',
4405                    count: '(10)',
4406                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?publishing_year=2024',
4407                    show: true,
4408                    arialabel: '2024 Filter, 10 verfügbare Produkte'
4409                },
4410                                                                        {
4411                    label: '2023',
4412                    count: '(8)',
4413                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?publishing_year=2023',
4414                    show: true,
4415                    arialabel: '2023 Filter, 8 verfügbare Produkte'
4416                },
4417                                                                        {
4418                    label: '2022',
4419                    count: '(12)',
4420                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?publishing_year=2022',
4421                    show: true,
4422                    arialabel: '2022 Filter, 12 verfügbare Produkte'
4423                },
4424                                                                        {
4425                    label: '2021',
4426                    count: '(7)',
4427                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?publishing_year=2021',
4428                    show: true,
4429                    arialabel: '2021 Filter, 7 verfügbare Produkte'
4430                },
4431                                                                        {
4432                    label: '2020',
4433                    count: '(10)',
4434                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?publishing_year=2020',
4435                    show: true,
4436                    arialabel: '2020 Filter, 10 verfügbare Produkte'
4437                },
4438                                                                        {
4439                    label: '2019',
4440                    count: '(6)',
4441                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?publishing_year=2019',
4442                    show: true,
4443                    arialabel: '2019 Filter, 6 verfügbare Produkte'
4444                },
4445                                                                        {
4446                    label: '2018',
4447                    count: '(7)',
4448                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?publishing_year=2018',
4449                    show: true,
4450                    arialabel: '2018 Filter, 7 verfügbare Produkte'
4451                },
4452                                                                        {
4453                    label: '2017',
4454                    count: '(6)',
4455                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?publishing_year=2017',
4456                    show: false,
4457                    arialabel: '2017 Filter, 6 verfügbare Produkte'
4458                },
4459                                                                        {
4460                    label: '2016',
4461                    count: '(5)',
4462                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?publishing_year=2016',
4463                    show: false,
4464                    arialabel: '2016 Filter, 5 verfügbare Produkte'
4465                },
4466                                                                        {
4467                    label: '2015',
4468                    count: '(3)',
4469                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?publishing_year=2015',
4470                    show: false,
4471                    arialabel: '2015 Filter, 3 verfügbare Produkte'
4472                },
4473                                                                        {
4474                    label: '2014',
4475                    count: '(5)',
4476                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?publishing_year=2014',
4477                    show: false,
4478                    arialabel: '2014 Filter, 5 verfügbare Produkte'
4479                },
4480                                                                        {
4481                    label: '2013',
4482                    count: '(5)',
4483                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?publishing_year=2013',
4484                    show: false,
4485                    arialabel: '2013 Filter, 5 verfügbare Produkte'
4486                },
4487                                                                        {
4488                    label: '2012',
4489                    count: '(2)',
4490                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?publishing_year=2012',
4491                    show: false,
4492                    arialabel: '2012 Filter, 2 verfügbare Produkte'
4493                },
4494                                                                        {
4495                    label: '2011',
4496                    count: '(7)',
4497                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?publishing_year=2011',
4498                    show: false,
4499                    arialabel: '2011 Filter, 7 verfügbare Produkte'
4500                },
4501                                                                        {
4502                    label: '2010',
4503                    count: '(1)',
4504                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?publishing_year=2010',
4505                    show: false,
4506                    arialabel: '2010 Filter, 1 verfügbares Produkt'
4507                },
4508                                                                        {
4509                    label: '2008',
4510                    count: '(1)',
4511                    link: 'https://www.govi.de/apotheke/pharmazeutische-beratung?publishing_year=2008',
4512                    show: false,
4513                    arialabel: '2008 Filter, 1 verfügbares Produkt'
4514                },
4515                                                ],
4516
4517            get filteredItems() {
4518                res = this.items.filter(
4519                    i => i.label.toLowerCase().includes(this.search.toLowerCase())
4520                );
4521                if(this.search.toLowerCase().length > 0){
4522                    this.canShowShowAll = false;
4523                    res.forEach(function(i){
4524                        i.show = true;
4525                    });
4526                }
4527                else {
4528                    this.canShowShowAll = true;
4529                    this.hideAll();
4530                }
4531                return res;
4532            },
4533
4534            showAll(){
4535                this.showAllConstant = true;
4536                this.items.forEach(function(i){
4537                    i.show = true;
4538                });
4539            },
4540
4541            hideAll(){
4542                this.showAllConstant = false;
4543                let counter = 1;
4544                this.items.forEach(function(i){
4545                    if(counter <= 10){
4546                        i.show = true;
4547                    }
4548                    else {
4549                        i.show = false;
4550                    }
4551                    counter++;
4552                });
4553            }
4554        }" class="">
4555    <input
4556        x-show="canShowSearchField"
4557        type="search"
4558        x-model="search"
4559        placeholder="Suche"
4560        class="w-full form-input mb-3">
4561
4562    <ol x-show="open" class="w-full items" aria-label="Erscheinungsjahr&#x20;Filter&#x20;Optionen">
4563        <template x-for="item in filteredItems" :key="item.link">
4564            <li x-show="item.show">
4565                <a class="flex justify-between py-1 hover:text-black" x-bind:href="item.link"
4566                    :aria-label="item.arialabel"
4567                >
4568                    <span x-text="item.label"></span>
4569                    <span class="count text-primary" x-text="item.count"></span>
4570                </a>
4571            </li>
4572        </template>
4573        <div x-show="canShowShowAll">
4574            <button x-show="!showAllConstant" @click="showAll()"
4575                class="action submit primary btn btn-primary disabled:opacity-75">
4576                Mehr anzeigen            </button>
4577            <button x-show="showAllConstant" @click="hideAll()"
4578                class="action submit primary btn btn-primary disabled:opacity-75">
4579                Weniger anzeigen            </button>
4580        </div>
4581    </ol>
4582</div>                                                            </div>
4583                        </template>
4584                    </div>
4585                                                                </div>
4586    </div>
4587    
4587<script>
4588        function initLayeredNavigation() {
4589            return {
4590                isMobile: false,
4591                blockOpen: false,
4592                checkIsMobileResolution() {
4593                    this.isMobile = window.matchMedia('(max-width: 767px)').matches;
4594                }
4595            }
4596        }
4597    </script>
4597
4598</aside><div class="column main">
4599        <section class="py-8" id="product-list" aria-label="Product&#x20;list" tabindex="-1">
4600        
4600<script>
4601    function initToolbar_6ac221628a05b() {
4602        return {
4603            options: {"productListToolbarForm":{"mode":"product_list_mode","direction":"product_list_dir","order":"product_list_order","limit":"product_list_limit","modeDefault":"list","directionDefault":"asc","orderDefault":"name","limitDefault":10,"url":"https:\/\/www.govi.de\/apotheke\/pharmazeutische-beratung","formKey":"MHFk6olfWgubb4xR","post":false,"page":"p"}}.productListToolbarForm || {},
4604            getUrlParams: function () {
4605                let decode = window.decodeURIComponent,
4606                    urlPaths = this.options.url.split('?'),
4607                    urlParams = urlPaths[1] ? urlPaths[1].split('&') : [],
4608                    params = {},
4609                    parameters, i;
4610
4611                for (i = 0; i < urlParams.length; i++) {
4612                    parameters = urlParams[i].split('=');
4613                    params[decode(parameters[0])] = parameters[1] !== undefined ?
4614                        decode(parameters[1].replace(/\+/g, '%20')) :
4615                        '';
4616                }
4617
4618                return params;
4619            },
4620            getCurrentLimit: function () {
4621                return this.getUrlParams()[this.options.limit] || this.options.limitDefault;
4622            },
4623            getCurrentPage: function () {
4624                return this.getUrlParams()[this.options.page] || 1;
4625            },
4626            changeUrl(paramName, paramValue, defaultValue) {
4627                let urlPaths = this.options.url.split('?'),
4628                    baseUrl = urlPaths[0],
4629                    paramData = this.getUrlParams(),
4630                    currentPage = this.getCurrentPage(),
4631                    newPage;
4632
4633                /**
4634                 * calculates the page on which the first item of the current page will
4635                 * be with the new limit and sets that number as the new page
4636                 */
4637                if (currentPage > 1 && paramName === this.options.limit) {
4638                    newPage = Math.floor(this.getCurrentLimit() * (currentPage - 1) / paramValue) + 1;
4639
4640                    if (newPage > 1) {
4641                        paramData[this.options.page] = newPage;
4642                    } else {
4643                        delete paramData[this.options.page];
4644                    }
4645                }
4646
4647                paramData[paramName] = paramValue;
4648
4649                if (this.options.post) {
4650                    hyva.postForm({action: baseUrl, data: paramData});
4651                } else {
4652                    if (paramValue === defaultValue.toString()) {
4653                        delete paramData[paramName];
4654                    }
4655                    paramData = Object.keys(paramData).length === 0
4656                        ? ''
4657                        : '?' + (new URLSearchParams(paramData));
4658                    location.href = baseUrl + paramData
4659                }
4660            }
4661        }
4662    }
4663</script>
4663
4664    <div x-data="initToolbar_6ac221628a05b()"
4665         class="toolbar toolbar-products w-full flex flex-col xl:flex-row">
4666
4667        <div class="w-full xl:w-2/12 text-center xl:text-left mb-4">
4668            <p class="toolbar-amount text-sm leading-5 text-gray-700 w-full"
4669    id="toolbar-amount">
4670            Artikel <span class="toolbar-number">1</span>-<span class="toolbar-number">10</span> von <span class="toolbar-number">111</span>    </p>
4671        </div>
4672
4673        <div class="w-full xl:w-5/12 text-center xl:text-left mb-4">
4674            
4675    
4676    
4677    <div class="flex justify-center">
4678                    <nav class="inline-flex items-center pages" aria-label="pagination">
4679                <ol class="relative z-0 inline-flex shadow-sm items pages-items">
4680                    <li class="item pages-item-previous">
4681                                                                            <a
4682                                role="link"
4683                                class="previous relative inline-flex items-center text-sm font-medium leading-5 bg-white border border-gray-300 rounded-l-md px-3 py-2 text-gray-400
4684                                 border-gray-200"
4685                                aria-disabled="true"
4686                                aria-label="Zur&#xFC;ck"
4687                            >
4688                                <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" width="20" height="20" aria-hidden="true">
4689  <path stroke-linecap="round" stroke-linejoin="round" d="M15 19l-7-7 7-7"/>
4690</svg>
4691                            </a>
4692                                            </li>
4693
4694                    
4695                    
4696                                                                        <li class="item -ml-px">
4697                                <a
4698                                    href="https://www.govi.de/apotheke/pharmazeutische-beratung"
4699                                    class="page relative inline-flex items-center text-sm font-medium leading-5 bg-white border border-gray-300 transition duration-150 ease-in-out hover:text-gray-400 focus:z-10 focus:outline-none focus:shadow-outline-blue active:bg-gray-100 active:text-gray-500 z-10 px-4 py-2 text-c7 bg-white border-c7 hover:bg-c8 hover:text-white hover:border-c8 focus:outline-none focus:border-2 focus:border-c8 !font-bold"
4700                                    aria-current="page"
4701                                >
4702                                    <span class="sr-only label">
4703                                        Sie lesen gerade die Seite                                    </span>
4704                                    1                                </a>
4705                            </li>
4706                                                                                                <li class="item -ml-px">
4707                                <a
4708                                    href="https://www.govi.de/apotheke/pharmazeutische-beratung?p=2"
4709                                    class="page relative inline-flex items-center text-sm font-medium leading-5 bg-white border border-gray-300 transition duration-150 ease-in-out hover:text-gray-400 focus:z-10 focus:outline-none focus:shadow-outline-blue active:bg-gray-100 active:text-gray-500 px-4 py-2 text-c5 hover:bg-c8 hover:text-white hover:border-c8 focus:outline-none focus:border-2 focus:border-c8"
4710                                >
4711                                    <span class="sr-only label">Seite</span>
4712                                    <span>2</span>
4713                                </a>
4714                            </li>
4715                                                                                                <li class="item -ml-px">
4716                                <a
4717                                    href="https://www.govi.de/apotheke/pharmazeutische-beratung?p=3"
4718                                    class="page relative inline-flex items-center text-sm font-medium leading-5 bg-white border border-gray-300 transition duration-150 ease-in-out hover:text-gray-400 focus:z-10 focus:outline-none focus:shadow-outline-blue active:bg-gray-100 active:text-gray-500 px-4 py-2 text-c5 hover:bg-c8 hover:text-white hover:border-c8 focus:outline-none focus:border-2 focus:border-c8"
4719                                >
4720                                    <span class="sr-only label">Seite</span>
4721                                    <span>3</span>
4722                                </a>
4723                            </li>
4724                                                                                                <li class="item -ml-px">
4725                                <a
4726                                    href="https://www.govi.de/apotheke/pharmazeutische-beratung?p=4"
4727                                    class="page relative inline-flex items-center text-sm font-medium leading-5 bg-white border border-gray-300 transition duration-150 ease-in-out hover:text-gray-400 focus:z-10 focus:outline-none focus:shadow-outline-blue active:bg-gray-100 active:text-gray-500 px-4 py-2 text-c5 hover:bg-c8 hover:text-white hover:border-c8 focus:outline-none focus:border-2 focus:border-c8"
4728                                >
4729                                    <span class="sr-only label">Seite</span>
4730                                    <span>4</span>
4731                                </a>
4732                            </li>
4733                                                                                                <li class="item -ml-px">
4734                                <a
4735                                    href="https://www.govi.de/apotheke/pharmazeutische-beratung?p=5"
4736                                    class="page relative inline-flex items-center text-sm font-medium leading-5 bg-white border border-gray-300 transition duration-150 ease-in-out hover:text-gray-400 focus:z-10 focus:outline-none focus:shadow-outline-blue active:bg-gray-100 active:text-gray-500 px-4 py-2 text-c5 hover:bg-c8 hover:text-white hover:border-c8 focus:outline-none focus:border-2 focus:border-c8"
4737                                >
4738                                    <span class="sr-only label">Seite</span>
4739                                    <span>5</span>
4740                                </a>
4741                            </li>
4742                                            
4743                    
4744                    
4745                    <li class="item pages-item-next -ml-px">
4746                                                                                <a
4747                                href="https://www.govi.de/apotheke/pharmazeutische-beratung?p=2"
4748                                class="action  next relative inline-flex items-center text-sm font-medium leading-5 bg-white border border-gray-300 transition duration-150 ease-in-out hover:text-gray-400 focus:z-10 focus:outline-none focus:shadow-outline-blue active:bg-gray-100 active:text-gray-500 rounded-r-md px-3 py-2 text-gray-500 hover:bg-c8 hover:text-white hover:border-c8 focus:outline-none focus:border-2 focus:border-c8"
4749                                                                    aria-label="Weiter"
4750                                                            >
4751                                                                    <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" width="20" height="20" aria-hidden="true">
4752  <path stroke-linecap="round" stroke-linejoin="round" d="M9 5l7 7-7 7"/>
4753</svg>
4754                                                            </a>
4755                                            </li>
4756                </ol>
4757            </nav>
4758            </div>
4759
4760    
4761    
4762
4763        </div>
4764
4765        <div class="w-full xl:w-5/12 text-center xl:text-left mb-4 flex gap-2 justify-center xl:justify-end">
4766                            
4767                <div class="hidden modes w-20 order-1 col-span-1 sm:col-span-2 md:col-span-1 lg:col-span-2"></div>
4768    
4769                
4770    <div class="field limiter w-auto">
4771        <div class="control">
4772            <label class="text-sm label">
4773                <span aria-hidden="true">Zeige</span>
4774
4775                <select
4776                    data-role="limiter"
4777                    class="form-select limiter-options"
4778                    @change="changeUrl(
4779                        'product_list_limit',
4780                        $event.currentTarget.options[$event.currentTarget.selectedIndex].value,
4781                        options.limitDefault
4782                    )"
4783                    aria-label="Show&#x20;items&#x20;per&#x20;page"
4784                >
4785                                    <option value="5"
4786                        >
4787                        5                    </option>
4788                                    <option value="10"
4789                                                    selected="selected"
4790                        >
4791                        10                    </option>
4792                                    <option value="15"
4793                        >
4794                        15                    </option>
4795                                    <option value="20"
4796                        >
4797                        20                    </option>
4798                                    <option value="25"
4799                        >
4800                        25                    </option>
4801                                </select>
4802            </label>
4803        </div>
4804    </div>
4805                <div class="toolbar-sorter sorter w-auto relative">
4806    <select data-role="sorter" class="form-select sorter-options mr-3" 
4807        aria-label="Sortieren nach" @change="changeUrl(
4808                'product_list_order',
4809                $event.currentTarget.options[$event.currentTarget.selectedIndex].value,
4810                options.orderDefault
4811            )">
4812                    <option value="name"                 selected="selected" >
4813                Artikelname            </option>
4814                    <option value="price" >
4815                Preis            </option>
4816                    <option value="publishing_year" >
4817                Erscheinungsjahr            </option>
4818                    <option value="medium" >
4819                Medium            </option>
4820                    <option value="default_order" >
4821                Standard            </option>
4822            </select>
4823            <a title="Absteigend&#x20;sortieren" 
4824            href="#" class="action sorter-action sort-asc absolute top-3 -right-4"
4825            @click.prevent="changeUrl('product_list_dir', 'desc', options.directionDefault)">
4826            <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" width="24" height="24" role="img">
4827  <path stroke-linecap="round" stroke-linejoin="round" d="M3 4h13M3 8h9m-9 4h9m5-4v12m0 0l-4-4m4 4l4-4"/>
4828<title>Absteigend&amp;#x20;sortieren</title></svg>
4829        </a>
4830    </div>                    </div>
4831
4832    </div>
4833        <div class="flex flex-wrap md:flex-nowrap gap-x-8">
4834                    </div>
4835                <div class="products wrapper mode-list products-list">
4836            <div class="mx-auto pt-4 pb-12 grid gap-4 grid-cols-1 ">
4837                
4838    <form method="post" action="https://www.govi.de/checkout/cart/add/uenc/%25uenc%25/product/362/" class="item product product-item product_addtocart_form card card-interactive p-6 flex flex-col w-full
4839            lg:flex-row" >
4840        <input name="form_key" type="hidden" value="mZ059GnBxxEhpuDL" />        <input type="hidden" name="product" value="362" />
4841                                        <a href="https://www.govi.de/adhaerenzfoerderung"
4842                class="flex items-center min-h-[362px] product photo product-item-photo block mx-auto mb-3 !border-0 lg:w-2/6 lg:mb-0 lg:mr-5"
4843                tabindex="-1">
4844                <div class="min-h-[362px] flex items-center mx-auto">
4845    <img class="hover:shadow-xl object-contain my-0 mx-auto !border-0 shadow-xl"
4846        x-data=""
4847        @update-gallery-362.window="$root.src = $event.detail"
4848                src="https://www.govi.de/media/catalog/product/cache/5867885552aeb48e79c08ad63de6695b/9/7/9783774114807_adhaerenzfoerderung_1.jpg"
4849                loading="lazy"
4850                alt="Adh&#xE4;renzf&#xF6;rderung"
4851        title="Adh&#xE4;renzf&#xF6;rderung"
4852    />
4853</div>
4854            </a>
4855                <div class="product-info flex flex-col grow lg:w-4/6">
4856                        <div class="grid h-full">
4857                <div class="product-info--top self-start">
4858                    <div class="mt-1.5 items-center justify-center text-c7 text-lg text-center lg:text-left">
4859                        <a class="product-item-link font-bold" href="https://www.govi.de/adhaerenzfoerderung" :id="`slide-desc-362-${$id('slider-id')}`">
4860                            Adhärenzförderung                        </a>
4861                    </div>
4862                    <div class="max-w-xl items-center justify-center text-center lg:text-left">
4863                        Therapieziele gemeinsam erreichen                    </div>
4864                </div>
4865
4866                <div class="product-info--bottom self-end">
4867                    <!-- Swatches -->
4868                    <div class="self-center">
4869                        <div class="">
4870                                                                    
4870<script>
4871        function initConfigurableSwatchOptions_362() {
4872            const configurableOptionsComponent = initConfigurableOptions(
4873                '362',
4874                {"attributes":{"172":{"id":"172","code":"medium","label":"Medium","options":[{"id":"18","label":"Buch","products":["360"]},{"id":"28","label":"PDF","products":["361"]}],"position":"0"}},"template":"<%- data.price %>\u00a0\u20ac","currencyFormat":"%s\u00a0\u20ac","optionPrices":{"360":{"baseOldPrice":{"amount":24.205606476636},"oldPrice":{"amount":25.9},"basePrice":{"amount":24.205606476636},"finalPrice":{"amount":25.9},"tierPrices":[],"msrpPrice":{"amount":0},"isApproxPrice":false,"priceDescription":null,"availabilityText":"1-3 Werktage","availabilityStatusColor":"bg-green-500","showCartButton":true,"availabilityStatusColorRemove":["bg-green-500","bg-yellow-500","bg-red-500"]},"361":{"baseOldPrice":{"amount":24.205606476636},"oldPrice":{"amount":25.9},"basePrice":{"amount":24.205606476636},"finalPrice":{"amount":25.9},"tierPrices":[],"msrpPrice":{"amount":0},"isApproxPrice":false,"priceDescription":null,"availabilityText":"sofort lieferbar","availabilityStatusColor":"bg-green-500","showCartButton":true,"availabilityStatusColorRemove":["bg-green-500","bg-yellow-500","bg-red-500"]}},"priceFormat":{"pattern":"%s\u00a0\u20ac","precision":2,"requiredPrecision":2,"decimalSymbol":",","groupSymbol":".","groupLength":3,"integerRequired":false},"prices":{"baseOldPrice":{"amount":24.205606476636},"oldPrice":{"amount":25.9},"basePrice":{"amount":24.205606476636},"finalPrice":{"amount":25.9},"isApproxPrice":null,"priceDescription":null,"availabilityText":""},"productId":"362","chooseText":"W\u00e4hlen Sie eine Option...","images":[],"index":{"360":{"172":"18"},"361":{"172":"28"}},"salable":[],"canDisplayShowOutOfStockStatus":false,"preSelectedGallery":{"large":"https:\/\/www.govi.de\/media\/catalog\/product\/cache\/e9642b8663e035af4ac1dab57d716a20\/9\/7\/9783774114807_adhaerenzfoerderung_1.jpg","medium":"https:\/\/www.govi.de\/media\/catalog\/product\/cache\/5867885552aeb48e79c08ad63de6695b\/9\/7\/9783774114807_adhaerenzfoerderung_1.jpg","small":"https:\/\/www.govi.de\/media\/catalog\/product\/cache\/424503c00ed6969e89328f224efd3fa1\/9\/7\/9783774114807_adhaerenzfoerderung_1.jpg","position":"1","isMain":true,"gallery":{"472":{"large":"https:\/\/www.govi.de\/media\/catalog\/product\/cache\/e9642b8663e035af4ac1dab57d716a20\/9\/7\/9783774114807_adhaerenzfoerderung_1.jpg","medium":"https:\/\/www.govi.de\/media\/catalog\/product\/cache\/5867885552aeb48e79c08ad63de6695b\/9\/7\/9783774114807_adhaerenzfoerderung_1.jpg","small":"https:\/\/www.govi.de\/media\/catalog\/product\/cache\/424503c00ed6969e89328f224efd3fa1\/9\/7\/9783774114807_adhaerenzfoerderung_1.jpg","position":"1","isMain":true}}},"channel":"website","salesChannelCode":"amd_website","sku":{"360":"G000237-Buch","361":"G000237-PDF"},"product_availability":{"360":"1-3 Werktage","361":"sofort lieferbar"},"availabilityStatus":{"360":"1-3 Werktage","361":"sofort lieferbar"},"showCartButton":{"360":true,"361":true},"availabilityStatusColor":{"360":"bg-green-500","361":"bg-green-500"},"product_form":{"360":"kartoniert","361":""},"weight":{"360":"0,255 kg","361":""},"eudr_product_info":{"360":"","361":""},"description":{"360":"<p>Adh\u00e4renz, also die motivierte Mitarbeit des Patienten an therapeutischen Ma\u00dfnahmen ist auch ein Schl\u00fcssel zu einer erfolgreichen Arzneimitteltherapie. Die gemeinsam mit dem Behandelnden festgelegten Therapieziele werden durch kommunikative und schulende Konzepte dauerhaft begleitet; im Arzneimittelbereich geht es konkret um die Einnahmetreue des Patienten.<\/p>\r\n<p>Die Apotheker sind innerhalb der Versorgungskette in bester Position, um den Patienten nach Motivation, Kenntnissen und Hindernissen zu befragen und ma\u00dfgeschneiderte Hilfe zu leisten. Die Autorinnen zeigen, wie man in der Apotheke die pharmazeutische Dienstleistung \u00bbAdh\u00e4renzf\u00f6rderung\u00ab praktisch umsetzt. Sie beschreiben, wie die Adh\u00e4renz gemessen \u00a0werden kann, welche M\u00f6glichkeiten f\u00fcr ein Follow-Up bestehen und welche Ursachen und Folgen eine partielle oder vollst\u00e4ndige Non-Adh\u00e4renz haben kann.<\/p>\r\n<p>Adh\u00e4renz kann als das Resultat einer gelungenen und erfolgreichen Kommunikation zwischen dem Patienten und seinem Umfeld (Arzt, Apotheker, PTA, Familie, Freunde, Medien) betrachtet werden. Dazu vermittelt das Buch Kenntnisse zu Kommunikationstechniken, die in jedes Gespr\u00e4ch integriert werden k\u00f6nnen.<\/p>\r\n<p>\u00a0<\/p>\r\n<p><strong>Prof. Dr. rer. physiol. Martina Hahn <\/strong>ist als klinische Pharmazeutin spezialisiert auf Psychopharmakotherapie.<\/p>\r\n<p><strong>Prof. Dr. med. Sibylle C. Roll<\/strong> ist Fach\u00e4rztin f\u00fcr Psychiatrie und Psychotherapie mit Zusatzqualifikation Suchtmedizin.<\/p>\r\n<p>Zusammen entwickelten sie das Eichberger Modell zur Erh\u00f6hung der Arzneimitteltherapiesicherheit durch eine bessere Zusammenarbeit zwischen Apotheker, Arzt, Patient und Angeh\u00f6rigen.<\/p>","361":"<p>Adh\u00e4renz, also die motivierte Mitarbeit des Patienten an therapeutischen Ma\u00dfnahmen ist auch ein Schl\u00fcssel zu einer erfolgreichen Arzneimitteltherapie. Die gemeinsam mit dem Behandelnden festgelegten Therapieziele werden durch kommunikative und schulende Konzepte dauerhaft begleitet; im Arzneimittelbereich geht es konkret um die Einnahmetreue des Patienten.<\/p>\r\n<p>Die Apotheker sind innerhalb der Versorgungskette in bester Position, um den Patienten nach Motivation, Kenntnissen und Hindernissen zu befragen und ma\u00dfgeschneiderte Hilfe zu leisten. Die Autorinnen zeigen, wie man in der Apotheke die pharmazeutische Dienstleistung \u00bbAdh\u00e4renzf\u00f6rderung\u00ab praktisch umsetzt. Sie beschreiben, wie die Adh\u00e4renz gemessen \u00a0werden kann, welche M\u00f6glichkeiten f\u00fcr ein Follow-Up bestehen und welche Ursachen und Folgen eine partielle oder vollst\u00e4ndige Non-Adh\u00e4renz haben kann.<\/p>\r\n<p>Adh\u00e4renz kann als das Resultat einer gelungenen und erfolgreichen Kommunikation zwischen dem Patienten und seinem Umfeld (Arzt, Apotheker, PTA, Familie, Freunde, Medien) betrachtet werden. Dazu vermittelt das Buch Kenntnisse zu Kommunikationstechniken, die in jedes Gespr\u00e4ch integriert werden k\u00f6nnen.<\/p>\r\n<p>\u00a0<\/p>\r\n<p><strong>Prof. Dr. rer. physiol. Martina Hahn <\/strong>ist als klinische Pharmazeutin spezialisiert auf Psychopharmakotherapie.<\/p>\r\n<p><strong>Prof. Dr. med. Sibylle C. Roll<\/strong> ist Fach\u00e4rztin f\u00fcr Psychiatrie und Psychotherapie mit Zusatzqualifikation Suchtmedizin.<\/p>\r\n<p>Zusammen entwickelten sie das Eichberger Modell zur Erh\u00f6hung der Arzneimitteltherapiesicherheit durch eine bessere Zusammenarbeit zwischen Apotheker, Arzt, Patient und Angeh\u00f6rigen.<\/p>"},"isbn":{"360":"978-3-7741-1480-7","361":"978-3-7741-1481-4"},"article_number":{"360":"00010492","361":"00040492"},"pzn":{"360":"","361":""},"series":{"360":"","361":""},"edition_stand_issue_number":{"360":"","361":""},"publishing_year":{"360":"2020","361":"2020"},"pages_maps_sheets":{"360":"112 S.","361":"112 S."},"illustrations":{"360":"32 Abb.","361":"32 Abb."},"tables":{"360":"6 Tab.","361":"6 Tab."},"components":{"360":"","361":""},"measure":{"360":"17 x 24 x 0,6 cm","361":""},"product_safety_address":{"360":"Avoxa- Mediengruppe Deutscher Apotheker GmbH<br>Carl-Mannich-Str. 26, 65760 Eschborn<br>
4874[email protected]","361":"Avoxa- Mediengruppe Deutscher Apotheker GmbH<br>Carl-Mannich-Str. 26, 65760 Eschborn<br>[email protected]"},"product_safety_additional_info":{"360":"","361":""},"copy_protection":{"360":"","361":"mit Wasserzeichen"},"file_size":{"360":"","361":""},"issn":{"360":"","361":""},"rights_management":{"360":"","361":""},"system_requirements":{"360":"","361":""},"defaultValues":{"172":"18"}}            );
4875            const swatchOptionsComponent = initSwatchOptions({"172":{"18":{"type":"0","value":"Buch","label":"Buch"},"28":{"type":"0","value":"PDF","label":"PDF"},"additional_data":"{\"swatch_input_type\":\"text\",\"update_product_preview_image\":\"1\",\"use_product_image_for_swatch\":0}"}});
4876
4877            return Object.assign(
4878                configurableOptionsComponent,
4879                swatchOptionsComponent,
4880                {
4881                    mediaCallback: "https\u003A\u002F\u002Fwww.govi.de\u002Fswatches\u002Fajax\u002Fmedia\u002F",
4882                    changeOption(optionId, value, skipUpdateGallery) {
4883                        if (value === '') {
4884                            return;                             this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
4885                        } else {
4886                            this.selectedValues[optionId] = value;
4887                        }
4888                        this.findSimpleIndex();
4889                        this.findAllowedAttributeOptions();
4890                        this.updatePrices();
4891                        !skipUpdateGallery && this.updateGallery();
4892
4893                         const candidates = this.findProductIdsForPartialSelection(this.selectedValues);
4894
4895                                                window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
4896                            detail: {
4897                                productId: this.productId,
4898                                optionId,
4899                                value,
4900                                productIndex: this.productIndex,
4901                                selectedValues: this.selectedValues,
4902                                candidates: candidates,
4903                                skuCandidates: Object.values(candidates).map(id => this.optionConfig.sku?.[id] ?? null).filter(Boolean),
4904                            }
4905                        }));
4906                    },
4907                    updateGallery() {
4908                        if (!this.productIndex) {
4909                            return;
4910                        }
4911
4912                        fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
4913                                method: 'GET',
4914                                headers: {
4915                                    'Content-Type': 'application/json',
4916                                    'X-Requested-With': 'XMLHttpRequest'
4917                                }
4918                            }
4919                        ).then(response => {
4920                                return response.json()
4921                            }
4922                        ).then(data => {
4923                            if (data.errors) {
4924                                // non critical failure only console logged
4925                                console.warn(data.errors);
4926                            } else {
4927                                const image = data && data.medium;
4928
4929                                image && window.dispatchEvent(
4930                                    new CustomEvent(
4931                                        "update-gallery-362",
4932                                        {detail: image}
4933                                    )
4934                                );
4935                            }
4936                        }).catch(error => {
4937                            console.warn(error)
4938                        });
4939                    },
4940                    preselectQuerystringItems() {
4941                        // pre-select option like ?size=167
4942                        const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
4943                        Object.values(this.optionConfig.attributes).map(attribute => {
4944                            // Don't update images on load, since PLPs already set the main image to the selected options
4945                            const skipUpdateGallery = true;
4946                            urlQueryParams.get(attribute.code) &&
4947                            this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
4948                        });
4949                    },
4950                    preselectItemsBasedOnLocation(getLocationValue) {
4951                        Object.values(this.optionConfig.attributes).map(attribute => {
4952                            if(getLocationValue(attribute)){
4953                                this.changeOption(attribute.id, getLocationValue(attribute))
4954                            }
4955                        });
4956                    },
4957                    focusOption(productId,selectedOptionId){
4958                        let time_362 = setInterval(
4959                            function(){
4960                                if(document.getElementById('attribute-option-' + productId + '-' + selectedOptionId) !== null){
4961                                    document.getElementById('attribute-option-' + productId + '-' + selectedOptionId).click();
4962                                    document.getElementById('attribute-option-' + productId + '-' + selectedOptionId).focus();
4963                                    clearInterval(time_362);
4964                                }
4965                            }, 50
4966                        );
4967                    },
4968                    onGetCartData(data) {
4969                        this.preselectCartItems(data);
4970                        this.preselectQuerystringItems();
4971                        this.preselectLocationHashItems();
4972                                                this.focusOption(362, 18);
4973                                            },
4974                    updatePrices() {
4975                        const value = this.productIndex ?
4976                            this.optionConfig.optionPrices[this.productIndex] :
4977                            this.optionConfig.prices;
4978
4979                        let hidePriceLabel = this.productIndex ? true : false;
4980
4981                        window.dispatchEvent(
4982                            new CustomEvent(
4983                                "update-prices-" + this.productId,
4984                                {
4985                                    detail: Object.assign(
4986                                        value,
4987                                        {
4988                                            isMinimalPrice: this.calculateIsMinimalPrice(),
4989                                            hidePriceLabel: hidePriceLabel,
4990                                            isApproxPrice: this.optionConfig.optionPrices[this.productIndex]['isApproxPrice'],
4991                                            availabilityText: this.optionConfig.optionPrices[this.productIndex]['availabilityText'],
4992                                            priceDescription: this.optionConfig.optionPrices[this.productIndex]['priceDescription']
4993                                        }
4994                                    )
4995                                }
4996                            )
4997                        );
4998
4999                    },
5000                    mouseDown: false,
5001                    startX: 0,
5002                    maxScroll: 0,
5003                    scrollLeft: null,
5004                    slider: null,
5005                    scrollEvents: {
5006                        ['@mousedown'](e) {
5007                            this.slider = e.target.closest('.snap');
5008                            if (!this.slider) {
5009                                return;
5010                            }
5011                            this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
5012                            this.startX = e.pageX - this.slider.offsetLeft;
5013                            this.scrollLeft = this.slider.scrollLeft;
5014                            this.mouseDown = true;
5015                        },
5016                        ['@mouseout.self']() {
5017                            this.mouseDown = false;
5018                        },
5019                        ['@mouseup']() {
5020                            this.mouseDown = false;
5021                        },
5022                        ['@mousemove'](e) {
5023                            e.preventDefault();
5024                            if (!this.mouseDown) {
5025                                return;
5026                            }
5027                            const x = e.pageX - this.slider.offsetLeft;
5028                            const scroll = x - this.startX;
5029                            const scrollLeft = this.scrollLeft - scroll;
5030
5031                            if (scrollLeft > this.maxScroll) {
5032                                this.slider.scrollLeft = this.maxScroll;
5033                                return
5034                            }
5035                            this.slider.scrollLeft = this.scrollLeft - scroll;
5036                        },
5037                        ['@onselectstart']() {
5038                            return false;
5039                        }
5040                    },
5041                    resizeEvent() {
5042                        Array.from(this.$root.querySelectorAll('.snap')).forEach(sli
5042der => {
5043                            slider.scrollLeft = 0;
5044                        })
5045                    }
5046                }
5047            );
5048        }
5049
5050    </script>
5050
5051
5052<div x-data="initConfigurableSwatchOptions_362()"
5053     x-defer="intersect"
5054     x-init="findAllowedAttributeOptions()"
5055     @private-content-loaded.window="onGetCartData($event.detail.data)"
5056     @resize.window="resizeEvent()"
5057     class="relative"
5058>
5059    <div>
5060                                
5061                    <div class="swatch-attribute border-container
5062            medium"
5063        >
5064            <div class="w-full overflow-x-hidden swatch-attribute-options min-h-14 items-end">
5065                <div class="flex flex-wrap gap-y-4 w-full overflow-auto snap items-center py-1"
5066                    id="attribute-label-362-172"
5067                    role="radiogroup"
5068                    x-bind="scrollEvents"
5069                    aria-label="Medium"
5070                >
5071                    <template x-for="(item, index) in optionConfig.attributes[172].options"
5072                              :key="item.id"
5073                    >
5074                        
5075<div x-id="['attribute-option-362-'+item.id]">
5076    <template x-if="optionIsEnabled(172, item.id) && optionIsActive(172, item.id)">
5077        <label
5078            :for="$id('attribute-option-362-'+item.id)"
5079            class="swatch-option relative border-3 text-c7 border-c7 cursor-pointer select-none product-option-value-label "
5080            :class="{
5081                'bg-white text-c5 border-c5 !border-3 hover:!bg-c8 hover:!text-white hover:!border-c8 hover:!border-3 font-bold':
5082                    (selectedValues[172] === item.id),
5083                '!border-c5 bg-white !text-c5 hover:!bg-c8 hover:!text-white hover:!border-c8':
5084                    (selectedValues[172] !== item.id),
5085                'w-6 h-6' : !isTextSwatch(172, item.id),
5086                'ring-2 ring-c8' : focusedLabel === item.id,
5087                'bg-white' : focusedLabel === item.id
5088            }"
5089            :style="getSwatchBackgroundStyle('172',item.id)"
5090                    >
5091            <input
5092                :id="$id('attribute-option-362-'+item.id)"
5093                :value="item.id"
5094                name="super_attribute[172]"
5095                type="radio"
5096                class="inline-block absolute p-0 border-0 focus:border-0 focus:ring-0 product-option-value-input"
5097                style="z-index:-1"
5098                x-on:focus="focusLabel(item.id)"
5099                x-on:blur="blurLabel()"
5100                x-on:change="changeOption(172, $event.target.value)"
5101                x-on:click="clearOptionIfActive(172, item.id)"
5102                x-model="selectedValues[172]"
5103                :required="getAllowedAttributeOptions(172).filter(
5104                    attributeOption => selectedValues[attributeOption]
5105                ).length === 0"
5106                :aria-label="getSwatchText(172, item.id)"
5107                aria-describedby="attribute-label-362-172"
5108            >
5109            <template x-if="isTextSwatch(172, item.id)">
5110                <div
5111                    x-html="getSwatchText(172, item.id)"
5112                    class="whitespace-nowrap"
5113                    aria-hidden="true"
5114                ></div>
5115            </template>
5116        </label>
5117    </template>
5118
5119    <template x-if="optionIsEnabled(172, item.id) && !optionIsActive(172, item.id)">
5120        <div
5121            class="relative border-3 shadow-sm opacity-50 cursor-pointer select-none border-container-darker swatch-option bg-container-lighter"
5122            :class="{
5123                                                        'w-6 h-6' : !isTextSwatch(172, item.id),
5124                                                    }"
5125            :style="getSwatchBackgroundStyle('172',item.id)"
5126        >
5127            <div x-html="getSwatchText(172, item.id)"
5128                 class="whitespace-nowrap"
5129                 :class="{ 'sr-only' : !isTextSwatch(172, item.id) }"
5130            ></div>
5131            <svg class="absolute inset-0 w-full h-full text-gray-500 bg-white bg-opacity-25">
5132                <line x1="0" y1="100%" x2="100%" y2="0" class="stroke-current stroke-1"></line>
5133            </svg>
5134        </div>
5135    </template>
5136</div>
5137                    </template>
5138                </div>
5139            </div>
5140        </div>
5141            </div>
5142    </div>
5143                                                    </div>
5144                                                                                                <div class="items-center justify-center text-center lg:text-left">
5145                            <p class="flex items-center align-middle available gap-x-2 stock" title="Verfügbarkeit">
5146                                <span id="product-availability-status-362"
5147                                    class="w-3 h-3 rounded-full flex-shrink-0
5148                                    ">
5149                                </span>
5150                                <span id="product-availability-362">
5151                                                                    </span>
5152                            </p>
5153                        </div>
5154
5155                                                                                                                                                    </div>
5156                    
5156<script>
5157                        function initPriceBox__6ac2172f7cc13() {
5158                            return {
5159                                updatePrice(priceData) {
5160                                    const regularPriceLabel = this.$root.querySelector('.normal-price .price-label');
5161                                    const approxPriceLabel = this.$root.querySelector('.normal-price .approx-price');
5162                                    const priceDescriptionLabel = this.$root.querySelector('.normal-price .price-description');
5163                                    const regularPriceElement = this.$root.querySelector('.normal-price [data-price-type=finalPrice].price-wrapper .price');
5164                                    const basePriceElement = this.$root.querySelector('.normal-price [data-price-type=basePrice].price-wrapper .price');
5165                                    if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
5166                                        regularPriceLabel.classList.add('hidden');
5167                                    } else {
5168                                        regularPriceLabel.classList.remove('hidden');
5169                                    }
5170                                    regularPriceElement && (regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount));
5171                                    basePriceElement && (basePriceElement.innerText = hyva.formatPrice(priceData.basePrice.amount));
5172
5173                                    const hidePriceLabel = priceData.hidePriceLabel;
5174                                    if (hidePriceLabel) {
5175                                        regularPriceLabel.classList.add('hidden');
5176                                    } else {
5177                                        regularPriceLabel.classList.remove('hidden');
5178                                    }
5179
5180                                    const isApproxPrice = priceData.isApproxPrice;
5181                                    if (!isApproxPrice) {
5182                                        approxPriceLabel.classList.add('hidden');
5183                                    } else {
5184                                        approxPriceLabel.classList.remove('hidden');
5185                                    }
5186
5187                                    document.getElementById('product-availability-' +
5188                                        362).innerHTML = priceData.availabilityText;
5189
5190                                    priceData.availabilityStatusColorRemove.forEach(function(cssClass, index) {
5191                                        document.getElementById('product-availability-status-' +
5192                                                362)
5193                                            .classList.remove(cssClass);
5194                                    });
5195
5196                                    document.getElementById('product-availability-status-' +
5197                                            362)
5198                                        .classList.add(priceData.availabilityStatusColor);
5199
5200                                    priceDescriptionLabel.innerHTML = priceData.priceDescription;
5201
5202                                    regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
5203                                }
5204                            }
5205                        }
5206
5207                        function initCartButtonData__6ac2172f7cc13() {
5208                            return {
5209                                canShowCartButton: true,
5210                                updateCartButton(priceData) {
5211                                    this.canShowCartButton = priceData.showCartButton;
5212                                }
5213                            }
5214                        }
5215                    </script>
5215
5216                    <div class="sm:flex items-end">
5217                        <div class="w-full sm:6/12 " x-data="initPriceBox__6ac2172f7cc13()" @update-prices-362.window="updatePrice($event.detail);">
5218                            <div class="price-box price-final_price" data-role="priceBox" data-product-id="362" data-price-box="product-id-362"><span class="normal-price">
5219    
5220<span
5221    x-data x-id="['product\u002Dprice\u002D362']"    class="price-container price-final_price&#x20;tax&#x20;weee"
5222        >
5223    <span class="price-description"></span>
5224            <span class="price-label">Ab</span>
5225                <span class="approx-price">ca. </span>
5226        <span  :id="$id('product\u002Dprice\u002D362')"                data-price-amount="25.9"
5227        data-price-type="finalPrice"
5228        class="price-wrapper "
5229    ><span class="price">25,90 €</span></span>
5230        </span>
5231</span>
5232
5233
5234</div><div class="price-details">
5235    <span class="tax-details text-s text-c5">
5236        inkl. MwSt., ggf. zzgl. <a class="underline" href="https://www.govi.de/liefer-und-versandkosten">Versand</a>    </span>
5237</div>                        </div>
5238                                                                        <div class="w-full sm:6/12 mt-2">
5239                            <div class="block text-right">
5240                                                                    <button class="w-auto btn btn-primary justify-end lg:justify-center inline-block
5241                                        mr-1"
5242                                        aria-label="In&#x20;den&#x20;Warenkorb&#x20;Adh&#xE4;renzf&#xF6;rderung"
5243                                        title="In&#x20;den&#x20;Warenkorb"
5244                                        x-data="initCartButtonData__6ac2172f7cc13()"
5245                                        @update-prices-362.window="updateCartButton($event.detail);"
5246                                        :class="{ invisible: canShowCartButton !== true }">
5247                                        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="h-6 w-6 border-current inline" width="25" height="25" aria-hidden="true">
5248  <path stroke-linecap="round" stroke-linejoin="round" d="M3 3h2l.4 2M7 13h10l4-8H5.4M7 13L5.4 5M7 13l-2.293 2.293c-.63.63-.184 1.707.707 1.707H17m0 0a2 2 0 100 4 2 2 0 000-4zm-8 2a2 2 0 11-4 0 2 2 0 014 0z"/>
5249</svg>
5250                                        <span class="ml-2 inline hidden  lg:inline">
5251                                            In den Warenkorb                                        </span>
5252                                    </button>
5253                                                                                                    <button x-data="initWishlist()" @click.prevent="addToWishlist(362)"
5254                                        aria-label="Zur&#x20;Wunschliste&#x20;hinzuf&#xFC;gen"
5255                                        title="Zur&#x20;Wunschliste&#x20;hinzuf&#xFC;gen"
5256                                        type="button" class="py-3 mt-2 btn-secondary inline-block">
5257                                        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="h-6 w-6 border-current inline" width="25" height="25" aria-hidden="true">
5258  <path stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-3 7h3m-3 4h3m-6-4h.01M9 16h.01"/>
5259</svg>
5260                                        <span class="hidden lg:ml-2 lg:inline">
5261                                            Zur Wunschliste hinzufügen                                        </span>
5262                                    </button>
5263                                                            </div>
5264                        </div>
5265                    </div>
5266
5267                </div>
5268            </div>
5269        </div>
5270            </form>
5271
5272    <form method="post" action="https://www.govi.de/checkout/cart/add/uenc/%25uenc%25/product/1195/" class="item product product-item product_addtocart_form card card-interactive p-6 flex flex-col w-full
5273            lg:flex-row" >
5274        <input name="form_key" type="hidden" value="ahzfET2gAjRQSSwr" />        <input type="hidden" name="product" value="1195" />
5275                                        <a href="https://www.govi.de/akute-und-chronische-herzinsuffizienz-buch"
5276                class="flex items-center min-h-[362px] product photo product-item-photo block mx-auto mb-3 !border-0 lg:w-2/6 lg:mb-0 lg:mr-5"
5277                tabindex="-1">
5278                <div class="min-h-[362px] flex items-center mx-auto">
5279    <img class="hover:shadow-xl object-contain my-0 mx-auto !border-0 shadow-xl"
5280        x-data=""
5281        @update-gallery-1195.window="$root.src = $event.detail"
5282                src="https://www.govi.de/media/catalog/product/cache/5867885552aeb48e79c08ad63de6695b/9/5/9561021400001a.jpg"
5283                loading="lazy"
5284                alt="Akute&#x20;und&#x20;chronische&#x20;Herzinsuffizienz"
5285        title="Akute&#x20;und&#x20;chronische&#x20;Herzinsuffizienz"
5286    />
5287</div>
5288            </a>
5289                <div class="product-info flex flex-col grow lg:w-4/6">
5290                        <div class="grid h-full">
5291                <div class="product-info--top self-start">
5292                    <div class="mt-1.5 items-center justify-center text-c7 text-lg text-center lg:text-left">
5293                        <a class="product-item-link font-bold" href="https://www.govi.de/akute-und-chronische-herzinsuffizienz-buch" :id="`slide-desc-1195-${$id('slider-id')}`">
5294                            Akute und chronische Herzinsuffizienz                        </a>
5295                    </div>
5296                    <div class="max-w-xl items-center justify-center text-center lg:text-left">
5297                                            </div>
5298                </div>
5299
5300                <div class="product-info--bottom self-end">
5301                    <!-- Swatches -->
5302                    <div class="self-center">
5303                        <div class="">
5304                                                                                                                </div>
5305                                                                            <div class="swatch-attribute border-container medium">
5306                                <div class="w-full overflow-x-hidden swatch-attribute-options min-h-14">
5307                                    <div class="flex flex-nowrap w-full overflow-auto snap items-end py-1">
5308                                        <label class="swatch-option relative border-3 cursor-pointer
5309                                            product-option-value-label text-black font-bold border-black !border-3 bg-white hover:bg-c8 hover:border-c8 hover:text-white">
5310                                            Buch                                        </label>
5311                                    </div>
5312                                </div>
5313                            </div>
5314                                                                        <div class="items-center justify-center text-center lg:text-left">
5315                            <p class="flex items-center align-middle available gap-x-2 stock" title="Verfügbarkeit">
5316                                <span id="product-availability-status-1195"
5317                                    class="w-3 h-3 rounded-full flex-shrink-0
5318                                    bg-green-500">
5319                                </span>
5320                                <span id="product-availability-1195">
5321                                    1-3 Werktage                                </span>
5322                            </p>
5323                        </div>
5324
5325                                                                    </div>
5326                    
5326<script>
5327                        function initPriceBox__6ac21cea90256() {
5328                            return {
5329                                updatePrice(priceData) {
5330                                    const regularPriceLabel = this.$root.querySelector('.normal-price .price-label');
5331                                    const approxPriceLabel = this.$root.querySelector('.normal-price .approx-price');
5332                                    const priceDescriptionLabel = this.$root.querySelector('.normal-price .price-description');
5333                                    const regularPriceElement = this.$root.querySelector('.normal-price [data-price-type=finalPrice].price-wrapper .price');
5334                                    const basePriceElement = this.$root.querySelector('.normal-price [data-price-type=basePrice].price-wrapper .price');
5335                                    if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
5336                                        regularPriceLabel.classList.add('hidden');
5337                                    } else {
5338                                        regularPriceLabel.classList.remove('hidden');
5339                                    }
5340                                    regularPriceElement && (regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount));
5341                                    basePriceElement && (basePriceElement.innerText = hyva.formatPrice(priceData.basePrice.amount));
5342
5343                                    const hidePriceLabel = priceData.hidePriceLabel;
5344                                    if (hidePriceLabel) {
5345                                        regularPriceLabel.classList.add('hidden');
5346                                    } else {
5347                                        regularPriceLabel.classList.remove('hidden');
5348                                    }
5349
5350                                    const isApproxPrice = priceData.isApproxPrice;
5351                                    if (!isApproxPrice) {
5352                                        approxPriceLabel.classList.add('hidden');
5353                                    } else {
5354                                        approxPriceLabel.classList.remove('hidden');
5355                                    }
5356
5357                                    document.getElementById('product-availability-' +
5358                                        1195).innerHTML = priceData.availabilityText;
5359
5360                                    priceData.availabilityStatusColorRemove.forEach(function(cssClass, index) {
5361                                        document.getElementById('product-availability-status-' +
5362                                                1195)
5363                                            .classList.remove(cssClass);
5364                                    });
5365
5366                                    document.getElementById('product-availability-status-' +
5367                                            1195)
5368                                        .classList.add(priceData.availabilityStatusColor);
5369
5370                                    priceDescriptionLabel.innerHTML = priceData.priceDescription;
5371
5372                                    regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
5373                                }
5374                            }
5375                        }
5376
5377                        function initCartButtonData__6ac21cea90256() {
5378                            return {
5379                                canShowCartButton: true,
5380                                updateCartButton(priceData) {
5381                                    this.canShowCartButton = priceData.showCartButton;
5382                                }
5383                            }
5384                        }
5385                    </script>
5385
5386                    <div class="sm:flex items-end">
5387                        <div class="w-full sm:6/12 " x-data="initPriceBox__6ac21cea90256()" @update-prices-1195.window="updatePrice($event.detail);">
5388                            <div class="price-box price-final_price" data-role="priceBox" data-product-id="1195" data-price-box="product-id-1195">
5389    
5390<span
5391    x-data x-id="['product\u002Dprice\u002D1195']"    class="price-container price-final_price&#x20;tax&#x20;weee"
5392        >
5393    <span class="price-description"></span>
5394            <span  :id="$id('product\u002Dprice\u002D1195')"                data-price-amount="4.99"
5395        data-price-type="finalPrice"
5396        class="price-wrapper "
5397    ><span class="price">4,99 €</span></span>
5398        </span>
5399
5400</div><div class="price-details">
5401    <span class="tax-details text-s text-c5">
5402        inkl. MwSt., ggf. zzgl. <a class="underline" href="https://www.govi.de/liefer-und-versandkosten">Versand</a>    </span>
5403</div>                        </div>
5404                                                                        <div class="w-full sm:6/12 mt-2">
5405                            <div class="block text-right">
5406                                                                    <button class="w-auto btn btn-primary justify-end lg:justify-center inline-block
5407                                        mr-1"
5408                                        aria-label="In&#x20;den&#x20;Warenkorb&#x20;Akute&#x20;und&#x20;chronische&#x20;Herzinsuffizienz"
5409                                        title="In&#x20;den&#x20;Warenkorb"
5410                                        x-data="initCartButtonData__6ac21cea90256()"
5411                                        @update-prices-1195.window="updateCartButton($event.detail);"
5412                                        :class="{ invisible: canShowCartButton !== true }">
5413                                        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="h-6 w-6 border-current inline" width="25" height="25" aria-hidden="true">
5414  <path stroke-linecap="round" stroke-linejoin="round" d="M3 3h2l.4 2M7 13h10l4-8H5.4M7 13L5.4 5M7 13l-2.293 2.293c-.63.63-.184 1.707.707 1.707H17m0 0a2 2 0 100 4 2 2 0 000-4zm-8 2a2 2 0 11-4 0 2 2 0 014 0z"/>
5415</svg>
5416                                        <span class="ml-2 inline hidden  lg:inline">
5417                                            In den Warenkorb                                        </span>
5418                                    </button>
5419                                                                                                    <button x-data="initWishlist()" @click.prevent="addToWishlist(1195)"
5420                                        aria-label="Zur&#x20;Wunschliste&#x20;hinzuf&#xFC;gen"
5421                                        title="Zur&#x20;Wunschliste&#x20;hinzuf&#xFC;gen"
5422                                        type="button" class="py-3 mt-2 btn-secondary inline-block">
5423                                        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="h-6 w-6 border-current inline" width="25" height="25" aria-hidden="true">
5424  <path stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-3 7h3m-3 4h3m-6-4h.01M9 16h.01"/>
5425</svg>
5426                                        <span class="hidden lg:ml-2 lg:inline">
5427                                            Zur Wunschliste hinzufügen                                        </span>
5428                                    </button>
5429                                                            </div>
5430                        </div>
5431                    </div>
5432
5433                </div>
5434            </div>
5435        </div>
5436            </form>
5437
5438    <form method="post" action="https://www.govi.de/checkout/cart/add/uenc/%25uenc%25/product/472/" class="item product product-item product_addtocart_form card card-interactive p-6 flex flex-col w-full
5439            lg:flex-row" >
5440        <input name="form_key" type="hidden" value="abrbWUee81MFVvgE" />        <input type="hidden" name="product" value="472" />
5441                                        <a href="https://www.govi.de/alkohol-coffein-nikotin"
5442                class="flex items-center min-h-[362px] product photo product-item-photo block mx-auto mb-3 !border-0 lg:w-2/6 lg:mb-0 lg:mr-5"
5443                tabindex="-1">
5444                <div class="min-h-[362px] flex items-center mx-auto">
5445    <img class="hover:shadow-xl object-contain my-0 mx-auto !border-0 shadow-xl"
5446        x-data=""
5447        @update-gallery-472.window="$root.src = $event.detail"
5448                src="https://www.govi.de/media/catalog/product/cache/5867885552aeb48e79c08ad63de6695b/9/7/9783774113589_alkohol_coffein_nikotin.jpg"
5449                loading="lazy"
5450                alt="Alkohol,&#x20;Coffein,&#x20;Nikotin"
5451        title="Alkohol,&#x20;Coffein,&#x20;Nikotin"
5452    />
5453</div>
5454            </a>
5455                <div class="product-info flex flex-col grow lg:w-4/6">
5456                        <div class="grid h-full">
5457                <div class="product-info--top self-start">
5458                    <div class="mt-1.5 items-center justify-center text-c7 text-lg text-center lg:text-left">
5459                        <a class="product-item-link font-bold" href="https://www.govi.de/alkohol-coffein-nikotin" :id="`slide-desc-472-${$id('slider-id')}`">
5460                            Alkohol, Coffein, Nikotin                        </a>
5461                    </div>
5462                    <div class="max-w-xl items-center justify-center text-center lg:text-left">
5463                        Praxiswissen für die Patientenberatung                    </div>
5464                </div>
5465
5466                <div class="product-info--bottom self-end">
5467                    <!-- Swatches -->
5468                    <div class="self-center">
5469                        <div class="">
5470                                                                    
5470<script>
5471        function initConfigurableSwatchOptions_472() {
5472            const configurableOptionsComponent = initConfigurableOptions(
5473                '472',
5474                {"attributes":{"172":{"id":"172","code":"medium","label":"Medium","options":[{"id":"18","label":"Buch","products":["470"]},{"id":"28","label":"PDF","products":["471"]}],"position":"0"}},"template":"<%- data.price %>\u00a0\u20ac","currencyFormat":"%s\u00a0\u20ac","optionPrices":{"470":{"baseOldPrice":{"amount":34.485980308411},"oldPrice":{"amount":36.9},"basePrice":{"amount":34.485980308411},"finalPrice":{"amount":36.9},"tierPrices":[],"msrpPrice":{"amount":0},"isApproxPrice":false,"priceDescription":null,"availabilityText":"1-3 Werktage","availabilityStatusColor":"bg-green-500","showCartButton":true,"availabilityStatusColorRemove":["bg-green-500","bg-yellow-500","bg-red-500"]},"471":{"baseOldPrice":{"amount":33.551400869159},"oldPrice":{"amount":35.9},"basePrice":{"amount":33.551400869159},"finalPrice":{"amount":35.9},"tierPrices":[],"msrpPrice":{"amount":0},"isApproxPrice":false,"priceDescription":null,"availabilityText":"sofort lieferbar","availabilityStatusColor":"bg-green-500","showCartButton":true,"availabilityStatusColorRemove":["bg-green-500","bg-yellow-500","bg-red-500"]}},"priceFormat":{"pattern":"%s\u00a0\u20ac","precision":2,"requiredPrecision":2,"decimalSymbol":",","groupSymbol":".","groupLength":3,"integerRequired":false},"prices":{"baseOldPrice":{"amount":33.551400869159},"oldPrice":{"amount":35.9},"basePrice":{"amount":33.551400869159},"finalPrice":{"amount":35.9},"isApproxPrice":null,"priceDescription":null,"availabilityText":""},"productId":"472","chooseText":"W\u00e4hlen Sie eine Option...","images":[],"index":{"470":{"172":"18"},"471":{"172":"28"}},"salable":[],"canDisplayShowOutOfStockStatus":false,"channel":"website","salesChannelCode":"amd_website","sku":{"470":"G000303-Buch","471":"G000303-PDF"},"product_availability":{"470":"1-3 Werktage","471":"sofort lieferbar"},"availabilityStatus":{"470":"1-3 Werktage","471":"sofort lieferbar"},"showCartButton":{"470":true,"471":true},"availabilityStatusColor":{"470":"bg-green-500","471":"bg-green-500"},"product_form":{"470":"kartoniert","471":""},"weight":{"470":"0,605 kg","471":""},"eudr_product_info":{"470":"","471":""},"description":{"470":"<p>Von den Genussmitteln Coffein, Alkohol und Nikotin schaden zumindest die letzteren unbestritten betr\u00e4chtlich der Gesundheit. Trotzdem werden sie von vielen Menschen regelm\u00e4\u00dfig konsumiert. Ihre Wirkungen auf den gesamten Organismus sind vielf\u00e4ltig \u2013 bis hin zu Wechselwirkungen mit Arzneimitteln.<\/p>\r\n<p>Die Autoren f\u00fchren das Fachwissen zu Alkohol, Coffein und Nikotin f\u00fcr das t\u00e4gliche Beratungsgespr\u00e4ch zusammen:<\/p>\r\n<ul>\r\n<li>Wirkungen auf K\u00f6rperfunktionen und besonders empfindliche Organe<\/li>\r\n<li>Geschlechts- und altersbedingte Unterschiede<\/li>\r\n<li>Risiken und Folgeerkrankungen<\/li>\r\n<li>Abh\u00e4ngigkeit inklusive Therapie und Pr\u00e4vention<\/li>\r\n<li>Wechselwirkungen mit Arzneimitteln wie z. B. Analgetika, Antibiotika, Antidiabetika, Antikoagulanzien und Psychopharmaka<\/li>\r\n<li>Informationen zu rechtlichen Aspekten in Beruf und Verkehr sowie Hinweise auf Beratungsstellen<\/li>\r\n<\/ul>\r\n<p><br \/>Bilder und Tabellen erleichtern den \u00dcberblick u. a. \u00fcber Symptome und spezifische Organwirkungen dieser Genussgifte bei chronischem Konsum bis hin zu starkem Missbrauch sowie \u00fcber therapeutische M\u00f6glichkeiten.<\/p>\r\n<p>Mit dem Wissen des Buchs gelingt eine optimale Beratung aller Konsumenten von Alkohol, Coffein oder Nikotin.<\/p>\r\n<p>\u00a0<\/p>\r\n<p><strong>Prof. Dr. Egid Strehl <\/strong>war Direktor der Apotheke des Universit\u00e4tsklinikums Freiburg.<\/p>\r\n<p><strong>Heidegun Bl\u00fcmle<\/strong> ist Offizinapothekerin in Freiburg.<\/p>\r\n<p><strong>Prof. Dr. Bela Szabo<\/strong> lehrt am Institut f\u00fcr Pharmakologie der Universit\u00e4t Freiburg.<\/p>","471":"<p>Von den Genussmitteln Coffein, Alkohol und Nikotin schaden zumindest die letzteren unbestritten betr\u00e4chtlich der Gesundheit. Trotzdem werden sie von vielen Menschen regelm\u00e4\u00dfig konsumiert. Ihre Wirkungen auf den gesamten Organismus sind vielf\u00e4ltig \u2013 bis hin zu Wechselwirkungen mit Arzneimitteln.<\/p>\r\n<p>Die Autoren f\u00fchren das Fachwissen zu Alkohol, Coffein und Nikotin f\u00fcr das t\u00e4gliche Beratungsgespr\u00e4ch zusammen:<\/p>\r\n<ul>\r\n<li>Wirkungen auf K\u00f6rperfunktionen und besonders empfindliche Organe<\/li>\r\n<li>Geschlechts- und altersbedingte Unterschiede<\/li>\r\n<li>Risiken und Folgeerkrankungen<\/li>\r\n<li>Abh\u00e4ngigkeit inklusive Therapie und Pr\u00e4vention<\/li>\r\n<li>Wechselwirkungen mit Arzneimitteln wie z. B. Analgetika, Antibiotika, Antidiabetika, Antikoagulanzien und P
5474sychopharmaka<\/li>\r\n<li>Informationen zu rechtlichen Aspekten in Beruf und Verkehr sowie Hinweise auf Beratungsstellen<\/li>\r\n<\/ul>\r\n<p><br \/>Bilder und Tabellen erleichtern den \u00dcberblick u. a. \u00fcber Symptome und spezifische Organwirkungen dieser Genussgifte bei chronischem Konsum bis hin zu starkem Missbrauch sowie \u00fcber therapeutische M\u00f6glichkeiten.<\/p>\r\n<p>Mit dem Wissen des Buchs gelingt eine optimale Beratung aller Konsumenten von Alkohol, Coffein oder Nikotin.<\/p>\r\n<p>\u00a0<\/p>\r\n<p><strong>Prof. Dr. Egid Strehl <\/strong>war Direktor der Apotheke des Universit\u00e4tsklinikums Freiburg.<\/p>\r\n<p><strong>Heidegun Bl\u00fcmle<\/strong> ist Offizinapothekerin in Freiburg.<\/p>\r\n<p><strong>Prof. Dr. Bela Szabo<\/strong> lehrt am Institut f\u00fcr Pharmakologie der Universit\u00e4t Freiburg.<\/p>"},"isbn":{"470":"978-3-7741-1358-9","471":"978-3-7741-1359-6"},"article_number":{"470":"00011507","471":"00041507"},"pzn":{"470":"","471":""},"series":{"470":"","471":""},"edition_stand_issue_number":{"470":"","471":""},"publishing_year":{"470":"2017","471":"2017"},"pages_maps_sheets":{"470":"282 S.","471":"282 S."},"illustrations":{"470":"","471":""},"tables":{"470":"","471":""},"components":{"470":"","471":""},"measure":{"470":"17 x 24 x 1,3 cm","471":""},"product_safety_address":{"470":"Avoxa- Mediengruppe Deutscher Apotheker GmbH<br>Carl-Mannich-Str. 26, 65760 Eschborn<br>[email protected]","471":"Avoxa- Mediengruppe Deutscher Apotheker GmbH<br>Carl-Mannich-Str. 26, 65760 Eschborn<br>[email protected]"},"product_safety_additional_info":{"470":"","471":""},"copy_protection":{"470":"","471":"mit Wasserzeichen"},"file_size":{"470":"","471":""},"issn":{"470":"","471":""},"rights_management":{"470":"","471":""},"system_requirements":{"470":"","471":""},"defaultValues":{"172":"18"}}            );
5475            const swatchOptionsComponent = initSwatchOptions({"172":{"18":{"type":"0","value":"Buch","label":"Buch"},"28":{"type":"0","value":"PDF","label":"PDF"},"additional_data":"{\"swatch_input_type\":\"text\",\"update_product_preview_image\":\"1\",\"use_product_image_for_swatch\":0}"}});
5476
5477            return Object.assign(
5478                configurableOptionsComponent,
5479                swatchOptionsComponent,
5480                {
5481                    mediaCallback: "https\u003A\u002F\u002Fwww.govi.de\u002Fswatches\u002Fajax\u002Fmedia\u002F",
5482                    changeOption(optionId, value, skipUpdateGallery) {
5483                        if (value === '') {
5484                            return;                             this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
5485                        } else {
5486                            this.selectedValues[optionId] = value;
5487                        }
5488                        this.findSimpleIndex();
5489                        this.findAllowedAttributeOptions();
5490                        this.updatePrices();
5491                        !skipUpdateGallery && this.updateGallery();
5492
5493                         const candidates = this.findProductIdsForPartialSelection(this.selectedValues);
5494
5495                                                window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
5496                            detail: {
5497                                productId: this.productId,
5498                                optionId,
5499                                value,
5500                                productIndex: this.productIndex,
5501                                selectedValues: this.selectedValues,
5502                                candidates: candidates,
5503                                skuCandidates: Object.values(candidates).map(id => this.optionConfig.sku?.[id] ?? null).filter(Boolean),
5504                            }
5505                        }));
5506                    },
5507                    updateGallery() {
5508                        if (!this.productIndex) {
5509                            return;
5510                        }
5511
5512                        fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
5513                                method: 'GET',
5514                                headers: {
5515                                    'Content-Type': 'application/json',
5516                                    'X-Requested-With': 'XMLHttpRequest'
5517                                }
5518                            }
5519                        ).then(response => {
5520                                return response.json()
5521                            }
5522                        ).then(data => {
5523                            if (data.errors) {
5524                                // non critical failure only console logged
5525                                console.warn(data.errors);
5526                            } else {
5527                                const image = data && data.medium;
5528
5529                                image && window.dispatchEvent(
5530                                    new CustomEvent(
5531                                        "update-gallery-472",
5532                                        {detail: image}
5533                                    )
5534                                );
5535                            }
5536                        }).catch(error => {
5537                            console.warn(error)
5538                        });
5539                    },
5540                    preselectQuerystringItems() {
5541                        // pre-select option like ?size=167
5542                        const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
5543                        Object.values(this.optionConfig.attributes).map(attribute => {
5544                            // Don't update images on load, since PLPs already set the main image to the selected options
5545                            const skipUpdateGallery = true;
5546                            urlQueryParams.get(attribute.code) &&
5547                            this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
5548                        });
5549                    },
5550                    preselectItemsBasedOnLocation(getLocationValue) {
5551                        Object.values(this.optionConfig.attributes).map(attribute => {
5552                            if(getLocationValue(attribute)){
5553                                this.changeOption(attribute.id, getLocationValue(attribute))
5554                            }
5555                        });
5556                    },
5557                    focusOption(productId,selectedOptionId){
5558                        let time_472 = setInterval(
5559                            function(){
5560                                if(document.getElementById('attribute-option-' + productId + '-' + selectedOptionId) !== null){
5561                                    document.getElementById('attribute-option-' + productId + '-' + selectedOptionId).click();
5562                                    document.getElementById('attribute-option-' + productId + '-' + selectedOptionId).focus();
5563                                    clearInterval(time_472);
5564                                }
5565                            }, 50
5566                        );
5567                    },
5568                    onGetCartData(data) {
5569                        this.preselectCartItems(data);
5570                        this.preselectQuerystringItems();
5571                        this.preselectLocationHashItems();
5572                                                this.focusOption(472, 18);
5573                                            },
5574                    updatePrices() {
5575                        const value = this.productIndex ?
5576                            this.optionConfig.optionPrices[this.productIndex] :
5577                            this.optionConfig.prices;
5578
5579                        let hidePriceLabel = this.productIndex ? true : false;
5580
5581                        window.dispatchEvent(
5582                            new CustomEvent(
5583                                "update-prices-" + this.productId,
5584                                {
5585                                    detail: Object.assign(
5586                                        value,
5587                                        {
5588                                            isMinimalPrice: this.calculateIsMinimalPrice(),
5589                                            hidePriceLabel: hidePriceLabel,
5590                                            isApproxPrice: this.optionConfig.optionPrices[this.productIndex]['isApproxPrice'],
5591                                            availabilityText: this.optionConfig.optionPrices[this.productIndex]['availabilityText'],
5592                                            priceDescription: this.optionConfig.optionPrices[this.productIndex]['priceDescription']
5593                                        }
5594                                    )
5595                                }
5596                            )
5597                        );
5598
5599                    },
5600                    mouseDown: false,
5601                    startX: 0,
5602                    maxScroll: 0,
5603                    scrollLeft: null,
5604                    slider: null,
5605                    scrollEvents: {
5606                        ['@mousedown'](e) {
5607                            this.slider = e.target.closest('.snap');
5608                            if (!this.slider) {
5609                                return;
5610                            }
5611                            this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
5612                            this.startX = e.pageX - this.slider.offsetLeft;
5613                            this.scrollLeft = this.slider.scrollLeft;
5614                            this.mouseDown = true;
5615                        },
5616                        ['@mouseout.self']() {
5617                            this.mouseDown = false;
5618                        },
5619                        ['@mouseup']() {
5620                            this.mouseDown = false;
5621                        },
5622                        ['@mousemove'](e) {
5623                            e.preventDefault();
5624                            if (!this.mouseDown) {
5625                                return;
5626                            }
5627                            const x = e.pageX - this.slider.offsetLeft;
5628                            const scroll = x - this.startX;
5629                            const scrollLeft = this.scrollLeft - scroll;
5630
5631                            if (scrollLeft > this.maxScroll) {
5632                                this.slider.scrollLeft = this.maxScroll;
5633                                return
5634                            }
5635                            this.slider.scrollLeft = this.scrollLeft - scroll;
5636                        },
5637                        ['@onselectstart']() {
5638                            return false;
5639                        }
5640                    },
5641                    resizeEvent() {
5642                        Array.from(this.$root.querySelectorAll('.snap')).forEach(sli
5642der => {
5643                            slider.scrollLeft = 0;
5644                        })
5645                    }
5646                }
5647            );
5648        }
5649
5650    </script>
5650
5651
5652<div x-data="initConfigurableSwatchOptions_472()"
5653     x-defer="intersect"
5654     x-init="findAllowedAttributeOptions()"
5655     @private-content-loaded.window="onGetCartData($event.detail.data)"
5656     @resize.window="resizeEvent()"
5657     class="relative"
5658>
5659    <div>
5660                                
5661                    <div class="swatch-attribute border-container
5662            medium"
5663        >
5664            <div class="w-full overflow-x-hidden swatch-attribute-options min-h-14 items-end">
5665                <div class="flex flex-wrap gap-y-4 w-full overflow-auto snap items-center py-1"
5666                    id="attribute-label-472-172"
5667                    role="radiogroup"
5668                    x-bind="scrollEvents"
5669                    aria-label="Medium"
5670                >
5671                    <template x-for="(item, index) in optionConfig.attributes[172].options"
5672                              :key="item.id"
5673                    >
5674                        
5675<div x-id="['attribute-option-472-'+item.id]">
5676    <template x-if="optionIsEnabled(172, item.id) && optionIsActive(172, item.id)">
5677        <label
5678            :for="$id('attribute-option-472-'+item.id)"
5679            class="swatch-option relative border-3 text-c7 border-c7 cursor-pointer select-none product-option-value-label "
5680            :class="{
5681                'bg-white text-c5 border-c5 !border-3 hover:!bg-c8 hover:!text-white hover:!border-c8 hover:!border-3 font-bold':
5682                    (selectedValues[172] === item.id),
5683                '!border-c5 bg-white !text-c5 hover:!bg-c8 hover:!text-white hover:!border-c8':
5684                    (selectedValues[172] !== item.id),
5685                'w-6 h-6' : !isTextSwatch(172, item.id),
5686                'ring-2 ring-c8' : focusedLabel === item.id,
5687                'bg-white' : focusedLabel === item.id
5688            }"
5689            :style="getSwatchBackgroundStyle('172',item.id)"
5690                    >
5691            <input
5692                :id="$id('attribute-option-472-'+item.id)"
5693                :value="item.id"
5694                name="super_attribute[172]"
5695                type="radio"
5696                class="inline-block absolute p-0 border-0 focus:border-0 focus:ring-0 product-option-value-input"
5697                style="z-index:-1"
5698                x-on:focus="focusLabel(item.id)"
5699                x-on:blur="blurLabel()"
5700                x-on:change="changeOption(172, $event.target.value)"
5701                x-on:click="clearOptionIfActive(172, item.id)"
5702                x-model="selectedValues[172]"
5703                :required="getAllowedAttributeOptions(172).filter(
5704                    attributeOption => selectedValues[attributeOption]
5705                ).length === 0"
5706                :aria-label="getSwatchText(172, item.id)"
5707                aria-describedby="attribute-label-472-172"
5708            >
5709            <template x-if="isTextSwatch(172, item.id)">
5710                <div
5711                    x-html="getSwatchText(172, item.id)"
5712                    class="whitespace-nowrap"
5713                    aria-hidden="true"
5714                ></div>
5715            </template>
5716        </label>
5717    </template>
5718
5719    <template x-if="optionIsEnabled(172, item.id) && !optionIsActive(172, item.id)">
5720        <div
5721            class="relative border-3 shadow-sm opacity-50 cursor-pointer select-none border-container-darker swatch-option bg-container-lighter"
5722            :class="{
5723                                                        'w-6 h-6' : !isTextSwatch(172, item.id),
5724                                                    }"
5725            :style="getSwatchBackgroundStyle('172',item.id)"
5726        >
5727            <div x-html="getSwatchText(172, item.id)"
5728                 class="whitespace-nowrap"
5729                 :class="{ 'sr-only' : !isTextSwatch(172, item.id) }"
5730            ></div>
5731            <svg class="absolute inset-0 w-full h-full text-gray-500 bg-white bg-opacity-25">
5732                <line x1="0" y1="100%" x2="100%" y2="0" class="stroke-current stroke-1"></line>
5733            </svg>
5734        </div>
5735    </template>
5736</div>
5737                    </template>
5738                </div>
5739            </div>
5740        </div>
5741            </div>
5742    </div>
5743                                                    </div>
5744                                                                                                <div class="items-center justify-center text-center lg:text-left">
5745                            <p class="flex items-center align-middle available gap-x-2 stock" title="Verfügbarkeit">
5746                                <span id="product-availability-status-472"
5747                                    class="w-3 h-3 rounded-full flex-shrink-0
5748                                    ">
5749                                </span>
5750                                <span id="product-availability-472">
5751                                                                    </span>
5752                            </p>
5753                        </div>
5754
5755                                                                                                                                                    </div>
5756                    
5756<script>
5757                        function initPriceBox__6ac21b09a2102() {
5758                            return {
5759                                updatePrice(priceData) {
5760                                    const regularPriceLabel = this.$root.querySelector('.normal-price .price-label');
5761                                    const approxPriceLabel = this.$root.querySelector('.normal-price .approx-price');
5762                                    const priceDescriptionLabel = this.$root.querySelector('.normal-price .price-description');
5763                                    const regularPriceElement = this.$root.querySelector('.normal-price [data-price-type=finalPrice].price-wrapper .price');
5764                                    const basePriceElement = this.$root.querySelector('.normal-price [data-price-type=basePrice].price-wrapper .price');
5765                                    if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
5766                                        regularPriceLabel.classList.add('hidden');
5767                                    } else {
5768                                        regularPriceLabel.classList.remove('hidden');
5769                                    }
5770                                    regularPriceElement && (regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount));
5771                                    basePriceElement && (basePriceElement.innerText = hyva.formatPrice(priceData.basePrice.amount));
5772
5773                                    const hidePriceLabel = priceData.hidePriceLabel;
5774                                    if (hidePriceLabel) {
5775                                        regularPriceLabel.classList.add('hidden');
5776                                    } else {
5777                                        regularPriceLabel.classList.remove('hidden');
5778                                    }
5779
5780                                    const isApproxPrice = priceData.isApproxPrice;
5781                                    if (!isApproxPrice) {
5782                                        approxPriceLabel.classList.add('hidden');
5783                                    } else {
5784                                        approxPriceLabel.classList.remove('hidden');
5785                                    }
5786
5787                                    document.getElementById('product-availability-' +
5788                                        472).innerHTML = priceData.availabilityText;
5789
5790                                    priceData.availabilityStatusColorRemove.forEach(function(cssClass, index) {
5791                                        document.getElementById('product-availability-status-' +
5792                                                472)
5793                                            .classList.remove(cssClass);
5794                                    });
5795
5796                                    document.getElementById('product-availability-status-' +
5797                                            472)
5798                                        .classList.add(priceData.availabilityStatusColor);
5799
5800                                    priceDescriptionLabel.innerHTML = priceData.priceDescription;
5801
5802                                    regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
5803                                }
5804                            }
5805                        }
5806
5807                        function initCartButtonData__6ac21b09a2102() {
5808                            return {
5809                                canShowCartButton: true,
5810                                updateCartButton(priceData) {
5811                                    this.canShowCartButton = priceData.showCartButton;
5812                                }
5813                            }
5814                        }
5815                    </script>
5815
5816                    <div class="sm:flex items-end">
5817                        <div class="w-full sm:6/12 " x-data="initPriceBox__6ac21b09a2102()" @update-prices-472.window="updatePrice($event.detail);">
5818                            <div class="price-box price-final_price" data-role="priceBox" data-product-id="472" data-price-box="product-id-472"><span class="normal-price">
5819    
5820<span
5821    x-data x-id="['product\u002Dprice\u002D472']"    class="price-container price-final_price&#x20;tax&#x20;weee"
5822        >
5823    <span class="price-description"></span>
5824            <span class="price-label">Ab</span>
5825                <span class="approx-price">ca. </span>
5826        <span  :id="$id('product\u002Dprice\u002D472')"                data-price-amount="35.9"
5827        data-price-type="finalPrice"
5828        class="price-wrapper "
5829    ><span class="price">35,90 €</span></span>
5830        </span>
5831</span>
5832
5833
5834</div><div class="price-details">
5835    <span class="tax-details text-s text-c5">
5836        inkl. MwSt., ggf. zzgl. <a class="underline" href="https://www.govi.de/liefer-und-versandkosten">Versand</a>    </span>
5837</div>                        </div>
5838                                                                        <div class="w-full sm:6/12 mt-2">
5839                            <div class="block text-right">
5840                                                                    <button class="w-auto btn btn-primary justify-end lg:justify-center inline-block
5841                                        mr-1"
5842                                        aria-label="In&#x20;den&#x20;Warenkorb&#x20;Alkohol,&#x20;Coffein,&#x20;Nikotin"
5843                                        title="In&#x20;den&#x20;Warenkorb"
5844                                        x-data="initCartButtonData__6ac21b09a2102()"
5845                                        @update-prices-472.window="updateCartButton($event.detail);"
5846                                        :class="{ invisible: canShowCartButton !== true }">
5847                                        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="h-6 w-6 border-current inline" width="25" height="25" aria-hidden="true">
5848  <path stroke-linecap="round" stroke-linejoin="round" d="M3 3h2l.4 2M7 13h10l4-8H5.4M7 13L5.4 5M7 13l-2.293 2.293c-.63.63-.184 1.707.707 1.707H17m0 0a2 2 0 100 4 2 2 0 000-4zm-8 2a2 2 0 11-4 0 2 2 0 014 0z"/>
5849</svg>
5850                                        <span class="ml-2 inline hidden  lg:inline">
5851                                            In den Warenkorb                                        </span>
5852                                    </button>
5853                                                                                                    <button x-data="initWishlist()" @click.prevent="addToWishlist(472)"
5854                                        aria-label="Zur&#x20;Wunschliste&#x20;hinzuf&#xFC;gen"
5855                                        title="Zur&#x20;Wunschliste&#x20;hinzuf&#xFC;gen"
5856                                        type="button" class="py-3 mt-2 btn-secondary inline-block">
5857                                        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="h-6 w-6 border-current inline" width="25" height="25" aria-hidden="true">
5858  <path stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-3 7h3m-3 4h3m-6-4h.01M9 16h.01"/>
5859</svg>
5860                                        <span class="hidden lg:ml-2 lg:inline">
5861                                            Zur Wunschliste hinzufügen                                        </span>
5862                                    </button>
5863                                                            </div>
5864                        </div>
5865                    </div>
5866
5867                </div>
5868            </div>
5869        </div>
5870            </form>
5871
5872    <form method="post" action="https://www.govi.de/checkout/cart/add/uenc/%25uenc%25/product/811/" class="item product product-item product_addtocart_form card card-interactive p-6 flex flex-col w-full
5873            lg:flex-row" >
5874        <input name="form_key" type="hidden" value="MHFk6olfWgubb4xR" />        <input type="hidden" name="product" value="811" />
5875                                        <a href="https://www.govi.de/allgemeine-und-spezielle-pharmakologie-und-toxikologie-buch"
5876                class="flex items-center min-h-[362px] product photo product-item-photo block mx-auto mb-3 !border-0 lg:w-2/6 lg:mb-0 lg:mr-5"
5877                tabindex="-1">
5878                <div class="min-h-[362px] flex items-center mx-auto">
5879    <img class="hover:shadow-xl object-contain my-0 mx-auto !border-0 shadow-xl"
5880        x-data=""
5881        @update-gallery-811.window="$root.src = $event.detail"
5882                src="https://www.govi.de/media/catalog/product/cache/5867885552aeb48e79c08ad63de6695b/a/k/aktorie9593000100001a.jpg"
5883                loading="lazy"
5884                alt="Allgemeine&#x20;und&#x20;spezielle&#x20;Pharmakologie&#x20;und&#x20;Toxikologie"
5885        title="Allgemeine&#x20;und&#x20;spezielle&#x20;Pharmakologie&#x20;und&#x20;Toxikologie"
5886    />
5887</div>
5888            </a>
5889                <div class="product-info flex flex-col grow lg:w-4/6">
5890                        <div class="grid h-full">
5891                <div class="product-info--top self-start">
5892                    <div class="mt-1.5 items-center justify-center text-c7 text-lg text-center lg:text-left">
5893                        <a class="product-item-link font-bold" href="https://www.govi.de/allgemeine-und-spezielle-pharmakologie-und-toxikologie-buch" :id="`slide-desc-811-${$id('slider-id')}`">
5894                            Allgemeine und spezielle Pharmakologie und Toxikologie                        </a>
5895                    </div>
5896                    <div class="max-w-xl items-center justify-center text-center lg:text-left">
5897                                            </div>
5898                </div>
5899
5900                <div class="product-info--bottom self-end">
5901                    <!-- Swatches -->
5902                    <div class="self-center">
5903                        <div class="">
5904                                                                                                                </div>
5905                                                                            <div class="swatch-attribute border-container medium">
5906                                <div class="w-full overflow-x-hidden swatch-attribute-options min-h-14">
5907                                    <div class="flex flex-nowrap w-full overflow-auto snap items-end py-1">
5908                                        <label class="swatch-option relative border-3 cursor-pointer
5909                                            product-option-value-label text-black font-bold border-black !border-3 bg-white hover:bg-c8 hover:border-c8 hover:text-white">
5910                                            Buch                                        </label>
5911                                    </div>
5912                                </div>
5913                            </div>
5914                                                                        <div class="items-center justify-center text-center lg:text-left">
5915                            <p class="flex items-center align-middle available gap-x-2 stock" title="Verfügbarkeit">
5916                                <span id="product-availability-status-811"
5917                                    class="w-3 h-3 rounded-full flex-shrink-0
5918                                    bg-green-500">
5919                                </span>
5920                                <span id="product-availability-811">
5921                                    1-3 Werktage                                </span>
5922                            </p>
5923                        </div>
5924
5925                                                                    </div>
5926                    
5926<script>
5927                        function initPriceBox__6ac221628cb36() {
5928                            return {
5929                                updatePrice(priceData) {
5930                                    const regularPriceLabel = this.$root.querySelector('.normal-price .price-label');
5931                                    const approxPriceLabel = this.$root.querySelector('.normal-price .approx-price');
5932                                    const priceDescriptionLabel = this.$root.querySelector('.normal-price .price-description');
5933                                    const regularPriceElement = this.$root.querySelector('.normal-price [data-price-type=finalPrice].price-wrapper .price');
5934                                    const basePriceElement = this.$root.querySelector('.normal-price [data-price-type=basePrice].price-wrapper .price');
5935                                    if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
5936                                        regularPriceLabel.classList.add('hidden');
5937                                    } else {
5938                                        regularPriceLabel.classList.remove('hidden');
5939                                    }
5940                                    regularPriceElement && (regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount));
5941                                    basePriceElement && (basePriceElement.innerText = hyva.formatPrice(priceData.basePrice.amount));
5942
5943                                    const hidePriceLabel = priceData.hidePriceLabel;
5944                                    if (hidePriceLabel) {
5945                                        regularPriceLabel.classList.add('hidden');
5946                                    } else {
5947                                        regularPriceLabel.classList.remove('hidden');
5948                                    }
5949
5950                                    const isApproxPrice = priceData.isApproxPrice;
5951                                    if (!isApproxPrice) {
5952                                        approxPriceLabel.classList.add('hidden');
5953                                    } else {
5954                                        approxPriceLabel.classList.remove('hidden');
5955                                    }
5956
5957                                    document.getElementById('product-availability-' +
5958                                        811).innerHTML = priceData.availabilityText;
5959
5960                                    priceData.availabilityStatusColorRemove.forEach(function(cssClass, index) {
5961                                        document.getElementById('product-availability-status-' +
5962                                                811)
5963                                            .classList.remove(cssClass);
5964                                    });
5965
5966                                    document.getElementById('product-availability-status-' +
5967                                            811)
5968                                        .classList.add(priceData.availabilityStatusColor);
5969
5970                                    priceDescriptionLabel.innerHTML = priceData.priceDescription;
5971
5972                                    regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
5973                                }
5974                            }
5975                        }
5976
5977                        function initCartButtonData__6ac221628cb36() {
5978                            return {
5979                                canShowCartButton: true,
5980                                updateCartButton(priceData) {
5981                                    this.canShowCartButton = priceData.showCartButton;
5982                                }
5983                            }
5984                        }
5985                    </script>
5985
5986                    <div class="sm:flex items-end">
5987                        <div class="w-full sm:6/12 " x-data="initPriceBox__6ac221628cb36()" @update-prices-811.window="updatePrice($event.detail);">
5988                            <div class="price-box price-final_price" data-role="priceBox" data-product-id="811" data-price-box="product-id-811">
5989    
5990<span
5991    x-data x-id="['product\u002Dprice\u002D811']"    class="price-container price-final_price&#x20;tax&#x20;weee"
5992        >
5993    <span class="price-description"></span>
5994            <span  :id="$id('product\u002Dprice\u002D811')"                data-price-amount="99"
5995        data-price-type="finalPrice"
5996        class="price-wrapper "
5997    ><span class="price">99,00 €</span></span>
5998        </span>
5999
6000</div><div class="price-details">
6001    <span class="tax-details text-s text-c5">
6002        inkl. MwSt., ggf. zzgl. <a class="underline" href="https://www.govi.de/liefer-und-versandkosten">Versand</a>    </span>
6003</div>                        </div>
6004                                                                        <div class="w-full sm:6/12 mt-2">
6005                            <div class="block text-right">
6006                                                                    <button class="w-auto btn btn-primary justify-end lg:justify-center inline-block
6007                                        mr-1"
6008                                        aria-label="In&#x20;den&#x20;Warenkorb&#x20;Allgemeine&#x20;und&#x20;spezielle&#x20;Pharmakologie&#x20;und&#x20;Toxikologie"
6009                                        title="In&#x20;den&#x20;Warenkorb"
6010                                        x-data="initCartButtonData__6ac221628cb36()"
6011                                        @update-prices-811.window="updateCartButton($event.detail);"
6012                                        :class="{ invisible: canShowCartButton !== true }">
6013                                        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="h-6 w-6 border-current inline" width="25" height="25" aria-hidden="true">
6014  <path stroke-linecap="round" stroke-linejoin="round" d="M3 3h2l.4 2M7 13h10l4-8H5.4M7 13L5.4 5M7 13l-2.293 2.293c-.63.63-.184 1.707.707 1.707H17m0 0a2 2 0 100 4 2 2 0 000-4zm-8 2a2 2 0 11-4 0 2 2 0 014 0z"/>
6015</svg>
6016                                        <span class="ml-2 inline hidden  lg:inline">
6017                                            In den Warenkorb                                        </span>
6018                                    </button>
6019                                                                                                    <button x-data="initWishlist()" @click.prevent="addToWishlist(811)"
6020                                        aria-label="Zur&#x20;Wunschliste&#x20;hinzuf&#xFC;gen"
6021                                        title="Zur&#x20;Wunschliste&#x20;hinzuf&#xFC;gen"
6022                                        type="button" class="py-3 mt-2 btn-secondary inline-block">
6023                                        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="h-6 w-6 border-current inline" width="25" height="25" aria-hidden="true">
6024  <path stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-3 7h3m-3 4h3m-6-4h.01M9 16h.01"/>
6025</svg>
6026                                        <span class="hidden lg:ml-2 lg:inline">
6027                                            Zur Wunschliste hinzufügen                                        </span>
6028                                    </button>
6029                                                            </div>
6030                        </div>
6031                    </div>
6032
6033                </div>
6034            </div>
6035        </div>
6036            </form>
6037
6038    <form method="post" action="https://www.govi.de/checkout/cart/add/uenc/%25uenc%25/product/166/" class="item product product-item product_addtocart_form card card-interactive p-6 flex flex-col w-full
6039            lg:flex-row" >
6040        <input name="form_key" type="hidden" value="DRrYkaEmdROnUYZC" />        <input type="hidden" name="product" value="166" />
6041                                        <a href="https://www.govi.de/allgemeinpharmazie"
6042                class="flex items-center min-h-[362px] product photo product-item-photo block mx-auto mb-3 !border-0 lg:w-2/6 lg:mb-0 lg:mr-5"
6043                tabindex="-1">
6044                <div class="min-h-[362px] flex items-center mx-auto">
6045    <img class="hover:shadow-xl object-contain my-0 mx-auto !border-0 shadow-xl"
6046        x-data=""
6047        @update-gallery-166.window="$root.src = $event.detail"
6048                src="https://www.govi.de/media/catalog/product/cache/5867885552aeb48e79c08ad63de6695b/9/4/9458819800001a.jpg"
6049                loading="lazy"
6050                alt="Allgemeinpharmazie"
6051        title="Allgemeinpharmazie"
6052    />
6053</div>
6054            </a>
6055                <div class="product-info flex flex-col grow lg:w-4/6">
6056                        <div class="grid h-full">
6057                <div class="product-info--top self-start">
6058                    <div class="mt-1.5 items-center justify-center text-c7 text-lg text-center lg:text-left">
6059                        <a class="product-item-link font-bold" href="https://www.govi.de/allgemeinpharmazie" :id="`slide-desc-166-${$id('slider-id')}`">
6060                            Allgemeinpharmazie                        </a>
6061                    </div>
6062                    <div class="max-w-xl items-center justify-center text-center lg:text-left">
6063                        Ein Lehrbuch für Praktisches Jahr, Weiterbildung und Apothekenpraxis.                    </div>
6064                </div>
6065
6066                <div class="product-info--bottom self-end">
6067                    <!-- Swatches -->
6068                    <div class="self-center">
6069                        <div class="">
6070                                                                                                                </div>
6071                                                                            <div class="swatch-attribute border-container medium">
6072                                <div class="w-full overflow-x-hidden swatch-attribute-options min-h-14">
6073                                    <div class="flex flex-nowrap w-full overflow-auto snap items-end py-1">
6074                                        <label class="swatch-option relative border-3 cursor-pointer
6075                                            product-option-value-label text-black font-bold border-black !border-3 bg-white hover:bg-c8 hover:border-c8 hover:text-white">
6076                                            Buch                                        </label>
6077                                    </div>
6078                                </div>
6079                            </div>
6080                                                                        <div class="items-center justify-center text-center lg:text-left">
6081                            <p class="flex items-center align-middle available gap-x-2 stock" title="Verfügbarkeit">
6082                                <span id="product-availability-status-166"
6083                                    class="w-3 h-3 rounded-full flex-shrink-0
6084                                    bg-green-500">
6085                                </span>
6086                                <span id="product-availability-166">
6087                                    1-3 Werktage                                </span>
6088                            </p>
6089                        </div>
6090
6091                                                                    </div>
6092                    
6092<script>
6093                        function initPriceBox__6ac2151339bc2() {
6094                            return {
6095                                updatePrice(priceData) {
6096                                    const regularPriceLabel = this.$root.querySelector('.normal-price .price-label');
6097                                    const approxPriceLabel = this.$root.querySelector('.normal-price .approx-price');
6098                                    const priceDescriptionLabel = this.$root.querySelector('.normal-price .price-description');
6099                                    const regularPriceElement = this.$root.querySelector('.normal-price [data-price-type=finalPrice].price-wrapper .price');
6100                                    const basePriceElement = this.$root.querySelector('.normal-price [data-price-type=basePrice].price-wrapper .price');
6101                                    if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
6102                                        regularPriceLabel.classList.add('hidden');
6103                                    } else {
6104                                        regularPriceLabel.classList.remove('hidden');
6105                                    }
6106                                    regularPriceElement && (regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount));
6107                                    basePriceElement && (basePriceElement.innerText = hyva.formatPrice(priceData.basePrice.amount));
6108
6109                                    const hidePriceLabel = priceData.hidePriceLabel;
6110                                    if (hidePriceLabel) {
6111                                        regularPriceLabel.classList.add('hidden');
6112                                    } else {
6113                                        regularPriceLabel.classList.remove('hidden');
6114                                    }
6115
6116                                    const isApproxPrice = priceData.isApproxPrice;
6117                                    if (!isApproxPrice) {
6118                                        approxPriceLabel.classList.add('hidden');
6119                                    } else {
6120                                        approxPriceLabel.classList.remove('hidden');
6121                                    }
6122
6123                                    document.getElementById('product-availability-' +
6124                                        166).innerHTML = priceData.availabilityText;
6125
6126                                    priceData.availabilityStatusColorRemove.forEach(function(cssClass, index) {
6127                                        document.getElementById('product-availability-status-' +
6128                                                166)
6129                                            .classList.remove(cssClass);
6130                                    });
6131
6132                                    document.getElementById('product-availability-status-' +
6133                                            166)
6134                                        .classList.add(priceData.availabilityStatusColor);
6135
6136                                    priceDescriptionLabel.innerHTML = priceData.priceDescription;
6137
6138                                    regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
6139                                }
6140                            }
6141                        }
6142
6143                        function initCartButtonData__6ac2151339bc2() {
6144                            return {
6145                                canShowCartButton: true,
6146                                updateCartButton(priceData) {
6147                                    this.canShowCartButton = priceData.showCartButton;
6148                                }
6149                            }
6150                        }
6151                    </script>
6151
6152                    <div class="sm:flex items-end">
6153                        <div class="w-full sm:6/12 " x-data="initPriceBox__6ac2151339bc2()" @update-prices-166.window="updatePrice($event.detail);">
6154                            <div class="price-box price-final_price" data-role="priceBox" data-product-id="166" data-price-box="product-id-166">
6155    
6156<span
6157    x-data x-id="['product\u002Dprice\u002D166']"    class="price-container price-final_price&#x20;tax&#x20;weee"
6158        >
6159    <span class="price-description"></span>
6160            <span  :id="$id('product\u002Dprice\u002D166')"                data-price-amount="108"
6161        data-price-type="finalPrice"
6162        class="price-wrapper "
6163    ><span class="price">108,00 €</span></span>
6164        </span>
6165
6166</div><div class="price-details">
6167    <span class="tax-details text-s text-c5">
6168        inkl. MwSt., ggf. zzgl. <a class="underline" href="https://www.govi.de/liefer-und-versandkosten">Versand</a>    </span>
6169</div>                        </div>
6170                                                                        <div class="w-full sm:6/12 mt-2">
6171                            <div class="block text-right">
6172                                                                    <button class="w-auto btn btn-primary justify-end lg:justify-center inline-block
6173                                        mr-1"
6174                                        aria-label="In&#x20;den&#x20;Warenkorb&#x20;Allgemeinpharmazie"
6175                                        title="In&#x20;den&#x20;Warenkorb"
6176                                        x-data="initCartButtonData__6ac2151339bc2()"
6177                                        @update-prices-166.window="updateCartButton($event.detail);"
6178                                        :class="{ invisible: canShowCartButton !== true }">
6179                                        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="h-6 w-6 border-current inline" width="25" height="25" aria-hidden="true">
6180  <path stroke-linecap="round" stroke-linejoin="round" d="M3 3h2l.4 2M7 13h10l4-8H5.4M7 13L5.4 5M7 13l-2.293 2.293c-.63.63-.184 1.707.707 1.707H17m0 0a2 2 0 100 4 2 2 0 000-4zm-8 2a2 2 0 11-4 0 2 2 0 014 0z"/>
6181</svg>
6182                                        <span class="ml-2 inline hidden  lg:inline">
6183                                            In den Warenkorb                                        </span>
6184                                    </button>
6185                                                                                                    <button x-data="initWishlist()" @click.prevent="addToWishlist(166)"
6186                                        aria-label="Zur&#x20;Wunschliste&#x20;hinzuf&#xFC;gen"
6187                                        title="Zur&#x20;Wunschliste&#x20;hinzuf&#xFC;gen"
6188                                        type="button" class="py-3 mt-2 btn-secondary inline-block">
6189                                        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="h-6 w-6 border-current inline" width="25" height="25" aria-hidden="true">
6190  <path stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-3 7h3m-3 4h3m-6-4h.01M9 16h.01"/>
6191</svg>
6192                                        <span class="hidden lg:ml-2 lg:inline">
6193                                            Zur Wunschliste hinzufügen                                        </span>
6194                                    </button>
6195                                                            </div>
6196                        </div>
6197                    </div>
6198
6199                </div>
6200            </div>
6201        </div>
6202            </form>
6203
6204    <form method="post" action="https://www.govi.de/checkout/cart/add/uenc/%25uenc%25/product/333/" class="item product product-item product_addtocart_form card card-interactive p-6 flex flex-col w-full
6205            lg:flex-row" >
6206        <input name="form_key" type="hidden" value="MHFk6olfWgubb4xR" />        <input type="hidden" name="product" value="333" />
6207                                        <a href="https://www.govi.de/aporello-heilpflanzen"
6208                class="flex items-center min-h-[362px] product photo product-item-photo block mx-auto mb-3 !border-0 lg:w-2/6 lg:mb-0 lg:mr-5"
6209                tabindex="-1">
6210                <div class="min-h-[362px] flex items-center mx-auto">
6211    <img class="hover:shadow-xl object-contain my-0 mx-auto !border-0 shadow-xl"
6212        x-data=""
6213        @update-gallery-333.window="$root.src = $event.detail"
6214                src="https://www.govi.de/media/catalog/product/cache/5867885552aeb48e79c08ad63de6695b/4/2/4211576200001a.jpg"
6215                loading="lazy"
6216                alt="aporello&#x20;Heilpflanzen"
6217        title="aporello&#x20;Heilpflanzen"
6218    />
6219</div>
6220            </a>
6221                <div class="product-info flex flex-col grow lg:w-4/6">
6222                        <div class="grid h-full">
6223                <div class="product-info--top self-start">
6224                    <div class="mt-1.5 items-center justify-center text-c7 text-lg text-center lg:text-left">
6225                        <a class="product-item-link font-bold" href="https://www.govi.de/aporello-heilpflanzen" :id="`slide-desc-333-${$id('slider-id')}`">
6226                            aporello Heilpflanzen                        </a>
6227                    </div>
6228                    <div class="max-w-xl items-center justify-center text-center lg:text-left">
6229                                            </div>
6230                </div>
6231
6232                <div class="product-info--bottom self-end">
6233                    <!-- Swatches -->
6234                    <div class="self-center">
6235                        <div class="">
6236                                                                                                                </div>
6237                                                                            <div class="swatch-attribute border-container medium">
6238                                <div class="w-full overflow-x-hidden swatch-attribute-options min-h-14">
6239                                    <div class="flex flex-nowrap w-full overflow-auto snap items-end py-1">
6240                                        <label class="swatch-option relative border-3 cursor-pointer
6241                                            product-option-value-label text-black font-bold border-black !border-3 bg-white hover:bg-c8 hover:border-c8 hover:text-white">
6242                                            Buch                                        </label>
6243                                    </div>
6244                                </div>
6245                            </div>
6246                                                                        <div class="items-center justify-center text-center lg:text-left">
6247                            <p class="flex items-center align-middle available gap-x-2 stock" title="Verfügbarkeit">
6248                                <span id="product-availability-status-333"
6249                                    class="w-3 h-3 rounded-full flex-shrink-0
6250                                    bg-green-500">
6251                                </span>
6252                                <span id="product-availability-333">
6253                                    1-3 Werktage                                </span>
6254                            </p>
6255                        </div>
6256
6257                                                                    </div>
6258                    
6258<script>
6259                        function initPriceBox__6ac221629478a() {
6260                            return {
6261                                updatePrice(priceData) {
6262                                    const regularPriceLabel = this.$root.querySelector('.normal-price .price-label');
6263                                    const approxPriceLabel = this.$root.querySelector('.normal-price .approx-price');
6264                                    const priceDescriptionLabel = this.$root.querySelector('.normal-price .price-description');
6265                                    const regularPriceElement = this.$root.querySelector('.normal-price [data-price-type=finalPrice].price-wrapper .price');
6266                                    const basePriceElement = this.$root.querySelector('.normal-price [data-price-type=basePrice].price-wrapper .price');
6267                                    if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
6268                                        regularPriceLabel.classList.add('hidden');
6269                                    } else {
6270                                        regularPriceLabel.classList.remove('hidden');
6271                                    }
6272                                    regularPriceElement && (regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount));
6273                                    basePriceElement && (basePriceElement.innerText = hyva.formatPrice(priceData.basePrice.amount));
6274
6275                                    const hidePriceLabel = priceData.hidePriceLabel;
6276                                    if (hidePriceLabel) {
6277                                        regularPriceLabel.classList.add('hidden');
6278                                    } else {
6279                                        regularPriceLabel.classList.remove('hidden');
6280                                    }
6281
6282                                    const isApproxPrice = priceData.isApproxPrice;
6283                                    if (!isApproxPrice) {
6284                                        approxPriceLabel.classList.add('hidden');
6285                                    } else {
6286                                        approxPriceLabel.classList.remove('hidden');
6287                                    }
6288
6289                                    document.getElementById('product-availability-' +
6290                                        333).innerHTML = priceData.availabilityText;
6291
6292                                    priceData.availabilityStatusColorRemove.forEach(function(cssClass, index) {
6293                                        document.getElementById('product-availability-status-' +
6294                                                333)
6295                                            .classList.remove(cssClass);
6296                                    });
6297
6298                                    document.getElementById('product-availability-status-' +
6299                                            333)
6300                                        .classList.add(priceData.availabilityStatusColor);
6301
6302                                    priceDescriptionLabel.innerHTML = priceData.priceDescription;
6303
6304                                    regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
6305                                }
6306                            }
6307                        }
6308
6309                        function initCartButtonData__6ac221629478a() {
6310                            return {
6311                                canShowCartButton: true,
6312                                updateCartButton(priceData) {
6313                                    this.canShowCartButton = priceData.showCartButton;
6314                                }
6315                            }
6316                        }
6317                    </script>
6317
6318                    <div class="sm:flex items-end">
6319                        <div class="w-full sm:6/12 " x-data="initPriceBox__6ac221629478a()" @update-prices-333.window="updatePrice($event.detail);">
6320                            <div class="price-box price-final_price" data-role="priceBox" data-product-id="333" data-price-box="product-id-333">
6321    
6322<span
6323    x-data x-id="['product\u002Dprice\u002D333']"    class="price-container price-final_price&#x20;tax&#x20;weee"
6324        >
6325    <span class="price-description"></span>
6326            <span  :id="$id('product\u002Dprice\u002D333')"                data-price-amount="27"
6327        data-price-type="finalPrice"
6328        class="price-wrapper "
6329    ><span class="price">27,00 €</span></span>
6330        </span>
6331
6332</div><div class="price-details">
6333    <span class="tax-details text-s text-c5">
6334        inkl. MwSt., ggf. zzgl. <a class="underline" href="https://www.govi.de/liefer-und-versandkosten">Versand</a>    </span>
6335</div>                        </div>
6336                                                                        <div class="w-full sm:6/12 mt-2">
6337                            <div class="block text-right">
6338                                                                    <button class="w-auto btn btn-primary justify-end lg:justify-center inline-block
6339                                        mr-1"
6340                                        aria-label="In&#x20;den&#x20;Warenkorb&#x20;aporello&#x20;Heilpflanzen"
6341                                        title="In&#x20;den&#x20;Warenkorb"
6342                                        x-data="initCartButtonData__6ac221629478a()"
6343                                        @update-prices-333.window="updateCartButton($event.detail);"
6344                                        :class="{ invisible: canShowCartButton !== true }">
6345                                        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="h-6 w-6 border-current inline" width="25" height="25" aria-hidden="true">
6346  <path stroke-linecap="round" stroke-linejoin="round" d="M3 3h2l.4 2M7 13h10l4-8H5.4M7 13L5.4 5M7 13l-2.293 2.293c-.63.63-.184 1.707.707 1.707H17m0 0a2 2 0 100 4 2 2 0 000-4zm-8 2a2 2 0 11-4 0 2 2 0 014 0z"/>
6347</svg>
6348                                        <span class="ml-2 inline hidden  lg:inline">
6349                                            In den Warenkorb                                        </span>
6350                                    </button>
6351                                                                                                    <button x-data="initWishlist()" @click.prevent="addToWishlist(333)"
6352                                        aria-label="Zur&#x20;Wunschliste&#x20;hinzuf&#xFC;gen"
6353                                        title="Zur&#x20;Wunschliste&#x20;hinzuf&#xFC;gen"
6354                                        type="button" class="py-3 mt-2 btn-secondary inline-block">
6355                                        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="h-6 w-6 border-current inline" width="25" height="25" aria-hidden="true">
6356  <path stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-3 7h3m-3 4h3m-6-4h.01M9 16h.01"/>
6357</svg>
6358                                        <span class="hidden lg:ml-2 lg:inline">
6359                                            Zur Wunschliste hinzufügen                                        </span>
6360                                    </button>
6361                                                            </div>
6362                        </div>
6363                    </div>
6364
6365                </div>
6366            </div>
6367        </div>
6368            </form>
6369
6370    <form method="post" action="https://www.govi.de/checkout/cart/add/uenc/%25uenc%25/product/258/" class="item product product-item product_addtocart_form card card-interactive p-6 flex flex-col w-full
6371            lg:flex-row" >
6372        <input name="form_key" type="hidden" value="MHFk6olfWgubb4xR" />        <input type="hidden" name="product" value="258" />
6373                                        <a href="https://www.govi.de/aporello-homoeopathie"
6374                class="flex items-center min-h-[362px] product photo product-item-photo block mx-auto mb-3 !border-0 lg:w-2/6 lg:mb-0 lg:mr-5"
6375                tabindex="-1">
6376                <div class="min-h-[362px] flex items-center mx-auto">
6377    <img class="hover:shadow-xl object-contain my-0 mx-auto !border-0 shadow-xl"
6378        x-data=""
6379        @update-gallery-258.window="$root.src = $event.detail"
6380                src="https://www.govi.de/media/catalog/product/cache/5867885552aeb48e79c08ad63de6695b/a/p/ap_hom4414708400001a.jpg"
6381                loading="lazy"
6382                alt="aporello&#x20;Hom&#xF6;opathie"
6383        title="aporello&#x20;Hom&#xF6;opathie"
6384    />
6385</div>
6386            </a>
6387                <div class="product-info flex flex-col grow lg:w-4/6">
6388                        <div class="grid h-full">
6389                <div class="product-info--top self-start">
6390                    <div class="mt-1.5 items-center justify-center text-c7 text-lg text-center lg:text-left">
6391                        <a class="product-item-link font-bold" href="https://www.govi.de/aporello-homoeopathie" :id="`slide-desc-258-${$id('slider-id')}`">
6392                            aporello Homöopathie                        </a>
6393                    </div>
6394                    <div class="max-w-xl items-center justify-center text-center lg:text-left">
6395                                            </div>
6396                </div>
6397
6398                <div class="product-info--bottom self-end">
6399                    <!-- Swatches -->
6400                    <div class="self-center">
6401                        <div class="">
6402                                                                                                                </div>
6403                                                                            <div class="swatch-attribute border-container medium">
6404                                <div class="w-full overflow-x-hidden swatch-attribute-options min-h-14">
6405                                    <div class="flex flex-nowrap w-full overflow-auto snap items-end py-1">
6406                                        <label class="swatch-option relative border-3 cursor-pointer
6407                                            product-option-value-label text-black font-bold border-black !border-3 bg-white hover:bg-c8 hover:border-c8 hover:text-white">
6408                                            Buch                                        </label>
6409                                    </div>
6410                                </div>
6411                            </div>
6412                                                                        <div class="items-center justify-center text-center lg:text-left">
6413                            <p class="flex items-center align-middle available gap-x-2 stock" title="Verfügbarkeit">
6414                                <span id="product-availability-status-258"
6415                                    class="w-3 h-3 rounded-full flex-shrink-0
6416                                    bg-green-500">
6417                                </span>
6418                                <span id="product-availability-258">
6419                                    1-3 Werktage                                </span>
6420                            </p>
6421                        </div>
6422
6423                                                                    </div>
6424                    
6424<script>
6425                        function initPriceBox__6ac2216297565() {
6426                            return {
6427                                updatePrice(priceData) {
6428                                    const regularPriceLabel = this.$root.querySelector('.normal-price .price-label');
6429                                    const approxPriceLabel = this.$root.querySelector('.normal-price .approx-price');
6430                                    const priceDescriptionLabel = this.$root.querySelector('.normal-price .price-description');
6431                                    const regularPriceElement = this.$root.querySelector('.normal-price [data-price-type=finalPrice].price-wrapper .price');
6432                                    const basePriceElement = this.$root.querySelector('.normal-price [data-price-type=basePrice].price-wrapper .price');
6433                                    if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
6434                                        regularPriceLabel.classList.add('hidden');
6435                                    } else {
6436                                        regularPriceLabel.classList.remove('hidden');
6437                                    }
6438                                    regularPriceElement && (regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount));
6439                                    basePriceElement && (basePriceElement.innerText = hyva.formatPrice(priceData.basePrice.amount));
6440
6441                                    const hidePriceLabel = priceData.hidePriceLabel;
6442                                    if (hidePriceLabel) {
6443                                        regularPriceLabel.classList.add('hidden');
6444                                    } else {
6445                                        regularPriceLabel.classList.remove('hidden');
6446                                    }
6447
6448                                    const isApproxPrice = priceData.isApproxPrice;
6449                                    if (!isApproxPrice) {
6450                                        approxPriceLabel.classList.add('hidden');
6451                                    } else {
6452                                        approxPriceLabel.classList.remove('hidden');
6453                                    }
6454
6455                                    document.getElementById('product-availability-' +
6456                                        258).innerHTML = priceData.availabilityText;
6457
6458                                    priceData.availabilityStatusColorRemove.forEach(function(cssClass, index) {
6459                                        document.getElementById('product-availability-status-' +
6460                                                258)
6461                                            .classList.remove(cssClass);
6462                                    });
6463
6464                                    document.getElementById('product-availability-status-' +
6465                                            258)
6466                                        .classList.add(priceData.availabilityStatusColor);
6467
6468                                    priceDescriptionLabel.innerHTML = priceData.priceDescription;
6469
6470                                    regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
6471                                }
6472                            }
6473                        }
6474
6475                        function initCartButtonData__6ac2216297565() {
6476                            return {
6477                                canShowCartButton: true,
6478                                updateCartButton(priceData) {
6479                                    this.canShowCartButton = priceData.showCartButton;
6480                                }
6481                            }
6482                        }
6483                    </script>
6483
6484                    <div class="sm:flex items-end">
6485                        <div class="w-full sm:6/12 " x-data="initPriceBox__6ac2216297565()" @update-prices-258.window="updatePrice($event.detail);">
6486                            <div class="price-box price-final_price" data-role="priceBox" data-product-id="258" data-price-box="product-id-258">
6487    
6488<span
6489    x-data x-id="['product\u002Dprice\u002D258']"    class="price-container price-final_price&#x20;tax&#x20;weee"
6490        >
6491    <span class="price-description"></span>
6492            <span  :id="$id('product\u002Dprice\u002D258')"                data-price-amount="27"
6493        data-price-type="finalPrice"
6494        class="price-wrapper "
6495    ><span class="price">27,00 €</span></span>
6496        </span>
6497
6498</div><div class="price-details">
6499    <span class="tax-details text-s text-c5">
6500        inkl. MwSt., ggf. zzgl. <a class="underline" href="https://www.govi.de/liefer-und-versandkosten">Versand</a>    </span>
6501</div>                        </div>
6502                                                                        <div class="w-full sm:6/12 mt-2">
6503                            <div class="block text-right">
6504                                                                    <button class="w-auto btn btn-primary justify-end lg:justify-center inline-block
6505                                        mr-1"
6506                                        aria-label="In&#x20;den&#x20;Warenkorb&#x20;aporello&#x20;Hom&#xF6;opathie"
6507                                        title="In&#x20;den&#x20;Warenkorb"
6508                                        x-data="initCartButtonData__6ac2216297565()"
6509                                        @update-prices-258.window="updateCartButton($event.detail);"
6510                                        :class="{ invisible: canShowCartButton !== true }">
6511                                        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="h-6 w-6 border-current inline" width="25" height="25" aria-hidden="true">
6512  <path stroke-linecap="round" stroke-linejoin="round" d="M3 3h2l.4 2M7 13h10l4-8H5.4M7 13L5.4 5M7 13l-2.293 2.293c-.63.63-.184 1.707.707 1.707H17m0 0a2 2 0 100 4 2 2 0 000-4zm-8 2a2 2 0 11-4 0 2 2 0 014 0z"/>
6513</svg>
6514                                        <span class="ml-2 inline hidden  lg:inline">
6515                                            In den Warenkorb                                        </span>
6516                                    </button>
6517                                                                                                    <button x-data="initWishlist()" @click.prevent="addToWishlist(258)"
6518                                        aria-label="Zur&#x20;Wunschliste&#x20;hinzuf&#xFC;gen"
6519                                        title="Zur&#x20;Wunschliste&#x20;hinzuf&#xFC;gen"
6520                                        type="button" class="py-3 mt-2 btn-secondary inline-block">
6521                                        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="h-6 w-6 border-current inline" width="25" height="25" aria-hidden="true">
6522  <path stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-3 7h3m-3 4h3m-6-4h.01M9 16h.01"/>
6523</svg>
6524                                        <span class="hidden lg:ml-2 lg:inline">
6525                                            Zur Wunschliste hinzufügen                                        </span>
6526                                    </button>
6527                                                            </div>
6528                        </div>
6529                    </div>
6530
6531                </div>
6532            </div>
6533        </div>
6534            </form>
6535
6536    <form method="post" action="https://www.govi.de/checkout/cart/add/uenc/%25uenc%25/product/1925/" class="item product product-item product_addtocart_form card card-interactive p-6 flex flex-col w-full
6537            lg:flex-row" >
6538        <input name="form_key" type="hidden" value="MHFk6olfWgubb4xR" />        <input type="hidden" name="product" value="1925" />
6539                                        <a href="https://www.govi.de/apotheke-neu-gelebt-buch"
6540                class="flex items-center min-h-[362px] product photo product-item-photo block mx-auto mb-3 !border-0 lg:w-2/6 lg:mb-0 lg:mr-5"
6541                tabindex="-1">
6542                <div class="min-h-[362px] flex items-center mx-auto">
6543    <img class="hover:shadow-xl object-contain my-0 mx-auto !border-0 shadow-xl"
6544        x-data=""
6545        @update-gallery-1925.window="$root.src = $event.detail"
6546                src="https://www.govi.de/media/catalog/product/cache/5867885552aeb48e79c08ad63de6695b/a/p/apotheke_neue_gelebt.jpg"
6547                loading="lazy"
6548                alt="Apotheke&#x20;neu&#x20;gelebt"
6549        title="Apotheke&#x20;neu&#x20;gelebt"
6550    />
6551</div>
6552            </a>
6553                <div class="product-info flex flex-col grow lg:w-4/6">
6554                        <div class="grid h-full">
6555                <div class="product-info--top self-start">
6556                    <div class="mt-1.5 items-center justify-center text-c7 text-lg text-center lg:text-left">
6557                        <a class="product-item-link font-bold" href="https://www.govi.de/apotheke-neu-gelebt-buch" :id="`slide-desc-1925-${$id('slider-id')}`">
6558                            Apotheke neu gelebt                        </a>
6559                    </div>
6560                    <div class="max-w-xl items-center justify-center text-center lg:text-left">
6561                        Mit Mut und Know-how die Zukunft gestalten                    </div>
6562                </div>
6563
6564                <div class="product-info--bottom self-end">
6565                    <!-- Swatches -->
6566                    <div class="self-center">
6567                        <div class="">
6568                                                                                                                </div>
6569                                                                            <div class="swatch-attribute border-container medium">
6570                                <div class="w-full overflow-x-hidden swatch-attribute-options min-h-14">
6571                                    <div class="flex flex-nowrap w-full overflow-auto snap items-end py-1">
6572                                        <label class="swatch-option relative border-3 cursor-pointer
6573                                            product-option-value-label text-black font-bold border-black !border-3 bg-white hover:bg-c8 hover:border-c8 hover:text-white">
6574                                            Buch                                        </label>
6575                                    </div>
6576                                </div>
6577                            </div>
6578                                                                        <div class="items-center justify-center text-center lg:text-left">
6579                            <p class="flex items-center align-middle available gap-x-2 stock" title="Verfügbarkeit">
6580                                <span id="product-availability-status-1925"
6581                                    class="w-3 h-3 rounded-full flex-shrink-0
6582                                    bg-green-500">
6583                                </span>
6584                                <span id="product-availability-1925">
6585                                    1-3 Werktage                                </span>
6586                            </p>
6587                        </div>
6588
6589                                                                    </div>
6590                    
6590<script>
6591                        function initPriceBox__6ac2216299c03() {
6592                            return {
6593                                updatePrice(priceData) {
6594                                    const regularPriceLabel = this.$root.querySelector('.normal-price .price-label');
6595                                    const approxPriceLabel = this.$root.querySelector('.normal-price .approx-price');
6596                                    const priceDescriptionLabel = this.$root.querySelector('.normal-price .price-description');
6597                                    const regularPriceElement = this.$root.querySelector('.normal-price [data-price-type=finalPrice].price-wrapper .price');
6598                                    const basePriceElement = this.$root.querySelector('.normal-price [data-price-type=basePrice].price-wrapper .price');
6599                                    if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
6600                                        regularPriceLabel.classList.add('hidden');
6601                                    } else {
6602                                        regularPriceLabel.classList.remove('hidden');
6603                                    }
6604                                    regularPriceElement && (regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount));
6605                                    basePriceElement && (basePriceElement.innerText = hyva.formatPrice(priceData.basePrice.amount));
6606
6607                                    const hidePriceLabel = priceData.hidePriceLabel;
6608                                    if (hidePriceLabel) {
6609                                        regularPriceLabel.classList.add('hidden');
6610                                    } else {
6611                                        regularPriceLabel.classList.remove('hidden');
6612                                    }
6613
6614                                    const isApproxPrice = priceData.isApproxPrice;
6615                                    if (!isApproxPrice) {
6616                                        approxPriceLabel.classList.add('hidden');
6617                                    } else {
6618                                        approxPriceLabel.classList.remove('hidden');
6619                                    }
6620
6621                                    document.getElementById('product-availability-' +
6622                                        1925).innerHTML = priceData.availabilityText;
6623
6624                                    priceData.availabilityStatusColorRemove.forEach(function(cssClass, index) {
6625                                        document.getElementById('product-availability-status-' +
6626                                                1925)
6627                                            .classList.remove(cssClass);
6628                                    });
6629
6630                                    document.getElementById('product-availability-status-' +
6631                                            1925)
6632                                        .classList.add(priceData.availabilityStatusColor);
6633
6634                                    priceDescriptionLabel.innerHTML = priceData.priceDescription;
6635
6636                                    regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
6637                                }
6638                            }
6639                        }
6640
6641                        function initCartButtonData__6ac2216299c03() {
6642                            return {
6643                                canShowCartButton: true,
6644                                updateCartButton(priceData) {
6645                                    this.canShowCartButton = priceData.showCartButton;
6646                                }
6647                            }
6648                        }
6649                    </script>
6649
6650                    <div class="sm:flex items-end">
6651                        <div class="w-full sm:6/12 " x-data="initPriceBox__6ac2216299c03()" @update-prices-1925.window="updatePrice($event.detail);">
6652                            <div class="price-box price-final_price" data-role="priceBox" data-product-id="1925" data-price-box="product-id-1925">
6653    
6654<span
6655    x-data x-id="['product\u002Dprice\u002D1925']"    class="price-container price-final_price&#x20;tax&#x20;weee"
6656        >
6657    <span class="price-description"></span>
6658            <span  :id="$id('product\u002Dprice\u002D1925')"                data-price-amount="34"
6659        data-price-type="finalPrice"
6660        class="price-wrapper "
6661    ><span class="price">34,00 €</span></span>
6662        </span>
6663
6664</div><div class="price-details">
6665    <span class="tax-details text-s text-c5">
6666        inkl. MwSt., ggf. zzgl. <a class="underline" href="https://www.govi.de/liefer-und-versandkosten">Versand</a>    </span>
6667</div>                        </div>
6668                                                                        <div class="w-full sm:6/12 mt-2">
6669                            <div class="block text-right">
6670                                                                    <button class="w-auto btn btn-primary justify-end lg:justify-center inline-block
6671                                        mr-1"
6672                                        aria-label="In&#x20;den&#x20;Warenkorb&#x20;Apotheke&#x20;neu&#x20;gelebt"
6673                                        title="In&#x20;den&#x20;Warenkorb"
6674                                        x-data="initCartButtonData__6ac2216299c03()"
6675                                        @update-prices-1925.window="updateCartButton($event.detail);"
6676                                        :class="{ invisible: canShowCartButton !== true }">
6677                                        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="h-6 w-6 border-current inline" width="25" height="25" aria-hidden="true">
6678  <path stroke-linecap="round" stroke-linejoin="round" d="M3 3h2l.4 2M7 13h10l4-8H5.4M7 13L5.4 5M7 13l-2.293 2.293c-.63.63-.184 1.707.707 1.707H17m0 0a2 2 0 100 4 2 2 0 000-4zm-8 2a2 2 0 11-4 0 2 2 0 014 0z"/>
6679</svg>
6680                                        <span class="ml-2 inline hidden  lg:inline">
6681                                            In den Warenkorb                                        </span>
6682                                    </button>
6683                                                                                                    <button x-data="initWishlist()" @click.prevent="addToWishlist(1925)"
6684                                        aria-label="Zur&#x20;Wunschliste&#x20;hinzuf&#xFC;gen"
6685                                        title="Zur&#x20;Wunschliste&#x20;hinzuf&#xFC;gen"
6686                                        type="button" class="py-3 mt-2 btn-secondary inline-block">
6687                                        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="h-6 w-6 border-current inline" width="25" height="25" aria-hidden="true">
6688  <path stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-3 7h3m-3 4h3m-6-4h.01M9 16h.01"/>
6689</svg>
6690                                        <span class="hidden lg:ml-2 lg:inline">
6691                                            Zur Wunschliste hinzufügen                                        </span>
6692                                    </button>
6693                                                            </div>
6694                        </div>
6695                    </div>
6696
6697                </div>
6698            </div>
6699        </div>
6700            </form>
6701
6702    <form method="post" action="https://www.govi.de/checkout/cart/add/uenc/%25uenc%25/product/887/" class="item product product-item product_addtocart_form card card-interactive p-6 flex flex-col w-full
6703            lg:flex-row" >
6704        <input name="form_key" type="hidden" value="BENrOXKSxc5SWXl0" />        <input type="hidden" name="product" value="887" />
6705                                        <a href="https://www.govi.de/apothekenpraxis-workbook-mit-apothekenpraxis-fuer-pta-workbook-apothekenpraxis"
6706                class="flex items-center min-h-[362px] product photo product-item-photo block mx-auto mb-3 !border-0 lg:w-2/6 lg:mb-0 lg:mr-5"
6707                tabindex="-1">
6708                <div class="min-h-[362px] flex items-center mx-auto">
6709    <img class="hover:shadow-xl object-contain my-0 mx-auto !border-0 shadow-xl"
6710        x-data=""
6711        @update-gallery-887.window="$root.src = $event.detail"
6712                src="https://www.govi.de/media/catalog/product/cache/5867885552aeb48e79c08ad63de6695b/a/p/apothekenpraxis_f_r_pta_bundle.jpg"
6713                loading="lazy"
6714                alt="Apothekenpraxis-Workbook&#x20;mit&#x20;Apothekenpraxis&#x20;f&#xFC;r&#x20;PTA,&#x20;Workbook&#x20;Apothekenpraxis"
6715        title="Apothekenpraxis-Workbook&#x20;mit&#x20;Apothekenpraxis&#x20;f&#xFC;r&#x20;PTA,&#x20;Workbook&#x20;Apothekenpraxis"
6716    />
6717</div>
6718            </a>
6719                <div class="product-info flex flex-col grow lg:w-4/6">
6720                        <div class="grid h-full">
6721                <div class="product-info--top self-start">
6722                    <div class="mt-1.5 items-center justify-center text-c7 text-lg text-center lg:text-left">
6723                        <a class="product-item-link font-bold" href="https://www.govi.de/apothekenpraxis-workbook-mit-apothekenpraxis-fuer-pta-workbook-apothekenpraxis" :id="`slide-desc-887-${$id('slider-id')}`">
6724                            Apothekenpraxis-Workbook mit Apothekenpraxis für PTA, Workbook Apothekenpraxis                        </a>
6725                    </div>
6726                    <div class="max-w-xl items-center justify-center text-center lg:text-left">
6727                                            </div>
6728                </div>
6729
6730                <div class="product-info--bottom self-end">
6731                    <!-- Swatches -->
6732                    <div class="self-center">
6733                        <div class="">
6734                                                                                                                </div>
6735                                                                            <div class="swatch-attribute border-container medium">
6736                                <div class="w-full overflow-x-hidden swatch-attribute-options min-h-14">
6737                                    <div class="flex flex-nowrap w-full overflow-auto snap items-end py-1">
6738                                        <label class="swatch-option relative border-3 cursor-pointer
6739                                            product-option-value-label text-black font-bold border-black !border-3 bg-white hover:bg-c8 hover:border-c8 hover:text-white">
6740                                            Buch                                        </label>
6741                                    </div>
6742                                </div>
6743                            </div>
6744                                                                        <div class="items-center justify-center text-center lg:text-left">
6745                            <p class="flex items-center align-middle available gap-x-2 stock" title="Verfügbarkeit">
6746                                <span id="product-availability-status-887"
6747                                    class="w-3 h-3 rounded-full flex-shrink-0
6748                                    bg-green-500">
6749                                </span>
6750                                <span id="product-availability-887">
6751                                    1-3 Werktage                                </span>
6752                            </p>
6753                        </div>
6754
6755                                                                    </div>
6756                    
6756<script>
6757                        function initPriceBox__6ac213aeac4e6() {
6758                            return {
6759                                updatePrice(priceData) {
6760                                    const regularPriceLabel = this.$root.querySelector('.normal-price .price-label');
6761                                    const approxPriceLabel = this.$root.querySelector('.normal-price .approx-price');
6762                                    const priceDescriptionLabel = this.$root.querySelector('.normal-price .price-description');
6763                                    const regularPriceElement = this.$root.querySelector('.normal-price [data-price-type=finalPrice].price-wrapper .price');
6764                                    const basePriceElement = this.$root.querySelector('.normal-price [data-price-type=basePrice].price-wrapper .price');
6765                                    if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
6766                                        regularPriceLabel.classList.add('hidden');
6767                                    } else {
6768                                        regularPriceLabel.classList.remove('hidden');
6769                                    }
6770                                    regularPriceElement && (regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount));
6771                                    basePriceElement && (basePriceElement.innerText = hyva.formatPrice(priceData.basePrice.amount));
6772
6773                                    const hidePriceLabel = priceData.hidePriceLabel;
6774                                    if (hidePriceLabel) {
6775                                        regularPriceLabel.classList.add('hidden');
6776                                    } else {
6777                                        regularPriceLabel.classList.remove('hidden');
6778                                    }
6779
6780                                    const isApproxPrice = priceData.isApproxPrice;
6781                                    if (!isApproxPrice) {
6782                                        approxPriceLabel.classList.add('hidden');
6783                                    } else {
6784                                        approxPriceLabel.classList.remove('hidden');
6785                                    }
6786
6787                                    document.getElementById('product-availability-' +
6788                                        887).innerHTML = priceData.availabilityText;
6789
6790                                    priceData.availabilityStatusColorRemove.forEach(function(cssClass, index) {
6791                                        document.getElementById('product-availability-status-' +
6792                                                887)
6793                                            .classList.remove(cssClass);
6794                                    });
6795
6796                                    document.getElementById('product-availability-status-' +
6797                                            887)
6798                                        .classList.add(priceData.availabilityStatusColor);
6799
6800                                    priceDescriptionLabel.innerHTML = priceData.priceDescription;
6801
6802                                    regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
6803                                }
6804                            }
6805                        }
6806
6807                        function initCartButtonData__6ac213aeac4e6() {
6808                            return {
6809                                canShowCartButton: true,
6810                                updateCartButton(priceData) {
6811                                    this.canShowCartButton = priceData.showCartButton;
6812                                }
6813                            }
6814                        }
6815                    </script>
6815
6816                    <div class="sm:flex items-end">
6817                        <div class="w-full sm:6/12 " x-data="initPriceBox__6ac213aeac4e6()" @update-prices-887.window="updatePrice($event.detail);">
6818                            <div class="price-box price-final_price" data-role="priceBox" data-product-id="887" data-price-box="product-id-887">
6819    
6820<span
6821    x-data x-id="['product\u002Dprice\u002D887']"    class="price-container price-final_price&#x20;tax&#x20;weee"
6822        >
6823    <span class="price-description"></span>
6824            <span  :id="$id('product\u002Dprice\u002D887')"                data-price-amount="74.2"
6825        data-price-type="finalPrice"
6826        class="price-wrapper "
6827    ><span class="price">74,20 €</span></span>
6828        </span>
6829
6830</div><div class="price-details">
6831    <span class="tax-details text-s text-c5">
6832        inkl. MwSt., ggf. zzgl. <a class="underline" href="https://www.govi.de/liefer-und-versandkosten">Versand</a>    </span>
6833</div>                        </div>
6834                                                                        <div class="w-full sm:6/12 mt-2">
6835                            <div class="block text-right">
6836                                                                    <button class="w-auto btn btn-primary justify-end lg:justify-center inline-block
6837                                        mr-1"
6838                                        aria-label="In&#x20;den&#x20;Warenkorb&#x20;Apothekenpraxis-Workbook&#x20;mit&#x20;Apothekenpraxis&#x20;f&#xFC;r&#x20;PTA,&#x20;Workbook&#x20;Apothekenpraxis"
6839                                        title="In&#x20;den&#x20;Warenkorb"
6840                                        x-data="initCartButtonData__6ac213aeac4e6()"
6841                                        @update-prices-887.window="updateCartButton($event.detail);"
6842                                        :class="{ invisible: canShowCartButton !== true }">
6843                                        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="h-6 w-6 border-current inline" width="25" height="25" aria-hidden="true">
6844  <path stroke-linecap="round" stroke-linejoin="round" d="M3 3h2l.4 2M7 13h10l4-8H5.4M7 13L5.4 5M7 13l-2.293 2.293c-.63.63-.184 1.707.707 1.707H17m0 0a2 2 0 100 4 2 2 0 000-4zm-8 2a2 2 0 11-4 0 2 2 0 014 0z"/>
6845</svg>
6846                                        <span class="ml-2 inline hidden  lg:inline">
6847                                            In den Warenkorb                                        </span>
6848                                    </button>
6849                                                                                                    <button x-data="initWishlist()" @click.prevent="addToWishlist(887)"
6850                                        aria-label="Zur&#x20;Wunschliste&#x20;hinzuf&#xFC;gen"
6851                                        title="Zur&#x20;Wunschliste&#x20;hinzuf&#xFC;gen"
6852                                        type="button" class="py-3 mt-2 btn-secondary inline-block">
6853                                        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="h-6 w-6 border-current inline" width="25" height="25" aria-hidden="true">
6854  <path stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-3 7h3m-3 4h3m-6-4h.01M9 16h.01"/>
6855</svg>
6856                                        <span class="hidden lg:ml-2 lg:inline">
6857                                            Zur Wunschliste hinzufügen                                        </span>
6858                                    </button>
6859                                                            </div>
6860                        </div>
6861                    </div>
6862
6863                </div>
6864            </div>
6865        </div>
6866            </form>
6867
6868    <form method="post" action="https://www.govi.de/checkout/cart/add/uenc/%25uenc%25/product/403/" class="item product product-item product_addtocart_form card card-interactive p-6 flex flex-col w-full
6869            lg:flex-row" >
6870        <input name="form_key" type="hidden" value="MHFk6olfWgubb4xR" />        <input type="hidden" name="product" value="403" />
6871                                        <a href="https://www.govi.de/arterielle-hypertonie-und-antihypertensive-therapie"
6872                class="flex items-center min-h-[362px] product photo product-item-photo block mx-auto mb-3 !border-0 lg:w-2/6 lg:mb-0 lg:mr-5"
6873                tabindex="-1">
6874                <div class="min-h-[362px] flex items-center mx-auto">
6875    <img class="hover:shadow-xl object-contain my-0 mx-auto !border-0 shadow-xl"
6876        x-data=""
6877        @update-gallery-403.window="$root.src = $event.detail"
6878                src="https://www.govi.de/media/catalog/product/cache/5867885552aeb48e79c08ad63de6695b/9/7/9783774114340_arterielle_hypertonie.jpg"
6879                loading="lazy"
6880                alt="Arterielle&#x20;Hypertonie&#x20;und&#x20;antihypertensive&#x20;Therapie"
6881        title="Arterielle&#x20;Hypertonie&#x20;und&#x20;antihypertensive&#x20;Therapie"
6882    />
6883</div>
6884            </a>
6885                <div class="product-info flex flex-col grow lg:w-4/6">
6886                        <div class="grid h-full">
6887                <div class="product-info--top self-start">
6888                    <div class="mt-1.5 items-center justify-center text-c7 text-lg text-center lg:text-left">
6889                        <a class="product-item-link font-bold" href="https://www.govi.de/arterielle-hypertonie-und-antihypertensive-therapie" :id="`slide-desc-403-${$id('slider-id')}`">
6890                            Arterielle Hypertonie und antihypertensive Therapie                        </a>
6891                    </div>
6892                    <div class="max-w-xl items-center justify-center text-center lg:text-left">
6893                        Fortbildung kompakt                    </div>
6894                </div>
6895
6896                <div class="product-info--bottom self-end">
6897                    <!-- Swatches -->
6898                    <div class="self-center">
6899                        <div class="">
6900                                                                    
6900<script>
6901        function initConfigurableSwatchOptions_403() {
6902            const configurableOptionsComponent = initConfigurableOptions(
6903                '403',
6904                {"attributes":{"172":{"id":"172","code":"medium","label":"Medium","options":[{"id":"18","label":"Buch","products":["401"]},{"id":"28","label":"PDF","products":["402"]}],"position":"0"}},"template":"<%- data.price %>\u00a0\u20ac","currencyFormat":"%s\u00a0\u20ac","optionPrices":{"401":{"baseOldPrice":{"amount":16.728970962617},"oldPrice":{"amount":17.9},"basePrice":{"amount":16.728970962617},"finalPrice":{"amount":17.9},"tierPrices":[],"msrpPrice":{"amount":0},"isApproxPrice":false,"priceDescription":null,"availabilityText":"1-3 Werktage","availabilityStatusColor":"bg-green-500","showCartButton":true,"availabilityStatusColorRemove":["bg-green-500","bg-yellow-500","bg-red-500"]},"402":{"baseOldPrice":{"amount":15.794391523364},"oldPrice":{"amount":16.9},"basePrice":{"amount":15.794391523364},"finalPrice":{"amount":16.9},"tierPrices":[],"msrpPrice":{"amount":0},"isApproxPrice":false,"priceDescription":null,"availabilityText":"sofort lieferbar","availabilityStatusColor":"bg-green-500","showCartButton":true,"availabilityStatusColorRemove":["bg-green-500","bg-yellow-500","bg-red-500"]}},"priceFormat":{"pattern":"%s\u00a0\u20ac","precision":2,"requiredPrecision":2,"decimalSymbol":",","groupSymbol":".","groupLength":3,"integerRequired":false},"prices":{"baseOldPrice":{"amount":15.794391523364},"oldPrice":{"amount":16.9},"basePrice":{"amount":15.794391523364},"finalPrice":{"amount":16.9},"isApproxPrice":null,"priceDescription":null,"availabilityText":""},"productId":"403","chooseText":"W\u00e4hlen Sie eine Option...","images":[],"index":{"401":{"172":"18"},"402":{"172":"28"}},"salable":[],"canDisplayShowOutOfStockStatus":false,"channel":"website","salesChannelCode":"amd_website","sku":{"401":"G000267-Buch","402":"G000267-PDF"},"product_availability":{"401":"1-3 Werktage","402":"sofort lieferbar"},"availabilityStatus":{"401":"1-3 Werktage","402":"sofort lieferbar"},"showCartButton":{"401":true,"402":true},"availabilityStatusColor":{"401":"bg-green-500","402":"bg-green-500"},"product_form":{"401":"kartoniert","402":""},"weight":{"401":"0,199 kg","402":""},"eudr_product_info":{"401":"","402":""},"description":{"401":"<p>Bluthochdruck ist eine Volkskrankheit. Es wird gesch\u00e4tzt, dass altersabh\u00e4ngig \u00fcber 30 Prozent der Erwachsenen darunter leiden. Die arterielle Hypertonie tritt vor allem bei \u00e4lteren Menschen auf. Oft ist sie mit weiteren Risikofaktoren wie \u00dcbergewicht, Diabetes mellitus oder Fettstoffwechselst\u00f6rungen assoziiert.<\/p>\r\n<p>Prof. Dr. Helga Frank und Elisabeth Pfister beschreiben die Ursachen und die Therapie der arteriellen Hypertonie. Bei der essentiellen arteriellen Hypertonie ist die Ursache multifaktoriell. Seltener ist die sekund\u00e4re Hypertonie, bei der eine fassbare Ursache f\u00fcr den Hochdruck verantwortlich ist, etwa ein Hyperaldosteronismus oder das obstruktive Schlafapnoesyndrom.<\/p>\r\n<p>Mit den Prinzipien der Hochdrucktherapie und den Zielwerten f\u00fcr die Blutdruckeinstellung leiten die Autorinnen zur Pharmakotherapie \u00fcber. Ausf\u00fchrlich setzen sie sich mit ACE-Hemmern, Sartanen, Betablockern, Calcium-Kanal-Blockern, Diuretika und Second-line-Antihypertensiva auseinander.<\/p>\r\n<p>Entscheidend f\u00fcr den Behandlungserfolg ist jedoch die Therapietreue des Patienten. Dem Thema \u201eAdh\u00e4renz\u201c ist ein eigenes Kapitel gewidmet und die \u201eTipps f\u00fcr die Beratung\u201c k\u00f6nnen sofort im Apothekenalltag umgesetzt werden.<\/p>\r\n<p>\u00a0<\/p>\r\n<p><strong>Prof. Dr. Helga Frank <\/strong>ist Fach\u00e4rztin f\u00fcr Innere Medizin und Nephrologie, Hypertensiolo-gie DHL, Diabetologie DDG und Lipidologie DGFF. Ihre wissenschaftlichen Schwerpunkte sind unter anderem Bluthochdruck und hypertensive Endorg-ansch\u00e4digung, Diabetes mellitus und diabetische Nephropathie, renale H\u00e4-modynamik und kardiovaskul\u00e4re Komplikationen bei Niereninsuffizienz. Sie hat sich f\u00fcr das Fachgebiet Innere Medizin habilitiert und ist \u00c4rztliche Leiterin des Versorgungszentrums Nephrocare Starnberg GmbH.<\/p>\r\n<p><strong>Elisabeth Pfister<\/strong> ist Apothekerin, Dipl.-Pharm., Medikationsmanager BA Klin-Pharm\u00ae, AMTS-Manager und weitergebildet in Geriatrischer Pharmazie. Sie ist in der Johannes-Apotheke Gr\u00f6benzell in der Klinikversorgung t\u00e4tig, Schwer-punkt Apothekerin auf Station. Freiberuflich Autorin und Referentin zum Medikationsmanagement und AMTS-Themen.<\/p>","402":"<p>Bluthochdruck ist eine Volkskrankheit. Es wird gesch\u00e4tzt, dass altersabh\u00e4ngig \u00fcber 30 Prozent der Erwachsenen darunter leiden. Die arterielle Hypertonie tritt vor allem bei \u00e4lteren Menschen auf. Oft ist sie mit weiteren Risikofaktoren wie \u
690400dcbergewicht, Diabetes mellitus oder Fettstoffwechselst\u00f6rungen assoziiert.<\/p>\r\n<p>Prof. Dr. Helga Frank und Elisabeth Pfister beschreiben die Ursachen und die Therapie der arteriellen Hypertonie. Bei der essentiellen arteriellen Hypertonie ist die Ursache multifaktoriell. Seltener ist die sekund\u00e4re Hypertonie, bei der eine fassbare Ursache f\u00fcr den Hochdruck verantwortlich ist, etwa ein Hyperaldosteronismus oder das obstruktive Schlafapnoesyndrom.<\/p>\r\n<p>Mit den Prinzipien der Hochdrucktherapie und den Zielwerten f\u00fcr die Blutdruckeinstellung leiten die Autorinnen zur Pharmakotherapie \u00fcber. Ausf\u00fchrlich setzen sie sich mit ACE-Hemmern, Sartanen, Betablockern, Calcium-Kanal-Blockern, Diuretika und Second-line-Antihypertensiva auseinander.<\/p>\r\n<p>Entscheidend f\u00fcr den Behandlungserfolg ist jedoch die Therapietreue des Patienten. Dem Thema \u201eAdh\u00e4renz\u201c ist ein eigenes Kapitel gewidmet und die \u201eTipps f\u00fcr die Beratung\u201c k\u00f6nnen sofort im Apothekenalltag umgesetzt werden.<\/p>\r\n<p>\u00a0<\/p>\r\n<p><strong>Prof. Dr. Helga Frank <\/strong>ist Fach\u00e4rztin f\u00fcr Innere Medizin und Nephrologie, Hypertensiolo-gie DHL, Diabetologie DDG und Lipidologie DGFF. Ihre wissenschaftlichen Schwerpunkte sind unter anderem Bluthochdruck und hypertensive Endorg-ansch\u00e4digung, Diabetes mellitus und diabetische Nephropathie, renale H\u00e4-modynamik und kardiovaskul\u00e4re Komplikationen bei Niereninsuffizienz. Sie hat sich f\u00fcr das Fachgebiet Innere Medizin habilitiert und ist \u00c4rztliche Leiterin des Versorgungszentrums Nephrocare Starnberg GmbH.<\/p>\r\n<p><strong>Elisabeth Pfister<\/strong> ist Apothekerin, Dipl.-Pharm., Medikationsmanager BA Klin-Pharm\u00ae, AMTS-Manager und weitergebildet in Geriatrischer Pharmazie. Sie ist in der Johannes-Apotheke Gr\u00f6benzell in der Klinikversorgung t\u00e4tig, Schwer-punkt Apothekerin auf Station. Freiberuflich Autorin und Referentin zum Medikationsmanagement und AMTS-Themen.<\/p>"},"isbn":{"401":"978-3-7741-1434-0","402":"978-3-7741-1435-7"},"article_number":{"401":"00011201","402":"00041201"},"pzn":{"401":"","402":""},"series":{"401":"Schriftenreihe der Bayerischen Landesapothekerkammer - Band 99, Fortbildung kompakt","402":"Schriftenreihe der Bayerischen Landesapothekerkammer - Band 99, Fortbildung kompakt"},"edition_stand_issue_number":{"401":"","402":""},"publishing_year":{"401":"2019","402":"2019"},"pages_maps_sheets":{"401":"88 S.","402":"88 S."},"illustrations":{"401":"14 Abb.","402":"14 Abb."},"tables":{"401":"15 Tab.","402":"15 Tab."},"components":{"401":"","402":""},"measure":{"401":"15,5 x 22 x 0,6 cm","402":""},"product_safety_address":{"401":"Avoxa- Mediengruppe Deutscher Apotheker GmbH<br>Carl-Mannich-Str. 26, 65760 Eschborn<br>[email protected]","402":"Avoxa- Mediengruppe Deutscher Apotheker GmbH<br>Carl-Mannich-Str. 26, 65760 Eschborn<br>[email protected]"},"product_safety_additional_info":{"401":"","402":""},"copy_protection":{"401":"","402":"mit Wasserzeichen"},"file_size":{"401":"","402":""},"issn":{"401":"","402":""},"rights_management":{"401":"","402":""},"system_requirements":{"401":"","402":""},"defaultValues":{"172":"18"}}            );
6905            const swatchOptionsComponent = initSwatchOptions({"172":{"18":{"type":"0","value":"Buch","label":"Buch"},"28":{"type":"0","value":"PDF","label":"PDF"},"additional_data":"{\"swatch_input_type\":\"text\",\"update_product_preview_image\":\"1\",\"use_product_image_for_swatch\":0}"}});
6906
6907            return Object.assign(
6908                configurableOptionsComponent,
6909                swatchOptionsComponent,
6910                {
6911                    mediaCallback: "https\u003A\u002F\u002Fwww.govi.de\u002Fswatches\u002Fajax\u002Fmedia\u002F",
6912                    changeOption(optionId, value, skipUpdateGallery) {
6913                        if (value === '') {
6914                            return;                             this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
6915                        } else {
6916                            this.selectedValues[optionId] = value;
6917                        }
6918                        this.findSimpleIndex();
6919                        this.findAllowedAttributeOptions();
6920                        this.updatePrices();
6921                        !skipUpdateGallery && this.updateGallery();
6922
6923                         const candidates = this.findProductIdsForPartialSelection(this.selectedValues);
6924
6925                                                window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
6926                            detail: {
6927                                productId: this.productId,
6928                                optionId,
6929                                value,
6930                                productIndex: this.productIndex,
6931                                selectedValues: this.selectedValues,
6932                                candidates: candidates,
6933                                skuCandidates: Object.values(candidates).map(id =>
6933 this.optionConfig.sku?.[id] ?? null).filter(Boolean),
6934                            }
6935                        }));
6936                    },
6937                    updateGallery() {
6938                        if (!this.productIndex) {
6939                            return;
6940                        }
6941
6942                        fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
6943                                method: 'GET',
6944                                headers: {
6945                                    'Content-Type': 'application/json',
6946                                    'X-Requested-With': 'XMLHttpRequest'
6947                                }
6948                            }
6949                        ).then(response => {
6950                                return response.json()
6951                            }
6952                        ).then(data => {
6953                            if (data.errors) {
6954                                // non critical failure only console logged
6955                                console.warn(data.errors);
6956                            } else {
6957                                const image = data && data.medium;
6958
6959                                image && window.dispatchEvent(
6960                                    new CustomEvent(
6961                                        "update-gallery-403",
6962                                        {detail: image}
6963                                    )
6964                                );
6965                            }
6966                        }).catch(error => {
6967                            console.warn(error)
6968                        });
6969                    },
6970                    preselectQuerystringItems() {
6971                        // pre-select option like ?size=167
6972                        const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
6973                        Object.values(this.optionConfig.attributes).map(attribute => {
6974                            // Don't update images on load, since PLPs already set the main image to the selected options
6975                            const skipUpdateGallery = true;
6976                            urlQueryParams.get(attribute.code) &&
6977                            this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
6978                        });
6979                    },
6980                    preselectItemsBasedOnLocation(getLocationValue) {
6981                        Object.values(this.optionConfig.attributes).map(attribute => {
6982                            if(getLocationValue(attribute)){
6983                                this.changeOption(attribute.id, getLocationValue(attribute))
6984                            }
6985                        });
6986                    },
6987                    focusOption(productId,selectedOptionId){
6988                        let time_403 = setInterval(
6989                            function(){
6990                                if(document.getElementById('attribute-option-' + productId + '-' + selectedOptionId) !== null){
6991                                    document.getElementById('attribute-option-' + productId + '-' + selectedOptionId).click();
6992                                    document.getElementById('attribute-option-' + productId + '-' + selectedOptionId).focus();
6993                                    clearInterval(time_403);
6994                                }
6995                            }, 50
6996                        );
6997                    },
6998                    onGetCartData(data) {
6999                        this.preselectCartItems(data);
7000                        this.preselectQuerystringItems();
7001                        this.preselectLocationHashItems();
7002                                                this.focusOption(403, 18);
7003                                            },
7004                    updatePrices() {
7005                        const value = this.productIndex ?
7006                            this.optionConfig.optionPrices[this.productIndex] :
7007                            this.optionConfig.prices;
7008
7009                        let hidePriceLabel = this.productIndex ? true : false;
7010
7011                        window.dispatchEvent(
7012                            new CustomEvent(
7013                                "update-prices-" + this.productId,
7014                                {
7015                                    detail: Object.assign(
7016                                        value,
7017                                        {
7018                                            isMinimalPrice: this.calculateIsMinimalPrice(),
7019                                            hidePriceLabel: hidePriceLabel,
7020                                            isApproxPrice: this.optionConfig.optionPrices[this.productIndex]['isApproxPrice'],
7021                                            availabilityText: this.optionConfig.optionPrices[this.productIndex]['availabilityText'],
7022                                            priceDescription: this.optionConfig.optionPrices[this.productIndex]['priceDescription']
7023                                        }
7024                                    )
7025                                }
7026                            )
7027                        );
7028
7029                    },
7030                    mouseDown: false,
7031                    startX: 0,
7032                    maxScroll: 0,
7033                    scrollLeft: null,
7034                    slider: null,
7035                    scrollEvents: {
7036                        ['@mousedown'](e) {
7037                            this.slider = e.target.closest('.snap');
7038                            if (!this.slider) {
7039                                return;
7040                            }
7041                            this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
7042                            this.startX = e.pageX - this.slider.offsetLeft;
7043                            this.scrollLeft = this.slider.scrollLeft;
7044                            this.mouseDown = true;
7045                        },
7046                        ['@mouseout.self']() {
7047                            this.mouseDown = false;
7048                        },
7049                        ['@mouseup']() {
7050                            this.mouseDown = false;
7051                        },
7052                        ['@mousemove'](e) {
7053                            e.preventDefault();
7054                            if (!this.mouseDown) {
7055                                return;
7056                            }
7057                            const x = e.pageX - this.slider.offsetLeft;
7058                            const scroll = x - this.startX;
7059                            const scrollLeft = this.scrollLeft - scroll;
7060
7061                            if (scrollLeft > this.maxScroll) {
7062                                this.slider.scrollLeft = this.maxScroll;
7063                                return
7064                            }
7065                            this.slider.scrollLeft = this.scrollLeft - scroll;
7066                        },
7067                        ['@onselectstart']() {
7068                            return false;
7069                        }
7070                    },
7071                    resizeEvent() {
7072                        Array.from(this.$root.querySelectorAll('.snap')).forEach(sli
7072der => {
7073                            slider.scrollLeft = 0;
7074                        })
7075                    }
7076                }
7077            );
7078        }
7079
7080    </script>
7080
7081
7082<div x-data="initConfigurableSwatchOptions_403()"
7083     x-defer="intersect"
7084     x-init="findAllowedAttributeOptions()"
7085     @private-content-loaded.window="onGetCartData($event.detail.data)"
7086     @resize.window="resizeEvent()"
7087     class="relative"
7088>
7089    <div>
7090                                
7091                    <div class="swatch-attribute border-container
7092            medium"
7093        >
7094            <div class="w-full overflow-x-hidden swatch-attribute-options min-h-14 items-end">
7095                <div class="flex flex-wrap gap-y-4 w-full overflow-auto snap items-center py-1"
7096                    id="attribute-label-403-172"
7097                    role="radiogroup"
7098                    x-bind="scrollEvents"
7099                    aria-label="Medium"
7100                >
7101                    <template x-for="(item, index) in optionConfig.attributes[172].options"
7102                              :key="item.id"
7103                    >
7104                        
7105<div x-id="['attribute-option-403-'+item.id]">
7106    <template x-if="optionIsEnabled(172, item.id) && optionIsActive(172, item.id)">
7107        <label
7108            :for="$id('attribute-option-403-'+item.id)"
7109            class="swatch-option relative border-3 text-c7 border-c7 cursor-pointer select-none product-option-value-label "
7110            :class="{
7111                'bg-white text-c5 border-c5 !border-3 hover:!bg-c8 hover:!text-white hover:!border-c8 hover:!border-3 font-bold':
7112                    (selectedValues[172] === item.id),
7113                '!border-c5 bg-white !text-c5 hover:!bg-c8 hover:!text-white hover:!border-c8':
7114                    (selectedValues[172] !== item.id),
7115                'w-6 h-6' : !isTextSwatch(172, item.id),
7116                'ring-2 ring-c8' : focusedLabel === item.id,
7117                'bg-white' : focusedLabel === item.id
7118            }"
7119            :style="getSwatchBackgroundStyle('172',item.id)"
7120                    >
7121            <input
7122                :id="$id('attribute-option-403-'+item.id)"
7123                :value="item.id"
7124                name="super_attribute[172]"
7125                type="radio"
7126                class="inline-block absolute p-0 border-0 focus:border-0 focus:ring-0 product-option-value-input"
7127                style="z-index:-1"
7128                x-on:focus="focusLabel(item.id)"
7129                x-on:blur="blurLabel()"
7130                x-on:change="changeOption(172, $event.target.value)"
7131                x-on:click="clearOptionIfActive(172, item.id)"
7132                x-model="selectedValues[172]"
7133                :required="getAllowedAttributeOptions(172).filter(
7134                    attributeOption => selectedValues[attributeOption]
7135                ).length === 0"
7136                :aria-label="getSwatchText(172, item.id)"
7137                aria-describedby="attribute-label-403-172"
7138            >
7139            <template x-if="isTextSwatch(172, item.id)">
7140                <div
7141                    x-html="getSwatchText(172, item.id)"
7142                    class="whitespace-nowrap"
7143                    aria-hidden="true"
7144                ></div>
7145            </template>
7146        </label>
7147    </template>
7148
7149    <template x-if="optionIsEnabled(172, item.id) && !optionIsActive(172, item.id)">
7150        <div
7151            class="relative border-3 shadow-sm opacity-50 cursor-pointer select-none border-container-darker swatch-option bg-container-lighter"
7152            :class="{
7153                                                        'w-6 h-6' : !isTextSwatch(172, item.id),
7154                                                    }"
7155            :style="getSwatchBackgroundStyle('172',item.id)"
7156        >
7157            <div x-html="getSwatchText(172, item.id)"
7158                 class="whitespace-nowrap"
7159                 :class="{ 'sr-only' : !isTextSwatch(172, item.id) }"
7160            ></div>
7161            <svg class="absolute inset-0 w-full h-full text-gray-500 bg-white bg-opacity-25">
7162                <line x1="0" y1="100%" x2="100%" y2="0" class="stroke-current stroke-1"></line>
7163            </svg>
7164        </div>
7165    </template>
7166</div>
7167                    </template>
7168                </div>
7169            </div>
7170        </div>
7171            </div>
7172    </div>
7173                                                    </div>
7174                                                                                                <div class="items-center justify-center text-center lg:text-left">
7175                            <p class="flex items-center align-middle available gap-x-2 stock" title="Verfügbarkeit">
7176                                <span id="product-availability-status-403"
7177                                    class="w-3 h-3 rounded-full flex-shrink-0
7178                                    ">
7179                                </span>
7180                                <span id="product-availability-403">
7181                                                                    </span>
7182                            </p>
7183                        </div>
7184
7185                                                                                                                                                    </div>
7186                    
7186<script>
7187                        function initPriceBox__6ac221629d50b() {
7188                            return {
7189                                updatePrice(priceData) {
7190                                    const regularPriceLabel = this.$root.querySelector('.normal-price .price-label');
7191                                    const approxPriceLabel = this.$root.querySelector('.normal-price .approx-price');
7192                                    const priceDescriptionLabel = this.$root.querySelector('.normal-price .price-description');
7193                                    const regularPriceElement = this.$root.querySelector('.normal-price [data-price-type=finalPrice].price-wrapper .price');
7194                                    const basePriceElement = this.$root.querySelector('.normal-price [data-price-type=basePrice].price-wrapper .price');
7195                                    if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
7196                                        regularPriceLabel.classList.add('hidden');
7197                                    } else {
7198                                        regularPriceLabel.classList.remove('hidden');
7199                                    }
7200                                    regularPriceElement && (regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount));
7201                                    basePriceElement && (basePriceElement.innerText = hyva.formatPrice(priceData.basePrice.amount));
7202
7203                                    const hidePriceLabel = priceData.hidePriceLabel;
7204                                    if (hidePriceLabel) {
7205                                        regularPriceLabel.classList.add('hidden');
7206                                    } else {
7207                                        regularPriceLabel.classList.remove('hidden');
7208                                    }
7209
7210                                    const isApproxPrice = priceData.isApproxPrice;
7211                                    if (!isApproxPrice) {
7212                                        approxPriceLabel.classList.add('hidden');
7213                                    } else {
7214                                        approxPriceLabel.classList.remove('hidden');
7215                                    }
7216
7217                                    document.getElementById('product-availability-' +
7218                                        403).innerHTML = priceData.availabilityText;
7219
7220                                    priceData.availabilityStatusColorRemove.forEach(function(cssClass, index) {
7221                                        document.getElementById('product-availability-status-' +
7222                                                403)
7223                                            .classList.remove(cssClass);
7224                                    });
7225
7226                                    document.getElementById('product-availability-status-' +
7227                                            403)
7228                                        .classList.add(priceData.availabilityStatusColor);
7229
7230                                    priceDescriptionLabel.innerHTML = priceData.priceDescription;
7231
7232                                    regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
7233                                }
7234                            }
7235                        }
7236
7237                        function initCartButtonData__6ac221629d50b() {
7238                            return {
7239                                canShowCartButton: true,
7240                                updateCartButton(priceData) {
7241                                    this.canShowCartButton = priceData.showCartButton;
7242                                }
7243                            }
7244                        }
7245                    </script>
7245
7246                    <div class="sm:flex items-end">
7247                        <div class="w-full sm:6/12 " x-data="initPriceBox__6ac221629d50b()" @update-prices-403.window="updatePrice($event.detail);">
7248                            <div class="price-box price-final_price" data-role="priceBox" data-product-id="403" data-price-box="product-id-403"><span class="normal-price">
7249    
7250<span
7251    x-data x-id="['product\u002Dprice\u002D403']"    class="price-container price-final_price&#x20;tax&#x20;weee"
7252        >
7253    <span class="price-description"></span>
7254            <span class="price-label">Ab</span>
7255                <span class="approx-price">ca. </span>
7256        <span  :id="$id('product\u002Dprice\u002D403')"                data-price-amount="16.9"
7257        data-price-type="finalPrice"
7258        class="price-wrapper "
7259    ><span class="price">16,90 €</span></span>
7260        </span>
7261</span>
7262
7263
7264</div><div class="price-details">
7265    <span class="tax-details text-s text-c5">
7266        inkl. MwSt., ggf. zzgl. <a class="underline" href="https://www.govi.de/liefer-und-versandkosten">Versand</a>    </span>
7267</div>                        </div>
7268                                                                        <div class="w-full sm:6/12 mt-2">
7269                            <div class="block text-right">
7270                                                                    <button class="w-auto btn btn-primary justify-end lg:justify-center inline-block
7271                                        mr-1"
7272                                        aria-label="In&#x20;den&#x20;Warenkorb&#x20;Arterielle&#x20;Hypertonie&#x20;und&#x20;antihypertensive&#x20;Therapie"
7273                                        title="In&#x20;den&#x20;Warenkorb"
7274                                        x-data="initCartButtonData__6ac221629d50b()"
7275                                        @update-prices-403.window="updateCartButton($event.detail);"
7276                                        :class="{ invisible: canShowCartButton !== true }">
7277                                        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="h-6 w-6 border-current inline" width="25" height="25" aria-hidden="true">
7278  <path stroke-linecap="round" stroke-linejoin="round" d="M3 3h2l.4 2M7 13h10l4-8H5.4M7 13L5.4 5M7 13l-2.293 2.293c-.63.63-.184 1.707.707 1.707H17m0 0a2 2 0 100 4 2 2 0 000-4zm-8 2a2 2 0 11-4 0 2 2 0 014 0z"/>
7279</svg>
7280                                        <span class="ml-2 inline hidden  lg:inline">
7281                                            In den Warenkorb                                        </span>
7282                                    </button>
7283                                                                                                    <button x-data="initWishlist()" @click.prevent="addToWishlist(403)"
7284                                        aria-label="Zur&#x20;Wunschliste&#x20;hinzuf&#xFC;gen"
7285                                        title="Zur&#x20;Wunschliste&#x20;hinzuf&#xFC;gen"
7286                                        type="button" class="py-3 mt-2 btn-secondary inline-block">
7287                                        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="h-6 w-6 border-current inline" width="25" height="25" aria-hidden="true">
7288  <path stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-3 7h3m-3 4h3m-6-4h.01M9 16h.01"/>
7289</svg>
7290                                        <span class="hidden lg:ml-2 lg:inline">
7291                                            Zur Wunschliste hinzufügen                                        </span>
7292                                    </button>
7293                                                            </div>
7294                        </div>
7295                    </div>
7296
7297                </div>
7298            </div>
7299        </div>
7300            </form>
7301            </div>
7302        </div>
7303        
7303<script>
7304    function initToolbar_6ac22162a7f82() {
7305        return {
7306            options: {"productListToolbarForm":{"mode":"product_list_mode","direction":"product_list_dir","order":"product_list_order","limit":"product_list_limit","modeDefault":"list","directionDefault":"asc","orderDefault":"name","limitDefault":10,"url":"https:\/\/www.govi.de\/apotheke\/pharmazeutische-beratung","formKey":"MHFk6olfWgubb4xR","post":false,"page":"p"}}.productListToolbarForm || {},
7307            getUrlParams: function () {
7308                let decode = window.decodeURIComponent,
7309                    urlPaths = this.options.url.split('?'),
7310                    urlParams = urlPaths[1] ? urlPaths[1].split('&') : [],
7311                    params = {},
7312                    parameters, i;
7313
7314                for (i = 0; i < urlParams.length; i++) {
7315                    parameters = urlParams[i].split('=');
7316                    params[decode(parameters[0])] = parameters[1] !== undefined ?
7317                        decode(parameters[1].replace(/\+/g, '%20')) :
7318                        '';
7319                }
7320
7321                return params;
7322            },
7323            getCurrentLimit: function () {
7324                return this.getUrlParams()[this.options.limit] || this.options.limitDefault;
7325            },
7326            getCurrentPage: function () {
7327                return this.getUrlParams()[this.options.page] || 1;
7328            },
7329            changeUrl(paramName, paramValue, defaultValue) {
7330                let urlPaths = this.options.url.split('?'),
7331                    baseUrl = urlPaths[0],
7332                    paramData = this.getUrlParams(),
7333                    currentPage = this.getCurrentPage(),
7334                    newPage;
7335
7336                /**
7337                 * calculates the page on which the first item of the current page will
7338                 * be with the new limit and sets that number as the new page
7339                 */
7340                if (currentPage > 1 && paramName === this.options.limit) {
7341                    newPage = Math.floor(this.getCurrentLimit() * (currentPage - 1) / paramValue) + 1;
7342
7343                    if (newPage > 1) {
7344                        paramData[this.options.page] = newPage;
7345                    } else {
7346                        delete paramData[this.options.page];
7347                    }
7348                }
7349
7350                paramData[paramName] = paramValue;
7351
7352                if (this.options.post) {
7353                    hyva.postForm({action: baseUrl, data: paramData});
7354                } else {
7355                    if (paramValue === defaultValue.toString()) {
7356                        delete paramData[paramName];
7357                    }
7358                    paramData = Object.keys(paramData).length === 0
7359                        ? ''
7360                        : '?' + (new URLSearchParams(paramData));
7361                    location.href = baseUrl + paramData
7362                }
7363            }
7364        }
7365    }
7366</script>
7366
7367    <div x-data="initToolbar_6ac22162a7f82()"
7368         class="toolbar toolbar-products w-full flex flex-col xl:flex-row">
7369
7370        <div class="w-full xl:w-2/12 text-center xl:text-left mb-4">
7371            <p class="toolbar-amount text-sm leading-5 text-gray-700 w-full"
7372    id="toolbar-amount-bottom">
7373            Artikel <span class="toolbar-number">1</span>-<span class="toolbar-number">10</span> von <span class="toolbar-number">111</span>    </p>
7374        </div>
7375
7376        <div class="w-full xl:w-5/12 text-center xl:text-left mb-4">
7377            
7378    
7379    
7380    <div class="flex justify-center">
7381                    <nav class="inline-flex items-center pages" aria-label="pagination">
7382                <ol class="relative z-0 inline-flex shadow-sm items pages-items">
7383                    <li class="item pages-item-previous">
7384                                                                            <a
7385                                role="link"
7386                                class="previous relative inline-flex items-center text-sm font-medium leading-5 bg-white border border-gray-300 rounded-l-md px-3 py-2 text-gray-400
7387                                 border-gray-200"
7388                                aria-disabled="true"
7389                                aria-label="Zur&#xFC;ck"
7390                            >
7391                                <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" width="20" height="20" aria-hidden="true">
7392  <path stroke-linecap="round" stroke-linejoin="round" d="M15 19l-7-7 7-7"/>
7393</svg>
7394                            </a>
7395                                            </li>
7396
7397                    
7398                    
7399                                                                        <li class="item -ml-px">
7400                                <a
7401                                    href="https://www.govi.de/apotheke/pharmazeutische-beratung"
7402                                    class="page relative inline-flex items-center text-sm font-medium leading-5 bg-white border border-gray-300 transition duration-150 ease-in-out hover:text-gray-400 focus:z-10 focus:outline-none focus:shadow-outline-blue active:bg-gray-100 active:text-gray-500 z-10 px-4 py-2 text-c7 bg-white border-c7 hover:bg-c8 hover:text-white hover:border-c8 focus:outline-none focus:border-2 focus:border-c8 !font-bold"
7403                                    aria-current="page"
7404                                >
7405                                    <span class="sr-only label">
7406                                        Sie lesen gerade die Seite                                    </span>
7407                                    1                                </a>
7408                            </li>
7409                                                                                                <li class="item -ml-px">
7410                                <a
7411                                    href="https://www.govi.de/apotheke/pharmazeutische-beratung?p=2"
7412                                    class="page relative inline-flex items-center text-sm font-medium leading-5 bg-white border border-gray-300 transition duration-150 ease-in-out hover:text-gray-400 focus:z-10 focus:outline-none focus:shadow-outline-blue active:bg-gray-100 active:text-gray-500 px-4 py-2 text-c5 hover:bg-c8 hover:text-white hover:border-c8 focus:outline-none focus:border-2 focus:border-c8"
7413                                >
7414                                    <span class="sr-only label">Seite</span>
7415                                    <span>2</span>
7416                                </a>
7417                            </li>
7418                                                                                                <li class="item -ml-px">
7419                                <a
7420                                    href="https://www.govi.de/apotheke/pharmazeutische-beratung?p=3"
7421                                    class="page relative inline-flex items-center text-sm font-medium leading-5 bg-white border border-gray-300 transition duration-150 ease-in-out hover:text-gray-400 focus:z-10 focus:outline-none focus:shadow-outline-blue active:bg-gray-100 active:text-gray-500 px-4 py-2 text-c5 hover:bg-c8 hover:text-white hover:border-c8 focus:outline-none focus:border-2 focus:border-c8"
7422                                >
7423                                    <span class="sr-only label">Seite</span>
7424                                    <span>3</span>
7425                                </a>
7426                            </li>
7427                                                                                                <li class="item -ml-px">
7428                                <a
7429                                    href="https://www.govi.de/apotheke/pharmazeutische-beratung?p=4"
7430                                    class="page relative inline-flex items-center text-sm font-medium leading-5 bg-white border border-gray-300 transition duration-150 ease-in-out hover:text-gray-400 focus:z-10 focus:outline-none focus:shadow-outline-blue active:bg-gray-100 active:text-gray-500 px-4 py-2 text-c5 hover:bg-c8 hover:text-white hover:border-c8 focus:outline-none focus:border-2 focus:border-c8"
7431                                >
7432                                    <span class="sr-only label">Seite</span>
7433                                    <span>4</span>
7434                                </a>
7435                            </li>
7436                                                                                                <li class="item -ml-px">
7437                                <a
7438                                    href="https://www.govi.de/apotheke/pharmazeutische-beratung?p=5"
7439                                    class="page relative inline-flex items-center text-sm font-medium leading-5 bg-white border border-gray-300 transition duration-150 ease-in-out hover:text-gray-400 focus:z-10 focus:outline-none focus:shadow-outline-blue active:bg-gray-100 active:text-gray-500 px-4 py-2 text-c5 hover:bg-c8 hover:text-white hover:border-c8 focus:outline-none focus:border-2 focus:border-c8"
7440                                >
7441                                    <span class="sr-only label">Seite</span>
7442                                    <span>5</span>
7443                                </a>
7444                            </li>
7445                                            
7446                    
7447                    
7448                    <li class="item pages-item-next -ml-px">
7449                                                                                <a
7450                                href="https://www.govi.de/apotheke/pharmazeutische-beratung?p=2"
7451                                class="action  next relative inline-flex items-center text-sm font-medium leading-5 bg-white border border-gray-300 transition duration-150 ease-in-out hover:text-gray-400 focus:z-10 focus:outline-none focus:shadow-outline-blue active:bg-gray-100 active:text-gray-500 rounded-r-md px-3 py-2 text-gray-500 hover:bg-c8 hover:text-white hover:border-c8 focus:outline-none focus:border-2 focus:border-c8"
7452                                                                    aria-label="Weiter"
7453                                                            >
7454                                                                    <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" width="20" height="20" aria-hidden="true">
7455  <path stroke-linecap="round" stroke-linejoin="round" d="M9 5l7 7-7 7"/>
7456</svg>
7457                                                            </a>
7458                                            </li>
7459                </ol>
7460            </nav>
7461            </div>
7462
7463    
7464    
7465
7466        </div>
7467
7468        <div class="w-full xl:w-5/12 text-center xl:text-left mb-4 flex gap-2 justify-center xl:justify-end">
7469                            
7470                <div class="hidden modes w-20 order-1 col-span-1 sm:col-span-2 md:col-span-1 lg:col-span-2"></div>
7471    
7472                
7473    <div class="field limiter w-auto">
7474        <div class="control">
7475            <label class="text-sm label">
7476                <span aria-hidden="true">Zeige</span>
7477
7478                <select
7479                    data-role="limiter"
7480                    class="form-select limiter-options"
7481                    @change="changeUrl(
7482                        'product_list_limit',
7483                        $event.currentTarget.options[$event.currentTarget.selectedIndex].value,
7484                        options.limitDefault
7485                    )"
7486                    aria-label="Show&#x20;items&#x20;per&#x20;page"
7487                >
7488                                    <option value="5"
7489                        >
7490                        5                    </option>
7491                                    <option value="10"
7492                                                    selected="selected"
7493                        >
7494                        10                    </option>
7495                                    <option value="15"
7496                        >
7497                        15                    </option>
7498                                    <option value="20"
7499                        >
7500                        20                    </option>
7501                                    <option value="25"
7502                        >
7503                        25                    </option>
7504                                </select>
7505            </label>
7506        </div>
7507    </div>
7508                <div class="toolbar-sorter sorter w-auto relative">
7509    <select data-role="sorter" class="form-select sorter-options mr-3" 
7510        aria-label="Sortieren nach" @change="changeUrl(
7511                'product_list_order',
7512                $event.currentTarget.options[$event.currentTarget.selectedIndex].value,
7513                options.orderDefault
7514            )">
7515                    <option value="name"                 selected="selected" >
7516                Artikelname            </option>
7517                    <option value="price" >
7518                Preis            </option>
7519                    <option value="publishing_year" >
7520                Erscheinungsjahr            </option>
7521                    <option value="medium" >
7522                Medium            </option>
7523                    <option value="default_order" >
7524                Standard            </option>
7525            </select>
7526            <a title="Absteigend&#x20;sortieren" 
7527            href="#" class="action sorter-action sort-asc absolute top-3 -right-4"
7528            @click.prevent="changeUrl('product_list_dir', 'desc', options.directionDefault)">
7529            <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" width="24" height="24" role="img">
7530  <path stroke-linecap="round" stroke-linejoin="round" d="M3 4h13M3 8h9m-9 4h9m5-4v12m0 0l-4-4m4 4l4-4"/>
7531<title>Absteigend&amp;#x20;sortieren</title></svg>
7532        </a>
7533    </div>                    </div>
7534
7535    </div>
7536    </section>
7537</div><aside class="sidebar sidebar-additional">
7538    
7538<script>
7539        function initWishlistOnWishlistSidebar() {
7540            function wishlistSidebarFetchHandler(body, postUrl, isRemoveAction = true) {
7541                const messages = {
7542                    "success": isRemoveAction
7543                        ? "\u00251\u0020wurde\u0020von\u0020Ihrer\u0020Wunschliste\u0020entfernt."
7544                        : "\u00251\u0020wurde\u0020zu\u0020Ihrer\u0020Wunschliste\u0020hinzugef\u00FCgt.",
7545                    "warning": isRemoveAction
7546                        ? "Der\u0020Artikel\u0020konnte\u0020nicht\u0020von\u0020Ihrer\u0020Wunschliste\u0020entfernt\u0020werden."
7547                        : "Der\u0020Artikel\u0020konnte\u0020nicht\u0020zu\u0020Ihrer\u0020Wunschliste\u0020hinzugef\u00FCgt\u0020werden.",
7548                }
7549
7550                const postHeaders = {
7551                    "headers": {
7552                        "content-type": "application/x-www-form-urlencoded; charset=UTF-8",
7553                    },
7554                    body: body,
7555                    "method": "POST",
7556                    "mode": "cors",
7557                    "credentials": "include"
7558                };
7559
7560                return fetch(postUrl, postHeaders).then(function (response) {
7561                    if (response.redirected) {
7562                        window.location.href = response.url;
7563                    } else if (response.ok) {
7564                        return response.json();
7565                    } else {
7566                        const message = { type: "warning", text: messages.warning };
7567                        window.dispatchMessages && window.dispatchMessages([message], 5000);
7568                    }
7569                }).then(function (response) {
7570                    if (!response) return;
7571                    const message = {
7572                        type: (response.success) ? "success" : "error",
7573                        text: (response.success) ? messages.success : response.error_message
7574                    }
7575                    window.dispatchMessages && window.dispatchMessages([message], 5000);
7576                    window.dispatchEvent(new CustomEvent("reload-customer-section-data"));
7577                }).catch(function (error) {
7578                    const message = { type: "error", text: error };
7579                    window.dispatchMessages && window.dispatchMessages([message], 5000);
7580                });
7581            }
7582
7583            return {
7584                wishlistProducts: null,
7585                itemCount: 0,
7586                wishlistCountLabel: null,
7587                wishlistItems: {},
7588                receiveWishlistData: function (data) {
7589                    if (data['wishlist']) {
7590                        this.wishlistProducts = data['wishlist'];
7591                        this.wishlistCountLabel = '(' + this.wishlistProducts.counter + ')';
7592                        this.itemCount = this.wishlistProducts.items.length;
7593                        this.wishlistItems = this.wishlistProducts.items;
7594                        
7595                    }
7596                },
7597                addToCart: function (json) {
7598                    const obj = JSON.parse(json);
7599                    const postUrl = obj.action;
7600                    const body = "form_key=" + hyva.getFormKey() + "&item=" + obj.data.item + "&qty=" + obj.data.qty + "&uenc=" 
7600+ hyva.getUenc();
7601                    wishlistSidebarFetchHandler(body, postUrl, /* isRemoveAction */ false);
7602                },
7603                removeFromWishlist: function(json) {
7604                    const obj = JSON.parse(json);
7605                    const postUrl = obj.action;
7606                    const body = "form_key=" + hyva.getFormKey() + "&item=" + obj.data.item+"&uenc=" + hyva.getUenc();
7607                    wishlistSidebarFetchHandler(body, postUrl);
7608                }
7609            }
7610        }
7611
7612    </script>
7612
7613
7614    <div x-data="initWishlistOnWishlistSidebar()"
7615         @private-content-loaded.window="receiveWishlistData($event.detail.data)"
7616         class="wishlist-widget"
7617    >
7618        <template x-if="itemCount">
7619            <div class="mt-8">
7620                <h2 class="border-t border-container mb-6 pt-5" id="wishlist-sidebar">
7621                    <strong class="title text-primary font-semibold text-lg">Meine Wunschliste</strong>
7622                    <span class="counter text-xs" x-html="wishlistCountLabel"></span>
7623                </h2>
7624                <ul class="my-4" aria-labelledby="wishlist-sidebar">
7625                    <template x-for="product in wishlistItems">#
7626                        <li class="flex items-start mb-4">
7627                            <a
7628                                :href="product.product_url"
7629                                class="block mb-3 w-10 h-10 shrink-0 mr-4"
7630                                tabindex="-1"
7631                                aria-hidden="true"
7632                            >
7633                                <img
7634                                    :src="product.image.src"
7635                                    :alt="product.product_name"
7636                                    loading="lazy"
7637                                >
7638                            </a>
7639                            <div class="product-item-details">
7640                                <strong class="mr-2 text-sm leading-6 font-normal">
7641                                    <a :href="product.product_url" :title="product.product_name" x-html="product.product_name"></a>
7642                                </strong>
7643                                <div class="mr-2 text-sm leading-6 font-bold" x-html="product.product_price"></div>
7644                                <template x-if="product.product_is_saleable_and_visible">
7645                                    <div class="actions-primary my-2">
7646                                        <template x-if="!product.product_has_required_options">
7647                                            <button
7648                                                type="button"
7649                                                @click.prevent="addToCart(product.add_to_cart_params)"
7650                                                class="action tocart primary btn btn-primary text-sm"
7651                                                :aria-label="hyva.str('Add\u0020to\u0020Cart\u0020\u00251', product.product_name)"
7652                                                data-addto="cart"
7653                                            >
7654                                                In den Warenkorb                                            </button>
7655                                        </template>
7656                                    </div>
7657                                </template>
7658                            </div>
7659                            <button
7660                                type="button"
7661                                @click.prevent="removeFromWishlist(product.delete_item_params)"
7662                                :aria-label="hyva.str('Remove\u0020product\u0020\u0022\u00251\u0022\u0020from\u0020My\u0020Wish\u0020List', product.product_name)"
7663                                class="
7664                                    p-1 inline-flex shrink-0 items-center
7665                                    justify-center text-gray-500 hover:text-primary ml-auto
7666                                "
7667                            >
7668                                <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="h-6 w-6" width="25" height="25" aria-hidden="true">
7669  <path stroke-linecap="round" stroke-linejoin="round" d="M6 18L18 6M6 6l12 12"/>
7670</svg>
7671                            </button>
7672                        </li>
7673                    </template>
7674                </ul>
7675                <div class="flex flex-wrap items-center md:mt-5 space-x-4 text-sm">
7676                    <a href="https://www.govi.de/wishlist/"
7677                       aria-label="Go&#x20;to&#x20;Wish&#x20;List&#x20;page"
7678                       class="px-4 text-sm text-gray-500 hover:text-primary"
7679                    >
7680                        Zur Wunschliste                    </a>
7681                </div>
7682            </div>
7683        </template>
7684    </div>
7685</aside></div></main><footer class="page-footer"><div class="footer content"><style>#html-body [data-pb-style=OT8SPPK]{text-align:center}#html-body [data-pb-style=IWVKB2R]{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll}</style><div data-content-type="row" data-appearance="full-bleed" data-enable-parallax="0" data-parallax-speed="0.5" data-background-images="{}" data-background-type="image" data-video-loop="true" data-video-play-only-visible="true" data-video-lazy-load="true" data-video-fallback-src="" data-element="main" data-pb-style="IWVKB2R"><div data-content-type="text" data-appearance="default" data-element="main"><p></p><div class="newsletter-container container mt-24">
7686    <div class="md:grid md:grid-flow-col gap-10 flex justify-center ">
7687        <div class="hidden md:block">
7688            <img class="object-cover object-center" src="https://www.govi.de/static/version1790667299/frontend/AMD/hyvaShop/de_DE/Amd_RapidMail/images/Papierflieger.svg" alt="Papierflieger" width="300" loading="lazy" aria-hidden="true">
7689        </div>
7690        <div>
7691            <div class="mb-6">
7692                <h4 class="text-c8">
7693                    Bleiben Sie informiert!                </h4>
7694                <p class="mt-4">
7695                    Hier k&ouml;nnen Sie sich f&uuml;r unseren monatlichen Govi-Newsletter anmelden!                </p>
7696            </div>
7697            <div class="">
7698                <form method="post" action="https://t05903bf1.emailsys1a.net/22/9399/f603c8f93f/subscribe/form.html?_g=1731663807">
7699                    <div class="grid lg:grid-cols-2 gap-4">
7700                        <div>
7701                            <label for="email" class="sr-only">Ihr E-Mail-Adresse</label>
7702                            <input type="text" name="email" id="email" placeholder="Ihre E-Mail-Adresse" value="" required class="form-input w-full">
7703                        </div>
7704                        <div>
7705                            <button type="submit" class="btn-secondary text-c8 font-normal w-full lg:w-auto">
7706                                Kostenlos anmelden                                <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewbox="0 0 24 24" stroke-width="2" stroke="currentColor" width="20" height="20" role="img">
7707  <path stroke-linecap="round" stroke-linejoin="round" d="M9 5l7 7-7 7"></path>
7708<title>chevron-right</title></svg>
7709                            </button>
7710                        </div>
7711                    </div>
7712                </form>
7713            </div>
7714        </div>
7715    </div>
7716</div>
7717</div></div><div data-content-type="block" data-appearance="default" data-element="main" data-pb-style="OT8SPPK"><div class="widget block block-static-block">
7718    <style>#html-body [data-pb-style=WJPAYFM]{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll}</style><div data-content-type="row" data-appearance="contained" data-element="main"><div data-enable-parallax="0" data-parallax-speed="0.5" data-background-images="{}" data-background-type="image" data-video-loop="true" data-video-play-only-visible="true" data-video-lazy-load="true" data-video-fallback-src="" data-element="inner" data-pb-style="WJPAYFM"><div data-content-type="text" data-appearance="default" data-element="main"><p id="PD69GY6">&rarr; Ausf&uuml;hrliche Informationen zur Speicherung und Verarbeitung der Daten und zu Ihren Widerrufsm&ouml;glichkeiten erhalten Sie in unserer 
7719<span class="widget block-cms-link">
7720    <a class="underline font-medium" href="https://www.govi.de/datenschutz" title="Datenschutzerkl&auml;rung">Datenschutzerkl&auml;
7720rung</a>
7721</span>
7722.</p></div></div></div></div>
7723</div><div class="container py-4 mt-8 mx-auto grid xl:grid-cols-3 xl:gap-6 additional-info">
7724    <div>
7725        <style>#html-body [data-pb-style=HS6C5FQ],#html-body [data-pb-style=UDKC0G5]{background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll}#html-body [data-pb-style=UDKC0G5]{justify-content:flex-start;display:flex;flex-direction:column}#html-body [data-pb-style=HS6C5FQ]{align-self:stretch}#html-body [data-pb-style=VHWB1DU]{display:flex;width:100%}#html-body [data-pb-style=EFRIX7V],#html-body [data-pb-style=VAYMW6O]{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;width:16.6667%;align-self:stretch}#html-body [data-pb-style=EFRIX7V]{width:83.3333%}</style><div data-content-type="row" data-appearance="contained" data-element="main"><div data-enable-parallax="0" data-parallax-speed="0.5" data-background-images="{}" data-background-type="image" data-video-loop="true" data-video-play-only-visible="true" data-video-lazy-load="true" data-video-fallback-src="" data-element="inner" data-pb-style="UDKC0G5"><h4 data-content-type="heading" data-appearance="default" data-element="main">Wir sind gerne pers&ouml;nlich f&uuml;r Sie da</h4><div class="pagebuilder-column-group" data-background-images="{}" data-content-type="column-group" data-appearance="default" data-grid-size="6" data-element="main" data-pb-style="HS6C5FQ"><div class="pagebuilder-column-line" data-content-type="column-line" data-element="main" data-pb-style="VHWB1DU"><div class="pagebuilder-column" data-content-type="column" data-appearance="full-height" data-background-images="{}" data-element="main" data-pb-style="VAYMW6O"><div data-content-type="html" data-appearance="default" data-element="main" data-decoded="true"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewbox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-12 h-12" width="12" height="12" role="img">
7726  <path stroke-linecap="round" stroke-linejoin="round" d="M3 5a2 2 0 012-2h3.28a1 1 0 01.948.684l1.498 4.493a1 1 0 01-.502 1.21l-2.257 1.13a11.042 11.042 0 005.516 5.516l1.13-2.257a1 1 0 011.21-.502l4.493 1.498a1 1 0 01.684.949V19a2 2 0 01-2 2h-1C9.716 21 3 14.284 3 6V5z"></path>
7727<title>heroicons/outline/phone</title></svg>
7728</div></div><div class="pagebuilder-column" data-content-type="column" data-appearance="full-height" data-background-images="{}" data-element="main" data-pb-style="EFRIX7V"><div data-content-type="text" data-appearance="default" data-element="main"><p><strong>Telefon 06196 928-250</strong></p>
7729<p>Montag - Donnerstag <br>von 8:00 - 17:00 Uhr</p>
7730<p>Freitag <br>von 8:00 - 16:00 Uhr</p>
7731<p>E-Mail <strong><a tabindex="0" href="mailto:[email protected]">[email protected]</a></strong></p></div></div></div></div></div></div>    </div>
7732    <div >
7733        <style>#html-body [data-pb-style=BU1W7H5],#html-body [data-pb-style=UIPSV1V]{background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll}#html-body [data-pb-style=UIPSV1V]{justify-content:flex-start;display:flex;flex-direction:column}#html-body [data-pb-style=BU1W7H5]{align-self:stretch}#html-body [data-pb-style=EIGF2L0]{display:flex;width:100%}#html-body [data-pb-style=M7668I9],#html-body [data-pb-style=XSB5JHK]{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;width:16.6667%;align-self:stretch}#html-body [data-pb-style=XSB5JHK]{width:83.3333%}</style><div data-content-type="row" data-appearance="contained" data-element="main"><div data-enable-parallax="0" data-parallax-speed="0.5" data-background-images="{}" data-background-type="image" data-video-loop="true" data-video-play-only-visible="true" data-video-lazy-load="true" data-video-fallback-src="" data-element="inner" data-pb-style="UIPSV1V"><h4 data-content-type="heading" data-appearance="default" data-element="main">Ihre Vorteile</h4><div class="pagebuilder-column-group" data-background-images="{}" data-content-type="column-group" data-appearance="default" data-grid-size="6" data-element="main" data-pb-style="BU1W7H5"><div class="pagebuilder-column-line" data-content-type="column-line" data-element="main" data-pb-style="EIGF2L0"><div class="pagebuilder-column" data-content-type="column" data-appearance="full-height" data-background-images="{}" data-element="main" data-pb-style="M7668I9"><div data-content-type="html" data-appearance="default" data-element="main" data-decoded="true"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewbox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-12 h-12" width="12" height="12" role="img">
7734  <path stroke-linecap="round" stroke-linejoin="round" d="M14.828 14.828a4 4 0 01-5.656 0M9 10h.01M15 10h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"></path>
7735<title>heroicons/outline/emoji-happy</title></svg>
7736</div></div><div class="pagebuilder-column" data-content-type="column" data-appearance="full-height" data-background-images="{}" data-element="main" data-pb-style="XSB5JHK"><div data-content-type="text" data-appearance="default" data-element="main"><p>Onlineshop mit mehr als 300.000 B&uuml;chern, H&ouml;rb&uuml;chern, Landkarten, CD-ROM u. v. m.</p>
7737<p>Portofreie Lieferung innerhalb Deutschlands</p>
7738<p>Bezahlung per Rechnung, PayPal oder Kreditkarte</p>
7739<p>Kompetente Beratung rund um pharmazeutische und medizinische Fachliteratur und Software</p>
7740<p>Mobile Messebuchhandlung</p></div></div></div></div></div></div>    </div>
7741    <div>
7742        <style>#html-body [data-pb-style=CIMXTFF],#html-body [data-pb-style=E13FC73]{background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll}#html-body [data-pb-style=E13FC73]{justify-content:flex-start;display:flex;flex-direction:column}#html-body [data-pb-style=CIMXTFF]{align-self:stretch}#html-body [data-pb-style=D1H39K2]{display:flex;width:100%}#html-body [data-pb-style=B2C4EQY],#html-body [data-pb-style=HX99VIO]{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;width:16.6667%;align-self:stretch}#html-body [data-pb-style=HX99VIO]{width:83.3333%}</style><div data-content-type="row" data-appearance="contained" data-element="main"><div data-enable-parallax="0" data-parallax-speed="0.5" data-background-images="{}" data-background-type="image" data-video-loop="true" data-video-play-only-visible="true" data-video-lazy-load="true" data-video-fallback-src="" data-element="inner" data-pb-style="E13FC73"><h4 data-content-type="heading" data-appearance="default" data-element="main">Immer gut informiert</h4><div class="pagebuilder-column-group" data-background-images="{}" data-content-type="column-group" data-appearance="default" data-grid-size="6" data-element="main" data-pb-style="CIMXTFF"><div class="pagebuilder-column-line" data-content-type="column-line" data-element="main" data-pb-style="D1H39K2"><div class="pagebuilder-column" data-content-type="column" data-appearance="full-height" data-background-images="{}" data-element="main" data-pb-style="B2C4EQY"><div data-content-type="html" data-appearance="default" data-element="main" data-decoded="true"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewbox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-12 h-12" width="12" height="12" role="img">
7743  <path stroke-linecap="round" stroke-linejoin="round" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"></path>
7744<title>heroicons/outline/information-circle</title></svg>
7745</div></div><div class="pagebuilder-column" data-content-type="column" data-appearance="full-height" data-background-images="{}" data-element="main" data-pb-style="HX99VIO"><div data-content-type="text" data-appearance="default" data-element="main"><p><a tabindex="0" href="https://www.govi.de/literatur-check" target="_blank" rel="noopener">Medien f&uuml;r die Apotheke</a><br>Welche Pflicht- und Fachliteratur brauchen Sie in der Apotheke?<br>Wir bieten Ihnen den 24-Stunden-Literatur-Check f&uuml;r Ihre Apotheken-Bibliothek.</p>
7746<p><a tabindex="0" href="https://www.govi.de/newsletter-prospekte" target="_blank" rel="noopener">Pharmazie Highlights</a><br>Halten Sie sich mit dem Govi-Newsletter und unseren Medien-Prospekten auf dem Laufenden!</p></div></div></div></div></div></div>    </div>
7747</div>
7748<script>
7749  addEventListener('DOMContentLoaded', () => {
7750      for (const [selector, label] of Object.entries({"aside.sidebar-main":"Sidebar Main","aside.sidebar-additional":"Sidebar Additional"})) {
7751          const target = document.querySelector(selector);
7752          target && target.setAttribute('aria-label', label);
7753      }
7754  }, {once: true})
7755</script>
7755
7756<div class="text-gray-700 body-font bg-container-darker border-t border-container-darker shadow pb-0">
7757    <div class="container py-8 pb-0 mx-auto">
7758        <div class="grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-2 xl:grid-cols-4">
7759            <div class="mt-4">
7760                <style>#html-body [data-pb-style=OJ5NPK4]{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll}#html-body [data-pb-style=F4F4K6S]{display:inline-block}#html-body [data-pb-style=WP8ROM5]{text-align:left}#html-body [data-pb-style=CMRGP9A]{display:inline-block}#html-body [data-pb-style=DIC42WE]{text-align:left}#html-body [data-pb-style=SB8FMLL]{display:inline-block}#html-body [data-pb-style=LLTXL87]{text-align:left}#html-body [data-pb-style=B2HX9MN]{display:inline-block}#html-body [data-pb-style=KSVHJYH]{text-align:left}</style><div data-content-type="row" data-appearance="contained" data-element="main"><div data-enable-parallax="0" data-parallax-speed="0.5" data-background-images="{}" data-background-type="image" data-video-loop="true" data-video-play-only-visible="true" data-video-lazy-load="true" data-video-fallback-src="" data-element="inner" data-pb-style="OJ5NPK4"><h4 data-content-type="heading" data-appearance="default" data-element="main">Programm</h4><div data-content-type="buttons" data-appearance="inline" data-same-width="false" data-element="main"><div data-content-type="button-item" data-appearance="default" data-element="main" data-pb-style="F4F4K6S"><a class="pagebuilder-button-link" href="https://www.govi.de/apotheke" target="" data-link-type="category" data-element="link" data-pb-style="WP8ROM5"><span data-element="link_text">Apotheke</span></a></div></div><div data-content-type="buttons" data-appearance="inline" data-same-width="false" data-element="main"><div data-content-type="button-item" data-appearance="default" data-element="main" data-pb-style="CMRGP9A"><a class="pagebuilder-button-link" href="https://www.govi.de/pharmazie-medizin" target="" data-link-type="category" data-element="link" data-pb-style="DIC42WE"><span data-element="link_text">Pharmazie &amp; Medizin</span></a></div></div><div data-content-type="buttons" data-appearance="inline" data-same-width="false" data-element="main"><div data-content-type="button-item" data-appearance="default" data-element="main" data-pb-style="SB8FMLL"><a class="pagebuilder-button-link" href="https://www.govi.de/digitale-losungen" target="" data-link-type="category" data-element="link" data-pb-style="LLTXL87"><span data-element="link_text">Digitale Lösungen</span></a></div></div><div data-content-type="buttons" data-appearance="inline" data-same-width="false" data-element="main"><div data-content-type="button-item" data-appearance="default" data-element="main" data-pb-style="B2HX9MN"><a class="pagebuilder-button-link" href="https://www.govi.de/sachbuch-literatur" target="" data-link-type="category" data-element="link" data-pb-style="KSVHJYH"><span data-element="link_text">Sachbuch &amp; Literatur</span></a></div></div></div></div>            </div>
7761            <div class="mt-4">
7762                <style>#html-body [data-pb-style=WOEA9AC]{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll}#html-body [data-pb-style=TIIJQCL]{display:inline-block}#html-body [data-pb-style=GQW21UV]{text-align:left}#html-body [data-pb-style=W6F0FAV]{display:inline-block}#html-body [data-pb-style=PSQEQ7U]{text-align:left}#html-body [data-pb-style=K0Q105E]{display:inline-block}#html-body [data-pb-style=OYGLX1E]{text-align:left}#html-body [data-pb-style=KUS6LBD]{display:inline-block}#html-body [data-pb-style=E4RQ2SU]{text-align:left}#html-body [data-pb-style=XC2LQE3]{display:inline-block}#html-body [data-pb-style=KSNM5C1]{text-align:left}#html-body [data-pb-style=X8LAXHQ]{display:inline-block}#html-body [data-pb-style=U06I570]{text-align:left}</style><div data-content-type="row" data-appearance="contained" data-element="main"><div data-enable-parallax="0" data-parallax-speed="0.5" data-background-images="{}" data-background-type="image" data-video-loop="true" data-video-play-only-visible="true" data-video-lazy-load="true" data-video-fallback-src="" data-element="inner" data-pb-style="WOEA9AC"><h4 data-content-type="heading" data-appearance="default" data-element="main">govi.de</h4><div data-content-type="buttons" data-appearance="inline" data-same-width="false" data-element="main"><div data-content-type="button-item" data-appearance="default" data-element="main" data-pb-style="TIIJQCL"><a class="pagebuilder-button-link" href="https://www.govi.de/ueber-uns" target="" data-link-type="page" data-element="link" data-pb-style="GQW21UV"><span data-element="link_text">Über uns</span></a></div></div><div data-content-type="buttons" data-appearance="inline" data-same-width="false" data-element="main"><div data-content-type="button-item" data-appearance="default" data-element="main" data-pb-style="W6F0FAV"><a class="pagebuilder-button-link" href="https://www.govi.de/presse" target="" data-link-type="page" data-element="link" data-pb-style="PSQEQ7U"><span data-element="link_text">Presse</span></a></div></div><div data-content-type="buttons" data-appearance="inline" data-same-width="false" data-element="main"><div data-content-type="button-item" data-appearance="default" data-element="main" data-pb-style="K0Q105E"><a class="pagebuilder-button-link" href="https://www.govi.de/newsletter-prospekte" target="" data-link-type="page" data-element="link" data-pb-style="OYGLX1E"><span data-element="link_text">Newsletter &amp; Prospekte</span></a></div></div><div data-content-type="buttons" data-appearance="inline" data-same-width="false" data-element="main"><div data-content-type="button-item" data-appearance="default" data-element="main" data-pb-style="KUS6LBD"><a class="pagebuilder-button-link" href="https://www.govi.de/kontakt" target="" data-link-type="page" data-element="link" data-pb-style="E4RQ2SU"><span data-element="link_text">Kontakt</span></a></div></div><div data-content-type="buttons" data-appearance="inline" data-same-width="false" data-element="main"><div data-content-type="button-item" data-appearance="default" data-element="main" data-pb-style="XC2LQE3"><a class="pagebuilder-button-link" href="https://avoxa.de/barrierefreiheit/" target="_blank" data-link-type="default" data-element="link" data-pb-style="KSNM5C1"><span data-element="link_text">Barrierefreiheit</span></a></div></div><div data-content-type="buttons" data-appearance="inline" data-same-width="false" data-element="main"><div data-content-type="button-item" data-appearance="default" data-element="main" data-pb-style="X8LAXHQ"><a class="pagebuilder-button-link" href="https://www.govi.de/impressum" target="" data-link-type="page" data-element="link" data-pb-style="U06I570"><span data-element="link_text">Impressum</span></a></div></div></div></div>            </div>
7763            <div class="mt-4">
7764                <style>#html-body [data-pb-style=W4V6L8E]{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll}#html-body [data-pb-style=K1AXA0P]{display:inline-block}#html-body [data-pb-style=ECGLPHW]{text-align:left}
7764#html-body [data-pb-style=RKREHA2]{display:inline-block}#html-body [data-pb-style=K57WP9S]{text-align:left}#html-body [data-pb-style=OQYVAEL]{display:inline-block}#html-body [data-pb-style=WN00MJ0]{text-align:left}#html-body [data-pb-style=N8MNGY5]{display:inline-block}#html-body [data-pb-style=HLTGG84]{text-align:left}#html-body [data-pb-style=M8K8U60]{display:inline-block}#html-body [data-pb-style=GOW2LFK]{text-align:left}#html-body [data-pb-style=XYJUS76]{display:inline-block}#html-body [data-pb-style=IBBJFN5]{text-align:left}#html-body [data-pb-style=GNAWNWT]{display:inline-block}#html-body [data-pb-style=MSIF8Y3]{text-align:left}</style><div data-content-type="row" data-appearance="contained" data-element="main"><div data-enable-parallax="0" data-parallax-speed="0.5" data-background-images="{}" data-background-type="image" data-video-loop="true" data-video-play-only-visible="true" data-video-lazy-load="true" data-video-fallback-src="" data-element="inner" data-pb-style="W4V6L8E"><h4 data-content-type="heading" data-appearance="default" data-element="main">Infos zur Bestellung</h4><div data-content-type="buttons" data-appearance="inline" data-same-width="false" data-element="main"><div data-content-type="button-item" data-appearance="default" data-element="main" data-pb-style="K1AXA0P"><a class="pagebuilder-button-link" href="https://www.govi.de/liefer-und-versandkosten" target="" data-link-type="page" data-element="link" data-pb-style="ECGLPHW"><span data-element="link_text">Liefer- und Versandkosten</span></a></div></div><div data-content-type="buttons" data-appearance="inline" data-same-width="false" data-element="main"><div data-content-type="button-item" data-appearance="default" data-element="main" data-pb-style="RKREHA2"><a class="pagebuilder-button-link" href="https://www.govi.de/agb" target="" data-link-type="page" data-element="link" data-pb-style="K57WP9S"><span data-element="link_text">AGB</span></a></div></div><div data-content-type="buttons" data-appearance="inline" data-same-width="false" data-element="main"><div data-content-type="button-item" data-appearance="default" data-element="main" data-pb-style="OQYVAEL"><a class="pagebuilder-button-link" href="https://www.govi.de/datenschutz" target="" data-link-type="page" data-element="link" data-pb-style="WN00MJ0"><span data-element="link_text">Datenschutz</span></a></div></div><div data-content-type="buttons" data-appearance="inline" data-same-width="false" data-element="main"><div data-content-type="button-item" data-appearance="default" data-element="main" data-pb-style="N8MNGY5"><a class="pagebuilder-button-link" href="https://www.govi.de/widerrufsbelehrung" target="" data-link-type="page" data-element="link" data-pb-style="HLTGG84"><span data-element="link_text">Widerrufsbelehrung</span></a></div></div><div data-content-type="buttons" data-appearance="inline" data-same-width="false" data-element="main"><div data-content-type="button-item" data-appearance="default" data-element="main" data-pb-style="M8K8U60"><a class="pagebuilder-button-link" href="https://www.govi.de/faq-e-books" target="" data-link-type="page" data-element="link" data-pb-style="GOW2LFK"><span data-element="link_text">FAQ E-Books</span></a></div></div><div data-content-type="buttons" data-appearance="inline" data-same-width="false" data-element="main"><div data-content-type="button-item" data-appearance="default" data-element="main" data-pb-style="XYJUS76"><a class="pagebuilder-button-link" href="https://www.govi.de/abo-kuendigen" target="" data-link-type="page" data-element="link" data-pb-style="IBBJFN5"><span data-element="link_text">Abo k&uuml;ndigen</span></a></div></div><div data-content-type="buttons" data-appearance="inline" data-same-width="false" data-element="main"><div data-content-type="button-item" data-appearance="default" data-element="main" data-pb-style="GNAWNWT"><a class="pagebuilder-button-primary" href="/widerrufsbelehrung#widerruf-formular" target="" data-link-type="default" data-element="link" data-pb-style="MSIF8Y3"><span data-element="link_text">Vertrag widerrufen</span></a></div></div><div data-content-type="html" data-appearance="default" data-element="main" data-decoded="true"><br><div style="display: inline-block; margin-right: 1rem;">Sicher bezahlen mit:</div><br>
7765<svg xmlns="http://www.w3.org/2000/svg" style="display: inline-block;
7765" width="50" height="50" viewBox="0 0 24 24"><path d="M19.662 11.156l.375 1.716h-1.344l.645-1.661.215-.567.109.512zm4.338-5.156v12c0 1.104-.896 2-2 2h-20c-1.104 0-2-.896-2-2v-12c0-1.104.896-2 2-2h20c1.104 0 2 .896 2 2zm-17.146 8.971l2.549-5.929h-1.715l-1.585 4.051-.169-.823-.568-2.73c-.098-.377-.383-.489-.734-.502h-2.611l-.021.123c.635.154 1.203.376 1.701.651l1.44 5.16 1.713-.001zm4.823-5.934h-1.619l-1.012 5.941h1.619l1.012-5.941zm4.625 3.999c.006-.676-.425-1.19-1.359-1.614-.566-.275-.913-.458-.909-.736 0-.247.293-.511.927-.511.53-.008.913.107 1.212.228l.145.068.219-1.287c-.321-.121-.824-.25-1.451-.25-1.6 0-2.727.806-2.737 1.961-.009.854.805 1.33 1.419 1.614.63.291.842.477.839.737-.004.398-.503.58-.969.58-.648 0-.992-.09-1.524-.312l-.209-.095-.227 1.33c.378.166 1.078.31 1.804.317 1.702 0 2.807-.797 2.82-2.03zm5.698 1.944l-1.311-5.937h-1.251c-.388 0-.678.106-.848.493l-2.405 5.444h1.7l.341-.893 2.074.003.197.89h1.503z"/></svg>
7766<svg xmlns="http://www.w3.org/2000/svg" style="display: inline-block;" width="50" height="50" viewBox="0 0 24 24"><path d="M15.465 16.444c0 .193-.128.339-.319.339-.199 0-.321-.153-.321-.339 0-.186.122-.339.321-.339.19.001.319.147.319.339zm-6.814-.338c-.199 0-.321.153-.321.339 0 .186.122.339.321.339.19 0 .319-.146.319-.339 0-.193-.128-.339-.319-.339zm3.391-.011c-.164 0-.257.104-.281.257h.549c-.024-.164-.119-.257-.268-.257zm5.24.011c-.199 0-.321.153-.321.339 0 .186.122.339.321.339.19 0 .319-.146.319-.339 0-.193-.129-.339-.319-.339zm6.718-10.106v12c0 1.104-.896 2-2 2h-20c-1.104 0-2-.896-2-2v-12c0-1.104.896-2 2-2h20c1.104 0 2 .896 2 2zm-18.456 4.985c0 2.201 1.784 3.985 3.985 3.985.769 0 1.487-.219 2.096-.596-.967-.813-1.582-2.03-1.582-3.389s.616-2.576 1.582-3.389c-.609-.377-1.326-.596-2.096-.596-2.2 0-3.985 1.784-3.985 3.985zm2.346 5.324c0-.25-.159-.418-.416-.421-.135-.002-.274.04-.372.188-.073-.117-.188-.188-.35-.188-.113 0-.224.033-.31.157v-.131h-.23v1.058h.232v-.587c0-.184.102-.281.259-.281.153 0 .23.1.23.279v.589h.232v-.587c0-.184.106-.281.259-.281.157 0 .232.1.232.279v.589h.234v-.663zm1.297-.394h-.23v.128c-.073-.095-.184-.155-.334-.155-.297 0-.529.232-.529.556 0 .324.232.556.529.556.151 0 .261-.06.334-.155v.128h.23v-1.058zm1.164.74c0-.186-.139-.283-.37-.317l-.108-.016c-.1-.013-.179-.033-.179-.104 0-.078.075-.124.201-.124.135 0 .266.051.33.091l.1-.186c-.111-.073-.263-.111-.432-.111-.268 0-.44.128-.44.339 0 .173.128.279.365.312l.108.016c.126.018.186.051.186.111 0 .082-.084.128-.241.128-.159 0-.274-.051-.352-.111l-.108.179c.126.094.285.138.458.138.305 0 .482-.144.482-.345zm1.025.263l-.066-.197c-.069.04-.144.06-.204.06-.115 0-.153-.071-.153-.177v-.478h.376v-.21h-.376v-.321h-.232v.321h-.215v.21h.215v.483c0 .246.095.392.367.392.1-.001.215-.032.288-.083zm1.173-.474c-.002-.33-.206-.556-.503-.556-.31 0-.527.226-.527.556 0 .336.226.556.542.556.159 0 .305-.04.434-.148l-.113-.17c-.089.071-.201.111-.308.111-.148 0-.283-.069-.317-.259h.786l.006-.09zm.908-.526l-.164-.029c-.133 0-.219.062-.279.155v-.128h-.228v1.058h.23v-.594c0-.175.075-.272.226-.272l.144.027.071-.217zm.308.526c0-.204.135-.336.319-.339.1 0 .19.033.277.095l.111-.186c-.115-.091-.221-.126-.381-.126-.341 0-.564.235-.564.556s.222.556.563.556c.159 0 .266-.035.381-.126l-.111-.186c-.086.062-.177.095-.277.095-.183-.002-.318-.135-.318-.339zm1.916-.529h-.23v.128c-.073-.095-.184-.155-.334-.155-.297 0-.529.232-.529.556 0 .323.232.556.529.556.151 0 .261-.06.334-.155v.128h.23v-1.058zm.974.003l-.164-.029c-.133 0-.219.062-.279.155v-.128h-.228v1.058h.23v-.594c0-.175.075-.272.226-.272l.144.027.071-.217zm1.162-.428h-.23v.553c-.073-.095-.184-.155-.334-.155-.297 0-.529.232-.529.556 0 .323.232.556.529.556.151 0 .261-.06.334-.155v.128h.23v-1.483zm.639-4.505c0-2.201-1.785-3.985-3.985-3.985s-3.985 1.784-3.985 3.985c0 2.201 1.784 3.985 3.985 3.985s3.985-1.784 3.985-3.985z"/></svg>
7767<?xml version="1.0" encoding="utf-8"?>
7768<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
7769<svg version="1.1" id="iconmonstr" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
7770	 width="50px" height="50px" viewBox="0 0 24 24" style="enable-background:new 0 0 24 24; display: inline-block;" xml:space="preserve">
7771<path id="payment-13_1_" d="M22,4H2C0.896,4,0,4.896,0,6v12c0,1.104,0.896,2,2,2h20c1.104,0,2-0.896,2-2V6C24,4.896,23.104,4,22,4z
7772	 M10.708,15.11h-1.33c-0.122,0-0.219-0.103-0.212-0.224C9.19,14.503,9.412,13.245,10.18,8.3C10.206,8.127,10.353,8,10.526,8h2.448
7773	c1.31,0,2.277,0.769,2.01,2.147c-0.275,1.433-1.15,2.13-2.674,2.13l-0.753,0.001c-0.309,0.001-0.423,0.118-0.462,0.393L10.708,15.11
7774	z M15.777,11.796c-0.282,1.473-1.249,1.982-2.483,1.982h-0.191c-0.151,0-0.279,0.111-0.303,0.263l-0.268,1.697
7775	C12.509,15.889,12.381,16,12.23,16h-0.912c-0.13,0-0.229-0.116-0.209-0.244l0.462-2.96c0.002-0.011,0.01-0.019,0.021-0.019h0.718
7776	c1.745,0,2.836-0.873,3.158-2.523c0.271,0.272,0.366,0.626,0.366,1C15.833,11.432,15.812,11.615,15.777,11.796z"/>
7777</svg>
7778</div></div></div>            </div>
7779            <div class="mt-4">
7780                <style>#html-body [data-pb-style=GGR8L8T]{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll}</style><div data-content-type="row" data-appearance="contained" data-element="main"><div data-enable-parallax="0" data-parallax-speed="0.5" data-background-images="{}" data-background-type="image" data-video-loop="true" data-video-play-only-visible="true" data-video-lazy-load="true" data-video-fallback-src="" data-element="inner" data-pb-style="GGR8L8T"><h4 data-content-type="heading" data-appearance="default" data-element="main">Avoxa Mediengruppe</h4><div data-content-type="text" data-appearance="default" data-element="main"><p>Govi ist eine Marke der <br><a href="https://www.avoxa.de" target="_blank" rel="noopener">Avoxa - Mediengruppe </a><br><a href="https://www.avoxa.de" target="_blank" rel="noopener">Deutscher Apotheker GmbH</a></p></div></div></div>            </div>
7781        </div>
7782    </div>
7783</div>
7784<div class="text-gray-700 body-font bg-white border-t border-container-darker">
7785    <div class="container mx-auto">
7786            </div>
7787</div>
7788<div class="text-gray-700 body-font bg-white border-t border-container-darker">
7789    <div class="container py-4 mx-auto flex justify-between items-center">
7790        <div class="text-sm text-gray-800 sm:mt-0 mt-4 px-3">
7791            <span>© 2025 Avoxa - Mediengruppe Deutscher Apotheker GmbH</span>
7792        </div>
7793        <div class="">
7794            <a
7795                class="flex items-center justify-center text-xl font-medium tracking-wide text-gray-800
7796                    no-underline hover:no-underline font-title"
7797                href="https://avoxa.de"
7798                target="_blank"
7799                aria-label="Avoxa"
7800            >
7801                <img
7802                    src="https://www.govi.de/static/version1790667299/frontend/AMD/hyvaShop/de_DE/images/Avoxa-Logo-RGB.svg"
7803                    alt="Avoxa"
7804                    class="w-[11rem]"
7805                />
7806            </a>
7807        </div>
7808    </div>
7809</div>
7810</div></footer>
7811<script type="text&#x2F;javascript">window.dataLayer = window.dataLayer || [];
7812
7813(function () {
7814        /**
7815     * @var {[Object]}
7816     */
7817    const dataToPush = JSON.parse('\u005B\u007B\u0022ecommerce\u0022\u003Anull\u007D,\u007B\u0022event\u0022\u003A\u0022view_item_list\u0022,\u0022ecommerce\u0022\u003A\u007B\u0022items\u0022\u003A\u005B\u007B\u0022item_name\u0022\u003A\u0022Adh\u005Cu00e4renzf\u005Cu00f6rderung\u0022,\u0022item_id\u0022\u003A\u0022G000237\u0022,\u0022currency\u0022\u003A\u0022EUR\u0022,\u0022item_category\u0022\u003A\u0022Apotheke\u0022,\u0022item_category2\u0022\u003A\u0022Pharmazeutische\u0020Beratung\u0022,\u0022price\u0022\u003A25.9,\u0022item_list_id\u0022\u003A\u002219\u0022,\u0022item_list_name\u0022\u003A\u0022Apotheke\u005C\u002FPharmazeutische\u0020Beratung\u0022,\u0022index\u0022\u003A1\u007D,\u007B\u0022item_name\u0022\u003A\u0022Akute\u0020und\u0020chronische\u0020Herzinsuffizienz\u0022,\u0022item_id\u0022\u003A\u0022G001016\u0022,\u0022currency\u0022\u003A\u0022EUR\u0022,\u0022item_category\u0022\u003A\u0022Apotheke\u0022,\u0022item_category2\u0022\u003A\u0022Pharmazeutische\u0020Beratung\u0022,\u0022price\u0022\u003A4.99,\u0022item_list_id\u0022\u003A\u002219\u0022,\u0022item_list_name\u0022\u003A\u0022Apotheke\u005C\u002FPharmazeutische\u0020Beratung\u0022,\u0022index\u0022\u003A2\u007D,\u007B\u0022item_name\u0022\u003A\u0022Alkohol,\u0020Coffein,\u0020Nikotin\u0022,\u0022item_id\u0022\u003A\u0022G000303\u0022,\u0022currency\u0022\u003A\u0022EUR\u0022,\u0022item_category\u0022\u003A\u0022Apotheke\u0022,\u0022item_category2\u0022\u003A\u0022Pharmazeutische\u0020Beratung\u0022,\u0022price\u0022\u003A35.9,\u0022item_list_id\u0022\u003A\u002219\u0022,\u0022item_list_name\u0022\u003A\u0022Apotheke\u005C\u002FPharmazeutische\u0020Beratung\u0022,\u0022index\u0022\u003A3\u007D,\u007B\u0022item_name\u0022\u003A\u0022Allgemeine\u0020und\u0020spezielle\u0020Pharmakologie\u0020und\u0020Toxikologie\u0022,\u0022item_id\u0022\u003A\u0022G000600\u0022,\u0022currency\u0022\u003A\u0022EUR\u0022,\u0022item_category\u0022\u003A\u0022Apotheke\u0022,\u0022item_category2\u0022\u003A\u0022Pharmazeutische\u0020Beratung\u0022,\u0022price\u0022\u003A99,\u0022item_list_id\u0022\u003A\u002219\u0022,\u0022item_list_name\u0022\u003A\u0022Apotheke\u005C\u002FPharmazeutische\u0020Beratung\u0022,\u0022index\u0022\u003A4\u007D,\u007B\u0022item_name\u0022\u003A\u0022Allgemeinpharmazie\u0022,\u0022item_id\u0022\u003A\u0022G000049\u0022,\u0022currency\u0022\u003A\u0022EUR\u0022,\u0022item_category\u0022\u003A\u0022Apotheke\u0022,\u0022item_category2\u0022\u003A\u0022Pharmazeutische\u0020Beratung\u0022,\u0022price\u0022\u003A108,\u0022item_list_id\u0022\u003A\u002219\u0022,\u0022item_list_name\u0022\u003A\u0022Apotheke\u005C\u002FPharmazeutische\u0020Beratung\u0022,\u0022index\u0022\u003A5\u007D,\u007B\u0022item_name\u0022\u003A\u0022aporello\u0020Heilpflanzen\u0022,\u0022item_id\u0022\u003A\u0022G000159\u002D1\u0022,\u0022currency\u0022\u003A\u0022EUR\u0022,\u0022item_category\u0022\u003A\u0022Apotheke\u0022,\u0022item_category2\u0022\u003A\u0022Pharmazeutische\u0020Beratung\u0022,\u0022price\u0022\u003A27,\u0022item_list_id\u0022\u003A\u002219\u0022,\u0022item_list_name\u0022\u003A\u0022Apotheke\u005C\u002FPharmazeutische\u0020Beratung\u0022,\u0022index\u0022\u003A6\u007D,\u007B\u0022item_name\u0022\u003A\u0022aporello\u0020Hom\u005Cu00f6opathie\u0022,\u0022item_id\u0022\u003A\u0022G000159\u0022,\u0022currency\u0022\u003A\u0022EUR\u0022,\u0022item_category\u0022\u003A\u0022Apotheke\u0022,\u0022item_category2\u0022\u003A\u0022Pharmazeutische\u0020Beratung\u0022,\u0022price\u0022\u003A27,\u0022item_list_id\u0022\u003A\u002219\u0022,\u0022item_list_name\u0022\u003A\u0022Apotheke\u005C\u002FPharmazeutische\u0020Beratung\u0022,\u0022index\u0022\u003A7\u007D,\u007B\u0022item_name\u0022\u003A\u0022Apotheke\u0020neu\u0020gelebt\u0022,\u0022item_id\u0022\u003A\u0022G001062\u0022,\u0022currency\u0022\u003A\u0022EUR\u0022,\u0022item_category\u0022\u003A\u0022Apotheke\u0022,\u0022item_category2\u0022\u003A\u0022Pharmazeutische\u0020Beratung\u0022,\u0022price\u0022\u003A34,\u0022item_list_id\u0022\u003A\u002219\u0022,\u0022item_list_name\u0022\u003A\u0022Apotheke\u005C\u002FPharmazeutische\u0020Beratung\u0022,\u0022index\u0022\u003A8\u007D,\u007B\u0022item_name\u0022\u003A\u0022Apothekenpraxis\u002DWorkbook\u0020mit\u0020Apothekenpraxis\u0020f\u005Cu00fcr\u0020PTA,\u0020Workbook\u0020Apothekenpraxis\u0022,\u0022item_id\u0022\u003A\u0022G000691\u0022,\u0022currency\u0022\u003A\u0022EUR\u0022,\u0022item_category\u0022\u003A\u0022Apotheke\u0022,\u0022item_category2\u0022\u003A\u0022Pharmazeutische\u0020Beratung\u0022,\u0022price\u0022\u003A74.2,\u0022item_list_id\u0022\u003A\u002219\u0022,\u0022item_list_name\u0022\u003A\u0022Apotheke\u005C\u002FPharmazeutische\u0020Beratung\u0022,\u0022index\u0022\u003A9\u007D,\u007B\u0022item_name\u0022\u003A\u0022Arterielle\u0020Hypertonie\u0020und\u0020antihypertensive\u0020Therapie\u0022,\u0022item_id\u0022\u003A\u0022G000267\u0022,\u0022currency\u0022\u003A\u0022EUR\u0022,\u0022item_category\u0022\u003A\u0022Apotheke\u0022,\u0022item_category2\u0022\u003A\u0022Pharmazeutische\u0020Beratung\u0022,\u0022price\u0022\u003A16.9,\u0022item_list_id\u0022\u003A\u002219\u0022,\u0022item_list_name\u0022\u003A\u0022Apotheke\u005C\u002FPharmazeutische\u0020Beratung\u0022,\u0022index\u0022\u003A10\u007D\u005D\u00
78177D\u007D\u005D');
7818
7819    dataToPush.forEach((dataObject) => {
7820        window.dataLayer.push(dataObject);
7821    });
7822})();
7823</script>
7823
7824
7825<script>
7826    (() => {
7827        'use strict';
7828        const clickTracking = {
7829            productEventData: {"category":{"362":{"event":"select_item","ecommerce":{"items":[{"item_name":"Adh\u00e4renzf\u00f6rderung","item_id":"G000237","currency":"EUR","item_category":"Apotheke","item_category2":"Pharmazeutische Beratung","price":25.9,"item_list_id":"19","item_list_name":"Apotheke\/Pharmazeutische Beratung","index":1}]}},"1195":{"event":"select_item","ecommerce":{"items":[{"item_name":"Akute und chronische Herzinsuffizienz","item_id":"G001016","currency":"EUR","item_category":"Apotheke","item_category2":"Pharmazeutische Beratung","price":4.99,"item_list_id":"19","item_list_name":"Apotheke\/Pharmazeutische Beratung","index":2}]}},"472":{"event":"select_item","ecommerce":{"items":[{"item_name":"Alkohol, Coffein, Nikotin","item_id":"G000303","currency":"EUR","item_category":"Apotheke","item_category2":"Pharmazeutische Beratung","price":35.9,"item_list_id":"19","item_list_name":"Apotheke\/Pharmazeutische Beratung","index":3}]}},"811":{"event":"select_item","ecommerce":{"items":[{"item_name":"Allgemeine und spezielle Pharmakologie und Toxikologie","item_id":"G000600","currency":"EUR","item_category":"Apotheke","item_category2":"Pharmazeutische Beratung","price":99,"item_list_id":"19","item_list_name":"Apotheke\/Pharmazeutische Beratung","index":4}]}},"166":{"event":"select_item","ecommerce":{"items":[{"item_name":"Allgemeinpharmazie","item_id":"G000049","currency":"EUR","item_category":"Apotheke","item_category2":"Pharmazeutische Beratung","price":108,"item_list_id":"19","item_list_name":"Apotheke\/Pharmazeutische Beratung","index":5}]}},"333":{"event":"select_item","ecommerce":{"items":[{"item_name":"aporello Heilpflanzen","item_id":"G000159-1","currency":"EUR","item_category":"Apotheke","item_category2":"Pharmazeutische Beratung","price":27,"item_list_id":"19","item_list_name":"Apotheke\/Pharmazeutische Beratung","index":6}]}},"258":{"event":"select_item","ecommerce":{"items":[{"item_name":"aporello Hom\u00f6opathie","item_id":"G000159","currency":"EUR","item_category":"Apotheke","item_category2":"Pharmazeutische Beratung","price":27,"item_list_id":"19","item_list_name":"Apotheke\/Pharmazeutische Beratung","index":7}]}},"1925":{"event":"select_item","ecommerce":{"items":[{"item_name":"Apotheke neu gelebt","item_id":"G001062","currency":"EUR","item_category":"Apotheke","item_category2":"Pharmazeutische Beratung","price":34,"item_list_id":"19","item_list_name":"Apotheke\/Pharmazeutische Beratung","index":8}]}},"887":{"event":"select_item","ecommerce":{"items":[{"item_name":"Apothekenpraxis-Workbook mit Apothekenpraxis f\u00fcr PTA, Workbook Apothekenpraxis","item_id":"G000691","currency":"EUR","item_category":"Apotheke","item_category2":"Pharmazeutische Beratung","price":74.2,"item_list_id":"19","item_list_name":"Apotheke\/Pharmazeutische Beratung","index":9}]}},"403":{"event":"select_item","ecommerce":{"items":[{"item_name":"Arterielle Hypertonie und antihypertensive Therapie","item_id":"G000267","currency":"EUR","item_category":"Apotheke","item_category2":"Pharmazeutische Beratung","price":16.9,"item_list_id":"19","item_list_name":"Apotheke\/Pharmazeutische Beratung","index":10}]}}}},
7830            typeSelectorMapping: [
7831                {
7832                    type: 'category',
7833                    selector: ':is(.products-grid, .products-list)'
7834                },
7835                {
7836                    type: 'search_results',
7837                    selector: ':is(.products-grid, .products-list)'
7838                },
7839                {
7840                    type: 'related',
7841                    selector: '.catalog-product-view .product-slider :is(.js_slide, .swiper-slide)'
7842                },
7843                {
7844                    type: 'upsell',
7845                    selector: '.catalog-product-view .product-slider :is(.js_slide, .swiper-slide)'
7846                },
7847                {
7848                    type: 'crosssell',
7849                    selector: '.checkout-cart-index .product-slider :is(.js_slide, .swiper-slide)'
7850                },
7851                {
7852                    type: 'widget_product_list',
7853                    selector: '.block.widget.block-products-list'
7854                },
7855                {
7856                    type: 'slider_product_list',
7857                    selector: '.product-slider .js_slides :is(.js_slide, .swiper-slide)'
7858                }
7859            ],
7860            selectors: {
7861                productIdContainer: '[data-product-id="%productId%"]',
7862                containerToBind: 'a.product-item-photo, a.product-item-link',
7863                productItem: '.product-item',
7864                reviewForm: '.review-form'
7865            },
7866
7867            /**
7868             * @private
7869             * @return {void}
7870             */
7871            initClickTracking() {
7872                const reviewForm = document.querySelector(this.selectors.reviewForm);
7873                if (reviewForm) {
7874                    reviewForm.addEventListener('click', () => {
7875                        setTimeout(() => {
7876                            window.dispatchEvent(new CustomEvent('reload-customer-section-data'));
7877                        }, 1500);
7878                    });
7879                }
7880
7881                this.typeSelectorMapping.forEach((mapping) => {
7882                    this.getProductIds(mapping.type).forEach((productId) => {
7883                        const eventData = this.getEventData(mapping.type, productId);
7884                        if (eventData) {
7885                            this.setProductClickEvent.bind(this, mapping.selector, productId, eventData)();
7886                        }
7887                    });
7888                });
7889            },
7890
7891            /**
7892             * @param {string} listContainerSelector
7893             * @param {string} productId
7894             * @param {Object} eventData
7895             * @return {void}
7896             */
7897            setProductClickEvent(listContainerSelector, productId, eventData) {
7898                const containerToBind = this.findProductContainer(listContainerSelector, productId);
7899
7900                if (!containerToBind.length) {
7901                    return;
7902                }
7903
7904                containerToBind.forEach(elem => {
7905                    elem.addEventListener('click', () => {
7906                        this.triggerSelectItem(eventData);
7907                    })
7908                })
7909            },
7910
7911            /**
7912             * @param {Object} eventData
7913             * @return {void}
7914             */
7915            triggerSelectItem(eventData) {
7916                window.dataLayer.push({ecommerce: null});
7917                window.dataLayer.push(eventData);
7918            },
7919
7920            /**
7921             * @param {string} listContainerSelector
7922             * @param {string} productId
7923             * @return {*[]}
7924             */
7925            findProductContainer(listContainerSelector, productId) {
7926                let productIdContainerSelector,
7927                    productIdContainer,
7928                    itemElement,
7929                    containerToBind;
7930
7931                productIdContainerSelector = listContainerSelector
7932                    + ' ' + this.selectors.productIdContainer.replace('%productId%', productId);
7933
7934                productIdContainer = document.querySelector(productIdContainerSelector);
7935
7936                if (!productIdContainer) {
7937                    return [];
7938                }
7939
7940                itemElement = productIdContainer.closest(this.selectors.productItem);
7941                containerToBind = itemElement?.querySelectorAll(this.selectors.containerToBind);
7942
7943                return containerToBind ? containerToBind : [];
7944            },
7945
7946            /**
7947             * @return {string[]}
7948             */
7949            getProductIds(type) {
7950                return Object.keys(this.productEventData?.[type] ?? {});
7951            },
7952
7953            /**
7954             * @param {string} type
7955             * @param {string} productId
7956             * @return {Object|null}
7957             */
7958            getEventData(type, productId) {
7959                return this.productEventData?.[type]?.[productId] ?? null;
7960            }
7961        }
7962
7963        window.addEventListener('init-external-scripts', () => {
7964            clickTracking.initClickTracking();
7965        }, { once: true, passive: true });
7966    })()
7967</script>
7967
7968
7969<script>
7970    (_ => {
7971        'use strict';
7972
7973        const SECTION_KEY = 'amga4_hyva_event_pool';
7974        const MAGE_CACHE_SECTION_KEY = 'mage-cache-storage';
7975        const storage = hyva.getBrowserStorage();
7976
7977        window.addEventListener('private-content-loaded', ({ detail }) => {
7978            if (!detail?.data) {
7979                return;
7980            }
7981
7982            const data = detail?.data[SECTION_KEY];
7983            if (!data) {
7984                return;
7985            }
7986
7987            let eventsPool = data?.events || [];
7988            if (eventsPool.length) {
7989                eventsPool.forEach(event => {
7990                    window.dataLayer.push({ecommerce: null});
7991                    window.dataLayer.push(event);
7992                });
7993
7994                setTimeout(() => {
7995                    storage.setItem(
7996                        MAGE_CACHE_SECTION_KEY,
7997                        JSON.stringify({
7998                            ...detail.data,
7999                            [SECTION_KEY]: {}
8000                        })
8001                    );
8002                }, 0);
8003            }
8004        });
8005    })();
8006</script>
vendor: 1 bytes, line 8006
8006
8007<script>
8008    (function () {
8009        const modals = [];
8010        const excludedFromFocusTrapping = new Set();
8011
8012        function trapFocusInNextModalWithOverlay() {
8013            for (let idx = modals.length -1; idx >= 0; idx--) {
8014                const nextOnStack = modals[idx];
8015                const nextDialogElement = nextOnStack.instance.$refs[nextOnStack.name];
8016                if (! isOverlayDisabled(nextDialogElement)) {
8017                    hyva.trapFocus(nextDialogElement);
8018                    break;
8019                }
8020            }
8021        }
8022
8023        function focusables(dialogElement) {
8024            const selector = 'button, [href], input, textarea, select, details, [tabindex]:not([tabindex="-1"])';
8025            return Array.from(dialogElement.querySelectorAll(selector))
8026                .filter(el => !el.hasAttribute('disabled'));
8027        }
8028
8029        function firstVisible(elements) {
8030            const a = Array.from(elements);
8031            for (let i = 0; i < a.length; i++) {
8032                if (a[i].offsetWidth || a[i].offsetHeight || a[i].getClientRects().length) return a[i];
8033            }
8034            return null;
8035        }
8036
8037        function isInViewport(element) {
8038            const rect = element && element.getBoundingClientRect();
8039            return rect &&
8040                rect.top >= 0 &&
8041                rect.left >= 0 &&
8042                rect.right <= window.innerWidth &&
8043                rect.bottom <= window.innerHeight;
8044        }
8045
8046        function setFocusAfterTransition(dialogElement, duration) {
8047                        const nested = Array.from(dialogElement.querySelectorAll('[role="dialog"]'));
8048            const candidates = Array.from(dialogElement.querySelectorAll('[x-focus-first]'));
8049            next: for (let candidate of candidates) {
8050                for (let child of nested) {
8051                    if (child.contains(candidate)) continue next;
8052                }
8053                setTimeout(() => candidate.focus(), 50);
8054                break;
8055            }
8056            window.setTimeout(() => {
8057                const focusElement = firstVisible(dialogElement.querySelectorAll('[x-focus-first]')) ||
8058                    focusables(dialogElement)[0] ||
8059                    null;
8060                focusElement && isInViewport(focusElement) && focusElement.focus();
8061            }, Math.max(1, duration));
8062        }
8063
8064        function determineTrigger($refs, dialog, trigger) {
8065                        if (typeof trigger === 'undefined' && typeof dialog === 'object' && dialog.target instanceof HTMLElement) {
8066                return dialog.target;
8067            }
8068                        if (typeof dialog === 'string' && typeof trigger === 'object' && trigger.target instanceof HTMLElement) {
8069                return trigger.target;
8070            }
8071                        if (typeof trigger === 'string') {
8072                try {
8073                    return $refs[trigger] || document.querySelector(trigger)
8074                } catch (e) {}
8075            }
8076                        if (trigger instanceof Element) {
8077                return trigger;
8078            }
8079
8080                        return null;
8081        }
8082
8083        function isOverlayDisabled(dialog) {
8084            return dialog && dialog.hasAttribute('x-no-overlay')
8085        }
8086
8087        function areRemainingModalsWithoutOverlay(modals)
8088        {
8089            const overflowDisabled = modals.map(modal => modal.instance.$refs[modal.name]).filter(isOverlayDisabled);
8090
8091            return overflowDisabled.length === modals.length;
8092        }
8093
8094        window.hyva.modal = function(options = {}) {
8095                        if (this.$el && this.$el.dataset && this.$el.dataset.options) {
8096                try {
8097                    options = Object.assign(options, JSON.parse(this.$el.dataset.options || '{}'));
8098                } catch (e) {
8099                    throw new Error('Cannot read the dialog options from the data-options attribute: not valid JSON');
8100                }
8101            }
8102
8103            const config = Object.assign({
8104                dialog: 'dialog',                 duration: 300,                 transitionEnter: 'transition ease-out duration-300',
8105                transitionEnterStart: 'opacity-0',
8106                transitionEnterEnd: 'opacity-100',
8107                transitionLeave: 'transition ease-in duration-300',
8108                transitionLeaveStart: 'opacity-100',
8109                transitionLeaveEnd: 'opacity-0',
8110            }, options);
8111            let lastHide = 0;
8112
8113            return {
8114                opened: {},
8115                show(dialog, trigger) {
8116                    const focusTargetAfterHide = determineTrigger(this.$refs, dialog, trigger);
8117                    const name = typeof dialog === 'string' ? dialog : config.dialog;
8118                    const dialogElement = this.$refs[name];
8119                    if (! dialogElement) {
8120                                                return;
8121                    }
8122                    const useOverlay = ! dialogElement.hasAttribute('x-no-overlay');
8123
8124                    dialogElement.scrollTop = 0;
8125
8126                                        if (this.opened[name]) {
8127                        return;
8128                    }
8129
8130                    if (focusTargetAfterHide) {
8131                        focusTargetAfterHide.setAttribute('aria-expanded', 'true');
8132                    }
8133
8134                    this.opened[name] = true;
8135                    useOverlay && this.$nextTick(() => hyva.trapFocus(dialogElement));
8136                    setFocusAfterTransition(dialogElement, config.duration);
8137
8138                    const frame = {name, instance: this, focusTarget: focu
8138sTargetAfterHide, time: Date.now()};
8139
8140                    modals.push(frame);
8141                    if (useOverlay) {
8142                        document.body.classList.add('overflow-hidden');
8143                    }
8144                    return new Promise(resolve => frame.resolve = resolve);
8145                },
8146                cancel() {
8147                    this.hide(false);
8148                },
8149                ok() {
8150                    this.hide(true);
8151                },
8152                hide(value) {
8153                                        if (Date.now() - lastHide < config.duration) {
8154                        return;
8155                    }
8156                    lastHide = Date.now();
8157
8158                    const modal = modals.pop() || {};
8159                    if (! modal.instance) {
8160                        return;
8161                    }
8162
8163                    const name = modal.name;
8164                    this.opened[name] = false;
8165                    hyva.releaseFocus(modal.instance.$refs[modal.name])
8166                    trapFocusInNextModalWithOverlay();
8167
8168                    const nextFocusAfterHide = modal.focusTarget;
8169                    nextFocusAfterHide && setTimeout(() => {
8170                        nextFocusAfterHide.setAttribute('aria-expanded', 'false');
8171                        nextFocusAfterHide.focus()
8172                    }, config.duration);
8173
8174                    if (modals.length === 0 || areRemainingModalsWithoutOverlay(modals)) {
8175                        document.body.classList.remove('overflow-hidden');
8176                    }
8177
8178                    modal.resolve(value);
8179                },
8180                overlay(dialog) {
8181                    dialog = this.$el.dataset.dialogRefName || dialog;
8182                    const name = typeof dialog === 'string' ? dialog : config.dialog;
8183                    return {
8184                        ['x-show']() {
8185                            return this.opened[name]
8186                        },
8187                        ['x-transition:enter']: config.transitionEnter,
8188                        ['x-transition:enter-start']: config.transitionEnterStart,
8189                        ['x-transition:enter-end']: config.transitionEnterEnd,
8190                        ['x-transition:leave']: config.transitionLeave,
8191                        ['x-transition:leave-start']: config.transitionLeaveStart,
8192                        ['x-transition:leave-end']: config.transitionLeaveEnd,
8193                        ['@hyva-modal-show.window'](event) {
8194                            event.detail && event.detail.dialog === name && this.show(name, event.detail.focusAfterHide)
8195                        }
8196                    };
8197                },
8198                showDialogOnInit() {
8199                    const parent = this.$el.closest('[data-dialog-ref-name]');
8200                    if (parent && parent.dataset.dialogRefName) {
8201                        this.$dispatch('hyva-modal-show', {dialog: parent.dataset.dialogRefName})
8202                    }
8203                }
8204            };
8205        }
8206
8207        window.hyva.modal.peek = () => modals.length > 0 && modals[modals.length -1]
8208
8209        window.hyva.modal.pop = function () {
8210            if (modals.length > 0) {
8211                const modal = modals[modals.length -1];
8212                modal.instance.hide();
8213            }
8214        }
8215
8216        window.hyva.modal.excludeSelectorsFromFocusTrap = function (selectors) {
8217            typeof selectors === 'string' || selectors instanceof String
8218                ? excludedFromFocusTrapping.add(selectors)
8219                : selectors.map(selector => excludedFromFocusTrapping.add(selector));
8220        }
8221
8222        window.hyva.modal.eventListeners = {
8223            keydown: event => {
8224                if (event.key === 'Escape') {
8225                    window.hyva.modal.pop();
8226                }
8227            },
8228                        click: event => {
8229                if (modals.length > 0) {
8230                    const modal = modals[modals.length -1];
8231                    const dialog = modal.instance.$refs[modal.name];
8232                    if (modal.time + 50 < Date.now() && // if last click processing is more than 50ms ago
8233                        ! isOverlayDisabled(dialog) && // if dialog has overlay
8234                        ! dialog.contains(event.target)) { // if click is outside of dialog
8235                        modal.instance.hide();
8236                    }
8237                }
8238            }
8239        };
8240
8241        document.addEventListener('keydown', window.hyva.modal.eventListeners.keydown);
8242
8243        document.addEventListener('click', window.hyva.modal.eventListeners.click);
8244    })();
8245    window.addEventListener('alpine:init', () => {
8246        Alpine.data('hyvaModal', window.hyva.modal);
8247    }, {once: true});
8248</script>
8248
8249<div x-data="tawkEmbed" x-init="init">
8250    
8250<script>
8251        function tawkEmbed() {
8252            return {
8253                visitor: null,
8254                embedUrl: 'https://embed.tawk.to/67248fce2480f5b4f5974973/1ibjd3fne',
8255
8256                init() {
8257                    this.visitor = null;
8258
8259                    if (this.visitor) {
8260                        window.Tawk_API = window.Tawk_API || {};
8261                        window.Tawk_API.visitor = {
8262                            name: this.visitor.name,
8263                            email: this.visitor.email
8264                        };
8265                    }
8266
8267                    this.loadTawkScript();
8268                },
8269
8270                loadTawkScript() {
8271                    let s1 = document.createElement('script');
8272                    let s0 = document.getElementsByTagName('script')[0];
8273
8274                    s1.async = true;
8275                    s1.src = this.embedUrl;
8276                    s1.charset = 'UTF-8';
8277                    s1.setAttribute('crossorigin', '*');
8278                    s0.parentNode.insertBefore(s1, s0);
8279                }
8280            }
8281        }
8282
8283        window.addEventListener('alpine:init', () => {
8284            Alpine.data('tawkEmbed', tawkEmbed);
8285        }, {
8286            once: true
8287        });
8288    </script>
8288
8289    </div>
8290<script>
8291    let SnapSlider = class {
8292        constructor(el, {
8293            labelSepparator = 'von',
8294            autoPager,
8295            groupPager
8296        } = {}) {
8297            this.el = el;
8298            this.track = this.el.querySelector("[data-track]");
8299            if (!this.track) {
8300                console.warn(
8301                    "No Slider track defined, reverting back to CSS slider.\nPlease create a wrapper for your slides with the attribute data-track",
8302                    this.el
8303                );
8304                return;
8305            }
8306            this.initialLoad = true;
8307            this.slides = [];
8308            this.inViewObserver;
8309            this.mutationObserver;
8310            this.resizeObserver;
8311            this.pager = this.el.querySelector("[data-pager]");
8312            this.navBtns = Array.from(
8313                this.el.querySelectorAll("[data-next], [data-prev]")
8314            );
8315            this.slideLabelSepparator = this.el.dataset.slideLabelSepparator || labelSepparator;
8316            this.useAutoPager = autoPager || this.el.hasAttribute("data-auto-pager") || false;
8317            this.useGroupPager = groupPager || this.el.hasAttribute("data-group-pager") || false;
8318            this.sliderLabel = this.el.hasAttribute("aria-label") && this.el.getAttribute("aria-label").toLowerCase().trim().replace(/[^a-z0-9_-]+/g, "-").replace(/^-+|-+$/g, "");
8319            this.sliderId = this.el.id || this.sliderLabel || "slider";
8320            this.markerIdName = "data-target-id";
8321            this.pagerClasses = this.el.dataset.pagerClass || "snap-pager";
8322            this.markerClasses = this.el.dataset.markerClass || "snap-marker";
8323            this.init();
8324        }
8325        init() {
8326            this.setupSlides();
8327            this.setupNav();
8328            if (this.useAutoPager) {
8329                this.createPager();
8330            } else {
8331                this.setupPager();
8332            }
8333            this.setupObservers();
8334            this.setupMutationObserver();
8335            this.setupResizeObserver();
8336            this.el.addEventListener("click", this.eventHandler.bind(this));
8337            this.el.addEventListener("keydown", this.eventHandler.bind(this));
8338        }
8339        destroy() {
8340            this.inViewObserver?.disconnect();
8341            this.mutationObserver?.disconnect();
8342            this.resizeObserver?.disconnect();
8343            this.el.removeEventListener("click", this.eventHandler.bind(this));
8344            this.el.removeEventListener("keydown", this.eventHandler.bind(this));
8345        }
8346        roundUpIfGreaterThan(number, min = 8) {
8347            const decimalPart = number - Math.floor(number);
8348            return decimalPart >= min ? Math.ceil(number) : Math.floor(number);
8349        }
8350        getInViewItems() {
8351            const inViewSlides = this.track.querySelectorAll("[data-in-view]");
8352            const firstInViewSlide = inViewSlides[0] || null;
8353            const lastInViewSlide = inViewSlides[inViewSlides.length - 1] || null;
8354            const isAtStart = firstInViewSlide === this.slides[0];
8355            const isAtEnd = lastInViewSlide === this.slides[this.slides.length - 1];
8356            return {
8357                inViewSlides,
8358                totalInViewSlides: inViewSlides.length,
8359                firstInViewSlide,
8360                lastInViewSlide,
8361                isAtStart,
8362                isAtEnd,
8363                hasNoOverflow: isAtStart && isAtEnd
8364            };
8365        }
8366        groupPagerMarkers() {
8367            if (this.slides.length === 0 || !this.pager || !this.useGroupPager) return;
8368            const totalVisibleSlides = this.roundUpIfGreaterThan(
8369                this.track.offsetWidth / this.slides[0].offsetWidth
8370            );
8371            const markers = Array.from(this.pager.querySelectorAll("a, button"));
8372            markers.forEach((marker, index) => {
8373                marker.style.display = index % totalVisibleSlides === 0 ? null : "none";
8374            });
8375        }
8376        handleInView(entries) {
8377            entries.forEach((entry) => {
8378                const marker = this.pager && (this.pager.querySelector(`[href="#${entry.target.id}"]`) || this.pager.querySelector(
8379                    `[${this.markerIdName}="${entry.target.id}"]`
8380                ));
8381                entry.target.toggleAttribute("data-in-view", entry.isIntersecting);
8382                entry.target.toggleAttribute("inert", !entry.isIntersecting);
8383                marker?.setAttribute("aria-current", entry.isIntersecting);
8384                marker?.setAttribute("tabindex", entry.isIntersecting ? "0" : "-1");
8385            });
8386            const {
8387                isAtStart,
8388                isAtEnd,
8389                hasNoOverflow
8390            } = this.getInViewItems();
8391            this.navBtns.forEach((btn) => {
8392                if (btn.hasAttribute("data-next")) {
8393                    btn.style.visibility = hasNoOverflow ? "hidden" : null;
8394                    isAtEnd ? btn.setAttribute("disabled", "") : btn.removeAttribute("disabled");
8395                }
8396                if (btn.hasAttribute("data-prev")) {
8397                    btn.style.visibility = hasNoOverflow ? "hidden" : null;
8398                    isAtStart ? btn.setAttribute("disabled", "") : btn.removeAttribute("disabled");
8399                }
8400            });
8401            if (this.pager) {
8402                this.pager.style.visibility = hasNoOverflow ? "hidden" : null;
8403            }
8404            if (!this.initialLoad) {
8405                this.el.dispatchEvent(
8406                    new CustomEvent("slideChange", {
8407                        detail: this.getInViewItems()
8408                    })
8409                );
8410            } else {
8411                this.initialLoad = false;
8412            }
8413            if (document.activeElement.parentElement.hasAttribute("data-pager")) {
8414                const activeItems = this.pager.querySelectorAll('[tabindex="0"]');
8415                if (activeItems.length) {
8416                    activeItems[0].focus({ preventScroll: true });
8417                }
8418            }
8419        }
8420        getSlides() {
8421            if (!this.track) return [];
8422            return Array.from(this.track.children).filter(
8423                (child) => child.tagName.toLowerCase() !== "template" && child.tagName.toLowerCase() !== "style" && child.tagName.toLowerCase() !== "script"
8424            );
8425        }
8426        refreshSlides() {
8427            this.initialLoad = true;
8428            this.slides = this.getSlides();
8429            this.setupSlides();
8430            if (this.useAutoPager) {
8431                this.createPager();
8432            } else {
8433                this.setupPager();
8434            }
8435            this.groupPagerMarkers();
8436            this.setupObservers();
8437        }
8438        setupSlides() {
8439            this.slides = this.getSlides();
8440            this.slides.forEach((slide, index) => {
8441                const totalSlides = this.slides.length;
8442                const currentSlide = index + 1;
8443                const existingLabel = slide.getAttribute("aria-label") || "";
8444                const isImage = slide.tagName.toLowerCase() === "img" || slide.tagName.toLowerCase() === "picture";
8445                const slideLabelTag = isImage ? "alt" : "aria-label";
8446                const hasAutoLabel = existingLabel.startsWith(
8447                    `${currentSlide} ${this.slideLabelSepparator} `
8448                );
8449                if (!slide.hasAttribute("id")) {
8450                    slide.setAttribute(
8451                        "id",
8452                        `${this.sliderId}-item-${currentSlide}`
8453                    );
8454                }
8455                if (!slide.hasAttribute(slideLabelTag) || slide.getAttribute(slideLabelTag) === "" || hasAutoLabel) {
8456                    slide.setAttribute(
8457                        slideLabelTag,
8458                        `${currentSlide} ${this.slideLabelSepparator} ${totalSlides}`
8459                    );
8460                }
8461                if (slide.tagName.toLowerCase() === "div" && !slide.hasAttribute("role")) {
8462                    slide.setAttribute("role", "group");
8463                }
8464                if (this.pager && !isImage) {
8465                    slide.setAttribute("role", "tabpanel");
8466                }
8467                if (slide.getAttribute("role") === "group") {
8468                    slide.setAttribute("aria-roledescription", "item");
8469                }
8470            });
8471            if (!this.el.hasAttribute("role") && this.el.tagName !== "SECTION") {
8472                this.el.setAttribute("role", "region");
8473            }
8474            if (!this.el.hasAttribute("aria-roledescription")) {
8475                this.el.setAttribute("aria-roledescription", "carousel");
8476            }
8477            this.track.setAttribute("tabindex", 0);
8478            this.track.setAttribute("aria-live", "polite");
8479        }
8480        setupNav() {
8481            this.navBtns.forEach((btn) => {
8482                btn.setAttribute("disabled", "");
8483                btn.removeAttribute("hidden");
8484                btn.classList.remove("invisible");
8485                btn.style.visibility = null;
8486            });
8487        }
8488        createPager() {
8489            const newPager = document.createElement("nav");
8490            newPager.setAttribute("data-pager", "");
8491            newPager.setAttribute("role", "tablist");
8492            newPager.classList.add(...this.pagerClasses.split(" "));
8493            this.slides.forEach((slide, index) => {
8494                const marker = document.createElement("button");
8495                const slideId = slide.id || `${this.sliderId}-item-${index + 1}`;
8496                marker.setAttribute(this.markerIdName, slideId);
8497                marker.classList.add(...this.markerClasses.split(" "));
8498                this.setupPagerMarker(marker, index);
8499                newPager.appendChild(marker);
8500                if (slide.tagName.toLowerCase() !== "img" && slide.tagName.toLowerCase() !== "picture") {
8501                    slide.removeAttribute("aria-roledescription");
8502                    slide.setAttribute("role", "tabpanel");
8503                }
8504            });
8505            if (this.pager) {
8506                this.pager.setAttribute("role", "tablist");
8507                this.pager.replaceChildren(...newPager.children);
8508            } else {
8509                this.track.after(newPager);
8510                this.pager = this.el.querySelector("[data-pager]");
8511            }
8512        }
8513        setupPager() {
8514            if (!this.pager) return;
8515            this.pager.setAttribute("role", "tablist");
8516            const items = Array.from(this.pager.querySelectorAll("a, button"));
8517            items.forEach((marker, index) => this.setupPagerMarker(marker, index));
8518        }
8519        setupPagerMarker(marker, index) {
8520            const markerId = marker.getAttribute("href")?.slice(1) || marker.getAttribute(this.markerIdName);
8521            const slideId = markerId || `${this.sliderId}-item-${index + 1}`;
8522            if (!markerId) {
8523                marker.setAttribute(this.markerIdName, slideId);
8524            }
8525            marker.setAttribute("role", "tab");
8526            marker.setAttribute("aria-controls", slideId);
8527            marker.setAttribute("aria-posinset", index + 1);
8528            marker.setAttribute("aria-setsize", this.slides.length);
8529            marker.setAttribute("tabindex", "-1");
8530            if (!marker.hasAttribute("aria-label")) {
8531                marker.setAttribute("aria-label", `Slide ${index + 1}`);
8532            }
8533        }
8534        setupObservers() {
8535            if (this.inViewObserver) {
8536                this.inViewObserver.disconnect();
8537            }
8538            this.inViewObserver = new IntersectionObserver(
8539                this.handleInView.bind(this), {
8540                    root: this.track,
8541                    threshold: 0.8
8542                }
8543            );
8544            this.slides.forEach((slide) => this.inViewObserver.observe(slide));
8545        }
8546        setupMutationObserver() {
8547            this.mutationObserver = new MutationObserver(
8548                this.refreshSlides.bind(this)
8549            );
8550            this.mutationObserver.observe(this.track, {
8551                childList: true,
8552                subtree: false
8553            });
8554        }
8555        setupResizeObserver() {
8556            this.resizeObserver = new ResizeObserver(
8557                this.groupPagerMarkers.bind(this)
8558            );
8559            this.resizeObserver.observe(this.el);
8560        }
8561        goToSlideDir(dir = "next") {
8562            const {
8563                firstInViewSlide,
8564                lastInViewSlide
8565            } = this.getInViewItems();
8566            const isPrev = dir === "prev";
8567            let targetSlide = isPrev ? firstInViewSlide?.previousElementSibling : lastInViewSlide?.nextElementSibling;
8568            if (!targetSlide) return;
8569            if (targetSlide.tagName.toLowerCase() === "template") {
8570                targetSlide = isPrev ? targetSlide?.previousElementSibling : targetSlide?.nextElementSibling;
8571            }
8572            targetSlide.scrollIntoView({ block: "nearest", inline: isPrev ? "end" : "start" });
8573        }
8574        pagerToSlide(event) {
8575            if (!event.target.closest("[data-pager]")) return;
8576            const marker = event.target.closest("a, button");
8577            if (!marker) return;
8578            event.preventDefault();
8579            const slideId = marker.getAttribute("href")?.slice(1) || marker.getAttribute(this.markerIdName);
8580            const targetSlide = this.track.querySelector(`#${slideId}`);
8581            targetSlide?.scrollIntoView({ block: "nearest", inline: "start" });
8582        }
8583        eventHandler(event) {
8584            const target = event.target.closest(
8585                "[data-next], [data-prev], [data-pager]"
8586            );
8587            if (!target) return;
8588            if (event.type === "click") {
8589                if (target.hasAttribute("data-next")) {
8590                    this.goToSlideDir("next");
8591                } else if (target.hasAttribute("data-prev")) {
8592                    this.goToSlideDir("prev");
8593                } else if (target.closest("[data-pager]")) {
8594                    this.pagerToSlide(event);
8595                }
8596            }
8597            if (event.type === "keydown" && target.closest("[data-pager]")) {
8598                if (event.key === "ArrowRight") {
8599                    this.goToSlideDir("next");
8600                } else if (event.key === "ArrowLeft") {
8601                    this.goToSlideDir("prev");
8602                }
8603            }
8604        }
8605    };
8606
8607    (() => {
8608        function alpineSnapSlider(Alpine) {
8609            Alpine.directive("snap-slider", (el, {
8610                modifiers
8611            }, {
8612                cleanup
8613            }) => {
8614                const autoPager = modifiers.includes("auto-pager");
8615                const groupPager = modifiers.includes("group-pager");
8616                const slider = new SnapSlider(el, {
8617                    autoPager,
8618                    groupPager
8619                });
8620                cleanup(() => {
8621                    slider.destroy();
8622                });
8623            });
8624        }
8625
8626        document.addEventListener("alpine:init", () => {
8627            window.Alpine.plugin(alpineSnapSlider);
8628        });
8629    })();
8630    //# sourceURL=alpine-snap-slider.js
8631</script>
8631
8632
8633<script>
8634    (() => {
8635        // src/dialog.js
8636        function dialog_default(Alpine) {
8637            Alpine.directive("htmldialog", fylgjaAlpineDialog);
8638            function fylgjaAlpineDialog(el, { expression, modifiers }, { evaluateLater, cleanup }) {
8639            const evaluate = expression.length ? evaluateLater(expression) : () => {};
8640            const canEvaluate = expression.length > 0;
8641            const lockPageScroll = modifiers.includes("noscroll");
8642            const closeBy = el.getAttribute("closeby") || modifierValue(modifiers, "closeby", "closerequest");
8643            el.style.display = null;
8644            el.style.length === 0 && el.removeAttribute("style");
8645            if (el._x_isShown) {
8646                open();
8647            }
8648            const closeBySupported = (() => {
8649                return "closedBy" in HTMLDialogElement.prototype;
8650            })();
8651            function scrollLock(use = true) {
8652                document.body.style.overflow = use ? "hidden" : "";
8653            }
8654            function dialogSubmit(event) {
8655                if (event.target.getAttribute("method") === "dialog" || event.submitter?.getAttribute("formmethod") === "dialog") {
8656                event.preventDefault();
8657                evaluate();
8658                }
8659            }
8660            function escapeDialog(event) {
8661                if (event.key !== "Escape") return;
8662                event.preventDefault();
8663                if (closeBy === "none") return;
8664                evaluate();
8665            }
8666            function handleCloseByEvent(event) {
8667                if (event.target !== el) return;
8668                const rect = el.getBoundingClientRect();
8669                const isInDialog = rect.top <= event.clientY && event.clientY <= rect.top + rect.height && rect.left <= event.clientX && event.clientX <= rect.left + rect.width;
8670                if (!isInDialog) {
8671                if (closeBy === "any") {
8672                    if (closeBySupported) {
8673                    event.preventDefault();
8674                    }
8675                    evaluate();
8676                }
8677                }
8678            }
8679            function handleCloseEvent() {
8680                evaluate();
8681            }
8682            function open() {
8683                if (el.hasAttribute("open")) return;
8684                el.showModal();
8685                scrollLock(lockPageScroll);
8686            }
8687            function close() {
8688                if (!el.hasAttribute("open")) return;
8689                el.close();
8690                scrollLock(false);
8691            }
8692            el._x_doShow = () => open();
8693            el._x_doHide = () => close();
8694            el.addEventListener("keydown", escapeDialog);
8695            el.addEventListener("submit", dialogSubmit);
8696            el.addEventListener("click", handleCloseByEvent);
8697            el.addEventListener("cancel", handleCloseEvent);
8698            cleanup(() => {
8699                el.removeEventListener("keydown", escapeDialog);
8700                el.removeEventListener("submit", dialogSubmit);
8701                el.removeEventListener("click", handleCloseByEvent);
8702                el.removeEventListener("cancel", handleCloseEvent);
8703                scrollLock(false);
8704            });
8705            }
8706        }
8707        function modifierValue(modifiers, key, fallback) {
8708            if (modifiers.indexOf(key) === -1) return fallback;
8709            const rawValue = modifiers[modifiers.indexOf(key) + 1];
8710            if (!rawValue) return fallback;
8711            if (key === "closeby") {
8712            const allowedValues = ["auto", "none", "closerequest", "any"];
8713            const options = allowedValues.join(", ");
8714            if (!allowedValues.includes(rawValue)) {
8715                console.warn(
8716                `"${rawValue}" is not one of the allowed values for closeby: ${options}`
8717                );
8718                return fallback;
8719            }
8720            }
8721            return rawValue;
8722        }
8723
8724        // src/cdn.js
8725        document.addEventListener("alpine:init", () => {
8726            window.Alpine.plugin(dialog_default);
8727        });
8728    })();
8729    //# sourceURL=alpine-htmldialog.js
8730</script>
8730
8731
8732<script>
8733    (() => {
8734        function src_default(Alpine) {
8735            Alpine.directive("intersect", Alpine.skipDuringClone((el, { value, expression, modifiers }, { evaluateLater, cleanup }) => {
8736                let evaluate = evaluateLater(expression);
8737                let options = {
8738                    rootMargin: getRootMargin(modifiers),
8739                    threshold: getThreshold(modifiers)
8740                };
8741                let observer = new IntersectionObserver((entries) => {
8742                    entries.forEach((entry) => {
8743                        if (entry.isIntersecting === (value === "leave"))
8744                            return;
8745                        evaluate();
8746                        modifiers.includes("once") && observer.disconnect();
8747                    });
8748                }, options);
8749                observer.observe(el);
8750                cleanup(() => {
8751                    observer.disconnect();
8752                });
8753            }));
8754        }
8755        function getThreshold(modifiers) {
8756            if (modifiers.includes("full"))
8757                return 0.99;
8758            if (modifiers.includes("half"))
8759                return 0.5;
8760            if (!modifiers.includes("threshold"))
8761                return 0;
8762            let threshold = modifiers[modifiers.indexOf("threshold") + 1];
8763            if (threshold === "100")
8764                return 1;
8765            if (threshold === "0")
8766                return 0;
8767            return Number(`.${threshold}`);
8768        }
8769        function getLengthValue(rawValue) {
8770            let match = rawValue.match(/^(-?[0-9]+)(px|%)?$/);
8771            return match ? match[1] + (match[2] || "px") : void 0;
8772        }
8773        function getRootMargin(modifiers) {
8774            const key = "margin";
8775            const fallback = "0px 0px 0px 0px";
8776            const index = modifiers.indexOf(key);
8777            if (index === -1)
8778                return fallback;
8779            let values = [];
8780            for (let i = 1; i < 5; i++) {
8781                values.push(getLengthValue(modifiers[index + i] || ""));
8782            }
8783            values = values.filter((v) => v !== void 0);
8784            return values.length ? values.join(" ").trim() : fallback;
8785        }
8786
8787        document.addEventListener("alpine:init", () => {
8788            window.Alpine.plugin(src_default);
8789        });
8790    })();
8791    //# sourceURL=alpine-intersect.js
8792</script>
8792
8793
8794<script>
8795    for (const [selector, deferUntil] of Object.entries({".product-slider section[x-data]:not([x-data] [x-data])":"intersect",".product-info [x-data]:not([x-data] [x-data])":"intersect","#filters-content [x-data]:not([x-data] [x-data])":"intersect","#review_form":"intersect","section[x-data^=initRecentlyViewedProductsComponent]":"intersect","div[x-data^=initBundleOptions]":"intersect","#product_addtocart_form [x-data]:not([x-data] [x-data])":"intersect","#notice-cookie-block":"idle"})) {
8796        document.querySelectorAll(selector).forEach(el => el.setAttribute('x-defer', `${deferUntil}`));
8797    }
8798    //# sourceURL=alpine-defer-rules.js
8799</script>
vendor: 1 bytes, line 8799
8799
8800<script>
8801    (() => {
8802        const hasAlpine = new Promise(resolve => {
8803            window.addEventListener('alpine:initialized', resolve, {once: true, passive: true});
8804        });
8805
8806        const hasInteract = new Promise(resolve => {
8807            (events => {
8808                const onInteract = () => {
8809                    resolve();
8810                    events.forEach(type => window.removeEventListener(type, onInteract));
8811                }
8812                events.forEach(type => window.addEventListener(type, onInteract, {once: true, passive: true}))
8813            })(['touchstart', 'mouseover', 'wheel', 'scroll', 'keydown'])
8814        });
8815
8816        const onIntersect = (el) => {
8817            return new Promise(resolve => {
8818                const observer = new IntersectionObserver(entries => {
8819                    for (const entry of entries) {
8820                        if (entry.isIntersecting) {
8821                            observer.disconnect()
8822                            resolve();
8823                        }
8824                    }
8825                }, {});
8826                observer.observe(el);
8827            });
8828        }
8829
8830        function runComponent(el) {
8831            hasAlpine.then(() => {
8832                el.removeAttribute('x-ignore');
8833                queueMicrotask(() => Alpine.initTree(el));
8834            });
8835        }
8836
8837        function initDeferredComponents() {
8838            document.querySelectorAll('[x-data][x-defer]').forEach(el => {
8839                el.setAttribute('x-ignore', '');
8840                const deferUntil = (el.getAttribute('x-defer') || '').trim();
8841                switch (deferUntil) {
8842                    case 'interact':
8843                        hasInteract.then(() => runComponent(el));
8844                        break;
8845                    case 'intersect':
8846                        onIntersect(el).then(() => runComponent(el))
8847                        break;
8848                    case 'idle':
8849                        window.requestIdleCallback
8850                            ? window.requestIdleCallback(() => runComponent(el), {timeout: 4000})
8851                            : setTimeout(() => runComponent(el), 4000);
8852                        break;
8853                    case 'eager':
8854                        runComponent(el);
8855                        break;
8856                    default:
8857                        if (deferUntil.startsWith('event:') && deferUntil.length > 6) {
8858                            window.addEventListener(deferUntil.substring(6), () => runComponent(el), {once: true, passive: true});
8859                        }
8860                }
8861            });
8862        }
8863
8864        window.addEventListener('alpine:init', initDeferredComponents, {once: true, passive: true});
8865    })();
8866    //# sourceURL=alpine-defer.js
8867</script>
8867
8868
8869
8870<script type="module"
8871        src="https://www.govi.de/static/version1790667299/frontend/AMD/hyvaShop/de_DE/Hyva_Theme/js/alpine3.min.js"
8872        defer
8873        crossorigin
8874></script>
vendor: 1 bytes, line 8874
8874
8875<script>
8876    function dispatchMessages(messages, hideAfter) {
8877        const messagesEvent = new CustomEvent("messages-loaded", {
8878            detail: {
8879                messages: messages,
8880                hideAfter: hideAfter
8881            }
8882        });
8883        window.dispatchEvent(messagesEvent);
8884    }
8885
8886    if (typeof hyva === 'undefined' || (!hyva.getBrowserStorage || !hyva.getCookie || !hyva.setCookie)) {
8887        console.warn("Hyvä helpers are not loaded yet. Make sure they are included before this script");
8888    }
8889
8890    (function( hyva, undefined ) {
8891
8892        hyva.initFormKey = () => {
8893            const inputSelector = 'input[name="form_key"]',
8894                formKey = hyva.getFormKey();
8895
8896            Array.from(document.querySelectorAll(inputSelector)).map(function (input) {
8897                input.value = formKey
8898            });
8899        }
8900
8901        hyva.initMessages = () => {
8902            try {
8903                const messages = hyva.getCookie('mage-messages');
8904                window.mageMessages = messages ? JSON.parse(decodeURIComponent(messages).replace(/\+/g, ' ')) : [];
8905
8906                dispatchMessages(window.mageMessages);
8907
8908                                // empty `mage-messages` cookie
8909                const skipSetDomain = true;
8910                hyva.setCookie('mage-messages','', -1, skipSetDomain);
8911
8912            } catch (error) {
8913                console.warn('Error parsing Cookie Messages:', error);
8914            }
8915        }
8916
8917        window.addEventListener('DOMContentLoaded', hyva.initFormKey);
8918        hyva.alpineInitialized(hyva.initMessages)
8919
8920    }( window.hyva = window.hyva || {} ));
8921    //# sourceURL=hyva-cookies.js
8922</script>
vendor: 1 bytes, line 8922
8922
8923<script>
8924    {
8925        const private_content_key = 'mage-cache-storage';
8926        const private_content_expire_key = 'mage-cache-timeout';
8927        const private_content_version_key = 'private_content_version';
8928        const section_data_ids_key = 'section_data_ids';
8929        const mage_cache_session_id_key = 'mage-cache-sessid';
8930        const last_visited_store_key = 'last_visited_store';
8931
8932        const ttl = 3600;
8933
8934        if (typeof hyva === 'undefined' || (!hyva.getBrowserStorage || !hyva.getCookie || !hyva.setCookie)) {
8935            console.warn("Hyvä helpers are not loaded yet. Make sure they are included before this script");
8936        }
8937
8938        function loadSectionData () {
8939            const browserStorage = hyva.getBrowserStorage();
8940            if (!browserStorage) {
8941                typeof window.dispatchMessages !== "undefined" && window.dispatchMessages(
8942                    [{
8943                        type: "warning",
8944                        text: "Bitte aktivieren Sie LocalStorage in Ihrem Browser."
8945                    }]
8946                );
8947                return;
8948            }
8949            try {
8950                let isInvalid = false;
8951
8952                if (hyva.getCookie(last_visited_store_key) !== CURRENT_STORE_CODE) {
8953                    isInvalid = true;
8954                }
8955                hyva.setCookie(last_visited_store_key, CURRENT_STORE_CODE, false, false);
8956
8957                if (!hyva.getCookie(mage_cache_session_id_key)) {
8958                    isInvalid = true;
8959                    browserStorage.removeItem(private_content_key);
8960                    const skipSetDomain = true;
8961                    const days = false;
8962                    hyva.setCookie(mage_cache_session_id_key, true, days, skipSetDomain)
8963                }
8964
8965                const cookieVersion = hyva.getCookie(private_content_version_key);
8966                const storageVersion = browserStorage.getItem(private_content_version_key);
8967
8968                if (cookieVersion && !storageVersion || cookieVersion !== storageVersion) {
8969                    isInvalid = true;
8970                }
8971
8972                const privateContentExpires = browserStorage.getItem(private_content_expire_key);
8973                if (privateContentExpires && new Date(privateContentExpires) < new Date()) {
8974                    browserStorage.removeItem(private_content_key);
8975                }
8976
8977                if (isInvalid && cookieVersion) {
8978                    fetchPrivateContent([]);
8979                } else if (cookieVersion && storageVersion && cookieVersion === storageVersion) {
8980                    const privateContent = JSON.parse(browserStorage.getItem(private_content_key));
8981                    if (
8982                        privateContent &&
8983                        privateContentExpires &&
8984                        privateContent.cart &&
8985                        privateContent.customer
8986                    ) {
8987                        dispatchPrivateContent(privateContent);
8988                    } else {
8989                        fetchPrivateContent([]);
8990                    }
8991                } else {
8992                    if (document.getElementById('default-section-data')) {
8993                        const privateContent = JSON.parse(document.getElementById('default-section-data').innerText.trim());
8994                        dispatchPrivateContent(privateContent);
8995                    } else {
8996                        dispatchPrivateContent({});
8997                    }
8998                }
8999
9000            } catch (error) {
9001                console.warn('Error retrieving Private Content:', error);
9002            }
9003        }
9004
9005        hyva.alpineInitialized(loadSectionData)
9006        window.addEventListener('reload-customer-section-data', loadSectionData);
9007
9008        window.processSectionDataBeforeDispatch = window.processSectionDataBeforeDispatch || (data => data);
9009
9010        function dispatchPrivateContent(data) {
9011
9012            const privateContentEvent = new CustomEvent("private-content-loaded", {
9013                detail: {
9014                    data: window.processSectionDataBeforeDispatch(data)
9015                }
9016            });
9017            window.dispatchEvent(privateContentEvent);
9018        }
9019
9020        function fetchPrivateContent(sections) {
9021            fetch(`${BASE_URL}customer/section/load/?sections=${encodeURIComponent(sections.join(','))}`, {
9022                method: 'GET',
9023                headers: {
9024                    'Content-Type': 'application/json',
9025                    'X-Requested-With': 'XMLHttpRequest'
9026                }
9027            })
9028                .then(response => response.ok && response.json())
9029                .then(
9030                    data => {
9031                        if (data) {
9032                            try {
9033                                const browserStorage = hyva.getBrowserStorage();
9034
9035                                // merge new data preserving non-invalidated sections
9036                                const oldSectionData = JSON.parse(browserStorage.getItem(private_content_key) || '{}') || {};
9037
9038                                                                if ((! data.cart || ! data.cart.cartId) && oldSectionData['checkout-data']) {
9039                                    delete oldSectionData['checkout-data'];
9040                                }
9041                                const newSectionData = Object.assign(oldSectionData, data);
9042
9043                                dispatchPrivateContent(newSectionData);
9044
9045                                // don't persist messages, they've been dispatched already
9046                                if (newSectionData.messages && newSectionData.messages.messages ) {
9047                                    newSectionData.messages.messages = [];
9048                                }
9049
9050                                browserStorage.setItem(private_content_key, JSON.stringify(newSectionData));
9051
9052                                const expiresAt = new Date(Date.now() + (ttl * 1000)).toISOString();
9053                                browserStorage.setItem(private_content_expire_key, expiresAt);
9054
9055                                const newCookieVersion = hyva.getCookie(private_content_version_key);
9056                                browserStorage.setItem(private_content_version_key, newCookieVersion);
9057
9058                                // We don't need the section_data_ids in Hyvä, but we store them for compatibility
9059                                // with Luma Fallback. Otherwise, not all sections are loaded in Luma Checkout
9060                                hyva.setCookie(
9061                                    section_data_ids_key,
9062                                    JSON.stringify(
9063                                        Object.keys(data).reduce((sectionDataIds, sectionKey) => {
9064                                            sectionDataIds[sectionKey] = data[sectionKey]['data_id'];
9065                                            return sectionDataIds;
9066                                        }, {})
9067                                    ),
9068                                    false,
9069                                    true
9070                                );
9071                            } catch (error) {
9072                                console.warn("Couldn't store privateContent", error);
9073                            }
9074                        }
9075                    }
9076                )
9077                .catch(error => {
9078                    console.warn("Couldn't fetch privateContent", error);
9079                });
9080        }
9081    }
9082    //# sourceURL=hyva-private-content.js
9083</script>
vendor: 1 bytes, line 9083
9083
9084<script>
9085    (() => {
9086        document.addEventListener('submit', event => event.target.action = event.target.action.replace('%25uenc%25', hyva.getUenc()));
9087    })()
9088</script>
vendor: 1 bytes, line 9088
9088
9089<script>
9090    (events => {
9091        const dispatchUserInteractionEvent = () => {
9092            events.forEach(type => window.removeEventListener(type, dispatchUserInteractionEvent))
9093            window.dispatchEvent(new Event('init-external-scripts'))
9094        };
9095        events.forEach(type => window.addEventListener(type, dispatchUserInteractionEvent, {once: true, passive: true}))
9096    })(['touchstart', 'mousemove', 'wheel', 'scroll', 'keydown']);
9097    //# sourceURL=hyva-init-external-scripts.js
9098</script>
vendor: 1 bytes, line 9098
9098
9099<script>
9100    function initWishlist() {
9101        return {
9102            addToWishlist(productId) {
9103                const formKey = hyva.getFormKey();
9104                const postUrl = BASE_URL + 'wishlist/index/add/';
9105
9106                fetch(postUrl, {
9107                    "headers": {
9108                        "content-type": "application/x-www-form-urlencoded; charset=UTF-8",
9109                    },
9110                    "body": "form_key=" + formKey + "&product=" + productId + "&uenc=" + hyva.getUenc(),
9111                    "method": "POST",
9112                    "mode": "cors",
9113                    "credentials": "include"
9114                }).then(function (response) {
9115                    if (response.redirected) {
9116                        window.location.href = response.url;
9117                    } else if (response.ok) {
9118                        return response.json();
9119                    } else {
9120                        typeof window.dispatchMessages !== "undefined" && window.dispatchMessages(
9121                            [{
9122                                type: "warning",
9123                                text: "Could\u0020not\u0020add\u0020item\u0020to\u0020wishlist."
9124                            }], 5000
9125                        );
9126                    }
9127                }).then(function (response) {
9128                    if (!response) { return }
9129                    typeof window.dispatchMessages !== "undefined" && window.dispatchMessages(
9130                        [{
9131                            type: (response.success) ? "success" : "error",
9132                            text: (response.success)
9133                                ? "Produkt\u0020wurde\u0020zu\u0020Ihrer\u0020Wunschliste\u0020hinzugef\u00FCgt."
9134                                : response.error_message
9135                        }], 5000
9136                    );
9137                    const reloadCustomerDataEvent = new CustomEvent("reload-customer-section-data");
9138                    window.dispatchEvent(reloadCustomerDataEvent);
9139                }).catch(function (error) {
9140                    typeof window.dispatchMessages !== "undefined" && window.dispatchMessages(
9141                        [{
9142                            type: "error",
9143                            text: error
9144                        }], 5000
9145                    );
9146                });
9147            }
9148        }
9149    }
9150</script>
vendor: 1 bytes, line 9150
9150
9151<script>
9152    function initConfigurableOptions(productId, optionConfig) {
9153
9154        function findPathParam(key) {
9155                        const baseUrl = (BASE_URL.substring(0, 2) === '//' ? 'http:' : '') + BASE_URL;
9156            const baseUrlParts = (new URL(baseUrl)).pathname.replace(/\/$/, '').split('/');
9157            const pathParts = window.location.pathname.split('/').slice(baseUrlParts.length + 3);
9158            for (let i = 0; i < pathParts.length; i += 2) {
9159                if (pathParts[i] === key && pathParts.length > i) {
9160                    return pathParts[i + 1];
9161                }
9162            }
9163        }
9164
9165        return {
9166            optionConfig,
9167            productId,
9168            itemId: (new URLSearchParams(window.location.search)).get('id') || findPathParam('id'),
9169            allowedAttributeOptions: [],
9170            selectedValues: [],
9171            init() {
9172                this.findAllowedAttributeOptions();
9173                this.$nextTick(() => {
9174                    if (typeof this.optionConfig.defaultValues === 'object') {
9175                        for (const [attributeId, value] of Object.entries(this.optionConfig.defaultValues)) {
9176                            this.changeOption(attributeId, value + '');
9177                        }
9178                    }
9179                    this.preselectQuerystringItems();
9180                    this.preselectLocationHashItems();
9181                });
9182            },
9183            productIndex: 0,
9184            productIndexForPrice: 0,
9185            optionIsActive(attributeId, optionId) {
9186                                return !!this.getAllowedAttributeOptions(attributeId).find(
9187                    option => option.id === optionId
9188                )
9189            },
9190            optionIsEnabled(attributeId, optionId) {
9191                                for (const productId in this.optionConfig.index) {
9192                    if (this.optionConfig.index[productId][attributeId] === optionId) {
9193                        return true;
9194                    }
9195                }
9196                return false;
9197            },
9198            findSimpleIndex() {
9199                                this.productIndex = this.calculateSimpleIndexForPartialSelection(this.selectedValues);
9200                this.productIndexForPrice = this.findCheapestProductForPartialSelection(this.selectedValues);
9201            },
9202            calculateSimpleIndexForPartialSelection(selectedValues) {
9203                if (selectedValues.length === 0) return 0;
9204                return this.findProductIdsForPartialSelection(selectedValues)[0];
9205            },
9206            calculateSimpleIndexForFullSelection(selectedValues) {
9207                if (! this.isFullSelection(selectedValues)) return false;
9208
9209                const productIndexes = this.optionConfig.index;
9210                return Object.keys(productIndexes).find(productIndex => {
9211                    const productCandidateOptions = productIndexes[productIndex];
9212
9213                    for (const productOption in productCandidateOptions) {
9214                        if (
9215                            !selectedValues[productOption] ||
9216                            selectedValues[productOption] !== productCandidateOptions[productOption]
9217                        ) {
9218                            return false;
9219                        }
9220                    }
9221                    return productIndex;
9222                });
9223            },
9224            findAllowedAttributeOptions() {
9225                                this.allowedAttributeOptions = this.calculateAllowedAttributeOptions(this.selectedValues);
9226            },
9227            calculateAllowedAttributeOptions(selectedValues) {
9228                const allAttributes = this.optionConfig.attributes;
9229                const allAttributesSorted = Object.values(allAttributes).sort((a,b) => {
9230                    return a.position - b.position
9231                });
9232
9233                const newAllowedAttributeOptions = [];
9234
9235                allAttributesSorted.forEach(attribute => {
9236                    const selectionWithoutAttr = Object.assign({}, this.removeAttrFromSelection(selectedValues, attribute.id));
9237                    const availableIndexes = this.calculateAvailableProductIndexes(selectionWithoutAttr);
9238                    newAllowedAttributeOptions[attribute.id] = allAttributes[attribute.id].options.filter(option => {
9239                        return !!option.products.find(product => {
9240                            return availableIndexes.includes(product);
9241                        })
9242                    });
9243                });
9244                return newAllowedAttributeOptions;
9245            },
9246            calculateAvailableProductIndexes(selectedOptions) {
9247                if (Object.keys(selectedOptions).length === 0) {
9248                                        if (Object.values(this.optionConfig.salable || {}).length) {
9249                                                return [].concat.apply([], [].concat.apply([], Object.values(this.optionConfig.salable).map(Object.values))).filter((x, i, a) => a.indexOf(x) === i)
9250                    }
9251                                        return Object.keys(this.optionConfig.index);
9252                }
9253
9254                                const selectedIds = Object.keys(selectedOptions);
9255                if (Object.values(this.optionConfig.salable || {}).length) {
9256                                        const selectedOptionIndexes = selectedIds.map(attrId => {
9257                        const optionValue = selectedOptions[attrId];
9258                        return this.optionConfig.salable[attrId] && this.optionConfig.salable[attrId][optionValue] || []
9259                    })
9260                                        return selectedOptionIndexes.reduce((acc, optionIndexes) => {
9261                        return acc.filter(index => optionIndexes.includes(index));
9262                    });
9263                } else {
9264                                        const productIndexes = this.optionConfig.index;
9265                    return Object.keys(productIndexes).filter(index => {
9266                                                for (const attrId of selectedIds) {
9267                            if (productIndexes[index][attrId] !== `${selectedOptions[attrId]}`) return false
9268                        }
9269                        return true
9270                    });
9271                }
9272            },
9273            findAttributeByOptionId(optionId) {
9274                for (const attributeId in this.optionConfig.attributes) {
9275                    const attributeOptions = this.optionConfig.attributes[attributeId].options || [];
9276                    if (attributeOptions.find(option => option.id === optionId)) {
9277                        return attributeId;
9278                    }
9279                }
9280            },
9281            getAllowedAttributeOptions(attributeId) {
9282                return this.allowedAttributeOptions[attributeId] || []
9283            },
9284            getAllAttributeOptions(attributeId) {
9285                return (
9286                    this.optionConfig.attributes[attributeId] &&
9287                    this.optionConfig.attributes[attributeId].options
9288                ) || []
9289            },
9290            getProductIdsForOption(option) {
9291                const attributeId = this.findAttributeByOptionId(option.id);
9292                const allOptions = this.optionConfig.attributes[attributeId];
9293                const opt = (allOptions && allOptions.options || []).find(o => o.id === option.id);
9294                return opt && opt.products
9295                    ? opt.products
9296                    : [];
9297            },
9298            findProductIdsForPartialSelection(optionSelection) {
9299                const candidateProducts = Object.values(optionSelection).reduce((candidates, optionId) => {
9300                    const newCandidates = this.getProductIdsForOption({id: optionId});
9301                    return candidates === null
9302                        ? newCandidates
9303                        : candidates.filter(productId => newCandidates.includes(productId));
9304                }, null);
9305                return candidateProducts || [];
9306            },
9307            findCheapestProductForPartialSelection(optionSelection) {
9308                const candidateProducts = this.findProductIdsForPartialSelection(optionSelection);
9309                return candidateProducts.reduce((cheapest, simpleIdx) => {
9310                    // in the first iteration we start with simpleIdx as the currently cheapest product
9311                    if (! this.optionConfig.optionPrices[cheapest]) return simpleIdx;
9312                    const knownCheapestPrice = this.optionConfig.optionPrices[cheapest].finalPrice.amount;
9313                    return knownCheapestPrice > this.optionConfig.optionPrices[simpleIdx].finalPrice.amount
9314                        ? simpleIdx
9315                        : cheapest;
9316                }, 0)
9317            },
9318            findProductIdToUseForOptionPrice(option) {
9319                // try to find a product for a complete selection
9320                const attributeId = this.findAttributeByOptionId(option.id);
9321                const optionSelection = Object.assign({}, this.selectedValues, {[attributeId]: option.id});
9322                const matchingSimpleIndex = this.calculateSimpleIndexForFullSelection(optionSelection);
9323                // if there is no complete selection, use the cheapest product for the option
9324                return matchingSimpleIndex || this.findCheapestProductForPartialSelection(optionSelection);
9325            },
9326            getAttributeOptionLabel(option) {
9327                const optionProduct = this.findProductIdToUseForOptionPrice(option);
9328
9329                if ((! optionProduct) || (optionProduct === this.productIndexForPrice)) {
9330                    return option.label;
9331                }
9332
9333                const currentPrice = this.getOptionPriceAdjustmentBasePrice();
9334
9335                if (this.optionConfig.optionPrices[optionProduct]) {
9336                    const optionPrice = this.optionConfig.optionPrices[optionProduct].finalPrice.amount;
9337                    if (optionPrice !== currentPrice){
9338                        return option.label + ' ' + hyva.formatPrice(optionPrice - currentPrice, true);
9339                    }
9340                }
9341                return option.label;
9342            },
9343            getOptionPriceAdjustmentBasePrice() {
9344                if (this.optionConfig.optionPrices[this.productIndexForPrice]) {
9345                    return this.optionConfig.optionPrices[this.productIndexForPrice].finalPrice.amount
9346                }
9347                return this.optionConfig.prices.finalPrice.amount; // default price if no option selection
9348            },
9349            clearOptionIfActive(optionId, value) {
9350                if (this.selectedValues[optionId] === value) {
9351                    this.blurLabel()
9352                    this.changeOption(optionId, '')
9353                }
9354            },
9355            removeAttrFromSelection(selectedValues, attributeId) {
9356                                attributeId = parseInt(attributeId);
9357                return selectedValues.reduce((newSelection, val, attr) => {
9358                    if (attr !== attributeId) {
9359                        newSelection[attr] = val;
9360                    }
9361                    return newSelection;
9362                }, []);
9363            },
9364            changeOption(attributeId, value) {
9365                if (value === '') {
9366                    this.selectedValues = this.removeAttrFromSelection(this.selectedValues, attributeId)
9367                } else if (value && this.getAllowedAttributeOptions(attributeId).find(option => option.id === value)) {
9368                                        this.selectedValues[attributeId] = value;
9369                }
9370                this.findSimpleIndex();
9371                this.findAllowedAttributeOptions();
9372                this.updatePrices();
9373                this.updateGallery();
9374
9375                const candidates = this.findProductIdsForPartialSelection(this.selectedValues);
9376
9377                                window.dispatchEvent(
9378                    new CustomEvent(
9379                        'configurable-selection-changed',
9380                        {
9381                            detail: {
9382                                productId: this.productId,
9383                                optionId: attributeId,
9384                                value: value,
9385                                productIndex: this.productIndex,
9386                                selectedValues: this.selectedValues,
9387                                candidates: candidates,
9388                                skuCandidates: Object.values(candidates).map(id =>
9388 this.optionConfig.sku?.[id] ?? null).filter(Boolean),
9389                            }
9390                        }
9391                    )
9392                );
9393            },
9394            calculateIsMinimalPrice() {
9395                return ! this.isFullSelection(this.selectedValues);
9396            },
9397            isFullSelection(selectedValues) {
9398                return Object.values(selectedValues).length === Object.keys(this.optionConfig.attributes).length;
9399            },
9400            updatePrices() {
9401                const value = this.optionConfig.optionPrices[this.productIndexForPrice] || this.optionConfig.prices;
9402                window.dispatchEvent(
9403                    new CustomEvent(
9404                        "update-prices-" + this.productId,
9405                        {
9406                            detail: Object.assign(
9407                                value,
9408                                { isMinimalPrice: this.calculateIsMinimalPrice() }
9409                            )
9410                        }
9411                    )
9412                );
9413            },
9414            updateGallery () {
9415                if (this.productIndex) {
9416                    const images = this.optionConfig.images[this.productIndex];
9417                    images && window.dispatchEvent(new CustomEvent(
9418                        "update-gallery",
9419                        { detail: this.sortImagesByPosition(images) }
9420                    ));
9421                } else {
9422                    window.dispatchEvent(new Event("reset-gallery"));
9423                }
9424            },
9425            sortImagesByPosition(images) {
9426                return images.sort((x, y) => {
9427                    return x.position === y.position ? 0 : (parseInt(x.position) > parseInt(y.position) ? 1 : -1)
9428                });
9429            },
9430            onGetCartData(data) {
9431                            },
9432            preselectCartItems(data) {
9433                // pre-select options based on cart data for current (quote) itemId
9434                const cart = data && data.cart;
9435                if (cart && cart.items) {
9436                    const cartItem = cart.items.find((item) => {
9437                        return (
9438                            item.item_id === this.itemId
9439                            && item.product_id === this.productId
9440                        )
9441                    });
9442                    if (cartItem && cartItem.options && cartItem.options.length) {
9443                        cartItem.options.map(option => {
9444                            this.changeOption(option.option_id, option.option_value);
9445                        })
9446                    }
9447                }
9448            },
9449            preselectQuerystringItems() {
9450                // pre-select option like ?size=167
9451                const urlQueryParams = new URLSearchParams(window.location.search.replace('?',''));
9452                this.preselectItemsBasedOnLocation(attribute => urlQueryParams.get(attribute.code));
9453            },
9454            preselectLocationHashItems() {
9455                // pre-select option like #144=167
9456                const urlHashParams = new URLSearchParams(window.location.hash.replace('#',''));
9457                this.preselectItemsBasedOnLocation(attribute => urlHashParams.get(attribute.id));
9458            },
9459            preselectItemsBasedOnLocation(getLocationValue) {
9460                Object.values(this.optionConfig.attributes).map(attribute => {
9461                    const v = getLocationValue(attribute);
9462                    v && this.changeOption(attribute.id, v)
9463                });
9464            }
9465        }
9466    }
9467</script>
vendor: 1 bytes, line 9467
9467
9468<script>
9469    function initSwatchOptions(swatchConfig) {
9470        return {
9471            swatchConfig,
9472            getAttributeSwatchData(attributeId) {
9473                const swatchConfig = Object.assign({}, this.swatchConfig[attributeId]);
9474                swatchConfig['details'] = JSON.parse(swatchConfig['additional_data']);
9475
9476                return swatchConfig;
9477            },
9478            mapSwatchTypeNumberToTypeCode(typeNumber) {
9479                switch ("" + typeNumber) {
9480                    case "1":
9481                        return "color"
9482                    case "2":
9483                        return "image"
9484                    case "3":
9485                        return "empty"
9486                    case "0":
9487                    default:
9488                        return "text"
9489                }
9490            },
9491            getTypeOfFirstOption(attributeId) {
9492                for (const optionId in this.swatchConfig[attributeId]) {
9493                    const option = this.swatchConfig[attributeId][optionId];
9494                    if (typeof option.type !== 'undefined') {
9495                        return this.mapSwatchTypeNumberToTypeCode(option.type);
9496                    }
9497                }
9498            },
9499            getVisualSwatchType(attributeId, targetOptionId) {
9500                // If a type configuration is present for the given option id, use it
9501                const config = this.swatchConfig[attributeId];
9502                if (config[targetOptionId] && typeof config[targetOptionId].type !== 'undefined') {
9503                    return this.mapSwatchTypeNumberToTypeCode(config[targetOptionId].type);
9504                }
9505
9506                // Otherwise - if no config is present for the target option - use the type of the first option
9507                // with a type property from the attribute, thus assuming its the same type as the target option.
9508                // (This edge case condition can occur on single swatch products if some options are not salable)
9509                return this.getTypeOfFirstOption(attributeId);
9510            },
9511            getSwatchType(attributeId, optionId) {
9512                // Deserialize the attribute details the first time they are used
9513                if (this.swatchConfig[attributeId] && ! this.swatchConfig[attributeId].details) {
9514                    this.swatchConfig[attributeId] = this.getAttributeSwatchData(attributeId);
9515                }
9516                const type =  this.swatchConfig[attributeId] &&
9517                    this.swatchConfig[attributeId].details &&
9518                    this.swatchConfig[attributeId].details.swatch_input_type ||
9519                    "empty";
9520                return type === 'visual' ? this.getVisualSwatchType(attributeId, optionId) : type;
9521            },
9522            isTextSwatch(attributeId, optionId) {
9523                return this.getSwatchType(attributeId, optionId) === 'text';
9524            },
9525            isVisualSwatch(attributeId, optionId) {
9526                const type = this.getSwatchType(attributeId, optionId);
9527
9528                return ['image', 'color'].includes(type);
9529            },
9530            getSwatchBackgroundStyle(attributeId, optionId) {
9531                const config = this.getSwatchConfig(attributeId, optionId);
9532                const type = this.getSwatchType(attributeId, optionId);
9533
9534                if (type === "color") {
9535                        return 'background-color:' + config.value;
9536                } else if (type === "image") {
9537                        return "background: #fff url('" + config.value + "') no-repeat center";
9538                } else {
9539                    return '';
9540                }
9541            },
9542            getSwatchText(attributeId, optionId) {
9543                const config = this.getSwatchConfig(attributeId, optionId);
9544                return config.label || config.value || this.getOptionLabelFromOptionConfig(attributeId, optionId);
9545            },
9546            getOptionLabelFromOptionConfig(attributeId, optionId) {
9547                // Fallback if no value is present in swatchConfig data
9548                // Reference issue https://gitlab.hyva.io/hyva-themes/magento2-default-theme/-/issues/190
9549                const option = this.getAllAttributeOptions(attributeId).filter(option => option.id === optionId);
9550                return option && option[0] && option[0].label ||'';
9551            },
9552            getSwatchConfig(attributeId, optionId) {
9553                return this.swatchConfig[attributeId] && this.swatchConfig[attributeId][optionId]
9554                    ? this.swatchConfig[attributeId][optionId]
9555                    : false;
9556            },
9557            activeTooltipItem: false,
9558            tooltipPositionElement: false,
9559            isTooltipVisible() {
9560                return this.activeTooltipItem &&
9561                    this.getSwatchConfig(
9562                        this.activeTooltipItem.attribute,
9563                        this.activeTooltipItem.item
9564                    );
9565            },
9566            isFirstItemCol() {
9567                return this.activeTooltipItem.index === 0;
9568            },
9569            getTooltipImageStyle(attributeId, optionId) {
9570                const config = this.getSwatchConfig(attributeId, optionId);
9571                const type = this.getSwatchType(attributeId, optionId);
9572
9573                if (type === "color") {
9574                    return 'background-color:' + config.value + '; width: 110px; height: 90px;';
9575                } else if (type === "image") {
9576                    return "background: #ffffff url('" + config.thumb +
9577                        "') center center no-repeat; width: 110px; height: 90px;";
9578                } else {
9579                    return 'display:none';
9580                }
9581            },
9582            getTooltipPosition() {
9583                return this.tooltipPositionElement ?
9584                    `top: ${this.tooltipPositionElement.offsetTop}px;` +
9585                    `left: ${
9586                        this.tooltipPositionElement.offsetLeft - (
9587                            this.tooltipPositionElement.closest('.snap') &&
9588                            this.tooltipPositionElement.closest('.snap').scrollLeft ||
9589                            0
9590                        )
9591                    }px;` : ''
9592            },
9593            getTooltipLabel() {
9594                return this.getSwatchConfig(this.activeTooltipItem.attribute, this.activeTooltipItem.item).label
9595            },
9596            focusedLabel: false,
9597            focusLabel(optionId) {
9598                this.focusedLabel = optionId;
9599            },
9600            blurLabel() {
9601                this.focusedLabel = false;
9602            }
9603        }
9604    }
9605</script>
9605
9606
9607<script>
9608    function initAmBundlePackGallery() {
9609        return {
9610            "active": 0,
9611            "initialImages": [],
9612            "images": [],
9613            "isSelected" : false,
9614            "currentElement": false,
9615            "appendOnReceiveImages": false,
9616            receiveImages(images) {
9617                if (this.appendOnReceiveImages) {
9618                    const initialUrls = this.initialImages.map(image => image.full);
9619                    const newImages = images.filter(image => ! initialUrls.includes(image.full));
9620                    this.images = [].concat(this.initialImages, newImages);
9621                    this.setActive(newImages.length ? this.initialImages.length : 0);
9622                } else {
9623                    this.images = images;
9624                }
9625            },
9626            init() {
9627                this.appendOnReceiveImages = this.$el.dataset.appendOnReceiveImages;
9628                this.currentElement = this.$el;
9629                let active = this.images.findIndex(function(image) {
9630                    return image.isMain === true
9631                });
9632                if (active === -1) {
9633                    active = 0;
9634                }
9635                this.setActive(active);
9636            },
9637            setActive(index) {
9638                this.active = index;
9639            },
9640            resetGallery() {
9641                this.images = this.initialImages;
9642                this.setActive(0);
9643            },
9644            imageCaption() {
9645                return this.image.caption || this.$el.dataset.productName;
9646            },
9647            imageSrc() {
9648                return this.image.img;
9649            },
9650            typeLoading() {
9651                return this.active !== this.index ? 'lazy' : 'eager';
9652            },
9653            showImg() {
9654                return this.active === this.index;
9655            },
9656            eventListeners: {
9657                ['@update-gallery.window'](event) {
9658                    setTimeout(() => {
9659                        if (this.isSelected) {
9660                            this.receiveImages(event.detail);
9661                        }
9662                        this.isSelected = false;
9663                    }, 0)
9664                },
9665                ['@bundle-popup-gallery-option-selected.window'](event) {
9666                    let product = this.currentElement.closest('.amrelated-product-info');
9667                    let currentId = event.detail.getAttribute('id');
9668                    if (product.querySelector('#' + currentId)){
9669                        this.isSelected = true;
9670                    }
9671                },
9672                ['@reset-gallery.window'](event) {
9673                    this.resetGallery();
9674                }
9675            }
9676        }
9677    }
9678
9679    window.addEventListener(
9680        'alpine:init',
9681        () => Alpine.data('initAmBundlePackGallery', initAmBundlePackGallery),
9682        { once: true }
9683    );
9684</script>
9684
9685    
9685<script>
9686        function amBundlePackAddPopupData() {
9687            return {
9688                popupData: '',
9689                forms: false,
9690                formsData: '',
9691                popupWrapper: '',
9692                selectors: {
9693                    forms: '.amrelated-product-info form.info-container-form',
9694                    innerForm: 'form[id*="product_addtocart_form"]',
9695                    body: 'body',
9696                    productPageClass: 'catalog-product-view',
9697                    cartPageClass: 'checkout-cart-index',
9698                    popupWrapper: '[x-ref="bundlePopup"]',
9699                    hidePopupButtonClass: '.hide-bundle-popup',
9700                    swatchInputs: '.amrelated-product-info.configurable .product-option-value-input, .amrelated-product-info.configurable select'
9701                },
9702
9703                init() {
9704                    this.popupData = JSON.parse(this.$el.dataset.config);
9705                    this.isOsnHyvaEnabled = Boolean(Number(this.$el.dataset.isOsnHyvaEnabled));
9706                    this.forms = this.$el.querySelectorAll(this.selectors.forms);
9707                    this.popupWrapper = this.$el.closest(this.selectors.popupWrapper);
9708                    this.$nextTick(() => {
9709                        this.$el.addEventListener('change', (event) => {
9710                            if (event.target.closest(this.selectors.swatchInputs)) {
9711                                window.dispatchEvent(new CustomEvent('bundle-popup-gallery-option-selected', { detail: event.target }));
9712                            }
9713                        });
9714                    })
9715                },
9716
9717                serializeForm(form) {
9718                    const data = new FormData(form)
9719                    let array = [];
9720                    this._setInputsToArray(data, array);
9721
9722                    if (this.isOsnHyvaEnabled) {
9723                        if (form.querySelector(this.selectors.innerForm)) {
9724                            const data = new FormData(form.querySelector(this.selectors.innerForm));
9725                            this._setInputsToArray(data, array);
9726                        }
9727                    }
9728
9729                    return array;
9730                },
9731
9732                _setInputsToArray(data, arrayToSet) {
9733                    for (let [key, value] of data) {
9734                        arrayToSet.push({
9735                            name: key,
9736                            value: value
9737                        });
9738                    }
9739                },
9740
9741                getIsProductPage() {
9742                    return !!document.querySelector(this.selectors.body)
9743                        .classList.contains(this.selectors.productPageClass);
9744                },
9745
9746                getIsCartPage() {
9747                    return !!document.querySelector(this.selectors.body)
9748                        .classList.contains(this.selectors.cartPageClass);
9749                },
9750
9751                scrollToElement(el) {
9752                    el.scrollIntoView({
9753                        behavior: "smooth",
9754                        block: "start"
9755                    });
9756                },
9757
9758                scrollToTop() {
9759                    window.scrollTo({ top: 0, behavior: 'smooth' });
9760                },
9761
9762                validateProductForm(form) {
9763                    let flag = false;
9764                    let isValid = form.reportValidity();
9765                    if (isValid) {
9766                        flag = true;
9767                    } else {
9768                        this.scrollToElement(form);
9769                    }
9770                    return flag;
9771                },
9772
9773                prepareData() {
9774                    const inCartResponse = this.popupData.productsInCart;
9775                    let data = false;
9776                    let serializedForms = [];
9777                    let formsData = '';
9778                    let isFormsValid = true;
9779
9780                    this.forms.forEach((form) => {
9781                        if (this.isOsnHyvaEnabled) {
9782                            if (form.querySelector(this.selectors.innerForm)) {
9783                                if (!this.validateProductForm(form.querySelector(this.selectors.innerForm))) {
9784                                    isFormsValid = false;
9785                                    return false;
9786                                }
9787                            }
9788                        }
9789
9790                        if (!this.validateProductForm(form)) {
9791                            isFormsValid = false;
9792                            return false;
9793                        }
9794                    });
9795
9796                    if (isFormsValid) {
9797                        //forms data collect
9798                        this.forms.forEach((form) => {
9799                            serializedForms.push(this.serializeForm(form));
9800                        });
9801
9802                        serializedForms.forEach((form) => {
9803                            formsData += 'amrelated_products_popup[]=';
9804                            form.forEach((fileld, index, currentForm) => {
9805                                formsData += fileld.name + '=' + fileld.value
9806                                    + (currentForm.length > (index + 1) ? encodeURIComponent('&') : '');
9807                            })
9808                            formsData += '&';
9809                        })
9810
9811                        data = formsData;
9812
9813                        //product in cart data
9814                        for (let productId in inCartResponse) {
9815                            data += 'products_in_cart[' + productId + '][qty]=' + inCartResponse[productId]['qty'] + '&';
9816                        }
9817
9818                        data += 'ajax_cart=' + this.popupData.isAjaxCartEnabled;
9819                        data += '&form_key=' + hyva.getFormKey();
9820                        data += '&product_page=' + this.getIsProductPage();
9821                        data += '&pack_id=' + this.popupData.packId;
9822                    }
9823
9824                    return data;
9825                },
9826
9827                addToCart() {
9828                    const data = this.prepareData();
9829                    if (!data) {
9830                        return;
9831                    }
9832                    this.isLoading = true;
9833                    fetch(this.popupData.url, {
9834                        headers: {
9835                            "Content-Type": "application/x-www-form-urlencoded; charset=UTF-8",
9836                        },
9837                        body: new URLSearchParams(data),
9838                        method: "POST",
9839                        mode: "cors",
9840                        credentials: "include"
9841                    }).then(
9842                        response => response.json()
9843                    ).then((result) => {
9844                        if (result.backUrl) {
9845                            window.location.href = result.backUrl;
9846                        } else {
9847                            window.dispatchEvent(new CustomEvent('mostviewed-items-added'));
9848                            const ref = this.$el.closest('[x-ref]').getAttribute('x-ref');
9849                            if (ref) {
9850                                window.dispatchEvent(new CustomEvent('amrelated-modal-hide', {detail: ref}));
9851                            }
9852                        }
9853                    }).catch(() => {
9854                        dispatchMessages([{
9855                            type: "error",
9856                            text: "Es ist ein Fehler aufgetreten. Bitte versuchen Sie es später erneut."
9857                        }], 2000);
9858                        const ref = this.$el.closest('[x-ref]').getAttribute('x-ref');
9859                        if (ref) {
9860                            window.dispatchEvent(new CustomEvent('amrelated-modal-hide', {detail: ref}));
9861                        }
9862                    }).finally(() => {
9863                        this.isLoading = false;
9864                        this.scrollToTop();
9865                    })
9866                }
9867            }
9868        }
9869
9870        window.addEventListener(
9871            'alpine:init',
9872            () => Alpine.data('amBundlePackAddPopupData', amBundlePackAddPopupData),
9873            { once: true }
9874        );
9875    </script>
vendor: 1 bytes, line 9875
9875
9876<script>
9877    function initAmBundlePackWishlist() {
9878        return {
9879            addToWishlist() {
9880                const productId = this.$el.dataset.productId;
9881                const postParams =                 {
9882                    action: BASE_URL + "wishlist/index/add/",
9883                        data: {
9884                    product: productId,
9885                        uenc: hyva.getUenc()
9886                }
9887                }
9888                
9889                postParams.data['form_key'] = hyva.getFormKey();
9890                postParams.data['qty'] = document.getElementById(`qty[${productId}]`)
9891                    ? document.getElementById(`qty[${productId}]`).value || 1
9892                    : 1;
9893
9894                let postData = Object.keys(postParams.data).map(key => {
9895                    return `${key}=${postParams.data[key]}`;
9896                }).join('&');
9897
9898                // take the all the input fields that configure this product
9899                // includes custom, configurable, grouped and bundled options
9900                Array.from(document.querySelectorAll(
9901                    '[name^=options], [name^=super_attribute], [name^=bundle_option], [name^=super_group], [name^=links]')
9902                ).map(input => {
9903                    if (input.type === "select-multiple") {
9904                        Array.from(input.selectedOptions).forEach(option => {
9905                            postData += `&${input.name}=${option.value}`
9906                        })
9907                    } else {
9908                        // skip "checkable inputs" that are not checked
9909                        if(!(['radio', 'checkbox', 'select'].includes(input.type) && !input.checked)) {
9910                            postData += `&${input.name}=${input.value}`
9911                        }
9912                    }
9913                });
9914                fetch(postParams.action, {
9915                    "headers": {
9916                        "content-type": "application/x-www-form-urlencoded; charset=UTF-8",
9917                    },
9918                    "body": postData,
9919                    "method": "POST",
9920                    "mode": "cors",
9921                    "credentials": "include"
9922                }).then((response) => {
9923                    if (response.redirected) {
9924                        window.location.href = response.url;
9925                    } else if (response.ok) {
9926                        return response.json();
9927                    } else {
9928                        typeof window.dispatchMessages !== "undefined" && window.dispatchMessages(
9929                            [{
9930                                type: "warning",
9931                                text: "Could not add item to wishlist."
9932                            }], 5000
9933                        );
9934                    }
9935                }).then((response) => {
9936                    if (!response) {
9937                        return;
9938                    }
9939                    typeof window.dispatchMessages !== "undefined" && window.dispatchMessages(
9940                        [{
9941                            type: (response.success) ? "success" : "error",
9942                            text: (response.success)
9943                                ? "Produkt wurde zu Ihrer Wunschliste hinzugefügt."
9944                                : response.error_message
9945                        }], 5000
9946                    );
9947                    const reloadCustomerDataEvent = new CustomEvent("reload-customer-section-data");
9948                    window.dispatchEvent(reloadCustomerDataEvent);
9949                }).catch((error) => {
9950                    typeof window.dispatchMessages !== "undefined" && window.dispatchMessages(
9951                        [{
9952                            type: "error",
9953                            text: error
9954                        }], 5000
9955                    );
9956                });
9957            }
9958        }
9959    }
9960    window.addEventListener('alpine:init', () => Alpine.data('initAmBundlePackWishlist', initAmBundlePackWishlist), {once: true})
9961</script>
9961
9962    
9962<script>
9963        function initAmBundlePackCompareOnProductView() {
9964            return {
9965                addToCompare: function () {
9966                    const productId = 1;
9967                    const formKey = hyva.getFormKey();
9968                    const postUrl = BASE_URL + 'catalog/product_compare/add/';
9969
9970                    fetch(postUrl, {
9971                        "headers": {
9972                            "content-type": "application/x-www-form-urlencoded; charset=UTF-8",
9973                        },
9974                        "body": "form_key=" + formKey + "&product=" + productId + "&uenc=" + hyva.getUenc(),
9975                        "method": "POST",
9976                        "mode": "cors",
9977                        "credentials": "include"
9978                    }).then(function (response) {
9979                        if (response.redirected) {
9980                            window.location.href = response.url;
9981                        }
9982                    }).catch(function (error) {
9983                        typeof window.dispatchMessages !== "undefined" && window.dispatchMessages(
9984                            [{
9985                                type: "error",
9986                                text: error
9987                            }], 5000
9988                        );
9989                    });
9990                }
9991            };
9992        }
9993        window.addEventListener('alpine:init', () => Alpine.data('initAmBundlePackCompareOnProductView', initAmBundlePackCompareOnProductView), {once: true})
9994    </script>
vendor: 1 bytes, line 9994
9994
9995<script>
9996    'use strict';
9997
9998    function initAmRelatedSplide() {
9999        return {
10000            isLoading: true,
10001            sliderDefaultConfig: {
10002                perPage: Number(this.$el.dataset.slidesPerView),
10003                focus: 0,
10004                type: 'loop',
10005                breakpoints: {
10006                    1280: {
10007                        perPage: 3
10008                    },
10009                    992: {
10010                        perPage: 2
10011                    },
10012                    576: {
10013                        perPage: 1
10014                    }
10015                },
10016                classes: {
10017                    arrow: 'splide__arrow bg-neutral-700! [&_svg]:fill-white! size-8! top-1/2! -translate-y-1/2! absolute!',
10018                    prev: 'splide__arrow--prev left-0!',
10019                    next: 'splide__arrow--next right-0!',
10020                    pagination: 'splide__pagination flex! lg:gap-5!',
10021                    page: 'splide__pagination__page hover:bg-neutral-700! bg-stone-300! size-2! [&.is-active]:transform-none! [&.is-active]:bg-neutral-700!',
10022                }
10023            },
10024            init() {
10025                window.addEventListener('amsplide-loaded', () => {
10026                    this.initializeSplide();
10027                }, { once: true });
10028                window.dispatchEvent(new CustomEvent('load-amsplide'));
10029                this.$watch('isLoading', (isLoading) => {
10030                    !isLoading && this.$nextTick(this.lazyloadCallback);
10031                });
10032            },
10033            initializeSplide() {
10034                const splideContainer = this.$refs.splideContainer;
10035                const splideInstance = new Splide(splideContainer, this.adjustPageItemsConfig(this.sliderDefaultConfig));
10036
10037                splideInstance.on('moved', this.lazyloadCallback);
10038                splideInstance.mount();
10039                this.isLoading = false;
10040            },
10041            adjustPageItemsConfig: function (config) {
10042                const slideCount = Number(this.$el.dataset.itemsCount);
10043                const breakpointsData = Object.entries(config.breakpoints)
10044                    .map(([breakpoint, option]) =>
10045                        [
10046                            breakpoint,
10047                            { ...config.breakpoints?.[breakpoint], ...this.getItemsPerPageConfig(option, slideCount) }
10048                        ]
10049                    );
10050
10051                return {
10052                    ...config,
10053                    ...this.getItemsPerPageConfig(config, slideCount),
10054                    breakpoints: {
10055                        ...Object.fromEntries(breakpointsData)
10056                    }
10057                }
10058            },
10059            getItemsPerPageConfig: function (config, slideCount) {
10060                const { perPage } = config;
10061                if (!perPage) {
10062                    return config;
10063                }
10064                const shouldHideControls = perPage >= slideCount;
10065                const itemsPerPage = shouldHideControls ? slideCount : perPage;
10066
10067                return {
10068                    perPage: itemsPerPage,
10069                    clones: shouldHideControls ? 0 : 2 * itemsPerPage,
10070                    pagination: !shouldHideControls,
10071                    arrows: !shouldHideControls,
10072                    drag: !shouldHideControls,
10073                    ...(shouldHideControls && { width: 'fit-content' })
10074                }
10075            },
10076            isNotLoading() {
10077                return !this.isLoading;
10078            },
10079            lazyloadCallback: function () {
10080                window.amlazycallback?.();
10081            }
10082        };
10083    }
10084
10085    window.addEventListener(
10086        'alpine:init',
10087        () => Alpine.data('initAmRelatedSplide', initAmRelatedSplide),
10088        { once: true }
10089    );
10090</script>
vendor: 1 bytes, line 10090
10090
10091<script>
10092    'use strict';
10093
10094    function initAmToolbar() {
10095        return {
10096            isOpen: false,
10097            altTag: {
10098                imagesLength: 0,
10099                images: new Set([]),
10100                initialCount: 2,
10101                showAll: false,
10102                countPhrase: '',
10103            },
10104            getImagesCountPhrase: function () {
10105                return this.altTag.countPhrase;
10106            },
10107            isNeedShowAltTagImages: function () {
10108                return this.altTag.imagesLength > 0;
10109            },
10110            getAltImages: function () {
10111                return Array.from(this.altTag.images).slice(0, this.altTag.showAll ? this.altTag.imagesLength : this.altTag.initialCount);
10112            },
10113            init: function () {
10114                document.querySelectorAll('img:not([alt]), img[alt=""]').forEach((imgNode) => {
10115                    if (imgNode?.src) {
10116                        this.altTag.images.add(imgNode.src);
10117                    }
10118
10119                    const observer = new MutationObserver((mutations) => {
10120                        mutations.forEach((mutation) => {
10121                            if (mutation.type === 'attributes') {
10122                                if (imgNode?.getAttribute('alt') !== null) {
10123                                    this.altTag.images.delete(imgNode?.src);
10124
10125                                    return;
10126                                }
10127
10128                                imgNode?.src && this.altTag.images.add(imgNode.src);
10129
10130                                this.updateAltImagesCount();
10131                            }
10132                        });
10133                    });
10134
10135                    observer.observe(imgNode, {
10136                        attributes: true,
10137                        attributeOldValue: true,
10138                        attributeFilter: ['alt', 'src']
10139                    });
10140
10141                    this.updateAltImagesCount();
10142                });
10143            },
10144            updateAltImagesCount: function () {
10145                if (this.altTag.images.size) {
10146                    this.altTag.imagesLength = this.altTag.images.size;
10147                    this.altTag.countPhrase = this.altTag.images.size + ' image(s) without ALT tag';
10148                }
10149            },
10150            canShowMoreButton: function () {
10151                return !this.altTag.showAll && this.altTag.imagesLength > this.altTag.initialCount;
10152            },
10153            toolbarCssClasses: function () {
10154                return { 'h-full': this.isOpen };
10155            },
10156            toggleOpen: function () {
10157                this.isOpen = !this.isOpen;
10158            },
10159            buttonCssClasses: function () {
10160                return { 'rounded-b-none': this.isOpen };
10161            },
10162            chevronCssClasses: function () {
10163                return { 'rotate-180': this.isOpen };
10164            },
10165            ariaExpanded: function () {
10166                return this.isOpen ? 'true' : 'false';
10167            },
10168            clickOther: function () {
10169                this.altTag.showAll = true;
10170            },
10171            textOther: function () {
10172                return this.altTag.imagesLength - this.altTag.initialCount;
10173            }
10174        }
10175    }
10176
10177    window.addEventListener('alpine:init', () => Alpine.data('initAmToolbar', initAmToolbar), {once: true});
10178</script>
vendor: 1 bytes, line 10178
10178
10179<script>
10180    'use strict';
10181
10182    function initAmToolbarAiButton() {
10183        return {
10184            adminUrl: this.$el.dataset.adminUrl,
10185            selectors: {
10186                button: '[data-amaifix-js="button"]',
10187                errors: '[data-amtoolbar-js]'
10188            },
10189
10190            init() {
10191                this.addErrorsToUrl();
10192            },
10193
10194            openAdmin() {
10195                open(this.adminUrl);
10196            },
10197
10198            addErrorsToUrl() {
10199                let url = new URL(this.adminUrl),
10200                    params = [];
10201
10202                document.querySelectorAll(this.selectors.errors).forEach(el => {
10203                    const error = el.getAttribute('data-amtoolbar-js');
10204                    error && params.push(error);
10205                });
10206
10207                url.searchParams.set('errors', params.join(','));
10208                this.adminUrl = url.href;
10209            }
10210        }
10211    }
10212
10213    window.addEventListener('alpine:init', () => Alpine.data('initAmToolbarAiButton', initAmToolbarAiButton), {once: true})
10214</script>
10214
10215
10216<section x-data="initAmGdprLoader"
10217         @amgdpr-loading-start.window="showLoader"
10218         @amgdpr-loading-stop.window="hideLoader"
10219>
10220    <div
10221    class="z-50 fixed inset-0 grid place-items-center bg-white/70 text-slate-800"
10222    x-cloak
10223    x-show="isLoading"
10224    x-transition.opacity.duration.200ms
10225>
10226    <div class="flex gap-10 items-center p-4">
10227        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 57 57" width="57" height="57" fill="none" stroke="currentColor" stroke-width="2" aria-hidden="true">
10228    <style>
10229        @keyframes spinner-ball-triangle1 {
10230            0% { transform: translate(0%, 0%); }
10231            33% { transform: translate(38%, -79%); }
10232            66% { transform: translate(77%, 0%); }
10233            100% { transform: translate(0%, 0%); }
10234        }
10235
10236        @keyframes spinner-ball-triangle2 {
10237            0% { transform: translate(0%, 0%); }
10238            33% { transform: translate(38%, 79%); }
10239            66% { transform: translate(-38%, 79%); }
10240            100% { transform: translate(0%, 0%); }
10241        }
10242
10243        @keyframes spinner-ball-triangle3 {
10244            0% { transform: translate(0%, 0%); }
10245            33% { transform: translate(-77%, 0%); }
10246            66% { transform: translate(-38%, -79%); }
10247            100% { transform: translate(0%, 0%); }
10248        }
10249    </style>
10250    <circle cx="5" cy="50" r="5" style="animation: spinner-ball-triangle1 2.2s linear infinite"/>
10251    <circle cx="27" cy="5" r="5" style="animation: spinner-ball-triangle2 2.2s linear infinite"/>
10252    <circle cx="49" cy="50" r="5" style="animation: spinner-ball-triangle3 2.2s linear infinite"/>
10253</svg>
10254        <span class="text-xl select-none">
10255            Wird geladen …        </span>
10256    </div>
10257</div>
10258</section>
10259
10260<script data-cfasync="false">
10261    'use strict';
10262
10263    function initAmGdprLoader() {
10264        return {
10265            isLoading: false,
10266
10267            /**
10268             * @returns {void}
10269             */
10270            showLoader: function () {
10271                this.isLoading = true;
10272            },
10273
10274            /**
10275             * @returns {void}
10276             */
10277            hideLoader: function () {
10278                this.isLoading = false;
10279            }
10280        }
10281    }
10282
10283    window.addEventListener(
10284        'alpine:init',
10285        () => Alpine.data('initAmGdprLoader', initAmGdprLoader),
10286        { once: true }
10287    );
10288</script>
vendor: 1 bytes, line 10288
10288
10289<script type="text/json" id="default-section-data">
10290    {"messages":[],"customer":[],"compare-products":[],"last-ordered-items":[],"cart":[],"directory-data":{"AT":{"name":"\u00d6sterreich","regions":{"102":{"code":"BL","name":"Burgenland"},"99":{"code":"KN","name":"K\u00e4rnten"},"96":{"code":"NO","name":"Nieder\u00f6sterreich"},"97":{"code":"OO","name":"Ober\u00f6sterreich"},"98":{"code":"SB","name":"Salzburg"},"100":{"code":"ST","name":"Steiermark"},"101":{"code":"TI","name":"Tirol"},"103":{"code":"VB","name":"Vorarlberg"},"95":{"code":"WI","name":"Wien"}}},"CH":{"name":"Schweiz","regions":{"104":{"code":"AG","name":"Aargau"},"106":{"code":"AR","name":"Appenzell Ausserrhoden"},"105":{"code":"AI","name":"Appenzell Innerrhoden"},"108":{"code":"BL","name":"Basel-Landschaft"},"109":{"code":"BS","name":"Basel-Stadt"},"107":{"code":"BE","name":"Bern"},"110":{"code":"FR","name":"Friburg"},"111":{"code":"GE","name":"Geneva"},"112":{"code":"GL","name":"Glarus"},"113":{"code":"GR","name":"Graub\u00fcnden"},"114":{"code":"JU","name":"Jura"},"115":{"code":"LU","name":"Lucerne"},"116":{"code":"NE","name":"Neuch\u00e2tel"},"117":{"code":"NW","name":"Nidwalden"},"118":{"code":"OW","name":"Obwalden"},"120":{"code":"SH","name":"Schaffhausen"},"122":{"code":"SZ","name":"Schwyz"},"121":{"code":"SO","name":"Solothurn"},"119":{"code":"SG","name":"St. Gallen"},"123":{"code":"TG","name":"Thurgau"},"124":{"code":"TI","name":"Ticino"},"125":{"code":"UR","name":"Uri"},"126":{"code":"VD","name":"Vaud"},"127":{"code":"VS","name":"Wallis"},"128":{"code":"ZG","name":"Zug"},"129":{"code":"ZH","name":"Z\u00fcrich"}}},"DE":{"name":"Deutschland","regions":{"80":{"code":"BAW","name":"Baden-W\u00fcrttemberg"},"81":{"code":"BAY","name":"Bayern"},"82":{"code":"BER","name":"Berlin"},"83":{"code":"BRG","name":"Brandenburg"},"84":{"code":"BRE","name":"Bremen"},"85":{"code":"HAM","name":"Hamburg"},"86":{"code":"HES","name":"Hessen"},"87":{"code":"MEC","name":"Mecklenburg-Vorpommern"},"79":{"code":"NDS","name":"Niedersachsen"},"88":{"code":"NRW","name":"Nordrhein-Westfalen"},"89":{"code":"RHE","name":"Rheinland-Pfalz"},"90":{"code":"SAR","name":"Saarland"},"91":{"code":"SAS","name":"Sachsen"},"92":{"code":"SAC","name":"Sachsen-Anhalt"},"93":{"code":"SCN","name":"Schleswig-Holstein"},"94":{"code":"THE","name":"Th\u00fcringen"}}},"data_id":1791107426},"captcha":[],"instant-purchase":[],"loggedAsCustomer":[],"persistent":[],"review":[],"payments":[],"wishlist":{"items":[]},"amga4_event_pool":[],"amga4_hyva_event_pool":[],"hyva_checkout":[],"studi_club_data":[],"recently_viewed_product":[],"recently_compared_product":[],"product_data_storage":[],"paypal-billing-agreement":[],"paypal-buyer-country":[]}</script>
10290
10291</div></body>
10292</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.