PageSourceSearch

https://www.bodobakeri.no/

html bodobakeri.no collected 2026-10-08 11:54:32 UTC 215,408 bytes, 5,885 lines download raw bytes

1<!DOCTYPE html><html lang="en"><head ><title>Bodø Bakeri - Bestill kaker, lunsj og bakervarer i Salten</title>
2        <meta name="keywords" content="">
3        <meta name="description" content="Vi er Saltens lokale bakeri og med høy baker- og konditorfaglig kompetanse satser vi på å levere de beste og ferskeste baker- og konditorvarer av høyeste kvalitet." />
4        <meta name="robots" content="index, follow" />
5        <meta charset="utf-8" />
6        <meta name="cie-health" content="ok" />
7        <base href="/" />
8        <link rel="icon" href="https://d2y9vkode0okis.cloudfront.net/bakery-favicons_images/thumb/X1oviRo68gzb.png">
9        <link rel="canonical" href="https://www.bodobakeri.no/" />
10        
11        <meta property="og:title" content="Bodø Bakeri - Bestill kaker, lunsj og bakervarer i Salten"/>
12        <meta property="og:type" content="website"/>
13        <meta property="og:url" content="https://www.bodobakeri.no/"/>
14        <meta property="og:image" content="https://bcdn.cakeiteasy.com/1677578276282?width=1080&height=600&optimizer=image&format=webp"/>
15        <meta property="og:site_name" content="Bodø bakeri"/>
16        <meta property="og:description" content="Vi er Saltens lokale bakeri og med høy baker- og konditorfaglig kompetanse satser vi på å levere de beste og ferskeste baker- og konditorvarer av høyeste kvalitet."/>
17
18        <meta property="twitter:title" content="Bodø Bakeri - Bestill kaker, lunsj og bakervarer i Salten">
19        <meta property="twitter:description" content="Vi er Saltens lokale bakeri og med høy baker- og konditorfaglig kompetanse satser vi på å levere de beste og ferskeste baker- og konditorvarer av høyeste kvalitet.">
20        <meta property="twitter:image" content="https://bcdn.cakeiteasy.com/1677578276282?width=1080&height=600&optimizer=image&format=webp">
21        <meta property="twitter:card" content="summary_large_image">
22        <style>[v-cloak], [x-cloak] { display: none !important;}</style>
23        <meta name="theme-color" content="#ffffff">
24  
24<script type="text/javascript" charset="UTF-8" src="//cdn.cookie-script.com/s/b0abaa04a8db337a24caa612e1821e89.js"></script>
24<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"></meta><link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.13.0/css/all.min.css"></link><link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.1.0/css/all.min.css" integrity="sha512-10/jx2EXwxxWqCLX/hHth/vu2KY3jCF70dCQB8TSgNjbCVAC/8vai53GfMDrO2Emgwccf2pJqxct9ehpzG+MTw==" crossorigin="anonymous" referrerpolicy="no-referrer"></link><link rel="stylesheet" href="/assets/img/bootstrap-theme.css?v1"></link>
24<script src="/assets/js/mars.js" type="module"></script>
24<link href="/assets/css/theme.css?v1" rel="stylesheet"></link><link rel="preconnect" href="https://fonts.googleapis.com"></link><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin="true"></link><link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700;900&display=swap"></link><link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Lato:wght@300;400;500;700;900&display=swap"></link><link rel="stylesheet" href="https://d1ts8t91rloag6.cloudfront.net/fonts/icons/icons.css"></link>
24<script src="https://cdn.marscloud.dev/assets/img/smoothscroll.js"></script>
24<script defer="true" src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js" crossorigin="anonymous"></script>
24<!-- Google Tag Manager -->
25  
25<script>
vendor: 335 bytes, lines 25-29
25(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
26  new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
27  j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
28  'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
29  })(window,document,'script','dataLayer','
29GTM-TDQJ8KB
vendor: 3 bytes, line 29
29');
29</script>
29
30  <!-- End Google Tag Manager -->
vendor: 66 bytes, lines 30-31
30
31  <script async src="https://www.googletagmanager.com/gtag/js?id=
31G-MPSGJSVYG9
vendor: 14 bytes, lines 31-32
31"></script>
32  
32<script>
33      window.webMesurementId = 'G-MPSGJSVYG9';
34    window.dataLayer = window.dataLayer || [];
35    function gtag(){dataLayer.push(arguments);}
36    gtag('js', new Date());
37
38    gtag('consent', 'default', {
39      'analytics_storage': 'denied',
40      'ad_storage': 'denied',
41      'ad_user_data': 'denied',
42      'ad_personalization': 'denied',
43      'functionality_storage': 'denied',
44      'personalization_storage': 'denied'
45    });
46
47    gtag('config', 'G-MPSGJSVYG9');
48    window.addEventListener('CookieScriptAccept', function (event) {
49      console.log('CookieScriptAccept', event && event.detail);
50      const acceptedCategories = event.detail.categories;
51
52      if (typeof gtag === 'function') {
53        gtag('consent', 'update', {
54          'analytics_storage': acceptedCategories.includes('performance') ? 'granted' : 'denied',
55          'ad_storage': acceptedCategories.includes('targeting') ? 'granted' : 'denied',
56          'ad_user_data': acceptedCategories.includes('targeting') ? 'granted' : 'denied',
57          'ad_personalization': acceptedCategories.includes('targeting') ? 'granted' : 'denied',
58          'functionality_storage': acceptedCategories.includes('functionality') ? 'granted' : 'denied',
59          'personalization_storage': acceptedCategories.includes('functionality') ? 'granted' : 'denied'
60        });
61      }
62    });
63
64    window.addEventListener('CookieScriptReject', function () {
65      console.log('CookieScriptReject');
66      if (typeof gtag === 'function') {
67        gtag('consent', 'update', {
68          'analytics_storage': 'denied',
69          'ad_storage': 'denied',
70          'ad_user_data': 'denied',
71          'ad_personalization': 'denied',
72          'functionality_storage': 'denied',
73          'personalization_storage': 'denied'
74        });
75      }
76    });
77    if (typeof window.onerror == "object") {
78      window.onerror = function (err, url, line) {
79        if (window.gtag) {
80          gtag('event', 'exception', {
81            description: line + " " + err,
82            fatal: false
83          });
84        }
85      };
86    }
87  </script>
87<style>Mars.settings.AnalyticsSettings has no key for provided </style><style>.w-85{
88  width: 85% !important;
89}</style></head><body class="" data-body-content="true"><style>
90.content {
91  transition: margin 0.25s ease;
92}
93
94.text-prewrap {
95  white-space: pre-wrap;
96}
97
98.header-overlap .go-away-from-header-overlap{
99  margin-top: 6rem;
100}
101
102.header-overlap .go-away-from-header-overlap-extra {
103  margin-top: 10rem;
104}
105
106@media(max-width: 767.9px){
107  .header-overlap .go-away-from-header-overlap { 
108    margin-top: 3rem;
109  }
110
111  .header-overlap .go-away-from-header-overlap-extra {
112    margin-top: 5rem;
113  }
114}</style>
114<script v-pre type="module">const data = JSON.parse(decodeURIComponent("%7B%22_blockName%22%3A%22PromoPopupBlock%22%2C%22Id%22%3A%22objebf4aebf9cab41209b1f1f82a57af3b7%22%2C%22children%22%3Anull%2C%22showTimeout%22%3A6%2C%22enabled%22%3Afalse%2C%22link%22%3A%22https%3A%2F%2Fexample.com%2Fnewsletter-signup%22%7D"));
115const MODAL_STORAGE_KEY = "CIE_WELCOME_POPUP_SHOWN_" + data.link; // LocalStorage key
116
117document.addEventListener("DOMContentLoaded", function () {
118  const modal = document.querySelector(".welcome-popup-modal");
119  const closeButton = modal.querySelector(".close-btn");
120  const closeLinks = modal.querySelectorAll("[data-dismiss='modal']");
121  const ctaLink = modal.querySelector("#POPUP_CTA");
122
123  function openModal(ignoreCache) {
124    if (!ignoreCache && localStorage.getItem(MODAL_STORAGE_KEY)) {
125      return
126    }
127
128    modal.classList.add("show");
129    modal.classList.remove("fade");
130  }
131
132  function closeModal() {
133    localStorage.setItem(MODAL_STORAGE_KEY, "true");
134    modal.classList.remove("show");
135    setTimeout(() => {
136      modal.classList.add("fade"); // Reapply fade effect for next open
137    }, 300); // Matches CSS transition time
138  }
139
140  // Close modal when clicking on the close button
141  closeButton.addEventListener("click", closeModal);
142
143  // Close modal when clicking on close links
144  if (closeLinks && closeLinks.length) {
145    closeLinks.forEach(closeLink => closeLink.addEventListener("click", function (e) {
146      e.preventDefault();
147      closeModal();
148    }));
149  }
150
151  ctaLink.addEventListener("click", function (e) {
152    closeModal();
153    return true;
154  });
155
156  // Close modal when clicking outside modal content
157  modal.addEventListener("click", function (e) {
158    if (e.target === modal) {
159      closeModal();
160    }
161  });
162
163  // Expose openModal function to be called externally
164  if (data.showTimeout && data.enabled) {
165    setTimeout(() => openModal(), data.showTimeout * 1000);
166  }
167
168  window.showPromoPopup = function () {
169    return openModal(true);
170  }
171
172});
173
174window.clearWelcomeModalCache = function () {
175  localStorage.removeItem(MODAL_STORAGE_KEY);
176}</script>
176<div class="undefined"><style>/* Accordion type no border */
177
178.form-accordion_type_no-border .border {
179  border: none !important;
180}
181
182.form-accordion_type_no-border.form-accordion__padding_type_zero .accordion-head {
183  pointer-events: none;
184}
185
186.form-accordion_type_gray-bg.form-accordion__padding_type_middle .accordion-head {
187  pointer-events: auto;
188}
189
190.form-accordion_type_no-border .accordion-head {
191  background: transparent !important;
192}
193
194.form-accordion_type_no-border .accordion-body {
195  background: transparent !important;
196  padding: 0 !important;
197}
198
199.form-accordion_type_no-border .accordion-head {
200  font-style: normal;
201  font-weight: 700;
202  font-size: 24px;
203  line-height: 29px;
204  color: #282C30;
205  padding: 0 0 25px 0 !important;
206}
207
208.form-accordion_type_no-border .fa-chevron-up,
209.form-accordion_type_no-border .fa-chevron-down {
210  display: none;
211}
212
213.form-constructor_type_bakery-style .array-entities-container {
214  position: relative;
215}
216
217.form-accordion_width-bg {
218  background: #F1F5F9;
219  margin-left: -15px;
220  margin-right: -15px;
221  padding: 25px 15px 15px;
222}
223
224
225.combined-block {
226  margin-top: -15px;
227  border-radius: 0 0 8px 8px;
228  border-top: 1px solid #ccc;
229}
230
231/*Padding type*/
232
233.form-accordion_type_white-bg.form-accordion__padding_type_zero .accordion-head {
234  padding: 0 !important;
235}
236
237.form-accordion_type_white-bg.form-accordion__padding_type_small .accordion-head {
238  padding: 5px 25px 5px 5px !important;
239}
240
241.form-accordion_type_white-bg.form-accordion__padding_type_middle .accordion-head {
242  padding: 15px 30px 15px 15px !important;
243}
244
245.form-accordion_type_gray-bg.form-accordion__padding_type_middle .accordion-head {
246  padding: 15px 30px 15px 15px !important;
247}
248
249.form-accordion_type_white-bg.form-accordion__padding_type_large .accordion-head {
250  padding: 20px 30px 20px 20px !important;
251}
252
253/**/
254
255.form-accordion__font-wrap .form-constructor-column {
256  border-bottom: 1px solid #D6DBE5;
257  margin-bottom: 15px;
258}
259
260.form-accordion__font-wrap .row {
261  margin-right: -20px;
262  margin-left: -20px;
263}
264
265.form-accordion__font-wrap .form-constructor-column:last-child {
266  border-bottom: none;
267  margin-bottom: 0;
268}
269
270/* Xmodal header */
271
272#xmodal_header_1.tool-bar-modal.show {
273  box-shadow: 0 1px 0 0 #E1E1E1;
274  padding: 10px 15px;
275}
276
277#xmodal_header_1.tool-bar-modal .xmodal-header-text {
278  display: flex;
279  align-items: center;
280  font-style: normal;
281  letter-spacing: normal;
282  font-weight: 700;
283  font-size: 16px;
284  line-height: 19px;
285  color: #333333;
286}
287
288#xmodal_close_1 .btn-primary {
289  width: 138px;
290  height: 40px;
291  background: #5066DA !important;
292  border-radius: 4px;
293  font-style: normal;
294  font-weight: 400;
295  font-size: 14px;
296  line-height: 17px;
297  display: flex;
298  align-items: center;
299  justify-content: center;
300  letter-spacing: normal;
301}
302
303#xmodal_close_1 .btn-primary:hover,
304#xmodal_close_1 .btn-primary:focus {
305  background: #485CC7 !important;
306}
307
308/* Modal body */
309
310.form-constructor_type_bakery-style {
311  padding: 26px 15px 0;
312  letter-spacing: normal;
313  background: #ffffff;
314}
315
316.form-constructor_type_bakery-style .array-entity-card {
317  margin-bottom: 0px !important;
318}
319
320/* String */
321/* Textarea */
322
323.form-constructor_type_bakery-style .form-input-label {
324  font-style: normal;
325  font-weight: 700;
326  font-size: 14px;
327  line-height: 1;
328  margin-bottom: 10px;
329  color: #282C30;
330}
331
332.form-constructor_type_bakery-style .form-control,
333.form-constructor_type_bakery-style .form-control::placeholder,
334.form-constructor_type_bakery-style .form-control::-webkit-input-placeholder,
335.form-constructor_type_bakery-style .form-control::-moz-placeholder,
336.form-constructor_type_bakery-style .form-control:-ms-input-placeholder,
337.form-constructor_type_bakery-style .form-control:-moz-placeholder {
338  font-family: 'Roboto';
339  font-style: normal;
340  font-weight: 400;
341  font-size: 15px;
342  line-height: 18px;
343  color: #707981;
344}
345
346.form-constructor_type_bakery-style .form-control {
347  font-family: 'Roboto';
348  font-style: normal;
349  font-weight: 400;
350  font-size: 15px;
351  line-height: 18px;
352  color: #282C30;
353}
354
355/* .form-constructor_type_bakery-style .quill-editor-component {
356  border-radius: 8px;
357} */
358
359.form-constructor_type_bakery-style .form-control:hover,
360.form-constructor_type_bakery-style .quill-editor-component:hover {
361  border-color: #ACB2C1 !important;
362  outline: 0;
363  box-shadow: none;
364}
365
366.form-constructor_type_bakery-style .form-control:focus,
367.form-constructor_type_bakery-style .quill-editor-component:focus {
368  border-color: #5066DA !important;
369  outline: 0;
370  box-shadow: none;
371}
372
373/**/
374
375.form-constructor_type_bakery-style .form-constructor-column__controls-block {
376  position: absolute;
377  top: 14px;
378  z-index: 1;
379  max-width: 87%;
380  padding-right: 0px;
381}
382
383.form-constructor_type_bakery-style .form-constructor-column__controls-block .text-danger {
384  color: #DF4444;
385}
386
387.form-constructor_type_bakery-style .form-constructor-column__controls-block .text-primary {
388  color: #282C30 !important;
389}
390
391.form-constructor_type_bakery-style .form-constructor-column__controls-block .fa-tras
391h-alt,
392.form-constructor_type_bakery-style .form-constructor-column__controls-block .fa-arrow-down,
393.form-constructor_type_bakery-style .form-constructor-column__controls-block .fa-arrow-up {
394  font-size: 16px !important;
395}
396
397.form-constructor_type_bakery-style .form-constructor-column__controls-block .move-up-btn {
398  margin-right: 8px !important;
399}
400
401.form-constructor_type_bakery-style .form-constructor-column__controls-block .move-down-btn {
402  margin-right: 15px !important;
403}
404
405/* Accordion type white-bg */
406
407.form-constructor_type_bakery-style .form-accordion_type_white-bg .fa-chevron-up,
408.form-constructor_type_bakery-style .form-accordion_type_white-bg .fa-chevron-down {
409  display: block;
410}
411
412.form-constructor_type_bakery-style .form-accordion_type_white-bg .accordion-head {
413  pointer-events: initial;
414}
415
416.form-constructor_type_bakery-style .form-accordion_type_white-bg .form-input-label {
417  font-style: normal;
418  font-weight: 700;
419  font-size: 16px;
420  line-height: 1;
421  margin-bottom: 16px;
422}
423
424.form-accordion_type_white-bg .border {
425  border: 1px solid #D6DBE5 !important;
426}
427
428.form-accordion_type_white-bg .rounded {
429  border-radius: 8px!important;
430}
431
432.form-accordion_type_white-bg .rounded-bottom-0 {
433  border-radius: 8px 8px 0px 0px!important;
434}
435
436.form-accordion_type_white-bg .accordion-head {
437  background: #FFFFFF !important;
438  border: 1px solid #D6DBE5 !important;
439  border-radius: 8px;
440}
441
442.form-accordion_type_white-bg .accordion-head .accordion-head__title {
443  display: flex;
444  align-items: center;
445  justify-content: center;
446  font-weight: 700;
447  font-size: 18px;
448  line-height: 22px;
449  color: #282C30;
450}
451
452.form-accordion_type_white-bg .accordion-head .accordion-head__subtitle {
453  font-style: normal;
454  font-weight: 400;
455  font-size: 12px;
456  line-height: 130%;
457  color: #707981;
458  margin-top: 5px;
459}
460
461.form-accordion_type_white-bg .accordion-body {
462  background: #FFFFFF !important;
463  border-radius: 0px 0px 8px 8px !important;
464  padding: 20px 20px 0px 20px !important;
465  border-top-color: transparent !important;
466}
467
468.form-accordion_type_white-bg .fa-chevron-down,
469.form-accordion_type_white-bg .fa-chevron-up {
470  color: #707981!important;
471  font-size: 13px;
472  font-weight: 700;
473}
474
475.form-accordion_full-width-button {
476  font-style: normal;
477  font-weight: 700;
478  font-size: 16px;
479  line-height: 19px;
480  text-align: center;
481  color: #282C30;
482  border: none;
483  background: none;
484  display: flex;
485  align-items: center;
486  max-width: 170px;
487}
488
489.form-accordion_full-width-button span {
490  font-size: 24px;
491  margin-right: 5px;
492  width: 38px;
493  height: 38px;
494  display: flex;
495  align-items: center;
496  justify-content: center;
497  transition: all 0.5 ease;
498}
499
500.form-accordion_full-width-button:hover span {
501  border-radius: 4px;
502  color: #5066DA;
503  background: #EEF3F6;
504  font-size: 26px;
505}
506
507.form-accordion_full-width-button:focus span {
508  font-size: 24px;
509}
510
511.form-accordion_full-width-button:focus {
512  color: #5066DA;
513}
514
515.form-accordion_type_white-bg {
516  margin-bottom: 10px;
517}
518
519/* Accordion type collapse */
520
521.form-accordion_type_collapse .accordion-body {
522  border: none !important;
523  padding: 0 !important;
524}
525
526/* Accordion type gray-bg */
527
528.form-accordion_type_gray-bg {
529  margin-bottom: 20px;
530}
531
532.form-accordion_type_gray-bg .border {
533  border: 1px solid #D6DBE5 !important;
534}
535
536.form-accordion_type_gray-bg .rounded {
537  border-radius: 8px!important;
538}
539
540.form-accordion_type_gray-bg .rounded-bottom-0 {
541  border-radius: 8px 8px 0px 0px!important;
542}
543
544.form-accordion_type_gray-bg .accordion-head {
545  background: #FFFFFF !important;
546  border: 1px solid #D6DBE5 !important;
547  border-radius: 8px;
548  font-style: normal;
549  font-weight: 700;
550  font-size: 16px;
551  line-height: 19px;
552  color: #282C30 !important;
553  padding: 15px !important;
554}
555
556/*.form-constructor_type_bakery-style .accordion-head:hover { 
557  background: #F1F5F9 !important;
558}*/
559
560.form-constructor_type_bakery-style .accordion-head:hover .fa-chevron-down,
561.form-constructor_type_bakery-style .accordion-head:hover .fa-chevron-up {
562  color: #282C30 !important;
563}
564
565.form-constructor_type_bakery-style .form-accordion_type_gray-bg  .form-input-label {
566  font-style: normal;
567  font-size: 14px;
568  line-height: 1;
569  color: #282C30;
570  font-weight: 700;
571  margin-bottom: 9px;
572}
573
574.form-accordion_type_gray-bg .accordion-head span {
575  display: flex;
576  align-items: center;
577  justify-content: center;
578}
579
580.form-accordion_type_gray-bg .accordion-body {
581  background: #FFF !important;
582  border-radius: 0px 0px 8px 8px !important;
583  border: 1px solid #D6DBE5 !important;
584  border-top-color: transparent !important;
585  padding: 15px 15px 0px !important;
586}
587
588.form-accordion_type_gray-bg input {
589  border-radius: 6px !important;
590  border: 1px solid #D6DBE6 !important;
591  height: 38px;
592}
593
594.form-accordion_type_gray-bg .fa-chevron-down,
595.form-accordion_type_gray-bg .fa-chevron-up {
596  color: #707981!important;
597  font-size: 13px;
598  font-weight: 700;
599}
600
601.form-constructor_type_bakery-style .remove-btn-container .bg-danger {
602  background-color: #DF4444 !important;
603}
604
605.form-constructor_type_bakery-style .remove-btn-container .rounded {
606  border-radius: 4px !important;
607}
608
609/* Description */
610
611.form-constructor_type_bakery-style .form-field-description,
612.form-constructor_type_bakery-style .form-textform-field-description {
613  font-style: normal;
614  font-weight: 400;
615  font-size: 12px;
616  line-height: 17px;
617  color: #707981 !important;
618  margin: 0;
619  padding: 15px 0px 15px 0px;
620  display: block;
621  position: relative;
622}
623
624/* Image */
625
626.form-constructor_type_bakery-style .img-placeholder {
627  border: 1px dashed #CEDAE0 !important;
628  background: transparent !important;
629  text-align: center;
630}
631
632.img-container {
633  border: 1px dashed #CEDAE0 !important;
634}
635
636.form-constructor_type_bakery-style .form-image-input-group .v-popover {
637  left: calc(50% - 110px / 2) !important;
638  bottom: 24px !important;
639  margin: 0 !important;
640}
641
642.form-constructor_type_bakery-style .form-image-input-group .btn .fa-edit {
643  display: none;
644}
645
646.accordion-multi {
647  display: flex;
648  align-items: center;
649}
650
651.accordion-multi__img {
652  width: 72px;
653  height: 52px;
654  object-fit: cover;
655  border-radius: 2px;
656  background-color: #B6C3CC;
657  margin-right: 10px;
658}
659
660.accordion-multi__title-wrap {
661  display: flex;
662  flex-direction: column;
663}
664
665.accordion-multi__subtitle {
666  font-style: normal;
667  font-weight: 700;
668  font-size: 12px;
669  line-height: 14px;
670  color: #707981;
671}
672
673.accordion-multi__title {
674  font-style: normal;
675  font-weight: 700;
676  font-size: 16px;
677  line-height: 22px;
678  color: #282C30;
679  max-width: 130px;
680  text-overflow: ellipsis;
681  white-space: nowrap;
682  overflow: hidden;
683}
684
685/* Error description */
686
687.form-constructor_type_bakery-style .form-invalid-feedback {
688  background: #FFF3E8;
689  border-radius: 4px;
690  position: relative;
691  font-weight: 700;
692  font-size: 14px;
693  line-height: 17px;
694  color: #282C30;
695  padding: 15px 18px 15px 40px;
696}
697
698.form-constructor_type_bakery-style .form-invalid-feedback:before {
699  content: '';
700  display: block;
701  width: 3px;
702  height: 100%;
703  background: #E87A14;
704  position: absolute;
705  top: 0;
706  left: 0;
707}
708
709.form-constructor_type_bakery-style .form-invalid-feedback:after {
710  content: '';
711  display: block;
712  width: 18px;
713  height: 18px;
714  background: url('https://bcdn.cakeiteasy.com/cie-description-icon.png?optimizer=image&width=1200');
715  background-repeat: no-repeat;
716  background-position: left center;
717  background-size: contain;
718  position: absolute;
719  top: calc(50% - 9px);
720  left: 10px;
721}
722
723/* String with options */
724
725.form-constructor_type_bakery-style .vs__dropdown-toggle {
726  border-radius: 6px;
727  border: 1px solid #D6DBE5;
728  padding: 4px 0 5px;
729  color: #282C30;
730}
731
732.form-constructor_type_bakery-style .vs__actions svg,
733.form-constructor_type_bakery-style .vs__actions .vs__open-indicator {
734  width: 12px;
735}
736
737/* Range */
738
739.form-constructor_type_bakery-style .range-container__wrap {
740  grid-template-rows: 1fr 1fr;
741  grid-template-columns: 1fr 35px;
742  row-gap: 0px;
743  column-gap: 15px;
744  margin: 15px 0;
745  padding: 0 15px 0 0;
746}
747
748.form-constructor_type_bakery-style .range-container__title {
749  font-style: normal;
750  font-weight: 700;
751  font-size: 16px;
752  line-height: 1;
753  margin-bottom: 8px;
754}
755
756.form-constructor_type_bakery-style .range-container__wrap .range-container__input {
757  grid-column-start: 1;
758  grid-column-end: 2;
759}
760
761.range-container__result {
762  min-width: 35px;
763}
764
765/* Checkbox */
766
767.form-constructor_type_bakery-style .checkbox-input-label__subtitle {
768  font-style: normal;
769  font-weight: 400;
770  font-size: 12px;
771  line-height: 130%;
772  color: #707981 !important;
773  margin-top: 5px;
774  max-width: 290px;
775  display: block;
776  cursor: pointer;
777}
778
779.form-constructor_type_bakery-style .checkbox-input-label__title {
780  font-style: normal;
781  font-weight: 600;
782  font-size: 18px;
783  line-height: 22px;
784  color: #282C30;
785  cursor: pointer;
786}
787
788.form-constructor_type_bakery-style .custom-checkbox {
789  background: #FFFFFF;
790  border: 1px solid #D6DBE5;
791  border-radius: 8px;
792  padding: 15px 30px 15px 15px;
793  display: flex;
794  flex-direction: row-reverse;
795  justify-content: space-between;
796  align-items: center;
797}
798
799.form-constructor_type_bakery-style .custom-checkbox .checkbox-input-label {
800  margin-bottom: 0;
801}
802
803.form-constructor_type_bakery-style .custom-control-label {
804  display: flex;
805  flex-direction: column;
806}
807
808.form-constructor_type_bakery-style .form-check-input {
809  background: #D6DBE5;
810  border-radius: 10.5px;
811  transform: matrix(-1, 0, 0, 1, 0, 0);
812  width: 40px;
813  min-width: 40px;
814  height: 22px;
815  position: relative;
816  cursor: pointer;
817  transition: easy 0.3s ease;
818}
819
820.form-constructor_type_bakery-style .custom-checkbox:hover .custom-control-input,
821.form-constructor_type_bakery-style .custom-control-input:hover {
822  background: #707981;
823}
824
825.form-constructor_type_bakery-style .form-check-input:before {
826  content: '';
827  background: #FFFFFF;
828  transform: matrix(-1, 0, 0, 1, 0, 0);
829  border-radius: 50%;
830  width: 18px;
831  height: 18px;
832  position: absolute;
833  left: calc(40px - 22px);
834  top: 1px;
835  transition: left 0.2s ease;
836}
837
838.form-constructor_type_bakery-style .form-check-input:checked[type="checkbox"] {
839  background-image: none;
840  background: #5066DA;
841  border: 1px solid #5066DA;
842}
843
844.form-constructor_type_bakery-style .form-check-input:checked[type="checkbox"]::before {
845  left: 1px
846}
847
848/* color picker */
849
850.color-picker__container_type_border {
851  background: #FFFFFF;
852  border: 1px solid #D6DBE5;
853  border-radius: 0 0 8px 8px;
854  padding: 20px;
855  margin-top: -15px;
856  margin-bottom: 10px;
857}
858
859.form-constructor_type_bakery-style .vs--searchable .vs__dropdown-toggle {
860  cursor: pointer;
861}
862
863.form-constructor_type_bakery-style .vs__search {
864  cursor: pointer !important;
865}
866
867.admin-font-settings-component .font-editor__header {
868  background: #fff;
869  padding: 15px 15px 0;
870  width: 400px;
871}
872
873.admin-font-settings-component .font-editor__content {
874  background: #fff;
875  padding: 0 15px 15px;
876  width: 400px;
877}
878
879.admin-font-settings-component .font-editor__header .dropdown-input-label {
880  font-weight: bold;
881  font-size: 17px;
882}
883
884.admin-font-settings-component .font-editor__content .font-editor__row_type_up-title .range-container__title {
885    margin-bottom: 5px;
886}</style><link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Lato:wght@300;400;500;700;900&family=undefined:wght@300;400;500;700;900&family=Vollkorn:wght@300;400;500;700;900"></link><style>
887@font-face {
888    font-family: Recoleta;
889    src: url(https://d1ts8t91rloag6.cloudfront.net/fonts/recoleta/Recoleta-Medium.eot?v=1);
890    src: url(https://d1ts8t91rloag6.cloudfront.net/fonts/recoleta/Recoleta-Medium.eot?#iefix) format("embedded-opentype"),
891    url(https://d1ts8t91rloag6.cloudfront.net/fonts/recoleta/Recoleta-Medium.woff?v=1) format("woff"),
892    url(https://d1ts8t91rloag6.cloudfront.net/fonts/recoleta/Recoleta-Medium.ttf?v=1) format("truetype"),
893    url(https://d1ts8t91rloag6.cloudfront.net/fonts/recoleta/Recoleta-Medium.svg#Glyphter) format("svg");
894    font-weight: 400;
895    font-style: normal
896}
897
898:root{
899  --spacer: 1rem;
900  --font-family: Lato, sans-serif;
901  --secondary-font-family: Lato, sans-serif;
902  --tertiary-font-family: Vollkorn, serif;
903  --img-border-radius: border-radius: 0;
904  --font-title: 2.8125rem;
905  --font-subtitle: 2rem;
906  --font-default: 1rem;
907  --base-font-tablet-size: 16px;
908  --base-font-mobile-size: 16px;
909  --font-small: 0.75rem;
910  --font-extrasmall: 0.6875rem;
911  --font-weight: 400;
912  --font-letterspacing: 0.45px;
913  --footer-letter-spacing: 0;
914  --font-color: #212529;
915  --font-lineheight: 1.5;
916  --heading-font-weight: 700;
917  --heading-line-height: 1.2;
918  --heading-margin-bottom: .5rem;
919  --heading-h1-font-size: 3.4375rem;
920  --heading-h2-font-size: 2.185rem;
921  --heading-h3-font-size: 1.875rem;
922  --heading-h4-font-size: 1.3125rem;
923  --heading-h5-font-size: 1.25rem;
924  --heading-h6-font-size: 1rem;
925  --button-border-radius: 14px;
926  --button-padding-horizontal: .4;
927  --button-padding-vertical: .2375rem;
928  --button-line-height: 1.75;
929  --text-line-height: 1.75;
930  --color-secondary: #00416b;
931  --color-text-secondary: white;
932  --color-primary: #ffa301;
933  --color-text-primary: white;
934  --color-secondary-hover: #1B6697;
935  --color-primary-hover: #E4B768;
936  --page-bg-color: #ffffff;
937  --page-color: #333333;
938  --common-blocks-padding: 0px; 
939  --primary-font-family: Lato, sans-serif;
940  --outlet-arrow-color: #00416b;
941}
942
943/* main */
944
945html {
946  font-size: 16px;
947}
948
949@media (max-width: 768px) {
950  html {
951    font-size: var(--base-font-tablet-size);
952  }
953}
954
955@media (max-width: 425px) {
956  html {
957    font-size: var(--base-font-mobile-size);
958  }
959}
960
961body {
962  color: var(--page-color);
963  background-color: var(--page-bg-color);
964  font-weight: var(--font-weight);
965  line-height: 1.75rem;
966  font-family: 'Lato', sans-serif;
967  height: auto!important;
968  -moz-osx-font-smoothing: grayscale;
969  -webkit-font-smoothing: antialiased;
970  -webkit-text-size-adjust: 100%;
971  -ms-text-size-adjust: 100%;
972  -moz-text-size-adjust: 100%;
973  box-sizing: border-box;
974}
975
976picture {
977  width: 100%;
978  height: 100%;
979}
980
981ul {
982  list-style: none;
983  padding: 0;
984}
985
986iframe {
987  border: none;
988  width: 100%;
989}
990
991a {
992  color: inherit;
993  text-decoration: none !important;
994}
995
996a:hover {
997  color: inherit;
998  text-decoration: none;
999}
1000
1001/* button */
1002
1003.btn {
1004  align-items: center;
1005  justify-content: space-around;
1006  cursor: pointer;
1007  font-size: 1.125rem;
1008}
1009
1010.btn:disabled {
1011  pointer-events: none;
1012  opacity: .65;
1013  box-shadow: none;
1014  background-color: black;
1015}
1016
1017.btn-primary {
1018  border: 1px solid transparent;
1019  background-color: var(--color-primary);
1020  color: var(--color-text-primary);
1021}
1022
1023.btn-primary:hover,
1024.btn-primary:active {
1025  border: 1px solid transparent !important;
1026  background-color: var(--color-primary-hover) !important;
1027  transition: all ease .3s;
1028}
1029
1030.btn-primary:focus {
1031  background-color: var(--color-primary-hover) !important;
1032}
1033
1034.btn .btn-secondary {
1035  border: 1px solid transparent;
1036  background-color: var(--color-secondary);
1037  color: var(--color-text-secondary);
1038}
1039
1040.btn.btn-secondary:hover,
1041.btn.btn-secondary:active {
1042  border: 1px solid transparent !important;
1043  background-color: var(--color-secondary-hover) !important;
1044  transition: all ease .3s;
1045}
1046
1047.btn.btn-secondary:focus {
1048  background-color: var(--color-secondary-hover) !important;
1049}
1050
1051.btn-outline-secondary:hover {
1052  color: white!important;
1053  background-color: var(--color-secondary)!important;
1054  transition: .3s;
1055  border-radius: 5px;
1056}
1057
1058.btn-outline-primary {
1059  color: var(--color-primary)!important;
1060  border: 2px solid var(--color-primary)!important;
1061  border-radius: 5px;
1062}
1063
1064.btn-outline-primary:hover {
1065  color: white!important;
1066  background-color: var(--color-primary)!important;
1067  transition: .3s;
1068}
1069
1070
1071[class^='btn-outline-'] {
1072  display: block;
1073}
1074
1075[class^='btn-outline-']:hover, 
1076[class^='btn-outline-']:active, 
1077[class^='btn-outline-'].active, 
1078[class^='btn-outline-'].dropdown-toggle.show, 
1079[class*=' btn-outline-']:hover, 
1080[class*=' btn-outline-']:active, 
1081[class*=' btn-outline-'].active, 
1082[class*=' btn-outline-'].dropdown-toggle.show {
1083    color: #fff;
1084}
1085
1086.arrow-color {
1087  color: var(--outlet-arrow-color);
1088}
1089
1090/* dropdown */
1091
1092.dropdown:hover > .dropdown-menu {
1093  display: block!important;
1094  -webkit-animation: dropdown-show 0.25s cubic-bezier(0.68, -0.55, 0.265, 1.55);
1095  animation: dropdown-show 0.25s cubic-bezier(0.68, -0.55, 0.265, 1.55);
1096  top: 100% !important;
1097}
1098
1099.dropdown-menu__custom-style {
1100  border-radius: 0;
1101  border: 1px solid rgba(0,0,0,.15);
1102  box-shadow: none;
1103  color: #212529;
1104  min-width: 10rem;
1105  padding: 0;
1106  margin: 0.125rem 0 0 !important;
1107  inset: inherit !important;
1108  right: 2px !important;
1109  top: 0 !important;
1110}
1111
1112.dropdown-item__custom-style {
1113  font-size: .875rem!important;
1114  font-weight: 400;
1115  line-height: 1.5;
1116  padding: 0.5rem 1rem!important;
1117}
1118
1119.dropdown-item__custom-style:hover,
1120.dropdown-item__custom-style:focus,
1121.dropdown-item__custom-style:active {
1122  background-color: #ebebeb;
1123}
1124
1125@media (max-width: 768px) {
1126  .dropdown-menu__custom-style {
1127    position: static !important;
1128    width: 100%;
1129    border: none;
1130    transform: none !important;
1131  }
1132  .dropdown-item__custom-style {
1133    font-size: 1.5rem!important;
1134    text-align: center;
1135  }
1136}
1137
1138.dropdown-toggle::after {
1139  display: none;
1140}
1141
1142/* font */
1143
1144.font-primary {
1145  font-family: var(--primary-font-family);
1146}
1147
1148.font-secondary {
1149  font-family: var(--secondary-font-family);
1150}
1151
1152.font-tertiary {
1153  font-family: var(--tertiary-font-family);
1154}
1155
1156.footer__special-letter-spacing {
1157  letter-spacing: var(--footer-letter-spacing);
1158}
1159
1160h1, .h1 { 
1161  text-rendering: optimizeLegibility;  
1162}
1163
1164h2, .h2 { 
1165  text-rendering: optimizeLegibility; 
1166}
1167
1168.h1 {
1169  font-size: 3rem;
1170  line-height: 3.5rem;
1171}
1172
1173@media (min-width: 768px) {
1174  .h1 {
1175    font-size: 4.6875rem;
1176    line-height: 5.625rem;
1177  }
1178}
1179
1180.h2 {
1181  font-size: 2.4rem;
1182  line-height: 2.8rem;
1183}
1184
1185@media (min-width: 768px) {
1186  .h2 {
1187    font-size: 3.75rem;
1188    line-height: 4.5rem;
1189  }
1190}
1191
1192.h3 {
1193  font-size: 1.68rem;
1194  line-height: 1.96rem;
1195}
1196
1197@media (min-width: 768px) {
1198  .h3 {
1199    font-size: 2.625rem;
1200    line-height: 3.15rem;
1201  }
1202}
1203
1204.h4 {
1205  font-size: 1.44rem;
1206  line-height: 1.68rem;
1207}
1208
1209@media (min-width: 768px) {
1210  .h4 {
1211    font-size: 2.25rem;
1212    line-height: 2.7rem;
1213  }
1214}
1215
1216.h5 {
1217  font-size: 1.2rem;
1218  line-height: 1.4rem;
1219}
1220
1221@media (min-width: 768px) {
1222  .h5 {
1223    font-size: 1.875rem;
1224    line-height: 2.25rem;
1225  }
1226}
1227
1228.title-lg {
1229  font-size: 2rem!important;
1230}
1231
1232.title-md{
1233  font-size: 1.5rem!important;
1234}
1235
1236.title-sm{
1237  font-size: 1.25rem!important;
1238}
1239
1240.font-sm {
1241  font-size: 0.875rem;
1242}
1243
1244.font-md {
1245  font-size: 1rem;
1246}
1247
1248.font-lg {
1249  font-size: 1.125rem;
1250}
1251
1252.fs-6{
1253  font-size: 0.875rem!important;
1254}
1255
1256.fs-5{
1257  font-size: 1.125rem!important;
1258}
1259
1260.fs-3{
1261  font-size: 1.56251rem!important;
1262}
1263
1264.fs-4{
1265  font-size: 1.5rem!important;
1266}
1267
1268.lh-1{
1269  line-height: 1.1 !important;
1270}
1271
1272.text-light {
1273  font-weight: 300;
1274}
1275
1276.text-normal {
1277  font-weight: 400;
1278}
1279
1280.text-medium{
1281  font-weight: 500;
1282}
1283
1284.text-semibold{
1285  font-weight: 600;
1286}
1287
1288.text-bold {
1289  font-weight: 700;
1290}
1291
1292.text-black{
1293  font-weight: 900;
1294}
1295
1296.text-left {
1297  text-align: left;
1298}
1299
1300.text-center {
1301  text-align: center;
1302}
1303
1304.text-right {
1305  text-align: right;
1306}
1307
1308
1309/* special */
1310
1311.common-padding-bottom-blocks {
1312  padding-bottom: var(--common-blocks-padding);
1313}
1314
1315.arrow-color {
1316  color: var(--outlet-arrow-color);
1317}
1318
1319.common-padding-blocks {
1320  padding-top: var(--common-blocks-padding);
1321  padding-bottom: var(--common-blocks-padding);
1322}
1323
1324.common-padding-bottom-blocks {
1325  padding-bottom: var(--common-blocks-padding);
1326}
1327
1328.form__description-link {
1329  color: blue;
1330}
1331
1332.form__description-link:hover {
1333  color: blue;
1334  text-decoration: underline !important;
1335}
1336
1337.text-muted {
1338  color: black !important;
1339}
1340
1341.text-shadow {
1342  text-shadow:0 2px 6px rgba(0, 0, 0, 0.77)!important
1343};
1344
1345.opacity-4{
1346  opacity: 0.8;
1347}
1348
1349.opacity-3{
1350  opacity: 0.6;
1351}
1352
1353.cursor-pointer{
1354  cursor: pointer;
1355}
1356
1357.invoice{
1358  background-color: #e0f1f6;
1359}
1360
1361.hr{
1362  color:#ebebeb
1363}
1364
1365.nav.nav-tabs .active{
1366    border-bottom: 3px solid #f3a840!important;
1367    color: #f3a840!important;
1368}
1369
1370.fd-content{
1371  max-width: 800px;
1372}
1373.w-85{
1374  width: 85%!important;
1375}
1376
1377@media(max-width: 576px){
1378  .px-xs-0{
1379    padding-left: 0!important;
1380    padding-right: 0!important;
1381  }
1382
1383  .py-xs-0{
1384    padding-top: 0!important;
1385    padding-bottom: 0!important;
1386  }
1387
1388}
1389
1390.input-group-text {
1391  border-radius: 0;
1392  max-width: 52px;
1393}
1394
1395.input-group-prepend-custom:after {
1396  background: transparent !important;
1397}
1398
1399.fa-lock:before {
1400  content: "�023";
1401}
1402
1403/* img */
1404
1405.img-item{
1406  top: 0;
1407  left: 0;
1408  width: 100%;
1409  height: 100%;
1410  border-radius: 4px;
1411  object-fit: contain;
1412}
1413.img-wrap{
1414  height: 0;
1415  overflow: hidden;
1416  padding-top: 65%;
1417}
1418
1419.img-link{
1420  width: 100%;
1421  height: 100%;
1422  z-index: 5;
1423}
1424
1425/* color picker */
1426.clr-picker {
1427  display: none;
1428}
1429
1430.clr-picker.clr-open {
1431  display: flex;
1432} 
1433
1434/*Form capitalize styles*/
1435.accordion-head__title,
1436.form-input-label,
1437.text-input-label,
1438.checkbox-input-label__title,
1439.accordion-head__title .accordion-multi__subtitle,
1440.accordion-head__title .accordion-multi__title,
1441.form-accordion-field-description,
1442.range-container__title,
1443.checkbox-input-label__subtitle,
1444.form-field-description,
1445.demo-blocks-list__label {
1446  text-transform:lowercase!important;
1447  display: inline-block!important;
1448}
1449
1450.accordion-head__title:first-letter,
1451.form-input-label:first-letter,
1452.text-input-label:first-letter,
1453.checkbox-input-label__title:first-letter,
1454.accordion-multi__subtitle:first-letter,
1455.accordion-multi__title:first-letter,
1456.form-accordion-field-description:first-letter,
1457.range-container__title:first-letter,
1458.checkbox-input-label__subtitle:first-letter,
1459.form-field-description:first-letter,
1460.demo-blocks-list__label:first-letter {
1461  text-transform:uppercase!important;
1462}
1463
1464/**/
1465
1466/**/
1467
1468/**/
1469</style>
1469<script v-pre type="module">const data = JSON.parse(decodeURIComponent("%7B%22_blockName%22%3A%22CommonStyles%22%2C%22Id%22%3A%22obj89b2ed113cf8407c8218a7245a28def9%22%2C%22baseTabletSize%22%3A%2216px%22%2C%22baseMobileSize%22%3A%2216px%22%2C%22primaryFontFamily%22%3A%22Lato%2C%20sans-serif%22%2C%22secondaryFontFamily%22%3A%22Lato%2C%20sans-serif%22%2C%22specialLetterSpacing%22%3A%220%22%2C%22tertiaryFontFamily%22%3A%22Vollkorn%2C%20serif%22%2C%22borderRadius%22%3A%22border-radius%3A%200%22%2C%22primaryColor%22%3A%22%23ffa301%22%2C%22hoverForPrimary%22%3A%22%23E4B768%22%2C%22primaryTextColor%22%3A%22white%22%2C%22secondaryColor%22%3A%22%2300416b%22%2C%22hoverForSecondary%22%3A%22%231B6697%22%2C%22secondaryTextColor%22%3A%22white%22%2C%22pageBackground%22%3A%22%23ffffff%22%2C%22pageColor%22%3A%22%23333333%22%2C%22children%22%3Anull%7D"));
1470</script>
1470<div id="ElegantHeader"><div id="ElegantHeaderMainMenu" class="container-fluid font-secondary text-normal px-0"><div class="header-wrapper"><div id="TopHeader" class="container-fluid"><div class="row justify-content-between top-menu-wrapper  px-lg-4 pt-lg-4 pb-lg-3"><div class="col-md-4 d-lg-block mt-lg-2 top-menu"><div class="d-flex"><div onclick="scrollToElement('CommonFooter')" class="top-menu-contact mr-4 cursor-pointer rotating"><i class="fas fa-phone-alt mr-2"></i><span >Kontakt oss</span></div><div onclick="scrollToElement('CheckDelivery')" class="top-menu-contact cursor-pointer jumping"><i class="fas fa-map-marker-alt mr-2"></i><span >VÃ¥re butikker</span></div></div></div><div class="col col-sm-7 col-md-4 mt-lg-n3 logo-container"><div class="text-lg-center"><picture ><source media="(max-width: 992px)" srcset="https://bcdn.cakeiteasy.com/1677834019634?width=1400&height=600&optimizer=image&format=webp&auto=compress"></source><img class="header-logo" src="https://bcdn.cakeiteasy.com/1677834019634?width=1400&height=600&optimizer=image&format=webp&auto=compress" alt="logo"></img></picture></div></div><div class="col-md-4 icons-width"><div class="d-flex justify-content-end align-items-center wrap-height"><div class="mt-n2 elegant__serch-bar"><div id="obj184a7936aadc4fbdbe0744930144b40a_VUE" class="search-bar">
1471	<div class="search-bar__group d-flex flex-row align-items-center"
1472		:class="{'search-bar__group_active':products.length > 0}">
1473		<svg class="search-bar__icons" width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg">
1474			<path
1475				d="M8.11556 0.609375C3.9833 0.609375 0.617188 3.97548 0.617188 8.10776C0.617188 12.24 3.9833 15.6127 8.11556 15.6127C9.88058 15.6127 11.5038 14.9941 12.7868 13.9671L15.9102 17.0889C16.0678 17.24 16.2783 17.3233 16.4966 17.3211C16.715 17.3189 16.9237 17.2312 17.0782 17.0769C17.2327 16.9227 17.3207 16.714 17.3232 16.4957C17.3257 16.2774 17.2427 16.0667 17.0918 15.9089L13.9684 12.7856C14.9963 11.5006 15.6156 9.87481 15.6156 8.10776C15.6156 3.97548 12.2478 0.609375 8.11556 0.609375ZM8.11556 2.27607C11.3471 2.27607 13.9473 4.87623 13.9473 8.10776C13.9473 11.3393 11.3471 13.946 8.11556 13.946C4.88403 13.946 2.28385 11.3393 2.28385 8.10776C2.28385 4.87623 4.88403 2.27607 8.11556 2.27607Z" />
1476		</svg>
1477		<input
1478				class="search-bar__input"
1479				:value="query"
1480				@input="query = $event.target.value"
1481				type="text"
1482				placeholder="Søk produkter"
1483				@keyup.enter="onEnter"
1484				@keyup.40="onDown"
1485				@keyup.38="onUp"
1486				@focus="isFocused = true"
1487				@blur="isFocused = false"
1488			>
1489		<svg class="spinner" v-if="loading" viewBox="0 0 66 66" xmlns="http://www.w3.org/2000/svg">
1490			<circle class="path" fill="none" stroke-width="6" stroke-linecap="round" cx="33" cy="33" r="30"></circle>
1491		</svg>
1492	</div>
1493	<ul class="search-bar__result" :class="{'search-bar__result_short': !isFocused}" 
1494		v-if="products.length > 0" v-cloak>
1495		<li class="search-bar__item d-flex align-items-center" :class="{active: currentPosition === index}"  v-for="(product, index) in products" :key="product.id">
1496			<a class="search-bar__link" @click="isFocused = false" :href="product.href">{{product.name}}</a>
1497		</li>
1498	</ul>
1499</div>
1499<script v-pre type="module">const data = JSON.parse(decodeURIComponent("%7B%22_blockName%22%3A%22ProductSearchBar%22%2C%22textColor%22%3A%22%23858585%22%2C%22backgroundColor%22%3A%22%23ffffff%22%2C%22startWidth%22%3A%22120px%22%2C%22endWidth%22%3A%22250px%22%2C%22colorPallete%22%3A%7B%22light%22%3A%22rgba(315%2C%20315%2C%20315%2C%200.3)%22%2C%22extraLight%22%3A%22rgba(315%2C%20315%2C%20315%2C%200.15)%22%2C%22dark%22%3A%22%23fafafa%22%2C%22extraDark%22%3A%22rgba(205%2C%20205%2C%20205%2C%200.8)%22%7D%2C%22hideSearch%22%3Afalse%2C%22Id%22%3A%22obj184a7936aadc4fbdbe0744930144b40a%22%2C%22children%22%3Anull%7D"));const vueAppTest = new MarsVue(
1500  'obj184a7936aadc4fbdbe0744930144b40a_VUE',
1501  {
1502    ...data,
1503    methods: [
1504      {
1505        name: 'getData',
1506        block: 'ProductSearchBar'
1507      },
1508    ]
1509  },
1510  {
1511    data: {
1512      ...data,
1513      loading: false,
1514      query: '',
1515      products: [],
1516      isFocused: false,
1517      currentPosition: 0
1518    },
1519    watch: {
1520      query: function () {
1521        this.query === '' ?
1522        this.products = [] :
1523        this.debounceGetProducts();
1524      }
1525    },
1526    created: function () {
1527      this.debounceGetProducts = debounce(this.getProducts, 150);
1528    },
1529    mounted() {
1530      document.addEventListener('click', this.hadlePageClick);
1531    },
1532    beforeDestroy() {
1533      document.removeEventListener('click', this.hadlePageClick);
1534    },
1535    methods: {
1536      hadlePageClick(evt) {
1537        if (evt.target.classList.contains('search-bar__input') || evt.target.classList.contains('search-bar__link')) {
1538        } else {
1539          this.products = [];
1540        }
1541      },
1542      onEnter() {
1543        location.href = this.products[this.currentPosition].href;
1544        this.products = 0;
1545        this.query = '';
1546      },
1547      onUp() {
1548        this.currentPosition = Math.max(0, --this.currentPosition);
1549      },
1550      onDown() {
1551        this.currentPosition = Math.min(this.products.length, ++this.currentPosition);
1552      },
1553      async getProducts() {
1554        if (!this.query || this.query.trim() === '') {
1555          this.products = [];
1556          return;
1557        }
1558
1559        this.loading = true;
1560        let res = [];
1561        this.currentPosition = 0;
1562
1563        try {
1564          res = await this.api.getData(this.query);
1565        }
1566        catch (err) {
1567        }
1568
1569        this.loading = false;
1570        this.products = res.slice(0, 5);
1571      }
1572    }
1573  }
1574);
1575</script>
1575<style>[v-cloak] { 
1576  display: none 
1577}
1578
1579.search-bar {
1580  position: relative;
1581}
1582
1583.search-bar__group {
1584  border: 1px solid #ffffff;
1585  background: #ffffff;
1586  box-shadow: none;
1587  border-radius: 5px;
1588  padding-left: 8px;
1589  padding-right: 4px;
1590  height: 40px;
1591  transition: border .5s ease;
1592  box-sizing: border-box;
1593}
1594
1595#ElegantHeader .search-bar__group,
1596#SubPageTopMenu .search-bar__group  {
1597  border: 1px solid transparent;
1598  background: #ffffff;
1599}
1600
1601.search-bar__group_active {
1602  border: 1px solid #ffffff;
1603  transition: border .5s ease;
1604}
1605
1606#ElegantHeader .search-bar__group_active,
1607#SubPageTopMenu .search-bar__group_active {
1608  border: 1px solid rgb(189, 189, 189);
1609}
1610
1611.search-bar__group:hover {
1612  border: 1px solid #ffffff;
1613  transition: border .5s ease;
1614}
1615
1616#ElegantHeader .search-bar__group:hover,
1617#SubPageTopMenu .search-bar__group:hover {
1618  border: 1px solid undefined;
1619}
1620
1621.search-bar__icons {
1622  width: 20px;
1623  height: 20px;
1624  min-width: 20px;
1625  margin: 0 6px 0 0;
1626  -o-object-fit: contain;
1627     object-fit: contain;
1628  cursor: pointer;
1629}
1630
1631.search-bar__icons path {
1632  fill: #858585;
1633}
1634
1635#SearchBarMobile .search-bar__icons path {
1636  fill: undefined;
1637}
1638
1639.search-bar__input {
1640  display: block;
1641  font-size: 0.875rem;
1642  border: none;
1643  padding: 0 6px;
1644  width: 120px;
1645  height: calc(100% - 2px);
1646  outline: none;
1647  transition: width .8s;
1648  background: transparent;
1649  color: #858585;
1650  font-weight: inherit;
1651}
1652
1653#SearchBarMobile .search-bar__input {
1654  color: undefined;
1655}
1656
1657.search-bar__input:focus,
1658.search-bar__input:active {
1659  outline: 1px solid #ffffff;
1660  width: 250px;
1661}
1662
1663#ElegantHeader .search-bar__input:focus,
1664#ElegantHeader .search-bar__input:active {
1665  outline: 1px solid #ffffff;
1666}
1667
1668#SubPageTopMenu .search-bar__input:focus,
1669#SubPageTopMenu .search-bar__input:active {
1670  outline: 1px solid #ffffff;
1671}
1672
1673.search-bar__input::-webkit-input-placeholder {
1674  font-size: 0.875rem;
1675  font-weight: normal;
1676  color: #858585;
1677  text-overflow: ellipsis;
1678}
1679
1680.search-bar__input::-moz-placeholder {
1681  font-size: 0.875rem;
1682  font-weight: normal;
1683  color: #858585;
1684  text-overflow: ellipsis;
1685}
1686
1687.search-bar__input:-ms-input-placeholder {
1688  font-size: 0.875rem;
1689  font-weight: normal;
1690  color: #858585;
1691  text-overflow: ellipsis;
1692}
1693
1694.search-bar__input::placeholder {
1695  font-size: 0.875rem;
1696  font-weight: normal;
1697  color: #858585;
1698  text-overflow: ellipsis;
1699}
1700
1701#SearchBarMobile .search-bar__input::placeholder {
1702  color: undefined;
1703}
1704
1705.search-bar__result {
1706  position: absolute;
1707  top: 40px;
1708  width: 100%;
1709  z-index: 5;
1710  font-size: 0.875rem;
1711  padding: 0;
1712  margin: -4px 0 0 0;
1713  list-style: none;
1714  background-color: #ffffff;
1715  border: 1px solid #c2c2c2;
1716  color: #333;
1717  border-top: none;
1718  border-radius: 0 0 5px 5px;
1719  box-sizing: border-box;
1720  transition: width .4s;
1721}
1722
1723.search-bar__item {
1724  margin-bottom: 0;
1725  background-color: rgba(315, 315, 315, 0.15);
1726}
1727
1728.search-bar__item .search-bar__link {
1729  padding: 0 8px;
1730  line-height: 35px;
1731}
1732
1733.search-bar__item:hover {
1734  background-color: rgba(315, 315, 315, 0.3);
1735}
1736
1737#ElegantHeader .search-bar__item:hover,
1738#ElegantHeader .search-bar__item.active {
1739  background-color: #ebebeb;
1740}
1741
1742#SubPageTopMenu .search-bar__item:hover,
1743#SubPageTopMenu .search-bar__item.active {
1744  background-color: #ebebeb;
1745}
1746
1747.search-bar__link {
1748  display: block;
1749  height: auto;
1750  width: 100%;
1751  text-overflow: ellipsis;
1752  white-space: nowrap;
1753  overflow: hidden;
1754}
1755
1756.search-bar .spinner {
1757  width: 26px;
1758  position: absolute;
1759  right: 15px;
1760  top: 50%;
1761  margin-top: -13px;
1762  z-index: 150;
1763  animation: rotator  1.4s linear infinite;
1764}
1765  
1766.search-bar .spinner .path {
1767  stroke-dasharray: 187;
1768  stroke-dashoffset: 0;
1769  stroke: #ccc;
1770  transform-origin: center;
1771  animation: dash 1.4s ease-in-out infinite;
1772}
1773
1774
1775
1776@media (max-width: 991px){
1777  .search-bar__input {
1778    width: 100%;
1779  }
1780    .search-bar__group {
1781      border: 1px solid #ffffff;
1782      transition: border .5s ease; 
1783    }
1784}
1785
1786@keyframes rotator {
1787    0% {
1788      transform: rotate(0deg);
1789    }
1790    100% {
1791      transform: rotate(270deg);
1792    }
1793  }
1794  @keyframes dash {
1795    0% {
1796      stroke-dashoffset: 187;
1797    }
1798    50% {
1799      stroke-dashoffset: 45;
1800      transform: rotate(135deg);
1801    }
1802    100% {
1803      stroke-dashoffset: 187;
1804      transform: rotate(450deg);
1805    }
1806  }</style></div><div class="elegant__serch-bar_mobile"><button class="search-icon" type="button"><svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg">
1806<path fill="#000000" d="M8.11556 0.609375C3.9833 0.609375 0.617188 3.97548 0.617188 8.10776C0.617188 12.24 3.9833 15.6127 8.11556 15.6127C9.88058 15.6127 11.5038 14.9941 12.7868 13.9671L15.9102 17.0889C16.0678 17.24 16.2783 17.3233 16.4966 17.3211C16.715 17.3189 16.9237 17.2312 17.0782 17.0769C17.2327 16.9227 17.3207 16.714 17.3232 16.4957C17.3257 16.2774 17.2427 16.0667 17.0918 15.9089L13.9684 12.7856C14.9963 11.5006 15.6156 9.87481 15.6156 8.10776C15.6156 3.97548 12.2478 0.609375 8.11556 0.609375ZM8.11556 2.27607C11.3471 2.27607 13.9473 4.87623 13.9473 8.10776C13.9473 11.3393 11.3471 13.946 8.11556 13.946C4.88403 13.946 2.28385 11.3393 2.28385 8.10776C2.28385 4.87623 4.88403 2.27607 8.11556 2.27607Z"></path></svg></button>
1806<script v-pre type="module">const data = JSON.parse(decodeURIComponent("%7B%22_blockName%22%3A%22SearchIcon%22%2C%22color%22%3A%22%23000000%22%2C%22hideSearch%22%3Afalse%2C%22Id%22%3A%22obj8bad8709fcec4bfca30112fee7a12a22%22%2C%22children%22%3Anull%7D"));const searchButton = document.querySelector('.search-icon');
1807const searchBarMobille = document.querySelector('#SearchBarMobile');
1808
1809if (searchButton) {
1810  searchButton.addEventListener('click', () => {
1811    searchBarMobille.classList.toggle('d-none');
1812  })
1813}</script>
1813<style>.search-icon {
1814  border: none;
1815  background: transparent;
1816  cursor: pointer;
1817  padding: 0;
1818  width: 24px;
1819  height: 24px;
1820}
1821
1822.search-icon__btn {
1823  width: 24px;
1824  height: 24px;
1825  margin-top: -5px;
1826}</style></div><div ><a id="Basket" href="/shop" class="d-flex ml-4 basket-container align-items-center flex-column position-relative cursor-pointer" data-basket="true"><div ><svg width="20" height="23" viewBox="0 0 20 23" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M14 5C14 2.79086 12.2091 1 10 1C7.79086 1 6 2.79086 6 5" stroke="#000000" stroke-width="1.5"></path><path d="M6 5V11" stroke="#000000" stroke-width="1.5"></path><path d="M14 5V11" stroke="#000000" stroke-width="1.5"></path><path d="M2.57287 7.96999C2.58805 7.84444 2.6946 7.75 2.82106 7.75H17.1172C17.2433 7.75 17.3496 7.84388 17.3653 7.96899L19.1153 21.969C19.1339 22.1182 19.0176 22.25 18.8672 22.25H1.1282C0.978231 22.25 0.862007 22.1189 0.88001 21.97L2.57287 7.96999Z" stroke="#000000" stroke-width="1.5"></path></svg></div><span class="mt-n1 fs-cart basket-badge-text">Handlekurv</span><div class="position-absolute basket-badge-wrapper"><div class="basket-badge text-center d-flex justify-content-center align-items-center">0</div></div></a>
1826<script v-pre type="module">const data = JSON.parse(decodeURIComponent("%7B%22_blockName%22%3A%22Basket%22%2C%22hideBasket%22%3Afalse%2C%22urls%22%3A%7B%22startNewOrderUrl%22%3A%22%2Fshop%22%2C%22deliveryUrl%22%3A%22%2Fshop%2Flevering%22%2C%22deliveryMobileUrl%22%3A%22%2Fshop%2Flevering%2Fm%22%2C%22productUrl%22%3A%22%2Fshop%2Fbestill%22%7D%2C%22bakeryId%22%3A84%2C%22isCaption%22%3Atrue%2C%22color%22%3A%22%23000000%22%2C%22counterColor%22%3A%22%23000000%22%2C%22labelColor%22%3A%22%23ffa301%22%2C%22Id%22%3A%22obj1f9132b2b4e14e0fb5cf448a01d9e5b8%22%2C%22children%22%3Anull%7D"));const { urls, bakeryId } = data;
1827const isMobile = window.matchMedia("(max-width: 992px)").matches;
1828const cartKey = 'Bakery:' + bakeryId; // should be fetched from settings
1829
1830fetch('/shop/api/store/sessions/').then((res) => res.json()).then((sessionId) => {
1831  const cartSesssionKey = sessionId;
1832  fetch("/shop/api/store/cart/", {
1833    headers: {
1834      "x-cart-key-header": cartKey,
1835      "x-session-key-header": cartSesssionKey,
1836      "x-source-header": "WEB_SHOP"
1837    }
1838  }).then((res) => res.json()).then((cart) => {
1839    if (cart.bakery_orders[0]) {
1840      $('.basket-badge').text(cart.bakery_orders[0].order_lines.reduce((acc, line) => acc + line.quantity, 0));
1841      $('[data-basket]').attr('href', isMobile ? urls.deliveryMobileUrl : urls.deliveryUrl);
1842      $('[data-basket]').toggleClass('jump-in');
1843      $('[data-basket] .basket-badge').toggleClass('jump-in');
1844    }
1845  });
1846});
1847
1848window.openOutletsMap = () => {
1849  Modal.open('/outlets-map', { noPadding: true, hideModalHeader: true, width: '70%' });
1850}</script>
1850<style>.jump-in {
1851  animation: jump 2s;
1852}
1853
1854.basket-container {
1855  width: 26px;
1856}
1857
1858.basket-badge-text {
1859  color: #000000;
1860}
1861
1862.basket-badge {
1863  font-size: 10px;
1864  letter-spacing: normal;  
1865  width: 17px; 
1866  height: 17px;
1867  border-radius: 50%;
1868  line-height: normal;
1869  color: #000000;
1870  background-color: #ffa301;
1871}
1872
1873.basket-badge-wrapper {
1874  top: 8px;
1875  right: -5px;
1876}
1877
1878.basket-container:hover {
1879  text-decoration: none!important;
1880}
1881
1882.fs-cart{
1883  font-size:11px;
1884}
1885</style></div></div></div></div><style>
1886@keyframes rotate {
1887    0% {
1888        transform: rotate(0)
1889    }
1890    30% {
1891        transform: rotate(-15deg)
1892    }
1893    40% {
1894        transform: rotate(15deg)
1895    }
1896    60% {
1897        transform: rotate(-10deg)
1898    }
1899    70% {
1900        transform: rotate(10deg)
1901    }
1902    100% {
1903        transform: rotate(0)
1904    }
1905}
1906
1907.header-logo{ 
1908  max-width:345px;
1909  margin-top: 30px;
1910}
1911
1912.top-menu-wrapper {
1913   align-items: normal; 
1914}
1915
1916@media screen and (max-width: 992px) {
1917    .top-menu-wrapper {
1918        align-items: center; 
1919    }
1920}
1921
1922.top-menu {
1923    display: none;
1924}
1925
1926.top-menu-contact {
1927    font-size: 0.9375rem;
1928    letter-spacing: 0.028125rem;
1929    color: #000000;
1930}
1931
1932#ElegantHeaderMainMenu .basket-badge-text {
1933    letter-spacing: 0.028125rem;
1934}
1935
1936#ElegantHeaderMainMenu .search-bar__input,
1937#ElegantHeaderMainMenu .search-bar__input::placeholder {
1938    letter-spacing: 0.028125rem;
1939}
1940
1941@media screen and (max-width: 992px){
1942    .icons-width {
1943        max-width: 100px;
1944    }
1945}
1946
1947@media (max-width: 992px){
1948    .header-logo{ 
1949        display: block;
1950        object-fit: contain;
1951        max-width: 100%;
1952        width: auto;
1953        height: 100%;
1954        max-height: 70px;
1955        margin-top: 0px;
1956    }
1957}
1958
1959@media (max-width: 992px){
1960    .logo-container{ 
1961        display: flex;
1962        justify-content: start;
1963        margin: auto auto auto 0;
1964    }
1965}
1966
1967
1968@media (max-width: 768px){
1969    .logo-container{ 
1970        max-width: 50%;
1971        max-height: 100%;
1972    }
1973}
1974
1975@media (max-width: 576px){
1976    .navbar{
1977        align-items: start;
1978        padding-top: 0.5rem!important;
1979    }
1980
1981    .logo-container{ 
1982        max-width: 60%;
1983    }
1984}
1985
1986.rotating:hover i {
1987  will-change: rotate;
1988  animation: rotate 1s infinite;
1989}
1990
1991.jumping:hover i {
1992  will-change: translateY;
1993  animation: jump 1s infinite;
1994}
1995
1996@media screen and (max-width: 992px){
1997    .elegant__serch-bar {
1998        display: none;
1999    }
2000}
2001
2002.elegant__serch-bar_mobile {
2003    display: none;
2004}
2005
2006
2007@media screen and (max-width: 992px){
2008    .elegant__serch-bar_mobile {
2009        display: block;
2010        margin-top: -.5rem !important;
2011    }
2012}</style>
2012<script v-pre type="module">const data = JSON.parse(decodeURIComponent("%7B%22_blockName%22%3A%22MainPageTopMenu%22%2C%22settings%22%3A%7B%22headerType%22%3A%22ElegantHeader%22%2C%22bakeryHeaderColors%22%3A%7B%22headerBgColor%22%3A%22%23ffffff%22%2C%22headerTextColor%22%3A%22%23000000%22%7D%2C%22fontSettings%22%3A%7B%22menuFontSettings%22%3A%7B%22fontSize%22%3A%2215%22%7D%2C%22buttonFontSettings%22%3A%7B%22fontFamily%22%3A%22font-secondary%22%2C%22fontSize%22%3A%2216%22%2C%22fontWeight%22%3A%22text-normal%22%2C%22letterSpacing%22%3A%220%22%2C%22textPosition%22%3A%22text-left%22%7D%7D%2C%22logo%22%3A%7B%22logoSize%22%3A%22BIG%22%2C%22desktopLogo%22%3A%22https%3A%2F%2Fmars-images.imgix.net%2F1677834019634%3Ffm%3Davif%26fit%3Dclip%26w%3D1200%26%3Dundefined%22%7D%2C%22menu%22%3A%5B%7B%22title%22%3A%22OM%20OSS%22%2C%22link%22%3A%22%2Fom-oss%22%2C%22scroll%22%3A%22TitleWithImage%22%2C%22useScroll%22%3Afalse%2C%22showAsButton%22%3Afalse%2C%22submenu%22%3A%5B%5D%7D%2C%7B%22title%22%3A%22V%C3%85RE%20SPISESTEDER%22%2C%22useScroll%22%3Afalse%2C%22showAsButton%22%3Afalse%2C%22submenu%22%3A%5B%7B%22title%22%3A%22V%C3%A5re%20bakeriutsalg%22%2C%22link%22%3A%22%2Futsalg%22%7D%2C%7B%22title%22%3A%22Tur%20Kaf%C3%A9%22%2C%22link%22%3A%22%2Ftur-kafe%22%7D%2C%7B%22title%22%3A%22Skift%22%2C%22link%22%3A%22%2Fskift%22%7D%5D%7D%2C%7B%22title%22%3A%22LEDIGE%20STILLINGER%22%2C%22link%22%3A%22%2Fledige-stillinger%22%2C%22useScroll%22%3Afalse%2C%22showAsButton%22%3Afalse%2C%22submenu%22%3A%5B%5D%7D%2C%7B%22title%22%3A%22PROFFKUNDER%22%2C%22link%22%3A%22https%3A%2F%2Fbestilling.bodobakeri.no%22%2C%22useScroll%22%3Afalse%2C%22showAsButton%22%3Afalse%2C%22submenu%22%3A%5B%5D%7D%2C%7B%22title%22%3A%22KONTAKT%20OSS%22%2C%22scroll%22%3A%22CommonFooter%22%2C%22useScroll%22%3Atrue%2C%22showAsButton%22%3Anull%2C%22submenu%22%3A%5B%5D%7D%5D%2C%22products%22%3A%5B%5D%2C%22headerStoreAndContactBtn%22%3A%7B%22contactUsLabel%22%3A%22Kontakt%20oss%22%2C%22ourStoresLabel%22%3A%22V%C3%A5re%20butikker%22%7D%2C%22headerShopBtn%22%3A%7B%22hideHeaderShopBtn%22%3Afalse%2C%22title%22%3A%22NETTBUTIKK%22%2C%22link%22%3A%22%2Fshop%22%2C%22customColor%22%3A%22%23bf9a56%22%2C%22customTextColor%22%3A%22%23ffffff%22%2C%22useCustomColor%22%3Atrue%2C%22useCustomTextColor%22%3Afalse%7D%2C%22banner%22%3A%7B%22enabled%22%3Afalse%2C%22text%22%3A%22Alle%20v%C3%A5re%20butikker%20har%20normale%20%C3%A5pningstider%2C%20men%20vi%20har%20ingen%20bordservering%20p.g.a.%20Covid%2019.%20Bare%20takeaway.%22%2C%22textLink%22%3A%22See%20%C3%A5pningstider%22%2C%22link%22%3A%22%2F%22%7D%2C%22hideBasket%22%3Afalse%2C%22hideSearch%22%3Afalse%7D%2C%22bakery%22%3A%7B%22name%22%3A%22Bod%C3%B8%20bakeri%22%2C%22primaryColor%22%3A%22%2335bcd0%22%2C%22cakeiteasyId%22%3A84%2C%22shopKey%22%3Anull%2C%22siteUrl%22%3A%22https%3A%2F%2Fbod-bakeri.cakeiteasy.com%22%2C%22urls%22%3A%7B%22startNewOrderUrl%22%3A%22%2Fshop%22%2C%22deliveryUrl%22%3A%22%2Fshop%2Flevering%22%2C%22deliveryMobileUrl%22%3A%22%2Fshop%2Flevering%2Fm%22%2C%22productUrl%22%3A%22%2Fshop%2Fbestill%22%7D%2C%22productsContent%22%3A%7B%22currency%22%3A%22kr%22%7D%2C%22theme%22%3A%22rade-bakeri%22%7D%2C%22Id%22%3A%22obj88f10b51fe5b4764bb31ed3d41daacc3%22%2C%22fontSize%22%3A%220.9375%22%2C%22letterSpacing%22%3A%220.028125%22%2C%22headerTextColor%22%3A%22%23000000%22%2C%22children%22%3Anull%2C%22desktopLogo%22%3A%7B%22logoSize%22%3A%22BIG%22%2C%22desktopLogo%22%3A%22https%3A%2F%2Fmars-images.imgix.net%2F1677834019634%3Ffm%3Davif%26fit%3Dclip%26w%3D1200%26%3Dundefined%22%7D%7D"));
2013</script>
2013</div><div class="d-flex justify-content-center align-items-center wrap-height pb-4"><div id="objb7e045bbcfda4acca622079286b2e3c6" class="d-flex justify-content-center"><nav class="navbar navbar-expand-lg navbar-light py-1 pt-0 px-0 align-items-center"><button onclick="$('#MobileMenu').removeClass('menu-hidden')" class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"><span class="fs-5 navbar-toggler-hamburger"><span class="line"></span></span></button><div class="collapse navbar-collapse" id="navbarSupportedContent"><ul class="navbar-nav mr-auto"><li class="nav-item cursor-pointer"><a class="nav-link animated-underline" href="/om-oss">OM OSS</a></li><li class="nav-item underline dropdown" onclick=""><a class="nav-link dropdown-toggle cursor-pointer" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">VÅRE SPISESTEDER <span class="ml-2 fas fa-angle-down"></span></a><div class="dropdown-menu p-0 overflow-hidden cursor-pointer" aria-labelledby="navbarDropdown"><a class="dropdown-item cursor-pointer" href="/utsalg">Våre bakeriutsalg</a><div class="dropdown-divider m-0 p-0"></div><a class="dropdown-item cursor-pointer" href="/tur-kafe">Tur Kafé</a><div class="dropdown-divider m-0 p-0"></div><a class="dropdown-item cursor-pointer" href="/skift">Skift</a></div></li><li class="nav-item cursor-pointer"><a class="nav-link animated-underline" href="/ledige-stillinger">LEDIGE STILLINGER</a></li><li class="nav-item cursor-pointer"><a class="nav-link animated-underline" href="https://bestilling.bodobakeri.no">PROFFKUNDER</a></li><li class="nav-item  cursor-pointer " onclick="scrollToElement('CommonFooter')"><a class="nav-link animated-underline">KONTAKT OSS</a></li><li class="nav-item d-flex align-items-center px-3 elegant-header__shop font-secondary text-normal"><a class="btn btn-sm btn-outline-primary  text-normal" href="/shop">NETTBUTIKK</a></li></ul></div></nav><style>#objb7e045bbcfda4acca622079286b2e3c6 .dropdown-item:hover{
2014  background:#f2e1b8!important;
2015}
2016
2017.nav-item .btn {
2018  font-size: var(--font-default);
2019}
2020
2021.navbar-toggler-hamburger {
2022  display: inline-block;
2023  width: 24px;
2024  height: 18px;
2025  position: relative;
2026}
2027
2028.navbar-toggler-hamburger::before,
2029.navbar-toggler-hamburger::after,
2030.navbar-toggler-hamburger .line {
2031  content: '';
2032  display: block;
2033  background-color: #000000;
2034  height: 2px;
2035  width: 100%;
2036  position: absolute;
2037  left: 0;
2038}
2039
2040.navbar-toggler-hamburger::before {
2041  top: 0;
2042}
2043
2044.navbar-toggler-hamburger .line {
2045  top: 50%;
2046  transform: translateY(-50%);
2047}
2048
2049.navbar-toggler-hamburger::after {
2050  bottom: 0;
2051}
2052
2053
2054.animated-underline {
2055  position: relative;
2056  padding: 0.2em 0;
2057}
2058
2059.animated-underline::after {
2060  content: '';
2061  position: absolute;
2062  bottom: 15px;
2063  left: 10%;
2064  right: 10%;
2065  height: 2px;
2066  background-color: var(--color-primary);
2067  opacity: 0;
2068  transition: opacity 300ms, transform 300ms;
2069}
2070
2071.animated-underline:hover::after,
2072.animated-underline:focus::after {
2073  opacity: 1;
2074  transform: translate3d(0, 0.2em, 0);
2075}
2076
2077.elegant-header__shop,
2078.nav-item .btn {
2079  font-size: 1rem;
2080  letter-spacing: 0rem;
2081}
2082
2083.nav-link {
2084  color: #000000 !important;
2085}
2086
2087.elegant-header__shop .btn-outline-primary-contrast{
2088  border: 2px solid #000000!important;
2089  color:#000000!important;
2090}
2091
2092.elegant-header__shop .btn-outline-primary-contrast:hover{
2093  background-color: #ffffff!important;
2094  color:undefined!important;
2095}</style></div></div></div><div id="SearchBarMobile" class="d-none container-fluid mb-3"><div id="obj27eb1ef24a174feaaf42b933d40fca36_VUE" class="search-bar">
2096	<div class="search-bar__group d-flex flex-row align-items-center"
2097		:class="{'search-bar__group_active':products.length > 0}">
2098		<svg class="search-bar__icons" width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg">
2099			<path
2100				d="M8.11556 0.609375C3.9833 0.609375 0.617188 3.97548 0.617188 8.10776C0.617188 12.24 3.9833 15.6127 8.11556 15.6127C9.88058 15.6127 11.5038 14.9941 12.7868 13.9671L15.9102 17.0889C16.0678 17.24 16.2783 17.3233 16.4966 17.3211C16.715 17.3189 16.9237 17.2312 17.0782 17.0769C17.2327 16.9227 17.3207 16.714 17.3232 16.4957C17.3257 16.2774 17.2427 16.0667 17.0918 15.9089L13.9684 12.7856C14.9963 11.5006 15.6156 9.87481 15.6156 8.10776C15.6156 3.97548 12.2478 0.609375 8.11556 0.609375ZM8.11556 2.27607C11.3471 2.27607 13.9473 4.87623 13.9473 8.10776C13.9473 11.3393 11.3471 13.946 8.11556 13.946C4.88403 13.946 2.28385 11.3393 2.28385 8.10776C2.28385 4.87623 4.88403 2.27607 8.11556 2.27607Z" />
2101		</svg>
2102		<input
2103				class="search-bar__input"
2104				:value="query"
2105				@input="query = $event.target.value"
2106				type="text"
2107				placeholder="Søk produkter"
2108				@keyup.enter="onEnter"
2109				@keyup.40="onDown"
2110				@keyup.38="onUp"
2111				@focus="isFocused = true"
2112				@blur="isFocused = false"
2113			>
2114		<svg class="spinner" v-if="loading" viewBox="0 0 66 66" xmlns="http://www.w3.org/2000/svg">
2115			<circle class="path" fill="none" stroke-width="6" stroke-linecap="round" cx="33" cy="33" r="30"></circle>
2116		</svg>
2117	</div>
2118	<ul class="search-bar__result" :class="{'search-bar__result_short': !isFocused}" 
2119		v-if="products.length > 0" v-cloak>
2120		<li class="search-bar__item d-flex align-items-center" :class="{active: currentPosition === index}"  v-for="(product, index) in products" :key="product.id">
2121			<a class="search-bar__link" @click="isFocused = false" :href="product.href">{{product.name}}</a>
2122		</li>
2123	</ul>
2124</div>
2124<script v-pre type="module">const data = JSON.parse(decodeURIComponent("%7B%22_blockName%22%3A%22ProductSearchBar%22%2C%22textColor%22%3A%22%23858585%22%2C%22customColor%22%3A%22%23c2c2c2%22%2C%22backgroundColor%22%3A%22%23ffffff%22%2C%22startWidth%22%3A%22120px%22%2C%22endWidth%22%3A%22250px%22%2C%22colorPallete%22%3A%7B%22light%22%3A%22rgba(315%2C%20315%2C%20315%2C%200.3)%22%2C%22extraLight%22%3A%22rgba(315%2C%20315%2C%20315%2C%200.15)%22%2C%22dark%22%3A%22%23fafafa%22%2C%22extraDark%22%3A%22rgba(205%2C%20205%2C%20205%2C%200.8)%22%7D%2C%22hideSearch%22%3Afalse%2C%22Id%22%3A%22obj27eb1ef24a174feaaf42b933d40fca36%22%2C%22children%22%3Anull%7D"));const vueAppTest = new MarsVue(
2125  'obj27eb1ef24a174feaaf42b933d40fca36_VUE',
2126  {
2127    ...data,
2128    methods: [
2129      {
2130        name: 'getData',
2131        block: 'ProductSearchBar'
2132      },
2133    ]
2134  },
2135  {
2136    data: {
2137      ...data,
2138      loading: false,
2139      query: '',
2140      products: [],
2141      isFocused: false,
2142      currentPosition: 0
2143    },
2144    watch: {
2145      query: function () {
2146        this.query === '' ?
2147        this.products = [] :
2148        this.debounceGetProducts();
2149      }
2150    },
2151    created: function () {
2152      this.debounceGetProducts = debounce(this.getProducts, 150);
2153    },
2154    mounted() {
2155      document.addEventListener('click', this.hadlePageClick);
2156    },
2157    beforeDestroy() {
2158      document.removeEventListener('click', this.hadlePageClick);
2159    },
2160    methods: {
2161      hadlePageClick(evt) {
2162        if (evt.target.classList.contains('search-bar__input') || evt.target.classList.contains('search-bar__link')) {
2163        } else {
2164          this.products = [];
2165        }
2166      },
2167      onEnter() {
2168        location.href = this.products[this.currentPosition].href;
2169        this.products = 0;
2170        this.query = '';
2171      },
2172      onUp() {
2173        this.currentPosition = Math.max(0, --this.currentPosition);
2174      },
2175      onDown() {
2176        this.currentPosition = Math.min(this.products.length, ++this.currentPosition);
2177      },
2178      async getProducts() {
2179        if (!this.query || this.query.trim() === '') {
2180          this.products = [];
2181          return;
2182        }
2183
2184        this.loading = true;
2185        let res = [];
2186        this.currentPosition = 0;
2187
2188        try {
2189          res = await this.api.getData(this.query);
2190        }
2191        catch (err) {
2192        }
2193
2194        this.loading = false;
2195        this.products = res.slice(0, 5);
2196      }
2197    }
2198  }
2199);
2200</script>
2200<style>[v-cloak] { 
2201  display: none 
2202}
2203
2204.search-bar {
2205  position: relative;
2206}
2207
2208.search-bar__group {
2209  border: 1px solid #ffffff;
2210  background: #ffffff;
2211  box-shadow: none;
2212  border-radius: 5px;
2213  padding-left: 8px;
2214  padding-right: 4px;
2215  height: 40px;
2216  transition: border .5s ease;
2217  box-sizing: border-box;
2218}
2219
2220#ElegantHeader .search-bar__group,
2221#SubPageTopMenu .search-bar__group  {
2222  border: 1px solid transparent;
2223  background: #ffffff;
2224}
2225
2226.search-bar__group_active {
2227  border: 1px solid #ffffff;
2228  transition: border .5s ease;
2229}
2230
2231#ElegantHeader .search-bar__group_active,
2232#SubPageTopMenu .search-bar__group_active {
2233  border: 1px solid rgb(189, 189, 189);
2234}
2235
2236.search-bar__group:hover {
2237  border: 1px solid #ffffff;
2238  transition: border .5s ease;
2239}
2240
2241#ElegantHeader .search-bar__group:hover,
2242#SubPageTopMenu .search-bar__group:hover {
2243  border: 1px solid #c2c2c2;
2244}
2245
2246.search-bar__icons {
2247  width: 20px;
2248  height: 20px;
2249  min-width: 20px;
2250  margin: 0 6px 0 0;
2251  -o-object-fit: contain;
2252     object-fit: contain;
2253  cursor: pointer;
2254}
2255
2256.search-bar__icons path {
2257  fill: #858585;
2258}
2259
2260#SearchBarMobile .search-bar__icons path {
2261  fill: undefined;
2262}
2263
2264.search-bar__input {
2265  display: block;
2266  font-size: 0.875rem;
2267  border: none;
2268  padding: 0 6px;
2269  width: 120px;
2270  height: calc(100% - 2px);
2271  outline: none;
2272  transition: width .8s;
2273  background: transparent;
2274  color: #858585;
2275  font-weight: inherit;
2276}
2277
2278#SearchBarMobile .search-bar__input {
2279  color: undefined;
2280}
2281
2282.search-bar__input:focus,
2283.search-bar__input:active {
2284  outline: 1px solid #ffffff;
2285  width: 250px;
2286}
2287
2288#ElegantHeader .search-bar__input:focus,
2289#ElegantHeader .search-bar__input:active {
2290  outline: 1px solid #ffffff;
2291}
2292
2293#SubPageTopMenu .search-bar__input:focus,
2294#SubPageTopMenu .search-bar__input:active {
2295  outline: 1px solid #ffffff;
2296}
2297
2298.search-bar__input::-webkit-input-placeholder {
2299  font-size: 0.875rem;
2300  font-weight: normal;
2301  color: #858585;
2302  text-overflow: ellipsis;
2303}
2304
2305.search-bar__input::-moz-placeholder {
2306  font-size: 0.875rem;
2307  font-weight: normal;
2308  color: #858585;
2309  text-overflow: ellipsis;
2310}
2311
2312.search-bar__input:-ms-input-placeholder {
2313  font-size: 0.875rem;
2314  font-weight: normal;
2315  color: #858585;
2316  text-overflow: ellipsis;
2317}
2318
2319.search-bar__input::placeholder {
2320  font-size: 0.875rem;
2321  font-weight: normal;
2322  color: #858585;
2323  text-overflow: ellipsis;
2324}
2325
2326#SearchBarMobile .search-bar__input::placeholder {
2327  color: undefined;
2328}
2329
2330.search-bar__result {
2331  position: absolute;
2332  top: 40px;
2333  width: 100%;
2334  z-index: 5;
2335  font-size: 0.875rem;
2336  padding: 0;
2337  margin: -4px 0 0 0;
2338  list-style: none;
2339  background-color: #ffffff;
2340  border: 1px solid #c2c2c2;
2341  color: #333;
2342  border-top: none;
2343  border-radius: 0 0 5px 5px;
2344  box-sizing: border-box;
2345  transition: width .4s;
2346}
2347
2348.search-bar__item {
2349  margin-bottom: 0;
2350  background-color: rgba(315, 315, 315, 0.15);
2351}
2352
2353.search-bar__item .search-bar__link {
2354  padding: 0 8px;
2355  line-height: 35px;
2356}
2357
2358.search-bar__item:hover {
2359  background-color: rgba(315, 315, 315, 0.3);
2360}
2361
2362#ElegantHeader .search-bar__item:hover,
2363#ElegantHeader .search-bar__item.active {
2364  background-color: #ebebeb;
2365}
2366
2367#SubPageTopMenu .search-bar__item:hover,
2368#SubPageTopMenu .search-bar__item.active {
2369  background-color: #ebebeb;
2370}
2371
2372.search-bar__link {
2373  display: block;
2374  height: auto;
2375  width: 100%;
2376  text-overflow: ellipsis;
2377  white-space: nowrap;
2378  overflow: hidden;
2379}
2380
2381.search-bar .spinner {
2382  width: 26px;
2383  position: absolute;
2384  right: 15px;
2385  top: 50%;
2386  margin-top: -13px;
2387  z-index: 150;
2388  animation: rotator  1.4s linear infinite;
2389}
2390  
2391.search-bar .spinner .path {
2392  stroke-dasharray: 187;
2393  stroke-dashoffset: 0;
2394  stroke: #ccc;
2395  transform-origin: center;
2396  animation: dash 1.4s ease-in-out infinite;
2397}
2398
2399
2400
2401@media (max-width: 991px){
2402  .search-bar__input {
2403    width: 100%;
2404  }
2405    .search-bar__group {
2406      border: 1px solid #ffffff;
2407      transition: border .5s ease; 
2408    }
2409}
2410
2411@keyframes rotator {
2412    0% {
2413      transform: rotate(0deg);
2414    }
2415    100% {
2416      transform: rotate(270deg);
2417    }
2418  }
2419  @keyframes dash {
2420    0% {
2421      stroke-dashoffset: 187;
2422    }
2423    50% {
2424      stroke-dashoffset: 45;
2425      transform: rotate(135deg);
2426    }
2427    100% {
2428      stroke-dashoffset: 187;
2429      transform: rotate(450deg);
2430    }
2431  }</style></div><style>@media screen and (max-width: 992px) {
2432  .header-wrapper {
2433    display: flex;
2434    align-items: center;
2435    height: 100px;
2436  }
2437}
2438
2439@media screen and (min-width: 992px) {
2440  .wrap-height {
2441    height: 55px; 
2442  }
2443}
2444
2445.nav-link {
2446  font-size: 0.9375rem;
2447  letter-spacing: 0.028125rem;
2448}</style></div><div class="elegant-mobile-menu position-fixed bg-white menu-hidden position-absolute font-secondary top-0 start-0" style=" overflow-y: 
2448scroll;" id="MobileMenu"><div class="position-relative"><div class="cursor-pointer font-subtitle d-flex justify-content-end exit"><div class="px-4 mx-3 py-4 mobile-menu__btn_type_close"><img src="https://bcdn.cakeiteasy.com/close.png?optimizer=image&width=20&height=20" alt="exit"></img></div></div><li class="fs-2 py-4 text-center bg-secondary text-white" style="color: #ffffff !important"><a href="/shop"><i class="fas fa-shopping-cart mr-2"></i><span >NETTBUTIKK</span></a></li><ul class="list-unstyled text-uppercase"><li class="px-5 py-4 menu-item text-center m-0"><a href="/om-oss" class="fs-2">OM OSS</a></li><li class="px-5 py-4 menu-item m-0"><a href="undefined" class="fs-2 text-center">VÅRE SPISESTEDER</a><ul class="list-unstyled mt-4"><li class="mb-4 fs-3  pb-2"><a class="d-block" onclick="event.stopPropagation()" href="/utsalg">Våre bakeriutsalg</a></li><li class="mb-4 fs-3  pb-2"><a class="d-block" onclick="event.stopPropagation()" href="/tur-kafe">Tur Kafé</a></li><li class=" fs-3  pb-2"><a class="d-block" onclick="event.stopPropagation()" href="/skift">Skift</a></li></ul></li><li class="px-5 py-4 menu-item text-center m-0"><a href="/ledige-stillinger" class="fs-2">LEDIGE STILLINGER</a></li><li class="px-5 py-4 menu-item text-center m-0"><a href="https://bestilling.bodobakeri.no" class="fs-2">PROFFKUNDER</a></li><li class="px-5 py-4 menu-item text-center m-0 mobile-menu__link_action-scroll" onclick="scrollToElement('CommonFooter')"><div class="fs-2 text-center">KONTAKT OSS</div></li><li onclick="scrollToElement('CheckDelivery')" class="mobile-menu__link_action-scroll px-5 py-4 menu-item text-center m-0"><div class="fs-2 text-center">Våre butikker</div></li><li onclick="scrollToElement('CommonFooter')" class="mobile-menu__link_action-scroll px-5 py-4 menu-item text-center m-0"><div class="fs-2 text-center">Kontakt oss</div></li></ul></div><style>.elegant-mobile-menu {
2449  z-index: 10;
2450  height: 100vh;
2451  width: 100vw;
2452}
2453
2454.menu-item{
2455  border-style: solid;
2456  border-color: #ebebeb;
2457  border-width: 1px 0 0 0;
2458  padding: 1.3rem 1rem;
2459  text-align: center;
2460  cursor: pointer;
2461  text-transform: uppercase;
2462}
2463
2464.menu-item:first-child {
2465  border-top: none;
2466}
2467
2468
2469.navigation-mobile__link_type_shop {
2470  display: flex;
2471} 
2472
2473
2474.navigation-mobile__link {
2475  display: block;
2476  color: #333;
2477  text-transform: uppercase;
2478  font-size: 1.5rem;
2479  width: 100%;
2480  text-align: center;
2481}
2482
2483.navigation-mobile__link:hover {
2484  text-decoration: none;
2485  color: #333;
2486}
2487
2488.menu-hidden {
2489  height: 0px !important;
2490  display: none;
2491}
2492</style>
2492<script v-pre type="module">const data = JSON.parse(decodeURIComponent("%7B%22_blockName%22%3A%22MobileMenu%22%2C%22menu%22%3A%5B%7B%22title%22%3A%22OM%20OSS%22%2C%22link%22%3A%22%2Fom-oss%22%2C%22scroll%22%3A%22TitleWithImage%22%2C%22useScroll%22%3Afalse%2C%22showAsButton%22%3Afalse%2C%22submenu%22%3A%5B%5D%7D%2C%7B%22title%22%3A%22V%C3%85RE%20SPISESTEDER%22%2C%22useScroll%22%3Afalse%2C%22showAsButton%22%3Afalse%2C%22submenu%22%3A%5B%7B%22title%22%3A%22V%C3%A5re%20bakeriutsalg%22%2C%22link%22%3A%22%2Futsalg%22%7D%2C%7B%22title%22%3A%22Tur%20Kaf%C3%A9%22%2C%22link%22%3A%22%2Ftur-kafe%22%7D%2C%7B%22title%22%3A%22Skift%22%2C%22link%22%3A%22%2Fskift%22%7D%5D%7D%2C%7B%22title%22%3A%22LEDIGE%20STILLINGER%22%2C%22link%22%3A%22%2Fledige-stillinger%22%2C%22useScroll%22%3Afalse%2C%22showAsButton%22%3Afalse%2C%22submenu%22%3A%5B%5D%7D%2C%7B%22title%22%3A%22PROFFKUNDER%22%2C%22link%22%3A%22https%3A%2F%2Fbestilling.bodobakeri.no%22%2C%22useScroll%22%3Afalse%2C%22showAsButton%22%3Afalse%2C%22submenu%22%3A%5B%5D%7D%2C%7B%22title%22%3A%22KONTAKT%20OSS%22%2C%22scroll%22%3A%22CommonFooter%22%2C%22useScroll%22%3Atrue%2C%22showAsButton%22%3Anull%2C%22submenu%22%3A%5B%5D%7D%5D%2C%22contactUsLabel%22%3A%22Kontakt%20oss%22%2C%22ourStoresLabel%22%3A%22V%C3%A5re%20butikker%22%2C%22Id%22%3A%22obj49d2242b800a49948b42c4bf4ad97323%22%2C%22children%22%3Anull%7D"));const closeMenuBtn = document.querySelector('.mobile-menu__btn_type_close');
2493const menuElement = document.querySelector('#MobileMenu');
2494const menuLinks = menuElement.querySelectorAll('.mobile-menu__link_action-scroll');
2495
2496const handleCloseMenuBtnClick = () => {
2497/*menuElement.classList.add('d-none');*/
2498  menuElement.classList.add('menu-hidden');
2499};
2500
2501closeMenuBtn.addEventListener('click', handleCloseMenuBtnClick);
2502
2503menuLinks.forEach((link) => {
2504  link.addEventListener('click', handleCloseMenuBtnClick);
2505});</script>
2505</div><style>@keyframes jump {
2506    0% {
2507        transform: translateY(0)
2508    }
2509    20% {
2510        transform: translateY(0px)
2511    }
2512    40% {
2513        transform: translateY(-8px)
2514    }
2515    60% {
2516        transform: translateY(0px)
2517    }
2518    80% {
2519        transform: translateY(-2px)
2520    }
2521    100% {
2522        transform: translateY(0)
2523    }
2524}
2525
2526#ElegantHeader {
2527  background: #ffffff;
2528}</style>
2528<script v-pre type="module">const data = JSON.parse(decodeURIComponent("%7B%22_blockName%22%3A%22ElegantHeader%22%2C%22Id%22%3A%22obj7b3b5eebb9964940b4c35eb65767fb22%22%2C%22headerBgColor%22%3A%22%23ffffff%22%2C%22children%22%3Anull%7D"));new MarsBlock(`ElegantHeader`, data, {});
2529</script>
2529</div><div class="content"><div id="MasterPage" class="" data-master-content><div id="Spacer_obj1676884783013" data-test-id="Spacer" class="Spacer_obj1676884783013 autoSpacer"><style>.Spacer_obj1676884783013.spacer {
2530  --padding: undefined;
2531  --mobile-padding: undefined;
2532  padding: var(--padding) 0 0;
2533}
2534
2535@media (max-width: 992px) {
2536  .Spacer_obj1676884783013.spacer {
2537    padding: calc(var(--padding) * 0.9) 0 0;
2538  }
2539}
2540
2541@media (max-width: 768px) {
2542  .Spacer_obj1676884783013.spacer {
2543    padding: var(--mobile-padding) 0 0;
2544  }
2545}
2546
2547@media (max-width: 425px) {
2548  .Spacer_obj1676884783013.spacer {
2549    padding: var(--mobile-padding) 0 0;
2550  }
2551}
2552
2553
2554.Spacer_obj1676884783013.autoSpacer {
2555  --auto-padding: 15px;
2556  padding: var(--auto-padding) 0 0;
2557}
2558
2559@media (max-width: 992px) {
2560  .Spacer_obj1676884783013.autoSpacer {
2561    padding: calc(var(--auto-padding) * 0.9) 0 0;
2562  }
2563}
2564
2565@media (max-width: 768px) {
2566  .Spacer_obj1676884783013.autoSpacer {
2567    padding: calc(var(--auto-padding) * 0.7) 0 0;
2568  }
2569}
2570
2571@media (max-width: 425px) {
2572  .Spacer_obj1676884783013.autoSpacer {
2573    padding: calc(var(--auto-padding) * 0.5) 0 0;
2574  }
2575}</style></div><style>.hero-btn-custom-HeroBannerV2_obj1650879662646 {
2576  color: #ffffff;
2577  background-color: undefined;
2578  font-size: 1.125rem;
2579  padding: .42rem 4.65rem;
2580}
2581
2582.hero-btn-custom-HeroBannerV2_obj1650879662646:hover {
2583  background-color: #000000;
2584  color: #ffffff !important;
2585}
2586
2587.cta-banner {
2588  position: relative;
2589  height: 500px;
2590  overflow: hidden;
2591}
2592
2593.cta-banner::after,
2594.swiper-slide::after {
2595  content: '';
2596  background: var(--after-background);
2597  opacity: var(--after-opacity, 0);
2598  position: absolute;
2599  display: var(--after-display, block);
2600  left:0;
2601  top:0;
2602  width: 100%;
2603  height: 100%;
2604}
2605
2606@media screen and (max-width: 768px) {
2607  .cta-banner {
2608    min-height: 400px;
2609  }
2610}
2611
2612@media only screen and (max-width: 768px) {
2613  .cta-banner__img,
2614  .cta-banner.banner-size-big {
2615    min-height: 500px;
2616  }
2617}
2618
2619@media only screen and (max-width: 425px) {
2620  #HeroBannerV2_obj1650879662646 .cta-banner__img,
2621  #HeroBannerV2_obj1650879662646 .cta-banner.banner-size-big {
2622    min-height: 400px;
2623  }
2624}
2625
2626@media (min-width: 1040px) {
2627  #HeroBannerV2_obj1650879662646 .cta-banner__img,
2628  #HeroBannerV2_obj1650879662646 .cta-banner {
2629    min-height: 500px;
2630  }
2631  
2632  #HeroBannerV2_obj1650879662646 .cta-banner.banner-size-big {
2633    min-height: 500px;
2634  }
2635}
2636
2637.cta-banner__bg-img {
2638  height: 100%;
2639  width: 100%;
2640}
2641
2642.cta-banner__img {
2643  display: block;
2644  height: 100%;
2645  object-fit: cover;
2646  object-position: center;
2647  width: 100%;
2648}
2649
2650.cta-banner__content {
2651  position: absolute;
2652  top: 0;
2653  z-index: 3;
2654  height: 100%;
2655}
2656
2657@media (min-width: 768px) {
2658  .cta-banner__content {
2659    max-width: 1200px;
2660  }
2661}
2662
2663@media (max-width: 767px) {
2664  .cta-banner__content {
2665    padding: 0 15px;
2666  }
2667}
2668
2669.cta-banner__title {
2670  color: #fff;
2671  text-align: center;
2672  z-index: 3;
2673  margin-bottom: 8px;
2674  letter-spacing: normal;
2675  white-space: pre-line;
2676}
2677
2678#HeroBannerV2_obj1650879662646 .cta-banner__title {
2679  font-size: 3.75rem;
2680  letter-spacing: 0rem;
2681  line-height: 1.2;
2682}
2683
2684@media (max-width: 768px) {
2685  #HeroBannerV2_obj1650879662646 .cta-banner__title {
2686      font-size: 3.75rem;
2687      line-height: 1.166;
2688    }
2689}
2690
2691@media (max-width: 470px) {
2692  #HeroBannerV2_obj1650879662646 .cta-banner__title {
2693      font-size: 9vmin;
2694      /* font-size: clamp(16px, 3vw, 40px); */
2695    }
2696}
2697
2698.cta-banner__subtitle {
2699  color: #fff;
2700  text-align: center;
2701  margin-bottom: 16px;
2702  z-index: 3;
2703  letter-spacing: normal;
2704  white-space: pre-line;
2705}
2706
2707#HeroBannerV2_obj1650879662646 .cta-banner__subtitle {
2708  font-size: 2.625rem;
2709  letter-spacing: 0rem;
2710  line-height: 1.2;
2711}
2712
2713@media (max-width: 768px){
2714  #HeroBannerV2_obj1650879662646 .cta-banner__subtitle {
2715    font-size: 2.625rem;
2716    line-height: 1.166;
2717  }
2718}
2719
2720.cta-banner__btn {
2721  padding: 0.55rem 39px !important;
2722  margin-top: 24px;
2723  z-index: 2;
2724  cursor: pointer;
2725  text-shadow: none;
2726  letter-spacing: normal;
2727}
2728
2729#HeroBannerV2_obj1650879662646 .cta-banner__btn {
2730  font-size: undefinedrem !important;
2731  letter-spacing: undefinedrem !important;
2732}
2733
2734@media (max-width: 767px){
2735.cta-banner__btn {
2736    margin-top: 16px;
2737    margin-bottom: 0px;
2738  }
2739}
2740
2741@media only screen and (max-width: 991px) {
2742  .cta-banner__btn {
2743    margin-top: 1.5rem;
2744  }
2745}
2746
2747@media (max-width: 767px){
2748  .cta-banner__btn {
2749    margin-top: 16px;
2750  }
2751}
2752
2753/* Slider styles */
2754
2755.slider_first .swiper-container {
2756    width: 100%;
2757    color: white;
2758    margin-left: auto;
2759    margin-right: auto;
2760}
2761
2762.slider_first {
2763    position: relative;
2764    margin: 0;
2765background-color: transparent;
2766    overflow: hidden;
2767    isolation: isolate;
2768}
2769
2770.slider_first .swiper-slide {
2771  background-repeat: no-repeat !important;
2772  background-size: cover !important;
2773}
2774
2775.carousel-img {
2776    width: 100%;
2777    height: 30vh;
2778    border-radius: 20px;
2779    background-size: cover!important;
2780    background-position: center!important;
2781    background-repeat: no-repeat !important;
2782}
2783
2784.head-carousel__title {
2785  color: #ffffff;
2786  line-height: var(--heading-line-height);
2787  text-align: center;
2788  letter-spacing: normal;
2789  white-space: pre-line;
2790  font-synthesis: none;
2791}
2792
2793#HeroBannerV2_obj1650879662646 .head-carousel__title {
2794  font-size: 3.75rem;
2795  letter-spacing: 0rem;
2796  line-height: 1.2;
2797}
2798
2799@media (max-width: 768px){
2800  #HeroBannerV2_obj1650879662646 .head-carousel__title {
2801    font-size: 3.75rem;
2802    line-height: 1.166;
2803  }
2804}
2805
2806@media (max-width: 470px){
2807  #HeroBannerV2_obj1650879662646 .head-carousel__title {
2808    font-size: 9vmin;
2809  }
2810}
2811
2812.head-carousel__subtitle {
2813  line-height: 1.2;
2814  text-align: center;
2815  letter-spacing: normal;
2816  margin-bottom: 1rem;
2817  white-space: pre-line;
2818  font-synthesis: none;
2819}
2820
2821#HeroBannerV2_obj1650879662646 .head-carousel__subtitle {
2822  font-size: 2.625rem;
2823  letter-spacing: 0rem;
2824}
2825
2826@media (max-width: 768px){
2827  #HeroBannerV2_obj1650879662646 .head-carousel__subtitle {
2828    font-size: 2.625rem;
2829    margin-bottom: .5rem;
2830    line-height: 1.166;
2831  }
2832}
2833
2834.head-carousel__text-wrapper {
2835    position: relative;     
2836}
2837
2838@media screen and (max-width: 640px) {
2839    .head-carousel__text-wrapper{
2840        justify-content: center !important;
2841        align-items: flex-end !important;
2842    }
2843}
2844
2845.slider-progress-bar-container {
2846    padding-bottom: 15px;
2847    position: absolute;
2848    bottom: 15px;
2849    width: auto;
2850}
2851
2852.swiper-buttons-container {
2853  position: absolute;
2854  bottom: 15px;
2855  right: 0px;
2856  width: 109px;
2857  z-index: 1;
2858}
2859
2860.swiper-pagination {
2861    right: 0;
2862    position: static !important;
2863
2864}
2865
2866.swiper-pagination .swiper-pagination-bullet:last-child {
2867    margin-right: 0px;
2868}
2869
2870.swiper-pagination .swiper-pagination-bullet {
2871    opacity: 0.7;
2872}
2873
2874.pagination-wrapper__btn-wrapper {
2875    width:  100%;
2876}
2877
2878@media screen and (min-width: 769px) {
2879    #HeroBannerV2_obj1650879662646 {
2880     padding: 0 !important;
2881    }
2882    .pagination-wrapper {
2883        position: absolute;
2884        z-index: 2;
2885        width: 100%;
2886    }
2887    /* .swiper-container.head-carousel {
2888        height: 515px;
2889   } */
2890   .swiper-slide {
2891       display: grid;
2892   }
2893}
2894
2895@media (min-height: 1201px) {
2896  .swiper-container.head-carousel {
2897    width: 100%;
2898    /* height: 700px!important; */
2899  }
2900  .carousel-img {
2901    height: 700px;
2902    border-radius: 10px!important;
2903  }
2904}
2905
2906
2907@media screen and (max-width: 768px) {
2908    .slider_first {
2909        background-color: #fff;
2910    }
2911
2912    .slider_first .swiper-container {
2913        width: 100%;
2914        overflow: initial;
2915        margin-top: 0;
2916    }
2917
2918    .slider_first .swiper-buttons-container {
2919        display: none;
2920    }
2921
2922    .swiper-slide {
2923        background-size: contain!important;
2924        background-position: top!important;
2925        height: initial!important;
2926        display: flex;
2927        flex-direction: column;
2928    }
2929
2930    .slider-progress-bar-container {
2931        padding-bottom: 0px;
2932        margin-left: -30px;
2933    }
2934
2935    .swiper-container {
2936        margin-top: 90px;
2937    }
2938
2939    .swiper-pagination {
2940        bottom: -42px;
2941        right: 50%;
2942        transform: translateX(50%)!important;
2943    }
2944}
2945
2946/**/
2947
2948.swiper-pagination-bullet {
2949    display: inline-block;
2950    height: 5px!important;
2951    width: 5px!important;
2952    margin-right: 8px;
2953    margin-left: 0;
2954    background-color: rgba(255, 255, 255)!important;
2955    border-radius: 50%;
2956    opacity: .9 ;
2957}
2958
2959.swiper-pagination-bullet-active {
2960    opacity: 1 !important;
2961    height: 8px!important;
2962    width: 8px!important;
2963    border:none;
2964    background-color: white !important;
2965}
2966
2967.btn.slider-btn {
2968    border-radius: 15px;
2969    cursor: pointer;
2970    padding: 15px!important;
2971    display: flex;
2972    justify-content: center;
2973    align-items: center;
2974}
2975
2976.slider-btn i {
2977    font-size: 1.8rem;
2978    margin-right: 2px;
2979}
2980
2981.slider-interface-line {
2982    background-color: #fff;
2983    opacity: .1;
2984    height: 1px;
2985}
2986
2987.slider__content {
2988  z-index: 1;
2989}
2990
2991.btn.btn-primary.slider-btn:hover {
2992    background-color: var(--color-primary600)!important;
2993} 
2994
2995.home_trailer_btn.slider-btn.btn:hover {
2996    background-color: rgba(255,255,255,0.6)!important;
2997}
2998
2999.slider__btn-prev {
3000    padding: 0 2rem 0 4.65rem;
3001}
3002
3003.slider__btn-next {
3004    padding: 0 4.65rem 0 2rem;
3005}
3006
3007.slider__btn:focus,
3008.btn__theme:focus {
3009    color: #fff;
3010    background-color: var(--color-secondary600);
3011    border: var(--color-secondary) 2px solid;
3012    box-shadow: 0 0 0 0.2rem var(--color-secondary200);
3013}
3014
3015@media (max-width: 1199px) {
3016    .slider__btn {
3017       padding: 0.4rem 1.4rem; 
3018    }
3019    .head-carousel__title {
3020        max-width: 750px;
3021    }
3022    .head-carousel__subtitle {
3023        max-width: 650px;
3024    }
3025}
3026
3027@media (max-width: 991px) {
3028    .head-carousel__title {
3029        font-size: 2.125rem;
3030    }
3031    .head-carousel__subtitle {
3032        font-size: 1.313rem;
3033    }
3034}
3035
3036@media (max-width: 768px) {
3037    .head-carousel__text-wrapper {
3038        height: 100%;
3039    }
3040    .pagination-wrapper {
3041      display: none;  
3042    }
3043    .swiper-container.head-carousel {
3044        min-height: 320px;
3045    }
3046    .slider__content {
3047        min-height: 320px;
3048        height: auto;
3049        padding-top: 30px;
3050        padding-bottom: 30px;
3051    }
3052    .head-carousel__title {
3053        font-size: 2rem;
3054        max-width: 500px;
3055        padding: 0 15px;
3056    }
3057    .head-carousel__subtitle {
3058        max-width: 500px;
3059        padding: 0 15px;
3060        margin-bottom: 25px !important;
3061    }
3062}
3063
3064@media (max-width: 455px) {
3065    .head-carousel__title {
3066        text-transform: initial;
3067    }
3068    .head-carousel__subtitle {
3069        font-size: 1.125rem;
3070    }
3071}
3072
3073</style><section id="HeroBannerV2_obj1650879662646" class="slider_first overlay common-padding-bottom-blocks"><div class="behind-header"></div><link rel="stylesheet" href="https://unpkg.com/[email protected]/swiper-bundle.min.css">
3074
3075<div id="HeroBannerV2_obj1650879662646" class="swiper-container head-carousel d-flex align-items-center justify-content-center"
3076	style="height: 500px; max-height: 100svh; min-height: 300px">
3077	<!-- Slides Wrapper -->
3078	<div class="swiper-wrapper max-vh-100">
3079		
3080		<div class="swiper-slide"
3081			style="height: 500px; max-height: 100svh; min-height: 300px; background: url('https://foodspace.imgix.net/foodspace/bakeries/84/assets/1790934694420.smart-image-1790934695798-1790934694420-orwaiq.png?width=1920&height=600&auto=compress&format=webp&dpr=2&fit=clip') center/cover no-repeat; --after-opacity: 0.1; --after-display: block; --after-background: #000000; text-shadow: 0 2px 6px rgb(0 0 0 / 77%);;">
3082
3083			<!-- Text Content Wrapper -->
3084			<div class="head-carousel__text-wrapper">
3085				<div class="container" style="position:relative; height: 100%;">
3086					<div class="row align-items-center justify-content-center" style="height: 100%;">
3087						<div class="slider__content d-flex flex-column align-items-center justify-content-center">
3088
3089							<!-- Title -->
3090							<h1 class="head-carousel__title  mb-2 
3091                          font-primary 
3092                          text-bold">Flere nye kakenyheter i vår nettbutikk</h1>
3093
3094							<!-- Subtitle -->
3095							<p class="head-carousel__subtitle  
3096                          font-primary 
3097                          text-bold">Ta en titt og la deg friste</p>
3098
3099							<div class="mt-4">
3100								<div id="obj6e3dac1b1e8042caa640f67b010f8d9c" class="container common-padding-bottom-blocks buttons__container buttons__container_row " style="gap: 16px"><div id="objae62793687424e67999d1cb8f1d317d6" data-test-id="Button" class="d-flex justify-content-center align-items-center default-btn "><a href="https://www.bodobakeri.no/shop/kategori/kaker-699" class="btn block__btn btn-primary font-secondary text-bold ">Bestill her</a><style>#objae62793687424e67999d1cb8f1d317d6 .block__btn {
3101  text-shadow: none !important;
3102  -webkit-text-shadow: none !important;
3103  -moz-text-shadow: none !important;
3104  font-size: 1.125rem;
3105  letter-spacing: 0.028125rem;
3106  white-space: normal;
3107  word-break: break-word;
3108}
3109
3110#objae62793687424e67999d1cb8f1d317d6 .btn-custom {
3111  color: #ffffff;
3112  background-color: #ffa301;
3113}
3114
3115#objae62793687424e67999d1cb8f1d317d6 .btn-custom:hover {
3116  background-color: #000000;
3117  /* background-color: #000000; */
3118  color: #ffffff !important;
3119}
3120
3121.default-btn .btn {
3122  padding: 0.55rem 2rem;
3123}</style></div><style>.buttons__container_row, 
3124.buttons__container_same-width_row {
3125  display: flex;
3126  justify-content: center;
3127}
3128
3129.buttons__container_col,
3130.buttons__container_same-width_col {
3131  display: flex;
3132  flex-direction: column;
3133	align-items: center;
3134	justify-content: center;
3135}
3136
3137.buttons__container_same-width_col {
3138	width: max-content;
3139	min-width: max-content;
3140}
3141
3142.buttons__container_same-width_row .default-btn,
3143.buttons__container_same-width_col .default-btn,
3144.buttons__container_same-width_row .block__btn,
3145.buttons__container_same-width_col .block__btn {
3146	width: 100%;
3147}
3148
3149.buttons__container_same-width_row .default-btn {
3150	width: max-content;
3151	min-width: max-content;
3152}</style>
3152<script v-pre type="module">const data = JSON.parse(decodeURIComponent("%7B%22_blockName%22%3A%22RenderButtonsFromArg%22%2C%22buttons%22%3A%5B%7B%22btnText%22%3A%22Bestill%20her%22%2C%22link%22%3A%22https%3A%2F%2Fwww.bodobakeri.no%2Fshop%2Fkategori%2Fkaker-699%22%2C%22color%22%3A%22btn-primary%22%2C%22customColor%22%3Anull%7D%5D%2C%22options%22%3A%7B%22gapSize%22%3A16%2C%22direction%22%3A%22row%22%2C%22useSameWidth%22%3Afalse%2C%22fontSettingsDesktop%22%3A%7B%7D%2C%22fontSettingsMobile%22%3A%7B%7D%7D%2C%22Id%22%3A%22obj6e3dac1b1e8042caa640f67b010f8d9c%22%2C%22children%22%3Anull%7D"));(() => {
3153  function syncButtonWidths(containerId) {
3154    if (data?.options?.useSameWidth && data?.options?.direction === 'row') {
3155      console.log('Buttons synced')
3156      const container = document.getElementById(containerId);
3157      if (!container) return;
3158
3159      const buttons = container.querySelectorAll('a');
3160      if (!buttons.length) return;
3161
3162      let maxWidth = Math.ceil(Math.max(...Array.from(buttons).map(btn => btn.offsetWidth)));
3163
3164      buttons.forEach(btn => {
3165        btn.style.width = maxWidth + 2 + 'px'; // 2px extra to be sure the text fit the button
3166      });
3167    }
3168  }
3169
3170  syncButtonWidths(data.Id);
3171})();</script>
3171</div>
3172							</div>
3173						</div>
3174					</div>
3175				</div>
3176			</div>
3177
3178		</div>
3179		
3180		<div class="swiper-slide"
3181			style="height: 500px; max-height: 100svh; min-height: 300px; background: url('https://foodspace.imgix.net/foodspace/bakeries/84/assets/1790934796708.smart-image-1790934797664-1790934796708-zffp7o.png?width=1920&height=600&auto=compress&format=webp&dpr=2&fit=clip') center/cover no-repeat; --after-opacity: 0.1; --after-display: block; --after-background: #000000; text-shadow: 0 2px 6px rgb(0 0 0 / 77%);;">
3182
3183			<!-- Text Content Wrapper -->
3184			<div class="head-carousel__text-wrapper">
3185				<div class="container" style="position:relative; height: 100%;">
3186					<div class="row align-items-center justify-content-center" style="height: 100%;">
3187						<div class="slider__content d-flex flex-column align-items-center justify-content-center">
3188
3189							<!-- Title -->
3190							<h1 class="head-carousel__title  mb-2 
3191                          font-primary 
3192                          text-bold">Catering til små og store eventer</h1>
3193
3194							<!-- Subtitle -->
3195							<p class="head-carousel__subtitle d-none 
3196                          font-primary 
3197                          text-bold">undefined</p>
3198
3199							<div class="mt-4">
3200								<div id="obj7e46e9746a9f4964b12e9e7109050c02" class="container common-padding-bottom-blocks buttons__container buttons__container_row " style="gap: 35px"><div id="objf65ebf7d8b004d5a9643c4910208bb46" data-test-id="Button" class="d-flex justify-content-center align-items-center default-btn "><a href="https://www.bodobakeri.no/shop/kategori/selskapsmat-catering-5120" class="btn block__btn btn-primary font-secondary text-bold ">Sjekk ut</a><style>#objf65ebf7d8b004d5a9643c4910208bb46 .block__btn {
3201  text-shadow: none !important;
3202  -webkit-text-shadow: none !important;
3203  -moz-text-shadow: none !important;
3204  font-size: 1.125rem;
3205  letter-spacing: 0.028125rem;
3206  white-space: normal;
3207  word-break: break-word;
3208}
3209
3210#objf65ebf7d8b004d5a9643c4910208bb46 .btn-custom {
3211  color: #ffffff;
3212  background-color: #ffa301;
3213}
3214
3215#objf65ebf7d8b004d5a9643c4910208bb46 .btn-custom:hover {
3216  background-color: #000000;
3217  /* background-color: #000000; */
3218  color: #ffffff !important;
3219}
3220
3221.default-btn .btn {
3222  padding: 0.55rem 2rem;
3223}</style></div><style>.buttons__container_row, 
3224.buttons__container_same-width_row {
3225  display: flex;
3226  justify-content: center;
3227}
3228
3229.buttons__container_col,
3230.buttons__container_same-width_col {
3231  display: flex;
3232  flex-direction: column;
3233	align-items: center;
3234	justify-content: center;
3235}
3236
3237.buttons__container_same-width_col {
3238	width: max-content;
3239	min-width: max-content;
3240}
3241
3242.buttons__container_same-width_row .default-btn,
3243.buttons__container_same-width_col .default-btn,
3244.buttons__container_same-width_row .block__btn,
3245.buttons__container_same-width_col .block__btn {
3246	width: 100%;
3247}
3248
3249.buttons__container_same-width_row .default-btn {
3250	width: max-content;
3251	min-width: max-content;
3252}</style>
3252<script v-pre type="module">const data = JSON.parse(decodeURIComponent("%7B%22_blockName%22%3A%22RenderButtonsFromArg%22%2C%22buttons%22%3A%5B%7B%22btnText%22%3A%22Sjekk%20ut%22%2C%22link%22%3A%22https%3A%2F%2Fwww.bodobakeri.no%2Fshop%2Fkategori%2Fselskapsmat-catering-5120%22%2C%22color%22%3A%22btn-primary%22%2C%22customColor%22%3Anull%7D%5D%2C%22options%22%3A%7B%22gapSize%22%3A%2235%22%2C%22direction%22%3A%22row%22%2C%22useSameWidth%22%3Afalse%2C%22fontSettingsDesktop%22%3A%7B%22fontFamily%22%3Anull%2C%22fontSize%22%3Anull%2C%22fontWeight%22%3Anull%2C%22letterSpacing%22%3Anull%7D%2C%22fontSettingsMobile%22%3A%7B%22fontFamily%22%3Anull%2C%22fontSize%22%3Anull%2C%22fontWeight%22%3Anull%2C%22letterSpacing%22%3Anull%7D%7D%2C%22Id%22%3A%22obj7e46e9746a9f4964b12e9e7109050c02%22%2C%22children%22%3Anull%7D"));(() => {
3253  function syncButtonWidths(containerId) {
3254    if (data?.options?.useSameWidth && data?.options?.direction === 'row') {
3255      console.log('Buttons synced')
3256      const container = document.getElementById(containerId);
3257      if (!container) return;
3258
3259      const buttons = container.querySelectorAll('a');
3260      if (!buttons.length) return;
3261
3262      let maxWidth = Math.ceil(Math.max(...Array.from(buttons).map(btn => btn.offsetWidth)));
3263
3264      buttons.forEach(btn => {
3265        btn.style.width = maxWidth + 2 + 'px'; // 2px extra to be sure the text fit the button
3266      });
3267    }
3268  }
3269
3270  syncButtonWidths(data.Id);
3271})();</script>
3271</div>
3272							</div>
3273						</div>
3274					</div>
3275				</div>
3276			</div>
3277
3278		</div>
3279		
3280	</div>
3281
3282	<!-- Pagination and Navigation Controls -->
3283	<div class="pagination-wrapper" style="margin-top:0px">
3284		<div class="row">
3285			<div class="w-100 m-0 mx-3 slider-interface-line d-none" size="1"></div>
3286			<div
3287				class="d-flex col-md-12 col-11 justify-content-between flex-row-reverse ">
3288
3289				<!-- Navigation Buttons -->
3290				<div class="pagination-wrapper__btn-wrapper text-white d-flex justify-content-between">
3291					<div class="btn slider__btn-prev swiper-button-prev-unique">
3292						<i class="fas fa-chevron-left mr-1"></i>
3293					</div>
3294					<div class="btn slider__btn-next swiper-button-next-unique">
3295						<i class="fas fa-chevron-right ml-1"></i>
3296					</div>
3297				</div>
3298
3299			</div>
3300		</div>
3301	</div>
3302
3303	<!-- Progress Bar and Pagination -->
3304	<div class="d-flex align-items-center slider-progress-bar-container">
3305		<div class="swiper-pagination mr-lg-3 d-flex align-items-center"></div>
3306	</div>
3307
3308</div>
3308<script v-pre type="module">const data = JSON.parse(decodeURIComponent("%7B%22_blockName%22%3A%22HeroBannerV2%22%2C%22Id%22%3A%22HeroBannerV2_obj1650879662646%22%2C%22slides%22%3A%5B%7B%22image%22%3A%7B%22title%22%3A%22Flere%20nye%20kakenyheter%20i%20v%C3%A5r%20nettbutikk%22%2C%22subtitle%22%3A%22Ta%20en%20titt%20og%20la%20deg%20friste%22%2C%22buttons%22%3A%7B%22buttonsSettings%22%3A%7B%22buttons%22%3A%5B%7B%22btnText%22%3A%22Bestill%20her%22%2C%22link%22%3A%22https%3A%2F%2Fwww.bodobakeri.no%2Fshop%2Fkategori%2Fkaker-699%22%2C%22color%22%3A%22btn-primary%22%2C%22customColor%22%3Anull%7D%5D%2C%22options%22%3A%7B%22gapSize%22%3A16%2C%22direction%22%3A%22row%22%2C%22useSameWidth%22%3Afalse%2C%22fontSettingsDesktop%22%3A%7B%7D%2C%22fontSettingsMobile%22%3A%7B%7D%7D%7D%7D%2C%22desktopImage%22%3A%22https%3A%2F%2Fcf.cie.app%2Fassets%2Fimg%2Ffoodspace%2Fbakeries%2F84%2Fassets%2F1790934694420.smart-image-1790934695798-1790934694420-orwaiq.png%22%2C%22usePlannedSlide%22%3Afalse%2C%22plannedTimeData%22%3A%7B%22startTime%22%3A%222026-07-15T07%3A12%3A51.607Z%22%2C%22endTime%22%3A%222026-07-31T07%3A12%3A56.912Z%22%7D%2C%22ishidden%22%3Afalse%7D%2C%22isRegular%22%3Atrue%7D%2C%7B%22image%22%3A%7B%22title%22%3A%22Catering%20til%20sm%C3%A5%20og%20store%20eventer%22%2C%22buttons%22%3A%7B%22buttonsSettings%22%3A%7B%22buttons%22%3A%5B%7B%22btnText%22%3A%22Sjekk%20ut%22%2C%22link%22%3A%22https%3A%2F%2Fwww.bodobakeri.no%2Fshop%2Fkategori%2Fselskapsmat-catering-5120%22%2C%22color%22%3A%22btn-primary%22%2C%22customColor%22%3Anull%7D%5D%2C%22options%22%3A%7B%22gapSize%22%3A%2235%22%2C%22direction%22%3A%22row%22%2C%22useSameWidth%22%3Afalse%2C%22fontSettingsDesktop%22%3A%7B%22fontFamily%22%3Anull%2C%22fontSize%22%3Anull%2C%22fontWeight%22%3Anull%2C%22letterSpacing%22%3Anull%7D%2C%22fontSettingsMobile%22%3A%7B%22fontFamily%22%3Anull%2C%22fontSize%22%3Anull%2C%22fontWeight%22%3Anull%2C%22letterSpacing%22%3Anull%7D%7D%7D%7D%2C%22desktopImage%22%3A%22https%3A%2F%2Fcf.cie.app%2Fassets%2Fimg%2Ffoodspace%2Fbakeries%2F84%2Fassets%2F1790934796708.smart-image-1790934797664-1790934796708-zffp7o.png%22%2C%22usePlannedSlide%22%3Afalse%2C%22plannedTimeData%22%3A%7B%7D%2C%22ishidden%22%3Afalse%7D%2C%22isRegular%22%3Atrue%7D%5D%2C%22ui%22%3A%7B%22fontSettings%22%3A%7B%22titleSettings%22%3A%7B%22fontFamily%22%3Anull%2C%22fontSize%22%3A%2260%22%2C%22fontWeight%22%3Anull%2C%22letterSpacing%22%3Anull%7D%2C%22subtitleSettings%22%3A%7B%22fontFamily%22%3Anull%2C%22fontSize%22%3A%2242%22%2C%22fontWeight%22%3Anull%2C%22letterSpacing%22%3Anull%7D%2C%22buttonSettings%22%3A%7B%22fontFamily%22%3Anull%2C%22fontSize%22%3Anull%2C%22fontWeight%22%3Anull%2C%22letterSpacing%22%3Anull%7D%7D%2C%22fontSettingsMobile%22%3A%7B%7D%2C%22useSameAsDesktop%22%3Atrue%2C%22imageSettings%22%3A%7B%22useImgFullHeight%22%3Afalse%2C%22imageHeightPx%22%3A%22500%22%7D%2C%22uiSettings%22%3A%7B%22titleShadow%22%3A%220%202px%206px%20rgb(0%200%200%20%2F%2077%25)%3B%22%2C%22opacityColor%22%3A%22%23000000%22%2C%22mainBannerOpacity%22%3A%2210%22%7D%2C%22sliderSettings%22%3A%7B%22delay%22%3A%225%22%2C%22speed%22%3A%22500%22%7D%7D%2C%22currentSlides%22%3A%5B%7B%22image%22%3A%7B%22title%22%3A%22Flere%20nye%20kakenyheter%20i%20v%C3%A5r%20nettbutikk%22%2C%22subtitle%22%3A%22Ta%20en%20titt%20og%20la%20deg%20friste%22%2C%22buttons%22%3A%7B%22buttonsSettings%22%3A%7B%22buttons%22%3A%5B%7B%22btnText%22%3A%22Bestill%20her%22%2C%22link%22%3A%22https%3A%2F%2Fwww.bodobakeri.no%2Fshop%2Fkategori%2Fkaker-699%22%2C%22color%22%3A%22btn-primary%22%2C%22customColor%22%3Anull%7D%5D%2C%22options%22%3A%7B%22gapSize%22%3A16%2C%22direction%22%3A%22row%22%2C%22useSameWidth%22%3Afalse%2C%22fontSettingsDesktop%22%3A%7B%7D%2C%22fontSettingsMobile%22%3A%7B%7D%7D%7D%7D%2C%22desktopImage%22%3A%22https%3A%2F%2Fcf.cie.app%2Fassets%2Fimg%2Ffoodspace%2Fbakeries%2F84%2Fassets%2F1790934694420.smart-image-1790934695798-1790934694420-orwaiq.png%22%2C%22usePlannedSlide%22%3Afalse%2C%22plannedTimeData%22%3A%7B%22startTime%22%3A%222026-07-15T07%3A12%3A51.607Z%22%2C%22endTime%22%3A%222026-07-31T07%3A12%3A56.912Z%22%7D%2C%22ishidden%22%3Afalse%7D%2C%22isRegular%22%3Atrue%7D%2C%7B%22image%22%3A%7B%22title%22%3A%22Catering%20til%20sm%C3%A5%20og%20store%20eventer%22%2C%22buttons%22%3A%7B%22buttonsSettings%22%3A%7B%22buttons%22%3A%5B%7B%22btnText%22%3A%22Sjekk%20ut%22%2C%22link%22%3A%22https%3A%2F%2Fwww.bodobakeri.no%2Fshop%2Fkategori%2Fselskapsmat-catering-5120%22%2C%22color%22%3A%22btn-primary%22%2C%22customColor%22%3Anull%7D%5D%2C%22options%22%3A%7B%22gapSize%22%3A%2235%22%2C%22direction%22%3A%22row%22%2C%22useSameWidth%22%3Afalse%2C%22fontSettingsDesktop%22%3A%7B%22fontFamily%22%3Anull%2C%22fontSize%22%3Anull%2C%22fontWeight%22%3Anull%2C%22letterSpacing%22%3Anull%7D%2C%22fontSettingsMobile%22%3A%7B%22fontFamily%22%3Anull%2C%22fontSize%22%3Anull%2C%22fontWeight%22%3Anull%2C%22letterSpacing%22%3Anull%7D%7D%7D%7D%2C%22desktopImage%22%3A%22https%3A%2F%2Fcf.cie.app%2Fassets%2Fimg%2Ffoodspace%2Fbakeries%2F84%2Fassets%2F1790934796708.smart-image-1790934797664-1790934796708-zffp7o.png%22%2C%22usePlannedSlide%22%3Afalse%2C%22plannedTimeData%22%3A%7B%7D%2C%22ishidden%22%3Afalse%7D%2C%22isRegular%22%3Atrue%7D%5D%2C%22block-id%22%3A%22HeroBannerV2_obj1650879662646%22%2C%22extraMarginOnContent%22%3A%220px%22%2C%22customTextColor%22%3A%22%23ffffff%22%2C%22customBgHoverColor%22%3A%22%23000000%22%2C%22titleFontSize%22%3A%223.75%22%2C%22mobileTitleFontSize%22%3A%223.75%22%2C%22titleLetterSpacing%22%3A%220%22%2C%22subtitleFontSize%22%3A%222.625%22%2C%22mobileSubtitleFontSize%22%3A%222.625%22%2C%22subtitleLetterSpacing%22%3A%220%22%2C%22useImgFullHeight%22%3Afalse%2C%22imgBlockHeight%22%3A%22500px%22%2C%22gradient%22%3A%22linear-gradient(45deg%2C%20rgba(51%2C%2051%2C%2051%2C%200.2)%2C%20rgba(51%2C%2051%2C%2051%2C%200.2))%22%2C%22isMobile%22%3Afalse%2C%22titleSettings%22%3A%7B%22fontFamily%22%3Anull%2C%22fontSize%22%3A%2260%22%2C%22fontWeight%22%3Anull%2C%22letterSpacing%22%3Anull%7D%2C%22subtitleSettings%22%3A%7B%22fontFamily%22%3Anull%2C%22fontSize%22%3A%2242%22%2C%22fontWeight%22%3Anull%2C%22letterSpacing%22%3Anull%7D%2C%22btnsRender%22%3A%5B%22%3Cdiv%20id%3D%5C%22obj6e3dac1b1e8042caa640f67b010f8d9c%5C%22%20class%3D%5C%22container%20common-padding-bottom-blocks%20buttons__container%20buttons__container_row%20%5C%22%20style%3D%5C%22gap%3A%2016px%5C%22%3E%3Cdiv%20id%3D%5C%22objae62793687424e67999d1cb8f1d317d6%5C%22%20data-test-id%3D%5C%22Button%5C%22%20class%3D%5C%22d-flex%20justify-content-center%20align-items-center%20default-btn%20%5C%22%3E%3Ca%20href%3D%5C%22https%3A%2F%2Fwww.bodobakeri.no%2Fshop%2Fkategori%2Fkaker-699%5C%22%20class%3D%5C%22btn%20block__btn%20btn-primary%20font-secondary%20text-bold%20%5C%22%3EBestill%20her%3C%2Fa%3E%3Cstyle%3E%23objae62793687424e67999d1cb8f1d317d6%20.block__btn%20%7B%5Cn%20%20text-shadow%3A%20none%20!important%3B%5Cn%20%20-webkit-text-shadow%3A%20none%20!important%3B%5Cn%20%20-moz-text-shadow%3A%20none%20!important%3B%5Cn%20%20font-size%3A%201.125rem%3B%5Cn%20%20letter-spacing%3A%200.028125rem%3B%5Cn%20%20white-space%3A%20normal%3B%5Cn%20%20word-break%3A%20break-word%3B%5Cn%7D%5Cn%5Cn%23objae62793687424e67999d1cb8f1d317d6%20.btn-custom%20%7B%5Cn%20%20color%3A%20%23ffffff%3B%5Cn%20%20background-color%3A%20%23ffa301%3B%5Cn%7D%5Cn%5Cn%23objae62793687424e67999d1cb8f1d317d6%20.btn-custom%3Ahover%20%7B%5Cn%20%20background-color%3A%20%23000000%3B%5Cn%20%20%2F*%20background-color%3A%20%23000000%3B%20*%2F%5Cn%20%20color%3A%20%23ffffff%20!important%3B%5Cn%7D%5Cn%5Cn.default-btn%20.btn%20%7B%5Cn%20%20padding%3A%200.55rem%202rem%3B%5Cn%7D%3C%2Fstyle%3E%3C%2Fdiv%3E%3Cstyle%3E.buttons__container_row%2C%20%5Cn.buttons__container_same-width_row%20%7B%5Cn%20%20display%3A%20flex%3B%5Cn%20%20justify-content%3A%20center%3B%5Cn%7D%5Cn%5Cn.buttons__container_
3308col%2C%5Cn.buttons__container_same-width_col%20%7B%5Cn%20%20display%3A%20flex%3B%5Cn%20%20flex-direction%3A%20column%3B%5Cn%5Ctalign-items%3A%20center%3B%5Cn%5Ctjustify-content%3A%20center%3B%5Cn%7D%5Cn%5Cn.buttons__container_same-width_col%20%7B%5Cn%5Ctwidth%3A%20max-content%3B%5Cn%5Ctmin-width%3A%20max-content%3B%5Cn%7D%5Cn%5Cn.buttons__container_same-width_row%20.default-btn%2C%5Cn.buttons__container_same-width_col%20.default-btn%2C%5Cn.buttons__container_same-width_row%20.block__btn%2C%5Cn.buttons__container_same-width_col%20.block__btn%20%7B%5Cn%5Ctwidth%3A%20100%25%3B%5Cn%7D%5Cn%5Cn.buttons__container_same-width_row%20.default-btn%20%7B%5Cn%5Ctwidth%3A%20max-content%3B%5Cn%5Ctmin-width%3A%20max-content%3B%5Cn%7D%3C%2Fstyle%3E%3Cscript%20v-pre%20type%3D%5C%22module%5C%22%3Econst%20data%20%3D%20JSON.parse(decodeURIComponent(%5C%22%257B%2522_blockName%2522%253A%2522RenderButtonsFromArg%2522%252C%2522buttons%2522%253A%255B%257B%2522btnText%2522%253A%2522Bestill%2520her%2522%252C%2522link%2522%253A%2522https%253A%252F%252Fwww.bodobakeri.no%252Fshop%252Fkategori%252Fkaker-699%2522%252C%2522color%2522%253A%2522btn-primary%2522%252C%2522customColor%2522%253Anull%257D%255D%252C%2522options%2522%253A%257B%2522gapSize%2522%253A16%252C%2522direction%2522%253A%2522row%2522%252C%2522useSameWidth%2522%253Afalse%252C%2522fontSettingsDesktop%2522%253A%257B%257D%252C%2522fontSettingsMobile%2522%253A%257B%257D%257D%252C%2522Id%2522%253A%2522obj6e3dac1b1e8042caa640f67b010f8d9c%2522%252C%2522children%2522%253Anull%257D%5C%22))%3B(()%20%3D%3E%20%7B%5Cn%20%20function%20syncButtonWidths(containerId)%20%7B%5Cn%20%20%20%20if%20(data%3F.options%3F.useSameWidth%20%26%26%20data%3F.options%3F.direction%20%3D%3D%3D%20'row')%20%7B%5Cn%20%20%20%20%20%20console.log('Buttons%20synced')%5Cn%20%20%20%20%20%20const%20container%20%3D%20document.getElementById(containerId)%3B%5Cn%20%20%20%20%20%20if%20(!container)%20return%3B%5Cn%5Cn%20%20%20%20%20%20const%20buttons%20%3D%20container.querySelectorAll('a')%3B%5Cn%20%20%20%20%20%20if%20(!buttons.length)%20return%3B%5Cn%5Cn%20%20%20%20%20%20let%20maxWidth%20%3D%20Math.ceil(Math.max(...Array.from(buttons).map(btn%20%3D%3E%20btn.offsetWidth)))%3B%5Cn%5Cn%20%20%20%20%20%20buttons.forEach(btn%20%3D%3E%20%7B%5Cn%20%20%20%20%20%20%20%20btn.style.width%20%3D%20maxWidth%20%2B%202%20%2B%20'px'%3B%20%2F%2F%202px%20extra%20to%20be%20sure%20the%20text%20fit%20the%20button%5Cn%20%20%20%20%20%20%7D)%3B%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%5Cn%20%20syncButtonWidths(data.Id)%3B%5Cn%7D)()%3B%3C%2Fscript%3E%3C%2Fdiv%3E%22%2C%22%3Cdiv%20id%3D%5C%22obj7e46e9746a9f4964b12e9e7109050c02%5C%22%20class%3D%5C%22container%20common-padding-bottom-blocks%20buttons__container%20buttons__container_row%20%5C%22%20style%3D%5C%22gap%3A%2035px%5C%22%3E%3Cdiv%20id%3D%5C%22objf65ebf7d8b004d5a9643c4910208bb46%5C%22%20data-test-id%3D%5C%22Button%5C%22%20class%3D%5C%22d-flex%20justify-content-center%20align-items-center%20default-btn%20%5C%22%3E%3Ca%20href%3D%5C%22https%3A%2F%2Fwww.bodobakeri.no%2Fshop%2Fkategori%2Fselskapsmat-catering-5120%5C%22%20class%3D%5C%22btn%20block__btn%20btn-primary%20font-secondary%20text-bold%20%5C%22%3ESjekk%20ut%3C%2Fa%3E%3Cstyle%3E%23objf65ebf7d8b004d5a9643c4910208bb46%20.block__btn%20%7B%5Cn%20%20text-shadow%3A%20none%20!important%3B%5Cn%20%20-webkit-text-shadow%3A%20none%20!important%3B%5Cn%20%20-moz-text-shadow%3A%20none%20!important%3B%5Cn%20%20font-size%3A%201.125rem%3B%5Cn%20%20letter-spacing%3A%200.028125rem%3B%5Cn%20%20white-space%3A%20normal%3B%5Cn%20%20word-break%3A%20break-word%3B%5Cn%7D%5Cn%5Cn%23objf65ebf7d8b004d5a9643c4910208bb46%20.btn-custom%20%7B%5Cn%20%20color%3A%20%23ffffff%3B%5Cn%20%20background-color%3A%20%23ffa301%3B%5Cn%7D%5Cn%5Cn%23objf65ebf7d8b004d5a9643c4910208bb46%20.btn-custom%3Ahover%20%7B%5Cn%20%20background-color%3A%20%23000000%3B%5Cn%20%20%2F*%20background-color%3A%20%23000000%3B%20*%2F%5Cn%20%20color%3A%20%23ffffff%20!important%3B%5Cn%7D%5Cn%5Cn.default-btn%20.btn%20%7B%5Cn%20%20padding%3A%200.55rem%202rem%3B%5Cn%7D%3C%2Fstyle%3E%3C%2Fdiv%3E%3Cstyle%3E.buttons__container_row%2C%20%5Cn.buttons__container_same-width_row%20%7B%5Cn%20%20display%3A%20flex%3B%5Cn%20%20justify-content%3A%20center%3B%5Cn%7D%5Cn%5Cn.buttons__container_
3308col%2C%5Cn.buttons__container_same-width_col%20%7B%5Cn%20%20display%3A%20flex%3B%5Cn%20%20flex-direction%3A%20column%3B%5Cn%5Ctalign-items%3A%20center%3B%5Cn%5Ctjustify-content%3A%20center%3B%5Cn%7D%5Cn%5Cn.buttons__container_same-width_col%20%7B%5Cn%5Ctwidth%3A%20max-content%3B%5Cn%5Ctmin-width%3A%20max-content%3B%5Cn%7D%5Cn%5Cn.buttons__container_same-width_row%20.default-btn%2C%5Cn.buttons__container_same-width_col%20.default-btn%2C%5Cn.buttons__container_same-width_row%20.block__btn%2C%5Cn.buttons__container_same-width_col%20.block__btn%20%7B%5Cn%5Ctwidth%3A%20100%25%3B%5Cn%7D%5Cn%5Cn.buttons__container_same-width_row%20.default-btn%20%7B%5Cn%5Ctwidth%3A%20max-content%3B%5Cn%5Ctmin-width%3A%20max-content%3B%5Cn%7D%3C%2Fstyle%3E%3Cscript%20v-pre%20type%3D%5C%22module%5C%22%3Econst%20data%20%3D%20JSON.parse(decodeURIComponent(%5C%22%257B%2522_blockName%2522%253A%2522RenderButtonsFromArg%2522%252C%2522buttons%2522%253A%255B%257B%2522btnText%2522%253A%2522Sjekk%2520ut%2522%252C%2522link%2522%253A%2522https%253A%252F%252Fwww.bodobakeri.no%252Fshop%252Fkategori%252Fselskapsmat-catering-5120%2522%252C%2522color%2522%253A%2522btn-primary%2522%252C%2522customColor%2522%253Anull%257D%255D%252C%2522options%2522%253A%257B%2522gapSize%2522%253A%252235%2522%252C%2522direction%2522%253A%2522row%2522%252C%2522useSameWidth%2522%253Afalse%252C%2522fontSettingsDesktop%2522%253A%257B%2522fontFamily%2522%253Anull%252C%2522fontSize%2522%253Anull%252C%2522fontWeight%2522%253Anull%252C%2522letterSpacing%2522%253Anull%257D%252C%2522fontSettingsMobile%2522%253A%257B%2522fontFamily%2522%253Anull%252C%2522fontSize%2522%253Anull%252C%2522fontWeight%2522%253Anull%252C%2522letterSpacing%2522%253Anull%257D%257D%252C%2522Id%2522%253A%2522obj7e46e9746a9f4964b12e9e7109050c02%2522%252C%2522children%2522%253Anull%257D%5C%22))%3B(()%20%3D%3E%20%7B%5Cn%20%20function%20syncButtonWidths(containerId)%20%7B%5Cn%20%20%20%20if%20(data%3F.options%3F.useSameWidth%20%26%26%20data%3F.options%3F.direction%20%3D%3D%3D%20'row')%20%7B%5Cn%20%20%20%20%20%20console.log('Buttons%20synced')%5Cn%20%20%20%20%20%20const%20container%20%3D%20document.getElementById(containerId)%3B%5Cn%20%20%20%20%20%20if%20(!container)%20return%3B%5Cn%5Cn%20%20%20%20%20%20const%20buttons%20%3D%20container.querySelectorAll('a')%3B%5Cn%20%20%20%20%20%20if%20(!buttons.length)%20return%3B%5Cn%5Cn%20%20%20%20%20%20let%20maxWidth%20%3D%20Math.ceil(Math.max(...Array.from(buttons).map(btn%20%3D%3E%20btn.offsetWidth)))%3B%5Cn%5Cn%20%20%20%20%20%20buttons.forEach(btn%20%3D%3E%20%7B%5Cn%20%20%20%20%20%20%20%20btn.style.width%20%3D%20maxWidth%20%2B%202%20%2B%20'px'%3B%20%2F%2F%202px%20extra%20to%20be%20sure%20the%20text%20fit%20the%20button%5Cn%20%20%20%20%20%20%7D)%3B%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%5Cn%20%20syncButtonWidths(data.Id)%3B%5Cn%7D)()%3B%3C%2Fscript%3E%3C%2Fdiv%3E%22%5D%2C%22opacity%22%3A0.1%2C%22opacityColor%22%3A%22%23000000%22%2C%22titleShadow%22%3A%220%202px%206px%20rgb(0%200%200%20%2F%2077%25)%3B%22%2C%22children%22%3Anull%2C%22blockData%22%3A%7B%22delay%22%3A%225%22%2C%22speed%22%3A%22500%22%7D%7D"));import 'https://cdn.marscloud.dev/assets/img/swiper-bundle.min.js';
3309
3310const speed = data.blockData.speed ? Number(data.blockData.speed) : 500;
3311const delay = data.blockData.delay ? (Number(data.blockData.delay) * 1000) : 5000;
3312
3313let swiperInstance;
3314
3315if (!swiperInstance) {
3316  swiperInstance = new Swiper('.swiper-container.head-carousel', {
3317    loop: true,
3318    loopPreventsSlide: true,
3319    speed: speed,
3320    effect: 'slide',
3321    spaceBetween: 0,
3322    breakpoints: {
3323      768: {
3324        slidesPerView: 'auto'
3325      }
3326    },
3327    loopAdditionalSlides: 4,
3328    pagination: {
3329      el: '.swiper-pagination',
3330      clickable: true,
3331    },
3332    autoplay: {
3333
3334      delay: delay,
3335      pauseOnMouseEnter: true,
3336      disableOnInteraction: false,
3337    },
3338    navigation: {
3339      nextEl: '.slider_first .swiper-button-next-unique',
3340      prevEl: '.slider_first .swiper-button-prev-unique',
3341    },
3342    on: {
3343      init: function () {
3344        this.el.style.opacity = 1;
3345      },
3346    }
3347  });
3348}
3349
3350// Event handlers for mouseover and mouseout
3351$('.head-carousel').on('mouseover', function () {
3352  if (swiperInstance && swiperInstance.autoplay && swiperInstance.autoplay.running) {
3353    swiperInstance.autoplay.stop();
3354  }
3355});
3356
3357$('.head-carousel').on('mouseout', function () {
3358  if (swiperInstance && swiperInstance.autoplay) {
3359    swiperInstance.autoplay.start();
3360  }
3361});
3362
3363// because for some reason mars converts all <img> tags from html tab into <i> tag
3364if (data.useImgFullHeight) {
3365  const swiperContainer = document.getElementById('HeroBannerV2_obj1650879662646');
3366  const slides = swiperContainer.querySelectorAll('.swiper-slide');
3367  let maxHeight = 0;
3368  let loadedImages = 0;
3369
3370  slides.forEach(slide => {
3371    const imgSrc = getComputedStyle(slide).backgroundImage.slice(5, -2);
3372    const img = new Image();
3373    img.src = imgSrc;
3374    img.alt = '';
3375
3376    img.onload = function () {
3377      if (img.naturalHeight > maxHeight) {
3378        maxHeight = img.naturalHeight;
3379      }
3380
3381      loadedImages++;
3382      if (loadedImages === slides.length) {
3383        slides.forEach(slide => {
3384          slide.style.height = `${maxHeight}px`;
3385        });
3386      }
3387    };
3388  });
3389}
3390</script>
3390</section><div id="Spacer_obj1652954256140" data-test-id="MobileSpacer" class="Spacer_obj1652954256140 spacer"><style>.Spacer_obj1652954256140.spacer {
3391  --padding: 100px;
3392  --mobile-padding: 60px;
3393  padding: var(--padding) 0 0;
3394}
3395
3396@media (max-width: 992px) {
3397  .Spacer_obj1652954256140.spacer {
3398    padding: calc(var(--padding) * 0.9) 0 0;
3399  }
3400}
3401
3402@media (max-width: 768px) {
3403  .Spacer_obj1652954256140.spacer {
3404    padding: var(--mobile-padding) 0 0;
3405  }
3406}
3407
3408@media (max-width: 425px) {
3409  .Spacer_obj1652954256140.spacer {
3410    padding: var(--mobile-padding) 0 0;
3411  }
3412}
3413
3414
3415.Spacer_obj1652954256140.autoSpacer {
3416  --auto-padding: undefined;
3417  padding: var(--auto-padding) 0 0;
3418}
3419
3420@media (max-width: 992px) {
3421  .Spacer_obj1652954256140.autoSpacer {
3422    padding: calc(var(--auto-padding) * 0.9) 0 0;
3423  }
3424}
3425
3426@media (max-width: 768px) {
3427  .Spacer_obj1652954256140.autoSpacer {
3428    padding: calc(var(--auto-padding) * 0.7) 0 0;
3429  }
3430}
3431
3432@media (max-width: 425px) {
3433  .Spacer_obj1652954256140.autoSpacer {
3434    padding: calc(var(--auto-padding) * 0.5) 0 0;
3435  }
3436}</style></div><section id="Offer_obj1677152147474" data-test-id="Offer" class="common-padding-bottom-blocks container offer"><div class="offer__title font-primary text-normal text-left mb-5"></div><div class="row justify-content-center "><a class="col-6 overflow-hidden d-flex flex-column  mb-4 col-lg-3" href="javascript:void(0);"><div class="overflow-hidden offer__top-image"><div class="offer-wrap bg-size-cover bg-repeat-0 bg-position-center" style="background:url(https://bcdn.cakeiteasy.com/foodspace/bakeries/84/assets/1784099002802.blob-1784099002801-stnxa4.png?width=800&height=320&optimizer=image&format=webp) center/cover no-repeat; height: 255px; transition:.6s;"></div><div class="offer__bottom-text font-primary text-normal text-left d-flex justify-content-center flex-grow-1 bg-light p-3 flex-grow-1 d-flex text-info-dark ">Vårt populære URkorn brød har nå fått en ny storebror; URkorn ekstra grovt. Begge disse brødene får du kjøpt i dagligvarebutikker og de holder seg lenge. </div></div></a><a class="col-6 overflow-hidden d-flex flex-column  mb-4 col-lg-3" href="https://www.bodobakeri.no/shop/bestill/sjokoladekake-gluten-og-laktosefri-53169"><div class="overflow-hidden offer__top-image"><div class="offer-wrap bg-size-cover bg-repeat-0 bg-position-center" style="background:url(https://bcdn.cakeiteasy.com/foodspace/bakeries/84/assets/1784098842995.blob-1784098842995-9tdiig.png?width=800&height=320&optimizer=image&format=webp) center/cover no-repeat; height: 255px; transition:.6s;"></div><div class="offer__bottom-text font-primary text-normal text-left d-flex justify-content-center flex-grow-1 bg-light p-3 flex-grow-1 d-flex text-info-dark ">NYHET: Våre konditorer har laget en ny sjokoladekake som er både gluten- og laktosefri. Glutenfri sjokoladebunn som er fylt og toppet med laktosefri smørkrem. </div></div></a><a class="col-6 overflow-hidden d-flex flex-column  mb-4 col-lg-3" href="https://www.bodobakeri.no/tur-kafe"><div class="overflow-hidden offer__top-image"><div class="offer-wrap bg-size-cover bg-repeat-0 bg-position-center" style="background:url(https://bcdn.cakeiteasy.com/foodspace/1773306236967.blob-1773306236967-mm1uer.png?width=800&height=320&optimizer=image&format=webp) center/cover no-repeat; height: 255px; transition:.6s;"></div><div class="offer__bottom-text font-primary text-normal text-left d-flex justify-content-center flex-grow-1 bg-light p-3 flex-grow-1 d-flex text-info-dark ">Velkommen til Bodø sentrums nyeste kafe. Her finner du kaker, kaffe, påsmurt lunsjmat og en stor varmmatsmeny for en hver smak. Åpent mandag til lørdag 10-18</div></div></a><a class="col-6 overflow-hidden d-flex flex-column  mb-4 col-lg-3" href="javascript:void(0);"><div class="overflow-hidden offer__top-image"><div class="offer-wrap bg-size-cover bg-repeat-0 bg-position-center" style="background:url(https://bcdn.cakeiteasy.com/foodspace/bakeries/84/assets/1784099144941.blob-1784099144941-hk4zjt.png?width=800&height=320&optimizer=image&format=webp) center/cover no-repeat; height: 255px; transition:.6s;"></div><div class="offer__bottom-text font-primary text-normal text-left d-flex justify-content-center flex-grow-1 bg-light p-3 flex-grow-1 d-flex text-info-dark ">På SKIFT i Glasshuset er det godt og lunt inne i all slags vær og med vår nye uteservering har vi det godt selv på finværsdager. Kafe med varmretter. Prøv vår digge napolitanske pizza, varme ostesmørbrød, lasagne, karbonadesmørbrød eller kanskje en digg cæsarsalat? </
3436div></div></a></div><style>.offer-wrap:hover{
3437  transform: scale(1.1);
3438  transition: 1s;
3439}
3440
3441.offer__top-image {
3442  border-top-left-radius: var(--img-border-radius);
3443  border-top-right-radius: var(--img-border-radius);
3444  display: flex;
3445  flex-direction: column;
3446}
3447
3448.offer__bottom-text {
3449  border-bottom-left-radius: var(--img-border-radius);
3450  border-bottom-right-radius: var(--img-border-radius);
3451}
3452
3453.offer a:hover {
3454  text-decoration: none;
3455}
3456
3457#Offer_obj1677152147474 .offer__title {
3458  font-size: 2rem;
3459  letter-spacing: 0rem;
3460}
3461
3462#Offer_obj1677152147474 .offer__bottom-text {
3463  font-size: 1rem;
3464  letter-spacing: 0rem;
3465}
3466
3467</style></section><div id="Spacer_obj1677152718660" data-test-id="Spacer" class="Spacer_obj1677152718660 autoSpacer"><style>.Spacer_obj1677152718660.spacer {
3468  --padding: undefined;
3469  --mobile-padding: undefined;
3470  padding: var(--padding) 0 0;
3471}
3472
3473@media (max-width: 992px) {
3474  .Spacer_obj1677152718660.spacer {
3475    padding: calc(var(--padding) * 0.9) 0 0;
3476  }
3477}
3478
3479@media (max-width: 768px) {
3480  .Spacer_obj1677152718660.spacer {
3481    padding: var(--mobile-padding) 0 0;
3482  }
3483}
3484
3485@media (max-width: 425px) {
3486  .Spacer_obj1677152718660.spacer {
3487    padding: var(--mobile-padding) 0 0;
3488  }
3489}
3490
3491
3492.Spacer_obj1677152718660.autoSpacer {
3493  --auto-padding: 100px;
3494  padding: var(--auto-padding) 0 0;
3495}
3496
3497@media (max-width: 992px) {
3498  .Spacer_obj1677152718660.autoSpacer {
3499    padding: calc(var(--auto-padding) * 0.9) 0 0;
3500  }
3501}
3502
3503@media (max-width: 768px) {
3504  .Spacer_obj1677152718660.autoSpacer {
3505    padding: calc(var(--auto-padding) * 0.7) 0 0;
3506  }
3507}
3508
3509@media (max-width: 425px) {
3510  .Spacer_obj1677152718660.autoSpacer {
3511    padding: calc(var(--auto-padding) * 0.5) 0 0;
3512  }
3513}</style></div><div id="Divider_obj1766397108772" class="
3514      w-100
3515      false
3516      divider-block__container
3517    "><div class="divider-block"></div><style>.divider-block__container {
3518  padding: 10px 15px;
3519  margin: 0 auto;
3520}
3521
3522.divider-block {
3523  width: 100%;
3524  height: 2px;
3525  background: #000;
3526}
3527
3528.divider-block_compact {
3529  max-width: 800px;
3530}
3531
3532.divider-block_max-compact {
3533  max-width: 685px;
3534}
3535
3536.w-85 > .divider-block {
3537  width: 85% !important;
3538  margin: 0 auto;
3539}
3540
3541@media screen and (max-width: 576px) {
3542  .divider-block__container {
3543    width: 100%;
3544    max-width: none;
3545  }
3546}
3547</style></div><section id="TitleWithImage_obj1652954366258" data-test-id="TitleWithImage" class="container image-text-block common-padding-bottom-blocks"><h2 class="image-text-block__title font-primary text-bold">Velkommen til din lokale baker</h2><div class="image-text-block__container"><div class="image-text-block__left-column font-secondary text-normal"><p ><p>Bodø Bakeri er hele Saltens lokale bakeri. Vi åpnet dørene i Bodø i mai 2009. Vår hovedproduksjon skjer i vårt moderne produksjonsanlegg på Alstad.</p><p>Vi er ett fullservice bakeri med brød, bakevarer, kaker, konditorvarer, påsmurt lunsj, catering og møtemat samt kaffebarer i våre utsalg. Våre bakeriutsalg finner du rundt om i Bodø, samt på Fauske.</p><p>Foruten om våre egne utsalg leverer vi daglig ferske varer til dagligvarehandelen, hoteller, kafeer, små- og store bedrifter samt komunale- og fylkeskommunale kunder i hele Salten.</p><p>Våre ansatte er her for å hjelpe deg. Med høy faglig kompetanse og ett brennende hjerte for faget ønsker vi å være din faste og lojale lokale baker og ikke minst så ønsker vi å være ditt førstevalg når du trenger brød, kaker og mat. Alle våre produkter lages helt fra bunnen av. Vi bruker ingen mikser eller halvfabrikater i våre produkter. Dermed har vi full kontroll over hva som befinner seg i våre produkter. Vi har i tillegg ett stort utvalg av allergivennlig mat som f.eks glutenfrie produkter, laktosefrie produkter og andre allergier / intoleranser.</p><p>Vårt mål har alltid vært og vil alltid være; fokus på høy kvalitet, kortreist mat, håndtverk og service.</p></p><img class="image-text-block__img image-text-block__img_type_bottom-left-pic" src="https://bcdn.cakeiteasy.com/1679512756017?width=1828&height=600&optimizer=image&format=webp&auto=compress" alt="Bakery image"></img></div><div class="image-text-block__right-column"><img class="image-text-block__img image-text-block__img_type_top-right-pic" src="https://bcdn.cakeiteasy.com/1677670739088?width=1200&height=600&optimizer
3547=image&format=webp&auto=compress" alt="Bakery image"></img><img class="image-text-block__img image-text-block__img_type_bottom-right-pic" src="https://foodspace.imgix.net/1679512732483?width=1044&height=600&auto=compress&format=webp&dpr=2" alt="Bakery image"></img></div></div></section><style>
3548.image-text-block p {
3549  margin-bottom: 1rem !important;
3550}
3551
3552.image-text-block__container {
3553  display: flex;
3554  flex-wrap: nowrap;
3555}
3556
3557.image-text-block__left-column {
3558  width: 457px;
3559  margin-right: 15px;
3560}
3561
3562.image-text-block__left-column a {
3563  color: #0000EE !important;
3564}
3565
3566.image-text-block__left-column ul {
3567  list-style: disc;
3568  margin: 0 auto;
3569  width: fit-content;
3570}
3571
3572.image-text-block__left-column ol {
3573  width: fit-content;
3574  margin: 0 auto;
3575}
3576
3577.image-text-block__left-column a:hover {
3578  text-decoration: underline!important;
3579}
3580
3581.image-text-block__left-column p:first-child {
3582  margin-bottom: 0;
3583}
3584
3585.image-text-block__left-column p:last-child {
3586  margin-bottom: 0;
3587}
3588
3589#TitleWithImage_obj1652954366258 .image-text-block__left-column * {
3590  font-size: 1rem !important;
3591  letter-spacing: 0.028125rem;
3592} 
3593
3594@media (max-width: 1200px) {
3595  .image-text-block__left-column {
3596    width: 350px;
3597  }
3598}
3599
3600@media (max-width: 991px) {
3601  .image-text-block__left-column {
3602    width: 290px;
3603  }
3604}
3605
3606@media (max-width: 767px) {
3607  .image-text-block__left-column {
3608    width: 100%;
3609    margin-right: 0;
3610  }
3611}
3612
3613@media (max-width: 767px) {
3614  .image-text-block {
3615    padding-left: 15px;
3616    padding-right: 15px;
3617  }
3618}
3619
3620@media (max-width: 575px) {
3621  .image-text-block {
3622    padding-left: 0;
3623    padding-right: 0;
3624    letter-spacing: 0.0032rem;
3625  }
3626}
3627
3628@media (max-width: 991px) {
3629  .image-text-block p {
3630    line-height: 1.5;
3631  }
3632}
3633
3634@media (max-width: 575px) {
3635  .image-text-block p {
3636    padding-left: 15px;
3637    padding-right: 15px;
3638  }
3639}
3640
3641.image-text-block__title {
3642  margin-bottom: 2rem;
3643}
3644
3645#TitleWithImage_obj1652954366258 .image-text-block__title {
3646  font-size: 2.1875rem !important;
3647  letter-spacing: 0rem;
3648}
3649
3650@media (max-width: 991px) {
3651  #TitleWithImage_obj1652954366258 .image-text-block__title {
3652    margin-bottom: 1rem;
3653  }
3654}
3655
3656@media (max-width: 768px) {
3657  .image-text-block__title {
3658    padding-left: 0;
3659  }
3660}
3661
3662@media (max-width: 575px) {
3663  .image-text-block__title {
3664    padding-left: 15px;
3665    padding-right: 15px;
3666  }
3667}
3668
3669.image-text-block__img {
3670  height: auto;
3671  display: block;
3672  object-fit: contain;
3673  border-radius: var(--img-border-radius);
3674}
3675
3676.image-text-block__right-column {
3677    padding-left: 15px;
3678    width: calc(100% - 457px);
3679    display: flex;
3680    flex-direction: column;
3681  }
3682
3683@media (max-width: 1199px) {
3684  .image-text-block__right-column {
3685    width: calc(100% - 350px);
3686  }
3687}
3688
3689@media (max-width: 991px) {
3690  .image-text-block__right-column {
3691    width: calc(100% - 290px);
3692  }
3693}
3694
3695@media (max-width: 767px) {
3696  .image-text-block__right-column {
3697    display: none !important;
3698  }
3699}
3700
3701.image-text-block__img_type_bottom-left-pic {
3702  margin-top: 80px;
3703}
3704
3705@media (max-width: 1200px) {
3706  .image-text-block__img_type_bottom-left-pic {
3707    margin-top: 30px;
3708  }
3709}
3710
3711@media (max-width: 767px) {
3712  .image-text-block__img_type_bottom-left-pic {
3713      margin-top: 46px;
3714  }
3715}
3716
3717.image-text-block__img_type_top-right-pic {
3718  width: 472px;
3719  height: 580px;
3720  object-fit: cover;
3721  object-position: center;
3722  align-self: flex-end;
3723}
3724
3725@media (max-width: 1199px) {
3726  .image-text-block__img_type_top-right-pic {
3727    width: 430px;
3728    height: 528px;
3729  }
3730}
3731
3732@media (max-width: 991px) {
3733  .image-text-block__img_type_top-right-pic {
3734    width: 340px;
3735    height: 417px;
3736  }
3737}
3738
3739.image-text-block__img_type_bottom-right-pic {
3740  margin-top: 30px;
3741}
3742
3743.image-text-block__img_type_bottom-left-pic,
3744.image-text-block__img_type_bottom-right-pic {
3745  width: 457px;
3746  height: 293px;
3747  display: block;
3748  object-fit: cover;
3749  object-position: center;
3750}
3751
3752@media (max-width: 1200px) {
3753  .image-text-block__img_type_bottom-left-pic,
3754  .image-text-block__img_type_bottom-right-pic {
3755    width: 350px;
3756    height: 225px;
3757  }
3758}
3759
3760@media (max-width: 991px) {
3761  .image-text-block__img_type_bottom-left-pic,
3762  .image-text-block__img_type_bottom-right-pic {
3763    width: 290px;
3764    height: 186px;
3765  }
3766}
3767
3768@media (max-width: 766px) {
3769  .image-text-block__img_type_bottom-left-pic,
3770  .image-text-block__img_type_bottom-right-pic {
3771    width: 100%;
3772    height: 240px;
3773  }
3774}
3775</style>
3775<script v-pre type="module">const data = JSON.parse(decodeURIComponent("%7B%22_blockName%22%3A%22TitleWithImage%22%2C%22Id%22%3A%22TitleWithImage_obj1652954366258%22%2C%22content%22%3A%7B%22title%22%3A%22Velkommen%20til%20din%20lokale%20baker%22%2C%22description%22%3A%22%3Cp%3EBod%C3%B8%20Bakeri%20er%20hele%20Saltens%20lokale%20bakeri.%20Vi%20%C3%A5pnet%20d%C3%B8rene%20i%20Bod%C3%B8%20i%20mai%202009.%20V%C3%A5r%20hovedproduksjon%20skjer%20i%20v%C3%A5rt%20moderne%20produksjonsanlegg%20p%C3%A5%20Alstad.%3C%2Fp%3E%3Cp%3EVi%20er%20ett%20fullservice%20bakeri%20med%20br%C3%B8d%2C%20bakevarer%2C%20kaker%2C%20konditorvarer%2C%20p%C3%A5smurt%20lunsj%2C%20catering%20og%20m%C3%B8temat%20samt%20kaffebarer%20i%20v%C3%A5re%20utsalg.%20V%C3%A5re%20bakeriutsalg%20finner%20du%20rundt%20om%20i%20Bod%C3%B8%2C%20samt%20p%C3%A5%20Fauske.%3C%2Fp%3E%3Cp%3EForuten%20om%20v%C3%A5re%20egne%20utsalg%20leverer%20vi%20daglig%20ferske%20varer%20til%20dagligvarehandelen%2C%20hoteller%2C%20kafeer%2C%20sm%C3%A5-%20og%20store%20bedrifter%20samt%20komunale-%20og%20fylkeskommunale%20kunder%20i%20hele%20Salten.%3C%2Fp%3E%3Cp%3EV%C3%A5re%20ansatte%20er%20her%20for%20%C3%A5%20hjelpe%20deg.%20Med%20h%C3%B8y%20faglig%20kompetanse%20og%20ett%20brennende%20hjerte%20for%20faget%20%C3%B8nsker%20vi%20%C3%A5%20v%C3%A6re%20din%20faste%20og%20lojale%20lokale%20baker%20og%20ikke%20minst%20s%C3%A5%20%C3%B8nsker%20vi%20%C3%A5%20v%C3%A6re%20ditt%20f%C3%B8rstevalg%20n%C3%A5r%20du%20trenger%20br%C3%B8d%2C%20kaker%20og%20mat.%20Alle%20v%C3%A5re%20produkter%20lages%20helt%20fra%20bunnen%20av.%20Vi%20bruker%20ingen%20mikser%20eller%20halvfabrikater%20i%20v%C3%A5re%20produkter.%20Dermed%20har%20vi%20full%20kontroll%20over%20hva%20som%20befinner%20seg%20i%20v%C3%A5re%20produkter.%20Vi%20har%20i%20tillegg%20ett%20stort%20utvalg%20av%20allergivennlig%20mat%20som%20f.eks%20glutenfrie%20produkter%2C%20laktosefrie%20produkter%20og%20andre%20allergier%20%2F%20intoleranser.%3C%2Fp%3E%3Cp%3EV%C3%A5rt%20m%C3%A5l%20har%20alltid%20v%C3%A6rt%20og%20vil%20alltid%20v%C3%A6re%3B%20fokus%20p%C3%A5%20h%C3%B8y%20kvalitet%2C%20kortreist%20mat%2C%20h%C3%A5ndtverk%20og%20service.%3C%2Fp%3E%22%2C%22images%22%3A%7B%22topRightImage%22%3A%22https%3A%2F%2Fmars-images.imgix.net%2F1677670739088%3Fauto%3Dformat%26fit%3Dclip%26w%3D1200%26%3Dundefined%22%2C%22bottomRightImage%22%3A%22https%3A%2F%2Fmars-images.imgix.net%2F1679512732483%3Fauto%3Dformat%26fit%3Dclip%26w%3D1200%26%3Dundefined%22%2C%22bottomLeftImage%22%3A%22https%3A%2F%2Fmars-images.imgix.net%2F1679512756017%3Fauto%3Dformat%26fit%3Dclip%26w%3D1200%26%3Dundefined%22%7D%7D%2C%22ui%22%3A%7B%22font%22%3A%7B%22fontDesktop%22%3A%7B%22titleFontSettings%22%3A%7B%22fontFamily%22%3A%22font-primary%22%2C%22fontSize%22%3A%2235%22%2C%22fontWeight%22%3A%22text-bold%22%2C%22letterSpacing%22%3A%220%22%2C%22textPosition%22%3A%22text-left%22%7D%2C%22contentFontSettings%22%3A%7B%22fontFamily%22%3A%22font-secondary%22%2C%22fontSize%22%3A%2216%22%2C%22fontWeight%22%3A%22text-normal%22%2C%22letterSpacing%22%3A%220.45%22%2C%22textPosition%22%3A%22text-left%22%7D%7D%2C%22fontMobile%22%3A%7B%7D%2C%22fontAsDesktop%22%3Atrue%7D%7D%2C%22block-id%22%3A%22TitleWithImage_obj1652954366258%22%2C%22titleFontSize%22%3A%222.1875%22%2C%22titleLetterSpacing%22%3A%220%22%2C%22contentFontSize%22%3A%221%22%2C%22contentLetterSpacing%22%3A%220.028125%22%2C%22children%22%3Anull%7D"));
3776</script>
3776<div id="Spacer_obj1650544554170" data-test-id="MobileSpacer" class="Spacer_obj1650544554170 spacer"><style>.Spacer_obj1650544554170.spacer {
3777  --padding: 98px;
3778  --mobile-padding: 91px;
3779  padding: var(--padding) 0 0;
3780}
3781
3782@media (max-width: 992px) {
3783  .Spacer_obj1650544554170.spacer {
3784    padding: calc(var(--padding) * 0.9) 0 0;
3785  }
3786}
3787
3788@media (max-width: 768px) {
3789  .Spacer_obj1650544554170.spacer {
3790    padding: var(--mobile-padding) 0 0;
3791  }
3792}
3793
3794@media (max-width: 425px) {
3795  .Spacer_obj1650544554170.spacer {
3796    padding: var(--mobile-padding) 0 0;
3797  }
3798}
3799
3800
3801.Spacer_obj1650544554170.autoSpacer {
3802  --auto-padding: undefined;
3803  padding: var(--auto-padding) 0 0;
3804}
3805
3806@media (max-width: 992px) {
3807  .Spacer_obj1650544554170.autoSpacer {
3808    padding: calc(var(--auto-padding) * 0.9) 0 0;
3809  }
3810}
3811
3812@media (max-width: 768px) {
3813  .Spacer_obj1650544554170.autoSpacer {
3814    padding: calc(var(--auto-padding) * 0.7) 0 0;
3815  }
3816}
3817
3818@media (max-width: 425px) {
3819  .Spacer_obj1650544554170.autoSpacer {
3820    padding: calc(var(--auto-padding) * 0.5) 0 0;
3821  }
3822}</style></div><section id="InstagramFeed_obj1676367541896" data-test-id="InstagramFeed" class="intagram-container_height intagram-container container d-flex flex-column align-items-center overflow-hidden common-padding-bottom-blocks"><div style="width:85%" class="intagram__title-container mb-5"><hr class="intagram__title-line"></hr><h2 class="intagram__title-text font-primary text-normal">Følg oss på Instagram</h2><hr class="intagram__title-line"></hr></div><div class="w-85">
3822<script src="https://apps.elfsight.com/p/platform.js" defer></script>
3822 <div class="elfsight-app-5654fbe4-094f-4571-8e46-2ae1033b83b6"></div></div><div class="pt-3 d-flex justify-content-center"><div id="obj800603f7fb72443a8a7b541c6a321e53"><style>.social-icon {  
3823  width:39px;
3824  height:39px;
3825}
3826
3827.social-icon svg {  
3828  padding: 4.5px;
3829}
3830
3831.social-icon:hover {  
3832  text-decoration: none;
3833}
3834
3835.rounded-circle {
3836  margin-right: 9px;
3837}
3838
3839.rounded-circle:last-child {
3840  margin-right: 0px;
3841}
3842
3843.rounded-circle .fa-facebook-f {
3844  font-size: 21px;
3845  letter-spacing: 0.028rem;
3846}
3847
3848.rounded-circle .fa-instagram {
3849  font-size: 26px;
3850  height: 25px;
3851  letter-spacing: 0.028rem;
3852}</style><div class="d-flex rounded-circle__container"><a class="rounded-circle cursor-pointer border border-2 fs-3 d-flex justify-content-center align-items-center social-icon" style="undefined" target="_blank" href="https://www.facebook.com/Bodobakeri/"><i class="fab fa-facebook-f"></i></a><a class="rounded-circle cursor-pointer border border-2 fs-3 d-flex justify-content-center align-items-center social-icon" style="undefined" target="_blank" href="https://www.instagram.com/bodobakeri/"><i class="fab fa-instagram"></i></a></div></div></div><style>.intagram__title-container  {
3853  display: grid;
3854  grid-template-columns: 1fr max-content 1fr;
3855  justify-content: center;
3856}
3857
3858.intagram__title-text {
3859  margin: auto 1vw .5rem;
3860}
3861
3862.intagram__title-line {
3863  margin: auto 0;
3864  height: 2px!important;
3865  color: #000;
3866  opacity: 1;
3867}
3868
3869#InstagramFeed_obj1676367541896 .intagram__title-text {
3870  font-size: 1.5625rem;
3871  letter-spacing: 0rem;
3872}
3873
3874@media (max-width: 425px) {
3875  .intagram__title-text {
3876    max-width: 90vmin;
3877    text-align: center;
3878  }
3879}
3880
3881/* remove code above and intagram-container_height class from jsx after tollbar updates
3882do the same in check delivery block */
3883.intagram-container_height.intagram-container {
3884  min-height: 1070px;
3885}
3886
3887@media screen and (max-width: 1200px) {
3888  .intagram-container_height.intagram-container {
3889    min-height: 910px;
3890  }
3891}
3892
3893@media screen and (max-width: 1000px) {
3894  .intagram-container_height.intagram-container {
3895    min-height: 420px;
3896  }
3897}
3898</style></section><div id="Spacer_obj1676367533465" data-test-id="MobileSpacer" class="Spacer_obj1676367533465 spacer"><style>.Spacer_obj1676367533465.spacer {
3899  --padding: 80px;
3900  --mobile-padding: 40px;
3901  padding: var(--padding) 0 0;
3902}
3903
3904@media (max-width: 992px) {
3905  .Spacer_obj1676367533465.spacer {
3906    padding: calc(var(--padding) * 0.9) 0 0;
3907  }
3908}
3909
3910@media (max-width: 768px) {
3911  .Spacer_obj1676367533465.spacer {
3912    padding: var(--mobile-padding) 0 0;
3913  }
3914}
3915
3916@media (max-width: 425px) {
3917  .Spacer_obj1676367533465.spacer {
3918    padding: var(--mobile-padding) 0 0;
3919  }
3920}
3921
3922
3923.Spacer_obj1676367533465.autoSpacer {
3924  --auto-padding: undefined;
3925  padding: var(--auto-padding) 0 0;
3926}
3927
3928@media (max-width: 992px) {
3929  .Spacer_obj1676367533465.autoSpacer {
3930    padding: calc(var(--auto-padding) * 0.9) 0 0;
3931  }
3932}
3933
3934@media (max-width: 768px) {
3935  .Spacer_obj1676367533465.autoSpacer {
3936    padding: calc(var(--auto-padding) * 0.7) 0 0;
3937  }
3938}
3939
3940@media (max-width: 425px) {
3941  .Spacer_obj1676367533465.autoSpacer {
3942    padding: calc(var(--auto-padding) * 0.5) 0 0;
3943  }
3944}</style></div><section id="CheckDelivery_obj1650544835447" data-test-id="CheckDelivery" class="map__no-bg"><div class="map container common-padding-bottom-blocks"><div class="map__tabs d-flex"><button id="objc5f96c07329141d693816c2b89498cc1" custom-data="Choose outlet" class="tab-button font-secondary text-bold">Her finner du oss</button><style>#objc5f96c07329141d693816c2b89498cc1.tab-button {
3945  font-size: 1.125rem;
3946  letter-spacing: 0.03125rem;
3947}
3948
3949.tab-button {
3950  padding: 9px 0;
3951  line-height: 1.5;
3952  cursor: pointer;
3953  background: transparent;
3954  border: none;
3955  margin-right: 30px;
3956  color: inherit;
3957}
3958
3959@media (max-width: 767px) {
3960  .tab-button {
3961    margin-right: 20px;
3962  }
3963}
3964
3965@media (max-width: 575px) {
3966  #objc5f96c07329141d693816c2b89498cc1.tab-button {
3967    font-size: 1rem;
3968    margin-right: 15px;
3969  }
3970}
3971</style>
3971<script v-pre type="module">const data = JSON.parse(decodeURIComponent("%7B%22_blockName%22%3A%22TabButton%22%2C%22color%22%3A%22%23ffa301%22%2C%22title%22%3A%22Her%20finner%20du%20oss%22%2C%22custom%22%3A%22Choose%20outlet%22%2C%22fontSettings%22%3A%7B%22fontFamily%22%3Anull%2C%22fontSize%22%3Anull%2C%22fontWeight%22%3Anull%2C%22letterSpacing%22%3Anull%7D%2C%22Id%22%3A%22objc5f96c07329141d693816c2b89498cc1%22%2C%22fontSize%22%3A%221.125%22%2C%22letterSpacing%22%3A%220.03125%22%2C%22children%22%3Anull%7D"));const tabs = document.querySelectorAll('.tab-button');
3972const contents = document.querySelectorAll('.tab-content');
3973tabs[0].classList.add('tab-button_active');
3974contents[0].style.display = "block";
3975
3976const handleTabClick = (e) => {
3977  tabs.forEach((i => {
3978    if (i.classList.contains('tab-button_active')) {
3979      i.classList.remove('tab-button_active')
3980    }
3981  }));
3982  contents.forEach(i => {
3983    i.style.display = "none";
3984  });
3985  e.currentTarget.classList.add('tab-button_active');
3986  const featureName = e.currentTarget.getAttribute('custom-data');
3987  document.getElementById(featureName).style.display = "block";
3988};
3989
3990tabs.forEach(t => {
3991  t.addEventListener('click', handleTabClick);
3992});</script>
3992<button id="obj27d702f027034f1fb1f42371269b47ef" custom-data="Choose delivery" class="tab-button font-secondary text-bold">Levering på dør</button><style>#obj27d702f027034f1fb1f42371269b47ef.tab-button {
3993  font-size: 1.125rem;
3994  letter-spacing: 0.03125rem;
3995}
3996
3997.tab-button {
3998  padding: 9px 0;
3999  line-height: 1.5;
4000  cursor: pointer;
4001  background: transparent;
4002  border: none;
4003  margin-right: 30px;
4004  color: inherit;
4005}
4006
4007@media (max-width: 767px) {
4008  .tab-button {
4009    margin-right: 20px;
4010  }
4011}
4012
4013@media (max-width: 575px) {
4014  #obj27d702f027034f1fb1f42371269b47ef.tab-button {
4015    font-size: 1rem;
4016    margin-right: 15px;
4017  }
4018}
4019</style>
4019<script v-pre type="module">const data = JSON.parse(decodeURIComponent("%7B%22_blockName%22%3A%22TabButton%22%2C%22color%22%3A%22%23ffa301%22%2C%22title%22%3A%22Levering%20p%C3%A5%20d%C3%B8r%22%2C%22custom%22%3A%22Choose%20delivery%22%2C%22fontSettings%22%3A%7B%22fontFamily%22%3Anull%2C%22fontSize%22%3Anull%2C%22fontWeight%22%3Anull%2C%22letterSpacing%22%3Anull%7D%2C%22Id%22%3A%22obj27d702f027034f1fb1f42371269b47ef%22%2C%22fontSize%22%3A%221.125%22%2C%22letterSpacing%22%3A%220.03125%22%2C%22children%22%3Anull%7D"));const tabs = document.querySelectorAll('.tab-button');
4020const contents = document.querySelectorAll('.tab-content');
4021tabs[0].classList.add('tab-button_active');
4022contents[0].style.display = "block";
4023
4024const handleTabClick = (e) => {
4025  tabs.forEach((i => {
4026    if (i.classList.contains('tab-button_active')) {
4027      i.classList.remove('tab-button_active')
4028    }
4029  }));
4030  contents.forEach(i => {
4031    i.style.display = "none";
4032  });
4033  e.currentTarget.classList.add('tab-button_active');
4034  const featureName = e.currentTarget.getAttribute('custom-data');
4035  document.getElementById(featureName).style.display = "block";
4036};
4037
4038tabs.forEach(t => {
4039  t.addEventListener('click', handleTabClick);
4040});</script>
4040</div><div class="tab-content check-delivery__map" id="Choose outlet"><iframe id="iframe" class="desktop-map" data-src="/shop/standalone/outlets-map?font=%257B%2522category%2522%253A%2522sans-serif%2522%257D"></iframe></div><div class="tab-content check-delivery-to-door Lato" id="Choose delivery"><div id="undefined">
4041<div id="obj5af87e10588e4a789ee2ac4c85142932_VUE">
4042  <div class="delivery-check">
4043    <p
4044        class="delivery-check__label">
4045      Skriv postnummer
4046    </p>
4047    <div class="d-flex align-items-end delivery-check__wrap">
4048      <form class="delivery-check__form d-flex flex-column">
4049        <input
4050            class="delivery-check__control delivery-check__input"
4051            placeholder="Eks. 0550"
4052            :value="formattedPostNumber"
4053            v-model="formattedPostNumber"
4054            @keydown="formatPostNumber"
4055            @input="getPostNumberInfo"
4056            :maxlength="maskDigits"
4057        />
4058        <svg class="spinner" v-if="isLoading" viewBox="0 0 66 66" xmlns="http://www.w3.org/2000/svg">
4059          <circle class="path" fill="none" stroke-width="6" stroke-linecap="round" cx="33" cy="33" r="30"></circle>
4060        </svg>
4061      </form>
4062      <div class="delivery-check__control delivery-check__result d-flex align-items-center">
4063        {{ String(formattedPostNumber).length > 0 ? placeName : '' }}
4064      </div>
4065    </div>
4066    <p v-if="isNotFound && String(formattedPostNumber).length === maskDigits"
4067       class="delivery-check__impossible mt-3">Ingen levering tilgjengelig i {{ formattedPostNumber }}</p>
4068    <div v-if="hasDeliveryPrices" class="delivery-check__price-block">
4069      <h3 class="delivery-check__title">Leveringspriser</h3>
4070      <ul class="delivery-check__list">
4071        <li
4072            v-for="item in deliveryPrices"
4073            :key="item.type"
4074            v-if="item.isActive"
4075            class="delivery-check__item d-flex align-items-start">
4076          <span class="delivery-check__day">{{ item.type }}</span>
4077          <div>
4078            <div class="delivery-check__common d-flex">
4079              <div
4080                  v-if="!item.isActive"
4081                  class="delivery-check__time">
4082                Stengt
4083              </div>
4084              <div
4085                  v-if="item.isActive"
4086                  class="delivery-check__time">
4087                {{ getTime(item.timeRange.start, item.timeRange.end) }}
4088              </div>
4089              <div
4090                  v-if="item.isActive"
4091                  class="delivery-check__cost">
4092                {{ item.price }} kr
4093              </div>
4094            </div>
4095            <div
4096                class="delivery-check__custom d-flex"
4097                v-for="item in item.customPrices"
4098                :key="Math.random()">
4099              <div
4100                  class="delivery-check__time">
4101                {{ getTime(item.start, item.end) }}
4102              </div>
4103              <div
4104                  class="delivery-check__cost">
4105                {{ item.price }} kr
4106              </div>
4107            </div>
4108          </div>
4109        </li>
4110      </ul>
4111    </div>
4112  </div>
4113</div>
4114</div><style>
4115.delivery-check {
4116  border: 1px solid #c2c2c2;
4117  padding: 20px;
4118  background-color: #fff;
4119}
4120
4121@media (min-width: 992px) {
4122  .delivery-check {
4123    padding: 40px 30px 20px;
4124  }
4125}
4126
4127.delivery-check__form {
4128  position: relative;
4129  width: 40%;
4130}
4131
4132.delivery-check__wrap {
4133  gap: 30px;
4134  max-width: 427.6px;
4135  margin-bottom: 20px;
4136}
4137
4138.delivery-check__label {
4139  font-size: 1.125rem;
4140  font-weight: 700;
4141  line-height: 1.5;
4142  margin-top: 0;
4143  margin-bottom: 0.4rem;
4144}
4145
4146.delivery-check__control {
4147  height: calc(2.25rem + 4px);
4148  line-height: calc(2.25rem + 4px);
4149  padding: 0.375rem 0.75rem;
4150  font-size: 1rem;
4151  border-radius: 0.25rem;
4152  border: 1px solid #ced4da;
4153  color: #333;
4154}
4155
4156.delivery-check__input {
4157  max-width: 160px;
4158  width: 100%;
4159  transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
4160  background: transparent;
4161  outline: none;
4162}
4163
4164.delivery-check__input::-webkit-outer-spin-button,
4165.delivery-check__input::-webkit-inner-spin-button {
4166  -webkit-appearance: none;
4167  margin: 0;
4168}
4169
4170input[type='number'] {
4171  -moz-appearance: textfield;
4172}
4173
4174.delivery-check__input:active,
4175.delivery-check__input:focus,
4176.delivery-check__input:focus-visible {
4177  border-color: var(--theme-color);
4178  box-shadow: 0 0 0 1px var(--theme-color);
4179}
4180
4181.delivery-check__input:focus::-webkit-input-placeholder,
4182.delivery-check__input:hover::-webkit-input-placeholder {
4183  color: transparent
4184}
4185
4186.delivery-check__input:focus::-moz-placeholder,
4187.delivery-check__input:hover::-moz-placeholder {
4188  color: transparent
4189}
4190
4191.delivery-check__input:focus:-moz-placeholder,
4192.delivery-check__input:hover:-moz-placeholder {
4193  color: transparent
4194}
4195
4196.delivery-check__input:focus:-ms-input-placeholder,
4197.delivery-check__input:hover:-ms-input-placeholder {
4198  color: transparent
4199}
4200
4201.delivery-check__result {
4202  background-color: #e9ecef;
4203  max-width: 237px;
4204  width: 58.333333%;
4205}
4206
4207.delivery-check__item {
4208  border-bottom: 1px solid #EBEBEB;
4209  padding: 0.4rem 0 0.4rem;
4210  max-width: 428px;
4211  line-height: 1.5;
4212  margin-bottom: 0;
4213}
4214
4215.delivery-check__item:last-child {
4216  border-bottom: none;
4217}
4218
4219.delivery-check__title {
4220  font-size: 1.125rem;
4221  font-weight: 700;
4222  line-height: 1.2;
4223  margin-bottom: 8px;
4224  margin-top: 20px;
4225}
4226
4227.delivery-check__day {
4228  font-size: .8125rem;
4229  font-weight: 700;
4230  width: 75px;
4231  letter-spacing: normal;
4232}
4233
4234@media (max-width: 992px) {
4235  .delivery-check__day {
4236    width: 60px;
4237  }
4238}
4239
4240.delivery-check__time {
4241  margin: 0 19px 0 24px;
4242  font-size: .8125rem;
4243  letter-spacing: normal;
4244  min-width: 85px;
4245}
4246
4247.delivery-check__cost {
4248  font-size: .8125rem;
4249  font-weight: 700;
4250  letter-spacing: normal;
4251}
4252
4253.delivery-check__impossible {
4254  font-weight: 700;
4255}
4256
4257.delivery-check__form .spinner {
4258  width: 26px;
4259  position: absolute;
4260  right: 7%;
4261  top: 19%;
4262  animation: rotator 1.4s linear infinite;
4263}
4264
4265.delivery-check__form .spinner .path {
4266  stroke-dasharray: 187;
4267  stroke-dashoffset: 0;
4268  stroke: var(--theme-color);
4269  transform-origin: center;
4270  animation: dash 1.4s ease-in-out infinite;
4271}
4272
4273@keyframes rotator {
4274  0% {
4275    transform: rotate(0deg);
4276  }
4277  100% {
4278    transform: rotate(270deg);
4279  }
4280}
4281
4282@keyframes dash {
4283  0% {
4284    stroke-dashoffset: 187;
4285  }
4286  50% {
4287    stroke-dashoffset: 45;
4288    transform: rotate(135deg);
4289  }
4290  100% {
4291    stroke-dashoffset: 187;
4292    transform: rotate(450deg);
4293  }
4294}�</style>
4294<script v-pre type="module">const data = JSON.parse(decodeURIComponent("%7B%22_blockName%22%3A%22CheckDeliveryToDoor%22%2C%22Id%22%3A%22obj5af87e10588e4a789ee2ac4c85142932%22%2C%22color%22%3A%22%23ffa301%22%2C%22children%22%3Anull%2C%22locale%22%3A%22NO%22%2C%22bakeryCode%22%3A%22NO%22%2C%22bakeryId%22%3A84%7D"));
4295const vueApp = new MarsVue(
4296    'obj5af87e10588e4a789ee2ac4c85142932_VUE',
4297    {
4298      ...data,
4299      methods: [
4300        {
4301          name: 'getPlace',
4302          block: 'CheckDeliveryToDoor'
4303        },
4304        {
4305          name: 'getDeliveryPrices',
4306          block: 'CheckDeliveryToDoor'
4307        }
4308      ]
4309    },
4310    {
4311      data: {
4312        ...data,
4313        locale: data.bakeryCode,
4314        query: '',
4315        formattedPostNumber: null,
4316        placeName: '',
4317        notFoundLabel: 'Ikke funnet',
4318        deliveryPrices: [],
4319        isNotFound: false,
4320        hasDeliveryPrices: false,
4321        isLoading: false,
4322        bakeryId: data.bakeryId
4323      },
4324      computed: {
4325        maskDigits: function () {
4326          if (this.locale === 'SE') {
4327            return '999 99'.length;
4328          } else {
4329            return '9999'.length;
4330          }
4331        }
4332      },
4333      methods: {
4334        getPostNumberInfo() {
4335          if (String(this.formattedPostNumber).length === this.maskDigits) {
4336            this.hasDeliveryPrices = false;
4337            this.isNotFound = false;
4338            this.deliveryPrices = [];
4339            this.placeName = '';
4340            this.isLoading = true;
4341            Promise.allSettled([
4342              this.getPlace(),
4343              this.getDeliveryPrices()
4344            ])
4345                .then(([placeResult, pricesResult]) => {
4346                  const placeValue = placeResult.status === 'fulfilled' ? placeResult.value : null;
4347                  const pricesValue = pricesResult.status === 'fulfilled' ? pricesResult.value : [];
4348                  const hasPlace = !!placeValue;
4349                  const hasPrices = Array.isArray(pricesValue) && pricesValue.length > 0;
4350
4351                  if (!hasPlace || !hasPrices) {
4352                    this.placeName = hasPlace ? placeValue : this.notFoundLabel;
4353                    this.isNotFound = true;
4354                    this.hasDeliveryPrices = false;
4355                    this.deliveryPrices = [];
4356                    return;
4357                  }
4358
4359                  this.placeName = placeValue;
4360                  this.deliveryPrices = pricesValue;
4361                  this.hasDeliveryPrices = true;
4362                  this.isNotFound = false;
4363                })
4364                .finally(() => {
4365                  this.isLoading = false;
4366                });
4367          }
4368        },
4369        convertMinToHours(time) {
4370          return {
4371            hours: ((time - (time % 60)) / 60).toString().padStart(2, '0'),
4372            mins: (time % 60).toString().padStart(2, '0')
4373          }
4374        },
4375        getTime(startMin, endMin) {
4376          const startHour = this.convertMinToHours(startMin);
4377          const endHour = this.convertMinToHours(endMin);
4378          return `${startHour.hours}:${startHour.mins} - ${endHour.hours}:${endHour.mins}`;
4379        },
4380        getPlace() {
4381          return this.api.getPlace(this.formattedPostNumber, this.locale)
4382              .then((data) => {
4383                if (!data) {
4384                  return null;
4385                }
4386                const placeName = data.placeName !== '' ? data.placeName : data.cityName;
4387                return placeName || null;
4388              });
4389        },
4390        getDeliveryPrices() {
4391          return this.api.getDeliveryPrices(this.formattedPostNumber, this.locale);
4392        },
4393        formatPostNumber(e) {
4394          const key = e.key
4395          if (!/^\d+/g.test(key)) {
4396            e.preventDefault()
4397          }
4398          this.formattedPostNumber = this.wearMask(e, e.target.value);
4399        },
4400        wearMask(e, numstr) {
4401          if (e.keyCode !== 8) {
4402            if (numstr.length === 3 && this.locale === 'SE') {
4403              const digits = numstr.substring(0, 3);
4404              return `${digits} `
4405            } else {
4406              return numstr
4407            }
4408          } else {
4409            if (numstr.length === 5 && this.locale === 'SE') {
4410              const digits = numstr.substring(0, numstr.length - 2);
4411              return `${digits}`
4412            } else {
4413              const digits = numstr.substring(0, numstr.length - 1);
4414              return `${digits}`
4415            }
4416          }
4417        }
4418      }
4419    }
4420);�</script>
4420</div></div><style>
4421.map .tab-content {
4422  display: none;
4423}
4424
4425.tab-content {
4426  background: transparent;
4427  --theme-color: #ffa301;
4428} 
4429
4430@media (min-width: 992px) {
4431  .map__bg {
4432    padding-top: 60px;
4433    padding-bottom: 60px;
4434    background-image: ;
4435    background-position: center;
4436    background-size: cover;
4437  }
4438
4439  .map__bg .tab-button {
4440    background-color: #ffa301;
4441    color: #fff !important;
4442    padding: 12px 20px;
4443    border-radius: 5px 5px 0 0;
4444    border-bottom: 0;
4445    margin-right: 0px;
4446  }
4447  
4448  .map__bg .tab-button_active {
4449    border-bottom: 0;
4450    background-color: #fff;
4451    color: #ffa301 !important;
4452  }
4453}
4454
4455@media (max-width: 992px) {
4456  .map__bg .tab-button_active {
4457  color: #ffa301;
4458  border-bottom: 5px solid #ffa301;
4459  }
4460}
4461
4462
4463@media screen and (min-width: 987px) {
4464  .check-delivery__map {
4465    min-height: 500px;
4466  }
4467}
4468
4469.desktop-map {
4470  height: 500px;
4471  display: block!important;
4472}
4473
4474@media screen and (max-width: 986px) {
4475  .desktop-map {
4476    min-height: 100px;
4477    height: auto;
4478  }
4479}
4480.map__no-bg .tab-button_active {
4481  color: #ffa301;
4482  border-bottom: 5px solid #ffa301;
4483}
4484/* .desktop-map {
4485  display: none;
4486}
4487
4488@media screen and (min-width: 991px) {
4489  .desktop-map {
4490    height: 500px;
4491    display: block!important;
4492  }
4493} */</style></section>
4493<script v-pre type="module">const data = JSON.parse(decodeURIComponent("%7B%22_blockName%22%3A%22CheckDelivery%22%2C%22Id%22%3A%22CheckDelivery_obj1650544835447%22%2C%22content%22%3A%7B%7D%2C%22ui%22%3A%7B%22font%22%3A%7B%22fontSettings%22%3A%7B%22fontFamily%22%3Anull%2C%22fontSize%22%3Anull%2C%22fontWeight%22%3Anull%2C%22letterSpacing%22%3Anull%7D%2C%22contentFontType%22%3A%22Lato%22%7D%2C%22blockBackground%22%3A%7B%22background%22%3A%22%22%7D%7D%2C%22block-id%22%3A%22CheckDelivery_obj1650544835447%22%2C%22bgUrl%22%3A%22%22%2C%22color%22%3A%22%23ffa301%22%2C%22activeTextColorWithBg%22%3A%22%23ffa301%22%2C%22disableTextColorWithBg%22%3A%22%23fff%22%2C%22bgColor%22%3A%22%23ffa301%22%2C%22children%22%3Anull%7D"));window.onmessage = (event) => {
4494  if (event.origin === window.location.origin) {
4495    resizeContainerEvent(event.data);
4496  }
4497};
4498
4499function resizeContainerEvent(eventData) {
4500  const { height } = eventData;
4501
4502  if (!height) return;
4503
4504  const iframe = document.querySelector(`#${data.Id} iframe`);
4505  if (!iframe) return;
4506
4507  iframe.style.height = `${height}px`;
4508}
4509
4510// Each map iframe creates a paid Stadia map, so it gets its address (data-src → src) only once
4511// it is within 1000px of the screen. A closed tab is display:none and never intersects until it
4512// is opened. No IntersectionObserver (very old browsers) → load at once, never leave it empty.
4513function loadMapsWhenNear() {
4514  const frames = document.querySelectorAll(`#${data.Id} iframe[data-src]`);
4515  const load = (frame) => {
4516    if (!frame.getAttribute('src')) frame.setAttribute('src', frame.getAttribute('data-src'));
4517  };
4518
4519  if (!('IntersectionObserver' in window)) {
4520    frames.forEach(load);
4521    return;
4522  }
4523
4524  const observer = new IntersectionObserver((entries) => {
4525    entries.forEach((entry) => {
4526      if (!entry.isIntersecting) return;
4527      load(entry.target);
4528      observer.unobserve(entry.target);
4529    });
4530  }, { rootMargin: '1000px 0px' });
4531
4532  frames.forEach((frame) => observer.observe(frame));
4533}
4534
4535loadMapsWhenNear();
4536</script>
4536<div id="Spacer_obj1677672389883" data-test-id="Spacer" class="Spacer_obj1677672389883 autoSpacer"><style>.Spacer_obj1677672389883.spacer {
4537  --padding: undefined;
4538  --mobile-padding: undefined;
4539  padding: var(--padding) 0 0;
4540}
4541
4542@media (max-width: 992px) {
4543  .Spacer_obj1677672389883.spacer {
4544    padding: calc(var(--padding) * 0.9) 0 0;
4545  }
4546}
4547
4548@media (max-width: 768px) {
4549  .Spacer_obj1677672389883.spacer {
4550    padding: var(--mobile-padding) 0 0;
4551  }
4552}
4553
4554@media (max-width: 425px) {
4555  .Spacer_obj1677672389883.spacer {
4556    padding: var(--mobile-padding) 0 0;
4557  }
4558}
4559
4560
4561.Spacer_obj1677672389883.autoSpacer {
4562  --auto-padding: 80px;
4563  padding: var(--auto-padding) 0 0;
4564}
4565
4566@media (max-width: 992px) {
4567  .Spacer_obj1677672389883.autoSpacer {
4568    padding: calc(var(--auto-padding) * 0.9) 0 0;
4569  }
4570}
4571
4572@media (max-width: 768px) {
4573  .Spacer_obj1677672389883.autoSpacer {
4574    padding: calc(var(--auto-padding) * 0.7) 0 0;
4575  }
4576}
4577
4578@media (max-width: 425px) {
4579  .Spacer_obj1677672389883.autoSpacer {
4580    padding: calc(var(--auto-padding) * 0.5) 0 0;
4581  }
4582}</style></div><section id="Gallery_obj1677152792294" data-test-id="Gallery" class="common-padding-bottom-blocks"><div class="container d-flex justify-content-between align-items-center small-gallery"><a class="d-block small-gallery__wrapper" onClick="Modal.open('/bakery/fullsize-image/image?url=https://bcdn.cakeiteasy.com/1677673256696?width=1080&height=1080&optimizer=image&format=webp&auto=compress&fit=crop', {hideModalHeader: true, domId: 'custom', width: '540px', roundCorners: true })"><img class="small-gallery__img" src="https://bcdn.cakeiteasy.com/1677673256696?width=700&height=700&optimizer=image&format=webp&auto=compress&fit=crop" alt="Bakery image"></img></a><a class="d-block small-gallery__wrapper" onClick="Modal.open('/bakery/fullsize-image/image?url=https://bcdn.cakeiteasy.com/1677673326436?width=1080&height=1080&optimizer=image&format=webp&auto=compress&fit=crop', {hideModalHeader: true, domId: 'custom', width: '540px', roundCorners: true })"><img class="small-gallery__img" src="https://bcdn.cakeiteasy.com/1677673326436?width=700&height=700&optimizer=image&format=webp&auto=compress&fit=crop" alt="Bakery image"></img></a><a class="d-block small-gallery__wrapper" onClick="Modal.open('/bakery/fullsize-image/image?url=https://bcdn.cakeiteasy.com/1677672378539?width=1080&height=1080&optimizer=image&format=webp&auto=compress&fit=crop', {hideModalHeader: true, domId: 'custom', width: '540px', roundCorners: true })"><img class="small-gallery__img" src="https://bcdn.cakeiteasy.com/1677672378539?width=700&height=700&optimizer=image&format=webp&auto=compress&fit=crop" alt="Bakery image"></img></a></div></section><style>
4583.gap {
4584  gap: 9px;
4585}
4586
4587.xmodal_header_1 .fullsize__image .xmodal_header_1 {
4588  border: none!important;
4589}
4590
4591.xmodal-header:not(.show) .xmodal-header-text {
4592  display: none!important;
4593}
4594
4595/* .xmodal-container {
4596  border-radius:0!important;
4597} */
4598
4599/* .small-gallery {
4600  padding-top: 48px;
4601  padding-bottom: 48px;
4602} */
4603
4604@media (max-width: 992px) {
4605  .small-gallery {
4606    padding: 0px 15px;
4607  }
4608}
4609
4610@media (max-width: 575px) {
4611  .small-gallery {
4612    padding: 0px 0px;
4613  }
4614}
4615
4616@media (max-width: 375px) {
4617  .small-gallery {
4618    padding-right: 0;
4619    padding-left: 0;
4620  }
4621}
4622
4623.small-gallery__wrapper {
4624  cursor: pointer;
4625}
4626
4627.small-gallery__img {
4628  width: 350px;
4629  height: 350px;
4630  display: block;
4631  object-fit: cover;
4632  object-position: top center;
4633  border-radius: var(--img-border-radius);
4634}
4635
4636@media (max-width: 1200px){
4637  .small-gallery__img {
4638    width: 290px;
4639    height: 290px;
4640  }
4641}
4642
4643@media (max-width: 992px){
4644  .small-gallery__img {
4645    width: 223px;
4646    height: 223px;
4647  }
4648}
4649
4650@media (max-width: 768px){
4651  .small-gallery__img {
4652    width: 100%;
4653    height: 100%;
4654  }
4655}
4656
4657@media (max-width: 768px) {
4658  .small-gallery__wrapper {
4659    width: calc(100% - 18px);
4660  }
4661}
4662</style>
4662<script v-pre type="module">const data = JSON.parse(decodeURIComponent("%7B%22_blockName%22%3A%22Gallery%22%2C%22Id%22%3A%22Gallery_obj1677152792294%22%2C%22content%22%3A%7B%22firstImage%22%3A%7B%22image%22%3A%22https%3A%2F%2Fmarscode.s3.eu-north-1.amazonaws.com%2Fassets%2Fimg%2F1677673256696%22%7D%2C%22secondImage%22%3A%7B%22image%22%3A%22https%3A%2F%2Fmarscode.s3.eu-north-1.amazonaws.com%2Fassets%2Fimg%2F1677673326436%22%7D%2C%22thirdImage%22%3A%7B%22image%22%3A%22https%3A%2F%2Fmars-images.imgix.net%2F1677672378539%3Fauto%3Dcompress%26fit%3Dclip%26w%3D1200%22%7D%7D%2C%22block-id%22%3A%22Gallery_obj1677152792294%22%2C%22children%22%3Anull%7D"));
4663</script>
4663<div id="Spacer_obj1652954678242" data-test-id="MobileSpacer" class="Spacer_obj1652954678242 spacer"><style>.Spacer_obj1652954678242.spacer {
4664  --padding: 100px;
4665  --mobile-padding: 88px;
4666  padding: var(--padding) 0 0;
4667}
4668
4669@media (max-width: 992px) {
4670  .Spacer_obj1652954678242.spacer {
4671    padding: calc(var(--padding) * 0.9) 0 0;
4672  }
4673}
4674
4675@media (max-width: 768px) {
4676  .Spacer_obj1652954678242.spacer {
4677    padding: var(--mobile-padding) 0 0;
4678  }
4679}
4680
4681@media (max-width: 425px) {
4682  .Spacer_obj1652954678242.spacer {
4683    padding: var(--mobile-padding) 0 0;
4684  }
4685}
4686
4687
4688.Spacer_obj1652954678242.autoSpacer {
4689  --auto-padding: undefined;
4690  padding: var(--auto-padding) 0 0;
4691}
4692
4693@media (max-width: 992px) {
4694  .Spacer_obj1652954678242.autoSpacer {
4695    padding: calc(var(--auto-padding) * 0.9) 0 0;
4696  }
4697}
4698
4699@media (max-width: 768px) {
4700  .Spacer_obj1652954678242.autoSpacer {
4701    padding: calc(var(--auto-padding) * 0.7) 0 0;
4702  }
4703}
4704
4705@media (max-width: 425px) {
4706  .Spacer_obj1652954678242.autoSpacer {
4707    padding: calc(var(--auto-padding) * 0.5) 0 0;
4708  }
4709}</style></div></div></div><section id="FooterContainer"><footer id="CommonFooter" data-test-id="SimplifiedFooter" style="background-color: #3c3b3b"><div class="container simple-footer"><a href="https://www.bodobakeri.no" class="simple-footer__row simple-footer__row_type_logo"><img class="simple-footer__logo" src="https://bcdn.cakeiteasy.com/1677585941573?auto=compress&fit=clip&w=1200" alt="Bakery logo"></img></a><div class="simple-footer__row simple-footer__row_type_description"><h2 class="simple-footer__title Lato  text-bold">Kontakt oss eller kom innom for en bolle!</h2></div><div class="simple-footer__row simple-footer__row_type_contacts pb-3"><span class="simple-footer__contact-address Lato  text-normal"><p>Notveien 1</p></span><span class="simple-footer__contact-address Lato  text-normal"><p>8013 Bodø&nbsp;</p></span></div><div class="simple-footer__row simple-footer__row_type_contacts"><a class="simple-footer__contact-link Lato  text-normal" href="tel:75 58 02 00">75 58 02 00</a><a class="simple-footer__contact-link Lato  text-normal" href="mailto:[email protected]">[email protected]</a><p class="Lato  text-normal"></p></div><div class="simple-footer__row simple-footer__row_type_content"><div id="obj945eb7a29c954ae7a32041ce367faa92"><style>.social-icon {  
4710  width:39px;
4711  height:39px;
4712}
4713
4714.social-icon svg {  
4715  padding: 4.5px;
4716}
4717
4718.social-icon:hover {  
4719  text-decoration: none;
4720}
4721
4722.rounded-circle {
4723  margin-right: 9px;
4724}
4725
4726.rounded-circle:last-child {
4727  margin-right: 0px;
4728}
4729
4730.rounded-circle .fa-facebook-f {
4731  font-size: 21px;
4732  letter-spacing: 0.028rem;
4733}
4734
4735.rounded-circle .fa-instagram {
4736  font-size: 26px;
4737  height: 25px;
4738  letter-spacing: 0.028rem;
4739}</style><div class="d-flex rounded-circle__container"><a class="rounded-circle cursor-pointer border border-2 fs-3 d-flex justify-content-center align-items-center social-icon" style="border-color:#ffffff!important; color:#ffffff; border-width:1px!important" target="_blank" href="https://www.facebook.com/Bodobakeri/"><i class="fab fa-facebook-f"></i></a><a class="rounded-circle cursor-pointer border border-2 fs-3 d-flex justify-content-center align-items-center social-icon" style="border-color:#ffffff!important; color:#ffffff; border-width:1px!important" target="_blank" href="https://www.instagram.com/bodobakeri/"><i class="fab fa-instagram"></i></a></div></div></div></div><div class="simple-footer__row simple-footer__row_type_copy "><div class="container simple-footer__container"><div class="simple-footer__column col-6"><img class="simple-footer__payment-img" src="https://bcdn.cakeiteasy.com/nono.png?width=500&height=600&optimizer=image&format=webp" alt="payment methods"></img><button class="simple-footer__link" onclick="Modal.open('/bakery/terms-and-conditions', { noPadding: true, width: '613px', title: 'Brukerbetingelser'})">Brukerbetingelser</button></div><div class="simple-footer__copyright"><div class="footer-login d-flex "><a class="btn__login font-secondary" href="https://admin.foodspace.io/auth/login?method=quick-site-login&bakeryId=84" disabled="false"><i class="icon-doc-with-pencil"></i></a><style>.btn__login {
4740  padding: 0;
4741  margin: 3px 0 0;
4742  font-size: .875rem;
4743  line-height: 1.88;
4744  color: var(--footer-text-color);
4745  background: transparent;
4746  border: none;
4747  cursor: pointer;
4748  width: max-content;
4749}</style></div><p class="simple-footer__text"><p>© Bodø Bakeri AS - Org. nr. 993 297 941</p></p></div></div></div></footer><style>.simple-footer {
4750  display: flex;
4751  flex-direction: column;
4752  align-items: center;
4753  letter-spacing: normal;
4754}
4755
4756.simple-footer__logo {
4757  display: block;
4758  width: 100%;
4759  height: 100%;
4760  max-height: 75px;
4761  object-fit: contain;
4762}
4763
4764.simple-footer__row_type_logo {
4765  padding: 60px 0 40px;
4766}
4767
4768.simple-footer__row_type_content {
4769  padding-bottom: 40px;
4770  display: flex;
4771  align-items: center;
4772}
4773
4774.simple-footer__row_type_description {
4775  padding-bottom: 40px;
4776}
4777
4778.simple-footer__title {
4779  font-size: 1.5rem;
4780  letter-spacing: 0rem;
4781  text-align: center;
4782  margin-bottom: 10px;
4783  color: #ffffff;
4784}
4785
4786.simple-footer__subtitle {
4787  font-size: 1rem;
4788  letter-spacing: 0rem;
4789  line-height: 1.5;
4790  text-align: center;
4791  margin-bottom: 0;
4792  color: #ffffff;
4793}
4794
4795.simple-footer__row_type_contacts {
4796  display: flex;
4797  align-items: center;
4798  justify-content: center;
4799  flex-wrap: wrap;
4800  gap: 15px;
4801  padding-bottom: 40px;
4802  max-width: 515px;
4803  color: #ffffff;
4804}
4805
4806.simple-footer__row_type_contacts p {
4807   font-size: 1rem;
4808  letter-spacing: 0rem;
4809  line-height: 1.21;
4810  margin-bottom: 0;
4811}
4812
4813.simple-footer__row_type_contacts p a {
4814  pointer-events: auto;
4815}
4816
4817.simple-footer__row_type_contacts p a:hover {
4818  text-decoration: underline !important;
4819}
4820
4821.simple-footer__contact-link {
4822  font-size: 1rem;
4823  letter-spacing: 0rem;
4824  line-height: 1.21;
4825  margin-bottom: 0;
4826}
4827
4828.simple-footer__contact-address{
4829    font-size: 1rem;
4830  letter-spacing: 0rem;
4831}
4832
4833.simple-footer__contact-link:hover {
4834  text-decoration: underline !important;
4835}
4836
4837.simple-footer__link {
4838  font-size: 1rem;
4839  color: #ffffff;
4840}
4841
4842.simple-footer__link:hover,
4843.simple-footer__link:focus {
4844  text-decoration: underline !important;
4845  color: #ffffff;
4846}
4847
4848.simple-footer__row_type_copy {
4849  padding: 30px 0;
4850  width: 100%;
4851  border-top: 1px solid rgba(225, 225, 225, 0.4);
4852  letter-spacing: normal;
4853}
4854
4855.simple-footer__row_type_copy .simple-footer__column {
4856  justify-content: left;
4857}
4858
4859.simple-footer__container {
4860  display: flex;
4861  align-items: center;
4862  justify-content: space-between;
4863}
4864
4865.simple-footer__column {
4866  display: flex;
4867  align-items: center;
4868  justify-content: center;
4869  gap: 40px;
4870}
4871
4872.simple-footer__row_type_copy .simple-footer__column {
4873  justify-content: left;
4874}
4875
4876.simple-footer__link {
4877  font-style: normal;
4878  font-size: 1rem;
4879  line-height: 1.18;
4880  background: none;
4881  border: none;
4882  height: auto;
4883  padding: 0;
4884  margin: 0;
4885  color: #ffffff;
4886}
4887
4888.simple-footer__row_type_copy .simple-footer__link {
4889  font-size: .875rem;
4890}
4891
4892.simple-footer__row_type_copy .simple-footer__link:hover {
4893  text-decoration: none!important;
4894}
4895
4896.footer-login.disabled {
4897  display: none!important;
4898}
4899
4900/* Copyright */
4901
4902.simple-footer__payment-img {
4903  display: block;
4904  width: 100%;
4905  height: 100%;
4906  max-height: 34px;
4907  max-width: 184px;
4908}
4909
4910.simple-footer__copyright {
4911  display: flex;
4912  align-items: center;
4913  gap: 15px;
4914  font-weight: 400;
4915  font-size: .875rem;
4916  line-height: 1.18;
4917  color: #ffffff;
4918}
4919
4920.simple-footer__copyright p {
4921  margin-bottom: 0;
4922  font-size: .875rem;
4923}
4924
4925.simple-footer__copyright p a {
4926  pointer-events: auto;
4927}
4928
4929.simple-footer__copyright p a:hover{
4930  text-decoration: underline !important;
4931}
4932
4933.simple-footer__row_type_copy .simple-footer__copyright {
4934  font-size: .875rem;
4935}
4936
4937/* Social Network */
4938
4939.simple-footer__row_type_content .rounded-circle .fa-instagram {
4940  font-size: 1.563rem;
4941  height: auto;
4942}
4943
4944.simple-footer__row_type_content .rounded-circle .fa-facebook-f {
4945  font-size: 1.188rem;
4946}
4947
4948.simple-footer__row_type_content .social-icon svg {
4949  padding: 9px;
4950}
4951
4952.simple-footer__text:hover {
4953  color: #ffffff;
4954}
4955
4956@media (max-width: 1024px) {
4957  .simple-footer__logo {
4958    max-height: 60px;
4959  }
4960  /* .simple-footer__title {
4961    font-size: 1.25rem;
4962} */
4963  .simple-footer__container {
4964    flex-direction: column;
4965    gap: 20px;
4966  }
4967  .simple-footer__column {
4968    gap: 20px;
4969    flex-direction: column;
4970  }
4971  .simple-footer__payment-img {
4972    max-width: 155px;
4973  }
4974  .simple-footer__copyright {
4975    text-align: center;
4976  }
4977  .simple-footer__copyright p {
4978    font-size: 0.825rem;
4979    line-height: 1.5;
4980  }
4981  .simple-footer__row_type_logo {
4982    padding: 30px 0 20px;
4983  }
4984}</style></section><style>@media (min-width: 767px) {
4985  body.noscroll { 
4986    position: fixed; 
4987    width: 100%; 
4988    height: 100%; 
4989    overflow-y: 
4990    hidden; 
4991  }
4992}
4993
4994.xmodal-open .content {
4995  margin-left: 400px;
4996}
4997
4998.xmodal-overlay {
4999  position: fixed;
5000  left: 0;
5001  top: 0;
5002  width: 100%;
5003  height: 100%;
5004  background: rgba(0,0,0,0);
5005  z-index: 9999;
5006  box-sizing: border-box;
5007  overflow-y: scroll;
5008  overflow-x: hidden;
5009  transition: background .25s ease-out;
5010  scroll-behavior: smooth;
5011}
5012
5013.xmodal-overlay.no-padding {
5014  padding: 0px;
5015}
5016
5017.xmodal-overlay::-webkit-scrollbar {
5018  width: 0px;
5019  background: transparent;
5020}
5021
5022.xmodal-overlay.open {
5023  background: rgba(0,0,0,.45);
5024}
5025
5026.xmodal-container {
5027  position: fixed;
5028  top: 200%;
5029  bottom: 0;
5030  left: 0;
5031  width: 100%;
5032  height: 100%;
5033  min-width: 100%;
5034  max-width: 100%;
5035  max-height: 100%;
5036  margin: auto;
5037  box-shadow: 0 8px 16px 0 rgba(0,0,0,.2);
5038  background-color: #fff;
5039  z-index: 100;
5040  scroll-behavior: smooth;
5041  transition: top .25s ease;
5042  overflow-y: auto;
5043}
5044
5045.xmodal-overlay .btn {
5046  overflow: hidden;
5047  text-overflow: ellipsis;
5048}
5049
5050.btn-capitalize {
5051  text-transform: capitalize!important;
5052}
5053
5054.xmodal-container.auto-height {
5055  transform: scaleY(0);
5056  transform-origin: bottom;
5057  transition: transform 0.25s ease;
5058}
5059
5060.xmodal-container.sidebar, .xmodal-container.sidebar.left {
5061  position: fixed;
5062  top: 0!important;
5063  bottom: 0!important;
5064  max-height: 100%;
5065  min-height: 100%;
5066  height: 100%;
5067  margin-top: 0!important;
5068  margin-bottom: 0!important;
5069  min-width: unset;
5070  width: 85%;
5071}
5072
5073.xmodal-container.sidebar.left {
5074  left: 0!important;
5075  margin-left: -85%;
5076  transition: margin-left .25s ease;
5077  border-radius: 0!important;
5078}
5079
5080.xmodal-container.sidebar.right {
5081  right: 0!important;
5082  border-top-right-radius: 0;
5083  border-bottom-right-radius: 0;
5084  margin-right: -85%;
5085  transition: margin-right .25s ease;
5086}
5087
5088.open > .xmodal-container {
5089  top: 0;
5090  transform: scaleY(1);
5091}
5092
5093.open > .xmodal-container.auto-height {
5094  height: auto;
5095  top: auto;
5096  margin-top: 0;
5097  margin-bottom: 0;
5098}
5099
5100.xmodal-container.min-height {
5101  min-height: 200px;
5102}
5103
5104.min-height .xmodal-body {
5105  display: flex;
5106  flex-direction: column;
5107  align-items: center;
5108  justify-content: center;
5109}
5110
5111.min-height .xmodal-content {
5112  width: 100%;
5113}
5114
5115.open > .xmodal-container.sidebar {
5116  transform: scaleX(1);
5117}
5118
5119.open > .xmodal-container.sidebar.left {
5120  margin-left: 0!important;
5121  border-radius: 0!important;
5122}
5123
5124.open > .xmodal-container.sidebar.right {
5125  margin-right: 0!important;
5126}
5127
5128.xmodal-container.round-corners {
5129  border-radius: 12px 12px 0 0;
5130  margin-top: 12px;
5131}
5132
5133.open > .xmodal-container.round-corners.auto-height {
5134  max-height: calc(100% - 24px);
5135  margin-top: 0;
5136  margin-bottom: 0;
5137}
5138
5139.xmodal-container.round-corners:before {
5140  position: absolute;
5141  top: -8px;
5142  left: 0;
5143  right: 0;
5144  margin: auto;
5145  width: 44px;
5146  height: 4px;
5147  background: var(--color-gray200);
5148  content: " ";
5149  border-radius: 9px;
5150}
5151
5152.xmodal-header {
5153  position: relative;
5154  display: block;
5155  height: 0;
5156  box-sizing: border-box;
5157  z-index: 10;
5158  padding: 0;
5159  border-top-left-radius: 4px;
5160  border-top-right-radius: 4px;
5161}
5162
5163.round-corners .xmodal-header {
5164  border-radius: 16px 16px 0 0;
5165}
5166
5167.xmodal-header.show {
5168  padding: 12px 16px;
5169  /* height: 48px; */
5170  height: auto;
5171  background-color: #fff;
5172  box-shadow: 0 1px 0 0 var(--color-gray200);
5173}
5174
5175.xmodal-header-text {
5176  display: none;
5177  text-transform: lowercase;
5178}
5179
5180.xmodal-header.show .xmodal-header-text {
5181  display: inline-block!important;
5182  margin: auto 0;
5183  vertical-align: middle;
5184  font-weight: 700;
5185  overflow: hidden;
5186  text-overflow: ellipsis;
5187  white-space: nowrap;
5188  max-width: calc(100% - 24px);
5189}
5190
5191.xmodal-header.show .xmodal-header-text:first-letter {
5192  text-transform: uppercase!important;
5193}
5194
5195.xmodal-close-button {
5196  position: absolute;
5197  top: 12px;
5198  right: 12px;
5199  padding: 0;
5200  vertical-align: middle;
5201  display: inline-block;
5202  width: 24px;
5203  height: 24px;
5204  z-index: 9999;
5205  cursor: pointer;
5206  font-size: 20px;
5207  text-align: center;
5208  line-height: 24px;
5209  opacity: .6;
5210  background: url("data:image/svg+xml,%3Csvg width='18' height='18' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m10.53634,9.00012l6.52972,-6.52992c0.42494,-0.42474 0.42494,-1.1115 0,-1.53624c-0.42474,-0.42474 -1.1115,-0.42474 -1.53624,0l-6.52992,6.52992l-6.52972,-6.52992c-0.42494,-0.42474 -1.1115,-0.42474 -1.53624,0c-0.42494,0.42474 -0.42494,1.1115 0,1.53624l6.52972,6.52992l-6.52972,6.52992c-0.42494,0.42474 -0.42494,1.1115 0,1.53624c0.21168,0.21187 0.49,0.31831 0.76812,0.31831c0.27812,0 0.55625,-0.10644 0.76812,-0.31831l6.52972,-6.52992l6.52992,6.52992c0.21187,0.21187 0.49,0.31831 0.76812,0.31831c0.27812,0 0.55625,-0.10644 0.76812,-0.31831c0.42494,-0.42474 0.42494,-1.1115 0,-1.53624l-6.52972,-6.52992zm0,0'/%3E%3C/svg%3E") no-repeat center;
5211}
5212
5213.xmodal-custom-close-button {
5214  padding: 0;
5215  vertical-align: middle;
5216  display: inline-block;
5217  cursor: pointer;
5218  text-align: center;
5219  opacity: .6;
5220}
5221
5222.xmodal-close-button:hover, .xmodal-custom-close-button:hover {
5223  opacity: 1;
5224}
5225
5226.xmodal-close-button.hide {
5227  display: none;
5228}
5229
5230.xmodal-body {
5231  max-height: 100%;
5232  margin-top: 0;
5233  height: 100%;
5234  box-sizing: border-box;
5235  overflow-y: auto;
5236  scroll-behavior: smooth;
5237}
5238
5239.xmodal-header.show + .xmodal-body {
5240  margin-top: 0;
5241  height: calc(100% - 58px);
5242}
5243
5244.xmodal-footer + .xmodal-body {
5245  margin-top: 0;
5246  height: calc(100% - 64px);
5247}
5248
5249.xmodal-header.show + .xmodal-footer + .xmodal-body {
5250  margin-top: 0;
5251  /* height: calc(100% - 48px - 64px); */
5252  margin-bottom: 64px;
5253  height: calc(100% - 48px);
5254}
5255
5256.xmodal-content {
5257  padding: 16px;
5258}
5259
5260.xmodal-footer {
5261  position: absolute;
5262  left: 0;
5263  right: 0;
5264  display: flex;
5265  z-index: 10;
5266  align-items: center;
5267  justify-content: flex-end;
5268  padding: .8rem;
5269  border-top: 1px solid var(--color-gray200);
5270  background-color: #fff;
5271}
5272
5273.xmodal-footer.xmodal-footer_top {
5274  top: 0;
5275}
5276
5277.xmodal-footer.xmodal-footer_bottom {
5278  bottom: 0;
5279}
5280
5281/* .xmodal-footer.xmodal-footer_top ~ .xmodal-body {
5282  margin-top: 48px;
5283} */
5284
5285.xmodal-container.round-corners .xmodal-footer {
5286  bottom: 12px;
5287}
5288
5289.xmodal-footer > button {
5290  margin-left: .5rem;
5291}
5292
5293.no-padding .xmodal-content {
5294  padding: 0;
5295}
5296
5297.no-padding-h .xmodal-content {
5298  padding-left: 0;
5299  padding-right: 0;
5300}
5301
5302.no-padding-v .xmodal-content {
5303  padding-top: 0;
5304  padding-bottom: 0;
5305}
5306
5307.xmodal-spinner {
5308  min-height: 250px;
5309}
5310
5311.xmodal-content > .card-body {
5312  padding: 0!important;
5313}
5314
5315@media screen and (max-width: 768px){  
5316  .xmodal-container.sidebar, .xmodal-container.sidebar.left {
5317    width: 100%;
5318  }
5319}
5320
5321.xmodal-container {
5322  border-radius: 0px!important;
5323}
5324
5325.xmodal-container.round-corners {
5326  border-radius: var(--img-border-radius)!important;
5327}
5328
5329@media (min-width: 769px) {
5330  
5331  .xmodal-overlay {
5332    padding: 32px 0;
5333    display: flex;
5334    flex-direction: column;
5335  }
5336
5337  .xmodal-container {
5338    position: relative;
5339    top: unset !important;
5340    border-radius: 4px;
5341    width: 960px;
5342    min-width: unset;
5343    height: auto;
5344    bottom: unset;
5345    opacity: 0;
5346    transition: opacity .25s ease;
5347    margin-top: auto;
5348    overflow: hidden;
5349  }
5350
5351  .xmodal-container.top {
5352    margin-top: 0;
5353  }
5354
5355  .xmodal-container.sidebar {
5356    width: 25%;
5357  }
5358
5359  .xmodal-container.sidebar.left {
5360    margin-left: -85%;
5361  }
5362
5363  .xmodal-container.sidebar.right {
5364    margin-right: -85%;
5365  }
5366
5367  .open > .xmodal-container {
5368    opacity: 1;
5369  }
5370
5371  .xmodal-container.auto-height {
5372    margin: auto !important;
5373    transform: unset;
5374    transform-origin: unset;
5375  }
5376
5377  .xmodal-header.show {
5378    padding: 12px 24px;
5379  }
5380
5381  .xmodal-content {
5382    padding: 24px;
5383  }
5384
5385  .xmodal-container.round-corners .xmodal-footer {
5386    bottom: 0;
5387  }
5388}
5389
5390.min-h-100{
5391  min-height: 100%;
5392}</style><template id="xmodal-template">
5393	<div id="xmodal" class="xmodal-overlay" style="display: none;">
5394		<div id="xmodal_container" class="xmodal-container">
5395			<div id="xmodal_header" class="xmodal-header show d-flex justify-content-between">
5396				<span id="xmodal_header_title" class="xmodal-header-text"></span>
5397				<div id="xmodal_close" class="xmodal-close-button"></div>
5398			</div>
5399			<div id="xmodal_body" class="xmodal-body">
5400				<div id="xmodal_content" class="xmodal-content">
5401					<div class="xmodal-spinner d-flex justify-content-center align-items-center w-100">
5402						<div class="spinner-border text-primary mx-auto"></div>
5403					</div>
5404				</div>
5405			</div>
5406		</div>
5407	</div>
5408</template>
5408<script v-pre type="module">const data = JSON.parse(decodeURIComponent("%7B%22_blockName%22%3A%22Modal%22%2C%22Id%22%3A%22obj11dfc69887ae48e2b3795a9f4fcd1e7a%22%2C%22children%22%3Anull%2C%22isMobile%22%3Afalse%7D"));class XModal {
5409  constructor(id) {
5410    this.id = id;
5411    this._listeners = new Map();
5412
5413    const template = document.getElementById('xmodal-template').content.cloneNode(true);
5414    template.getElementById('xmodal').setAttribute('id', 'xmodal_' + id);
5415
5416
5417    template.getElementById('xmodal_container').setAttribute('id', 'xmodal_container_' + id);
5418
5419    template.getElementById('xmodal_header').setAttribute('id', 'xmodal_header_' + id);
5420    template.getElementById('xmodal_body').setAttribute('id', 'xmodal_body_' + id);
5421    template.getElementById('xmodal_header_title').setAttribute('id', 'xmodal_header_title_' + id);
5422    template.getElementById('xmodal_close').setAttribute('id', 'xmodal_close_' + id);
5423    template.getElementById('xmodal_content').setAttribute('id', 'xmodal_content_' + id);
5424   
5425    document.body.appendChild(template);
5426
5427    this.root = document.getElementById('xmodal_' + id);
5428
5429    // 9999 is the v1 public stacking order (the promo popup at 15000 sits
5430    // above it, as it always has). The admin shell needs its modals above its
5431    // own rail/drawers, so V3AdminMaster raises the base via
5432    // window.__xmodalZIndexBase — a v1 page never sets it.
5433    this.root.style.zIndex = (window.__xmodalZIndexBase || 9999) + this.id;
5434
5435    this.container = document.getElementById('xmodal_container_' + id);
5436    this.header = document.getElementById('xmodal_header_' + id);
5437    this.body = document.getElementById('xmodal_body_' + id);
5438    this.headerTitle = document.getElementById('xmodal_header_title_' + id);
5439    this.closeBtn = document.getElementById('xmodal_close_' + id);
5440    this.spinner = `<div class="xmodal-spinner d-flex justify-content-center align-items-center"><div class="spinner-border text-success"></div></div>`;
5441    this.content = document.getElementById('xmodal_content_' + id);
5442    this.closeByEscape = true;
5443
5444    this.root.addEventListener('click', (e) => this._closeHandler(e));
5445    this.closeBtn.addEventListener('click', (e) => this._closeHandler(e));
5446  }
5447
5448  async open(urlOrDom, options, onLoadCallback, postRequestData) {
5449    if (!urlOrDom) {
5450      return;
5451    }
5452
5453    if (options) {
5454      if (options.domId) this.root.setAttribute('data-dom-id', options.domId);
5455
5456      if (options.center) this.content.classList.add('d-flex',
5457        'align-items-center', 'min-h-100', 'text-center', 'w-100');
5458
5459      if (options.customClass) this.header.classList.add(`${options.customClass}`);
5460
5461      this.noCloseOnOverlay = options.noCloseOnOverlay || false;
5462      this.closeByEscape = options.closeByEscape === undefined ? true : options.closeByEscape;
5463      if (options.hideModalHeader) {
5464        this.header.classList.remove('show');
5465      }
5466      
5467      if (options.dark) {
5468        this.container.style.backgroundColor = options.dark === true ? 'black' : options.dark;
5469      }
5470
5471      if (options.customCloseBtnText) {
5472        this.closeBtn.innerHTML = options.customCloseBtnText;
5473        this.closeBtn.classList.remove('xmodal-close-button');
5474        // this.closeBtn.classList.add('xmodal-custom-close-button');
5475      }
5476
5477      if (options.hideCloseButton) {
5478        this.closeBtn.classList.add('hide');
5479      }
5480
5481      if (options.roundCorners) {
5482        this.container.classList.add('round-corners');
5483      }
5484
5485      if (options.autoHeight) {
5486        this.container.classList.add('auto-height');
5487      }
5488
5489      if (options.noOverlay) {
5490        this.root.classList.remove('xmodal-overlay');
5491      }
5492
5493      if (options.minHeight) {
5494        this.container.classList.add('min-height');
5495      }
5496
5497      if (options.noPadding) {
5498        this.container.classList.add('no-padding');
5499      }
5500
5501      if (options.noPaddingHorizontal) {
5502        this.container.classList.add('no-padding-h');
5503      }
5504
5505      if (options.noPaddingVertical) {
5506        this.container.classList.add('no-padding-v');
5507      }
5508
5509      if (options.width) {
5510        this.container.style.width = options.width;
5511      }
5512
5513      if (options.height) {
5514        this.container.style.height = options.height;
5515      }
5516
5517      if (options.fullScreen) {
5518        this.container.style.width = '100%';
5519        this.container.style.height = '100vh';
5520        this.container.style.borderBottomRightRadius = '0';
5521        this.container.style.borderBottomLeftRadius = '0';
5522        this.root.classList.add('no-padding');
5523      }
5524
5525      if (options.position && options.position === 'top') {
5526        this.container.classList.add('top');
5527      }
5528
5529      if (options.sidebar) {
5530        this.container.classList.add('sidebar');
5531        if (options.sidebarPosition === 'left') {
5532          this.container.classList.add('left');
5533          if (options.width) {
5534            this.container.style.marginLeft = '-' + options.width;
5535            // $('.content').css('margin-left', options.width);
5536          }
5537        } else if (options.sidebarPosition === 'right') {
5538          this.container.classList.add('right');
5539          if (options.width) {
5540            this.container.style.marginRight = '-' + options.width;
5541            // $('.content').css('margin-right', options.width);
5542          }
5543        }
5544      }
5545    }
5546
5547    this.root.style.display = '';
5548    if (options && options.noOpenAnimation) {
5549      this.root.style.transition = 'none';
5550      this.container.style.transition = 'none';
5551      this.root.classList.add('open');
5552    } else {
5553      setTimeout(() => { this.root.classList.add('open'); }, 10);
5554    }
5555
5556    if (typeof urlOrDom === 'string') {
5557      try {
5558        // `prefetchedData` lets a caller skip the network round-trip entirely:
5559        // the page HTML was POSTed ahead of time (in the background) and handed
5560        // in here, so the modal paints its content instantly. Same payload shape
5561        // as a live postRequest `.data` (string HTML, or { html, PageTitle }).
5562        const data = (options && options.prefetchedData != null)
5563          ? options.prefetchedData
5564          : (await window.postRequest(urlOrDom, { isModal: true, modalId: this.id, ...(postRequestData || {}) })).data;
5565        $(this.content).html(typeof (data) === 'string' ? data : data.html);
5566        this.headerTitle.textContent = options && options.title ? options.title : (data.PageTitle || data.pageTitle);
5567        // setTimeout(() => { SITE.updateImages(); }, 700);
5568        if (onLoadCallback && typeof onLoadCallback === 'function') {
5569          onLoadCallback(this);
5570        }
5571      }
5572      catch (ex) {
5573        alert("Something went wrong, please try again: ".concat(ex.message))
5574      }
5575    } else if (typeof urlOrDom === 'object' && urlOrDom.cloneNode) {
5576      $(this.content).html(urlOrDom);
5577    }
5578
5579    if (options && options.buttons && options.buttons.length) {
5580      const footer = document.createElement('div');
5581      footer.id = "xmodal_footer_" + this.id;
5582      footer.classList.add('xmodal-footer');
5583      options.buttons.forEach(i => {
5584        const btn = document.createElement('button');
5585        if (i.id) { btn.id = i.id; };
5586        btn.className = i.className || 'btn';
5587        btn.type = i.type || 'button';
5588        btn.innerText = i.label;
5589        btn.onclick = i.callback;
5590        footer.appendChild(btn);
5591      });
5592
5593      if (options.buttonsPosition === 'top') {
5594        this.header.before(footer);
5595        footer.classList.add('xmodal-footer_top');
5596      } else {
5597        this.body.after(footer);
5598        footer.classList.add('xmodal-footer_bottom');
5599      }
5600    }
5601  }
5602
5603  close(instantly, data) {
5604    this.root.classList.remove('open');
5605    instantly ? this._destroy(data) : setTimeout(() => this._destroy(data), 250);
5606
5607    Modal._instances = Modal._instances.filter(m => m.id !== this.id)
5608    Modal._reset()
5609  }
5610
5611  set onClose(callback) {
5612    this._on('close', callback);
5613  }
5614
5615  set onClosed(callback) {
5616    this._on('closed', callback);
5617  }
5618
5619  _on(label, callback) {
5620    this._listeners.has(label) || this._listeners.set(label, []);
5621    this._listeners.get(label).push(callback);
5622  }
5623
5624  _trigger(label, ...args) {
5625    if (this._listeners.has(label)) {
5626      this._listeners.get(label).forEach((listener) => {
5627        listener(...args);
5628      });
5629    }
5630  }
5631
5632  _closeHandler(e) {
5633    if (e.target !== this.root && e.target !== this.closeBtn) {
5634      return;
5635    }
5636
5637    e.stopPropagation();
5638    if (this.noCloseOnOverlay && e.target === this.root) {
5639      return;
5640    }
5641
5642    this._trigger('close');
5643    this.close();
5644  }
5645
5646  _destroy(data) {
5647    this.root.remove();
5648    this._trigger('closed', data);
5649
5650    window.dispatchEvent(new CustomEvent('modalclose'))
5651  }
5652}
5653
5654if (!window['Modal']) {
5655  const mars = new MarsBlock('xmodal', data, {
5656    _instances: [],
5657    _init: function () {
5658      // Track Escape key press
5659      const self = this;
5660      document.onkeydown = function (e) {
5661        e = e || window.event;
5662        let isEscape = false;
5663        if ("key" in e) {
5664          isEscape = (e.key === "Escape" || e.key === "Esc");
5665        } else {
5666          isEscape = (e.keyCode === 27);
5667        }
5668
5669        const instances = self._instances;
5670        if (isEscape && instances.length && instances[instances.length - 1].closeByEscape) {
5671          self.close();
5672        }
5673      };
5674    },
5675    _reset: function () {
5676      if (this._instances.length) {
5677        return;
5678      }
5679
5680      document.body.classList.remove('noscroll');
5681      // $('.content').css('margin-right', 0);
5682      // $('.content').css('margin-left', 0);
5683      document.body.style.top = '';
5684
5685      if (this.scrollTop !== undefined) {
5686        window.scrollTo({ top: this.scrollTop, behavior: 'instant' });
5687      }
5688
5689      this.scrollTop = undefined;
5690    },
5691    _getScroll: function () {
5692      if (window.pageYOffset != undefined) {
5693        return [pageXOffset, pageYOffset];
5694      } else {
5695        let sx, sy, d = document, r = d.documentElement, b = d.body;
5696        sx = r.scrollLeft || b.scrollLeft || 0;
5697        sy = r.scrollTop || b.scrollTop || 0;
5698        return [sx, sy];
5699      }
5700    },
5701    getModal: function (id) {
5702      if (id) {
5703        return this._instances.find(i => i.id === id);
5704      }
5705
5706      return null;
5707    },
5708    open: async function (urlOrDom, options, onLoadCallback, postRequestData) {
5709      if (!urlOrDom) {
5710        return;
5711      }
5712
5713      if (options && options.width && data.isMobile) options.width = '100%';
5714
5715      if (options && options.closePrevious && this._instances.length) {
5716        this.scrollTop = (this._getScroll())[1];
5717        this._instances.pop().close(true);
5718      }
5719
5720      if (this._instances.length === 0) {
5721        this.scrollTop = (this._getScroll())[1];
5722        if (!options.noOverlay) {
5723          document.body.classList.add('noscroll');
5724        }
5725        document.body.style.top = -this.scrollTop + 'px';
5726      }
5727
5728      const id = this._instances.length + 1;
5729      const modal = new XModal(id);
5730      this._instances.push(modal);
5731      modal.onClose = () => this.close(id);
5732      modal.onClosed = () => this._reset();
5733      await modal.open(urlOrDom, options, onLoadCallback, postRequestData);
5734      return modal;
5735    },
5736    openAndWait: function () {
5737      return new Promise(async (resolve, reject) => {
5738        try {
5739          const modal = await this.open(...arguments);
5740
5741          modal.onClosed = (val) => {
5742            resolve(val);
5743          }
5744        } catch (e) {
5745          return reject(e);
5746        }
5747      });
5748    },
5749    close: function (instantly, id, data) {
5750      if (id) {
5751        const index = this._instances.findIndex(i => i.id === id);
5752
5753        const modalByIndex = this._instances[index]
5754        if (!modalByIndex) return
5755
5756        modalByIndex.close(instantly, data);
5757        return;
5758      }
5759
5760      // const lastModal = this._instances.pop();
5761      const lastModal = this._instances[this._instances.length - 1];
5762      if (lastModal) {
5763        lastModal.close(instantly, data);
5764      }
5765    },
5766  });
5767
5768  mars._init();
5769  window['Modal'] = window['Modal'] || mars;
5770}
5771</script>
5771<script type="application/ld+json">{"@type":"Organization","name":"Bodø bakeri","url":"https://www.bodobakeri.no/","logo":"https://mars-images.imgix.net/1677834019634?fm=avif&fit=clip&w=1200&=undefined","@context":"http://schema.org"}</script>
5771<div hidden="true">
5771<script >function getCurrentHeaderHeight(desktopHeaderSelector, mobileHeaderSelector, isSticky) {
5772  const mobileHeaderElement = document.querySelector(mobileHeaderSelector);
5773  const desktopHeaderElement = document.querySelector(desktopHeaderSelector);
5774
5775  let extraScroll;
5776
5777  if (desktopHeaderElement && desktopHeaderElement.offsetHeight > 0 && isSticky ) {
5778    extraScroll = desktopHeaderElement.offsetHeight;
5779  };
5780
5781  if (mobileHeaderElement && mobileHeaderElement.offsetHeight > 0) {
5782    extraScroll = mobileHeaderElement.offsetHeight;
5783  };
5784
5785  return extraScroll;
5786}
5787
5788function getBlockElementWithExtraStyle(blockElement, block, behavior) {
5789  const extraScrollForSticky = getCurrentHeaderHeight('#MinimalisticStickyDownHeader', '.mobile-menu.sticky', true);
5790  const extraScrollForWithCategories = getCurrentHeaderHeight('#PageHeaderWithCategories', '#MobileHeaderWithCategories', true);
5791  const extraScrollForWithRoundLogo = getCurrentHeaderHeight('#HeaderWidthRoundLogo', '#MobileHeaderWithRoundLogo', false);
5792
5793  if (extraScrollForSticky) {
5794    blockElement.style["scroll-margin-top"] = `${extraScrollForSticky - 1.5}px`
5795  }
5796  if (extraScrollForWithCategories) {
5797    blockElement.style["scroll-margin-top"] = `${extraScrollForWithCategories - 1.5}px`
5798  }
5799  if (extraScrollForWithRoundLogo) {
5800    blockElement.style["scroll-margin-top"] = `${extraScrollForWithRoundLogo - 1.5}px`
5801  }
5802
5803  blockElement.scrollIntoView({ block, behavior });
5804}
5805
5806
5807async function scrollToElement(selector, block = "start", behavior = "smooth") {
5808  const blockElement = document.getElementById(selector) ? document.getElementById(selector) : document.querySelector(`section[data-test-id="${selector}"]`);
5809  if (!blockElement) {
5810    /*await goTo(`https://${location.hostname}`);
5811    const mainPageBlockElement = document.getElementById(selector) ? document.getElementById(selector) : document.querySelector(`section[data-test-id="${selector}"]`);
5812    getBlockElementWithExtraStyle(mainPageBlockElement, block, behavior);*/
5813    sessionStorage.setItem("scrollToElement", selector);
5814    window.location.href = `https://${location.hostname}`;
5815  } else {
5816    getBlockElementWithExtraStyle(blockElement, block, behavior);
5817  }
5818}
5819</script>
5819</div>
5820<script src="https://browser.sentry-cdn.com/6.8.0/bundle.tracing.min.js"
5821	integrity="sha384-PEpz3oi70IBfja8491RPjqj38s8lBU9qHRh+tBurFb6XNetbdvlRXlshYnKzMB0U" crossorigin="anonymous">
5822</script>
vendor: 1 bytes, line 5822
5822
5823<script v-pre type="module">const data = JSON.parse(decodeURIComponent("%7B%22_blockName%22%3A%22SentryErrorFrontendLogger%22%2C%22Id%22%3A%22objf3b69c54f74d4ea28220b1effd6883ff%22%2C%22dsn%22%3A%22https%3A%2F%2Fd08c5fd59e0045eeda7dad267be20dc8%40o4509688901074944.ingest.de.sentry.io%2F4509689904234576%22%2C%22children%22%3Anull%2C%22env%22%3A%22prod%22%2C%22sentrySettings%22%3A%7B%22backendDsn%22%3A%22https%3A%2F%2Fbe86cbace6e4423729ad39f62a72a9bd%40o4509688901074944.ingest.de.sentry.io%2F4509689896763472%22%2C%22frontendDsn%22%3A%22https%3A%2F%2Fd08c5fd59e0045eeda7dad267be20dc8%40o4509688901074944.ingest.de.sentry.io%2F4509689904234576%22%7D%7D"));if (!data.dsn) {
5824  console.warn('There is no "frontendDsn" in "SentrySettings" or you are at development stage. Sentry logging can\'t be enabled');
5825} else {
5826  setTimeout(() => {
5827    Sentry.init({
5828      dsn: data.dsn,
5829      integrations: [new Sentry.Integrations.BrowserTracing()],
5830      environment: data.env,
5831      // We recommend adjusting this value in production, or using tracesSampler
5832      // for finer control
5833      tracesSampleRate: 0.1,
5834      sampleRate: 0.1
5835    });
5836  }, 300);
5837}</script>
5837<script v-pre type="module">const data = JSON.parse(decodeURIComponent("%7B%22_blockName%22%3A%22MasterPage%22%2C%22class%22%3A%22d-flex%22%2C%22queryStringParameters%22%3A%7B%7D%2C%22path%22%3A%22%2F%22%2C%22headers%22%3A%7B%22host%22%3A%22www.bodobakeri.no%22%2C%22bakery-slug%22%3A%22bod-bakeri%22%2C%22x-real-ip%22%3A%22181.215.65.87%22%2C%22connection%22%3A%22close%22%2C%22accept%22%3A%22text%2Fhtml%2Capplication%2Fxhtml%2Bxml%2Capplication%2Fxml%3Bq%3D0.9%2Cimage%2Favif%2Cimage%2Fwebp%2Cimage%2Fapng%2C*%2F*%3Bq%3D0.8%2Capplication%2Fsigned-exchange%3Bv%3Db3%3Bq%3D0.7%22%2C%22sec-fetch-dest%22%3A%22document%22%2C%22sec-fetch-mode%22%3A%22navigate%22%2C%22sec-fetch-site%22%3A%22none%22%2C%22sec-fetch-user%22%3A%22%3F1%22%2C%22upgrade-insecure-requests%22%3A%221%22%2C%22user-agent%22%3A%22Mozilla%2F5.0%20AppleWebKit%2F537.36%20(KHTML%2C%20like%20Gecko%3B%20compatible%3B%20PageSourceSearchBot%2F1.0%3B%20%2Bhttps%3A%2F%2Fpagesourcesearch.com%2Fbot)%20Chrome%2F128.0.0.0%20Safari%2F537.36%22%2C%22accept-language%22%3A%22en-US%2Cen%3Bq%3D0.9%22%2C%22sec-ch-ua%22%3A%22%5C%22Chromium%5C%22%3Bv%3D%5C%22128%5C%22%2C%20%5C%22Not%3BA%3DBrand%5C%22%3Bv%3D%5C%2224%5C%22%2C%20%5C%22Google%20Chrome%5C%22%3Bv%3D%5C%22128%5C%22%22%2C%22sec-ch-ua-mobile%22%3A%22%3F0%22%2C%22sec-ch-ua-platform%22%3A%22%5C%22Windows%5C%22%22%2C%22accept-encoding%22%3A%22gzip%2C%20deflate%2C%20br%22%7D%2C%22httpMethod%22%3A%22GET%22%2C%22requestContext%22%3A%7B%22stage%22%3A%22dev%22%7D%2C%22files%22%3A%7B%7D%2C%22context%22%3A%7B%22mobileApp%22%3Anull%2C%22css%22%3A%7B%7D%7D%2C%22ip%22%3A%22172.31.19.6%22%2C%22ips%22%3A%5B%5D%2C%22device%22%3A%22desktop%22%2C%22host%22%3A%22www.bodobakeri.no%22%2C%22cookies%22%3A%7B%7D%2C%22isMobile%22%3Afalse%2C%22isTablet%22%3Afalse%2C%22isDesktop%22%3Atrue%2C%22bakery%22%3A%7B%22webShop%22%3A%7B%22id%22%3A39%2C%22key%22%3A%22ptxaqnbhurkm%22%2C%22widget%22%3A%7B%22id%22%3A48%2C%22createdDate%22%3A%222019-02-07T13%3A51%3A21.143544Z%22%2C%22modifiedDate%22%3A%222021-03-18T16%3A31%3A28.257788Z%22%2C%22key%22%3A%22kUvPC3bmgZOFmAlE%22%2C%22activationButtonText%22%3A%22Nettbutikk%22%2C%22activationButtonColor%22%3A%22%23ffa514%22%2C%22locale%22%3A%22no%22%2C%22googleAnalyticKey%22%3A%22%22%2C%22googleTagManagerKey%22%3A%22%22%2C%22bakery%22%3A84%7D%2C%22shopUrl%22%3A%22https%3A%2F%2Fwww.bodobakeri.no%2Fshop%2F%22%2C%22isSubdomain%22%3Afalse%2C%22titleDirectOrders%22%3A%22Bestill%20takeaway%20fra%20butikk%22%2C%22subTextDirectOrders%22%3A%22Tidligste%20hentetid%20er%20%7Btime%7D%22%2C%22titleWebShop%22%3A%22Forh%C3%A5ndsbestill%20kaker%20og%20bakervarer%22%2C%22navigationBarTitle%22%3A%22%22%2C%22subTextWebShop%22%3A%22Bestill%20innen%20kl.%20%7Btime%7D%20dagen%20f%C3%B8r%22%2C%22notificationBarBannerText%22%3A%22%22%2C%22notificationBarButtonText%22%3A%22%22%2C%22notificationBarColor%22%3Anull%2C%22notificationBarButtonColor%22%3Anull%2C%22googleAnalyticKey%22%3A%22%22%2C%22googleTagManagerKey%22%3A%22%22%2C%22useDefaultCookieBar%22%3Afalse%2C%22showReminderSection%22%3Atrue%2C%22siteStatus%22%3A%22LAUNCHED%22%2C%22hostingMode%22%3A%22MARS%22%2C%22theme%22%3A%7B%22colors%22%3A%7B%22primary%22%3A%22%234bb39a%22%2C%22secondary%22%3A%22%23F2A83B%22%2C%22background%22%3A%22%23ffffff%22%7D%2C%22logo%22%3A%7B%22size%22%3A%22MEDIUM%22%2C%22url%22%3A%22https%3A%2F%2Fd2y9vkode0okis.cloudfront.net%2Fbakery-logos_images%2Fthumb%2FIVtXaZ7C6Eo9.png%22%7D%2C%22favicon%22%3A%7B%22url%22%3A%22https%3A%2F%2Fd2y9vkode0okis.cloudfront.net%2Fbakery-favicons_images%2Fthumb%2FX1oviRo68gzb.png%22%7D%2C%22footer%22%3A%7B%22copyright%22%3A%22%3Cp%3ELevert%20av%20%3Ca%20target%3D%5C%22_blank%5C%22%20rel%3D%5C%22noopener%20noreferrer%5C%22%20href%3D%5C%22https%3A%2F%2Fwww.foodspace.no%2F%5C%22%3EFoodspace%3C%2Fa%3E%26nbsp%3B%20%7C%20%26nbsp%3B%C2%A9%20Bod%C3%B8%20Bakeri%20AS%20-%20Org.%20nr.%20993%20297%20941%3C%2Fp%3E%22%2C%22bgColor%22%3A%22%233B3D3B%22%2C%22textColor%22%3A%22%23ffffff%22%7D%2C%22header%22%3A%7B%22bgColor%22%3A%22%23ffffff%22%2C%22textColor%22%3A%22%23000000%22%7D%2C%22mapMarker%22%3A%7B%22iconUrl%22%3A%22https%3A%2F%2Fd2y9vkode0okis.cloudfront.net%2Fbakery-map-marker-icons_images%2Fthumb%2FDeFrv0l
5837-oNmC.png%22%2C%22iconWhiteUrl%22%3Anull%2C%22bgColor%22%3A%22%23ffffff%22%2C%22selectedBgColor%22%3A%22%23ffffff%22%7D%2C%22mapMarkerIcon%22%3A%7B%22url%22%3A%22https%3A%2F%2Fd2y9vkode0okis.cloudfront.net%2Fbakery-map-marker-icons_images%2Fthumb%2FDeFrv0l-oNmC.png%22%7D%2C%22mapMarkerIconWhite%22%3Anull%2C%22expressOrderingColor%22%3A%22%234bb39a%22%2C%22discountColor%22%3A%22%23ff4499%22%2C%22enabledCustomLoaderIcon%22%3Afalse%2C%22customLoaderIconUrl%22%3Anull%2C%22enabledEmailLogo%22%3Atrue%2C%22emailLogo%22%3A%7B%22size%22%3Anull%2C%22url%22%3A%22https%3A%2F%2Fd2y9vkode0okis.cloudfront.net%2Fbakeries_images%2Fthumb%2Fcompressed%2F_oEb76lA7CQp.png%22%7D%2C%22textOnOutletLink%22%3A%22%22%2C%22homebaktLinkTitle%22%3A%22%22%2C%22homebaktLinkDescription%22%3A%22%22%2C%22headerLinksSettings%22%3A%5B%7B%22show%22%3Atrue%2C%22text%22%3A%22Til%20forsiden%22%2C%22type%22%3A%22HOME_PAGE%22%7D%2C%7B%22show%22%3Atrue%2C%22text%22%3A%22Sjekk%20leveringspris%22%2C%22type%22%3A%22DELIVERY%22%7D%2C%7B%22show%22%3Atrue%2C%22text%22%3A%22Her%20kan%20du%20hente%22%2C%22type%22%3A%22OUTLET%22%7D%2C%7B%22show%22%3Atrue%2C%22text%22%3A%22Logg%20inn%22%2C%22type%22%3A%22LOGIN%22%7D%2C%7B%22url%22%3A%22%22%2C%22show%22%3Afalse%2C%22text%22%3A%22%22%2C%22type%22%3A%22CUSTOM%22%7D%5D%7D%2C%22marsThemeName%22%3Anull%2C%22cookieScriptBannerId%22%3A%22b0abaa04a8db337a24caa612e1821e89%22%7D%2C%22id%22%3A84%2C%22name%22%3A%22Bod%C3%B8%20bakeri%22%2C%22sellerType%22%3A%22BAKERY%22%2C%22description%22%3A%22Bod%C3%B8%20Bakeri%20er%20hele%20Saltens%20lokale%20baker.%20V%C3%A5re%20kaker%20produseres%20helt%20fra%20bunnen%20av%20uten%20juks%20og%20halvfabrikat.%20Det%20kjennes%20p%C3%A5%20smaken.%20Ekte%20og%20gode%20r%C3%A5varer%20gir%20ekte%20og%20velsmakende%20kaker.%20%20V%C3%A5re%20konditorer%20legger%20sin%20lit%20i%20%C3%A5%20produsere%20de%20beste%20kakene%20for%20v%C3%A5re%20kunder.%22%2C%22email%22%3A%22ordre%40bodobakeri.no%22%2C%22phone%22%3A%22%2B4775580200%22%2C%22picture%22%3A2425%2C%22country%22%3A%7B%22code%22%3A%22NO%22%2C%22name%22%3A%22Norway%22%2C%22currency%22%3A%22NOK%22%2C%22currencySymbol%22%3A%22kr%22%2C%22phoneCode%22%3A%2247%22%2C%22language%22%3A%22no%22%7D%2C%22area%22%3A%7B%22invoiceFee%22%3A49%2C%22invoiceFeeEnabled%22%3Atrue%7D%2C%22payInStoreWebShopEnabled%22%3Afalse%2C%22payInStoreWebShopOnlyMethod%22%3Afalse%2C%22payInStoreMarketplaceEnabled%22%3Afalse%2C%22payInStoreMarketplaceOnlyMethod%22%3Afalse%2C%22webSiteUrl%22%3A%22https%3A%2F%2Fwww.bodobakeri.no%22%2C%22schedule%22%3A%7B%22thursday%22%3A%7B%22orderBefore%22%3A720%2C%22dayOff%22%3Afalse%2C%22daysBeforeOrder%22%3A1%2C%22isRelative%22%3Atrue%2C%22hasPickupOrDelivery%22%3Atrue%7D%2C%22friday%22%3A%7B%22orderBefore%22%3A720%2C%22dayOff%22%3Afalse%2C%22daysBeforeOrder%22%3A1%2C%22isRelative%22%3Atrue%2C%22hasPickupOrDelivery%22%3Atrue%7D%2C%22saturday%22%3A%7B%22orderBefore%22%3A900%2C%22dayOff%22%3Atrue%2C%22daysBeforeOrder%22%3A2%2C%22isRelative%22%3Atrue%2C%22hasPickupOrDelivery%22%3Atrue%7D%2C%22sunday%22%3A%7B%22orderBefore%22%3A900%2C%22dayOff%22%3Atrue%2C%22daysBeforeOrder%22%3A2%2C%22isRelative%22%3Atrue%2C%22hasPickupOrDelivery%22%3Atrue%7D%2C%22monday%22%3A%7B%22orderBefore%22%3A720%2C%22dayOff%22%3Afalse%2C%22daysBeforeOrder%22%3A1%2C%22isRelative%22%3Afalse%2C%22hasPickupOrDelivery%22%3Atrue%7D%2C%22tuesday%22%3A%7B%22orderBefore%22%3A720%2C%22dayOff%22%3Afalse%2C%22daysBeforeOrder%22%3A1%2C%22isRelative%22%3Atrue%2C%22hasPickupOrDelivery%22%3Atrue%7D%2C%22wednesday%22%3A%7B%22orderBefore%22%3A720%2C%22dayOff%22%3Afalse%2C%22daysBeforeOrder%22%3A1%2C%22isRelative%22%3Atrue%2C%22hasPickupOrDelivery%22%3Atrue%7D%7D%2C%22customSchedule%22%3A%22%22%2C%22maxDeliveryPrice%22%3A299%2C%22cities%22%3A%5B%22Bod%C3%B8%22%2C%22Fauske%22%2C%22Rognan%22%5D%2C%22position%22%3A%22TOP%22%2C%22pickupLocations%22%3A%5B%22Bod%C3%B8%22%2C%22Fauske%22%2C%22Rognan%22%5D%2C%22deliveryToLocations%22%3A%5B%22Bod%C3%B8%22%2C%22Fauske%22%5D%2C%22invoiceFeeEnabled%22%3Atrue%2C%22invoiceFee%22%3A49%2C%22invoiceEnabledOnWebShop%22%3Atrue%2C%22invoiceReferenceCanBeEmpty%22%3Atrue%2C%22twoInvoiceEnabledOnWebShop%22%3Atrue%2C%22helpBakeriesPromo%22%3A%22%3Cul%3E%3Cli%3ETilbyr%20br%C3%B8d%2C%20bakst%20og%20kaker%3C%2Fli%3E%3Cli%3EKan%20bestille%20i%20nettbutikk%3C%2Fli%3E%3Cli%3ELevering%20p%C3%A5%20d%C3%B8r%3C%2Fli%3E%3C%2Ful%3E%22%2C%22image%22%3A%7B%22id%22%3A2425%2C%22small%22%3A%22https%3A%2F%2Fd2y9vkode0okis.cloudfront.net%2Fbakeries_images%2Fthumb%2Fcompressed%2F_oEb76lA7CQp.png%22%2C%22original%22%3A%22https%3A%2F%2Fd2y9vkode0okis.cloudfront.net%2Fbakeries_images%2Fcompressed%2F84-20.png%22%2C%22isVertical%22%3Afalse%2C%22shape%22%3A%22horizontal%22%7D%2C%22expressOrderingEnabled%22%3Afalse%2C%22minCartPriceAllowsDelivery%22%3A0%2C%22freeDeliveryEnabled%22%3Afalse%2C%22minCartPriceAllowsFreeDelivery%22%3A0%2C%22freeDeliveryAllowsOnlyForCompanies%22%3Afalse%2C%22categoryAvailableOnlyInternalOutletsNote%22%3A%22%22%2C%22productAvailableOnlyInternalOutletsNote%22%3A%22%22%2C%22slug%22%3A%22bod-bakeri%22%2C%22details%22%3A%7B%22filingSectionTitle%22%3A%22Velg%20smak%2Ffyll%22%2C%22filingSectionHelpText%22%3A%22%22%2C%22sizeSectionTitle%22%3A%22Velg%20st%C3%B8rrelse%22%2C%22sizeSectionHelpText%22%3A%22Hvor%20mange
5837%20biter%20trenger%20man%3F%20Et%20forslag%20er%20%C3%A5%20beregne%201%2C5%20biter%20per%20person.%20Da%20f%C3%A5r%20alle%20et%20stykke%20og%20noen%20kan%20ta%20et%20ekstra.%20Og%20rester%20er%20jo%20uansett%20godt%20%C3%A5%20ha%20i%20kj%C3%B8leskapet%20%3A)%22%7D%2C%22portfolio%22%3Anull%2C%22relatedShops%22%3A%5B%5D%2C%22allowLoginByCustomerId%22%3Afalse%2C%22activateHomebakt%22%3Atrue%2C%22showHomebaktLink%22%3Afalse%2C%22deviatingOrderDeadlines%22%3A%5B%5D%2C%22deliveryDeposit%22%3A129%2C%22invoiceFeeOnPrivateShop%22%3A49%2C%22invoiceEnabledOnPrivateShop%22%3Atrue%2C%22cieInvoiceEnabledOnPrivateShop%22%3Afalse%2C%22thirdPartyDeliveryEnabled%22%3Afalse%2C%22thirdPartyDeliveryAllowedOnMarketplace%22%3Afalse%2C%22thirdPartyDeliveryAllowedOnWebshop%22%3Afalse%2C%22shopUrl%22%3A%22https%3A%2F%2Fwww.bodobakeri.no%2Fshop%2F%22%2C%22siteUrl%22%3A%22https%3A%2F%2Fwww.bodobakeri.no%22%2C%22host%22%3A%22www.bodobakeri.no%22%2C%22ownLandingPage%22%3Afalse%7D%2C%22locale%22%3A%22NO%22%2C%22bakeryId%22%3A84%2C%22bakerySlug%22%3A%22bod-bakeri%22%2C%22bakeryCountryCode%22%3A%22NO%22%2C%22bakeryAnalyticSettings%22%3A%7B%22googleAnalyticKey%22%3A%22%22%2C%22googleTagManagerKey%22%3A%22%22%7D%2C%22bakeryWebSiteHost%22%3A%22www.bodobakeri.no%22%2C%22allowPageIndexing%22%3Atrue%2C%22STRINGS%22%3A%7B%22go%20to%20sleep%20key%22%3A%22NO%20KEY!!!%22%2C%22close%22%3A%22close%22%2C%22HOME%22%3A%22home%22%2C%22cancel%22%3A%22cancel%22%2C%22submit%22%3A%22Bekreft%22%2C%22image%20url%22%3A%22Image%20url...%22%2C%22clear%22%3A%22clear%22%2C%22title%22%3A%22Title%22%2C%22liked%20posts%22%3A%22Liked%20posts%20%22%2C%22Dimension%2C%20cm%22%3A%22Dimension%20(CM)%22%2C%22orders%22%3A%22Orders%22%2C%22you%20didn't%20do%20any%20sale%20yet%22%3A%22You%20have%20not%20made%20any%20sales%20yet%22%2C%22reporting%22%3A%22Analytics%20dashboard%20%22%2C%22is%20in%20mutual%20connection%22%3A%22is%20a%20mutual%20connection%22%2C%22edit%20Hero%20Banner%22%3A%22Hero%20image%20%2B%20text%22%2C%22edit%20TopBanner%22%3A%22Viktig%20informasjon%22%2C%22edit%20header%22%3A%22Header%22%2C%22edit%20Offers%20section%22%3A%22Menu%20with%204%20choices%22%2C%22edit%20About%20us%20section%22%3A%22About%20us%22%2C%22edit%20Instagram%20Feed%20section%22%3A%22Instagram%20feed%22%2C%22edit%20Shops%20Section%20Desktop%22%3A%22Shop%20map%20for%20desktop%22%2C%22edit%20Shops%20Section%20Mobile%22%3A%22Shop%20list%20for%20mobile%22%2C%22edit%20order%20section%22%3A%22Promote%20offer%22%2C%22edit%20SocialNetwork%22%3A%22Social%20networks%22%2C%22edit%20product%20categories%22%3A%22Product%20categories%22%2C%22edit%20Footer%22%3A%22Footer%22%2C%22i%20agree%22%3A%22Jeg%20godtar%22%2C%22restore%20your%20password%22%3A%22Tilbakestill%20ditt%20passord%22%2C%22if%20you%20have%20not%20made%20a%20request%20to%20change%20your%20password%2C%20please%20ignore%20this%20message%22%3A%22Om%20du%20ikke%20har%20bedt%20om%20%C3%A5%20endre%20ditt%20passord%2C%20vennligst%20se%20bort%20i%20fra%20denne%20eposten.%20Ditt%20eksisterende%20passord%20fungerer%20fortsatt.%22%2C%22Close%20modal%22%3A%22Lukk%22%2C%22thanks%20for%20you%20registration%2C%20we%20will%20check%20your%20account%20and%20come%20back%20to%20you%22%3A%22Takk%20for%20din%20registrering.%20Administratoren%20vil%20sjekke%20kontoen%20din%20og%20gi%20deg%20tilgang%20om%20du%20kvalifisert.%22%2C%22Your%20are%20welcome%22%3A%22Vi%20har%20mottatt%20din%20registering!%22%2C%22your%20registration%20was%20successful%20and%20now%20we%20can%20use%20the%20site.%20if%20you%20have%20any%20questions%2C%20write%20or%20call%20us.%22%3A%22Vi%20har%20mottatt%20din%20registering%20og%20nettsidens%20administrator%20vil%20se%20p%C3%A5%20din%20konto%20og%20gi%20deg%20tilgang%20til%20nettsiden%20om%20du%20er%20kvalifisert.%22%2C%22user%20registration%22%3A%22Brukerregistrering%22%2C%22description%22%3A%22Description%22%2C%22banner%22%3A%22Fullwidth%20banner%22%2C%22text%22%3A%22Tekst%22%2C%22link%22%3A%22Link%22%2C%22hey%20there%22%3A%22hey%20there%20value%22%2C%22Hello%20%7B0%7D%20%7B1%7D%22%3A%22Hi%20dear%20%7B0%7D%20%7B1%7D.%20How%20are%20you%20darling%20yo1%3F%22%2C%22phone%22%3A%22phone%22%2C%22paste%2
58370image%20url%22%3A%22Add%20url%20to%20image%22%2C%22Search%20products%22%3A%22S%C3%B8k%20produkter%22%2C%22welcome%20back!%22%3A%22Logg%20inn%22%2C%22log%20in%20to%20manage%20your%20account%22%3A%22Vennligst%20oppgi%20dine%20innloggingsdetaljer%22%2C%22login%22%3A%22Logg%20inn%22%2C%22forgot%20password%3F%22%3A%22Glemt%20passord%3F%22%2C%22register%20yourself%22%3A%22Registrer%20deg%22%2C%22don't%20have%20a%20user%3F%22%3A%22Har%20du%20ikke%20en%20bruker%3F%22%2C%22email%22%3A%22E-postadresse%22%2C%22password%22%3A%22Passord%22%2C%22%D1%81reate%20account%22%3A%22Registrer%20deg%22%2C%22already%20have%20an%20account%3F%22%3A%22Har%20du%20konto%3F%22%2C%22first%20name%22%3A%22Fornavn%22%2C%22last%20name%22%3A%22Etternavn%22%2C%22create%20a%20user%20to%20enjoy%20all%20the%20benefits%20of%20our%20customer%20club.%22%3A%22Register%20deg%20for%20%C3%A5%20be%20om%20adgang%20til%20admin.%20Administrator%20m%C3%A5%20godkjenne%20deg%20etter%20registering.%22%2C%22good%20day%2C%20dear%20customer%22%3A%22Hei%2C%22%2C%22you%20have%20made%20a%20request%20to%20change%20your%20password.%20to%20reset%20your%20password%2C%20click%20on%22%3A%22Vi%20mottok%20en%20foresp%C3%B8rsel%20om%20at%20du%20%C3%B8nsket%20%C3%A5%20tilbakestille%20ditt%20passord.%20Vennligst%20%22%2C%22the%20reset%20link%22%3A%22klikk%20her%20for%20%C3%A5%20lage%20et%20nytt%20passord.%22%2C%22password%20is%20successfully%20reset.%20log%20in%20using%20your%20new%20password%22%3A%22Det%20nye%20passordet%20er%20klart.%20N%C3%A5%20kan%20du%20g%C3%A5%20til%20nettsiden%20og%20logge%20inn.%22%2C%22enter%20your%20new%20password%22%3A%22Lag%20et%20nytt%20passord%22%2C%22restore%20password%22%3A%22Gjenopprett%20passord%22%2C%22please%20type%20in%20your%20email%2C%20and%20we%20will%20send%20you%20an%20instruction%20on%20how%20to%20reset%20your%20password!%22%3A%22Skriv%20inn%20din%20e-postadresse%2C%20s%C3%A5%20sender%20vi%20deg%20en%20e-post%20med%20instruksjoner%20om%20hvordan%20du%20gjenoppretter%20passordet%20ditt.%22%2C%22send%22%3A%22Send%22%2C%22oh!%20you%20do%20remember%20your%20password%3F%20then%22%3A%22Husker%20du%20passordet%20ditt%3F%22%2C%22there%20is%20no%20user%20with%20this%20email%22%3A%22Det%20er%20dessverre%20ingen%20bruker%20med%20denne%20e-postadressen.%20Trenger%20du%20hjelp%3F%20Ta%20kontakt%20med%20Cake%20it%20easy%20p%C3%A5%2022%2033%2026%2000.%22%2C%22error!!!%22%3A%22Ops!%22%2C%22make%20sure%20email%20%7B0%7D%20is%20valid%20and%20you%20are%20registered%20with%20this%20email%20address%22%3A%22Det%20fins%20ingen%20bruker%20med%20denne%20e-postadressen.%20Sjekk%20at%20%7B0%7D%20er%20riktig.%20Trenger%20du%20hjelp%3F%20Ta%20kontakt%20med%20Cake%20it%20easy%20p%C3%A5%2022%2033%2026%2000.%22%2C%22success!!!%22%3A%22Bekreftet%22%2C%22email%20message%20with%20password%20restoring%20instructions%20is%20successfully%20sent.%20check%20your%20inbox%22%3A%22Vi%20har%20sendt%20en%20e-post%20til%20deg%20med%20instruksjoner%20for%20%C3%A5%20tilbakestille%20passordet%20ditt.%20Sjekk%20innboksen%20din.%22%2C%22check%20all%20the%20fields%20and%20provide%20a%20valid%20data%22%3A%22E-postadresse%20eller%20passord%20er%20feil.%20Vennligst%20sjekk%20om%20det%20er%20riktig%20og%20pr%C3%B8v%20igjen.%22%2C%22save%22%3A%22Confirm%22%2C%22special%20banners%22%3A%22Set%20time-activated%20banners%22%2C%22your%20are%20welcome%22%3A%22Lag%20deg%20en%20konto%22%2C%22edit%20Slider%22%3A%22Hero%20slider%22%2C%22edit%20Dual%20Image%20Block%22%3A%22Two%20images%20%2B%20text%22%2C%22edit%20Dual%20Image%20Block%20Down%22%3A%22Two%20images%20%2B%20text%22%2C%22edit%20CTA%20Text%20Block%22%3A%22Signup%20for%20invoice%22%2C%22edit%20Page%20Theme%22%3A%22Theme%22%2C%22Bestill%22%3A%22Bestill%22%2C%22saved!%22%3A%22Updated%22%2C%22terms%22%3A%22Registrera%20dig%20f%C3%B6r%20att%20kunna%20hantera%20di%22%2C%22Brukerbetingelser%22%3A%22Brukerbetingelser%22%2C%22NettButikk%22%3A%22Nettbutikk%22%2C%22Log%20in%22%3A%22Logg%20inn%22%2C%22Log%20out%22%3A%22Log%20out%22%2C%22rosenborginfo%22%3A%22Info%22%2C%22rosenborgaboutus%22%3A%22About%20us%22%2C%22rosenborgoffer%22%3A%22Our%20offers%22%2C%22rosenborgfullwidthimage%22%3A%22Full%20width%20image%22%2C%22rosenborgproductcategories%22%3A%22Product%20categories%22%2C%22rosenborginstagramfeed%22%3A%22Instagram%20feed%22%2C%22rosenborgtextblock%22%3A%22Free%20Text%22%2C%22rosenborgherobanner%22%3A%22Hero%20section%22%2C%22rosenborgsimplebutton%22%3A%22Single%20button%22%2C%22rosenborgdualimage%22%3A%22Dual%20image%2
58370cards%22%2C%22rosenborgslider%22%3A%22Slider%22%2C%22rosenborgapplyforinvoicecontainer%22%3A%22Apply%20for%20Invoice%22%2C%22rosenborgbakeryoutlets%22%3A%22Outlets%22%2C%22Cart%22%3A%22Handlekurv%22%2C%22commonspacer%22%3A%22Spacer%22%2C%22dualimage%22%3A%22Dual%20banner%22%2C%22fullwidthimage%22%3A%22Full%20width%20image%22%2C%22gallery%22%3A%22Three%20images%20horizontally%22%2C%22productcategories%22%3A%22Produktkategorier%20i%20galleri%22%2C%22textblock%22%3A%22Text%22%2C%22titlewithimage%22%3A%22About%20us%20with%203%20images%22%2C%22ourproducts%22%3A%22Nettbutikk%22%2C%22instagramfeed%22%3A%22Instagram%20feed%22%2C%22herobanner%22%3A%22Hero%20banner%22%2C%22button%22%3A%22Button%22%2C%22spacer%22%3A%22Spacer%22%2C%22image%22%3A%22%22%2C%22info%22%3A%22Call-to-action%20with%20image%22%2C%22offer%22%3A%22Cards%20with%20images%20and%20text%22%2C%22aboutus%22%3A%22Om%20oss%20med%20bakgrunn%20og%20bilde%22%2C%22Choose%20outlet%22%3A%22Her%20finner%20du%20oss%22%2C%22Choose%20delivery%22%3A%22Levering%20p%C3%A5%20d%C3%B8r%22%2C%22top%20banner%22%3A%22Notification%20bar%22%2C%22from%22%3A%22fra%22%2C%22Categories%22%3A%22V%C3%A5re%20produkter%22%2C%22submenu%22%3A%22Secondary%20menu%20bar%22%2C%22save%20%26%20close%22%3A%22Save%20%26%20close%22%2C%22Vi%20bruker%20cookies%20for%20%C3%A5%20gi%20deg%20den%20beste%20opplevelsen%20av%20v%C3%A5re%20sider.%20Aksepter%20ved%20%C3%A5%20forsette%20%C3%A5%20bruke%20nettstedet%20eller%20klikke%20%5C%22OK%5C%22.%22%3A%22Vi%20bruker%20cookies%20for%20%C3%A5%20gi%20deg%20den%20beste%20opplevelsen%20av%20v%C3%A5re%20sider.%20Aksepter%20ved%20%C3%A5%20forsette%20%C3%A5%20bruke%20nettstedet%20eller%20klikke%20%5C%22OK%5C%22.%22%2C%22Les%20mer%22%3A%22Les%20mer%22%2C%22Personvern%22%3A%22Personvern%22%2C%22per%20piece%22%3A%22per%20stykk%22%2C%22Allow%20all%22%3A%22Tillat%20alle%22%2C%22Customize%22%3A%22Tilpass%22%2C%22Show%20details%22%3A%22Vis%20detaljer%22%2C%22cookies%5Cn%5Ct%5Ct%5Ct%5Ct%5Ct%5Ct%5Ct%5Ctdetails%22%3A%22Cookies%20detaljer%22%2C%22Accept%22%3A%22Tillat%20valgte%22%2C%22Description%22%3A%22Beskrivelse%22%2C%22weglot%20api%20key%22%3A%22Weglot%20API%20Key%22%7D%2C%22domain%22%3A%22https%3A%2F%2Fwww.bodobakeri.no%22%2C%22Page%22%3A%7B%22Name%22%3A%22BakeryLandingPage%22%2C%22Type%22%3A%22page%22%2C%22Folder%22%3A%22cakeiteasy%2Fpages%22%2C%22Apps%22%3A%5B%5D%2C%22_id%22%3A%22622f2ceb9af4ac0fce90a51a%22%2C%22DataArgs%22%3A%5B%5D%2C%22Page%22%3A%7B%22settings%22%3A%7B%22cache%22%3A%7B%22ttl%22%3A0%7D%2C%22group%22%3A%22%22%2C%22icon%22%3A%22%22%2C%22master%22%3A%22%22%2C%22meta%22%3A%7B%22description%22%3A%22%22%2C%22image%22%3A%22%22%2C%22keywords%22%3A%22%22%2C%22noIndex%22%3A%22%22%2C%22title%22%3A%22%22%2C%22viewport%22%3A%22%22%7D%2C%22permissions%22%3A%7B%22private%22%3A%22%22%2C%22roles%22%3A%22%22%7D%2C%22title%22%3A%22%22%2C%22url%22%3A%22%2F%22%7D%7D%2C%22BlockFunction%22%3A%22async%20function%20server()%20%7B%5Cn%20%20return%20%7B%7D%3B%5Cn%7D%22%2C%22DemoJsx%22%3A%22export%20default%20%3CBakeryLandingPage%20%2F%3E%22%2C%22DemoJsxTranspiled%22%3A%22export%20default%20executeAppBlock(BakeryLandingPage%2C%20null)%3B%22%2C%22Jsx%22%3A%22const%20%7B%20This%2C%20serverData%20%7D%20%3D%20Mars.initJsx()%3B%5Cn%5Cnasync%20function%20BakeryLandingPage()%20%7B%5Cn%20%20const%20simplePage%20%3D%20await%20Mars.data.simple_pages.findOne(%7B%5Cn%20%20%20%20slug%3A%20'%2F'%2C%5Cn%20%20%20%20folder%3A%20Req.bakerySlug%2C%5Cn%20%20%7D)%3B%5Cn%5Cn%20%20if%20(simplePage)%20%7B%5Cn%20%20%20%20return%20%3CSimplePageRenderV2%20%7B...Req%7D%20Page%3D%7BthisBlock%7D%20simplePage%3D%7BsimplePage%7D%20%2F%3E%5Cn%20%20%7D%5Cn%5Cn%20%20return%20'Not%20found'%5Cn%5Cn%20%20%2F%2F%20return%20(%5Cn%20%20%2F%2F%20%20%20%3CSimplePageRenderV2%20%7B...Req%7D%20Page%3D%7BthisBlock%7D%20simplePage%3D%7BsimplePage%7D%20%2F%3E%5Cn%20%20%2F%2F%20)%3B%5Cn%7D%5Cn%5Cnexport%20default%20(%5Cn%20%20%3CCacheJsx%5Cn%20%20%20%20key%3D%7B'bakery-page-'%20%2B%20Req.bakerySlug%20%2B%20'%20%7C%20BakeryLandingPage%20%7C'%7D%5Cn%20%20%20%20keys%3D%7BObject.assign(%7B%7D%2C%20data%2C%20%7B%20bakerySlug%3A%20Req.bakerySlug%20%7D)%7D%5Cn%20%20%20%20data%3D%7BBakeryLandingPage%7D%5Cn%20%20%20%20ttl%3D%7BMars.settings.CieApiSettings.cacheConfig.pages.cacheInSeconds%7D%5Cn%20%20%2F%3E%5Cn)%5Cn%22%2C%22JsxTranspiled%22%3A%22const%20%7B%20This%2C%20serverData%20%7D%20%3D%20Mars.initJsx()%3B%5Cn%5Cnasync%20function%20BakeryLandingPage()%20%7B%5Cn%20%20const%20simplePage%20%3D%20await%20Mars.data.simple_pages.findOne(%7B%5Cn%20%20%20%20slug%3A%20'%2F'%2C%5Cn%20%20%20%20folder%3A%20Req.bakerySlug%5Cn%20%20%7D)%3B%5Cn%5Cn%20%20if%20(simplePage)%20%7B%5Cn%20%20%20%20return%20executeAppBlock(SimplePageRenderV2%2C%20Object.assign(%7B%7D%2C%20Req%2C%20%7B%20Page%3A%20thisBlock%2C%20simplePage%3A%20simplePage%20%7D))%3B%5Cn%20%20%7D%5Cn%5Cn%20%20return%20'Not%20found'%3B%5Cn%5Cn%20%20%2F%2F%20return%20(%5Cn%20%20%2F%2F%20%20%20%3CSimplePageRenderV2%20%7B...Req%7D%20Page%3D%7BthisBlock%7D%20simplePage%3D%7BsimplePage%7D%20%2F%3E%5Cn%20%20%2F%2F%20)%3B%5Cn%7D%5Cn%5Cnexport%20default%20executeAppBlock(CacheJsx%2C%20%7B%5Cn%20%20key%3A%20'bakery-page-'%20%2B%20Req.bakerySlug%20%2B%20'%20%7C%20BakeryLandingPage%20%7C'%2C%5Cn%20%20keys%3A%20Object.assign(%7B%7D%2C%20data%2C%20%7B%20bakerySlug%3A%20Req.bakerySlug%20%7D)%2C%5Cn%20%20data%3A%20BakeryLandingPage%2C%5Cn%20%20ttl%3A%20Mars.settings.CieApiSettings.cacheConfig.pages.cacheInSeconds%5Cn%7D)%3B%22%7D%2C%22meta%22%3A%7B%22title%22%3A%22Bod%C3%B8%20Bakeri%20-%20Bestill%20kaker%2C%20lunsj%20og%20bakervarer%20i%20Salten%22%2C%22description%22%3A%22Vi%20er%20Saltens%20lokale%20bakeri%20og%20med%20h%C3%B8y%20baker-%20og%20konditorfaglig%20kompetanse%20satser%20vi%20p%C3%A5%20%C3%A5%20levere%20de%20beste%20og%20ferskeste%20baker-%20og%20konditorvarer%20av%20h%C3%B8yeste%20kvalitet.%22%2C%22image%22%3A%22https%3A%2F%2Fbcdn.cakeiteasy.com%2F1677578276282%3Fwidth%3D500%26height%3D500%26optimizer%3Dimage%26format%3Dwebp%22%2C%22noIndex%22%3Afalse%7D%2C%22icon%22%3Anull%2C%22title%22%3A%22Bod%C3%B8%20Bakeri%20-%20Bestill%20kaker%2C%20lunsj%20og%20bakervarer%20i%20Salten%22%2C%22master%22%3A%22MasterPage%22%2C%22Folder%22%3A%22bod-bakeri%22%2C%22simplePageObjectId%22%3A%2263fdcb3473455536952f1d78%22%2C%22children%22%3Anull%2C%22Id%22%3A%22objf3dcac47de134a028d9d5668fb15dd33%22%7D"));
5838new MarsBlock('ClonePage', {
5839  ...data, methods: [
5840    { name: 'clone', block: 'PageViewerPage' },
5841    { name: 'getPageSlug', block: 'MasterPage' }
5842  ]
5843},
5844  {
5845    async clone(pageId) {
5846      pageId = await this.api.clone(pageId);
5847      const page = await this.api.getPageSlug(pageId);
5848      // check slug rename option on - it doesnt work
5849      location.href = `${page.slug}`; 
5850    }
5851  })
5852
5853const selector = sessionStorage.getItem("scrollToElement");
5854const blockElement = document.getElementById(selector) ? document.getElementById(selector) : document.querySelector(`section[data-test-id="${selector}"]`);
5855
5856if (blockElement) {
5857  const block = 'start';
5858  const behavior = 'smooth';
5859  //blockElement.scrollIntoView({ block, behavior });
5860  scrollToElement(selector, block, behavior)
5861  sessionStorage.setItem("scrollToElement", null);
5862}</script>
5862</div><div ></div><div id="pageLoadSpinner" hidden="true" style=""><div class="loader" style="overflow-x: hidden;margin-bottom: -3px;">
5863	<div class="bar"></div>
5864</div>
5865<style>
5866	#pageLoadSpinner .bar {position: fixed}
5867</style><style>@keyframes loader-animation {
5868  0% { left: -100%; }
5869  49% { left: 100%; }
5870  50% { left: 100%; }
5871  100% { left: -100%; }
5872}
5873
5874#pageLoadSpinner .loader .bar {
5875  top: 0;
5876  left: 0;
5877  height: 3px;
5878  width: 100%;
5879  z-index: 999999;
5880  background-color: red;
5881  animation-name: loader-animation;
5882  animation-duration: 3s;
5883  animation-iteration-count: infinite;
5884  animation-timing-function: ease-in-out;
5885}</style>
5885<script v-pre type="module">const data = JSON.parse(decodeURIComponent("%7B%22_blockName%22%3A%22PageLoader%22%2C%22Id%22%3A%22pageLoadSpinner%22%2C%22position%22%3A%22relative%22%2C%22children%22%3Anull%7D"));window[data.Id].hidden = true;</script>
5885</div></body></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.