1<!DOCTYPE html> 2<html xmlns="http://www.w3.org/1999/xhtml" class="no-js desktop" lang="es-ES"><head id="j_id_4">
2<script type="text/javascript" src="https://jsf.cdn-shop.com/jakarta.faces.resource/jsf.js.jsf?ln=jakarta.faces"></script>
2<script type="text/javascript">if(window.PrimeFaces){PrimeFaces.settings.locale='en_US';PrimeFaces.settings.viewId='/blog.xhtml';PrimeFaces.settings.contextPath='';PrimeFaces.settings.cookiesSecure=true;}</script>
2 3 <base href="https://www.mi-arte.es/" /> 4
4<script type="text/javascript"> 5 window.dataLayer = window.dataLayer || [] 6 dataLayer.push({ 7 'pagetype': 'blog' 8 }); 9 </script>
9 10 11 12 13
13<script> 14 window.dataLayer = window.dataLayer || []; 15 function gtag() { dataLayer.push(arguments); } 16 gtag('consent', 'default', { 17 //Consent for ad_storage 18 'ad_storage': 'denied', 19 'ad_user_data': 'denied', 20 'ad_personalization': 'denied', 21 'wait_for_update': 1500, //milliseconds 22 }); 23 </script>
23 24 25 26 27
27<script>/* <![CDATA[ */ 28 function handleConsentChange(e) { 29 var consent = e.detail || {}; 30 var advertisingConsent = consent.advertising || null; // Get advertising consent from event detail 31 32 // Set default Bing Ads consent to 'denied' 33 window.uetq = window.uetq || []; 34 window.uetq.push('consent', 'default', { 35 'ad_storage': 'denied' 36 }); 37 38 if (advertisingConsent === true) { 39 // Bing Ads: Push Ads enabled 40 window.uetq.push('consent', 'update', { 41 'ad_storage': 'granted' 42 }); 43 } else if (advertisingConsent === false || advertisingConsent === null) { 44 // Bing Ads: Push Ads Disabled 45 window.uetq.push('consent', 'update', { 46 'ad_storage': 'denied' 47 }); 48 } else { 49 console.error("Unexpected advertising consent value:", advertisingConsent); 50 } 51 } 52 53 // Add event listeners for cf_consent and cf_consent_loaded 54 window.addEventListener("cf_consent", handleConsentChange); 55 window.addEventListener("cf_consent_loaded", handleConsentChange); 56 /* ]]> */</script>
56 57 58 59 60 61
61<script>/* <![CDATA[ */(function (w, d, s, l, i) { 62 w[l] = w[l] || []; w[l].push({ 63 'gtm.start': 64 new Date().getTime(), event: 'gtm.js' 65 }); var f = d.getElementsByTagName(s)[0], 66 j = d.createElement(s), dl = l != 'dataLayer' ? '&l=' + l : ''; j.async = true; j.src = 67 'https://t.mi-arte.es/gtm.js?id=' + i + dl; f.parentNode.insertBefore(j, f); 68 })(window, document, 'script', 'dataLayer', 'GTM-M6ZF8NLG');/* ]]> */</script>
68 69 70 71 72 73
73<script> 74 window.dataLayer = window.dataLayer || []; 75 dataLayer.push({ 76 'internalIp': 'false', 77 'shopName': 'mi-arte.es', 78 'baseUrlScheme': 'https', 79 'shopTemplateName': 'mi-arte3-es' 80 }); 81 </script>
81 82 83 84 85
85<script src="https://consent.cookiefirst.com/sites/mi-arte.es-ba02c467-225f-4353-bfbd-afc6fbd4461b/consent.js" defer="defer"></script>
85 86 87 88
88<script> 89 /* <![CDATA[ */ 90 window.addEventListener("cf_init", function(){ 91 if(window.CookieFirst && !window.CookieFirst.consent) { 92 window.addEventListener("cf_consent", function(){ 93 window.location.reload(); 94 }); 95 } 96 }); 97 /* ]]> */ 98 </script>
98 99 100
100<script> 101 if (!location.hostname.includes("testing")) { 102 // Warning message for the browser console 103 console.log( 104 "%cSTOP!", 105 "color: red; font-size: 40px; font-weight: bold;" 106 ); 107 console.log( 108 "%cThis tool is meant for professional use. Misuse can lead to security breaches and unintended consequences. If someone told you to copy-paste something here to enable a feature or 'hack' someone's account, it is a scam and will give them access to your account.", 109 "font-size: 20px;" 110 ); 111 } else { 112 console.log('%cDEBUG COUPON/DISCOUNT:', 'color: red; font-weight: bold;'); 113 console.log('Session coupon: ' + ''); 114 console.log('couponRedemptionBean: ' + ''); 115 console.log('shoppingCartBean.couponCode: ' + ''); 116 console.log('shoppingCartBean.cart.couponCode: ' + ''); 117 console.log('sessionServicesBean discount code: ' + ''); 118 console.log('customerDiscountLevel: ' + '0'); 119 } 120 121 // Delete the 'QSI_HistorySession' cookie before page load - causing error 400 overloading cookies 122 if (document.cookie.split('; ').find(row => row.startsWith('QSI_HistorySession='))) { 123 document.cookie = 'QSI_HistorySession=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;'; 124 } 125 </script>
125 126 127
127<script type="text/javascript" data-cookiefirst-category="necessary"> 128 //<![CDATA[ 129 window._vwo_code || (function() { 130 var account_id=22555, 131 version=2.1, 132 settings_tolerance=2000, 133 hide_element='body', 134 hide_element_style = 'opacity:0 !important;filter:alpha(opacity=0) !important;background:none !important', 135 /* DO NOT EDIT BELOW THIS LINE */ 136 f=false,w=window,d=document,v=d.querySelector('#vwoCode'),cK='_vwo_'+account_id+'_settings',cc={};try{var c=JSON.parse(localStorage.getItem('_vwo_'+account_id+'_config'));cc=c&&typeof c==='object'?c:{}}catch(e){}var stT=cc.stT==='session'?w.sessionStorage:w.localStorage;code={use_existing_jquery:function(){return typeof use_existing_jquery!=='undefined'?use_existing_jquery:undefined},library_tolerance:function(){return typeof library_tolerance!=='undefined'?library_tolerance:undefined},settings_tolerance:function(){return cc.sT||settings_tolerance},hide_element_style:function(){return'{'+(cc.hES||hide_element_style)+'}'},hide_element:function(){if(performance.getEntriesByName('first-contentful-paint')[0]){return''}return typeof cc.hE==='string'?cc.hE:hide_element},getVersion:function(){return version},finish:function(e){if(!f){f=true;var t=d.getElementById('_vis_opt_path_hides');if(t)t.parentNode.removeChild(t);if(e)(new Image).src='https://dev.visualwebsiteoptimizer.com/ee.gif?a='+account_id+e}},finished:function(){return f},addScript:function(e){var t=d.createElement('script');t.type='text/javascript';if(e.src){t.src=e.src}else{t.text=e.text}d.getElementsByTagName('head')[0].appendChild(t)},load:function(e,t){var i=this.getSettings(),n=d.createElement('script'),r=this;t=t||{};if(i){n.textContent=i;d.getElementsByTagName('head')[0].appendChild(n);if(!w.VWO||VWO.caE){stT.removeItem(cK);r.load(e)}}else{var o=new XMLHttpRequest;o.open('GET',e,true);o.withCredentials=!t.dSC;o.responseType=t.responseType||'text';o.onload=function(){if(t.onloadCb){return t.onloadCb(o,e)}if(o.status===200){_vwo_code.addScript({text:o.responseText})}else{_vwo_code.finish('&e=loading_failure:'+e)}};o.onerror=function(){if(t.onerrorCb){return t.onerrorCb(e)}_vwo_code.finish('&e=loading_failure:'+e)};o.send()}},getSettings:function(){try{var e=stT.getItem(cK);if(!e){return}e=JSON.parse(e);if(Date.now()>e.e){stT.removeItem(cK);return}return e.s}catch(e){return}},init:function(){if(d.URL.indexOf('__vwo_disable__')>-1)return;var e=this.settings_tolerance();w._vwo_settings_timer=setTimeout(function(){_vwo_code.finish();stT.removeItem(cK)},e);var t;if(this.hide_element()!=='body'){t=d.createElement('style');var i=this.hide_element(),n=i?i+this.hide_element_style():'',r=d.getElementsByTagName('head')[0];t.setAttribute('id','_vis_opt_path_hides');v&&t.setAttribute('nonce',v.nonce);t.setAttribute('type','text/css');if(t.styleSheet)t.styleSheet.cssText=n;else t.appendChild(d.createTextNode(n));r.appendChild(t)}else{t=d.getElementsByTagName('head')[0];var n=d.createElement('div');n.style.cssText='z-index: 2147483647 !important;position: fixed !important;left: 0 !important;top: 0 !important;width: 100% !important;height: 100% !important;background: white !important;';n.setAttribute('id','_vis_opt_path_hides');n.classList.add('_vis_hide_layer');t.parentNode.insertBefore(n,t.nextSibling)}var o='https://dev.visualwebsiteoptimizer.com/j.php?a='+account_id+'&u='+encodeURIComponent(d.URL)+'&vn='+version;if(w.location.search.indexOf('_vwo_xhr')!==-1){this.addScript({src:o})}else{this.load(o+'&x=true')}}};w._vwo_code=code;code.init();})(); 137 //]]> 138 </script>
138 139 140 141
141<script type="text/plain" data-cookiefirst-category="advertising"> 142 /* <![CDATA[ */ 143 var TSele = document.getElementById("trustedShopsBadge"); 144 var TSeleCheckout = document.getElementById("customCheckoutDiv"); 145 146 if (TSele || TSeleCheckout) { 147 (function () { 148 _tsConfig = { 149 'variant': 'custom_reviews', /* reviews, default, custom, custom_reviews */ 150 'customElementId': 'trustedShopsBadge', /* required for variants custom and custom_reviews */ 151 'customCheckoutElementId': 'customCheckoutDiv', 152 'trustcardDirection': '', /* for custom variants: topRight, topLeft, bottomRight, bottomLeft */ 153 'customBadgeWidth': '', /* for custom variants: 40 - 90 (in pixels) */ 154 'customBadgeHeight': '', /* for custom variants: 40 - 90 (in pixels) */ 155 'disableResponsive': 'true', /* deactivate responsive behaviour */ 156 'disableTrustbadge': 'false', /* deactivate trustbadge */ 157 }; 158 var _ts = document.createElement('script'); 159 _ts.type = 'text/javascript'; 160 _ts.charset = 'utf-8'; 161 _ts.async = true; 162 _ts.src = '//widgets.trustedshops.com/js/' + 'X49D4DA66F4BABD69542929B7EA2621D1' + '.js'; 163 var __ts = document.getElementsByTagName('script')[0]; 164 __ts.parentNode.insertBefore(_ts, __ts); 165 })(); 166 }; 167 /* ]]> */ 168 </script>
168 169 <link rel="stylesheet" type="text/css" href="https://assets.cdn-shop.com/mi-arte3-es/static/build/css/page-desktop-4698356929.min.css" /> 170 171 <style> 172 .page-section.-blog .story-list { 173 display: grid; 174 grid-template-columns: 1fr 1fr; 175 } 176 177 .page-section.-blog .story-list:before, 178 .page-section.-blog .story-list:after { 179 display: none; 180 } 181 182 .page-section.-blog .story-list article { 183 width: 100%; 184 margin-bottom: 20px; 185 } 186 187 .page-section.-blog .story-list article .story-box { 188 height: 100%; 189 margin: 0; 190 } 191 192 .dNone { 193 display: none !important; 194 } 195 196 .easyPaginateNav { 197 color: #35b2b6; 198 display: block; 199 margin: auto; 200 text-align: center; 201 width: 100%; 202 font-size: 1.1em; 203 } 204 205 .easyPaginateNav a { 206 padding:9px; 207 color: #35B2B6; 208 text-decoration:none; 209 } 210 211 .easyPaginateNav a:active, a:focus { 212 font-weight: bold; 213 } 214 215 .easyPaginateNav a:hover { 216 font-weight: bold; 217 text-decoration:none; 218 } 219 220 .easyPaginateNav a.disabled { 221 pointer-events: none; 222 cursor: default; 223 opacity: 0.4; 224 } 225 226 .easyPaginateNav a.current { 227 pointer-events: none; 228 font-weight: bold; 229 text-decoration:underline; 230 } 231 232 233 .easyPaginateList { 234 margin-top: -30px; 235 } 236 237 .page-section.-blog .story-list article .story-box { 238 font-size: 13px; 239 position: relative; 240 border: 1px solid #F9F9F9; 241 background-color: #f9f9f9; 242 border-radius: 2px; 243 } 244 245 .story-box>.head { 246 padding: 10px 20px; 247 } 248 249 .story-box>.head>.title { 250 margin: 0; 251 font-size: 20px; 252 font-weight: 700; 253 } 254 255 .story-box a { 256 color: inherit; 257 transition: color .2s; 258 text-decoration: none; 259 } 260 261 .page-section.-blog .story-list article.story .story-box .body { 262 padding: 10px 20px; 263 padding-bottom: 30px; 264 } 265 266 .story-box>.body>p { 267 margin-top: 0; 268 margin-bottom: 1em; 269 } 270 271 .story-box>.body .more { 272 color: #35b2b6; 273 position: absolute; 274 bottom: 14px; 275 left: 20px; 276 } 277 278 .story-list>.story .storyimg { 279 width: 100%; 280 max-width: 100%; 281 height: auto; 282 } 283 284 .story-box>.head>.title a:hover { 285 color: #d40140; 286 } 287 288 .ALDE .story-box>.head>.title { 289 color: #02025F; 290 font-weight: 700; 291 font-size: 33px !important; 292 line-height: 1; 293 margin-top: 13px; 294 } 295 296 .filter button.filter-action { 297 border: solid 2px #35b2b6; 298 border-radius: 19px; 299 height: 38px; 300 width: fit-content; 301 white-space: nowrap; 302 font-size: 16px; 303 line-height: 16px; 304 color: #35b2b6; 305 font-weight: normal; 306 background-color: #ffffff; 307 padding: 2px 10px; 308 } 309 310 .filter button.filter-action.active { 311 background-color: #35b2b6; 312 color: #ffffff; 313 font-weight: bold; 314 } 315 316 .phone #category-filter { 317 flex-wrap: nowrap !important; 318 overflow-x: auto; 319 justify-content: flex-start !important; 320 -webkit-overflow-scrolling: touch; 321 scrollbar-width: none; 322 -ms-overflow-style: none; 323 padding-bottom: 5px; 324 } 325 326 .phone #category-filter::-webkit-scrollbar {
327 display: none; 328 } 329 330 /* Mobile and Tablet View Styles */ 331 .tablet .page-section.-blog .story-list, 332 .phone .page-section.-blog .story-list { 333 grid-template-columns: 1fr; 334 padding: 0 10px; 335 padding-top: 10px; 336 } 337 338 /* Mobile View Styles */ 339 .phone .page-section.-blog .story-list.story article { 340 width: 100%; 341 margin-bottom: 20px; 342 } 343 344 .phone .page-section.-blog .story-list article.story .story-box { 345 min-height: 395px; 346 } 347 348 .phone .page-section.-blog .story-list article.story .story-box header.head { 349 padding: 10px; 350 } 351 352 .phone .page-section.-blog .story-list article.story .story-box header.head h3.title { 353 font-size: 18px; 354 margin: 0; 355 font-weight: 700; 356 } 357 358 .phone .page-section.-blog .story-list article.story .story-box .body { 359 padding: 10px; 360 padding-bottom: 30px; 361 } 362 363 .phone .page-section.-blog .story-list article.story .story-box>.body .more { 364 left: 10px; 365 } 366 367 /* Tablet View Styles */ 368 .tablet .page-section.-blog .story-list .story .story-box .body { 369 padding: 15px; 370 } 371 372 .tablet .page-section.-blog .story-list .story .story-box>.body .more{ 373 bottom: 10px; 374 left: 15px; 375 } 376 377 /* Desktop View Styles */ 378 .desktop .page-section.-blog .story-list article .story-box a.img-wrapper { 379 position: relative; 380 } 381 382 .desktop .page-section.-blog .story-list>.story .pin-it-btn { 383 display:none; 384 position: absolute; 385 top: -237px; 386 left: 5px; 387 background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AcaCxEu1E4b9wAAABl0RVh0Q29tbWVudABDcmVhdGVkIHdpdGggR0lNUFeBDhcAAANESURBVDjLfZRdTJtlFMd/7bpSTfu2JevCaClDXRboKB8qgss6P8LKRjbRjCZOMWZDL4wf0YnxKxOjV0biBV5t7EKjieuWeMFVSUiQLS1jY7RV5tx0pi24aoW+/VAKbXm8WHixMD135/mf53/+55ycoxrV2QTrTF1WhtTShHnPQ5RZK1FptRSSMunJaZL+SZZ/i6//gmo9keWJ/VS99DzSA42kLofIRWcpyGkMDQ709bUsRmaJf32O2OBQCZHm3872t1+j8ujT3PrSS9jzAoVUekPmbT3d1Lz3Ols62wl2HkEUi6WK7v34HazHnuGK20M2fJX/M41RotnnpZjLMfVI1xqRpWs/Oz75gPDhowrJJsmA5ZCbu6qr0FXbyIZmSAz7yEXnSsgWzk/wc18/jFl2Ctl/Sdz8aECM6mxiVGcTFx9sF/mkLIQQYuE7v0iOB0Q+KYt8UhbXj59Q4qb2dYulxJ9isrVDaKT7GzE0OAh2PacoaR45Sy4yS7i1g1xkVlFQe3KAHZ9+SCZ8Ffn8BPJ4gOW5OFuf6kRd3r6X1OUgxXQGgMqebjQmI2HPMTSSgSafF53dSiGV5scXjwNQ8/4bSr8Swz6klmbUm8tNZEMzCrDlUAfJ8QC56BzOs6cxu9rQOx0AFFJpkuMBDM46JT4TmkFTbkKt1mrRmCQFKMipDVPKhtcSbTZKSrmr5KriCup8YgFddVWJVLOr7XY5cppcJKZMSme3om9wsBiJKfFmVxuFTBb1wtgFDM46NkkGAOJfnSP2+WlQqdA3OEqUrfbmRl+/8qZ31rH4axR1JvgDf13/BfsrvQp4o68fnd2m+A9f8/PYYgzLQTdhT2+JwvLHXdz64gya5fgf/P7Nt9xz4k2ig0PK9MyuNgAutrgxNO663avQTMna1J76jPmRMWT/5NqKOL1D6Ow2pvZ1U0xnqD9zCo3JyLTbc8c1qT05gL5pF8EDR8gn5lGvAmFPL3/fjLD7pwAVzx5GYzJu2HAA055WmnxeDI31XNn7JPnE/J3PSPVbL7Otx8Pd99UQGxwqKcVy0I3WWoE85ufaq+9SSMr/fY8AdNursBxox/zobrQVW1lZWoIVgXxhgsTwCJnp7zco/QcGRWfbffenDAAAAABJRU5ErkJggg==); 388 border-radius: 3px; 389 color: #fff; 390 padding: 4px 20px 5px 30px; 391 font-weight: bold; 392 background-color: #bd081c; 393 background-repeat: no-repeat; 394 background-position: 5px 5px; 395 cursor:pointer; 396 } 397 398 .desktop .page-section.-blog .story-list>.story .pin-it-btn.active { 399 display: block; 400 } 401 402 .desktop .story-list { 403 width: 1020px; 404 margin: 0 auto; 405 -moz-box-sizing: border-box; 406 box-sizing: border-box; 407 } 408 409 .desktop .page-section.-blog .story-list article .story-box { 410 width: 488px; 411 min-height: 440px; 412 height: 100%; 413 margin: 0; 414 float: left; 415 } 416 </style> 417 418 419
419<script> 420 // <![CDATA[ 421 !function(e){var n=!1;if("function"==typeof define&&define.amd&&(define(e),n=!0),"object"==typeof exports&&(module.exports=e(),n=!0),!n){var t=window.Cookies,o=window.Cookies=e();o.noConflict=function(){return window.Cookies=t,o}}}(function(){function v(){for(var e=0,n={};e<arguments.length;e++){var t=arguments[e];for(var o in t)n[o]=t[o]}return n}return function e(l){function g(e,n,t){var o;if("undefined"!=typeof document){if(1<arguments.length){if("number"==typeof(t=v({path:"/"},g.defaults,t)).expires){var r=new Date;r.setMilliseconds(r.getMilliseconds()+864e5*t.expires),t.expires=r}t.expires=t.expires?t.expires.toUTCString():"";try{o=JSON.stringify(n),/^[\{\[]/.test(o)&&(n=o)}catch(e){}n=l.write?l.write(n,e):encodeURIComponent(String(n)).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g,decodeURIComponent),e=(e=(e=encodeURIComponent(String(e))).replace(/%(23|24|26|2B|5E|60|7C)/g,decodeURIComponent)).replace(/[\(\)]/g,escape);var i="";for(var c in t)t[c]&&(i+="; "+c,!0!==t[c]&&(i+="="+t[c]));return document.cookie=e+"="+n+i}e||(o={});for(var a=document.cookie?document.cookie.split("; "):[],s=/(%[0-9A-Z]{2})+/g,f=0;f<a.length;f++){var p=a[f].split("="),d=p.slice(1).join("=");this.json||'"'!==d.charAt(0)||(d=d.slice(1,-1));try{var u=p[0].replace(s,decodeURIComponent);if(d=l.read?l.read(d,u):l(d,u)||d.replace(s,decodeURIComponent),this.json)try{d=JSON.parse(d)}catch(e){}if(e===u){o=d;break}e||(o[u]=d)}catch(e){}}return o}}return(g.set=g).get=function(e){return g.call(g,e)},g.getJSON=function(){return g.apply({json:!0},[].slice.call(arguments))},g.defaults={},g.remove=function(e,n){g(e,"",v(n,{expires:-1}))},g.withConverter=e,g}(function(){})});var altMsg=0; 422 // ]]> 423 </script>
423 424 425 <link rel="apple-touch-icon" sizes="57x57" href="/apple-touch-icon-57x57.png" /> 426 <link rel="apple-touch-icon" sizes="60x60" href="/apple-touch-icon-60x60.png" /> 427 <link rel="apple-touch-icon" sizes="72x72" href="/apple-touch-icon-72x72.png" /> 428 <link rel="apple-touch-icon" sizes="76x76" href="/apple-touch-icon-76x76.png" /> 429 <link rel="apple-touch-icon" sizes="114x114" href="/apple-touch-icon-114x114.png" /> 430 <link rel="apple-touch-icon" sizes="120x120" href="/apple-touch-icon-120x120.png" /> 431 <link rel="apple-touch-icon" sizes="144x144" href="/apple-touch-icon-144x144.png" /> 432 <link rel="apple-touch-icon" sizes="152x152" href="/apple-touch-icon-152x152.png" /> 433 <link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon-180x180.png" /> 434 <link rel="icon" type="image/png" href="/favicon-32x32.png" sizes="32x32" /> 435 <link rel="icon" type="image/png" href="/favicon-194x194.png" sizes="194x194" /> 436 <link rel="icon" type="image/png" href="/favicon-96x96.png" sizes="96x96" /> 437 <link rel="icon" type="image/png" href="/android-chrome-192x192.png" sizes="192x192" /> 438 <link rel="icon" type="image/png" href="/favicon-16x16.png" sizes="16x16" /> 439 440 <link rel="manifest" href="/manifest.json" crossorigin="use-credentials" /> 441 442 <meta name="apple-mobile-web-app-capable" content="yes" /> 443 <meta name="apple-mobile-web-app-status-bar-style" content="default" /> 444 <meta name="apple-mobile-web-app-title" content="MiArte.es" /> 445 446 <meta name="application-name" content="MiArte.es" /> 447 <meta name="msapplication-TileColor" content="#78b943" /> 448 <meta name="msapplication-TileImage" content="/mstile-144x144.png" /> 449 <meta name="msapplication-tap-highlight" content="no" /> 450 451 <meta name="mobile-web-app-capable" content="yes" /> 452 <meta name="theme-color" content="#35B2B6" /> 453 <meta charset="UTF-8" /> 454 <meta name="viewport" content="width=device-width, initial-scale=1" /> 455 <meta name="theme-color" content="#35B2B6" /> 456 <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" /> 457 <meta name="crshtst" content="8b1e229d-9184-45ff-89ae-a2ea18601d32" /> 458 <meta name="robots" id="robotsMeta" content="INDEX,FOLLOW" /> 459 <meta name="description" content="Preguntas Frecuentes, Preguntas y Respuestas y GuÃas sobre Impresiones en Lienzo de los expertos en impresión en MIARTE. ¡Echa un vistazo a nuestra sección de Wiki Lienzo!" /> 460 <link rel="canonical" href="https://www.mi-arte.es/blog/" /> 461 <title>Preguntas Frecuentes, Preguntas y Respuestas y GuÃas sobre Impresiones en Lienzo | MIARTE | mi-arte.es</title> 462 463 <meta name="google-site-verification" content="gOJ6ZK8sYQFy8n2OrO3oWsBulR0tVjH0FAUPMxWtfII" /></head><body> 464 <style type="text/css"> 465 #cf-root .intro-content__link { 466 font-size: 12px; 467 } 468 469 @media only screen and (max-width: 600px) { 470 #cf-root .intro-content__link { 471 font-size: 11px; 472 } 473 } 474 </style>
vendor: 71 bytes, lines 474-478
474 475 476 477 478<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
478GTM-M6ZF8NLG
vendor: 82 bytes, line 478
478" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
478<script type="text/javascript" src="/js/backend/jquery.min.js"></script>
478 479
479<script> 480 Cookies.set('topbanner', JSON.stringify({ msg:'<span class="topBannerMsg"><strong>HOY: ahorra hasta un 83% </strong><span class="mob-hidden">- ¡Descuento ya activado!</span></span>'}), { expires: 1 }); 481 </script>
481 482 483 484 <style> 485 /* Collapse (X) button. The button is a large transparent HIT AREA; the 486 visible circle (::before) and the X (svg) stay small, pinned top-right, 487 so the tap target is big without enlarging the icon. */ 488 #topbar-wrapper .mf-topbar-collapse-btn { 489 display: flex; 490 position: absolute; 491 top: 0; 492 right: 0; 493 width: 50px; 494 height: 42px; 495 padding: 0; 496 border: 0; 497 background: transparent; 498 color: #fff; 499 cursor: pointer; 500 /* Must sit above #topbannerDeal (position:relative; z-index:899), else the 501 transparent deal layer swallows the click and the promo link fires. */ 502 z-index: 1000; 503 -webkit-tap-highlight-color: transparent; 504 } 505 /* visible circle â always black at 75% opacity, regardless of bar colour */ 506 #topbar-wrapper .mf-topbar-collapse-btn::before { 507 content: ''; 508 position: absolute; 509 top: 4px; 510 right: 12px; 511 width: 30px; 512 height: 30px; 513 border-radius: 50%; 514 background: rgba(0, 0, 0, 0.75); 515 } 516 /* the X glyph â 14px, centred inside the 30px circle */ 517 #topbar-wrapper .mf-topbar-collapse-btn svg { 518 position: absolute; 519 top: 12px; 520 right: 20px; 521 width: 14px; 522 height: 14px; 523 display: block; 524 } 525 526 /* Pull tab â only visible while the bar is collapsed */ 527 #topbar-wrapper .mf-topbar-pulltab { 528 display: none; 529 margin: 0 auto; 530 height: 32px; 531 padding: 0 16px; 532 border: 0; 533 border-radius: 999px; 534 background: var(--mf-topbar-color, #0B5BA9); 535 color: #fff; 536 cursor: pointer; 537 align-items: center; 538 justify-content: center; 539 gap: 6px; 540 box-shadow: 0 2px 6px rgba(0, 0, 0, 0.25); 541 position: relative; 542 z-index: 1000; 543 -webkit-tap-highlight-color: transparent; 544 } 545 #topbar-wrapper .mf-topbar-pulltab .mf-pt-percent { font-weight: 700; font-size: 16px; line-height: 1; } 546 #topbar-wrapper .mf-topbar-pulltab svg { width: 16px; height: 16px; display: block; } 547 548 /* Collapsed state â hide the promo bar, keep only the pull tab (minimal 549 height). Clear the background image and any inline background-color 550 (e.g. the Amazon-deal colour), and paint an OPAQUE WHITE strip. White on 551 ALL viewports (not just desktop): on mobile the wrapper is position:fixed, 552 so a transparent strip would (a) show whatever page is behind it â white on 553 the home nav, grey in the basket â and (b) let scrolled content bleed 554 through. Opaque white keeps it consistent and hides content while scrolling. */ 555 #topbar-wrapper.mf-collapsed { 556 background-image: none !important; 557 background-color: #fff !important; 558 cursor: default !important; 559 pointer-events: none; 560 padding: 4px 0 2px; 561 text-align: center; 562 } 563 /* Hide EVERY direct child (all promo rows + the collapse X) â keep only the pull tab. 564 A universal child selector (not an id list) covers every shop's wrapper structure: 565 #topbannerDeal / #header-bar (shared builder + meinxxl) and master-template's 566 #topBar / #SVGtopBar / .navBarHighPeakCountDown â the last is moved into the wrapper 567 on a timeout and, if not hidden, leaves a white gap above the tab. */ 568 #topbar-wrapper.mf-collapsed > *:not(.mf-topbar-pulltab) { 569 display: none !important; 570 } 571 #topbar-wrapper.mf-collapsed .mf-topbar-pulltab { 572 display: inline-flex !important; 573 pointer-events: auto; 574 } 575 576 /* Hide-until-ready (anti-flash). The top bar is inserted by the site's own inline 577 script (helper/cookie.xhtml: document.createElement + insertBefore). So ANY 578 #topbar-wrapper that does not yet have .mf-ready â the freshly inserted bar, or a 579 checkout partial re-render â is neutralised the instant it enters the DOM: promo 580 image cleared to a plain white bar, promo content hidden. Crucially this needs NO 581 JS-added class to hide (that was the flaw in the old precollapse: its class was 582 added by JS that ran after paint). The insertion hook (cookie.xhtml) and init() 583 add .mf-ready once the correct state is applied, revealing the bar collapsed or 584 expanded. visibility (not display) keeps the bar's height, so the exp
584anded 585 majority get no layout shift. */ 586 #topbar-wrapper:not(.mf-ready) { 587 background-image: none !important; 588 background-color: #fff !important; 589 } 590 #topbar-wrapper:not(.mf-ready) > *:not(.mf-topbar-pulltab) { 591 visibility: hidden !important; 592 } 593 594 /* Smaller controls on phones */ 595 @media (max-width: 768px) { 596 #topbar-wrapper .mf-topbar-collapse-btn { width: 44px; height: 38px; } 597 #topbar-wrapper .mf-topbar-collapse-btn::before { top: 3px; right: 8px; width: 22px; height: 22px; } 598 #topbar-wrapper .mf-topbar-collapse-btn svg { top: 8.5px; right: 13.5px; width: 11px; height: 11px; } 599 #topbar-wrapper .mf-topbar-pulltab { height: 26px; padding: 0 13px; gap: 5px; } 600 #topbar-wrapper .mf-topbar-pulltab .mf-pt-percent { font-size: 14px; } 601 #topbar-wrapper .mf-topbar-pulltab svg { width: 13px; height: 13px; } 602 } 603 604 /* Desktop only: when collapsed, lift the wrapper above #header-v2 605 (z-index:200) so the hover-nav overlay (.page-head-sub) does not bleed 606 through behind the tab. The white background is set globally above; here we 607 only need the stacking context. Never set position on mobile â the wrapper 608 must keep the site's position:fixed there. */ 609 @media (min-width: 769px) { 610 #topbar-wrapper.mf-collapsed { 611 position: relative; 612 z-index: 900; 613 } 614 } 615 </style> 616 617
617<script> 618 // <![CDATA[ 619 (function() { 620 var topbarWrapper = document.createElement('div'); 621 var topbarLink = "/ofertas-especiales/"; 622 var topbarLinkTarget = "_self"; 623 topbarWrapper.setAttribute('id', 'topbar-wrapper'); 624 const isCheckout = ['configurator', 'shoppingcart', 'checkout', 'customer', 'orderaddresses', 'paymentmethod', 'confirmorder', 'multiimage'] 625 .some(page => window.location.href.toLowerCase().includes(page)); 626 if(topbarLink != null && topbarLink != '' && !isCheckout) { 627 topbarWrapper.setAttribute('onclick', 'window.open("' + topbarLink + '", "' + topbarLinkTarget + '")'); 628 topbarWrapper.style.cursor = 'pointer'; 629 } 630 topbarWrapper.style.backgroundImage = "url(/dynamicimage/product/libraryimages/image2/20214/autumn-sale_2_top_bar.webp)"; 631 632 var topBarEXT = `<span style="color: #FFFFFF">REBAJAS DE OTOÃO</span>`; 633 634 topbarWrapper.innerHTML = `<div class="header-bar -topbannerDeal" id="topbannerDeal">` + topBarEXT + `</div>`; 635 topbarWrapper.classList.add('topbar-wrapper'); 636 637 var headerBarAdded = false; 638 var amazonDeal = null; 639 640 // A page that owns its top bar declares it as window.__pageTopbanner in the head and 641 // takes precedence over the cookie. The shop top bars write their default cookie from 642 // the body, i.e. after any page-level write, so a page that only set the cookie would 643 // be overwritten before this runs and would lose its countdown/expireMsg. 644 var pageTopbanner = window.__pageTopbanner || null; 645 646 if (pageTopbanner || Cookies.get('topbanner')) { 647 var expiredMsg = null; 648 var expiredLink = null; 649 var topbar = pageTopbanner || JSON.parse(Cookies.get('topbanner')); 650 var headerBar = document.createElement('div'); 651 var headerBarContainer = document.createElement('div'); 652 var headerMsg = document.createElement('div'); 653 var headerInfo = document.createElement('div'); 654 var countdownFormat = "%-H h %M m %S s"; 655 var countdown = document.createElement('span'); 656 657 if (topbar.expireMsg != undefined) { 658 expiredMsg = topbar.expireMsg; 659 } 660 661 if (topbar.expireLink != undefined) { 662 expiredLink = topbar.expireLink; 663 } 664 665 if (topbar.amazonDeal != undefined) { 666 amazonDeal = topbar.amazonDeal; 667 } 668 669 headerBar.className = 'header-bar'; 670 headerBar.setAttribute("id", "header-bar"); 671 headerBarContainer.className = 'header-container'; 672 headerMsg.className = 'header-msg'; 673 headerInfo.className = 'header-info'; 674 675 headerBar.appendChild(headerBarContainer); 676 headerBarContainer.appendChild(headerMsg); 677 678 // Writes msg 679 headerMsg.innerHTML = topbar.msg; 680 681 // Create a temporary element to parse the HTML string and check for c
681ontent 682 var tempDiv = document.createElement('div'); 683 tempDiv.innerHTML = topbar.msg; 684 var topBannerMsgSpan = tempDiv.querySelector('.topBannerMsg'); 685 686 // Check if .topBannerMsg is empty, then hide or show the headerBar 687 // if (topBannerMsgSpan && topBannerMsgSpan.textContent.trim() === "") { 688 // headerBar.style.display = 'none !important'; 689 // } else { 690 // headerBar.style.display = 'block'; // Ensure it's shown if there's some content 691 // } 692 693 // Check if .topBannerMsg is empty, then hide or show the headerBar 694 if (topBannerMsgSpan && topBannerMsgSpan.textContent.trim() === "") { 695 headerBar.classList.add('hidden'); 696 } else { 697 headerBar.classList.remove('hidden'); 698 } 699 700 701 if (topbar.newScroll != undefined) { 702 headerBar.className = headerBar.className +" scroll-mobile-new"; 703 } 704 705 // Appends class 706 if (topbar.style) { 707 headerBar.className = headerBar.className +" "+ topbar.style; 708 } 709 710 // Updates format 711 if (topbar.countdownFormat) { 712 countdownFormat = topbar.countdownFormat; 713 } 714 715 if (topbar.countdown) { 716 headerBar.classList.add('-countdown'); 717 countdown.classList.add('js-countdown'); 718 countdown.setAttribute('data-until', topbar.countdown); 719 countdown.setAttribute('data-format', countdownFormat); 720 countdown.setAttribute('data-msg-element', 'header-info'); 721 headerMsg.appendChild(countdown); 722 } 723 724 if (topbar.countdown && topbar.crmBar) { 725 var setDate = new Date(topbar.countdown); 726 var currentDate = new Date(); 727 728 currentDate > setDate ? '' : headerMsg.innerHTML = topbar.msg + '<span class="js-countdown -stable" dataMsgElement="header-info" data-until="' + topbar.countdown + '" data-format="' + countdownFormat + '"></span>'; 729 730 if (expiredMsg != null) { 731 if (topbar.phone) { 732 currentDate > setDate ? headerMsg.innerHTML = '<span style="font-size: 12px;">' + topbar.expireMsg + '</span>' : headerMsg.innerHTML = topbar.msg + '<span class="js-countdown -stable" dataMsgElement="header-info" data-until="' + topbar.countdown + '" data-format="' + countdownFormat + '"></span>'; 733 } else { 734 currentDate > setDate ? headerMsg.innerHTML = '<span style="font-size: 16px;">' + topbar.expireMsg + '</span>' : headerMsg.innerHTML = topbar.msg + '<span class="js-countdown -stable" dataMsgElement="header-info" data-until="' + topbar.countdown + '" data-format="' + countdownFormat + '"></span>'; 735 } 736 737 if (expiredLink != null && currentDate > setDate) { 738 if (topbar.phone) { 739 headerMsg.innerHTML = ' <a class="link" style="text-decoration: underline; color: #fff; font-weight: 700; display:inline-block; font-size:12px;" href="'+ topbar.expireLink +'">'+ topbar.expireMsg +'</a>'; 740 } else { 741 headerMsg.innerHTML = ' <a class="link" style="text-decoration: underline; color: #fff; font-weight: 700; display:inline-block; font-size:16px;" href="'+ topbar.expireLink +'">'+ topbar.expireMsg +'</a>'; 742 } 743 } 744 } 745 746 } 747 748 if (topbar.hideAfter) { 749 countdown.setAttribute('data-hide-element', topbar.hideAfter); 750 } 751 752 if (topbar.modal) { 753 headerBar.classList.add('-modal'); 754 headerInfo.innerHTML += ` <a class="modal-link" href="javascript:void(0)" onclick="Modal.open(` + topbar.modal + `);">` + topbar.modalMsg +`</a>`; 755 } 756 757 if (topbar.anchor) { 758 headerBar.classList.add('-link'); 759 headerInfo.innerHTML += ` <a class="link" href="` + topbar.anchor + `">` + topbar.anchorText +`</a>`; 760 } 761 762 if (topbar.finalMsg) { 763 headerBar.classList.add('-final'); 764 countdown.setAttribute('data-final-msg', topbar.finalMsg); 765 } 766 767 if (topbar.mobileCountdown) { 768 headerBar.classList.add('-mobileCountdown'); 769 } 770 771 if (amazonDeal != null) { 772 topbarWrapper.style.backgroundImage = "unset"; 773 topbarWrapper.style.backgroundColor = "#1A98FF"; 774 if (topbar.ukDeal) { 775 fetchSVG('/topBars-new/svgs/prime-logo.svg').then(svgContent => injectSVGContent(svgContent)); 776 } else { 777 fetchSVG('/topBars-new/svgs/prime-logo-student.svg').then(svgContent => injectSVGContent(svgContent)); 778 } 779 topbarWrapper.setAttribute('onclick', ''); 780 } 781 782 topbarWrapper.appendChild(headerBar);
782 // Append the second header-bar only if cookie exists 783 headerBarAdded = true; 784 785 } 786 787 // NGE-9027: resolve the collapsible-top-bar state at insertion time (enabled 788 // shops only â see collapsibleTopbarEnabled). Doing it here â before the bar 789 // enters the DOM â means it paints immediately in the correct state: expanded 790 // users are not delayed, collapsed users get the collapsed strip with no expanded 791 // flash. mf-ready also clears the :not(.mf-ready) anti-flash net. Inert (no 792 // mf-collapsed / mf-ready) for shops where the feature is off. 793 // NOTE: the shop list is spelled out here (rather than true) 794 // on purpose â an unresolved EL var in this inline script would render `if ()` and 795 // break the whole bar-insertion IIFE. Keep it in sync with collapsibleTopbarEnabled. 796 if (true) { 797 try { 798 if (localStorage.getItem('mfTopbarCollapsed') === '1') topbarWrapper.classList.add('mf-collapsed'); 799 } catch (e) {} 800 topbarWrapper.classList.add('mf-ready'); 801 // SAFETY NET: the collapsed strip relies on the pull tab (built by 802 // collapsible-topbar.xhtml) to re-open the bar. If that JS fails to run â 803 // blocked by an adblocker, a script error, etc. â no tab is built and the user 804 // would be stuck with a collapsed strip they can't reopen. So if the bar is 805 // still collapsed and has no pull tab shortly after load, expand it and 806 // recompute layout. Normally the tab is built synchronously right after 807 // insertion, well within this window, so it never fires. 808 setTimeout(function () { 809 var w = document.getElementById('topbar-wrapper'); 810 if (w && w.classList.contains('mf-collapsed') && !w.querySelector('.mf-topbar-pulltab')) { 811 w.classList.remove('mf-collapsed'); 812 // Just dispatch resize (same as the pull tab's own expand) so the site's 813 // handlers recompute any sticky offsets. Do NOT call adjustPaddingTopCookie 814 // here: it force-sets body padding-top = topbar + header, which is only 815 // correct for the mobile FIXED bar; on desktop the bar is in-flow and body 816 // padding is 0, so that call adds a large phantom gap above the bar. 817 window.dispatchEvent(new Event('resize')); 818 } 819 }, 1500); 820 } 821 822 document.body.insertBefore(topbarWrapper, document.body.firstChild); // Insert the topbar-wrapper regardless of cookie 823 824 if (amazonDeal != null && topbar.newScroll) { 825 setTimeout(adjustPaddingTopCookie, 500); 826 } 827 828 function fetchSVG(svgPath) { 829 return fetch(svgPath) 830 .then(response => response.text()) 831 .then(data => data) 832 .catch(error => console.error('Error fetching the SVG:', error)); 833 } 834 835 function injectSVGContent(svgContent) { 836 const topbarWrapperS = document.getElementById("topbar-wrapper"); 837 const topbannerDealS = document.getElementById("topbannerDeal"); 838 const topbannerDealM = document.getElementById("header-bar"); 839 840 if (document.documentElement.classList.contains("desktop")) { 841 topbarWrapperS.classList.add('amazonDeal'); 842 topbannerDealS.classList.add('amazonDeal'); 843 if (!topbar.ukDeal) { 844 topbarWrapperS.classList.add('notUK'); 845 topbannerDealS.classList.add('notUK'); 846 } 847 } 848 849 if (!document.documentElement.classList.contains("desktop")) { 850 topbarWrapperS.classList.add('amazonDeal'); 851 topbannerDealM.classList.add('amazonDeal'); 852 if (!topbar.ukDeal) { 853 topbarWrapperS.classList.add('notUK'); 854 topbannerDealM.classList.add('notUK'); 855 } 856 } 857 858 topbannerDealS.innerHTML = svgContent; 859 } 860 861 function adjustPaddingTopCookie() { 862 // Using getBoundingClientRect to include padding and borders 863 var topbarWrapper = document.querySelector('.topbar-wrapper'); 864 var headerV2 = document.querySelector('#header-v2'); 865 866 var topbarWrapperHeight = topbarWrapper ? topbarWrapper.getBoundingClientRect().height : 0; 867 var headerV2Height = headerV2 ? headerV2.getBoundingClientRect().height : 0; 868 869 var body = document.body; 870 var headerV2Style = headerV2 ? headerV2.style : null; 871 872 if (body) { 873 body.style.paddingTop = topbarWrapperHeight + headerV2Height + 'px'; 874 } 875 if (headerV2Style) { 876 headerV2Style.top = topbarWrapperHeight + 'px'; 877 } 878 } 879 880 })(); 881 // ]]> 882 </script>
882 883 884 885
885<script> 886 // <![CDATA[ 887 (function () { 888 var STORAGE_KEY = 'mfTopbarCollapsed'; 889 var COLOR_KEY = 'mfTopbarColor'; 890 891 function isCollapsedPersisted() { 892 try { return localStorage.getItem(STORAGE_KEY) === '1'; } catch (e) { return false; } 893 } 894 895 // Anti-flash is handled entirely in CSS via #topbar-wrapper:not(.mf-ready): the 896 // bar is hidden the instant the site's inline script inserts it, and init() adds 897 // .mf-ready to reveal the correct state. No JS-added hide class (that was the 898 // precollapse flaw â its class landed after paint). 899 900 // Apply the last-known pull-tab colour on <html> synchronously, at the very top 901 // of the script (before any paint). CSS custom properties inherit, so the pull 902 // tab â a descendant â picks it up from its first paint, with no blue->pink flip 903 // while init() re-samples the bar image async. init()'s setColor later overrides 904 // this on the wrapper with the freshly-sampled value (and re-stores it). 905 try { 906 var cachedColor = localStorage.getItem(COLOR_KEY); 907 if (cachedColor) document.documentElement.style.setProperty('--mf-topbar-color', cachedColor); 908 } catch (e) {} 909 910 function reflow() { 911 // horizontalMenu.js / scroll-mobile.js recompute the sticky-header offset 912 // and body padding-top on resize â reuse that math. 913 window.dispatchEvent(new Event('resize')); 914 } 915 916 function setCollapsed(collapsed, persist) { 917 var wrapper = document.getElementById('topbar-wrapper'); 918 if (!wrapper) return; 919 wrapper.classList.toggle('mf-collapsed', collapsed); 920 if (persist) { 921 try { localStorage.setItem(STORAGE_KEY, collapsed ? '1' : '0'); } catch (e) {} 922 } 923 reflow(); 924 } 925 926 // Click handling is DELEGATED on document in the CAPTURE phase â registered once, 927 // not per button â so it survives the top bar being re-rendered / cloned. The cart, 928 // checkout and CMS flows re-insert the bar by cloning the DOM, which copies the 929 // button ELEMENTS but not their listeners; per-button addEventListener handlers are 930 // then lost, and init() bails on the pull-tab guard, leaving dead buttons whose 931 // clicks bubble to the wrapper's inline onclick=window.open(promo) and navigate away. 932 // Capture phase means stopPropagation runs BEFORE that onclick fires, so a click on 933 // our controls collapses/expands and never opens the promo page. 934 document.addEventListener('click', function (e) { 935 var t = e.target; 936 if (!t || !t.closest) return; 937 if (t.closest('.mf-topbar-collapse-btn')) { 938 e.stopPropagation(); e.preventDefault(); setCollapsed(true, true); 939 } else if (t.closest('.mf-topbar-pulltab')) { 940 e.stopPropagation(); e.preventDefault(); setCollapsed(false, true); 941 } 942 }, true); 943 944 function init() { 945 var wrapper = document.getElementById('topbar-wrapper'); 946 if (!wrapper) return; 947 if (wrapper.querySelector('.mf-topbar-pulltab')) return; // already initialised 948 949 // The absolute X button needs a positioned wrapper. Only add relative on 950 // DESKTOP, where the wrapper is static. NEVER touch it on mobile: the site 951 // applies position:fixed there (keeping the bar pinned above the header). 952 // Overriding that with relative drops the bar into flow, below the header 953 // (the mobile gap bug). Gate on the desktop breakpoint to prevent it. 954 var isDesktopBar = !(window.matchMedia && window.matchMedia('(max-width: 768px)').matches); 955 if (isDesktopBar && window.getComputedStyle(wrapper).position === 'static') { 956 wrapper.style.position = 'relative'; 957 } 958 959 // Collapse (X) button â top-right of the expanded promo bar 960 var collapseBtn = document.createElement('button'); 961 collapseBtn.type = 'button'; 962 collapseBtn.className = 'mf-topbar-collapse-btn'; 963 collapseBtn.setAttribute('aria-label', 'Banner einklappen'); 964 collapseBtn.innerHTML = '<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M5 5l14 14M19 5L5 19" stroke="currentColor" stroke-width="2.4" stroke-linecap="round"/></svg>'; 965 966 // Pull tab â visible only while collapsed, re-opens the bar 967 var pullTab = document.createElement('button'); 968 pullTab.type = 'button'; 969 pullTab.className = 'mf-topbar-pulltab'; 970 pullTab.setAttribute('aria-label', 'Banner ausklappen'); 971 pullTab.innerHTML = '<span class="mf-pt-percent">%</span><svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M6 9l6 6 6-6" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"/></svg>'; 972 973 wrapper.appendChild(collapseBtn); 974 wrapper.appendChild(pullTab); 975 976 // Match the pull tab to the active top-bar colour. The bar usually uses a 977 // background IMAGE (different per device), so derive its colour from the 978 // image's MIDDLE PIXEL. Fall back to the background COLOUR for solid bars. 979 // Must run on the EXPANDED bar, before collapse, or it samples the white str
979ip. 980 (function applyTopbarColor() { 981 // (Last-known colour was already applied on <html> synchronously at the top 982 // of the script, so the tab is never blue on load. Here we re-sample the 983 // current bar and refresh both the wrapper var and the stored value.) 984 var cs = window.getComputedStyle(wrapper); 985 // Read the REAL bar background from the wrapper's own INLINE style (set by 986 // the site) rather than computed style. While collapsed / pre-collapsed our 987 // own CSS forces the COMPUTED background to white, which would mis-sample and 988 // leave the tab on the blue default. The inline style keeps the real image 989 // (and the Amazon-deal solid colour) regardless of our !important overrides. 990 var inlineImg = wrapper.style.backgroundImage; 991 var inlineColor = wrapper.style.backgroundColor; 992 var bgImg = (inlineImg && inlineImg !== 'none') ? inlineImg : cs.backgroundImage; 993 var bgColor = (inlineColor && inlineColor !== 'transparent') ? inlineColor : cs.backgroundColor; 994 // Reject a near-white result so the tab keeps the visible default (#0B5BA9) 995 // instead of becoming an invisible white pill. 996 function setColor(c) { 997 var rgb = c.match(/(\d+)\s*,\s*(\d+)\s*,\s*(\d+)/); 998 if (rgb && +rgb[1] > 240 && +rgb[2] > 240 && +rgb[3] > 240) return; 999 wrapper.style.setProperty('--mf-topbar-color', c); 1000 try { localStorage.setItem(COLOR_KEY, c); } catch (e) {} // remember for next page load 1001 } 1002 var m = (bgImg && bgImg !== 'none') ? bgImg.match(/url\(["']?(.*?)["']?\)/) : null; 1003 if (m && m[1]) { 1004 var img = new Image(); 1005 img.crossOrigin = 'anonymous'; 1006 img.onload = function () { 1007 try { 1008 var cx = Math.floor(img.naturalWidth / 2); 1009 var cy = Math.floor(img.naturalHeight / 2); 1010 var cv = document.createElement('canvas'); 1011 cv.width = 1; cv.height = 1; 1012 var ctx = cv.getContext('2d'); 1013 ctx.drawImage(img, cx, cy, 1, 1, 0, 0, 1, 1); 1014 var d = ctx.getImageData(0, 0, 1, 1).data; 1015 if (d[3] >= 16) { setColor('rgb(' + d[0] + ',' + d[1] + ',' + d[2] + ')'); } 1016 } catch (e) { /* cross-origin tainted â keep the fallback colour */ } 1017 }; 1018 img.src = m[1]; 1019 } else if (bgColor && bgColor !== 'rgba(0, 0, 0, 0)' && bgColor !== 'transparent') { 1020 setColor(bgColor); 1021 } 1022 })(); 1023 1024 // Restore the persisted collapsed state directly (no flash). Colour was 1025 // derived above from the expanded bar first, so the tab keeps the promo colour. 1026 if (isCollapsedPersisted() && !wrapper.classList.contains('mf-collapsed')) { 1027 setCollapsed(true, false); 1028 } 1029 1030 // Reveal now that the correct state (collapsed or expanded) is applied. Until 1031 // this class lands, #topbar-wrapper:not(.mf-ready) kept the bar a neutral white 1032 // strip â so the expanded promo never flashed. Added last, in the same 1033 // synchronous pass, so the first painted frame is already the resolved state. 1034 wrapper.classList.add('mf-ready'); 1035 } 1036 1037 // Run init as early as possible. 1038 if (document.getElementById('topbar-wrapper')) { 1039 init(); 1040 } else if (document.readyState === 'loading') { 1041 document.addEventListener('DOMContentLoaded', init); 1042 } else { 1043 init(); 1044 } 1045 1046 // The bar is re-inserted after load in the cart / checkout / one-page-checkout 1047 // flows, which previously left it expanded. Re-init on a fresh wrapper so the
1048 // collapsed state is restored instead of popping open. init() is idempotent 1049 // (bails once the pull tab exists), so this cannot loop. 1050 try { 1051 var mo = new MutationObserver(function () { 1052 var w = document.getElementById('topbar-wrapper'); 1053 if (w && !w.querySelector('.mf-topbar-pulltab')) init(); 1054 }); 1055 mo.observe(document.documentElement, { childList: true, subtree: true }); 1056 } catch (e) {} 1057 })(); 1058 // ]]> 1059 </script>
1059 1060 1061 1062 1063
1063<script src="/topBars-new/helper/cookie.js" type="text/javascript"></script>
1063 1064 1065 1066 1067 1068 <div id="shopTimezone" style="display: none;">Europe/Madrid</div> 1069 1070 1071 <div id="formattedEndDateWithTimezone" style="display: none;">2026-10-05T21:59:59+02:00 1072 </div> 1073 1074 1075 <div id="formattedEndDate" style="display: none;">2026/10/05 21:59:59 1076 </div> 1077 1078 1079
1079<script> 1080 //<![CDATA[ 1081 (function() { 1082 /** 1083 * TIMEZONE-AWARE COUNTDOWN IMPLEMENTATION (SIMPLIFIED) 1084 * 1085 * APPROACH: Let the browser's Date object handle ALL timezone conversions! 1086 * Backend provides timezone-aware ISO dates (e.g., 2025-10-08T21:59:59+02:00) 1087 * JavaScript's Date automatically converts to browser local time for display. 1088 * 1089 * Backend Methods: 1090 * - sessionBean.shopTimezone - Shop's IANA timezone (e.g., 'Europe/Amsterdam') 1091 * - sessionBean.shopperLocale - Shop's locale (e.g., 'nl-NL', 'de-DE') 1092 * - countdownBean.endDateWithShopTimezone - ZonedDateTime ISO format 1093 * - countdownBean.getEnabledCountdown properties - Text and configuration 1094 * 1095 * How It Works: 1096 * 1. Backend sends ISO date with timezone: "2025-10-08T21:59:59+02:00" 1097 * 2. Browser parses it: new Date("2025-10-08T21:59:59+02:00") 1098 * 3. Browser converts to local time automatically for countdown plugin 1099 * 4. All users count down to the SAME absolute moment (shop's end time) 1100 * 1101 * No manual timezone math needed! Browser handles everything! 1102 */ 1103 1104 // Shared helper functions 1105 // Function to get the correct day name based on the language and the number of days 1106 function getDaysName(days, language) { 1107 let daysName = ''; 1108 switch (language) { 1109 case 'de': 1110 daysName = (days === 2) ? 'Tag' : 'Tage'; 1111 break; 1112 case 'it': 1113 daysName = (days === 2) ? 'giorno' : 'giorni'; 1114 break; 1115 case 'fi': 1116 daysName = (days === 2) ? 'päivä' : 'päivät'; 1117 break; 1118 case 'es': 1119 daysName = (days === 2) ? 'dÃa' : 'dÃas'; 1120 break; 1121 case 'fr': 1122 daysName = (days === 2) ? 'jour' : 'jours'; 1123 break; 1124 case 'nl': 1125 case 'be': 1126 daysName = (days === 2) ? 'dag' : 'dagen'; 1127 break; 1128 case 'sv': 1129 daysName = (days === 2) ? 'dag' : 'dagar'; 1130 break; 1131 case 'pl': 1132 daysName = (days === 2) ? 'dzieÅ' : 'dni'; 1133 break; 1134 case 'dk': 1135 daysName = (days === 2) ? 'dag' : 'dage'; 1136 break; 1137 default: 1138 daysName = (days === 2) ? 'day' : 'days'; // Default in English 1139 } 1140 return daysName; 1141 } 1142 1143 // Function to convert ISO date string to countdown plugin format 1144 // Converts: "2025-10-08T21:59:59+02:00" -> "2025/10/08 21:59:59" (in browser local time) 1145 // The browser's Date object automatically handles timezone conversion! 1146 function convertISOToPluginFormat(isoDateString) { 1147 try { 1148 // Parse the ISO date (browser automatically handles timezone conversion) 1149 const date = new Date(isoDateString); 1150 1151 // Validate 1152 if (isNaN(date.getTime())) { 1153 throw new Error('Invalid date'); 1154 } 1155 1156 // Extract components in browser's local timezone 1157 const year = date.getFullYear();
1158 const month = String(date.getMonth() + 1).padStart(2, '0'); 1159 const day = String(date.getDate()).padStart(2, '0'); 1160 const hours = String(date.getHours()).padStart(2, '0'); 1161 const minutes = String(date.getMinutes()).padStart(2, '0'); 1162 const seconds = String(date.getSeconds()).padStart(2, '0'); 1163 1164 // Return in plugin format: YYYY/MM/DD HH:MM:SS 1165 return year + '/' + month + '/' + day + ' ' + hours + ':' + minutes + ':' + seconds; 1166 1167 } catch (error) { 1168 console.error('Failed to convert ISO date to plugin format:', isoDateString, error); 1169 // Return original string as fallback 1170 return isoDateString; 1171 } 1172 } 1173 1174 // Timezone helper: compute the timezone offset (in minutes) for a given UTC instant. 1175 // This is DST-safe because it evaluates the offset at the *specific instant*. 1176 function getTimeZoneOffsetMinutes(timeZone, utcDate) { 1177 const dtf = new Intl.DateTimeFormat('en-US', { 1178 timeZone: timeZone, 1179 year: 'numeric', 1180 month: '2-digit', 1181 day: '2-digit', 1182 hour: '2-digit', 1183 minute: '2-digit', 1184 second: '2-digit', 1185 hour12: false 1186 }); 1187 1188 const parts = dtf.formatToParts(utcDate); 1189 const vals = {}; 1190 parts.forEach(part => { 1191 if (part.type !== 'literal') { 1192 vals[part.type] = part.value; 1193 } 1194 }); 1195 1196 // Interpret the formatted (timezone-local) parts as if they were UTC. 1197 // The delta between that and the real UTC instant is the offset. 1198 const asUTC = Date.UTC( 1199 Number(vals.year), 1200 Number(vals.month) - 1, 1201 Number(vals.day), 1202 Number(vals.hour), 1203 Number(vals.minute), 1204 Number(vals.second) 1205 ); 1206 1207 return (asUTC - utcDate.getTime()) / 60000; 1208 } 1209 1210 // Convert a "local time in a given IANA timezone" into a UTC timestamp (ms). 1211 // Uses a small iterative refinement to handle DST transitions correctly. 1212 function zonedTimeToUtcMs(year, month, day, hour, minute, second, timeZone) { 1213 let utcGuess = Date.UTC(year, month - 1, day, hour, minute, second); 1214 for (let i = 0; i < 3; i++) { 1215 const offsetMin = getTimeZoneOffsetMinutes(timeZone, new Date(utcGuess)); 1216 utcGuess = Date.UTC(year, month - 1, day, hour, minute, second) - offsetMin * 60000; 1217 } 1218 return utcGuess; 1219 } 1220 1221 // Function to calculate midnight (end of day 23:59:59) in shop timezone 1222 // DST-safe approach: Determine shop-local Y/M/D for "today", then convert 23:59:59 in that timezone to a UTC instant. 1223 function getMidnightInShopTimezone(shopTimezone) { 1224 try { 1225 const now = new Date(); 1226 1227 // Use Intl.DateTimeFormat to get properly formatted date parts in shop timezone 1228 const formatter = new Intl.DateTimeFormat('en-US', { 1229 timeZone: shopTimezone, 1230 year: 'numeric', 1231 month: '2-digit', 1232 day: '2-digit', 1233 hour: '2-digit', 1234 minute: '2-digit', 1235 second: '2-digit', 1236 hour12: false 1237 }); 1238 1239 const parts = formatter.formatToParts(now); 1240 const dateParts = {}; 1241 parts.forEach(part => { 1242 if (part.type !== 'literal') { 1243 dateParts[part.type] = part.value; 1244 } 1245 }); 1246 1247 const year = Number(dateParts.year);
1248 const month = Number(dateParts.month); 1249 const day = Number(dateParts.day); 1250 1251 // End of "today" in shop timezone 1252 const utcMs = zonedTimeToUtcMs(year, month, day, 23, 59, 59, shopTimezone); 1253 const endOfDayUtcDate = new Date(utcMs); 1254 1255 // Convert to plugin format (browser local time) 1256 const y = endOfDayUtcDate.getFullYear(); 1257 const m = String(endOfDayUtcDate.getMonth() + 1).padStart(2, '0'); 1258 const d = String(endOfDayUtcDate.getDate()).padStart(2, '0'); 1259 const hh = String(endOfDayUtcDate.getHours()).padStart(2, '0'); 1260 const mm = String(endOfDayUtcDate.getMinutes()).padStart(2, '0'); 1261 const ss = String(endOfDayUtcDate.getSeconds()).padStart(2, '0'); 1262 return y + '/' + m + '/' + d + ' ' + hh + ':' + mm + ':' + ss; 1263 1264 } catch (error) { 1265 console.warn('Failed to calculate shop midnight, using browser midnight:', error.message); 1266 // Fallback: browser local midnight 1267 const now = new Date(); 1268 const today = new Date(now.getFullYear(), now.getMonth(), now.getDate(), 23, 59, 59); 1269 const year = today.getFullYear();
1270 const month = String(today.getMonth() + 1).padStart(2, '0'); 1271 const day = String(today.getDate()).padStart(2, '0'); 1272 return year + '/' + month + '/' + day + ' 23:59:59'; 1273 } 1274 } 1275 1276 // Simplified: Just calculate days remaining from ISO date 1277 // Backend gives us timezone-aware ISO date, browser handles it correctly 1278 function getNumberOfDaysRemaining(endDateISO) { 1279 try { 1280 const now = new Date(); 1281 const endDate = new Date(endDateISO); 1282 1283 // Calculate the difference in milliseconds 1284 const diffTime = endDate.getTime() - now.getTime(); 1285 1286 // Convert milliseconds to days (round up) 1287 const diffDays = Math.ceil(diffTime / (1000 * 60 * 60 * 24)); 1288 1289 return diffDays; 1290 } catch (error) { 1291 console.warn('Failed to calculate days remaining:', error); 1292 return 0; 1293 } 1294 } 1295 1296 // Function to create header-bar if it doesn't exist 1297 function createHeaderBarIfNeeded(headerBar, topbannerDeal, headerContainer, countdownBlock, headerMsgClass, wrapper) { 1298 if (headerBar !== '' && headerBar === null){ 1299 if (topbannerDeal !== '') { 1300 headerBar = document.createElement('div'); 1301 headerBar.id = 'header-bar'; 1302 headerBar.className = 'header-bar'; 1303 1304 headerContainer.className = 'header-container'; 1305 1306 let headerMsg = document.createElement('div'); 1307 headerMsg.className = headerMsgClass; 1308 1309 headerContainer.appendChild(headerMsg); 1310 headerBar.appendChild(headerContainer); 1311 1312 // Append headerBar to wrapper only if wrapper has content 1313 if (wrapper && wrapper.innerHTML.trim() !== '') { 1314 wrapper.appendChild(headerBar); 1315 } 1316 } 1317 1318 // Insert the new countdownBlock 1319 let headerMsg = headerBar.querySelector('.' + headerMsgClass); 1320 if (headerMsg) { 1321 headerMsg.appendChild(countdownBlock); 1322 } 1323 } 1324 return headerBar; 1325 } 1326 1327 // Function to setup common banner display logic 1328 function setupBannerDisplay(headerBar, countdownBlock, currentTopBannerMsg, currentTopBannerText, blockClass) { 1329 countdownBlock.className = blockClass; 1330 headerBar.classList.remove('hidden'); 1331 1332 // Check if topBannerMsg is empty and add hidden class if it is 1333 if (currentTopBannerMsg && currentTopBannerMsg.innerText.trim() === '') { 1334 currentTopBannerText.classList.add('hidden'); 1335 } 1336 1337 // Insert the new div after the existing one 1338 if (currentTopBannerText !== '') { 1339 currentTopBannerText.parentNode.insertBefore(countdownBlock, currentTopBannerText.nextSibling); 1340 } 1341 1342 // Set CSS height to #header-bar 1343 if (headerBar !== '') { 1344 var headerBarHeight = headerBar.offsetHeight; 1345 headerBar.style.height = 'auto'; 1346 } 1347 } 1348 1349 // Shared variables 1350 let headerBar = document.getElementById('header-bar'); 1351 let currentTopBannerMsg = document.querySelector('.topBannerMsg') || ''; 1352 let currentTopBannerText = document.querySelector('.header-msg') || ''; 1353 let topbannerDeal = document.getElementById('topbannerDeal') || ''; 1354 let headerContainer = document.createElement('div'); 1355 1356 // Get shop timezone and locale from backend 1357 let shopTimezone = document.getElementById('shopTimezone') ? document.getElementById('shopTimezone').textContent.trim() : 'Europe/Amsterdam'; 1358 let shopLocale = 'es-ES' || 'en-US'; // Use shop's locale instead of hardcoded en-US 1359 1360 // Use new timezone-aware end date (ISO format with timezone) 1361 let formattedEndDateWithTimezone = document.getElementById('formattedEndDateWithTimezone') ? document.getElementById('formattedEndDateWithTimezone').textContent.trim() : ''; 1362 1363 // Fallback to old format if new format is not available (for backward compatibility) 1364 let formattedEndDate = formattedEndDateWithTimezone || document.getElementById('formattedEndDate').textContent.trim(); 1365 1366 let countdown = document.querySelector('.js-countdown') || ''; 1367 let countdownBlock = document.createElement('div'); 1368 let currentLanguage = 'es'; 1369 let deviceType = 'desktop'; 1370 let countdownText = ''; 1371 let countdownTextAfter = ''; 1372 let countdownData = ''; 1373 let daysName = ''; 1374 1375 if (Cookies.get('secondbanner')) {
1376 let secondbar = JSON.parse(Cookies.get('secondbanner')); 1377 let secondbarMsg = secondbar.secondmsg || ''; 1378 let secondbarWrapper = document.getElementById('secondbar-wrapper'); 1379 1380 // Create header-bar if it doesn't exist 1381 headerBar = createHeaderBarIfNeeded(headerBar, topbannerDeal, headerContainer, countdownBlock, 'header-msg-second', secondbarWrapper); 1382 1383 // Set the content 1384 countdownBlock.innerHTML = '<strong class="dInlineBlock secondBanner">' + secondbarMsg + '</strong>'; 1385 1386 // Setup common banner display logic 1387 setupBannerDisplay(headerBar, countdownBlock, currentTopBannerMsg, currentTopBannerText, 'header-msg-second'); 1388 } 1389 1390 1391 // Check if the countdown is enabled and the end date is not reached and the current page is not newsletter 1392 // Using new timezone-aware backend method (backend handles timezone check now) 1393 else if (true) { 1394 let topbarWrapper = document.getElementById('topbar-wrapper') || ''; 1395 1396 // Create header-bar if it doesn't exist 1397 headerBar = createHeaderBarIfNeeded(headerBar, topbannerDeal, headerContainer, countdownBlock, 'header-msg', null); 1398 1399 // Determine the device type and set the innerHTML accordingly 1400 if (deviceType === 'phone') { 1401 countdownText = ""; 1402 countdownTextAfter = "con descuento especial"; 1403 if (currentTopBannerMsg && currentTopBannerMsg.innerText.trim() === '') { 1404 currentTopBannerText.style.fontSize = '12px'; 1405 } 1406 countdownBlock.style.fontSize = '12px'; 1407 headerContainer.style.fontSize = '12px'; 1408 countdownBlock.style.paddingBottom = '1px'; 1409 if (!'') { 1410 headerBar.style.paddingTop = '8px'; 1411 } 1412 if (currentTopBannerMsg) { 1413 currentTopBannerMsg.style.paddingTop = '0'; 1414 currentTopBannerMsg.style.fontSize = '12px'; 1415 } 1416 } else if (deviceType === 'tablet') { 1417 countdownText = ""; 1418 countdownTextAfter = "con descuento especial"; 1419 headerBar.style.paddingTop = '6px'; 1420 countdownBlock.style.fontSize = '12px'; 1421 headerContainer.style.fontSize = '12px'; 1422 } else { 1423 countdownText = ""; 1424 countdownTextAfter = "con descuento especial"; 1425 headerContainer.style.display = 'block'; 1426 } 1427 1428 if (true) { 1429 // For daily countdown, calculate midnight (end of day) in shop timezone 1430 let midnightInShopTZ = getMidnightInShopTimezone(shopTimezone); 1431 countdownData = 'data-until="' + midnightInShopTZ + '" data-format="%H:%M:%S"'; 1432 } else { 1433 // Convert ISO date to plugin format (YYYY/MM/DD HH:MM:SS in browser local time) 1434 let endDateForPlugin = convertISOToPluginFormat(formattedEndDate); 1435 1436 // Calculate days remaining for display (simplified - backend gives us timezone-aware ISO date) 1437 let daysRemaining = getNumberOfDaysRemaining(formattedEndDate); 1438 daysName = getDaysName(daysRemaining, currentLanguage); 1439 countdownData = 'data-until="' + endDateForPlugin + '" data-format="%-D ' + daysName + ' %H:%M:%S"'; 1440 1441 // if daysRemaining is 0, then dont show the days 1442 if (daysRemaining === 1) { 1443 countdownData = 'data-until="' + endDateForPlugin + '" data-format="%H:%M:%S"'; 1444 } 1445 } 1446 1447 countdownBlock.innerHTML = '<strong class="dInlineBlock" style="color: #FFFFFF;">' + countdownText + ' <span class="js-countdown" style="font-family: Arial, sans-serif;"' + countdownData + '></span> ' + countdownTextAfter + '</strong>'; 1448 1449 // Setup common banner display logic 1450 setupBannerDisplay(headerBar, countdownBlock, currentTopBannerMsg, currentTopBannerText, 'header-msg'); 1451 1452 // NGE-7194: CDUS only â render the countdown line above the 2-row text line. 1453 if ('MAES' === 'CDUS' && currentTopBannerText && currentTopBannerText.parentNode) { 1454 currentTopBannerText.parentNode.insertBefore(countdownBlock, currentTopBannerText); 1455 } 1456 1457 // #topbar-wrapper make it with cursor pointer and link to topbarLink not empty 1458 var topbarLink = '/ofertas-especiales/'; 1459 var topbarLinkTarget = "_self"; 1460 const isCheckout = ['configurator', 'shoppingcart', 'checkout', 'customer', 'orderaddresses', 'paymentmethod', 'confirmorder', 'multiimage'] 1461 .some(page => window.location.href.toLowerCase().includes(page)); 1462 if (topbarLink !== '' && !isCheckout) { 1463 if (topbarWrapper !== '') { 1464 topbarWrapper.style.cursor = 'pointer'; 1465 topbarWrapper.onclick = function() { 1466 // check if topbarLink contains same_ then return in same tab and remove same_ from the link else open in new tab 1467 if (topbarLink.includes('same_')) { 1468 topbarLink = topbarLink.replace('same_', ''); 1469 window.location.href = topbarLink; 1470 } else { 1471 // open in new tab 1472 window.open(topbarLink, topbarLinkTarget); 1473 } 1474 }; 1475 } 1476 } 1477 } 1478 1479 // Always set height: auto on header-bar if it exists (ensures proper layout even without countdown/secondbanner) 1480 if (headerBar && headerBar !== '') { 1481 headerBar.style.height = 'auto'; 1482 1483 // Check content in all 3 positions 1484 let hasTopBannerContent = currentTopBannerMsg && currentTopBannerMsg.innerText && currentTopBannerMsg.innerText.trim() !== ''; 1485 let hasCountdownContent = headerBar.querySelector('.js-countdown') !== null; 1486 let hasSecondBannerContent = headerBar.querySelector('.secondBanner') !== null; 1487 1488 // Add padding-bottom: 8px if there's content 1489 if (hasTopBannerContent || hasCountdownContent || hasSecondBannerContent) { 1490 headerBar.style.paddingBottom = '8px'; 1491 } 1492 } 1493 1494 // Check if topbar-wrapper should be hidden (no content in any of the 3 positions) 1495 let topbarWrapperEl = document.getElementById('topbar-wrapper'); 1496 if (topbarWrapperEl) { 1497 let topbannerDealEl = document.getElementById('topbannerDeal'); 1498 let headerBarEl = document.getElementById('header-bar'); 1499 1500 // Position 1: Main text (topbannerDeal) 1501 let hasMainText = topbannerDealEl && topbannerDealEl.innerText && topbannerDealEl.innerText.trim() !== ''; 1502 1503 // Position 2: 2Row content (topBannerMsg in header-bar) 1504 let has2RowContent = currentTopBannerMsg && currentTopBannerMsg.innerText && currentTopBannerMsg.innerText.trim() !== ''; 1505 1506 // Position 3: Countdown or secondBanner 1507 let hasCountdown = headerBarEl && headerBarEl.querySelector('.js-countdown') !== null; 1508 let hasSecondBanner = headerBarEl && headerBarEl.querySelector('.secondBanner') !== null; 1509 1510 // Hide topbar-wrapper if no content in any position 1511 if (!hasMainText && !has2RowContent && !hasCountdown && !hasSecondBanner) { 1512 topbarWrapperEl.style.display = 'none'; 1513 } 1514 } 1515 })(); 1516 //]]> 1517 </script>
1517 1518 1519 <div id="topbar"></div> 1520 <style> 1521 .subnavitem.-leinwand:before { 1522 background-image: url(/components/header/img/categories/nav/leinwand.webp); 1523 } 1524 1525 @media (-webkit-min-device-pixel-ratio: 1.3), 1526 (min-device-pixel-ratio: 1.3), 1527 (min-resolution: 1.3dppx) { 1528 .subnavitem.-leinwand:before { 1529 background-image: url("/components/header/img/categories/nav/leinwand-2x.webp"); 1530 background-size: 125px 75px; 1531 } 1532 } 1533 1534 .subnavitem.-leinwand-collage:before { 1535 background-image: url(/components/header/img/categories/nav/leinwand-collage.webp); 1536 } 1537 1538 @media (-webkit-min-device-pixel-ratio: 1.3), 1539 (min-device-pixel-ratio: 1.3), 1540 (min-resolution: 1.3dppx) { 1541 .subnavitem.-leinwand-collage:before { 1542 background-image: url("/components/header/img/categories/nav/leinwand-collage-2x.webp"); 1543 background-size: 125px 75px; 1544 } 1545 } 1546 1547 .subnavitem.-plus-leinwand:before { 1548 background-image: url(/components/header/img/categories/nav/plus-leinwand.webp); 1549 } 1550 1551 @media (-webkit-min-device-pixel-ratio: 1.3), 1552 (min-device-pixel-ratio: 1.3), 1553 (min-resolution: 1.3dppx) { 1554 .subnavitem.-plus-leinwand:before { 1555 background-image: url("/components/header/img/categories/nav/plus-leinwand-2x.webp"); 1556 background-size: 125px 75px; 1557 } 1558 } 1559 1560 .subnavitem.-gerahmte-bild:before { 1561 background-image: url(/components/header/img/categories/nav/gerahmtes-bild.webp); 1562 } 1563 1564 @media (-webkit-min-device-pixel-ratio: 1.3), 1565 (min-device-pixel-ratio: 1.3), 1566 (min-resolution: 1.3dppx) { 1567 .subnavitem.-gerahmte-bild:before { 1568 background-image: url("/components/header/img/categories/nav/gerahmtes-bild-2x.webp"); 1569 background-size: 125px 75px; 1570 } 1571 } 1572 1573 .subnavitem.-holz:before { 1574 background-image: url(/components/header/img/categories/nav/wood.webp); 1575 } 1576 1577 @media (-webkit-min-device-pixel-ratio: 1.3), 1578 (min-device-pixel-ratio: 1.3), 1579 (min-resolution: 1.3dppx) { 1580 .subnavitem.-holz:before { 1581 background-image: url("/components/header/img/categories/nav/wood-2x.webp"); 1582 background-size: 125px 75px; 1583 } 1584 } 1585 1586 .subnavitem.-acryl:before { 1587 background-image: url(/components/header/img/categories/nav/_acryl.webp); 1588 } 1589 1590 @media (-webkit-min-device-pixel-ratio: 1.3), 1591 (min-device-pixel-ratio: 1.3), 1592 (min-resolution: 1.3dppx) { 1593 .subnavitem.-acryl:before { 1594 background-image: url("/components/header/img/categories/nav/_acryl-2x.webp"); 1595 background-size: 125px 75px; 1596 } 1597 } 1598 1599 .subnavitem.-acrylglaspuzzle:before { 1600 background-image: url(/components/header/img/categories/nav/acrylglaspuzzle.webp); 1601 } 1602 1603 @media (-webkit-min-device-pixel-ratio: 1.3), 1604 (min-device-pixel-ratio: 1.3), 1605 (min-resolution: 1.3dppx) { 1606 .subnavitem.-acrylglaspuzzle:before { 1607 background-image: url("/components/header/img/categories/nav/acrylglaspuzzle-2x.webp"); 1608 background-size: 125px 75px; 1609 } 1610 } 1611 1612 .subnavitem.-acryl-forex:before { 1613 background-image: url(/components/header/img/categories/nav/acryl-forex.webp); 1614 } 1615 1616 @media (-webkit-min-device-pixel-ratio: 1.3), 1617 (min-device-pixel-ratio: 1.3), 1618 (min-resolution: 1.3dppx) { 1619 .subnavitem.-acryl-forex:before { 1620 background-image: url("/components/header/img/categories/nav/acryl-forex-2x.webp"); 1621 background-size: 125px 75px; 1622 } 1623 } 1624 1625 .subnavitem.-adventskalender:before { 1626 background-image: url(/components/header/img/categories/nav/adventskalender.webp); 1627 } 1628 1629 @media (-webkit-min-device-pixel-ratio: 1.3), 1630 (min-device-pixel-ratio: 1.3), 1631 (min-resolution: 1.3dppx) { 1632 .subnavitem.-adventskalender:before { 1633 background-image: url("/components/header/img/categories/nav/adventskalender-2x.webp"); 1634 background-size: 125px 75px; 1635 } 1636 } 1637 1638 .subnavitem.-acryl-aluminium:before { 1639 background-image: url(/components/header/img/categories/nav/acryl-aluminium.webp); 1640 } 1641 1642 @media (-webkit-min-device-pixel-ratio: 1.3), 1643 (min-device-pixel-ratio: 1.3), 1644 (min-resolution: 1.3dppx) { 1645 .subnavitem.-acryl-aluminium:before { 1646 background-image: url("/components/header/img/categories/nav/acryl-aluminium-2x.webp"); 1647 background-size: 125px 75px; 1648 } 1649 } 1650 1651 .subnavitem.-mixpix:before { 1652 background-image: url(/components/header/img/categories/nav/navi-mixpix.webp); 1653 } 1654 1655 @media (-webkit-min-device-pixel-ratio: 1.3), 1656 (min-device-pixel-ratio: 1.3), 1657 (min-resolution: 1.3dppx) { 1658 .subnavitem.-mixpix:before { 1659 background-image: url("/components/header/img/categories/nav/navi-mixpix-2x.webp"); 1660 background-size: 125px 75px; 1661 } 1662 } 1663 1664 .subnavitem.-aluminium:before { 1665 background-image: url(/components/header/img/categories/nav/aluminium.webp); 1666 } 1667 1668 @media (-webkit-min-device-pixel-ratio: 1.3), 1669 (min-device-pixel-ratio: 1.3), 1670 (min-resolution: 1.3dppx) { 1671 .subnavitem.-aluminium:before { 1672 background-image: url("/components/header/img/categories/nav/aluminium-2x.webp"); 1673 background-size: 125px 75px; 1674 } 1675 } 1676 1677 .subnavitem.-forex:before { 1678 background-image: url(/components/header/img/categories/nav/forex.webp); 1679 } 1680 1681 @media (-webkit-min-device-pixel-ratio: 1.3), 1682 (min-device-pixel-ratio: 1.3), 1683 (min-resolution: 1.3dppx) { 1684 .subnavitem.-forex:before { 1685 background-image: url("/components/header/img/categories/nav/forex-2x.webp"); 1686 background-size: 125px 75px; 1687 } 1688 } 1689 1690 .subnavitem.-poster:before { 1691 background-image: url(/components/header/img/categories/nav/poster.webp); 1692 } 1693 1694 @media (-webkit-min-device-pixel-ratio: 1.3), 1695 (min-device-pixel-ratio: 1.3), 1696 (min-resolution: 1.3dppx) { 1697 .subnavitem.-poster:before { 1698 background-image: url("/components/header/img/categories/nav/poster-2x.webp"); 1699 background-size: 125px 75px; 1700 } 1701 } 1702 1703 .subnavitem.-poster-new:before { 1704 background-image: url(/components/header/img/categories/nav/poster-navi.webp); 1705 } 1706 1707 @media (-webkit-min-device-pixel-ratio: 1.3), 1708 (min-device-pixel-ratio: 1.3), 1709 (min-resolution: 1.3dppx) { 1710 .subnavitem.-poster-new:before { 1711 background-image: url("/components/header/img/categories/nav/poster-navi-2x.webp"); 1712 background-size: 125px 75px; 1713 } 1714 } 1715 1716 .subnavitem.-fotobuch:before { 1717 background-image: url(/components/header/img/categories/nav/fotobuch-navi.webp); 1718 } 1719 1720 @media (-webkit-min-device-pixel-ratio: 1.3), 1721 (min-device-pixel-ratio: 1.3), 1722 (min-resolution: 1.3dppx) { 1723 .subnavitem.-fotobuch:before { 1724 background-image: url("/components/header/img/categories/nav/fotobuch-navi-2x.webp"); 1725 background-size: 125px 75px; 1726 } 1727 } 1728 1729 .subnavitem.-quickbook:before { 1730 background-image: url(/components/header/img/categories/nav/quickbook-navi.webp); 1731 } 1732 1733 @media (-webkit-min-device-pixel-ratio: 1.3), 1734 (min-device-pixel-ratio: 1.3), 1735 (min-resolution: 1.3dppx) { 1736 .subnavitem.-quickbook:before { 1737 background-image: url("/components/header/img/categories/nav/quickbook-navi-2x.webp"); 1738 background-size: 125px 75px; 1739 } 1740 } 1741 1742 .subnavitem.-fotokalender:before { 1743 background-image: url(/components/header/img/categories/nav/fotokalender.webp); 1744 } 1745 1746 @media (-webkit-min-device-pixel-ratio: 1.3), 1747 (min-device-pixel-ratio: 1.3), 1748 (min-resolution: 1.3dppx) { 1749 .subnavitem.-fotokalender:before { 1750 background-image: url("/components/header/img/categories/nav/fotokalender-2x.webp"); 1751 background-size: 125px 75px; 1752 } 1753 } 1754 1755 .subnavitem.-handycase:before { 1756 background-image: url(/components/header/img/categories/nav/handycase.webp); 1757 } 1758 1759 @media (-webkit-min-device-pixel-ratio: 1.3), 1760 (min-device-pixel-ratio: 1.3), 1761 (min-resolution: 1.3dppx) { 1762 .subnavitem.-handycase:before { 1763 background-image: url("/components/header/img/categories/nav/handycase-2x.webp"); 1764 background-size: 125px 75px; 1765 } 1766 } 1767 1768 .subnavitem.-kissen:before { 1769 background-image: url(/components/header/img/categories/nav/kissen.webp); 1770 } 1771 1772 @media (-webkit-min-device-pixel-ratio: 1.3), 1773 (min-device-pixel-ratio: 1.3), 1774 (min-resolution: 1.3dppx) { 1775 .subnavitem.-kissen:before { 1776 background-image: url("/components/header/img/categories/nav/kissen-2x.webp"); 1777 background-size: 125px 75px; 1778 } 1779 } 1780 1781 .subnavitem.-collage-pillow:before { 1782 background-image: url(/components/header/img/categories/nav/collage-pillow.webp); 1783 } 1784 1785 @media (-webkit-min-device-pixel-ratio: 1.3), 1786 (min-device-pixel-ratio: 1.3), 1787 (min-resolution: 1.3dppx) { 1788 .subnavitem.-collage-pillow:before { 1789 background-image: url("/components/header/img/categories/nav/collage-pillow-2x.webp"); 1790 background-size: 125px 75px; 1791 } 1792 } 1793 1794 .subnavitem.-tasse:before { 1795 background-image: url(/components/header/img/categories/nav/tasse.webp); 1796 } 1797 1798 @media (-webkit-min-device-pixel-ratio: 1.3), 1799 (min-device-pixel-ratio: 1.3), 1800 (min-resolution: 1.3dppx) { 1801 .subnavitem.-tasse:before { 1802 background-image: url("/components/header/img/categories/nav/tasse-2x.webp"); 1803 background-size: 125px 75px; 1804 } 1805 } 1806 1807 .subnavitem.-tasse.-two:before { 1808 background-image: url(/components/header/img/categories/nav/tasse-two.webp); 1809 } 1810 1811 @media (-webkit-min-device-pixel-ratio: 1.3), 1812 (min-device-pixel-ratio: 1.3), 1813 (min-resolution: 1.3dppx) { 1814 .subnavitem.-tasse.-two:before { 1815 background-image: url("/components/header/img/categories/nav/tasse-two-2x.webp"); 1816 background-size: 125px 75px; 1817 } 1818 } 1819 1820 .subnavitem.-photobook:before { 1821 background-image: url(/components/header/img/categories/nav/photobook-navi.webp); 1822 } 1823 1824 @media (-webkit-min-device-pixel-ratio: 1.3), 1825 (min-device-pixel-ratio: 1.3), 1826 (min-resolution: 1.3dppx) { 1827 .subnavitem.-photobook:before { 1828 background-image: url("/components/header/img/categories/nav/photobook-navi-2x.webp"); 1829 background-size: 125px 75px; 1830 } 1831 } 1832 1833 .subnavitem.-childrenbook:before { 1834 background-image: url(/components/header/img/categories/nav/childrenbook.webp); 1835 } 1836 1837 @media (-webkit-min-device-pixel-ratio: 1.3), 1838 (min-device-pixel-ratio: 1.3), 1839 (min-resolution: 1.3dppx) { 1840 .subnavitem.-childrenbook:before { 1841 background-image: url("/components/header/img/categories/nav/childrenbook-2x.webp"); 1842 background-size: 125px 75px; 1843 } 1844 } 1845 1846 .subnavitem.-puzzle:before { 1847 background-image: url(/components/header/img/categories/nav/puzzle.webp); 1848 } 1849 1850 @media (-webkit-min-device-pixel-ratio: 1.3), 1851 (min-device-pixel-ratio: 1.3), 1852 (min-resolution: 1.3dppx) { 1853 .subnavitem.-puzzle:before { 1854 background-image: url("/components/header/img/categories/nav/puzzle-2x.webp"); 1855 background-size: 125px 75px; 1856 } 1857 } 1858 1859 .subnavitem.-mousepad:before { 1860 background-image: url(/components/header/img/categories/nav/mousepad.webp); 1861 } 1862 1863 @media (-webkit-min-device-pixel-ratio: 1.3), 1864 (min-device-pixel-ratio: 1.3), 1865 (min-resolution: 1.3dppx) { 1866 .subnavitem.-mousepad:before { 1867 background-image: url("/components/header/img/categories/nav/mousepad-2x.webp"); 1868 background-size: 125px 75px; 1869 } 1870 } 1871 1872 .subnavitem.-acrylblock:before { 1873 background-image: url(/components/header/img/categories/nav/acrylblock.webp); 1874 } 1875 1876 @media (-webkit-min-device-pixel-ratio: 1.3), 1877 (min-device-pixel-ratio: 1.3), 1878 (min-resolution: 1.3dppx) { 1879 .subnavitem.-acrylblock:before { 1880 background-image: url("/components/header/img/categories/nav/acrylblock-2x.webp"); 1881 background-size: 125px 75px; 1882 } 1883 } 1884 1885 .subnavitem.-bilderbox:before { 1886 background-image: url(/components/header/img/categories/nav/bilderbox.webp); 1887 } 1888 1889 @media (-webkit-min-device-pixel-ratio: 1.3), 1890 (min-device-pixel-ratio: 1.3), 1891 (min-resolution: 1.3dppx) { 1892 .subnavitem.-bilderbox:before { 1893 background-image: url("/components/header/img/categories/nav/bilderbox-2x.webp"); 1894 background-size: 125px 75px; 1895 } 1896 } 1897 1898 .subnavitem.-blanket:before { 1899 background-image: url(/components/header/img/categories/nav/decke.webp); 1900 } 1901 1902 @media (-webkit-min-device-pixel-ratio: 1.3), 1903 (min-device-pixel-ratio: 1.3), 1904 (min-resolution: 1.3dppx) { 1905 .subnavitem.-blanket:before { 1906 background-image: url("/components/header/img/categories/nav/decke-2x.webp"); 1907 background-size: 125px 75px; 1908 } 1909 } 1910 1911 .subnavitem.-collage-blanket:before { 1912 background-image: url(/components/header/img/categories/nav/collage-blanket.webp); 1913 } 1914 1915 @media (-webkit-min-device-pixel-ratio: 1.3), 1916 (min-device-pixel-ratio: 1.3), 1917 (min-resolution: 1.3dppx) { 1918 .subnavitem.-collage-blanket:before { 1919 background-image: url("/components/header/img/categories/nav/collage-blanket-2x.webp"); 1920 background-size: 125px 75px; 1921 } 1922 } 1923 1924 .subnavitem.-photoholder:before { 1925 background-image: url(/components/header/img/categories/nav/photo-
1925holder-navi.webp); 1926 } 1927 1928 @media (-webkit-min-device-pixel-ratio: 1.3), 1929 (min-device-pixel-ratio: 1.3), 1930 (min-resolution: 1.3dppx) { 1931 .subnavitem.-photoholder:before { 1932 background-image: url("/components/header/img/categories/nav/photo-holder-navi-2x.webp"); 1933 background-size: 125px 75px; 1934 } 1935 } 1936 1937 .subnavitem.-coasters:before { 1938 background-image: url(/components/header/img/categories/nav/navi-icon-coasters.webp); 1939 } 1940 1941 @media (-webkit-min-device-pixel-ratio: 1.3), 1942 (min-device-pixel-ratio: 1.3), 1943 (min-resolution: 1.3dppx) { 1944 .subnavitem.-coasters:before { 1945 background-image: url("/components/header/img/categories/nav/navi-icon-coasters-2x.webp"); 1946 background-size: 125px 75px; 1947 } 1948 } 1949 1950 .subnavitem.-handtuch:before { 1951 background-image: url(/components/header/img/categories/nav/handtuch.webp); 1952 } 1953 1954 @media (-webkit-min-device-pixel-ratio: 1.3), 1955 (min-device-pixel-ratio: 1.3), 1956 (min-resolution: 1.3dppx) { 1957 .subnavitem.-handtuch:before { 1958 background-image: url("/components/header/img/categories/nav/handtuch-2x.webp"); 1959 background-size: 125px 75px; 1960 } 1961 } 1962 1963 .subnavitem.-sportstowel:before { 1964 background-image: url(/components/header/img/categories/nav/sport-towel-navi.webp); 1965 } 1966 1967 @media (-webkit-min-device-pixel-ratio: 1.3), 1968 (min-device-pixel-ratio: 1.3), 1969 (min-resolution: 1.3dppx) { 1970 .subnavitem.-sportstowel:before { 1971 background-image: url("/components/header/img/categories/nav/sport-towel-navi-2x.webp"); 1972 background-size: 125px 75px; 1973 } 1974 } 1975 1976 .subnavitem.-bedlinen:before { 1977 background-image: url(/components/header/img/categories/nav/B_bedding-navi.webp); 1978 } 1979 1980 @media (-webkit-min-device-pixel-ratio: 1.3), 1981 (min-device-pixel-ratio: 1.3), 1982 (min-resolution: 1.3dppx) { 1983 .subnavitem.-bedlinen:before { 1984 background-image: url("/components/header/img/categories/nav/B_bedding-navi-2x.webp"); 1985 background-size: 125px 75px; 1986 } 1987 } 1988 1989 .subnavitem.-wandtuch:before { 1990 background-image: url(/components/header/img/categories/nav/wandtuch.webp); 1991 } 1992 1993 @media (-webkit-min-device-pixel-ratio: 1.3), 1994 (min-device-pixel-ratio: 1.3), 1995 (min-resolution: 1.3dppx) { 1996 .subnavitem.-wandtuch:before { 1997 background-image: url("/components/header/img/categories/nav/wandtuch-2x.webp"); 1998 background-size: 125px 75px; 1999 } 2000 } 2001 2002 .subnavitem.-tshirt:before { 2003 background-image: url(/components/header/img/categories/nav/tshirt.webp); 2004 } 2005 2006 @media (-webkit-min-device-pixel-ratio: 1.3), 2007 (min-device-pixel-ratio: 1.3), 2008 (min-resolution: 1.3dppx) { 2009 .subnavitem.-tshirt:before { 2010 background-image: url("/components/header/img/categories/nav/tshirt-2x.webp"); 2011 background-size: 125px 75px; 2012 } 2013 } 2014 2015 .subnavitem.-teppich:before { 2016 background-image: url(/components/header/img/categories/nav/teppich.webp); 2017 } 2018 2019 @media (-webkit-min-device-pixel-ratio: 1.3), 2020 (min-device-pixel-ratio: 1.3), 2021 (min-resolution: 1.3dppx) { 2022 .subnavitem.-teppich:before { 2023 background-image: url("/components/header/img/categories/nav/teppich-2x.webp"); 2024 background-size: 125px 75px; 2025 } 2026 } 2027 2028 .subnavitem.-t-shirt:before { 2029 background-image: url(/components/header/img/categories/nav/t-shirt.webp); 2030 } 2031 2032 @media (-webkit-min-device-pixel-ratio: 1.3), 2033 (min-device-pixel-ratio: 1.3), 2034 (min-resolution: 1.3dppx) { 2035 .subnavitem.-t-shirt:before { 2036 background-image: url("/components/header/img/categories/nav/t-shirt-2x.webp"); 2037 background-size: 125px 75px; 2038 } 2039 } 2040 2041 .subnavitem.-rollo:before { 2042 background-image: url(/components/header/img/categories/nav/rollo.webp); 2043 } 2044 2045 @media (-webkit-min-device-pixel-ratio: 1.3), 2046 (min-device-pixel-ratio: 1.3), 2047 (min-resolution: 1.3dppx) { 2048 .subnavitem.-rollo:before { 2049 background-image: url("/components/header/img/categories/nav/rollo-2x.webp"); 2050 background-size: 125px 75px; 2051 } 2052 } 2053 2054 .subnavitem.-totebag:before { 2055 background-image: url(/components/header/img/categories/nav/totebag.webp); 2056 } 2057 2058 @media (-webkit-min-device-pixel-ratio: 1.3), 2059 (min-device-pixel-ratio: 1.3), 2060 (min-resolution: 1.3dppx) { 2061 .subnavitem.-totebag:before { 2062 background-image: url("/components/header/img/categories/nav/totebag-2x.webp"); 2063 background-size: 125px 75px; 2064 } 2065 } 2066 2067 .subnavitem.-starmap:before { 2068 background-image: url(/components/header/img/categories/nav/starmap.webp); 2069 } 2070 2071 @media (-webkit-min-device-pixel-ratio: 1.3), 2072 (min-device-pixel-ratio: 1.3), 2073 (min-resolution: 1.3dppx) { 2074 .subnavitem.-starmap:before { 2075 background-image: url("/components/header/img/categories/nav/starmap-2x.webp"); 2076 background-size: 125px 75px; 2077 } 2078 } 2079 2080 .subnavitem.-mixblox:before { 2081 background-image: url(/components/header/img/categories/nav/mixblox.webp); 2082 } 2083 2084 @media (-webkit-min-device-pixel-ratio: 1.3), 2085 (min-device-pixel-ratio: 1.3), 2086 (min-resolution: 1.3dppx) { 2087 .subnavitem.-mixblox:before { 2088 background-image: url("/components/header/img/categories/nav/mixblox-2x.webp"); 2089 background-size: 125px 75px; 2090 } 2091 } 2092 2093 .subnavitem.-wandcollage:before { 2094 background-image: url(/components/header/img/categories/nav/wandcollage.webp); 2095 background-position-y: -13px; 2096 background-size: 115px; 2097 } 2098 2099 @media (-webkit-min-device-pixel-ratio: 1.3), 2100 (min-device-pixel-ratio: 1.3), 2101 (min-resolution: 1.3dppx) { 2102 .subnavitem.-wandcollage:before { 2103 background-image: url("/components/header/img/categories/nav/wandcollage-2x.webp"); 2104 background-size: 125px 75px; 2105 } 2106 } 2107 2108 .subnavitem.-forex-frame:before { 2109 background-image: url(/components/header/img/categories/nav/forex-frame.webp); 2110 } 2111 2112 @media (-webkit-min-device-pixel-ratio: 1.3), 2113 (min-device-pixel-ratio: 1.3), 2114 (min-resolution: 1.3dppx) { 2115 .subnavitem.-forex-frame:before { 2116 background-image: url("/components/header/img/categories/nav/forex-frame-2x.webp"); 2117 background-size: 125px 75px; 2118 } 2119 } 2120 2121 .subnavitem.-retro-leinwand:before { 2122 background-image: url(/components/header/img/categories/nav/retro-leinwand.webp); 2123 } 2124 2125 @media (-webkit-min-device-pixel-ratio: 1.3), 2126 (min-device-pixel-ratio: 1.3), 2127 (min-resolution: 1.3dppx) { 2128 .subnavitem.-retro-leinwand:before { 2129 background-image: url("/components/header/img/categories/nav/retro-leinwand-2x.webp"); 2130 background-size: 125px 75px; 2131 } 2132 } 2133 2134 .subnavitem.-mixpix:before { 2135 background-image: url(/components/header/img/categories/nav/mixpix.webp); 2136 } 2137 2138 @media (-webkit-min-device-pixel-ratio: 1.3), 2139 (min-device-pixel-ratio: 1.3), 2140 (min-resolution: 1.3dppx) { 2141 .subnavitem.-mixpix:before { 2142 background-image: url("/components/header/img/categories/nav/mixpix-2x.webp"); 2143 background-size: 125px 75px; 2144 } 2145 } 2146 2147 .subnavitem.-formen:before { 2148 background-image: url(/components/header/img/categories/nav/formen.webp); 2149 } 2150 2151 @media (-webkit-min-device-pixel-ratio: 1.3), 2152 (min-device-pixel-ratio: 1.3), 2153 (min-resolution: 1.3dppx) { 2154 .subnavitem.-formen:before { 2155 background-image: url("/components/header/img/categories/nav/formen-2x.webp"); 2156 background-size: 125px 75px; 2157 } 2158 } 2159 2160 .subnavitem.-round:before { 2161 background-image: url(/components/header/img/categories/nav/round.webp); 2162 } 2163 2164 @media (-webkit-min-device-pixel-ratio: 1.3), 2165 (min-device-pixel-ratio: 1.3), 2166 (min-resolution: 1.3dppx) { 2167 .subnavitem.-round:before { 2168 background-image: url("/components/header/img/categories/nav/round-2x.webp"); 2169 background-size: 125px 75px; 2170 } 2171 } 2172 2173 .subnavitem.-woodblock:before { 2174 background-image: url(/components/header/img/categories/nav/woodblock-navi.webp); 2175 } 2176 2177 @media (-webkit-min-device-pixel-ratio: 1.3), 2178 (min-device-pixel-ratio: 1.3), 2179 (min-resolution: 1.3dppx) { 2180 .subnavitem.-woodblock:before { 2181 background-image: url("/components/header/img/categories/nav/woodblock-navi-2x.webp"); 2182 background-size: 125px 75px; 2183 } 2184 } 2185 2186 .subnavitem.-worldmap:before { 2187 background-image: url(/components/header/img/categories/nav/weltkarte.webp); 2188 } 2189 2190 @media (-webkit-min-device-pixel-ratio: 1.3), 2191 (min-device-pixel-ratio: 1.3), 2192 (min-resolution: 1.3dppx) { 2193 .subnavitem.-worldmap:before { 2194 background-image: url("/components/header/img/categories/nav/weltkarte-2x.webp"); 2195 background-size: 125px 75px; 2196 } 2197 } 2198 2199 .subnavitem.-photoprints:before { 2200 background-image: url(/components/header/img/categories/nav/photoprints-navi.webp); 2201 } 2202 2203 @media (-webkit-min-device-pixel-ratio: 1.3), 2204 (min-device-pixel-ratio: 1.3), 2205 (min-resolution: 1.3dppx) { 2206 .subnavitem.-photoprints:before { 2207 background-image: url("/components/header/img/categories/nav/photoprints-navi-2x.webp"); 2208 background-size: 125px 75px; 2209 } 2210 } 2211 2212 .subnavitem.-photocards:before { 2213 background-image: url(/components/header/img/categories/nav/photocards-navi.webp); 2214 } 2215 2216 @media (-webkit-min-device-pixel-ratio: 1.3), 2217 (min-device-pixel-ratio: 1.3), 2218 (min-resolution: 1.3dppx) { 2219 .subnavitem.-photocards:before { 2220 background-image: url("/components/header/img/categories/nav/photocards-navi-2x.webp"); 2221 background-size: 125px 75px; 2222 } 2223 } 2224 2225 .subnavitem.-facemask:before { 2226 background-image: url(/components/header/img/categories/nav/facemask.webp); 2227 } 2228 2229 @media (-webkit-min-device-pixel-ratio: 1.3), 2230 (min-device-pixel-ratio: 1.3), 2231 (min-resolution: 1.3dppx) { 2232 .subnavitem.-facemask:before { 2233 background-image: url("/components/header/img/categories/nav/facemask-2x.webp"); 2234 background-size: 125px 75px; 2235 } 2236 } 2237 2238 .subnavitem.-namenkissen:before { 2239 background-image: url(/components/header/img/categories/nav/name-cushion.webp); 2240 } 2241 2242 @media (-webkit-min-device-pixel-ratio: 1.3), 2243 (min-device-pixel-ratio: 1.3), 2244 (min-resolution: 1.3dppx) { 2245 .subnavitem.-namenkissen:before { 2246 background-image: url("/components/header/img/categories/nav/name-cushion-2x.webp"); 2247 background-size: 125px 75px; 2248 } 2249 } 2250 2251 .subnavitem.-geburtskissen:before { 2252 background-image: url(/components/header/img/categories/nav/birth-cushion.webp); 2253 } 2254 2255 @media (-webkit-min-device-pixel-ratio: 1.3), 2256 (min-device-pixel-ratio: 1.3), 2257 (min-resolution: 1.3dppx) { 2258 .subnavitem.-geburtskissen:before { 2259 background-image: url("/components/header/img/categories/nav/birth-cushion-2x.webp"); 2260 background-size: 125px 75px; 2261 } 2262 } 2263 2264 .subnavitem.-pawpatrol:before { 2265 background-image: url(/components/header/img/categories/nav/paw-patrol.webp); 2266 } 2267 2268 @media (-webkit-min-device-pixel-ratio: 1.3), 2269 (min-device-pixel-ratio: 1.3), 2270 (min-resolution: 1.3dppx) { 2271 .subnavitem.-pawpatrol:before { 2272 background-image: url("/components/header/img/categories/nav/paw-patrol-2x.webp"); 2273 background-size: 125px 75px; 2274 } 2275 } 2276 2277 .subnavitem.-peppapig:before { 2278 background-image: url(/components/header/img/categories/nav/peppa-pig.webp); 2279 } 2280 2281 @media (-webkit-min-device-pixel-ratio: 1.3), 2282 (min-device-pixel-ratio: 1.3), 2283 (min-resolution: 1.3dppx) { 2284 .subnavitem.-peppapig:before { 2285 background-image: url("/components/header/img/categories/nav/peppa-pig-2x.webp"); 2286 background-size: 125px 75px; 2287 } 2288 } 2289 2290 .subnavitem.-bibitina:before { 2291 background-image: url(/components/header/img/categories/nav/bibi-tina.webp); 2292 } 2293 2294 @media (-webkit-min-device-pixel-ratio: 1.3), 2295 (min-device-pixel-ratio: 1.3), 2296 (min-resolution: 1.3dppx) { 2297 .subnavitem.-bibitina:before { 2298 background-image: url("/components/header/img/categories/nav/bibi-tina-2x.webp"); 2299 background-size: 125px 75px; 2300 } 2301 } 2302 2303 .subnavitem.-kindermesslatte:before { 2304 background-image: url(/components/header/img/categories/nav/kindermesslatte.webp); 2305 } 2306 2307 @media (-webkit-min-device-pixel-ratio: 1.3), 2308 (min-device-pixel-ratio: 1.3), 2309 (min-resolution: 1.3dppx) { 2310 .subnavitem.-kindermesslatte:before { 2311 background-image: url("/components/header/img/categories/nav/kindermesslatte-2x.webp"); 2312 background-size: 125px 75px; 2313 } 2314 } 2315 2316 2317 .subnavitem.-kinderdecke:before { 2318 background-image: url(/components/header/img/categories/nav/blanket.webp); 2319 } 2320 2321 @media (-webkit-min-device-pixel-ratio: 1.3), 2322 (min-device-pixel-ratio: 1.3), 2323 (min-resolution: 1.3dppx) { 2324 .subnavitem.-kinderdecke:before { 2325 background-image: url("/components/header/img/categories/nav/blanket-2x.webp"); 2326 background-size: 125px 75px; 2327 } 2328 } 2329 2330 .subnavitem.-tumbler:before { 2331 background-image: url(/components/header/img/categories/nav/tumbler.webp); 2332 } 2333 2334 @media (-webkit-min-device-pixel-ratio: 1.3), 2335 (min-device-pixel-ratio: 1.3), 2336 (min-resolution: 1.3dppx) { 2337 .subnavitem.-tumbler:before { 2338 background-image: url("/components/header/img/categories/nav/tumbler-2x.webp"); 2339 background-size: 125px 75px; 2340 } 2341 } 2342 2343 .subnavitem.-citymap:before { 2344 background-image: url(/components/header/img/categories/nav/citymap.webp); 2345 } 2346 2347 @media (-webkit-min-device-pixel-ratio: 1.3), 2348 (min-device-pixel-ratio: 1.3), 2349 (min-resolution: 1.3dppx) { 2350 .subnavitem.-citymap:before { 2351 background-image: url("/components/header/img/categories/nav/citymap-2x.webp"); 2352 background-size: 125px 75px; 2353 } 2354 } 2355 2356 .subnavitem.-typographie:before { 2357 background-image: url(/components/header/img/categories/nav/typographie.webp); 2358 } 2359 2360 @media (-webkit-min-device-pixel-ratio: 1.3), 2361 (min-device-pixel-ratio: 1.3), 2362 (min-resolution: 1.3dppx) { 2363 .subnavitem.-typographie:before { 2364 background-image: url("/components/header/img/categories/nav/typographie-2x.webp"); 2365 background-size: 125px 75px; 2366 } 2367 } 2368 2369 .subn
2369avitem.-mixmags:before { 2370 background-image: url(/components/header/img/categories/nav/mixmagx-navi.webp); 2371 } 2372 2373 @media (-webkit-min-device-pixel-ratio: 1.3), 2374 (min-device-pixel-ratio: 1.3), 2375 (min-resolution: 1.3dppx) { 2376 .subnavitem.-mixmags:before { 2377 background-image: url("/components/header/img/categories/nav/mixmagx-navi-2x.webp"); 2378 background-size: 125px 75px; 2379 } 2380 } 2381 2382 .subnavitem.-bauble:before { 2383 background-image: url(/components/header/img/categories/nav/navi_xmas-ornaments.webp); 2384 } 2385 2386 @media (-webkit-min-device-pixel-ratio: 1.3), 2387 (min-device-pixel-ratio: 1.3), 2388 (min-resolution: 1.3dppx) { 2389 .subnavitem.-bauble:before { 2390 background-image: url("/components/header/img/categories/nav/navi_xmas-ornaments-2x.webp"); 2391 background-size: 125px 75px; 2392 } 2393 } 2394 2395 .subnavitem.-baublefour:before { 2396 background-image: url(/components/header/img/categories/nav/navi_xmas-ornaments_four.webp); 2397 } 2398 2399 @media (-webkit-min-device-pixel-ratio: 1.3), 2400 (min-device-pixel-ratio: 1.3), 2401 (min-resolution: 1.3dppx) { 2402 .subnavitem.-baublefour:before { 2403 background-image: url("/components/header/img/categories/nav/navi_xmas-ornaments_four-2x.webp"); 2404 background-size: 125px 75px; 2405 } 2406 } 2407 2408 .subnavitem.-dogbauble:before { 2409 background-image: url(/components/header/img/categories/nav/navi_xmas-ornaments_dog.webp); 2410 } 2411 2412 @media (-webkit-min-device-pixel-ratio: 1.3), 2413 (min-device-pixel-ratio: 1.3), 2414 (min-resolution: 1.3dppx) { 2415 .subnavitem.-dogbauble:before { 2416 background-image: url("/components/header/img/categories/nav/navi_xmas-ornaments_dog-2x.webp"); 2417 background-size: 125px 75px; 2418 } 2419 } 2420 2421 .subnavitem.-keyring:before { 2422 background-image: url(/components/header/img/categories/nav/keyring.webp); 2423 } 2424 2425 @media (-webkit-min-device-pixel-ratio: 1.3), 2426 (min-device-pixel-ratio: 1.3), 2427 (min-resolution: 1.3dppx) { 2428 .subnavitem.-keyring:before { 2429 background-image: url("/components/header/img/categories/nav/keyring-2x.webp"); 2430 background-size: 125px 75px; 2431 } 2432 } 2433 .subnavitem.-gutscheine:before { 2434 background-image: url(/components/header/img/categories/nav/gutscheine.webp); 2435 } 2436 2437 @media (-webkit-min-device-pixel-ratio: 1.3), 2438 (min-device-pixel-ratio: 1.3), 2439 (min-resolution: 1.3dppx) { 2440 .subnavitem.-gutscheine:before { 2441 background-image: url("/components/header/img/categories/nav/gutscheine-2x.webp"); 2442 background-size: 125px 75px; 2443 } 2444 } 2445 2446 .subnavitem.-shakerframe:before { 2447 background-image: url(/components/header/img/categories/nav/shaker-frame-navi.webp); 2448 } 2449 2450 @media (-webkit-min-device-pixel-ratio: 1.3), 2451 (min-device-pixel-ratio: 1.3), 2452 (min-resolution: 1.3dppx) { 2453 .subnavitem.-shakerframe:before { 2454 background-image: url("/components/header/img/categories/nav/shaker-frame-navi-2x.webp"); 2455 background-size: 125px 75px; 2456 } 2457 } 2458 2459 .subnavitem.-fotoblock:before { 2460 background-image: url(/components/header/img/categories/nav/fotoblock.webp); 2461 } 2462 2463 .subnavitem.-fotoblock.-wHeart:before { 2464 background-image: url(/components/header/img/categories/nav/fotoblock-wheart.webp); 2465 } 2466 2467 @media (-webkit-min-device-pixel-ratio: 1.3), 2468 (min-device-pixel-ratio: 1.3), 2469 (min-resolution: 1.3dppx) { 2470 .subnavitem.-fotoblock:before { 2471 background-image: url("/components/header/img/categories/nav/fotoblock-2x.webp"); 2472 background-size: 125px 75px; 2473 } 2474 .subnavitem.-fotoblock.-wHeart:before { 2475 background-image: url("/components/header/img/categories/nav/fotoblock-wheart-2x.webp"); 2476 background-size: 125px 75px; 2477 } 2478 } 2479 2480 .subnavitem.-gift:before { 2481 background-image: url(/components/header/img/categories/nav/gift-cert.webp); 2482 } 2483 2484 @media (-webkit-min-device-pixel-ratio: 1.3), 2485 (min-device-pixel-ratio: 1.3), 2486 (min-resolution: 1.3dppx) { 2487 .subnavitem.-gift:before { 2488 background-image: url("/components/header/img/categories/nav/gift-cert.webp"); 2489 background-size: 125px 75px; 2490 } 2491 } 2492 2493 .bunny { 2494 font-size: 14px; 2495 position: relative; 2496 top: -3px; 2497 vertical-align: top; 2498 } 2499 2500 .subnavitem.-measuring-bar:before { 2501 background-image: url(/components/header/img/categories/nav/measuring-bar.webp); 2502 } 2503 2504 @media (-webkit-min-device-pixel-ratio: 1.3), 2505 (min-device-pixel-ratio: 1.3), 2506 (min-resolution: 1.3dppx) { 2507 .subnavitem.-measuring-bar:before { 2508 background-image: url("/components/header/img/categories/nav/measuring-bar-2x.webp"); 2509 background-size: 125px 75px; 2510 } 2511 } 2512 2513 .subnavitem.-flexiframe:before { 2514 background-image: url(/components/header/img/categories/nav/flexiframe.webp); 2515 } 2516 2517 @media (-webkit-min-device-pixel-ratio: 1.3), 2518 (min-device-pixel-ratio: 1.3), 2519 (min-resolution: 1.3dppx) { 2520 .subnavitem.-flexiframe:before { 2521 background-image: url("/components/header/img/categories/nav/flexiframe-2x.webp"); 2522 background-size: 125px 75px; 2523 } 2524 } 2525 2526 .subnavitem.-usa:before { 2527 background-image: url(/components/header/img/categories/nav/usa.png); 2528 } 2529 2530 @media (-webkit-min-device-pixel-ratio: 1.3), 2531 (min-device-pixel-ratio: 1.3), 2532 (min-resolution: 1.3dppx) { 2533 .subnavitem.-usa:before { 2534 background-image: url("/components/header/img/categories/nav/usa-2x.png"); 2535 background-size: 125px 75px; 2536 } 2537 } 2538 2539 .subnavitem.-text-design:before { 2540 background-image: url(/components/header/img/categories/nav/text-design.webp); 2541 } 2542 2543 @media (-webkit-min-device-pixel-ratio: 1.3), 2544 (min-device-pixel-ratio: 1.3), 2545 (min-resolution: 1.3dppx) { 2546 .subnavitem.-text-design:before { 2547 background-image: url("/components/header/img/categories/nav/text-design-2x.webp"); 2548 background-size: 125px 75px; 2549 } 2550 } 2551 2552 .subnavitem.-collage-products:before { 2553 background-image: url(/components/header/img/categories/nav/collage-products.webp); 2554 } 2555 2556 @media (-webkit-min-device-pixel-ratio: 1.3), 2557 (min-device-pixel-ratio: 1.3), 2558 (min-resolution: 1.3dppx) { 2559 .subnavitem.-collage-products:before { 2560 background-image: url("/components/header/img/categories/nav/collage-products-2x.webp"); 2561 background-size: 125px 75px; 2562 } 2563 } 2564 2565 .subnavitem.-collegeblock:before { 2566 background-image: url(/components/header/img/categories/nav/collegeblock.webp); 2567 } 2568 2569 @media (-webkit-min-device-pixel-ratio: 1.3), 2570 (min-device-pixel-ratio: 1.3), 2571 (min-resolution: 1.3dppx) { 2572 .subnavitem.-collegeblock:before { 2573 background-image: url("/components/header/img/categories/nav/collegeblock-2x.webp"); 2574 background-size: 125px 75px; 2575 } 2576 } 2577 2578 .subnavitem.-bachelor:before { 2579 background-image: url(/components/header/img/categories/nav/bachelor.webp); 2580 } 2581 2582 @media (-webkit-min-device-pixel-ratio: 1.3), 2583 (min-device-pixel-ratio: 1.3), 2584 (min-resolution: 1.3dppx) { 2585 .subnavitem.-bachelor:before { 2586 background-image: url("/components/header/img/categories/nav/bachelor-2x.webp"); 2587 background-size: 125px 75px; 2588 } 2589 } 2590 2591 .subnavitem.-paperset:before { 2592 background-image: url(/components/header/img/categories/nav/paperset.webp); 2593 } 2594 2595 @media (-webkit-min-device-pixel-ratio: 1.3), 2596 (min-device-pixel-ratio: 1.3), 2597 (min-resolution: 1.3dppx) { 2598 .subnavitem.-paperset:before { 2599 background-image: url("/components/header/img/categories/nav/paperset-2x.webp"); 2600 background-size: 125px 75px; 2601 } 2602 } 2603 2604 .subnavitem.-hoodie:before { 2605 background-image: url(/components/header/img/categories/nav/hoodie.webp); 2606 } 2607 2608 @media (-webkit-min-device-pixel-ratio: 1.3), 2609 (min-device-pixel-ratio: 1.3), 2610 (min-resolution: 1.3dppx) { 2611 .subnavitem.-hoodie:before { 2612 background-image: url("/components/header/img/categories/nav/hoodie-2x.webp"); 2613 background-size: 125px 75px; 2614 } 2615 } 2616 2617 2618 .subnavitem.-hoodie-organic:before { 2619 background-image: url(/components/header/img/categories/nav/hoodie-organic.webp); 2620 } 2621 2622 @media (-webkit-min-device-pixel-ratio: 1.3), 2623 (min-device-pixel-ratio: 1.3), 2624 (min-resolution: 1.3dppx) { 2625 .subnavitem.-hoodie-organic:before { 2626 background-image: url("/components/header/img/categories/nav/hoodie-organic-2x.webp"); 2627 background-size: 125px 75px; 2628 } 2629 } 2630 2631 2632 .subnavitem.-sticker:before { 2633 background-image: url(/components/header/img/categories/nav/sticker.webp); 2634 } 2635 2636 @media (-webkit-min-device-pixel-ratio: 1.3), 2637 (min-device-pixel-ratio: 1.3), 2638 (min-resolution: 1.3dppx) { 2639 .subnavitem.-sticker:before { 2640 background-image: url("/components/header/img/categories/nav/sticker-2x.webp"); 2641 background-size: 125px 75px; 2642 } 2643 } 2644 2645 </style> 2646 2647 <style type="text/css"> 2648 2649 * { 2650 -moz-box-sizing: border-box; 2651 box-sizing: border-box; 2652 } 2653 2654 .d-m-t-5{margin-top:5px}.d-p-t-5{padding-top:5px}.d-m-b-5{margin-bottom:5px}.d-p-b-5{padding-bottom:5px}.d-m-l-5{margin-left:5px}.d-p-l-5{padding-left:5px}.d-m-r-5{margin-right:5px}.d-p-r-5{padding-right:5px}.d-m-t-10{margin-top:10px}.d-p-t-10{padding-top:10px}.d-m-b-10{margin-bottom:10px}.d-p-b-10{padding-bottom:10px}.d-m-l-10{margin-left:10px}.d-p-l-10{padding-left:10px}.d-m-r-10{margin-right:10px}.d-p-r-10{padding-right:10px}.d-m-t-15{margin-top:15px}.d-p-t-15{padding-top:15px}.d-m-b-15{margin-bottom:15px}.d-p-b-15{padding-bottom:15px}.d-m-l-15{margin-left:15px}.d-p-l-15{padding-left:15px}.d-m-r-15{margin-right:15px}.d-p-r-15{padding-right:15px}.d-m-t-20{margin-top:20px}.d-p-t-20{padding-top:20px}.d-m-b-20{margin-bottom:20px}.d-p-b-20{padding-bottom:20px}.d-m-l-20{margin-left:20px}.d-p-l-20{padding-left:20px}.d-m-r-20{margin-right:20px}.d-p-r-20{padding-right:20px}.d-m-t-25{margin-top:25px}.d-p-t-25{padding-top:25px}.d-m-b-25{margin-bottom:25px}.d-p-b-25{padding-bottom:25px}.d-m-l-25{margin-left:25px}.d-p-l-25{padding-left:25px}.d-m-r-25{margin-right:25px}.d-p-r-25{padding-right:25px}.d-m-t-30{margin-top:30px}.d-p-t-30{padding-top:30px}.d-m-b-30{margin-bottom:30px}.d-p-b-30{padding-bottom:30px}.d-m-l-30{margin-left:30px}.d-p-l-30{padding-left:30px}.d-m-r-30{margin-right:30px}.d-p-r-30{padding-right:30px}.d-m-t-35{margin-top:35px}.d-p-t-35{padding-top:35px}.d-m-b-35{margin-bottom:35px}.d-p-b-35{padding-bottom:35px}.d-m-l-35{margin-left:35px}.d-p-l-35{padding-left:35px}.d-m-r-35{margin-right:35px}.d-p-r-35{padding-right:35px}.d-m-t-40{margin-top:40px}.d-p-t-40{padding-top:40px}.d-m-b-40{margin-bottom:40px}.d-p-b-40{padding-bottom:40px}.d-m-l-40{margin-left:40px}.d-p-l-40{padding-left:40px}.d-m-r-40{margin-right:40px}.d-p-r-40{padding-right:40px}.d-m-t-45{margin-top:45px}.d-p-t-45{padding-top:45px}.d-m-b-45{margin-bottom:45px}.d-p-b-45{padding-bottom:45px}.d-m-l-45{margin-left:45px}.d-p-l-45{padding-left:45px}.d-m-r-45{margin-right:45px}.d-p-r-45{padding-right:45px}.d-m-t-50{margin-top:50px}.d-p-t-50{padding-top:50px}.d-m-b-50{margin-bottom:50px}.d-p-b-50{padding-bottom:50px}.d-m-l-50{margin-left:50px}.d-p-l-50{padding-left:50px}.d-m-r-50{margin-right:50px}.d-p-r-50{padding-right:50px}.d-m-t-75{margin-top:75px}.d-p-t-75{padding-top:75px}.d-m-b-75{margin-bottom:75px}.d-p-b-75{padding-bottom:75px}.d-m-l-75{margin-left:75px}.d-p-l-75{padding-left:75px}.d-m-r-75{margin-right:75px}.d-p-r-75{padding-right:75px}.d-m-t-90{margin-top:90px}.d-p-t-90{padding-top:90px}.d-m-b-90{margin-bottom:90px}.d-p-b-90{padding-bottom:90px}.d-m-l-90{margin-left:90px}.d-p-l-90{padding-left:90px}.d-m-r-90{margin-right:90px}.d-p-r-90{padding-right:90px}.d-m-t-100{margin-top:100px}.d-p-t-100{padding-top:100px}.d-m-b-100{margin-bottom:100px}.d-p-b-100{padding-bottom:100px}.d-m-l-100{margin-left:100px}.d-p-l-100{padding-left:100px}.d-m-r-100{margin-right:100px}.d-p-r-100{padding-right:100px} 2655 2656 .pAbsolute { 2657 position: absolute; 2658 } 2659 2660 .-flyMenuC { 2661 width: 30px; 2662 z-index: 999; 2663 } 2664 2665 .-shippingLink { 2666 font-weight: normal; 2667 text-transform: none; 2668 } 2669 .-shippingLink span { 2670 color: #35b2b6; 2671 font-weight: normal; 2672 text-transform: none; 2673 } 2674 2675 .-discountLink, 2676 .-discountLink a { 2677 color: #d40140 !important; 2678 font-weight: bold; 2679 text-transform: uppercase; 2680 } 2681 .-discountLink span { 2682 color: #d40140; 2683 font-weight: bold; 2684 text-transform: uppercase; 2685 } 2686 2687#flyMenu .small { 2688 font-size: 13px; 2689} 2690 2691#flyMenuC span.small { 2692 display: block; 2693} 2694 2695#flyMenuC .g-recaptcha { 2696 display: none; 2697} 2698 2699#flyMenuC .message-unread-counter-c.-noMessages {
2700 display: none; 2701} 2702 2703#flyMenuC .loggedIn .message-unread-counter-c { 2704 display: inline-grid; 2705 margin-top: -2px; 2706 margin-left: 3px; 2707} 2708 2709#flyMenuC a { 2710 font-size: 12px; 2711} 2712 2713#flyMenuC a.-green { 2714 color: #35b2b6; 2715 text-decoration: none; 2716 font-weight: 700; 2717 font-size: 12px; 2718} 2719 2720#flyMenuC .noaccount { 2721 color: #4a4a4a; 2722 text-decoration: none; 2723 gap: 4px; 2724} 2725 2726#flyMenuC a.-green.requestpassword { 2727 font-weight: 700; 2728 font-size: 12px; 2729} 2730 2731#flyMenuC .button.-action.-secondary { 2732 color: #fff; 2733 background-color: #35b2b6; 2734 padding: 10px 0; 2735 font-size: 16px; 2736 font-weight: 700; 2737 line-height: 19px; 2738 border: none; 2739} 2740 2741#flyMenuC .button.-action.-secondary.disabled { 2742 pointer-events: none; 2743 opacity: 0.2; 2744} 2745 2746#flyMenuC .button.-action.-secondary::after { 2747 display: none; 2748} 2749 2750.openedFly #unreadMsgCountTopHeader { 2751 display: none !important; 2752} 2753 2754.message-unread-counter-c { 2755 display: inline-block; 2756 font-size: 11px; 2757 height: 18px; 2758 width: 18px; 2759 background: #d40140; 2760 color: #fff; 2761 border-radius: 24px; 2762 display: inline-grid; 2763 -webkit-justify-content: center; 2764 -ms-flex-pack: center; 2765 justify-content: center; 2766 -webkit-align-items: center; 2767 -ms-flex-align: center; 2768 align-items: center; 2769 position: absolute; 2770 margin-top: -10px; 2771 margin-left: 5px; 2772} 2773 2774body.-has-header-bar { 2775 padding-top: 0; 2776} 2777 2778body.-has-header-bar.bodySpecialBar { 2779 padding-top: 0 !important; 2780} 2781 2782.header-bar { 2783 position: relative; 2784 top: 0 !important; 2785 color: #fff; 2786 font-size: 16px; 2787 font-weight: 700; 2788 line-height: 20px; 2789 vertical-align: middle; 2790 z-index: 899; 2791 text-align: center; 2792 height: 30px; 2793} 2794 2795.page-head { 2796 width: 100%; 2797 height: auto; 2798 position: relative; 2799 top: auto !important; 2800 left: auto; 2801 z-index: 200; 2802} 2803 2804.page-head.-min .meta { 2805 margin-top: 0; 2806} 2807 2808.page-head-bar { 2809 width: 100%; 2810 min-width: 1020px; 2811 position: relative; 2812 padding: 0; 2813 border-bottom: 1px solid #b7b7b7; 2814 background-color: #ffffff; 2815 z-index: 2; 2816} 2817 2818.page-head-bar .head-freeship { 2819 position: absolute; 2820 width: 130px; 2821 top: 9px; 2822 color: #4a4a4a !important; 2823 right: -150px; 2824 font-size: 10px; 2825} 2826 2827.page-head-bar .head-freeship.-checkout { 2828 position: static; 2829 top: unset; 2830 right: unset; 2831 margin-top: -5px; 2832} 2833 2834.page-head-row { 2835 position: relative; 2836 padding: 0; 2837 -moz-box-sizing: border-box; 2838 box-sizing: border-box; 2839 width: 990px; 2840} 2841 2842/* temporary for Cyber Monday */ 2843.MPUK .page-head-row { 2844 width: 997px; 2845} 2846 2847.page-head-row.-top-bar { 2848 display: grid; 2849 grid-template-columns: auto 3fr auto; 2850 grid-template-rows: 60px; 2851 height: 60px; 2852 width: 1020px; 2853} 2854 2855.page-head-row.-top-bar.-checkout { 2856 background-image: none; 2857} 2858 2859.page-head-row.-top-bar.-bottomBorder { 2860 border-bottom: 1px solid #B7B7B7; 2861} 2862 2863.page-head-row.-top-bar:before { 2864 content: none; 2865} 2866 2867.page-head-row .pawPatrolLogo { 2868 position: absolute; 2869 height: 35px; 2870 top: -6px; 2871 padding-left: 7px; 2872} 2873 2874.page-head-row > .header-right-side { 2875 display: -webkit-flex; 2876 display: -ms-flexbox; 2877 display: flex; 2878 -webkit-justify-content: flex-end; 2879 -ms-flex-pack: end; 2880 justify-content: flex-end; 2881} 2882 2883.page-head-row > .header-middle-side { 2884 margin: 13px auto; 2885 font-size: 14px; 2886 height: 34px; 2887 top: 0; 2888 position: relative; 2889 left: 0; 2890} 2891 2892.page-head-row > .header-middle-side .js-countdown { 2893 font-family: Arial, Helvetica, sans-serif; 2894} 2895 2896.page-head-row > .header-middle-side a { 2897 color: #35B2B6; 2898 text-decoration: underline; 2899} 2900 2901.page-head-row > .header-right-side > .header-icon-update, 2902.page-head-row > .header-right-side > .header-icon-update-c { 2903 margin: 5px 15px 5px 0; 2904 text-align: center; 2905} 2906 2907.page-head-row > .header-right-side > .header-icon-update.-active > a, 2908.page-head-row > .header-right-side > .header-icon-update-c.-active > a { 2909 color: #35B2B6; 2910} 2911 2912.page-head-row > .header-right-side > .header-icon-update.-active > a > svg, 2913.page-head-row > .header-right-side > .header-icon-update-c.-active > a > svg { 2914 fill: #35B2B6; 2915} 2916 2917.page-head-row > .header-right-side > .header-icon-update > a, 2918.page-head-row > .header-right-side > .header-icon-update-c > a { 2919 text-decoration: none; 2920 color: #878787; 2921 display: block; 2922 position: relative; 2923} 2924 2925.page-head-row > .header-right-side > .header-icon-update > a:hover, 2926.page-head-row > .header-right-side > .header-icon-update-c > a:hover, 2927#flyTest:hover .pseudoTitle { 2928 color: #35B2B6; 2929} 2930 2931.page-head-row > .header-right-side > .header-icon-update > a:hover svg, 2932.page-head-row > .header-right-side > .header-icon-update-c > a:hover svg, 2933#flyTest:hover svg, 2934#flyTest .loggedIn svg { 2935 fill: #35B2B6; 2936} 2937 2938.page-head-row > .header-right-side > .header-icon-update-c .message-unread-counter-c { 2939 margin-top: -2px; 2940 margin-left: -5px; 2941} 2942 2943.page-head-row > .header-right-side > .header-icon-update > a .cart-notification, 2944.page-head-row > .header-right-side > .header-icon-update-c > a .cart-notification { 2945 font-size: 12px; 2946 height: 16px; 2947 width: 16px; 2948 background: #d40140; 2949 color: white; 2950 position: absolute; 2951 border-radius: 25px; 2952 display: grid;
2953 -webkit-justify-content: center; 2954 -ms-flex-pack: center; 2955 justify-content: center; 2956 -webkit-align-items: center; 2957 -ms-flex-align: center; 2958 align-items: center; 2959 top: 0; 2960 left: calc(50% + 8px); 2961} 2962 2963.page-head-row > .header-right-side > .header-icon-update > a > p, 2964.page-head-row > .header-right-side > .header-icon-update-c > a > p { 2965 font-size: 10px; 2966 margin-top: 0; 2967 line-height: 1.3; 2968} 2969 2970.page-head-row > .header-right-side > .header-icon-update > a > p:last-child, 2971.page-head-row > .header-right-side > .header-icon-update-c > a > p:last-child { 2972 margin-bottom: 0; 2973} 2974 2975.page-head-row > .header-right-side > .header-icon-update > a > svg, 2976.page-head-row > .header-right-side > .header-icon-update-c > a > svg, 2977.page-head-row > .header-right-side > .header-icon-c-update > a > svg { 2978 fill: #959596; 2979 margin-bottom: 4px; 2980 top: 4px; 2981 position: relative; 2982} 2983 2984.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC { 2985 margin: 5px 15px 5px 0 !important; 2986 width: 60px; 2987 text-align: center; 2988} 2989 2990.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC:hover.close.-active:before { 2991 background-image: none; 2992} 2993 2994.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .active { 2995 color: #35b2b6; 2996} 2997 2998.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .close { 2999 position: relative; 3000 width: 21px; 3001 height: 100%; 3002 padding: 0; 3003 margin: 0 auto; 3004 top: -16px; 3005} 3006 3007.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .close:hover:before { 3008 background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cpath fill='%2335b2b6' d='M184.1 153.3v20.3a7.2 7.2 0 01-7.3 7.3H22.5a7.3 7.3 0 01-7.4-7.3v-20.3a11.4 11.4 0 016.9-10l37.7-19.9a37 37 0 0033 20.8h13.9a37 37 0 0033-20.8l37.7 19.9a11.3 11.3 0 016.8 10z'/%3E%3Cpath fill='%2335b2b6' d='M99.5 23.3c25.7 0 38.1 12.6 40.4 31.3s-3 32.7-5 41-6.9 19.2-6.9 19.2c-2.2 8.6-11.2 14.7-21.6 14.7H92.7c-10.4 0-19.3-6.1-21.6-14.7 0 0-4.9-11-6.9-19.2s-7.1-23.7-5-41 14.7-31.3 40.4-31.3z'/%3E%3C/svg%3E"); 3009} 3010 3011.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .close.-active { 3012 background: #F9F9F9; 3013 border: 1px solid #E1E1E1; 3014 border-bottom: none; 3015 padding: 2px 0 0 18px !important; 3016 margin-left: 10px; 3017 width: 20px; 3018 height: 24px; 3019 box-sizing: content-box; 3020 top: 5px; 3021} 3022 3023.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .close.-active .pseudoTitle { 3024 color: #35B2B7; 3025} 3026 3027.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .close.-active .line { 3028 width: 100%; 3029 height: 2px; 3030 background: #F9F9F9; 3031 display: block; 3032 position: absolute; 3033 left: 0; 3034 top: 23px; 3035 z-index: 9; 3036} 3037 3038.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .close + p { 3039 font-size: 10px; 3040 margin-top: 0; 3041} 3042 3043.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .login-header-menu.-expanded.-configurator { 3044 display: inline-table !important; 3045} 3046 3047.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .login-header-menu.sub { 3048 min-width: 300px; 3049 margin-left: -250px; 3050 margin-top: 2px; 3051 left: 0; 3052 background-color: #F9F9F9; 3053 border: 1px solid #E1E1E1 !important; 3054 padding: 15px; 3055 z-index: 2; 3056 visibility: hidden; 3057 display: none; 3058 max-height: fit-content !important; 3059} 3060 3061.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .login-header-menu label { 3062 font-size: 16px; 3063 margin-bottom: 5px; 3064 display: block; 3065} 3066 3067 3068.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .login-header-menu .flyPassword { 3069 margin-bottom: 8px; 3070} 3071 3072.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .login-header-menu.-configurator { 3073 /* display: none !important; */ 3074 position: absolute; 3075} 3076 3077.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .-title { 3078 font-size: 10px; 3079 margin-top: 0; 3080 text-decoration: none; 3081 color: #878787; 3082 position: absolute; 3083 padding: 30px 10px 0 10px; 3084 top: -3px; 3085 font-weight: normal; 3086} 3087 3088.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .-title:before { 3089 display: none; 3090} 3091 3092.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .pseudoTitle { 3093 position: relative; 3094 font-size: 10px; 3095 color: grey; 3096 bottom: -31px; 3097 font-weight: normal; 3098 margin: auto; 3099 text-align: center; 3100 white-space: nowrap; 3101 display: flex; 3102 justify-content: space-around; 3103} 3104 3105.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC.openedFly .pseudoTitle { 3106 display: none !important; 3107} 3108 3109.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .pseudoTitle:hover {
3110 color: #35b2b6; 3111} 3112 3113.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .pseudoTitle.loggedIn { 3114 color: #35b2b6; 3115} 3116 3117.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .login-header-menu.sub.-sub-links { 3118 padding: 0 !important; 3119} 3120 3121.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .login-header-menu.sub.-sub-links .heading { 3122 font-size: 20px; 3123 margin: unset; 3124 padding: 15px; 3125 padding-bottom: 0; 3126} 3127 3128.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .login-header-menu.sub.-sub-links .login-link { 3129 font-size: 16px; 3130 cursor: pointer; 3131} 3132 3133.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .login-header-menu.sub.-sub-links .login-link:not(:last-child) { 3134 border-bottom: 1px solid #E1E1E1; 3135} 3136 3137.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .login-header-menu.sub.-sub-links .login-link a { 3138 color: #4A4A4A; 3139 text-decoration: none; 3140 padding: 15px; 3141 display: inline-block; 3142 width: 100%; 3143 max-width: 270px; 3144} 3145 3146.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .login-header-menu.sub.-sub-links .login-link a #unreadMsgCountHeaderMenu { 3147 margin-left: 8px; 3148 margin-top: 0; 3149} 3150 3151.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .login-header-menu.sub.-sub-links .login-link a.active { 3152 color: #35b2b6; 3153 font-weight: 700; 3154} 3155 3156.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .accordion-panel { 3157 background-color: transparent; 3158 border: none; 3159 margin-top: -10px; 3160 height: 100%; 3161} 3162 3163.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .accordion-panel > .title.-expandable.close:not(.-active):before { 3164 display: none; 3165} 3166.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .accordion-panel > .title.-expandable.close svg { 3167 width: 20px; 3168 height: 25px; 3169 position: relative; 3170 /* background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cpath fill='%23959596' d='M184.1 153.3v20.3a7.2 7.2 0 01-7.3 7.3H22.5a7.3 7.3 0 01-7.4-7.3v-20.3a11.4 11.4 0 016.9-10l37.7-19.9a37 37 0 0033 20.8h13.9a37 37 0 0033-20.8l37.7 19.9a11.3 11.3 0 016.8 10z'/%3E%3Cpath fill='%23959596' d='M99.5 23.3c25.7 0 38.1 12.6 40.4 31.3s-3 32.7-5 41-6.9 19.2-6.9 19.2c-2.2 8.6-11.2 14.7-21.6 14.7H92.7c-10.4 0-19.3-6.1-21.6-14.7 0 0-4.9-11-6.9-19.2s-7.1-23.7-5-41 14.7-31.3 40.4-31.3z'/%3E%3C/svg%3E"); */ 3171 border-style: none; 3172 top: 6px; 3173 fill: #878787; 3174 left: 0; 3175 margin-top: 0; 3176 background-repeat: no-repeat; 3177 padding: 0; 3178 transform: none; 3179} 3180.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .accordion-panel > .title.-expandable.close.close.-active svg { 3181 display: none; 3182} 3183 3184.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .accordion-panel > .title.-expandable.close.-active:before { 3185 background-image: none; 3186 border-style: none; 3187 transform: rotate(45deg); 3188 top: 2px; 3189 left: 18px; 3190 margin-top: 0; 3191 width: 3px; 3192 height: 21px; 3193 padding: 0; 3194} 3195 3196.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .close.-active:before, 3197.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .close.-active:after { 3198 position: absolute; 3199 content: ' '; 3200 height: 21px; 3201 width: 3px; 3202 background-color: #35B2B7; 3203 display: block; 3204 margin-left: -1px; 3205 top: 2px; 3206} 3207 3208.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .text-left .text-center { 3209 font-size: 20px; 3210 margin: unset; 3211 padding-bottom: 15px; 3212} 3213 3214.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .text-left input { 3215 height: 40px; 3216 line-height: 40px; 3217} 3218.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .text-left input:focus { 3219 outline: 0; 3220 border-color: #35b2b6; 3221} 3222.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .text-left input.-fullbleed { 3223 width: 100%; 3224} 3225.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .text-left input.-shy { 3226 padding: 5px; 3227 border: 1px solid #e1e1e1; 3228} 3229 3230.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .text-left button { 3231 height: 40px; 3232 font-size: 16px; 3233 padding: 4px 20px; 3234} 3235 3236.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .text-left a.button, 3237.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .text-left a { 3238 display: block; 3239} 3240 3241.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC.-lang { 3242 margin: 10px 35px 0 28px !important; 3243} 3244 3245.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC.-lang:hover.close.-active:before { 3246 background-image: none; 3247} 3248 3249.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC.-lang .active { 3250 color: #35b2b6; 3251} 3252 3253.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC.-lang .close { 3254 position: absolute; 3255 width: 16px; 3256 height: 21px; 3257 padding: 2px 0 0 15px; 3258} 3259 3260.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC.-lang .close:hover:before { 3261 background-image: url("data:image/svg+xml,%3Csvg width='20px' height='20px' viewBox='0 0 20 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Ctitle%3E0AE976CE-F534-4C63-9050-32AE92578D51%3C/title%3E%3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Cg id='MFDE_LanguageSelector_German_Default-(D)' transform='translate(-773.000000, -89.000000)' fill='%2335b2b6' fill-rule='nonzero'%3E%3Cg id='Group-2' transform='translate(760.000000, 89.000000)'%3E%3Cg id='Group' transform='translate(13.000000, 0.000000)'%3E%3Cpath d='M6.785,2.31323333 C6.02399811,3.08418703 5.42174655,3.99703654 5.01240833,5 L3.34925,5 C4.23694724,3.81652992 5.42244328,2.88946851 6.785,2.31323333 L6.785,2.31323333 Z M2.36735,6.66666667 L4.49885,6.66666667 C4.3228985,7.48938027 4.21917069,8.32589485 4.18885,9.16666667 L1.70893333,9.16666667 C1.79580469,8.30393627 2.01799864,7.46026858 2.36735,6.66666667 L2.36735,6.66666667 Z M2.3
32616735,13.3333333 C2.01799864,12.5397314 1.79580469,11.6960637 1.70893333,10.8333333 L4.18884167,10.8333333 C4.21916236,11.6741052 4.32289017,12.5106197 4.49884167,13.3333333 L2.36735,13.3333333 Z M3.34925,15 L5.01240833,15 C5.42174655,16.0029635 6.02399811,16.915813 6.785,17.6867667 C5.42244328,17.1105315 4.23694724,16.1834701 3.34925,15 Z M9.16666667,17.5503 C8.20108552,16.8919554 7.40096094,16.0190829 6.82891667,15 L9.16666667,15 L9.16666667,17.5503 Z M9.16666667,13.3333333 L6.19593333,13.3333333 C5.99544507,12.5141021 5.88045779,11.6762873 5.85281667,10.8333333 L9.16666667,10.8333333 L9.16666667,13.3333333 Z M9.16666667,9.16666667 L5.85281667,9.16666667 C5.88045779,8.3237127 5.99544507,7.48589794 6.19593333,6.66666667 L9.16666667,6.66666667 L9.16666667,9.16666667 Z M9.16666667,5 L6.82891667,5 C7.40096094,3.98091712 8.20108552,3.10804461 9.16666667,2.4497 L9.16666667,5 Z M16.65075,5 L14.9874167,5 C14.5779228,3.99692846 13.9755118,3.08399408 13.21435,2.312975 C14.5771665,2.88919636 15.7628967,3.81635461 16.65075,5 L16.65075,5 Z M10.8333333,2.44985 C11.798754,3.10824154 12.5987772,3.98104546 13.1708333,5 L10.8333333,5 L10.8333333,2.44985 Z M10.8333333,6.66666667 L13.8039667,6.66666667 C14.004492,7.48589376 14.1195128,8.32370891 14.1471833,9.16666667 L10.8333333,9.16666667 L10.8333333,6.66666667 Z M10.8333333,10.8333333 L14.1471833,10.8333333 C14.1195128,11.6762911 14.004492,12.5141062 13.8039667,13.3333333 L10.8333333,13.3333333 L10.8333333,10.8333333 Z M10.8333333,17.55015 L10.8333333,15 L13.1708333,15 C12.5987772,16.0189545 11.798754,16.8917585 10.8333333,17.55015 L10.8333333,17.55015 Z M13.2143667,17.687025 C13.9755285,16.9160059 14.5779395,16.0030715 14.9874333,15 L16.6507667,15 C15.7629134,16.1836454 14.5771832,17.1108036 13.2143667,17.687025 Z M17.6327,13.3333333 L15.5011,13.3333333 C15.6770971,12.5106258 15.7808447,11.674109 15.8111583,10.8333333 L18.2910667,10.8333333 C18.2042165,11.6960619 17.9820393,12.5397304 17.6327,13.3333333 L17.6327,13.3333333 Z M15.8111583,9.16666667 C15.7808447,8.32589103 15.6770971,7.48937415 15.5011,6.66666667 L17.6327,6.66666667 C17.9820278,7.46027154 18.2041938,8.30393988 18.2910333,9.16666667 L15.8111583,9.16666667 Z M20,10 C20,4.4771525 15.5228475,0 10,0 C4.4771525,0 0,4.4771525 0,10 C0,15.5228475 4.4771525,20 10,20 C12.6521649,20 15.195704,18.9464316 17.0710678,17.0710678 C18.9464316,15.195704 20,12.6521649 20,10 Z' id='globe'%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E"); 3262} 3263 3264.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC.-lang .close.-active { 3265 background: #F9F9F9; 3266 border: 1px solid #E1E1E1; 3267 border-bottom: none; 3268 padding: 2px 0 0 15px !important; 3269 margin-left: -6px; 3270} 3271 3272.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC .close.-active:after { 3273 transform: rotate(-45deg); 3274} 3275 3276.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC.-lang .close.-active .pseudoTitle { 3277 color: #35B2B7; 3278} 3279 3280.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC.-lang .close.-active .line { 3281 width: 100%; 3282 height: 2px; 3283 background: #F9F9F9; 3284 display: block; 3285 position: absolute; 3286 left: 0; 3287 top: 23px; 3288 z-index: 9; 3289} 3290 3291.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC.-lang .close + p { 3292 font-size: 10px; 3293 margin-top: 0; 3294} 3295 3296.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC.-lang .lang-header-menu.-expanded { 3297 visibility: visible !important; 3298 display: inline-table !important; 3299} 3300 3301.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC.-lang .lang-header-menu.-expanded.-configurator { 3302 display: inline-table !important; 3303} 3304 3305.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC.-lang .lang-header-menu.sub { 3306 min-width: 100px; 3307 margin-left: -40px; 3308 margin-top: 24px; 3309 left: 0; 3310 background-color: #f9f9f9; 3311 border: 1px solid #e1e1e1 !important; 3312 padding: 7px 0 !important; 3313 z-index: 2; 3314 visibility: hidden; 3315 display: none; 3316} 3317 3318.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC.-lang .lang-header-menu .languageButton { 3319 display: block; 3320 color: #4A4A4A; 3321 font-size: 14px; 3322 line-height: 20px; 3323 padding: 0 10px !important; 3324} 3325 3326.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC.-lang .lang-header-menu .languageButton.weglot-link--active { 3327 font-weight: bold; 3328 color: #35b2b6; 3329} 3330 3331.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC.-lang .lang-header-menu .languageBorder { 3332 background-color: #E1E1E1; 3333 display: block; 3334 width: 100%; 3335 height: 1px; 3336 border: none; 3337} 3338 3339.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC.-lang .lang-header-menu label { 3340 font-size: 16px; 3341} 3342 3343.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC.-lang .-title { 3344 font-size: 10px; 3345 margin-top: 0; 3346 text-decoration: none; 3347 color: #878787; 3348 position: absolute; 3349 padding: 30px 10px 0 10px; 3350 top: -3px; 3351 font-weight: normal; 3352} 3353 3354.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC.-lang .-title:before { 3355 display: none; 3356} 3357 3358.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC.-lang .pseudoTitle { 3359 position: absolute; 3360 font-size: 10px; 3361 margin-top: 0; 3362 color: grey; 3363 left: -14px; 3364 top: 27px; 3365 font-weight: normal; 3366 white-space: nowrap; 3367} 3368 3369.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC.-lang .pseudoTitle:hover {
3370 color: #35b2b6; 3371} 3372 3373.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC.-lang .pseudoTitle.loggedIn { 3374 left: -20px; 3375 color: #35b2b6; 3376} 3377 3378.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC.-lang .accordion-panel { 3379 background-color: transparent; 3380 border: none; 3381 margin-top: -10px; 3382} 3383 3384.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC.-lang .accordion-panel > .title.-expandable.close:before { 3385 content: ''; 3386 width: 20px; 3387 height: 25px; 3388 background-image: url("data:image/svg+xml,%3Csvg width='20px' height='20px' viewBox='0 0 20 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Ctitle%3E0AE976CE-F534-4C63-9050-32AE92578D51%3C/title%3E%3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Cg id='MFDE_LanguageSelector_German_Default-(D)' transform='translate(-773.000000, -89.000000)' fill='%23878787' fill-rule='nonzero'%3E%3Cg id='Group-2' transform='translate(760.000000, 89.000000)'%3E%3Cg id='Group' transform='translate(13.000000, 0.000000)'%3E%3Cpath d='M6.785,2.31323333 C6.02399811,3.08418703 5.42174655,3.99703654 5.01240833,5 L3.34925,5 C4.23694724,3.81652992 5.42244328,2.88946851 6.785,2.31323333 L6.785,2.31323333 Z M2.36735,6.66666667 L4.49885,6.66666667 C4.3228985,7.48938027 4.21917069,8.32589485 4.18885,9.16666667 L1.70893333,9.16666667 C1.79580469,8.30393627 2.01799864,7.46026858 2.36735,6.66666667 L2.36735,6.66666667 Z M2.36735,13.3333333 C2.01799864,12.5397314 1.79580469,11.6960637 1.70893333,10.8333333 L4.18884167,10.8333333 C4.21916236,11.6741052 4.32289017,12.5106197 4.49884167,13.3333333 L2.36735,13.3333333 Z M3.34925,15 L5.01240833,15 C5.42174655,16.0029635 6.02399811,16.915813 6.785,17.6867667 C5.42244328,17.1105315 4.23694724,16.1834701 3.34925,15 Z M9.16666667,17.5503 C8.20108552,16.8919554 7.40096094,16.0190829 6.82891667,15 L9.16666667,15 L9.16666667,17.5503 Z M9.16666667,13.3333333 L6.19593333,13.3333333 C5.99544507,12.5141021 5.88045779,11.6762873 5.85281667,10.8333333 L9.16666667,10.8333333 L9.16666667,13.3333333 Z M9.16666667,9.16666667 L5.85281667,9.16666667 C5.88045779,8.3237127 5.99544507,7.48589794 6.19593333,6.66666667 L9.16666667,6.66666667 L9.16666667,9.16666667 Z M9.16666667,5 L6.82891667,5 C7.40096094,3.98091712 8.20108552,3.10804461 9.16666667,2.4497 L9.16666667,5 Z M16.65075,5 L14.9874167,5 C14.5779228,3.99692846 13.9755118,3.08399408 13.21435,2.312975 C14.5771665,2.88919636 15.7628967,3.81635461 16.65075,5 L16.65075,5 Z M10.8333333,2.44985 C11.798754,3.10824154 12.5987772,3.98104546 13.1708333,5 L10.8333333,5 L10.8333333,2.44985 Z M10.8333333,6.66666667 L13.8039667,6.66666667 C14.004492,7.48589376 14.1195128,8.32370891 14.1471833,9.16666667 L10.8333333,9.16666667 L10.8333333,6.66666667 Z M10.8333333,10.8333333 L14.1471833,10.8333333 C14.1195128,11.6762911 14.004492,12.5141062 13.8039667,13.3333333 L10.8333333,13.3333333 L10.8333333,10.8333333 Z M10.8333333,17.55015 L10.8333333,15 L13.1708333,15 C12.5987772,16.0189545 11.798754,16.8917585 10.8333333,17.55015 L10.8333333,17.55015 Z M13.2143667,17.687025 C13.9755285,16.9160059 14.5779395,16.0030715 14.9874333,15 L16.6507667,15 C15.7629134,16.1836454 14.5771832,17.1108036 13.2143667,17.687025 Z M17.6327,13.3333333 L15.5011,13.3333333 C15.6770971,12.5106258 15.7808447,11.674109 15.8111583,10.8333333 L18.2910667,10.8333333 C18.2042165,11.6960619 17.9820393,12.5397304 17.6327,13.3333333 L17.6327,13.3333333 Z M15.8111583,9.16666667 C15.7808447,8.32589103 15.6770971,7.48937415 15.5011,6.66666667 L17.6327,6.66666667 C17.9820278,7.46027154 18.2041938,8.30393988 18.2910333,9.16666667 L15.8111583,9.16666667 Z M20,10 C20,4.4771525 15.5228475,0 10,0 C4.4771525,0 0,4.4771525 0,10 C0,15.5228475 4.4771525,20 10,20 C12.6521649,20 15.195704,18.9464316 17.0710678,17.0710678 C18.9464316,15.195704 20,12.6521649 20,10 Z' id='globe'%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E"); 3389 border-style: none; 3390 top: inherit; 3391 left: 0; 3392 margin-top: 0; 3393 background-repeat: no-repeat; 3394 background-color: transparent; 3395} 3396 3397.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC.-lang .accordion-panel > .title.-expandable.close.loggedIn:before { 3398 background-image: url("data:image/svg+xml,%3Csvg width='20px' height='20px' viewBox='0 0 20 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Ctitle%3E0AE976CE-F534-4C63-9050-32AE92578D51%3C/title%3E%3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Cg id='MFDE_LanguageSelector_German_Default-(D)' transform='translate(-773.000000, -89.000000)' fill='%23878787' fill-rule='nonzero'%3E%3Cg id='Group-2' transform='translate(760.000000, 89.000000)'%3E%3Cg id='Group' transform='translate(13.000000, 0.000000)'%3E%3Cpath d='M6.785,2.31323333 C6.02399811,3.08418703 5.42174655,3.99703654 5.01240833,5 L3.34925,5 C4.23694724,3.81652992 5.42244328,2.88946851 6.785,2.31323333 L6.785,2.31323333 Z M2.36735,6.66666667 L4.49885,6.66666667 C4.3228985,7.48938027 4.21917069,8.32589485 4.18885,9.16666667 L1.70893333,9.16666667 C1.79580469,8.30393627 2.01799864,7.46026858 2.36735,6.66666667 L2.36735,6.66666667 Z M2.3
33986735,13.3333333 C2.01799864,12.5397314 1.79580469,11.6960637 1.70893333,10.8333333 L4.18884167,10.8333333 C4.21916236,11.6741052 4.32289017,12.5106197 4.49884167,13.3333333 L2.36735,13.3333333 Z M3.34925,15 L5.01240833,15 C5.42174655,16.0029635 6.02399811,16.915813 6.785,17.6867667 C5.42244328,17.1105315 4.23694724,16.1834701 3.34925,15 Z M9.16666667,17.5503 C8.20108552,16.8919554 7.40096094,16.0190829 6.82891667,15 L9.16666667,15 L9.16666667,17.5503 Z M9.16666667,13.3333333 L6.19593333,13.3333333 C5.99544507,12.5141021 5.88045779,11.6762873 5.85281667,10.8333333 L9.16666667,10.8333333 L9.16666667,13.3333333 Z M9.16666667,9.16666667 L5.85281667,9.16666667 C5.88045779,8.3237127 5.99544507,7.48589794 6.19593333,6.66666667 L9.16666667,6.66666667 L9.16666667,9.16666667 Z M9.16666667,5 L6.82891667,5 C7.40096094,3.98091712 8.20108552,3.10804461 9.16666667,2.4497 L9.16666667,5 Z M16.65075,5 L14.9874167,5 C14.5779228,3.99692846 13.9755118,3.08399408 13.21435,2.312975 C14.5771665,2.88919636 15.7628967,3.81635461 16.65075,5 L16.65075,5 Z M10.8333333,2.44985 C11.798754,3.10824154 12.5987772,3.98104546 13.1708333,5 L10.8333333,5 L10.8333333,2.44985 Z M10.8333333,6.66666667 L13.8039667,6.66666667 C14.004492,7.48589376 14.1195128,8.32370891 14.1471833,9.16666667 L10.8333333,9.16666667 L10.8333333,6.66666667 Z M10.8333333,10.8333333 L14.1471833,10.8333333 C14.1195128,11.6762911 14.004492,12.5141062 13.8039667,13.3333333 L10.8333333,13.3333333 L10.8333333,10.8333333 Z M10.8333333,17.55015 L10.8333333,15 L13.1708333,15 C12.5987772,16.0189545 11.798754,16.8917585 10.8333333,17.55015 L10.8333333,17.55015 Z M13.2143667,17.687025 C13.9755285,16.9160059 14.5779395,16.0030715 14.9874333,15 L16.6507667,15 C15.7629134,16.1836454 14.5771832,17.1108036 13.2143667,17.687025 Z M17.6327,13.3333333 L15.5011,13.3333333 C15.6770971,12.5106258 15.7808447,11.674109 15.8111583,10.8333333 L18.2910667,10.8333333 C18.2042165,11.6960619 17.9820393,12.5397304 17.6327,13.3333333 L17.6327,13.3333333 Z M15.8111583,9.16666667 C15.7808447,8.32589103 15.6770971,7.48937415 15.5011,6.66666667 L17.6327,6.66666667 C17.9820278,7.46027154 18.2041938,8.30393988 18.2910333,9.16666667 L15.8111583,9.16666667 Z M20,10 C20,4.4771525 15.5228475,0 10,0 C4.4771525,0 0,4.4771525 0,10 C0,15.5228475 4.4771525,20 10,20 C12.6521649,20 15.195704,18.9464316 17.0710678,17.0710678 C18.9464316,15.195704 20,12.6521649 20,10 Z' id='globe'%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E"); 3399} 3400 3401.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC.-lang .accordion-panel > .title.-expandable.close.-active:before { 3402 background-image: none; 3403 -webkit-transform: none !important; 3404 -ms-transform: none !important; 3405 transform: none !important; 3406 border-style: none; 3407 top: inherit; 3408 left: initial; 3409 margin-top: 0; 3410 width: 3px; 3411 height: inherit; 3412} 3413 3414.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC.-lang .close.-active:before, 3415.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC.-lang .close.-active:after { 3416 position: absolute; 3417 content: ' '; 3418 height: 21px; 3419 width: 3px; 3420 background-color: #35B2B7; 3421 display: block; 3422 margin-top: -1px; 3423 margin-left: -1px; 3424} 3425 3426 3427.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC.-lang .text-left .text-center { 3428 font-size: 20px; 3429 margin: unset; 3430 padding-bottom: 10px; 3431} 3432 3433 3434.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC.-lang .text-left input { 3435 height: 40px; 3436 line-height: 40px; 3437} 3438 3439.page-head-row > .header-right-side > .header-icon-c-update.-flyMenuC.-lang .text-left button { 3440 height: 40px; 3441 font-size: 16px; 3442 padding: 4px 20px; 3443} 3444 3445 3446.page-head-row > .brand { 3447 display: inline-block; 3448 width: unset; 3449 height: 20px; 3450 margin: 20px 0; 3451} 3452 3453.page-head-row > .nav { 3454 display: inline-block; 3455 margin-bottom: 10px; 3456 margin-top: 10px; 3457 height: 12px; 3458 padding-top: 3px; 3459 padding-bottom: 5px; 3460 width: 100%; 3461 padding: 0; 3462 margin: 20px 0; 3463} 3464 3465.page-head-row>.nav a { 3466 padding-top: 10px; 3467 display: inline-block; 3468} 3469 3470.page-head-row>.nav .action { 3471 padding: 0; 3472 margin-right: 0; 3473} 3474 3475.page-head-row>.nav .action:before, 3476.primary-nav .action:before { 3477 border-top: 8px solid #878787; 3478 border-left: 8px solid transparent; 3479 border-right: 8px solid transparent; 3480 bottom: -26px; 3481} 3482 3483.page-head-row>.nav .action:after, 3484.primary-nav .action:after { 3485 border-top: 8px solid #FFF; 3486 border-left: 8px solid transparent; 3487 border-right: 8px solid transparent; 3488 bottom: -25px; 3489} 3490 3491.page-head-row > .nav .-neu { 3492 color: #D40140; 3493} 3494 3495 3496.page-head-row > .nav .space-between { 3497 display: flex; 3498 justify-content: unset; 3499 gap: 40px; 3500} 3501 3502.page-head-row > .nav li { 3503 position: relative; 3504 margin-right: 0; 3505} 3506 3507.page-head-row > .nav .space-between:before { 3508 content: none; 3509} 3510 3511 3512.page-head-row > .meta { 3513 font-size: 12px; 3514 float: right; 3515 top: 0; 3516 margin-top: 0; 3517 position: absolute; 3518 right: -5px; 3519} 3520 3521 3522.page-head-row > .meta .icon.user { 3523 height: 18px; 3524 width: 18px; 3525 fill: currentColor; 3526 position: relative; 3527 top: -2px; 3528 pointer-events: auto; 3529} 3530 3531 3532.page-head-row > .meta > .nav li { 3533 padding: 0 10px; 3534} 3535 3536 3537.page-head-row > .meta > .nav li.user { 3538 position: relative; 3539} 3540 3541 3542.page-head-row > .meta > .nav li.user:after {
3543 content: ""; 3544 display: block; 3545 position: absolute; 3546 top: 3px; 3547 bottom: 2px; 3548 right: 0; 3549 width: 1px; 3550 background-color: #dbdbdb; 3551} 3552 3553 3554.page-head-row > .meta > .nav li a { 3555 display: block; 3556} 3557 3558 3559.page-head-row > .meta > .nav li.hilfe-kontakt { 3560 padding: 0px; 3561 font-weight: 700; 3562 display: none; 3563} 3564 3565 3566.page-head-row > .meta > .nav li.hilfe-kontakt:after { 3567 content: none; 3568} 3569 3570 3571.page-head-row > .meta > .nav li:last-of-type { 3572 padding-right: 0; 3573} 3574 3575 3576.page-head-row > .meta > .nav li.-active:hover { 3577 color: #35B2B6; 3578} 3579 3580 3581.page-head-row > .meta > .nav ul.cart-list { 3582 display: block; 3583 float: right; 3584 margin-top: 14px; 3585} 3586 3587 3588.page-head-row > .meta > .nav ul.cart-list .versand-24h { 3589 font-size: 11px; 3590 margin-right: 10px; 3591} 3592 3593 3594.page-head-row > .meta > .nav ul.cart-list .send24 { 3595 display: inline-block; 3596 width: 20px; 3597 height: 19px; 3598 background: url(/assets/img/icons/24hr-icon.png); 3599 background-repeat: no-repeat; 3600 vertical-align: middle; 3601} 3602 3603 3604.page-head-row > .meta .cart { 3605 position: relative; 3606 width: 21px; 3607 height: 18px; 3608 top: -2px; 3609 margin-right: 2px; 3610 vertical-align: bottom; 3611 fill: currentColor; 3612 pointer-events: auto; 3613} 3614 3615 3616.page-head-row > .meta span#cartcount { 3617 padding: 0 5px; 3618 -moz-box-sizing: border-box; 3619 box-sizing: border-box; 3620 text-align: center; 3621 position: absolute; 3622 top: 2px; 3623 right: -4px; 3624 display: table; 3625 height: 16px; 3626 min-width: 16px; 3627 line-height: 16px; 3628 font-size: 10px; 3629 font-weight: bold; 3630 color: #ffffff; 3631 background-color: #D40140; 3632 border-radius: 8px; 3633} 3634 3635 3636.trusted-seals { 3637 display: inline-block; 3638} 3639 3640 3641.trusted-seals .ekomi-seal { 3642 background: url(/assets/img/trust/ekomi-seal.png); 3643 position: relative; 3644 top: 3px; 3645 width: 38px; 3646 background-size: contain; 3647 background-repeat: no-repeat; 3648 overflow: hidden; 3649 height: 38px; 3650 text-indent: -333em; 3651 display: inline-block; 3652 margin: 0 5px; 3653} 3654 3655 3656.trusted-seals .trusted-seal { 3657 background: url(/assets/img/trust/trustedshops-seal.png); 3658 position: relative; 3659 top: 3px; 3660 width: 38px; 3661 background-size: contain; 3662 background-repeat: no-repeat; 3663 overflow: hidden; 3664 height: 38px; 3665 text-indent: -333em; 3666 display: inline-block; 3667 margin: 0 5px; 3668} 3669 3670 3671.page-head-sub { 3672 position: absolute; 3673 width: 100%; 3674 min-width: 1020px; 3675 background-color: #f2f2f0; 3676 background-color: rgba(242, 242, 240, 0.95); 3677 padding: 34px 0 0 0; 3678 -webkit-transform-origin: top center; 3679 -ms-transform-origin: top center; 3680 transform-origin: top center; 3681 -webkit-transform: translateY(-100%); 3682 -ms-transform: translateY(-100%); 3683 transform: translateY(-100%); 3684 transition: -webkit-transform 0.5s; 3685 transition: transform 0.5s; 3686 transition: transform 0.5s, -webkit-transform 0.5s; 3687 z-index: 1; 3688} 3689 3690 3691.no-csstransforms .page-head-sub { 3692 visibility: hidden; 3693} 3694 3695 3696.page-head-sub.-expanded { 3697 -webkit-transform: translateY(0); 3698 -ms-transform: translateY(0); 3699 transform: translateY(0); 3700 display: block; 3701} 3702 3703 3704.no-csstransforms .page-head-sub.-expanded { 3705 visibility: visible; 3706} 3707 3708 3709.page-head-sub-row { 3710 padding: 0; 3711 -moz-box-sizing: border-box; 3712 box-sizing: border-box; 3713 position: relative; 3714 transition: height 0.2s; 3715 min-height: 122px; 3716} 3717 3718 3719.page-head-sub-row > .subnav { 3720 position: absolute; 3721 top: 0; 3722 left: 0; 3723 right: 0; 3724} 3725 3726.page-head-sub-row > .subnav .moreItems .item { 3727 width: 125px; 3728 margin-right: 20px; 3729} 3730 3731.page-head-sub-row > .subnav ul:first-of-type { 3732 margin-bottom: 30px; 3733} 3734 3735.page-head-sub-row > .subnav ul:last-of-type { 3736 margin-bottom: 0; 3737} 3738 3739.page-head-sub-row > .subnav .item.ref-mixpix { 3740 position: relative; 3741} 3742 3743.page-head-sub-row > .subnav .item .-round { 3744 position: relative; 3745} 3746 3747.page-head-sub-row.bigger { 3748 height: 244px; 3749 box-sizing: content-box; 3750 padding-bottom: 30px; 3751} 3752.page-head-sub-row.two-rows { 3753 height: 264px; 3754 box-sizing: content-box; 3755} 3756.page-head-sub-row.three-rows { 3757 height: 406px; 3758 box-sizing: content-box; 3759} 3760.page-head-sub-row.four-rows { 3761 height: 548px; 3762 box-sizing: content-box; 3763} 3764 3765.page-head-sub-row > .subnav .item, 3766.secondary-nav .item { 3767 display: block; 3768 width: 130px; 3769 margin-right: 30px; 3770} 3771 3772.page-head-sub-row > .subnav .title, 3773.secondary-nav .title { 3774 display: table-cell; 3775 width: 125px; 3776 vertical-align: middle; 3777 height: auto; 3778} 3779 3780.page-head-sub-row > .subnav .subnavitem:before, 3781.secondary-nav .subnavitem:before { 3782 content: ''; 3783 display: block; 3784 width: 130px; 3785 height: 78px; 3786 opacity: .8; 3787 background-repeat: no-repeat; 3788 margin-bottom: 8px; 3789} 3790 3791.-red { 3792 color: #D40140 !important; 3793} 3794.subnav .-red { 3795 color: #D40140 !important; 3796 font-size: 12px !important; 3797} 3798 3799.page-head-row>.nav li.-expandable:before { 3800 display: none; 3801} 3802 3803.mittext-red { 3804 color: #D40140; 3805 font-size: 11px; 3806} 3807 3808.topbar-wrapper { 3809 background-position: center center; 3810 background-repeat: no-repeat; 3811 background-size: cover; 3812 z-index: 202; 3813 position: relative; 3814 color: #F6E6B0; 3815} 3816 3817.header-bar.-earlyblackFriday.-mxDE, 3818.header-bar.-earlyblackFridayMobile.-mxDE { 3819 color: #35B2B6; 3820} 3821 3822.header-right-side div.checkoutShippingText { 3823 margin: 20px 15px 20px 0 !important; 3824 width: 150px; 3825 text-align: center; 3826} 3827 3828.topbar-wrapper .header-bar.-topbannerDeal { 3829 color: inherit; 3830} 3831 3832 .header-bar.-topbannerDeal { 3833 min-height: 40px; 3834 min-width: auto; 3835 height: 40px; 3836 padding: 0; 3837 font-size: 24px; 3838 line-height: 24px; 3839 font-weight: 700; 3840 padding-top: 8px; 3841 width: 100%; 3842 color: #fff; 3843 text-align: center; 3844 } 3845 3846 .page-head-row > .brand { 3847 left: -10px; 3848 position: relative; 3849 } 3850 3851 .page-head-row > .brand .logo.MOFR, 3852 .page-head-row > .brand .logo.MPAU { 3853 width: 240px; 3854 } 3855 3856 .page-head-row > .nav .space-between { 3857 gap: 37px; 3858 } 3859 3860 .page-head-row > .nav .space-between.MFDE { 3861 justify-content: space-between; 3862 gap: 0; 3863 } 3864 3865 .desktop #topbar-wrapper.amazonDeal { 3866 display: flex; 3867 padding: 10px; 3868 gap: 15px; 3869 align-items: center; 3870 } 3871 3872 .desktop #topbar-wrapper.amazonDeal #topbannerDeal.amazonDeal { 3873 width: fit-content; 3874 } 3875 3876 .desktop #topbar-wrapper.amazonDeal #header-bar { 3877 height: 21px; 3878 line-height: 21px; 3879 white-space: nowrap; 3880 } 3881 3882 #topbar-wrapper.amazonDeal #topbannerDeal { 3883 margin-left: auto; 3884 } 3885 #topbar-wrapper.amazonDeal #header-bar { 3886 margin-right: auto; 3887 } 3888 3889 #topbar-wrapper.amazonDeal .header-bar { 3890 color: #232F3E; 3891 font-weight: 700; 3892 } 3893 3894 #topbar-wrapper.amazonDeal.notUK .header-bar svg { 3895 width: 110px; 3896 height: 32px; 3897 position: relative; 3898 top: -4px; 3899 } 3900 3901 /* RESPONSIVE HEIGHT */ 3902 3903 .page-head-row > .nav .space-between { 3904 gap: 27px !important; 3905 row-gap: 27px !important; 3906 column-gap: 27px !important; 3907 } 3908 3909 .page-head-row>.nav .action { 3910 white-space: nowrap; 3911 } 3912 .page-head-sub, 3913 .page-head-sub-row, 3914 .page-head-sub-row > .subnav, 3915 .page-head-sub-row > .subnav ul, 3916 .page-head-sub-row, .page-head-sub-row.wider { 3917 height: fit-content !important; 3918 } 3919 .js-exn-sub.subnav.-visible { 3920 position: relative; 3921 } 3922 3923 /* NAV BADGES */ 3924 3925 .page-head-row > .nav { 3926 margin: 10px 0 30px 0; 3927 } 3928 3929 .page-head-row>.nav .action { 3930 height: 40px !important; 3931 line-height: 1; 3932 } 3933 3934 .page-head-row .js-exn-btn, 3935 .page-head-row a.action { 3936 padding-top: 10px !important; 3937 display: block; 3938 } 3939 3940 .nav .redNav { 3941 color: #D40140 !important; 3942 } 3943 .nav .blueNavLight { 3944 color: #35b2b6 !important; 3945 font-weight: 400; 3946 } 3947 .MPUK .nav .blueNavLight { 3948 display: none; 3949 } 3950 .newBadge { 3951 display: block; 3952 position: relative; 3953 } 3954 .newBadge .navbadge { 3955 display: block !important; 3956 position: absolute; 3957 top: -15px; 3958 right: 0; 3959 } 3960 3961 .navBadgePaw { 3962 background-image: url(/components/header/img/nav-badges/nav-badge-paw-patrol.svg); 3963 background-position: right top; 3964 background-repeat: no-repeat; 3965 padding-right: 40px !important; 3966 background-size: 30px 30px; 3967 height: 40px; 3968 display: table-cell; 3969 padding-top: 10px !important; 3970 } 3971 .navBadgePeppa { 3972 background-image: url(/components/header/img/nav-badges/nav-badge-peppa-pig.svg); 3973 background-position: right top; 3974 background-repeat: no-repeat; 3975 padding-right: 40px !important; 3976 background-size: 30px 30px; 3977 height: 40px; 3978 display: table-cell; 3979 padding-top: 10px !important; 3980 } 3981 .navBadgeSale { 3982 background-image: url(/components/header/img/nav-badges/nav-badge-sale-CSUS.svg); 3983 background-position: right top; 3984 background-repeat: no-repeat; 3985 padding-right: 40px !important; 3986 background-size: 30px 30px; 3987 height: 40px; 3988 display: table-cell; 3989 padding-top: 10px !important; 3990 } 3991 .navBadgeNew { 3992 background-image: url(/components/header/img/nav-badges/nav-badge-new.svg); 3993 background-position: right top; 3994 background-repeat: no-repeat; 3995 padding-right: 40px !important; 3996 background-size: 30px 30px; 3997 height: 40px; 3998 display: table-cell; 3999 padding-top: 10px !important; 4000 } 4001 .navBadgeNeu { 4002 background-image: url(/components/header/img/nav-badges/nav-badge-neu.svg); 4003 background-position: right top; 4004 background-repeat: no-repeat; 4005 padding-right: 40px !important; 4006 background-size: 30px 30px; 4007 height: 40px; 4008 display: table-cell; 4009 padding-top: 10px !important; 4010 } 4011 .navBadgeUrlaub { 4012 background-image: url(/components/header/img/nav-badges/nav-badge-urlaub.svg); 4013 background-position: right center; 4014 background-repeat: no-repeat; 4015 padding-right: 40px !important; 4016 background-size: 30px 30px; 4017 height: 40px; 4018 display: table-cell; 4019 padding-top: 10px !important; 4020 } 4021 .navBadgeUSA { 4022 background-image: url(/components/header/img/nav-badges/nav-badge-usa.svg); 4023 background-position: right top; 4024 background-repeat: no-repeat; 4025 padding-right: 40px !important; 4026 background-size: 36px; 4027 display: table-cell; 4028 padding-top: 10px !important; 4029 } 4030 4031 .page-head-row>.nav .action:after, .primary-nav .action:after { 4032 border-top: 8px solid #FFF; 4033 border-left: 8px solid transparent; 4034 border-right: 8px solid transparent; 4035 bottom: -10px !important; 4036 } 4037 .page-head-row>.nav .action:before, .primary-nav .action:before { 4038 border-top: 8px solid #878787; 4039 border-left: 8px solid transparent; 4040 border-right: 8px solid transparent; 4041 bottom: -10px !important; 4042 } 4043 4044 .header-icon-update.siteSearchAlternative > a > svg.icon { 4045 top: 8px; 4046 margin-bottom: 15px; 4047 margin-left: 13px; 4048 } 4049 4050 #footer-scroll-top.scroll-top {text-align: center; background-color: #858383; color: #fff; font-size: 14px; font-weight: 700; padding: 8px 15px;} 4051 #footer-scroll-top.scroll-top a { 4052 color: white; 4053 text-decoration: none; 4054 } 4055 #footer-scroll-top.scroll-top a:after { 4056 content: ''; 4057 display: inline-block; 4058 width: 9px; 4059 height: 12px; 4060 background-image: url("data:image/svg+xml,%3Csvg width='9' height='13' viewBox='0 0 9 13' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.84349 4.99358L7.75625 6.0809C7.73245 6.1047 7.7042 6.12358 7.67311 6.13646C7.64201 6.14934 7.60869 6.15597 7.57503 6.15597C7.54138 6.15597 7.50805 6.14934 7.47696 6.13646C7.44587 6.12358 7.41762 6.1047 7.39382 6.0809L5.52501 4.21205V11.9875C5.52501 12.1234 5.47101 12.2538 5.3749 12.3499C5.27878 12.446 5.14843 12.5 5.0125 12.5H3.98749C3.85156 12.5 3.7212 12.446 3.62509 12.3499C3.52898 12.2538 3.47498 12.1234 3.47498 11.9875V4.21205L1.60617 6.0809C1.58237 6.1047 1.55412 6.12358 1.52303 6.13646C1.49193 6.14934 1.45861 6.15597 1.42495 6.15597C1.3913 6.15597 1.35797 6.14934 1.32688 6.13646C1.29579 6.12358 1.26754 6.1047 1.24374 6.0809L0.1565 4.99358C0.132702 4.96979 0.113825 4.94155 0.100945 4.91046C0.0880653 4.87938 0.0814362 4.84606 0.0814362 4.81241C0.0814362 4.77876 0.0880653 4.74544 0.100945 4.71436C0.113825 4.68327 0.132702 4.65503 0.1565 4.63124L4.13763 0.650054C4.23375 0.553974 4.3641 0.5 4.50001 0.5C4.63593 0.5 4.76628 0.553974 4.8624 0.650054L8.84349 4.63122C8.86729 4.65501 8.88617 4.68325 8.89905 4.71434C8.91193 4.74543 8.91856 4.77875 8.91856 4.8124C8.91856 4.84605 8.91193 4.87937 8.89905 4.91046C8.88617 4.94155 8.86729 4.96979 8.84349 4.99358Z' fill='white'/%3E%3C/svg%3E"); 4061 background-size: cover; 4062 background-repeat: no-repeat; 4063 margin-left: 8px; 4064 margin-top: -5px; 4065 vertical-align: middle; 4066 } 4067 4068 </style> 4069
4069<script src="/components/header/js/flyMenu.js" defer="defer" type="text/javascript"></script>
4069 4070 4071 <header id="header-v2" style="" class="MAES page-head newScroller"> 4072 <div class="page-head-bar"> 4073 <div class="page-head-row -top-bar -bottomBorder"> 4074 4075 <p class="sr">mi-arte.es</p> 4076 <a href="https://www.mi-arte.es/" class="brand clickable" aria-label="Logo" style="display: inline-block; background: transparent url('/components/header/img/logos/MAES.svg') no-repeat left center; background-size: contain; width: 230px; height: 22px; margin-left: 15px;"> 4077 </a> 4078 4079 <div class="header-right-side"><div class="header-icon-update orderStatusIcon"> 4080 <a href="/estado-de-orden/" class="clickable"> 4081 4082 <svg role="presentation" class="icon" width="30" height="25" xmlns="http://www.w3.org/2000/svg"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 282.6 200"><path d="M271.5 142.9c0-10.9-1.7-26.7-3.7-32.6s-17.4-11.7-17.4-11.7l-27-34.4a6.8 6.8 0 00-5.5-2.6h-28.7a4.5 4.5 0 00-4.5 4.4v70.7h-6.8V46.1c0-4.3-3.1-6.2-6.9-6.2H64.7c-3.8 0-6.9 2.8-6.9 6.2V154a6.4 6.4 0 006.4 6.4h12v-.5a27.3 27.3 0 0154.6 0v.5h66.8c0-.2-.1-.4-.1-.6a27.4 27.4 0 1154.7 0v.6h17.5a32 32 0 003.5-13.6c0-2-1.7-1.5-1.7-3.9zm-36.9-43h-42.3V69h25.9l18.2 24.4c3.6 4.8 2.8 6.5-1.8 6.5z"></path><path d="M103.5 140.6a19.3 19.3 0 1019.3 19.3 19.3 19.3 0 00-19.3-19.3zM224.9 140.4a19.4 19.4 0 1019.3 19.4 19.4 19.4 0 00-19.3-19.4zM49.8 57.9H14.5a7 7 0 100 14h35.3zM49.8 85.8H25.4a7 7 0 100 14h24.4zM49.8 113.7H36.3a7 7 0 100 14h13.5z"></path></svg> 4083 </svg> 4084 <p>El estado de orden</p> 4085 </a></div><div class="header-icon-update helpIcon"> 4086 <a href="/ayuda/" class="clickable"> 4087 4088 <svg role="presentation" class="icon" width="20" height="25" xmlns="http://www.w3.org/2000/svg"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200"><path d="M100.7 186.1a84.7 84.7 0 0013.2-1c39.4-5.9 70.5-38.9 74-78.6a87.5 87.5 0 00-95-95.2c-39.7 3.4-72.9 34.6-78.7 74a86.1 86.1 0 008.5 52.8l-8.9 33.2A11.4 11.4 0 0028 185.5l33.2-8.9a86.2 86.2 0 0039.5 9.5zm15.3-57.9v14.6a7.3 7.3 0 01-7.3 7.3H94.1a7.3 7.3 0 01-7.3-7.3v-14.6a7.3 7.3 0 017.3-7.3h14.6a7.3 7.3 0 017.3 7.3zM130.2 77c1.6 22-13 21.6-15.5 33.4a4.2 4.2 0 01-4 3.2H90.9a3.7 3.7 0 01-3.6-4.2c2-16.5 18.7-17.1 19.1-28.4.1-4.9-4.1-7.5-8.6-7.6a11.1 11.1 0 00-10.5 7.8 4.4 4.4 0 01-4.1 3.2H69.3a3.3 3.3 0 01-3.4-3.6c1.7-16.6 15.1-30.6 32-30.6 15.4-.1 30.9 7.8 32.3 26.8z"></path></svg> 4089 </svg> 4090 <p>Ayuda y Contacto</p> 4091 </a></div><div id="flyMenuC" class="header-icon-c-update -flyMenuC pRelative "><dl id="flyTest" style="overflow: visible; margin-top: 2px;" class="accordion-panel -new js-accordion pRelative"> 4092 <div> 4093 <span class="pseudoTitle "> 4094 Iniciar sesión 4095 </span> 4096 </div><dt id="headIcon" class="title js-accordion-title -expandable close "> 4097 4098 <svg role="presentation" class="icon" width="30" height="25" xmlns="http://www.w3.org/2000/svg"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200"><path d="M184.1 153.3v20.3a7.2 7.2 0 01-7.3 7.3H22.5a7.3 7.3 0 01-7.4-7.3v-20.3a11.4 11.4 0 016.9-10l37.7-19.9a37 37 0 0033 20.8h13.9a37 37 0 0033-20.8l37.7 19.9a11.3 11.3 0 016.8 10z"></path><path d="M99.5 23.3c25.7 0 38.1 12.6 40.4 31.3s-3 32.7-5 41-6.9 19.2-6.9 19.2c-2.2 8.6-11.2 14.7-21.6 14.7H92.7c-10.4 0-19.3-6.1-21.6-14.7 0 0-4.9-11-6.9-19.2s-7.1-23.7-5-41 14.7-31.3 40.4-31.3z"></path></svg> 4099 </svg> 4100 <span class="line"></span><div id="unreadMsgCountTopHeader" style="display: none;" class="message-unread-counter-c MAES-desktop"> 4101 <link rel="stylesheet" type="text/css" href="/css/accountinbox-unread-counter.css" media="print" onload="this.media='all'" /> 4102
4102<script>document.getElementsByClassName("message-unread-counter-c")[0].style.display = "none";</script>
4102</div></dt> 4103 <style> 4104 dd.flyMenusSub.sub.js-accordion-body.pAbsolute.login-header-menu.-expanded { 4105 max-height: fit-content !important; 4106 } 4107 .dAlignCenter { 4108 align-items: center; 4109 } 4110 .password-toggle { 4111 display: none; 4112 } 4113 #loginFormFlying input[type="password"], #loginFormFlying input[type="email"] { 4114 cursor: text; 4115 } 4116 .password-field.relative { 4117 position: relative; 4118 } 4119 </style> 4120 4121 <dd class="flyMenusSub sub js-accordion-body pAbsolute login-header-menu "><form id="loginFormFlying" name="loginFormFlying" method="post" action="/blog.jsf" class="js-form-validate" enctype="application/x-www-form-urlencoded"><div id="loginFormFlying:j_id_1k_b_a"></div> 4122 4123 <div class="text-left"> 4124 <div class="text-center" style="margin-top: 0;"><strong>Iniciar sesión</strong></div> 4125 4126 <div class="d-m-b-15 t-m-b-15 p-p-b-15"><label class="label" for="loginFormFlying:username"><strong>Email</strong></label><input id="loginFormFlying:username" name="loginFormFlying:username" value="" onfocus="this.placeholder = ''" onblur="this.placeholder = 'Correo electrónico'" class="input -fullbleed -shy -emailInput clickable" placeholder="Correo electrónico" type="email" /> 4127 </div> 4128 4129 <div class="flyPassword"><label class="label" for="loginFormFlying:password"><strong>Contraseña</strong></label> 4130 <div class="password-field relative"><input type="password" id="loginFormFlying:password" name="loginFormFlying:password" class="input -fullbleed -shy -passwordInput clickable" placeholder="Contraseña" /> 4131 </div> 4132 </div> 4133 4134 <span class="small"> 4135 <a href="/requestpassword.jsf" class="-green requestpassword clickable">¿Has olvidado tu contraseña?</a> 4136 </span><div onclick="checkDisabledButton();" id="flyMenuFakeButton" class="js-du-button -action button -secondary -arrow -span-12 d-m-t-15 d-m-b-15 t-m-t-15 t-m-b-15 p-m-b-15 p-m-t-15 clickable"> 4137 Iniciar sesión 4138 </div><a href="#" onclick="jsf.util.chain(this, event,'jsf.ajax.request(this,event,{execute:\'loginFormFlying \',render:\'flyTest \',onevent:ajaxEventHandler,\'jakarta.faces.behavior.event\':\'action\'})'); return false;" id="loginFormFlying:loginCommandLink" name="loginFormFlying:loginCommandLink" class="hidden">Iniciar sesión</a> 4139 <div class="g-recaptcha" data-badge="bottomleft" data-sitekey="6Ldi-eMUAAAAAI-waS30CdRFaRZXb_dCIh_NP404" data-expired-callback="onExpired" data-error-callback="onError" data-callback="onSubmit" data-size="invisible"> 4140 </div> 4141 4142 <span class="dFlex dAlignCenter noaccount clickable"> 4143 ¿Aún no tiene cuenta? 4144 4145 <a href="/registro.jsf" class="-green">RegÃstrese ahora</a> 4146 </span> 4147 4148 </div><input type="hidden" name="loginFormFlying_SUBMIT" value="1" /><input type="hidden" name="jakarta.faces.ViewState" id="j_id__v_0:jakarta.faces.ViewState:1" value="YzNjZGNiZjVkMDZjNWVmNjAwMDAwMDAx" autocomplete="off" /></form> 4149
4149<script> 4150 function togglePasswordVisibility(button) { 4151 try { 4152 var wrapper = button.closest('.password-field'); 4153 if (!wrapper) { return; } 4154 var input = wrapper.querySelector('input[type="password"], input[type="text"]'); 4155 if (!input) { return; } 4156 var isHidden = input.type === 'password'; 4157 input.type = isHidden ? 'text' : 'password'; 4158 wrapper.classList.toggle('-shown', isHidden); 4159 button.setAttribute('aria-label', isHidden ? 'Hide password' : 'Show password'); 4160 } catch (e) {} 4161 } 4162 </script>
4162 4163 </dd></dl></div><div id="cartIcon" class="header-icon-update "> 4164 <a href="/shoppingcart.jsf" class="clickable"> 4165 4166 <svg role="presentation" class="icon" width="20" height="25" xmlns="http://www.w3.org/2000/svg"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200"><path d="M81.7 173.2a11 11 0 11-11-11 11 11 0 0111 11zm62.5-11a11 11 0 1011 11 11.1 11.1 0 00-11-11zm47.5-118.9L177 109.5a11 11 0 01-10.8 8.6H72.7l3.2 14.7h79.3a7.3 7.3 0 017.3 7.3v7.4a7.3 7.3 0 01-7.3 7.3H67a10.9 10.9 0 01-10.7-8.6L32.4 37.3H15.6a7.4 7.4 0 01-7.4-7.4v-7.3a7.4 7.4 0 017.4-7.4h25.7a11 11 0 0110.8 8.7l1.3 6h127.5a11 11 0 018.6 4.1 11.3 11.3 0 012.2 9.3z"></path></svg> 4167 </svg><span id="cartcount" class="hidden">0</span> 4168 <p>Carrito</p> 4169 </a></div> 4170 4171 </div> 4172 </div> 4173 <style type="text/css"> 4174 .page-head-sub-row { 4175 left: -14px; 4176 } 4177 .page-head-sub-row > .subnav ul { 4178 display: flex; 4179 flex-wrap: wrap; 4180 align-items: center; 4181 justify-content: center; 4182 } 4183 .page-head-sub-row > .subnav ul li { 4184 margin: 0 6px 20px 6px !important; 4185 } 4186 .page-head-sub-row > .subnav .item { 4187 min-height: 122px; 4188 } 4189 .page-head-sub-row > .subnav .item .title { 4190 padding-top: 8px; 4191 } 4192 </style><div class="page-head-row"><nav data-exn-target=".js-expanded-nav" data-exn-toggles=".js-exn-btn" data-close-delay="100" class="nav js-expandable-nav" aria-label="nav"> 4193 <ul class="space-between"> 4194 <li class="-expandable"> 4195 <a href="/decoracion-de-pared/" class="js-exn-btn action null" data-exn-group="/decoracion-de-pared/4283"><span>DECORACIÃN DE PARED</span></a> 4196 </li> 4197 <li class="-expandable"> 4198 <a href="/home-lifestyle/" class="js-exn-btn action null" data-exn-group="/home-lifestyle/4284"><span>HOME & LIFESTYLE</span></a> 4199 </li> 4200 <li class="-expandable"> 4201 <a href="/foto-regalos/" class="js-exn-btn action null" data-exn-group="/foto-regalos/4282"><span>FOTO REGALOS</span></a> 4202 </li> 4203 <li class="-expandable"> 4204 <a href="/libros-de-fotos/" class="js-exn-btn action null" data-exn-group="/libros-de-fotos/10255"><span>FOTOLIBRO</span></a> 4205 </li> 4206 <li class=""> 4207 <a href="/informacion-de-envio/" class=" action blueNavLight" data-exn-group="/informacion-de-envio/4303"><span>¡A partir de 60 ⬠envÃo GRATIS!</span></a> 4208 </li> 4209 <li class=""> 4210 <a href="/ofertas-especiales" class=" action redNav" data-exn-group="/ofertas-especiales8554"><span>Ofertas Especiales ð¥</span></a> 4211 </li> 4212 </ul></nav></div> 4213 </div><div class="page-head-sub js-expanded-nav"> 4214 <div class="page-head-sub-row"> 4215 <nav class="js-exn-sub subnav" data-exn-name="/decoracion-de-pared/4283" aria-label="nav"> 4216 <ul> 4217 <li class="item"> 4218 <a href="/decoracion-de-pared/foto-en-lienzo.jsf" class="leinwand"> 4219 <img src="/components/header/img/categories/nav/leinwand-2x.webp" data-src="/components/header/img/categories/nav/leinwand-2x.webp" alt="FOTO EN LIENZO" width="100%" height="75px" class="lazyload" style="display: inline;" /> 4220 <div class="title">FOTO EN LIENZO</div> 4221 <span class="navbadge -red" style="display: none;"><strong>NUEVO</strong></span> 4222 </a> 4223 </li> 4224 <li class="item"> 4225 <a href="/decoracion-de-pared/foto-en-metacrilato.jsf" class="_acryl"> 4226 <img src="/components/header/img/categories/nav/_acryl-2x.webp" data-src="/components/header/img/categories/nav/_acryl-2x.webp" alt="FOTO EN METACRILATO" width="100%" height="75px" class="lazyload" style="display: inline;" /> 4227 <div class="title">FOTO EN METACRILATO</div> 4228 <span class="navbadge -red" style="display: none;"><strong>NUEVO</strong></span> 4229 </a> 4230 </li> 4231 <li class="item"> 4232 <a href="/decoracion-de-pared/foto-en-aluminio.jsf" class="aluminium"> 4233 <img src="/components/header/img/categories/nav/aluminium-2x.webp" data-src="/components/header/img/categories/nav/aluminium-2x.webp" alt="FOTO EN ALUMINIO" width="100%" height="75px" class="lazyload" style="display: inline;" /> 4234 <div class="title">
4234FOTO EN ALUMINIO</div> 4235 <span class="navbadge -red" style="display: none;"><strong>NUEVO</strong></span> 4236 </a> 4237 </li> 4238 <li class="item"> 4239 <a href="/decoracion-de-pared/foto-enmarcada.jsf" class="forex-frame"> 4240 <img src="/components/header/img/categories/nav/forex-frame-2x.webp" data-src="/components/header/img/categories/nav/forex-frame-2x.webp" alt="FOTO ENMARCADA" width="100%" height="75px" class="lazyload" style="display: inline;" /> 4241 <div class="title">FOTO ENMARCADA</div> 4242 <span class="navbadge -red" style="display: none;"><strong>NUEVO</strong></span> 4243 </a> 4244 </li> 4245 <li class="item"> 4246 <a href="/decoracion-de-pared/foto-en-madera.jsf" class="wood"> 4247 <img src="/components/header/img/categories/nav/wood-2x.webp" data-src="/components/header/img/categories/nav/wood-2x.webp" alt="FOTO EN MADERA" width="100%" height="75px" class="lazyload" style="display: inline;" /> 4248 <div class="title">FOTO EN MADERA</div> 4249 <span class="navbadge -red" style="display: none;"><strong>NUEVO</strong></span> 4250 </a> 4251 </li> 4252 <li class="item"> 4253 <a href="/decoracion-de-pared/foto-en-tablero-de-fotos.jsf" class="forex"> 4254 <img src="/components/header/img/categories/nav/forex-2x.webp" data-src="/components/header/img/categories/nav/forex-2x.webp" alt="FOTO EN TABLERO DE FOTOS" width="100%" height="75px" class="lazyload" style="display: inline;" /> 4255 <div class="title">FOTO EN TABLERO DE FOTOS</div> 4256 <span class="navbadge -red" style="display: none;"><strong>NUEVO</strong></span> 4257 </a> 4258 </li> 4259 <li class="item"> 4260 <a href="/decoracion-de-pared/metacrilato-aluminio.jsf" class="acryl-aluminium"> 4261 <img src="/components/header/img/categories/nav/acryl-aluminium-2x.webp" data-src="/components/header/img/categories/nav/acryl-aluminium-2x.webp" alt="FOTO EN METACRILATO + ALUMINIO" width="100%" height="75px" class="lazyload" style="display: inline;" /> 4262 <div class="title">FOTO EN METACRILATO + ALUMINIO</div> 4263 <span class="navbadge -red" style="display: none;"><strong>NUEVO</strong></span> 4264 </a> 4265 </li> 4266 <li class="item"> 4267 <a href="/mixpix/" class="navi-mixpix"> 4268 <img src="/components/header/img/categories/nav/navi-mixpix-2x.webp" data-src="/components/header/img/categories/nav/navi-mixpix-2x.webp" alt="â¬ï¸ MIXPIX®" width="100%" height="75px" class="lazyload" style="display: inline;" /> 4269 <div class="title">â¬ï¸ MIXPIX®</div> 4270 <span class="navbadge -red" style="display: none;"><strong>NUEVO</strong></span> 4271 </a> 4272 </li> 4273 <li class="item"> 4274 <a href="/decoracion-de-pared/poster-personalizado.jsf" class="poster-navi"> 4275 <img src="/components/header/img/categories/nav/poster-navi-2x.webp" data-src="/components/header/img/categories/nav/poster-navi-2x.webp" alt="PÃSTER" width="100%" height="75px" class="lazyload" style="display: inline;" /> 4276 <div class="title">PÃSTER</div> 4277 <span class="navbadge -red" style="display: none;"><strong>NUEVO</strong></span> 4278 </a> 4279 </li> 4280 </ul> 4281 </nav> 4282 <nav class="js-exn-sub subnav" data-exn-name="/home-lifestyle/4284" aria-label="nav"> 4283 <ul> 4284 <li class="item"> 4285 <a href="/home-lifestyle/toalla-personalizada-con-foto.jsf" class="handtuch"> 4286 <img src="/components/header/img/categories/nav/handtuch-2x.webp" data-src="/components/header/img/categories/nav/handtuch-2x.webp" alt="TOALLA" width="100%" height="75px" class="lazyload" style="display: inline;" /> 4287 <div class="title">TOALLA</div>
4288 <span class="navbadge -red" style="display: none;"><strong>NUEVO</strong></span> 4289 </a> 4290 </li> 4291 <li class="item"> 4292 <a href="/home-lifestyle/manta-personalizada-con-foto.jsf" class="decke"> 4293 <img src="/components/header/img/categories/nav/decke-2x.webp" data-src="/components/header/img/categories/nav/decke-2x.webp" alt="MANTA" width="100%" height="75px" class="lazyload" style="display: inline;" /> 4294 <div class="title">MANTA</div> 4295 <span class="navbadge -red" style="display: none;"><strong>NUEVO</strong></span> 4296 </a> 4297 </li> 4298 <li class="item"> 4299 <a href="/home-lifestyle/cojin-personalizado-con-foto.jsf" class="kissen"> 4300 <img src="/components/header/img/categories/nav/kissen-2x.webp" data-src="/components/header/img/categories/nav/kissen-2x.webp" alt="COJÃNES" width="100%" height="75px" class="lazyload" style="display: inline;" /> 4301 <div class="title">COJÃNES</div> 4302 <span class="navbadge -red" style="display: none;"><strong>NUEVO</strong></span> 4303 </a> 4304 </li> 4305 <li class="item"> 4306 <a href="/home-lifestyle/foto-en-bloque-metacrilato.jsf" class="acrylblock"> 4307 <img src="/components/header/img/categories/nav/acrylblock-2x.webp" data-src="/components/header/img/categories/nav/acrylblock-2x.webp" alt="BLOQUE DE METACRILATO" width="100%" height="75px" class="lazyload" style="display: inline;" /> 4308 <div class="title">BLOQUE DE METACRILATO</div> 4309 <span class="navbadge -red" style="display: none;"><strong>NUEVO</strong></span> 4310 </a> 4311 </li> 4312 <li class="item"> 4313 <a href="/home-lifestyle/alfombras-felpudos-personalizados.jsf" class="teppich"> 4314 <img src="/components/header/img/categories/nav/teppich-2x.webp" data-src="/components/header/img/categories/nav/teppich-2x.webp" alt="ALFOMBRA/FELPUDO" width="100%" height="75px" class="lazyload" style="display: inline;" /> 4315 <div class="title">ALFOMBRA/FELPUDO</div> 4316 <span class="navbadge -red" style="display: none;"><strong>NUEVO</strong></span> 4317 </a> 4318 </li> 4319 <li class="item"> 4320 <a href="/home-lifestyle/bolsa-de-tela-personalizada.jsf" class="totebag"> 4321 <img src="/components/header/img/categories/nav/totebag-2x.webp" data-src="/components/header/img/categories/nav/totebag-2x.webp" alt="BOLSO TOTE" width="100%" height="75px" class="lazyload" style="display: inline;" /> 4322 <div class="title">BOLSO TOTE</div> 4323 <span class="navbadge -red" style="display: none;"><strong>NUEVO</strong></span> 4324 </a> 4325 </li> 4326 </ul> 4327 </nav> 4328 <nav class="js-exn-sub subnav" data-exn-name="/foto-regalos/4282" aria-label="nav"> 4329 <ul> 4330 <li class="item"> 4331 <a href="/foto-regalos/taza-personalizada-con-foto.jsf" class="tasse"> 4332 <img src="/components/header/img/categories/nav/tasse-2x.webp" data-src="/components/header/img/categories/nav/tasse-2x.webp" alt="TAZAS" width="100%" height="75px" class="lazyload" style="display: inline;" /> 4333 <div class="title">TAZAS</div>
4334 <span class="navbadge -red" style="display: none;"><strong>NUEVO</strong></span> 4335 </a> 4336 </li> 4337 <li class="item"> 4338 <a href="/foto-regalos/mixmags-imanes-personalizados.jsf" class="mixmagx-navi newBadge"> 4339 <img src="/components/header/img/categories/nav/mixmagx-navi-2x.webp" data-src="/components/header/img/categories/nav/mixmagx-navi-2x.webp" alt="IMANES" width="100%" height="75px" class="lazyload" style="display: inline;" /> 4340 <div class="title">IMANES</div> 4341 <span class="navbadge -red" style="display: none;"><strong>NUEVO</strong></span> 4342 </a> 4343 </li> 4344 <li class="item"> 4345 <a href="/foto-regalos/alfombrilla-raton-personalizada.jsf" class="mousepad"> 4346 <img src="/components/header/img/categories/nav/mousepad-2x.webp" data-src="/components/header/img/categories/nav/mousepad-2x.webp" alt="ALFOMBRILLA DE RATÃN" width="100%" height="75px" class="lazyload" style="display: inline;" /> 4347 <div class="title">ALFOMBRILLA DE RATÃN</div> 4348 <span class="navbadge -red" style="display: none;"><strong>NUEVO</strong></span> 4349 </a> 4350 </li> 4351 <li class="item"> 4352 <a href="/foto-regalos/foto-en-puzzle-personalizado.jsf" class="puzzle"> 4353 <img src="/components/header/img/categories/nav/puzzle-2x.webp" data-src="/components/header/img/categories/nav/puzzle-2x.webp" alt="PUZZLE" width="100%" height="75px" class="lazyload" style="display: inline;" /> 4354 <div class="title">PUZZLE</div> 4355 <span class="navbadge -red" style="display: none;"><strong>NUEVO</strong></span> 4356 </a> 4357 </li> 4358 <li class="item"> 4359 <a href="/foto-regalos/mapa-estelar-personalizado.jsf" class="starmap"> 4360 <img src="/components/header/img/categories/nav/starmap-2x.webp" data-src="/components/header/img/categories/nav/starmap-2x.webp" alt="MAPA ESTELAR" width="100%" height="75px" class="lazyload" style="display: inline;" /> 4361 <div class="title">MAPA ESTELAR</div> 4362 <span class="navbadge -red" style="display: none;"><strong>NUEVO</strong></span> 4363 </a> 4364 </li> 4365 <li class="item"> 4366 <a href="/foto-regalos/bloque-de-madera.jsf" class="woodblock-navi newBadge"> 4367 <img src="/components/header/img/categories/nav/woodblock-navi-2x.webp" data-src="/components/header/img/categories/nav/woodblock-navi-2x.webp" alt="BLOQUE DE MADERA" width="100%" height="75px" class="lazyload" style="display: inline;" /> 4368 <div class="title">BLOQUE DE MADERA</div> 4369 <span class="navbadge -red" style="display: none;"><strong>NUEVO</strong></span> 4370 </a> 4371 </li> 4372 <li class="item"> 4373 <a href="/foto-regalos/mixblox.jsf" class="mixblox newBadge"> 4374 <img src="/components/header/img/categories/nav/mixblox-2x.webp" data-src="/components/header/img/categories/nav/mixblox-2x.webp" alt="MIXBLOX" width="100%" height="75px" class="lazyload" style="display: inline;" /> 4375 <div class="title">MIXBLOX</div> 4376 <span class="navbadge -red" style="display: none;"><strong>NUEVO</strong></span> 4377 </a> 4378 </li> 4379 </ul> 4380 </nav> 4381 <nav class="js-exn-sub subnav" data-exn-name="/libros-de-fotos/10255" aria-label="nav"> 4382 <ul> 4383 <li class="item"> 4384 <a href="/libros-de-fotos.jsf" class="fotobuch-navi newBadge"> 4385 <img src="/components/header/img/categories/nav/fotobuch-navi-2x.webp" data-src="/components/header/img/categories/nav/fotobuch-navi-2x.webp" alt="FOTOLIBRO" width="100%" height="75px" class="lazyload" style="display: inline;" /> 4386 <div class="title">FOTOLIBRO</div>
4387 <span class="navbadge -red" style="display: none;"><strong>NUEVO</strong></span> 4388 </a> 4389 </li> 4390 </ul> 4391 </nav> 4392 <nav class="js-exn-sub subnav" data-exn-name="/informacion-de-envio/4303" aria-label="nav"> 4393 <ul> 4394 </ul> 4395 </nav> 4396 <nav class="js-exn-sub subnav" data-exn-name="/ofertas-especiales8554" aria-label="nav"> 4397 <ul> 4398 </ul> 4399 </nav> 4400 </div></div> 4401 </header> 4402 <div itemscope="itemscope" itemtype="http://schema.org/ItemList"> 4403 <link itemprop="url" href="https://www.mi-arte.es/blog/" class="vHidden" /> 4404 4405 <header class="page-hero -blog" id="header"> 4406 <div class="inner"> 4407 <h1 class="headline" itemprop="name">Blog de Canvas Wiki</h1> 4408 <div class="subtitle">Tu GuÃa de Confianza para Impresiones en Lienzo</div> 4409 </div> 4410 </header> 4411 4412 <section class="page-section -blog"> 4413 <div class="story-list" id="easyPaginate"> 4414 <article class="story" data-tags="" itemprop="itemListElement" itemscope="itemscope" itemtype="http://schema.org/ListItem"> 4415 <span itemprop="position" class="dNone">986</span> 4416 <div class="story-box"> 4417 <a href="blog/decoracion-pared-2026-cuadros-lienzo.jsf" class="img-wrapper"><img data-src="https://download.cdn-shop.com/media/web_images/es/blog/decoracion-pared-2026-cuadros-lienzo-teaser.jpg" src="https://download.cdn-shop.com/media/web_images/es/blog/decoracion-pared-2026-cuadros-lienzo-teaser.jpg" alt="article thumbnail image" class="image storyimg lazyload" /> 4418 </a> 4419 <header class="head"> 4420 <h3 class="title"><a itemprop="url" href="blog/decoracion-pared-2026-cuadros-lienzo.jsf"><span itemprop="name">Decoración de Pared 2026 | Cuadros en Lienzo & Ideas Deco</span></a></h3> 4421 </header> 4422 <div class="body"> 4423 <p class="subheadline">Descubre las mejores ideas de decoración de pared para 2026. Desde cuadros en lienzo hasta espejos decorativos, transforma tu hogar.</p> 4424 <p><a href="blog/decoracion-pared-2026-cuadros-lienzo.jsf" class="more">Leer más »</a></p> 4425 </div> 4426 </div> 4427 </article> 4428 <article class="story" data-tags="" itemprop="itemListElement" itemscope="itemscope" itemtype="http://schema.org/ListItem"> 4429 <span itemprop="position" class="dNone">987</span> 4430 <div class="story-box"> 4431 <a href="blog/frases-de-graduacion.jsf" class="img-wrapper"><img data-src="https://download.cdn-shop.com/media/web_images/es/blog/frases-de-graduacion-teaser.jpg" src="https://download.cdn-shop.com/media/web_images/es/blog/frases-de-graduacion-teaser.jpg" alt="article thumbnail image" class="image storyimg lazyload" /> 4432 </a> 4433 <header class="head"> 4434 <h3 class="title"><a itemprop="url" href="blog/frases-de-graduacion.jsf"><span itemprop="name">150+ Frases de Graduación Cortas y Bonitas 2026 </span></a></h3> 4435 </header> 4436 <div class="body"> 4437 <p class="subheadline">Frases de graduación cortas, felicitaciones y mensajes de orgullo para tarjetas, regalos y redes sociales. Conserva tus recuerdos con regalos foto personalizados.</p> 4438 <p><a href="blog/frases-de-graduacion.jsf" class="more">Leer más »</a></p> 4439 </div> 4440 </div> 4441 </article> 4442 <article class="story" data-tags="" itemprop="itemListElement" itemscope="itemscope" itemtype="http://schema.org/ListItem">
4443 <span itemprop="position" class="dNone">988</span> 4444 <div class="story-box"> 4445 <a href="blog/frases-san-valentin-romanticas.jsf" class="img-wrapper"><img data-src="https://download.cdn-shop.com/media/web_images/es/blog/frases-san-valentin-romanticas-teaser.jpg" src="https://download.cdn-shop.com/media/web_images/es/blog/frases-san-valentin-romanticas-teaser.jpg" alt="article thumbnail image" class="image storyimg lazyload" /> 4446 </a> 4447 <header class="head"> 4448 <h3 class="title"><a itemprop="url" href="blog/frases-san-valentin-romanticas.jsf"><span itemprop="name">75 Frases de San ValentÃn Románticas para Enamorar 2026</span></a></h3> 4449 </header> 4450 <div class="body"> 4451 <p class="subheadline">Descubre 75 frases románticas de San ValentÃn para él, ella y amigos. Encuentra frases bonitas de amor para expresar tus sentimientos.</p> 4452 <p><a href="blog/frases-san-valentin-romanticas.jsf" class="more">Leer más »</a></p> 4453 </div> 4454 </div> 4455 </article> 4456 <article class="story" data-tags="" itemprop="itemListElement" itemscope="itemscope" itemtype="http://schema.org/ListItem"> 4457 <span itemprop="position" class="dNone">989</span> 4458 <div class="story-box"> 4459 <a href="blog/como-cambiar-el-tamano-de-una-imagen.jsf" class="img-wrapper"><img data-src="https://download.cdn-shop.com/media/web_images/es/blog/como-cambiar-el-tamano-de-una-imagen-teaser.jpg" src="https://download.cdn-shop.com/media/web_images/es/blog/como-cambiar-el-tamano-de-una-imagen-teaser.jpg" alt="article thumbnail image" class="image storyimg lazyload" /> 4460 </a> 4461 <header class="head"> 4462 <h3 class="title"><a itemprop="url" href="blog/como-cambiar-el-tamano-de-una-imagen.jsf"><span itemprop="name">Cómo cambiar el tamaño de una imagen: Herramientas y tutoriales</span></a></h3> 4463 </header> 4464 <div class="body"> 4465 <p class="subheadline">Aprenda a cambiar el tamaño de las imágenes con herramientas gratuitas en lÃnea, asà como con software de edición como Photopea y Canva.</p> 4466 <p><a href="blog/como-cambiar-el-tamano-de-una-imagen.jsf" class="more">Leer más »</a></p> 4467 </div> 4468 </div> 4469 </article> 4470 <article class="story" data-tags="" itemprop="itemListElement" itemscope="itemscope" itemtype="http://schema.org/ListItem"> 4471 <span itemprop="position" class="dNone">990</span> 4472 <div class="story-box"> 4473 <a href="blog/tamanos-estandar-de-fotos.jsf" class="img-wrapper"><img data-src="https://download.cdn-shop.com/media/web_images/es/blog/tamanos-estandar-de-fotos-teaser.jpg" src="https://download.cdn-shop.com/media/web_images/es/blog/tamanos-estandar-de-fotos-teaser.jpg" alt="article thumbnail image" class="image storyimg lazyload" /> 4474 </a> 4475 <header class="head"> 4476 <h3 class="title"><a itemprop="url" href="blog/tamanos-estandar-de-fotos.jsf"><span itemprop="name">Tamaños estándar de fotos: GuÃa completa para todas tus necesidades</span></a></h3> 4477 </header> 4478 <div class="body"> 4479 <p class="subheadline">Descubre los tamaños de fotografÃa estándar como 10x15, 13x18 y más. Aprende cuál es cuál y elige las dimensiones perfectas para tus impresiones.</p> 4480 <p><a href="blog/tamanos-estandar-de-fotos.jsf" class="more">Leer más »</a></p> 4481 </div> 4482 </div> 4483 </article> 4484 <article class="story" data-tags="" itemprop="itemListElement" itemscope="itemscope" itemtype="http://schema.org/ListItem">
4485 <span itemprop="position" class="dNone">991</span> 4486 <div class="story-box"> 4487 <a href="blog/donde-imprimir-una-foto.jsf" class="img-wrapper"><img data-src="https://download.cdn-shop.com/media/web_images/es/blog/donde-imprimir-una-foto-teaser.jpg" src="https://download.cdn-shop.com/media/web_images/es/blog/donde-imprimir-una-foto-teaser.jpg" alt="article thumbnail image" class="image storyimg lazyload" /> 4488 </a> 4489 <header class="head"> 4490 <h3 class="title"><a itemprop="url" href="blog/donde-imprimir-una-foto.jsf"><span itemprop="name">¿Dónde imprimir una foto? 5 servicios de impresión populares </span></a></h3> 4491 </header> 4492 <div class="body"> 4493 <p class="subheadline">Descubre los mejores lugares para imprimir tus fotos. Te presentamos 5 servicios de impresión populares para garantizar calidad y opciones personalizadas.</p> 4494 <p><a href="blog/donde-imprimir-una-foto.jsf" class="more">Leer más »</a></p> 4495 </div> 4496 </div> 4497 </article> 4498 <article class="story" data-tags="" itemprop="itemListElement" itemscope="itemscope" itemtype="http://schema.org/ListItem"> 4499 <span itemprop="position" class="dNone">992</span> 4500 <div class="story-box"> 4501 <a href="blog/como-hacer-llaveros.jsf" class="img-wrapper"><img data-src="https://download.cdn-shop.com/media/web_images/es/blog/como-hacer-llaveros-teaser.jpg" src="https://download.cdn-shop.com/media/web_images/es/blog/como-hacer-llaveros-teaser.jpg" alt="article thumbnail image" class="image storyimg lazyload" /> 4502 </a> 4503 <header class="head"> 4504 <h3 class="title"><a itemprop="url" href="blog/como-hacer-llaveros.jsf"><span itemprop="name">Cómo hacer llaveros personalizados: La guÃa sencilla</span></a></h3> 4505 </header> 4506 <div class="body"> 4507 <p class="subheadline">Descubre cómo hacer llaveros personalizados de manera sencilla, ya sea encargándolos en lÃnea o creándolos tú mismo. ¡Encuentra ideas y consejos aquÃ!</p> 4508 <p><a href="blog/como-hacer-llaveros.jsf" class="more">Leer más »</a></p> 4509 </div> 4510 </div> 4511 </article> 4512 <article class="story" data-tags="" itemprop="itemListElement" itemscope="itemscope" itemtype="http://schema.org/ListItem"> 4513 <span itemprop="position" class="dNone">993</span> 4514 <div class="story-box"> 4515 <a href="blog/llaveros-para-parejas.jsf" class="img-wrapper"><img data-src="https://download.cdn-shop.com/media/web_images/es/blog/llaveros-para-parejas-teaser.jpg" src="https://download.cdn-shop.com/media/web_images/es/blog/llaveros-para-parejas-teaser.jpg" alt="article thumbnail image" class="image storyimg lazyload" /> 4516 </a> 4517 <header class="head"> 4518 <h3 class="title"><a itemprop="url" href="blog/llaveros-para-parejas.jsf"><span itemprop="name">Llaveros para parejas: Un sÃmbolo compartido de tu relación</span></a></h3> 4519 </header> 4520 <div class="body"> 4521 <p class="subheadline">Descubre los mejores estilos y diseños de llaveros para parejas. Un sÃmbolo compartido de su relación, perfectos para regalar y personalizar.</p> 4522 <p><a href="blog/llaveros-para-parejas.jsf" class="more">Leer más »</a></p> 4523 </div> 4524 </div> 4525 </article> 4526 <article class="story" data-tags="" itemprop="itemListElement" itemscope="itemscope" itemtype="http://schema.org/ListItem">
4527 <span itemprop="position" class="dNone">994</span> 4528 <div class="story-box"> 4529 <a href="blog/miarte-opiniones-revistas.jsf" class="img-wrapper"><img data-src="https://download.cdn-shop.com/media/web_images/es/blog/miarte-opiniones-revistas-teaser.jpg" src="https://download.cdn-shop.com/media/web_images/es/blog/miarte-opiniones-revistas-teaser.jpg" alt="article thumbnail image" class="image storyimg lazyload" /> 4530 </a> 4531 <header class="head"> 4532 <h3 class="title"><a itemprop="url" href="blog/miarte-opiniones-revistas.jsf"><span itemprop="name">MIARTE.es opiniones: Lo que la gente dice sobre nosotros</span></a></h3> 4533 </header> 4534 <div class="body"> 4535 <p class="subheadline">Las opiniones de MIARTE.es que se encuentran en las redes sociales pueden ser muy útiles a la hora de decidir qué producto pedir. 4536</p> 4537 <p><a href="blog/miarte-opiniones-revistas.jsf" class="more">Leer más »</a></p> 4538 </div> 4539 </div> 4540 </article> 4541 <article class="story" data-tags="" itemprop="itemListElement" itemscope="itemscope" itemtype="http://schema.org/ListItem"> 4542 <span itemprop="position" class="dNone">995</span> 4543 <div class="story-box"> 4544 <a href="blog/que-es-un-lienzo.jsf" class="img-wrapper"><img data-src="https://download.cdn-shop.com/media/web_images/es/blog/que-es-un-lienzo-teaser.jpg" src="https://download.cdn-shop.com/media/web_images/es/blog/que-es-un-lienzo-teaser.jpg" alt="article thumbnail image" class="image storyimg lazyload" /> 4545 </a> 4546 <header class="head"> 4547 <h3 class="title"><a itemprop="url" href="blog/que-es-un-lienzo.jsf"><span itemprop="name">¿Qué Es un Lienzo Impreso?: Todo Lo Que Necesitas Saber</span></a></h3> 4548 </header> 4549 <div class="body"> 4550 <p class="subheadline">¿Qué es un lienzo impreso y cómo se hace? Si te preguntas de qué están hechos los lienzos impresos, ten la seguridad de que no eres el único. 4551 4552</p> 4553 <p><a href="blog/que-es-un-lienzo.jsf" class="more">Leer más »</a></p> 4554 </div> 4555 </div> 4556 </article> 4557 <article class="story" data-tags="" itemprop="itemListElement" itemscope="itemscope" itemtype="http://schema.org/ListItem"> 4558 <span itemprop="position" class="dNone">995</span> 4559 <div class="story-box"> 4560 <a href="blog/como-enmarcar-un-lienzo.jsf" class="img-wrapper"><img data-src="https://download.cdn-shop.com/media/web_images/es/blog/como-enmarcar-un-lienzo-teaser.jpg" src="https://download.cdn-shop.com/media/web_images/es/blog/como-enmarcar-un-lienzo-teaser.jpg" alt="article thumbnail image" class="image storyimg lazyload" /> 4561 </a> 4562 <header class="head"> 4563 <h3 class="title"><a itemprop="url" href="blog/como-enmarcar-un-lienzo.jsf"><span itemprop="name">¿Cómo enmarcar un lienzo?</span></a></h3> 4564 </header> 4565 <div class="body"> 4566 <p class="subheadline">Si te preguntas cómo enmarcar un lienzo con foto, dedica 5 minutos a leer esta breve ayuda. Tiene todo lo que necesitas saber.</p> 4567 <p><a href="blog/como-enmarcar-un-lienzo.jsf" class="more">Leer más »</a></p> 4568 </div> 4569 </div> 4570 </article> 4571 <article class="story" data-tags="" itemprop="itemListElement" itemscope="itemscope" itemtype="http://schema.org/ListItem">
4572 <span itemprop="position" class="dNone">996</span> 4573 <div class="story-box"> 4574 <a href="blog/resolucion-para-imprimir-en-lienzo.jsf" class="img-wrapper"><img data-src="https://download.cdn-shop.com/media/web_images/es/blog/resolucion-para-imprimir-en-lienzo-teaser.jpg" src="https://download.cdn-shop.com/media/web_images/es/blog/resolucion-para-imprimir-en-lienzo-teaser.jpg" alt="article thumbnail image" class="image storyimg lazyload" /> 4575 </a> 4576 <header class="head"> 4577 <h3 class="title"><a itemprop="url" href="blog/resolucion-para-imprimir-en-lienzo.jsf"><span itemprop="name">Resolución para Imprimir en Lienzo: GuÃa Completa</span></a></h3> 4578 </header> 4579 <div class="body"> 4580 <p class="subheadline">¿Te preguntas cuál es la mejor resolución para impresiones en lienzo? Elegir la resolución adecuada para las impresiones en lienzo no es difÃcil.</p> 4581 <p><a href="blog/resolucion-para-imprimir-en-lienzo.jsf" class="more">Leer más »</a></p> 4582 </div> 4583 </div> 4584 </article> 4585 <article class="story" data-tags="" itemprop="itemListElement" itemscope="itemscope" itemtype="http://schema.org/ListItem"> 4586 <span itemprop="position" class="dNone">997</span> 4587 <div class="story-box"> 4588 <a href="blog/como-colgar-cuadros-sin-agujeros.jsf" class="img-wrapper"><img data-src="https://download.cdn-shop.com/media/web_images/es/blog/como-colgar-cuadros-sin-agujeros-teaser.jpg" src="https://download.cdn-shop.com/media/web_images/es/blog/como-colgar-cuadros-sin-agujeros-teaser.jpg" alt="article thumbnail image" class="image storyimg lazyload" /> 4589 </a> 4590 <header class="head"> 4591 <h3 class="title"><a itemprop="url" href="blog/como-colgar-cuadros-sin-agujeros.jsf"><span itemprop="name">¿Cómo colgar cuadros sin agujeros?</span></a></h3> 4592 </header> 4593 <div class="body"> 4594 <p class="subheadline">Muchos de vosotros nos habéis preguntado cómo colgar cuadros sin agujeros ni clavos, asà que hemos preparado esta completa guÃa para ayudaros.</p> 4595 <p><a href="blog/como-colgar-cuadros-sin-agujeros.jsf" class="more">Leer más »</a></p> 4596 </div> 4597 </div> 4598 </article> 4599 <article class="story" data-tags="" itemprop="itemListElement" itemscope="itemscope" itemtype="http://schema.org/ListItem"> 4600 <span itemprop="position" class="dNone">998</span> 4601 <div class="story-box"> 4602 <a href="blog/como-colgar-cuadros.jsf" class="img-wrapper"><img data-src="https://download.cdn-shop.com/media/web_images/es/blog/como-colgar-cuadros-teaser.jpg" src="https://download.cdn-shop.com/media/web_images/es/blog/como-colgar-cuadros-teaser.jpg" alt="article thumbnail image" class="image storyimg lazyload" /> 4603 </a> 4604 <header class="head"> 4605 <h3 class="title"><a itemprop="url" href="blog/como-colgar-cuadros.jsf"><span itemprop="name">Cómo Colgar un Cuadro Sin Complicaciones</span></a></h3> 4606 </header> 4607 <div class="body"> 4608 <p class="subheadline">¿Te preguntas cómo colgar tus impresiones en lienzo? No eres el único que no está seguro. Colgar un lienzo es en realidad una operación sencilla, pero siempre es mejor leer una guÃa confiable sobre cómo hacerlo antes de comenzar.</p> 4609 <p><a href="blog/como-colgar-cuadros.jsf" class="more">Leer más »</a></p> 4610 </div> 4611 </div> 4612 </article> 4613 <article class="story" data-tags="" itemprop="itemListElement" itemscope="itemscope" itemtype="http://schema.org/ListItem">
4614 <span itemprop="position" class="dNone">999</span> 4615 <div class="story-box"> 4616 <a href="blog/como-hacer-un-poster.jsf" class="img-wrapper"><img data-src="https://download.cdn-shop.com/media/web_images/es/blog/como-hacer-un-poster-teaser.jpg" src="https://download.cdn-shop.com/media/web_images/es/blog/como-hacer-un-poster-teaser.jpg" alt="article thumbnail image" class="image storyimg lazyload" /> 4617 </a> 4618 <header class="head"> 4619 <h3 class="title"><a itemprop="url" href="blog/como-hacer-un-poster.jsf"><span itemprop="name">¿Cómo Hacer un Póster a Partir de una Foto? </span></a></h3> 4620 </header> 4621 <div class="body"> 4622 <p class="subheadline">¿Te preguntas cómo hacer un póster a partir de una foto? Nada podrÃa ser más sencillo: ¡consulta nuestra guÃa y crea pósteres asombrosos en 5 minutos.</p> 4623 <p><a href="blog/como-hacer-un-poster.jsf" class="more">Leer más »</a></p> 4624 </div> 4625 </div> 4626 </article> 4627 </div> 4628 </section> 4629 4630 </div> 4631 4632 4633 4634 4635 <footer class="page-footer"><div class="page-footer-sitemap"> 4636 <div class="page-footer-sitemap"> 4637 <div class="column"> 4638 <span class="headline dBlock parent"><strong>mi-arte.es</strong></span> 4639 <ul class="link-list"> 4640 <li> 4641 <a href="/sobre-nosotros/" class="link" rel="follow" target="_self">Sobre Nosotros 4642 </a> 4643 </li> 4644 <li> 4645 <a href="/calidad/" class="link" rel="follow" target="_self">Calidad 4646 </a> 4647 </li> 4648 <li> 4649 <a href="/consejos-de-decoracion/" class="link" rel="follow" target="_self">El Mundo de la Decoración 4650 </a> 4651 </li> 4652 <li> 4653 <a href="/sostenibilidad/" class="link" rel="follow" target="_self">Sostenibilidad 4654 </a> 4655 </li> 4656 <li> 4657 <a href="/registro/" class="link" rel="follow" target="_self">Para Empresas 4658 </a> 4659 </li> 4660 <li> 4661 <a href="/blog/" class="link" rel="follow" target="_self">Blog de Canvas Wiki 4662 </a> 4663 </li> 4664 <li> 4665 <a href="/afiliados/" class="link" rel="follow" target="_self">Programa de Afiliados 4666 </a> 4667 </li> 4668 <li> 4669 <a href="/influencer/" class="link" rel="follow" target="_self">Programa de Influenciador 4670 </a> 4671 </li> 4672 </ul> 4673 </div> 4674 <div class="column"> 4675 <span class="headline dBlock parent"><strong>Servicios</strong></span> 4676 <ul class="link-list"> 4677 <li> 4678 <a href="/efectos/" class="link" rel="follow" target="_self">Efectos 4679 </a> 4680 </li> 4681 <li> 4682 <a href="/metodos-de-pago/" class="link" rel="follow" target="_self">Métodos de pago 4683 </a> 4684 </li> 4685 <li> 4686 <a href="javascript:void(0)" class="link" rel="follow" onclick="Modal.open('#bestPriceGuarantee');">GarantÃa del precio más bajo 4687 </a> 4688 </li> 4689 <li> 4690 <a href="/accesibilidad/" class="link" rel="follow" target="_self">Accesibilidad 4691 </a> 4692 </li> 4693 </ul> 4694 </div> 4695 <div class="column"> 4696 <span class="headline dBlock parent"><strong>Atención al cliente</strong></span> 4697 <ul class="link-list"> 4698 <li> 4699 <a href="/ayuda/" class="link" rel="follow" target="_self">Ayuda y Contacto 4700 </a> 4701 </li> 4702 <li> 4703 <a href="/estado-de-orden/" class="link" rel="follow" target="_self">El estado de orden 4704 </a> 4705 </li> 4706 <li> 4707 <a href="/formatos/" class="link" rel="follow" target="_self">Formatos y precios 4708 </a> 4709 </li> 4710 <li> 4711 <a href="/condiciones-generales/informacion-legal.jsf" class="link" rel="follow" target="_self">Condiciones Generales/ <br>Derecho de revocación/<br> Información legal 4712 </a> 4713 </li> 4714 <li> 4715 <a href="/politica-de-privacidad/" class="link" rel="follow" target="_self">PolÃtica de Privacidad 4716 </a> 4717 </li> 4718 <li>
4719 <a href="/politica-de-cookies/" class="link" rel="follow" target="_self">PolÃtica de cookies 4720 </a> 4721 </li> 4722 <li> 4723 <a href="/informacion-de-envio/" class="link" rel="noreferrer" target="_blank">Información de envÃo 4724 </a> 4725 </li> 4726 <li> 4727 <a href="/cliente/" class="link" rel="follow" target="_self">Iniciar sesión 4728 </a> 4729 </li> 4730 </ul> 4731 </div> 4732 <div class="column"> 4733 <span class="headline dBlock parent"><strong>Productos</strong></span> 4734 <ul class="link-list"> 4735 <li> 4736 <a href="/decoracion-de-pared/foto-en-lienzo.jsf" class="link" rel="follow" target="_self">Fotolienzo 4737 </a> 4738 </li> 4739 <li> 4740 <a href="/decoracion-de-pared/" class="link" rel="follow" target="_self">Decoración de Pared 4741 </a> 4742 </li> 4743 <li> 4744 <a href="/home-lifestyle/" class="link" rel="follow" target="_self">Home & Lifestyle 4745 </a> 4746 </li> 4747 <li> 4748 <a href="/foto-regalos/" class="link" rel="follow" target="_self">Foto Regalos 4749 </a> 4750 </li> 4751 <li> 4752 <a href="/vale-regalos/" class="link" rel="follow" target="_self">Vales de regalo 4753 </a> 4754 </li> 4755 <li> 4756 <a href="/rebajas/" class="link" rel="follow" target="_self">Descuentos y Ofertas 4757 </a> 4758 </li> 4759 </ul> 4760 </div> 4761 </div></div> 4762 <div class="fine-print">IVA incluido en todos los precios. <a href="/pago-y-envio/" target="_blank" rel="noreferrer" class="link">Gastos de envÃo no incluidos.</a></div> 4763 4764 4765 4766 </footer> 4767 4768
4768<script> 4769 // <![CDATA[ 4770 document.addEventListener("DOMContentLoaded", function() { 4771 let lazyImages = [].slice.call(document.querySelectorAll("[data-srcset]")); 4772 4773 if ("IntersectionObserver" in window) { 4774 let lazyImageObserver = new IntersectionObserver(function(entries, observer) { 4775 entries.forEach(function(entry) { 4776 if (entry.isIntersecting) { 4777 let lazyImage = entry.target; 4778 lazyImage.src = lazyImage.dataset.srcset; 4779 //lazyImage.srcset = lazyImage.dataset.srcset; 4780 //lazyImage.classList.remove("lazy"); 4781 lazyImage.removeAttribute('data-srcset') 4782 lazyImageObserver.unobserve(lazyImage); 4783 } 4784 }); 4785 }); 4786 lazyImages.forEach(function(lazyImage) { 4787 lazyImageObserver.observe(lazyImage); 4788 }); 4789 } else { 4790 let active = false; 4791 const lazyLoad = function() { 4792 if (active === false) { 4793 active = true; 4794 setTimeout(function() { 4795 lazyImages.forEach(function(lazyImage) { 4796 if ((lazyImage.getBoundingClientRect().top <= window.innerHeight && lazyImage.getBoundingClientRect().bottom >= 0) && getComputedStyle(lazyImage).display !== "none") { 4797 lazyImage.src = lazyImage.dataset.srcset; 4798 //lazyImage.srcset = lazyImage.dataset.srcset; 4799 //lazyImage.classList.remove("lazy"); 4800 lazyImage.removeAttribute('data-srcset') 4801 //lazyImageObserver.unobserve(lazyImage); 4802 4803 lazyImages = lazyImages.filter(function(image) { 4804 return image !== lazyImage; 4805 }); 4806 4807 if (lazyImages.length === 0) { 4808 document.removeEventListener("scroll", lazyLoad); 4809 window.removeEventListener("resize", lazyLoad); 4810 window.removeEventListener("orientationchange", lazyLoad); 4811 } 4812 } 4813 }); 4814 4815 active = false; 4816 }, 200); 4817 } 4818 }; 4819 document.addEventListener("scroll", lazyLoad ); 4820 window.addEventListener("resize", lazyLoad ); 4821 window.addEventListener("orientationchange", lazyLoad ); 4822 lazyLoad(); 4823 } 4824 }); 4825 // ]]> 4826 </script>
4826 4827 4828 4829 <div class="js-modal" id="plazosdelenvio"> <div class="col -span-12" style="margin-top: -15px;"> 4830 <table class="-span-7 simpleTable"> 4831 <tbody> 4832 <tr> 4833 <td class="text-center">Desde 0 a 54 â¬</td> 4834 <td class="text-center"> 7,90 â¬</td> 4835 </tr> 4836 <tr> 4837 <td class="text-center">Más de 54 â¬</td> 4838 <td class="text-center"><span class="-green-text"><b>¡GRATIS!*</b></span></td> 4839 </tr> 4840 </tbody> 4841 </table> 4842 <p> 4843 Gastos de expedición incluyendo embalaje para el primer artÃculo: 7,90 â¬. Todo artÃculo adicional no tiene costes de expedición. Para pedidos de más de 54â¬, los gastos de envÃo son de 0 euros. Esto no es acumulable con otras acciones y descuentos. 4844 </p> 4845 <p> 4846 Los pedidos de uno o dos productos (excluidos Ãlbum Digital y Fotocalendario) de un tamaño máximo de 40x30 cm serán enviados automáticamente sin seguimiento. 4847 <br/><br/> 4848 *EnvÃo gratis en todos los productos, excepto álbum digital y calendario de fotos. 4849 </p> 4850 <p><b>EnvÃos a Ceuta y Melilla</b></p> 4851 <p>No realizamos envÃos a Ceuta y Melilla.</p> 4852 <p><b>EnvÃos a las Islas Canarias</b></p> 4853 <p>El coste para el primer artÃculo es de 99,90 â¬. Todo artÃculo adicional no tiene costes de expedición.</p> 4854 <p><b>EnvÃos a las Islas Baleares</b></p> 4855 <p>El coste para el primer artÃculo es de 24,90 â¬. Todo artÃculo adicional no tiene costes de expedición.</p> 4856 <p><b>EnvÃos a Francia y Portugal</b></p> 4857 <p>El coste para el primer artÃculo es de 7,90 â¬. Todo artÃculo adicional no tiene costes de expedición.</p> 4858 4859 4860 <h2><strong>Pago seguro</strong></h2> 4861 4862 <p>Para la transmisión de datos, se utiliza el estándar de seguridad SSL (Secure Socket Layer). De esta manera, tus datos son protegidos durante el proceso de pedido. Este procedimiento es utilizado también por los bancos para tu seguridad. 4863 Puedes elegir una de las siguientes formas de pago:</p> 4864 <p><strong>Tarjeta de crédito</strong></p> 4865 4866 <p>Puedes utilizar tu tarjeta de crédito para comprar en Mi-arte.es. Durante el proceso del pedido, debes indicar el número de tarjeta, asà como la fecha de vencimiento. El código de verificación al dorso también será necesario. Para la transmisión de datos, se utiliza el estándar de seguridad SSL (Secure Socket Layer). De esta manera, tus datos son protegidos en todo momento. Este procedimiento es utilizado también por los bancos para tu seguridad. Se aceptan Visa, MasterCard y American Express. Tu cuenta será debitada con el envÃo del pedido.</p> 4867 <p><strong>PayPal</strong></p> 4868 4869 <p>Puedes pagar fácilmente con tu cuenta PayPal en Mi-arte.es. Simplemente selecciona PayPal como forma de pago en el carrito. Serás redireccionado automáticamente al sistema de pago PayPal. Tras realizar el pedido, recibirás automáticamente una confirmación por correo electrónico. El plazo de entrega habitual es de 3 a 5 dÃas hábiles.</p> 4870<p><strong>Amazon Pay</strong></p> 4871<p>Al pagar con Amazon Pay, puedes pagar con la información de pago y envÃo de tu cuenta de Amazon, sin tener que volver a ingresar esta información. Esto hace que el proceso de compra sea fácil, conveniente y seguro.</p> 4872 </div> 4873 </div><div class="js-modal" id="bestPriceGuarantee"> 4874<div class="head">¡La garantÃa del precio más bajo de mi-arte.es! </div> 4875 4876<div class="body text-format"> 4877<h2>¡La garantÃa del precio más bajo de mi-arte.es! </h2> 4878 4879<div>En Mi-arte.es te <u>garantizamos</u> siempre el precio más bajo para tu foto sobre lienzo!Eso significa que, si encuentras un vendedor que te ofrece el mismo formato a un precio inferior al nuestro, te ofrecemos dicho formato un 5% más barato que el precio ofrecido por el otro vendedor.</div> 4880 4881<div> 4882<h3>¿Que hago si encuentro una oferta más barata de otro vendedor?</h3> 4883EnvÃanos un mail a <a href="mailto:[email protected] " rel="nofollow">[email protected]</a> indicando el nombre del vendedor, el formato en cuestión y el precio. Comprobaremos los datos a la mayor brevedad y te enviaremos un código de reducción.</div> 4884</div> 4885</div> 4886 4887 4888 4889 <div class="js-modal " id="shippingInfoPayment"> 4890 <div class="head"><h2>Plazos de producción y entrega</h2><span class="close"></span></div> 4891 <section class="page-text"> 4892 <div class="text-format -font-14"> 4893 <div class="-span-12"> 4894 <h2 class="col -span-12 mb0">Gastos de envÃo: <br /><small>Todos los productos</small></h2> 4895 <div class="col -span-12 half mb20" style="clear: both"> 4896 <div class="col -span-12 half" style="padding-left: 0"> 4897 <div class="col -span-3 half"> 4898 <h4>España <span class="weight-normal">(peninsular)</span></h4> 4899 <div class="col -span-6 nopadding" style="padding-left:0;"> 4900 <div class=" contentBlockShipping"> 4901 Más de 60 ⬠4902 <br /> 4903 <strong>GRATIS</strong> 4904 </div> 4905 </div> 4906 <div class="col -span-6 nopadding" style="padding-right:0;"> 4907 <div class=" contentBlockShipping"> 4908 Menos de 60 ⬠4909 <br /> 4910 <strong>
49107,90 â¬</strong> 4911 </div> 4912 </div> 4913 </div> 4914 <div class="col -span-3 half"> 4915 <h4>Islas Baleares</h4> 4916 <div class="contentBlockShipping double col -span-12"> 4917 Cada pedido<br /> <strong>24,90 â¬</strong> 4918 </div> 4919 </div> 4920 <div class="col -span-3 half"> 4921 <h4>Islas Canarias</h4> 4922 <div class="contentBlockShipping double"> 4923 Cada pedido<br /> <strong>99,90 â¬</strong> 4924 </div> 4925 </div> 4926 <div class="col -span-3 half"> 4927 <h4>Portugal y Francia</h4> 4928 <div class="contentBlockShipping double"> 4929 Cada pedido<br /> <strong>7,90 â¬</strong> 4930 </div> 4931 </div> 4932 4933 <div class="col -span-12"><div class="col -span-6 nopadding mt10">No 4934 realizamos entregas a Ceuta y Melilla.</div> 4935 <div class="col -span-6 nopadding mt10 -align-right"> 4936 EnvÃo a islas Francesas: 24,90 ⬠4937 </div> 4938 </div> 4939 </div> 4940 </div> 4941 <h2 class="col -span-12 clear-float mb0">Plazos de Entrega</h2> 4942 <p class="col -span-12 shippingInfoText">Nuestros plazos de producción y entregas a España peninsular en dÃas 4943 laborables (lunes a viernes):</p> 4944 <div class="col -span-6"> 4945 <div class="titleBlockShipping"> 4946 <strong>Lienzo</strong> (sin opciones adicionales) 4947 </div> 4948 <div class="contentBlockShipping mobile-mb25"> 4949 Producción: 1 dÃa laboral<br /> 4950 Entrega: 3-5 dÃas laborables<br /> 4951 <strong>Total: 4-6 dÃas laborables</strong> 4952 </div> 4953 </div> 4954 <div class="col -span-6"> 4955 <div class="titleBlockShipping"> 4956 <strong>Los demás productos</strong> 4957 </div> 4958 <div class="contentBlockShipping"> 4959 Producción: 2 dÃas laborables<br /> 4960 Entrega: 3-5 dÃas laborables<br /> 4961 <strong>Total: 5-7 dÃas laborables</strong> 4962 </div> 4963 </div> 4964 <p class="col -span-12 shippingInfoText"> 4965 Los pedidos de uno o dos productos de un tamaño máximo de 40x30cm serán enviados automáticamente sin 4966 seguimiento. 4967 </p> 4968 </div> 4969 </div> 4970 </section> 4971 </div> 4972 4973 <div class="js-modal" id="freeshippingInfo"> 4974 <div class="head"><h2>EnvÃos a España peninsular</h2><span class="close"></span></div> <div class="col -span-12" style="margin-top: -15px;"> 4975 <table class="-span-7 simpleTable"> 4976 <tbody> 4977 <tr> 4978 <td class="text-center">Desde 0 a 54 â¬</td> 4979 <td class="text-center"> 7,90 â¬</td> 4980 </tr> 4981 <tr> 4982 <td class="text-center">Más de 54 â¬</td> 4983 <td class="text-center"><span class="-green-text"><b>¡GRATIS!*</b></span></td> 4984 </tr> 4985 </tbody> 4986 </table> 4987 <p> 4988 Gastos de expedición incluyendo embalaje para el primer artÃculo: 7,90 â¬. Todo artÃculo adicional no tiene costes de expedición. Para pedidos de más de 54â¬, los gastos de envÃo son de 0 euros. Esto no es acumulable con otras acciones y descuentos. 4989 </p> 4990 <p> 4991 Los pedidos de uno o dos productos (excluidos Ãlbum Digital y Fotocalendario) de un tamaño máximo de 40x30 cm serán enviados automáticamente sin seguimiento. 4992 <br/><br/> 4993 *EnvÃo gratis en todos los productos, excepto álbum digital y calendario de fotos. 4994 </p> 4995 <p><b>EnvÃos a Ceuta y Melilla</b></p> 4996 <p>No realizamos envÃos a Ceuta y Melilla.</p> 4997 <p><b>EnvÃos a las Islas Canarias</b></p> 4998 <p>El coste para el primer artÃculo es de 99,90 â¬. Todo artÃculo adicional no tiene costes de expedición.</p> 4999 <p><b>EnvÃos a las Islas Baleares</b></p> 5000 <p>El coste para el primer artÃculo es de 24,90 â¬. Todo artÃculo adicional no tiene costes de expedición.</p> 5001 <p><b>EnvÃos a Francia y Portugal</b></p> 5002 <p>El coste para el primer artÃculo es de 7,90 â¬. Todo artÃculo adicional no tiene costes de expedición.</p> 5003 5004 5005 <h2><strong>Pago seguro</strong></h2> 5006 5007 <p>Para la transmisión de datos, se utiliza el estándar de seguridad SSL (Secure Socket Layer). De esta manera, tus datos son protegidos durante el proceso de pedido. Este procedimiento es utilizado también por los bancos para tu seguridad. 5008 Puedes elegir una de las siguientes formas de pago:</p> 5009 <p><strong>Tarjeta de crédito</strong></p> 5010 5011 <p>Puedes utilizar tu tarjeta de crédito para comprar en Mi-arte.es. Durante el proceso del pedido, debes indicar el número de tarjeta, asà como la fecha de vencimiento. El código de verificación al dorso también será necesario. Para la transmisión de datos, se utiliza el estándar de seguridad SSL (Secure Socket Layer). De esta manera, tus datos son protegidos en todo momento. Este procedimiento es utilizado también por los bancos para tu seguridad. Se aceptan Visa, MasterCard y American Express. Tu cuenta será debitada con el envÃo del pedido.</p> 5012 <p><strong>PayPal</strong></p> 5013 5014 <p>Puedes pagar fácilmente con tu cuenta PayPal en Mi-arte.es. Simplemente selecciona PayPal como forma de pago en el carrito. Serás redireccionado automáticamente al sistema de pago PayPal. Tras realizar el pedido, recibirás automáticamente una confirmación por correo electrónico. El plazo de entrega habitual es de 3 a 5 dÃas hábiles.</p> 5015<p><strong>Amazon Pay</strong></p> 5016<p>Al pagar con Amazon Pay, puedes pagar con la información de pago y envÃo de tu cuenta de Amazon, sin tener que volver a ingresar esta información. Esto hace que el proceso de compra sea fácil, conveniente y seguro.</p> 5017 </div> 5018 </div> 5019 5020 5021 5022 <div class="js-modal" id="shippingInfo"> 5023 <div class="head">GASTOS DE ENVÃO<span class="close"></span></div> <div class="col -span-12"> 5024 <p><b>España</b></p> 5025 <p>Entregas para España peninsular.</p> 5026 <table class="-span-7 simpleTable"> 5027 <tbody> 5028 <tr> 5029 <td class="text-center">Desde 0 a 60 â¬</td> 5030 <td class="text-center"> 7,90 â¬</td> 5031 </tr> 5032 <tr> 5033 <td class="text-center">Más de 60 â¬</td> 5034 <td class="text-center"><span class="-green-text"><b>¡GRATIS!*</b></span></td> 5035 </tr> 5036 </tbody> 5037 </table> 5038 <p> 5039 Gastos de expedición incluyendo embalaje para el primer artÃculo: 7,90 â¬. Todo artÃculo adicional no tiene costes de expedición.
5040 Para pedidos de más de 60â¬, los gastos de envÃo son de 0 euros. Esto no es acumulable con otras acciones y descuentos. 5041 </p> 5042 <p> 5043 Los pedidos de uno o dos productos (excluidos Ãlbum Digital y Fotocalendario) de un tamaño máximo de 40x30 cm serán enviados automáticamente sin seguimiento. *EnvÃo gratis en todos los productos, excepto Ãlbum Digital y Fotocalendario. 5044 </p> 5045 <p><b>EnvÃos a Ceuta y Melilla</b></p> 5046 <p>No realizamos envÃos a Ceuta y Melilla.</p> 5047 <p><b>EnvÃos a las Islas Canarias:</b></p> 5048 <p>El coste para el primer artÃculo es de 99,90 â¬. Todo artÃculo adicional no tiene costes de expedición.</p> 5049 <p><b>Portugal</b></p> 5050 <p>El coste para el primer artÃculo es de 7,90 â¬. Todo artÃculo adicional no tiene costes de expedición.</p> 5051 <p><b>Francia</b></p> 5052 <p>El coste para el primer artÃculo es de 7,90 â¬. Todo artÃculo adicional no tiene costes de expedición. EnvÃo a islas: 24,90 â¬</p> 5053 <h3 class="-green-text">Ãlbum digital</h3> 5054 <p>Tiempo de entrega: de 7 - 12 dÃas laborables</p> 5055 <h3 class="-green-text">Fotocalendario</h3> 5056 <p>Tiempo de entrega: de 7 - 9 dÃas laborables</p> 5057 </div> 5058 </div> 5059 5060 5061 5062 <div class="js-modal" id="privacyPolicy"> 5063 <div class="head">PolÃtica de privacidad<span class="close"></span></div> 5064 5065 <div class="col -span-12"> <div class="body text-format"> 5066 <div class="privacy"> 5067 <a name="top"></a> 5068 <h4>Actualizado por últimavez: 18.10.2022</h4> 5069 <h2>1. Declaración de Privacidad</h2> 5070 <p class="-green-text">Gracias por visitar nuestra página web. Nos gustarÃa informarle que sus datos se manejan de acuerdo con el Art. 13 del Regulación General de Protección de Datos (GDPR por sus siglas en inglés).</p> 5071 <h3>Cuenta responsable</h3> 5072 <p>La parte nombrada en el pie de imprenta a continuación es responsable de la recopilación y el procesamiento de los datos.</p> 5073 <h3>Almacenamiento de dirección IP</h3> 5074 <p>Almacenamos la dirección IP transmitida por su navegador web por un perÃodo máximo de 30 dÃas. Hacemos esto para de poder detectar, limitar y eliminar ataques a nuestras páginas webs. Para rastrear el origen de tales ataques, la dirección IP debe almacenarse temporalmente. Luego de este perÃodo, nosotros borramos la dirección IP. La base legal es Art.6 párr.1 lit. f) GDPR.</p> 5075 <h3>Uso de datos</h3> 5076 <p>Cuando usted visita nuestras páginas webs, los llamados datos de uso son temporalmente almacenados como un protocolo en nuestros servidores web para propósitos estadÃsticos. Usamos nuestros propios servidores, los cuales están ubicados en nuestras instalaciones, asà como en servidores de HostEurope, PlusServer y Amazon Web Services (AWS). Todos los servidores están ubicados en Alemania. Adicionalmente, los datos de uso pueden ser utilizados para mejorar la calidad de nuestros sitios webs. La base legal es Art.6 párr.1 lit. f. Este conjunto de datos consiste en:</p> 5077 <ul> 5078 <li>La página desde la cual el archivo fue solicitado</li> 5079 <li>El nombre del archivo</li> 5080 <li>La fecha y la hora de la consulta</li> 5081 <li>La cantidad de datos transferidos</li> 5082 <li>El estado de acceso (archivo transferido o archivo no encontrado)</li> 5083 <li>La descripción del tipo de navegador web utilizado</li> 5084 <li>La dirección IP de la computadora solicitante</li> 5085 </ul> 5086 <h4>Pedido de productos fotográficos</h4> 5087 <p>Si nos pide un producto, nosotros almacenamos los siguientes datos:</p> 5088 <ul> 5089 <li>La página desde la cual el archivo fue solicitado</li> 5090 <li>El nombre del archivo</li> 5091 <li>La fecha y la hora de la consulta</li> 5092 <li>La cantidad de datos transferidos</li> 5093 <li>El estado del acceso (archivo transferido, o archivo no encontrado)</li> 5094 <li>La descripción del tipo de navegador web utilizado</li> 5095 <li>La dirección IP de la computadora solicitante</li> 5096 <li>Los archivos de imágenes que usted transmita</li> 5097 <li>Otra información proporcionada por usted, tal como su dirección de correo electrónico, nombre, dirección</li> 5098 5099 </ul> 5100 <p>Regularmente almacenamos esta información durante 6 meses, pero podrÃamos almacenarlo por un tiempo un poco más largo en caso de una orden o una queja.</p> 5101 <p> El perÃodo de 6 meses es necesario para una posible defensa legal, esto es requerido dentro del marco de la ley de garantÃa dentro del perÃodo amigable para el consumidor de § 477 BGB (en base a la Directiva 1999/44/EC del Parlamento y Consejo Europeo del 25 de Mayo de 1999) y necesario para poder revisar las re
5101clamaciones afirmadas.</p> 5102 <p>Su dirección IP completa es almacenada solo por 90 dÃas.</p> 5103 <h2>2. Transferencia de datos a terceras partes</h2> 5104 <h3>Transferencia de datos a terceras partes</h3> 5105 <p>Transferimos sus datos a proveedores de servicios que nos apoyan en la operación de nuestros sitios web y los procesos asociados de conformidad con el Art.28 GDPR. Nuestros proveedores de servicios están estrictamente sujetos a nuestras instrucciones y están contractualmente obligados en consecuencia. Usamos los siguientes proveedores de servicios:</p> 5106 <p>Usamos estos servicios para mejorar y monitorear nuestro sitio web: emarsys, SalesForce, Facebook Business Manager - Facebook Custom Audience List, Google - Google Customer Match List, intelliAd, Google Analytics, Google AdSense, Google Adwords, y Youtube</p> 5107 <p>Trabajamos junto con los siguientes socios de mercadeo para llevar a cabo medidas de mercadeo: Google Adwords, Google AdSense, Google Display Network, Youtube, Bing, Facebook, asà como Afilliate Networks (Awin, Flexoffers, Cross sell, Zanox, Affilinet, Webgains, Tradetracker, Daisycon, CJ Affiliate by Conservant, Belboon, Adcell) y sus respectivos socios afiliados.</p> 5108 <p>Estos socios de mercadeo verifican si usted ha llegado o no a nuestro sitio haciendo clic en un elemento de campaña publicitaria. Esto nos da la oportunidad de desarrollar estrategias de mercadeo dirigidas y garantizar una experiencia publicitaria óptima para usted como usuario.</p> 5109 <p>Para el envÃo de boletines informativos por correo y en forma impresa, usamos: Optilyz.</p> 5110 <p>Usamos los siguientes servicios para fines de alojamiento:Amazon Elastic Cloud Computing (EC2), Amazon Elastic Load Balancer (ELB), Amazon Relational Database Services (RDS), y Amazon Simple Storage Service (S3) de Amazon Web Services (AWS), usando el dentro de datos de AWS en Frankfurt.</p> 5111 <p>En todos los demás aspectos, utilizamos las ofertas especiales de Sovendus GmbH. Por lo tanto, se aplica lo siguiente en el caso de un pedido:</p> 5112 <p>Para la selección de una oferta que actualmente sea de interés regional para usted, nosotros seudonimizaremos y encriptaremos la forma de su dirección, año de nacimiento, paÃs, código postal, el valor hash de su correo electrónico y su dirección IP para transferir a Sovendus GmbH, Moltkestr. 11, 76133 Karlsruhe (Sovendus) (Art.6 Párr.1 f GDPR). El valor hash de un correo electrónico seudonimizado también es usado por Sovendus para tomar en cuenta una posible objeción a la publicidad (Art.21 párr.3, Art.6 párr. 1 c GDPR). La dirección IP es usada por Sovendus exclusivamente para propósitos de seguridad de datos y como regla, es anonimizada luego de siete dÃas (Art. 6 Párr. 1 f GDPR).</p> 5113 <p>Cuando usted hace clic en una oferta especial, Sovendus también recibirá su nombre, sus datos de dirección y su correo electrónico en forma encriptada en preparación para la solicitud personalizada de la oferta especial del proveedor del producto (Art. 6 Párr.1 b, f GDPR).</p> 5114 <p>Para obtener más información sobre Sovendus procesando sus datos, por favor vea la polÃtica de privacidad en lÃnea en www.sovendus.de/datenschutz</p> 5115 <h3>Transferencia de datos a terceros paÃses</h3> 5116 <p>En algunos casos, transferimos datos personales a un tercer paÃs fuera de la U.E., sin embargo, siempre nos aseguramos que un nivel apropiado de protección de datos sea mantenido como está ilustrado a continuación: </p> 5117 <p>En caso de transferencia de datos a los E.E.U.U., un nivel apropiado de protección de datos proviene de la participación correspondiente de los proveedores de servicio en el Acuerdo Escudo de Privacidad (Privacy Shield Agreement) (Art. 45 párr. 1 GDPR).</p> 5118 <p>En caso de paÃses de la U.E., la comisión de la U.E. ha decidido en un nivel apropiado de protección de datos en concordancia con el Art. 45 párr. 1 GDPR.</p> 5119 <h2>3. Cookies</h2> 5120 <h3>Cookies</h3> 5121 <p>Usamos cookies en nuestros sitios webs. Las cookies con pequeños fragmentos de texto que pueden ser almacenados y leÃdos en su dispositivo. Se establece una distinción entre las cookies de sesión, que se eliminan inmediatamente después de cerrar el navegador, y las cookies permanentes, que se almacenan más allá de las sesiones individuales. Las Cookies pueden contener datos que hacen posible reconocer el dispositivo utilizado. En algunos casos sin embargo las cookies solo contienen información sobre algunas configuraciones que no pueden ser vinculadas a una persona especÃfica.</p> 5122 <p>Utilizamos cookies propias y de terceros como cookies de sesión y cookies permanentes en nuestros sitios web. El procesamiento se lleva a cabo sobre la base del Art. 6 párr. 1 lit. f) GDPR y el deseo de optimizar o habilitar la guÃa al usuario y adaptar la presentación de nuestro sitio web.</p> 5123 <p>Las siguientes herramientas establecen cookies en nuestro sitio web y recopilan datos personales. Especialmente la dirección IP y el ID de usuario:</p> 5124 <p>Emarsys (como un socio de mercadeo de correos electrónicos, almacena datos solo por la duración de su visita),</p> 5125 <p>Facebook Ads (para evaluar proyectos de mercadeo de redes sociales, almacena datos por un máximo de 2 años),</p> 5126 <p>
5126Twitter Connect (para conectar a nuestras cuentas de redes sociales, almacena datos por un máximo de 30 dÃas), Instagram (enlace para conectar con nuestras cuentas de redes sociales, almacena datos hasta que se borren manualmente), Pinterest (enlace para conectar con nuestras cuentas de redes sociales, almacena datos por un máximo de 30 dÃas), plataforma Google+ (enlace para conectar con nuestras cuentas de redes sociales, almacena datos por un máximo de 5 años),</p> 5127 <p>Google Analytics (solo almacena una dirección IP anonimizada para análisis web, almacena datos por un máximo de 2 años), </p> 5128 <p>IntelliAd (para análisis de web, almacena datos por un máximo de 100 dÃas), </p> 5129 <p>Olark (como herramienta de chat para solicitudes de soporte),</p> 5130 <p>Google Certified (como una herramienta para las reseñas de clientes, almacena los datos por un máximo de 2 años), Trusted Shops (como una herramienta para las reseñas de clientes), eKomi (como una herramienta para las reseñas de clientes),</p> 5131 <p>Sovendus (como socio publicitario para descuentos, anonimiza los datos luego de 7 dÃas y los elimina después de 2 años), </p> 5132 <p>Rocket Fuel/Sizmek (como socio publicitario), </p> 5133 <p>Y cookies propias (para la funcionalidad del sitio web)..</p> 5134 <p>Usted puede configurar su navegador, de manera de que le informe sobre la colocación de cookies. Esto hace las cookies usadas disponibles para usted. Usted también puede borrar las cookies en cualquier momento vÃa la correspondiente configuración del navegador y prevenir el establecimiento de nuevas cookies (optar por salir). Por favor tenga en cuenta que nuestras páginas web pueden no mostrarse de manera óptima y que algunas funciones pueden ya no estar técnicamente disponibles.</p> 5135 <p>Para mayor información, por favor referirse a las siguientes explicaciones:</p> 5136 <h2>4. Herramientas de seguimiento</h2> 5137 <h3>Google Analytics e IntelliAd</h3> 5138 <p>Para el diseño de nuestro sitio web orientado a la demanda, creamos perfiles de usuario pseudónimos con la ayuda de Google Analytics e IntelliAd. Explicaremos como ambas herramientas trabajan usando Google Analytics como ejemplo. Google Analytics usa cookies que pueden ser almacenados en su dispositivo y leÃdos por nosotros, de esta manera podemos reconocer y contabilizar a los visitantes recurrentes. El procesamiento de datos se lleva a cabo en base al Art. 6 Párr. 1 lit. f) GDPR y Art. 15 sec. 3 TMG y en el interés de descubrir que tan frecuentemente nuestros sitios webs han sido accesados por diferentes usuarios.</p> 5139 <p>La información generada por la cookie sobre el uso de este sitio web es usualmente transferida a un servidor de Google en E.E.U.U. y almacenada allÃ. Sin embargo, debido a que hemos activado la anonimización de IP en este sitio web, su dirección IP será acortada previamente por Google dentro de los estados miembros de la Unión Europea. Solo en casos excepcionales la dirección IP completa será transferida a un servidor Google en los E.E.U.U (un nivel apropiado de protección de datos está disponible de acuerdo con el Art.45 párr.1 GDPR a través de la participación de Google en el Privacy Shield - Escudo de Privacidad) y solo acortada allá. Hemos celebrado un contrato con Google Inc. (E.E.U.U.) para el procesamiento de pedidos de conformidad con el Art. 28 GDPR. Google, por lo tanto, solo puede usar toda información estrictamente para el propósito de evaluar el uso de nuestro sitio web para nosotros y compilar reportes sobre actividades del sitio web.</p> 5140 <p>Usted puede objetar al procesamiento en cualquier momento. Por favor use una de las siguientes opciones:</p> 5141 <ol> 5142 <li>Usted puede rehusar el uso de cookies al seleccionar la configuración apropiada en su navegador, sin embargo, por favor tenga en cuenta que, si usted hace esto, es posible que no pueda usar la completa funcionalidad de este sitio web.</li> 5143 <li>También puede evitar que Google recopile los datos generados por las cookies que están relacionados con su uso del sitio web (incluyendo su dirección IP), y evitar el procesamiento de estos datos al descargar e instalar el complemento del navegador disponible en el siguiente enlace (<a href="http://tools.google.com/dlpage/gaoptout?hl=es" target="_blank">http://tools.google.com/dlpage/gaoptout?hl=es</a>).</li> 5144 <li>Para optar por salir voluntariamente de IntelliAd, por favor hacer clic aquÃ: <a href="https://login.intelliad.com/optout.php" target="_blank">https://login.intelliad.com/optout.php</a></li> 5145 </ol> 5146 <h2>5. Reorientación (Retargeting)</h2> 5147 <p>Usamos tecnologÃas de reorientación de Adobe Media Optimizer AMO en conjunto con Google, Facebook y Bing para ofrecerle publicidad en otros sitios webs que está diseña
5147da a sus intereses..</p> 5148 <h3>TecnologÃas de Reorientación</h3> 5149 <p>El procesamiento de datos se lleva a cabo en base al Art.6 Párr. 1 lit. f) GDPR. La funcionalidad de estas herramientas se explica usando a Google como ejemplo y aplica en consecuencia a todas las tecnologÃas de reorientación.</p> 5150 <p>Cuando usted visita nuestro sitio web, las caracterÃsticas de reconocimiento de su navegador o terminal son obtenidas, su dirección IP es evaluada o una caracterÃstica de reconocimiento es almacenada como un pequeño archivo de texto (ej. Las llamadas cookies de terceras partes) en su dispositivo. Su comportamiento de uso es registrado cuando visita varios sitios webs. Estas caracterÃsticas están diseñadas de manera pseudoanónima. Si usted ha iniciado sesión con su cuenta Google, estas caracterÃsticas pueden ser asignadas directamente a su perfil. Google puede enlazar y almacenar sus visitas a nuestros sitios webs con sus caracterÃsticas de manera de mostrar publicidad dirigida en otros sitios webs. De esta manera Google también puede determinar sus visitas previas a nuestro sitio web. Su dispositivo y navegador son reconocidos por Google, cuando usted visita una página que muestra avisos publicitarios por encargo de Google. </p> 5151 5152 <p><b>A continuación, encontrará más información sobre las herramientas de conversión.</b></p> 5153 5154 <p>Herramienta de Conversión de Google: Este sitio web también usa la herramienta de Conversión de Google para análisis pseudoanónimos internos sobre la efectividad de los avisos colocados. Si usted accede a nuestro sitio web desde otro sitio web al hacer clic en una de nuestras publicidades (avisos de texto, banners) colocados allÃ, una cookie será almacenada en su programa navegador por un banner publicitario allÃ. Si el banner es una campaña publicitaria comisionada por Google, Google establecerá una cookie correspondiente cuando haga clic en el banner. Ni nosotros ni nuestro socio de conversión podemos ver que otros sitios webs usted ha visitado. Nosotros no recopilamos ni recibimos ninguna información que lo identifique a usted personalmente. La información colectada a través del rastreo de conversión es usada solamente para la compilación de estadÃsticas sobre el éxito y el uso de nuestras campañas. Estas cookies expiran luego de 30 dÃas. La base legal para el uso de la tecnologÃa de cookies es Art. 6 Párr. 1 f) GDPR. Si usted no desea participar en este análisis, usted puede desactivar la configuración de cookies a través de la configuración de su navegador o al dirigirse al siguiente enlace: <a href="http://optout.networkadvertising.org/?C=1#!/" target="_blank">http://optout.networkadvertising.org/?C=1#!/</a></p> 5155 5156 <p>La información que usted, como visitante anónimo de la página, accede a nuestro sitio web a través de un banner publicitario de Picanova, se lee de su cookie y se procesa de forma anónima por nosotros y nuestro socio de conversión respectivo (por ejemplo, Google). Los datos personales sobre usted no se transmitirán.</p> 5157 5158 <p>Herramienta de Conversión de Bing: Este sitio web también utiliza el servicio de análisis de Rastreo de Conversión de Bing de Microsoft Corporation (One Microsoft Way Redmond, WA 98052-6399) para medir el éxito de otras medidas de publicidad conmutadas. Microsoft establece una cookie en su computadora cuando accede a nuestro sitio web a través de un anuncio de Pivanova de la red de publicidad de Microsoft. Estas cookies caducan después de 30 dÃas y no se utilizan para identificación personal. Al usar el rastreo de conversiones de Bing, Microsoft y nosotros podemos ver que alguien hizo clic en nuestro anuncio dentro de la red publicitaria de Microsoft y fue dirigido a nuestro sitio. Sin embargo, no podemos ver qué otros sitios web usted visitó. La información recopilada con el Rastreo de Conversión de Bing se utiliza únicamente para compilar estadÃsticas sobre el éxito y el uso de nuestras campañas publicitarias. Sin embargo, no recopilamos ni recibimos ninguna información que identifique personalmente a los usuarios. La base legal para el uso de la tecnologÃa de cookies es Art. 6 Párr. 1 f) GDPR</p> 5159 <p>Si usted no desea participar en el Rastreo de Conversión de Bing, usted también puede rechazar la configuración de la cookie requerida para esto â por ejemplo, al usar una opción del navegador que generalmente desactiva el establecimiento automático de cookies. Para hacerlo, simplemente haga clic en el siguiente enlace:</p> 5160 <p><a href="https://advertise.bingads.microsoft.com/es-es/ressourcen/richtlinien/optout-optimization?lang=es-es" target="_blank">https://advertise.bingads.microsoft.com/es-es/ressourcen/richtlinien/optout-optimization?lang=es-es</a></p> 5161 <p>y confirme su objeción en las páginas que se alcanzarán a través de este enlace. Puede encontrar más información y opciones de configuración para medidas publicitarias de Microsoft aquÃ:</p> 5162 <p><a href="https://advertise.bingads.microsoft.com/es-es/ressourcen/richtlinien/richtlinien-zur-datensicherheit-und-datnschutzerklaerung" target="_blank">https://advertise.bingads.microsoft.com/es-es/ressourcen/richtlinien/richtlinien-zur-datensicherheit-und-datnschutzerklaerung</a></p> 5163 <p>La información que usted, como visitante anónimo de la página, accede a nuestro sitio web a través de nuestro banner publicitario se lee de su cookie y se procesa de forma anónima por nosotros y Microsoft. Sin embargo, sus datos personales no serán transmitidos.</p> 5164 <h3>Re-mercadeo (Remarketing)</h3> 5165 <p>Podemos incluir palabras claves en nuestros sitios web que contengan declaraciones sobre el contenido del sitio web, tales como los productos ofrecidos. Usamos Google Tag Manager, Visual Website Optimizer (VWO) y Adobe Media Optimizer (AMO), Google Adwords. El siguiente ejemplo de Google explica cómo funciona. Google recibe estas palabras claves que no contienen información personal ni sensible. Cuando visita una página con palabras claves especÃficas de productos, Google las almacena y las asigna a sus pseudónimos. Este enlace permite a Google determinar si alguno de nuestros anuncios se le muestra a usted o no.</p> 5166 <p>Red de Despliegue de Publicidad de Google: También utilizamos las tecnologÃas de re-mercadeo de Google en nuestros sitios web. Utilizamos cookies para reconocer su computadora en otros sitios web que participan en la Red de Despliegue de Google a partir de los datos registrados (visita a nuestro sitio web incluyendo fecha y hora, el lenguaje de preferencia utilizado, tipo de navegador, sistema operativo) y para presentarle publicidades adaptadas a tus presuntos intereses. La base legal para este uso de la tecnologÃa de cookies es el Art. 6 Párr. 1 f) GDPR. Puede ver, eliminar o agregar las categorÃas mediante las cuales esta tecnologÃa muestra publicidad basada en intereses en la Red de Despliegue de Publicidad de Google desde el Administrador de Preferencias de Anuncios de Google. Esta herramienta también le permite inhabilitar el uso de cookies para publicidad basada en intereses en la Red de Despliegue de Google al descargar e instalar el complemento del navegador para deshabilitar la cookie de publicación de anuncios. Para obtener más información sobre la publicación personalizada de anuncios a través de Google, visite: <a href="https://policies.google.com/privacy?hl=es" target="_blank">https://policies.google.com/privacy?hl=es</a> </p> 5167 <p>Tan pronto como utilice el mismo programa de navegador para visitar otros sitios web en Internet cuyos operadores hayan integrado espacios publicitarios de la Red de Despliegue de Publicidad de Google, la información de la cookie será leÃda automáticamente por este operador y mostrada en el banner publicitario para mostrarle contenidos presuntamente interesantes para usted. Esta información no es almacenada por los otros operadores del sitio más allá de esta evaluación anónima temporal.</p> 5168 <p>TecnologÃa de Conversión de Facebook: Utilizamos el servicio de "Re-mercadeo de Facebook" en nuestro sitio web. La tecnologÃa de re-mercadeo de Facebook permite que los usuarios que han visitado nuestro sitio web vuelvan a ser objeto de publicidad dirigid
5168a en los sitios web de Facebook. Sin embargo, no recopilamos ni recibimos información sobre qué usuarios de Facebook realmente reciben publicidad dirigida. No podemos identificar usuarios individuales aquà tampoco. La base legal para este procesamiento de datos es el Art. 6 Párr. 1 f) GDPR. Para hacerlo, simplemente haga clic en el siguiente enlace <a href="https://www.facebook.com/policies/cookies/" target="_blank">https://www.facebook.com/policies/cookies/</a> y confirme su objeción en la página a la que desea acceder a través de este enlace.</p> 5169 <p>Para obtener más información sobre los propósitos y el alcance de la recopilación y el procesamiento de sus datos personales por parte de Facebook, asà como las opciones de configuración para proteger su privacidad en Facebook, consulte la PolÃtica de datos de Facebook. Puede optar por excluirse a través de la Digital Advertising Alliance en los Estados Unidos, la Digital Advertising Alliance en Canadá, la European Interactive Digital Advertising Alliance en Europa o la configuración de su dispositivo para que no vea anuncios en lÃnea basados en sus intereses de parte de Facebook y otras compañÃas participantes.</p> 5170 <p>El Pixel de Conversión de Facebook nos permite a Facebook y a nosotros saber que alguien hizo clic en nuestro anuncio de Facebook y fue dirigido a nuestra página. La información generada por la cookie y / o los gráficos sobre su uso de este sitio web se transfiere a un servidor de Facebook en los E.E.U.U. y se almacena allÃ. Facebook usa la información obtenida de esta manera para evaluar su comportamiento de uso con respecto a los anuncios de Facebook. Facebook también puede transferir esta información a terceros cuando asà lo exija la ley, o cuando dichos terceros procesen la información en nombre de Facebook. Facebook no asocia su dirección IP con otros datos almacenados por Facebook.</p> 5171 <h3>Re-mercadeo Cruzado entre Dispositivos (Cross Device Remarketing)</h3> 5172 <p>Google puede vincular técnicamente las caracterÃsticas pseudónimas de por ejemplo, sus dispositivos finales como la tableta, el teléfono inteligente y la bandeja de entrada de correo electrónico (mercadeo cruzado entre dispositivos). Es un requisito previo que haya aceptado este procesamiento de datos con Google en el pasado. Esto permite a Google llevar a cabo campañas publicitarias especÃficas en diferentes dispositivos finales. Usamos esto para evaluar nuestras estrategias de mercadeo. La base legal es Art. 6. Párr. 1 Lit. f GDPR.</p> 5173 <p>Sus datos serán transmitidos a Google y almacenados en los Estados Unidos. De acuerdo con el Art. 45 Párr. 1 GDPR, la participación de Google en el Escudo de Privacidad brinda un nivel adecuado de protección de datos. Hemos trabajado con Google Inc. (E.E.U.U.) y celebramos un contrato para el procesamiento de pedidos de acuerdo con el Art. 28 GDPR. Por lo tanto, Google solo puede utilizar toda información estrictamente con el fin de evaluar el uso de nuestro sitio web para nosotros y recopilar informes sobre las actividades del sitio web. </p> 5174 <p>Puedes objetar a esto de acuerdo con el Art. 21 GDPR en cualquier momento. Por favor, haga clic en el siguiente enlace: <a href="https://support.google.com/ads/answer/7395996?hl=es" target="_blank">https://support.google.com/ads/answer/7395996?hl=es</a> </p> 5175 <h2>6. Herramientas de mercadeo</h2> 5176 <p>Para personalizar nuestro sitio web, utilizamos Visual Website Optimizer VWO, Adobe Media Optimizer AMO y Google Tag Manager, Google Attribution.</p> 5177 <p>Google Tag Manager administra etiquetas (elementos de código en el sitio) que miden el tráfico, el comportamiento del visitante, y el impacto de la publicidad en lÃnea y los canales sociales. También utiliza procesos de re-mercadeo y seguimiento, además de probar y optimizar el sitio web.</p> 5178 <p>Google Attribution nos ofrece la posibilidad de evaluar los datos de Google Analytics y Google Adwords agrupados en una sola herramienta.</p> 5179 <p>Para más información, ver el punto 3 ff.</p> 5180 <h2>7. Complementos de Redes Sociales</h2> 5181 <p>Por razones de protección de datos, no integramos los complementos sociales directamente en nuestro sitio web. Cuando visita nuestras páginas, no se transmiten datos a los servicios de redes sociales como Facebook, Instagram, Twitter, XING o Google+. La creación de perfiles por parte de terceros queda asà excluida. La integración de páginas solo sirve para reenviar a nuestras cuentas.</p> 5182 <p>
5182TodavÃa puede compartir páginas seleccionadas con un clic en los botones de Facebook, Twitter, Pinterest o Google+ y también ver la frecuencia con la que se compartieron en el pasado.</p> 5183 <h2>8. Explicación de las medidas de seguridad</h2> 5184 <h3>Seguridad de datos</h3> 5185 <p>Para proteger sus datos del acceso no deseado de la manera más exhaustiva posible, tomamos medidas técnicas y organizativas. Usamos un método de encriptación en nuestras páginas. Su información se transmite desde su computadora a nuestro servidor y viceversa a través de Internet mediante el cifrado TLS. Puede reconocer esto por el hecho de que el sÃmbolo de bloqueo en la barra de estado de su navegador está cerrado y la lÃnea de dirección comienza con https: // </p> 5186 <h2>9. Derechos de usuario</h2> 5187 <h3>Tus derechos como usuario</h3> 5188 <p>Al procesar sus datos personales, el GDPR le otorga a usted ciertos derechos como usuario de un sitio web:</p> 5189 <ol> 5190 <li><b>Derecho a la información (Art. 15 GDPR): </b> 5191 <br /> Tiene derecho a solicitar confirmación sobre si se procesan los datos personales que le conciernen; si este es el caso, usted tiene derecho de acceso a estos datos personales y a la información especificada en el ArtÃculo 15 de la GDPR. </li> 5192 <li><b>Derecho a corrección y eliminación (ArtÃculos 16 y 17 GDPR):</b> 5193 <br /> Tiene derecho a solicitar de inmediato la corrección de datos personales incorrectos que le conciernen y, si es necesario, la compleción de datos personales incompletos. 5194 <br /> Los usuarios también tienen derecho a solicitar que los datos personales que les conciernen se borren inmediatamente si uno de los motivos especificados en el Art. 17 del GDPR aplica, por ejemplo, si los datos ya no son necesarios para los fines perseguidos.</li> 5195 <li><b>Derecho a restringir el procesamiento de datos (ArtÃculo 18 GDPR): </b> 5196 <br />Tiene derecho a solicitar una restricción en el procesamiento, si se cumple una de las condiciones establecidas en el ArtÃculo 18 GDPR, por ejemplo, si ha presentado una objeción al procesamiento, por la duración de cualquier examen.</li> 5197 <li><b>Derecho a la transferibilidad de datos (Art. 20 GDPR):</b> 5198 <br /> En ciertos casos, que se detallan en el ArtÃculo 20 GDPR, usted tiene derecho a recibir datos personales que le conciernen en un formato estructurado, común y legible por máquina o solicitar la transmisión de estos datos a un tercero.</li> 5199 <li><b>Derecho de objeción (Art. 21 GDPR):</b> 5200 <br /> Si los datos se recopilan en base al Art. 6 Párr. 1 lit. f) (procesamiento de datos para proteger intereses legÃtimos), usted tiene el derecho de objetar el procesamiento en cualquier momento por razones que surjan de su situación particular. Ya no procesaremos los datos personales, a menos de que haya razones convincentes dignas de protección para el procesamiento, de mayor peso que los intereses, derechos y libertades del interesado, o que el procesamiento sirva para hacer valer, ejercitar o defender reclamaciones legales.</li> 5201 <li><b>Derecho de apelación a una autoridad supervisora </b> 5202 <br /> De acuerdo con el Art. 77 GDPR, usted tiene el derecho de apelar ante una autoridad reguladora si cree que el procesamiento de los datos que le conciernen viola las regulaciones de protección de datos. El derecho de apelación puede ejercerse ante una autoridad de supervisión en el estado miembro en el que está residiendo, trabajando o sospechando que se han infringido sus derechos.</li> 5203 </ol> 5204 <h2>10. Oficial de Protección de Datos de Contacto</h2> 5205 <p>Datos de contacto del oficial de protección de datos</p> 5206 <p>Nuestro oficial de protección de datos de la compañÃa estará encantado de proporcionarle información o sugerencias sobre el tema de la protección de datos:</p> 5207 <address> 5208 datenschutz süd GmbH 5209 <br /> Wörthstrasse 15 5210 <br /> 97082 Würzburg, Alemania 5211 <br /> Correo electrónico: <a href="mailto:[email protected]">[email protected]</a> 5212 <br /> 5213 </address> 5214 <p>Para preguntas relacionadas con la protección de datos, en particular con respecto a la afirmación de los derechos de las personas afectadas, comunÃquese principalmente con la dirección de correo electrónico de protección de datos que figura en el pie de imprenta.</p> 5215 <h2>11. BoletÃn informativo</h2> 5216 <h3>BoletÃn informativo</h3> 5217 <p>En nuestro sitio web, le ofrecemos la posibilidad de suscribirse a nuestro boletÃn independientemente de si pide productos fotográficos. Para esto necesitamos almacenar su dirección de correo electrónico y su nombre. Si nos ha dado un consentimiento por separado para que le informemos por correo electrónico sobre nuestros propios productos y servicios, se procesarán de acuerdo con el Art. 6 Párr. 1 Lit. a) GDPR. Su consentimiento puede revocarse en cualquier momento (por ejemplo, a través del enlace para cancelar el boletÃn informativo, que encontrará en cada boletÃn de noticias por correo electrónico), sin que esto afecte la legalidad del procesamiento anterior. Si se revoca el consentimiento, detendremos el procesamiento de datos correspondiente. El procesamiento de datos es legal hasta que sea revocado.</p> 5218 <p>Además, enviamos boletines a nuestros clientes dentro del alcance legalmente permitido; también puede objetar a esto haciendo clic en el enlace en dicho boletÃn electrónico (opción de exclusión).</p> 5219 <p>Usamos el servicio de correo Optilyz. Optilyz almacena información sobre usted para este fin. Puede ver qué datos están involucrados en detalle en</p> 5220 <p><a href="https://www.optilyz.com/de/datenschutzerklaerung" target="_blank">https://www.optilyz.com/de/datenschutzerklaerung</a></p> 5221 <h2>12. Imprimir correos</h2> 5222 <p>En todos los demás aspectos, utilizamos los datos de dirección proporcionados por usted con un pedido al anuncio postal dentro del alcance de los lÃmites legales. Puede objetar a esta publicidad en cualquier momento.</p> 5223 <h2>13. Ãrea restringida</h2> 5224 <h3>Ãrea restringida</h3> 5225 <p>
5225Si desea crear un inicio de sesión personal, primero debe registrarse. Recopilamos los siguientes datos: TÃtulo, apellido, nombre, dirección de correo electrónico, calle, código postal, ciudad, paÃs, número de teléfono (información voluntaria), contraseña en base al Art. 6 Párr. 1 lit. b) GDPR. Utilizamos los datos que nos envÃa durante el registro o durante sus consultas para crear un perfil de usted para que pueda realizar un pedido más fácilmente. Puede cambiar o eliminar su perfil en cualquier momento dentro de la cuenta. Los datos se eliminarán automáticamente de nuestro sistema. Si no hay perÃodos de retención o, si los datos no son necesarios en casos individuales (por ejemplo, en el caso de deudas abiertas para el cobro de reclamaciones).</p> 5226 <h2>14. Tienda en lÃnea</h2> 5227 <h3>Tienda en lÃnea</h3> 5228 <p>Almacenamos y utilizamos sus datos personales que nos envÃa en el curso de un procesamiento de pedidos de acuerdo con el Art. 6 Párr. 1 letra b) GDPR exclusivamente para procesar sus pedidos, dirección de correo electrónico, nombre, dirección, archivos de imágenes transmitidas, dirección IP. En particular, utilizamos su dirección de correo electrónico para las notificaciones sobre el estado de su pedido, asà como para el envÃo del boletÃn legalmente permitido, del que puede darse de baja en cualquier momento (ver el punto 11). Usamos sus archivos de imagen exclusivamente para la ejecución del pedido, asà como para el análisis interno de mercado. Como regla general, los archivos de imagen se eliminan después de 6 meses; consulte también la sección 1, Pedidos de productos fotográficos.</p> 5229 <h2>15. Cliente sin conexión</h2> 5230 <p>Si hay una herramienta fuera de lÃnea disponible para descargar en nuestro sitio web, puede descargarla haciendo clic en el botón de descarga. Esto le permite personalizar un libro de fotos con sus imágenes fuera de lÃnea y luego ordenarlo en lÃnea.</p> 5231 <h2>16. Aplicaciones en lÃnea</h2> 5232 <p>Procesamos sus datos personales en concordancia con las regulaciones de protección de datos aplicables en base al § 26 BDSG. Procesamos los datos que nos proporciona en el contexto de su solicitud en lÃnea exclusivamente con el propósito de selección del solicitante. Los datos no serán procesados para ningún otro propósito.</p> 5233 <p>Usted mismo determina el alcance de los datos que desea enviarnos como parte de su solicitud en lÃnea. Las aplicaciones en lÃnea se transmiten electrónicamente a nuestro departamento de personal, donde se procesan lo más rápido posible. La transmisión está encriptada. Como regla general, las aplicaciones se envÃan a los jefes de los departamentos especializados pertinentes de nuestra empresa. Más allá de eso, tus datos no serán transmitidos. Su información será tratada con confidencialidad en nuestra compañÃa. Si su solicitud no tiene éxito, sus documentos se eliminarán después de 6 meses.</p> 5234 <p>En el caso de que también podamos considerar su aplicación en otros o futuros anuncios de trabajo, incluya una nota al respecto en su solicitud. Entonces procesaremos sus datos en base al Art. 6 Párr. 1 lit. a) GDPR.</p> 5235 <h2>17. Página de la compañÃa de Facebook</h2> 5236 <p>Operamos una página oficial en Facebook bajo la URL <a href="https://www.facebook.com/miartees/" target="_blank">https://www.facebook.com/miartees/</a>. miartees/</p> 5237 <p>Facebook uses the so-called web tracking methods on this page. Please be aware that Facebook may use your profile information to evaluate your habits, personal relationships, preferences, and so on. We have no influence on the processing of your data by Facebook. For more information, please see Facebook's Privacy Policy.</p> 5238 <h2>18. Enlaces a otros sitios web</h2> 5239 <p>Además, encontrará enlaces a otros sitios web en nuestro sitio. Tan pronto como haya llegado a este sitio web a través de dicho enlace, reconocible por la URL modificada, ya no somos responsables en el sentido de la GDPR.</p> 5240 <h2>19. Chats</h2> 5241 <p>Para la atención al cliente, utilizamos la herramienta de chat Olark.</p> 5242 <p>Cuando utiliza la herramienta de chat Olark, Olark almacena datos. Puede ver qué datos almacena Olark en detalle en <a href="https://www.olark.com/privacy-policy" target="_blank">https://www.olark.com/privacy-policy</a>.</p> 5243 <h2>20. Tiempo de almacenamiento</h2> 5244 <p>Para obtener más información sobre la duración del almacenamiento, consulte la sección 3. A menos que se proporcione información más detallada, los datos se almacenarán tan pronto como ya no se necesiten.</p> 5245 </div> 5246 </div> 5247 </div> 5248 </div> 5249 5250 5251 <div class="js-modal" id="shippingInfo2"> 5252 <div class="head"><h2>Plazos de producción y entrega</h2><span class="close"></span></div> 5253 <section class="page-text"> 5254 <div class="text-format -font-14"> 5255 <div class="-span-12"> 5256 <h2 class="col -span-12 mb0">Gastos de envÃo: <br /><small>Todos los productos</small></h2> 5257 <div class="col -span-12 half mb20" style="clear: both"> 5258 <div class="col -span-12 half" style="padding-left: 0"> 5259 <div class="col -span-3 half"> 5260 <h4>España <span class="weight-normal">(peninsular)</span></h4> 5261 <div class="col -span-6 nopadding" style="padding-left:0;"> 5262 <div class=" contentBlockShipping"> 5263 Más de 60 ⬠5264 <br /> 5265 <strong>GRATIS</strong> 5266 </div> 5267 </div> 5268 <div class="col -span-6 nopadding" style="padding-right:0;"> 5269 <div class=" contentBlockShipping"> 5270 Menos de 60 ⬠5271 <br /> 5272 <strong>
52727,90 â¬</strong> 5273 </div> 5274 </div> 5275 </div> 5276 <div class="col -span-3 half"> 5277 <h4>Islas Baleares</h4> 5278 <div class="contentBlockShipping double col -span-12"> 5279 Cada pedido<br /> <strong>24,90 â¬</strong> 5280 </div> 5281 </div> 5282 <div class="col -span-3 half"> 5283 <h4>Islas Canarias</h4> 5284 <div class="contentBlockShipping double"> 5285 Cada pedido<br /> <strong>99,90 â¬</strong> 5286 </div> 5287 </div> 5288 <div class="col -span-3 half"> 5289 <h4>Portugal y Francia</h4> 5290 <div class="contentBlockShipping double"> 5291 Cada pedido<br /> <strong>7,90 â¬</strong> 5292 </div> 5293 </div> 5294 5295 <div class="col -span-12"><div class="col -span-6 nopadding mt10">No 5296 realizamos entregas a Ceuta y Melilla.</div> 5297 <div class="col -span-6 nopadding mt10 -align-right"> 5298 EnvÃo a islas Francesas: 24,90 ⬠5299 </div> 5300 </div> 5301 </div> 5302 </div> 5303 <h2 class="col -span-12 clear-float mb0">Plazos de Entrega</h2> 5304 <p class="col -span-12 shippingInfoText">Nuestros plazos de producción y entregas a España peninsular en dÃas 5305 laborables (lunes a viernes):</p> 5306 <div class="col -span-6"> 5307 <div class="titleBlockShipping"> 5308 <strong>Lienzo</strong> (sin opciones adicionales) 5309 </div> 5310 <div class="contentBlockShipping mobile-mb25"> 5311 Producción: 1 dÃa laboral<br /> 5312 Entrega: 3-5 dÃas laborables<br /> 5313 <strong>Total: 4-6 dÃas laborables</strong> 5314 </div> 5315 </div> 5316 <div class="col -span-6"> 5317 <div class="titleBlockShipping"> 5318 <strong>Los demás productos</strong> 5319 </div> 5320 <div class="contentBlockShipping"> 5321 Producción: 2 dÃas laborables<br /> 5322 Entrega: 3-5 dÃas laborables<br /> 5323 <strong>Total: 5-7 dÃas laborables</strong> 5324 </div> 5325 </div> 5326 <p class="col -span-12 shippingInfoText"> 5327 Los pedidos de uno o dos productos de un tamaño máximo de 40x30cm serán enviados automáticamente sin 5328 seguimiento. 5329 </p> 5330 </div> 5331 </div> 5332 </section> 5333 </div> 5334 5335 5336 <link rel="stylesheet" type="text/css" href="/components/file-upload/css/file-upload.css" media="print" onload="this.media='all'" /> 5337 5338 <div class="uploader-cover js-up"> 5339 <span class="js-up-abort close clickable" id="uploadClose">Cerrar</span> 5340 <div class="centered"> 5341 5342 <svg role="presentation" class="icon -muted" width="100%" height="100%" xmlns="http://www.w3.org/2000/svg"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 72 72"><rect fill="#35b2b6" class="cls-1" width="72" height="72"></rect></svg> 5343 </svg> 5344 <div class="js-up-indicator coverup"> 5345 5346 <svg role="presentation" class="icon js-up-indicator-icon" width="100%" height="100%" xmlns="http://www.w3.org/2000/svg"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 72 72"><rect fill="#35b2b6" class="cls-1" width="72" height="72"></rect></svg> 5347 </svg> 5348 </div> 5349 <div class="text"> 5350 <span class="js-up-ongoing message">Su imagen se está cargando</span> 5351 <span class="js-up-prepare message -hidden">Denos un segundo<br /> 5352 Estamos preparando todo</span> 5353 <span class="js-up-redirect message -hidden">¡Subida completada!<br /></span> 5354 <div class="js-up-percentage percentage"><span class="js-up-percentage-value">0</span>%</div> 5355 <span class="js-up-file-size message -hidden"><small></small></span> 5356 </div> 5357 </div> 5358 </div> 5359 5360 <div class="modal animated fadeIn js-modal errorModal" id="fileTooBig"> 5361 <div class="head">Archivo demasiado grande</div> 5362 <div class="body">Tu imagen excede el lÃmite de 60 MB.<br /> 5363 Por favor, cambia el tamaño de la imagen y vuelve a intentarlo.</div> 5364 <div class="foot"><button id="j_id_39_6" name="j_id_39_6" onclick="var cf = function(){Modal.close('#fileTooBig')};var oamSF = function(){};return (cf.apply(this, [])==false)? false : oamSF.apply(this, []); " type="button" class="button -control -neutral clickable">OK</button> 5365 </div> 5366 </div> 5367
5368 <div class="modal animated fadeIn js-modal errorModal" id="fileTooManyDynamic"> 5369 <div class="head">Demasiadas fotos</div> 5370 <div class="body">Puedes subir un máximo de <span id="fileLimitNr">25</span> imágenes a la vez.</div> 5371 <div class="foot"><button id="j_id_39_9" name="j_id_39_9" onclick="var cf = function(){Modal.close('#fileTooManyDynamic')};var oamSF = function(){};return (cf.apply(this, [])==false)? false : oamSF.apply(this, []); " type="button" class="button -control -neutral clickable">OK</button> 5372 </div> 5373 </div> 5374 5375 <div class="modal animated fadeIn js-modal errorModal" id="fileTooMany"> 5376 <div class="head">Demasiadas fotos</div> 5377 <div class="body">Puedes subir un máximo de 100 imágenes a la vez.</div> 5378 <div class="foot"><button id="j_id_39_c" name="j_id_39_c" onclick="var cf = function(){Modal.close('#fileTooMany')};var oamSF = function(){};return (cf.apply(this, [])==false)? false : oamSF.apply(this, []); " type="button" class="button -control -neutral clickable">OK</button> 5379 </div> 5380 </div> 5381 5382 <div class="modal animated fadeIn js-modal errorModal" id="fileTooMany25"> 5383 <div class="head">Demasiadas fotos</div> 5384 <div class="body">You can upload a maximum of 25 pictures at once.</div> 5385 <div class="foot"><button id="j_id_39_f" name="j_id_39_f" onclick="var cf = function(){Modal.close('#fileTooMany25')};var oamSF = function(){};return (cf.apply(this, [])==false)? false : oamSF.apply(this, []); " type="button" class="button -control -neutral clickable">OK</button> 5386 </div> 5387 </div> 5388 5389 <div class="modal animated fadeIn js-modal errorModal" id="fileTooSmall"> 5390 <div class="head">La resolución de la imagen es insuficiente.</div> 5391 <div class="body">Desafortunadamente, la resolución de tu imagen no es suficiente para el producto seleccionado.<br /> 5392 Por favor selecciona otra imagen o elige otro producto.</div> 5393 <div class="foot"><button id="j_id_39_i" name="j_id_39_i" onclick="var cf = function(){Modal.close('#fileTooSmall')};var oamSF = function(){};return (cf.apply(this, [])==false)? false : oamSF.apply(this, []); " type="button" class="button -control -neutral clickable">OK</button> 5394 </div> 5395 </div> 5396 5397 <div class="modal animated fadeIn js-modal errorModal" id="fileWrongType"> 5398 <div class="head">Tipo de archive incorrecto</div> 5399 <div class="body">Podemos procesar los siguientes formatos:<br /> 5400 .jpg, .jpeg, .png, .gif, .webp</div> 5401 <div class="foot"><button id="j_id_39_l" name="j_id_39_l" onclick="var cf = function(){Modal.close('#fileWrongType')};var oamSF = function(){};return (cf.apply(this, [])==false)? false : oamSF.apply(this, []); " type="button" class="button -control -neutral clickable">OK</button> 5402 </div> 5403 </div> 5404 5405 <div class="modal animated fadeIn js-modal errorModal" id="fileUploadError"> 5406 <div class="head">Error en la carga</div> 5407 <div class="body">Lamentablemente, ha ocurrido un error durante la carga. Por favor, inténtalo de nuevo.<br /> 5408 Si el problema persiste, sube tu imagen utilizando este cargador. <a href="/singleupload.jsf">UPLOADER</a>. 5409 </div> 5410 <div class="foot"><button id="j_id_39_o" name="j_id_39_o" onclick="var cf = function(){Modal.close('#fileUploadError')};var oamSF = function(){};return (cf.apply(this, [])==false)? false : oamSF.apply(this, []); " type="button" class="button -control -neutral clickable">OK</button> 5411 </div> 5412 </div> 5413 5414 <div class="modal animated fadeIn js-modal errorModal" id="errorOnImageProcessingOccured"> 5415 <div class="head">Error durante el procesamiento de imágenes</div> 5416 <div class="body">Lamentablemente, se ha producido un error al procesar sus imágenes. Por favor, inténtelo de nuevo.<br /> 5417 Si el problema persiste, vuelva a cargar la página y vuelva a cargar las imágenes. 5418 </div> 5419 <div class="foot"><button id="j_id_39_r" name="j_id_39_r" onclick="var cf = function(){Modal.close('#errorOnImageProcessingOccured')};var oamSF = function(){};return (cf.apply(this, [])==false)? false : oamSF.apply(this, []); " type="button" class="button -control -neutral clickable">OK</button> 5420 </div> 5421 </div> 5422
5423 <div class="modal animated fadeIn js-modal errorModal" id="fileUploadErrorResolution"> 5424 <div class="head">Resolución demasiado alta</div> 5425 <div class="body"> 5426 Lamentablemente, el número de pÃxeles de la imagen cargada es demasiado alto.<br /> 5427 Por favor, reduzca la resolución de la imagen y vuelva a subirla. 5428 </div> 5429 <div class="foot"><button id="j_id_39_u" name="j_id_39_u" onclick="var cf = function(){Modal.close('#fileUploadErrorResolution')};var oamSF = function(){};return (cf.apply(this, [])==false)? false : oamSF.apply(this, []); " type="button" class="button -control -neutral clickable">OK</button> 5430 </div> 5431 </div> 5432 5433
5433<script type="text/javascript" data-cookiefirst-category="necessary"> 5434 document.getElementById("uploadClose").onclick = function() { 5435 location.href = window.location; 5436 }; 5437 </script>
5437 5438 5439 5440
5440<script type="text/javascript"> 5441 // <![CDATA[ 5442 (function() { 5443 if (window.Modal && typeof window.Modal.updateDom === 'function') { 5444 window.Modal.updateDom(); 5445 } else if (window.jQuery && typeof jQuery.modal === 'function') { 5446 jQuery.modal(); 5447 } 5448 })(); 5449 // ]]> 5450 </script>
5450 5451 5452
5452<script src="https://assets.cdn-shop.com/mi-arte3-es/static/build/js/ux-desktop-ba061be731.min.js"></script>
5452 5453
5453<script src="/components/blog/js/blog-esential.js"></script>
5453 5454
5454<script src="/components/blog/js/easyPaginate.js"></script>
5454 5455 5456
5456<script> 5457 // <![CDATA[ 5458 document.addEventListener("DOMContentLoaded", function() { 5459 var hash = window.location.hash; 5460 if (hash && hash.includes("#page")) { 5461 document.getElementById("robotsMeta").setAttribute("content", "NOINDEX,FOLLOW"); 5462 } 5463 }); 5464 // ]]> 5465 </script>
5465 5466
5467<script> 5468 //<![CDATA[ 5469 5470 const sessionId = "48BC950FF31E7001C57FE4212E02AA62"; 5471 const shopUrl = `https://www.mi-arte.es/rest/api/fc/map/consent/cookiefirst`; 5472 const shopId = "45"; 5473 const language = "es"; 5474 5475 window.addEventListener("cf_consent", function() { 5476 sendConsent(); 5477 }); 5478 5479 window.addEventListener("cf_services_consent", function() { 5480 sendConsent(); 5481 }); 5482 5483 function getCookieValue(cookieName) { 5484 const cookies = document.cookie.split("; ").reduce((acc, cookie) => { 5485 const [key, value] = cookie.split("="); 5486 acc[key] = value; 5487 return acc; 5488 }, {}); 5489 return cookies[cookieName] ? JSON.parse(decodeURIComponent(cookies[cookieName])) : null; 5490 } 5491 5492 function sendConsent() { 5493 const consentData = getCookieValue("cookiefirst-consent"); 5494 5495 if (consentData) { 5496 $.ajax({ 5497 url: shopUrl, 5498 type: "POST", 5499 headers: { 5500 "JSESSIONID": sessionId 5501 }, 5502 contentType: "application/json", 5503 data: JSON.stringify({ 5504 shopId: shopId, 5505 email: null, 5506 language: language, 5507 data: { 5508 necessary: consentData.necessary, 5509 performance: consentData.performance, 5510 functional: consentData.functional, 5511 advertising: consentData.advertising, 5512 timestamp: consentData.timestamp, 5513 type: consentData.type, 5514 version: consentData.version 5515 } 5516 }), 5517 success: function(response) { 5518 console.log("Success:", response); 5519 }, 5520 error: function(xhr, status, error) { 5521 console.error("Error:", error); 5522 } 5523 }); 5524 } else { 5525 console.warn("Consent cookie not found or invalid."); 5526 } 5527 } 5528 //]]> 5529</script>
5529 5530 5531
5531<script> 5532 if ('serviceWorker' in navigator) { 5533 // Unregister PWA Service worker 5534 navigator.serviceWorker.getRegistrations().then( 5535 5536 function(registrations) { 5537 5538 for(let registration of registrations) { 5539 registration.unregister(); 5540 5541 } 5542 5543 }); 5544 } 5545 </script>
5545 5546 5547 5548 5549 5550<style type="text/css"> 5551 /* 1. Hide topbar + promo-banner row */ 5552 html.recording-mode #topbar-wrapper { display: none !important; } 5553 5554 /* 5555 2. Hero teaser swap. Selector list covers all 7 shops: 5556 .page-teaser .showcase - MPUK, CDUS, MFDE, monoeuvre.fr, stampa-su-tela.it 5557 .multiproduct-banner - BCNL, mi-arte.es 5558 background-size: cover + center positioning standardises the look across 5559 container heights that vary 300px - 550px between shops. 5560 */ 5561 html.recording-mode .page-teaser .showcase, 5562 html.recording-mode .multiproduct-banner { 5563 background-image: url(/dynamicimage/product/libraryimages/image2/19480/mobile.webp) !important; 5564 background-size: cover !important; 5565 background-position: center center !important; 5566 background-repeat: no-repeat !important; 5567 } 5568 @media (min-width: 768px) { 5569 html.recording-mode .page-teaser .showcase, 5570 html.recording-mode .multiproduct-banner { 5571 background-image: url(/dynamicimage/product/libraryimages/image2/19479/my-picture-on-canvas.webp) !important; 5572 } 5573 } 5574 5575 /* 5576 3. Promo banner swap. 5577 Most homepages have multiple promo-banner slots (wall-decor, pillow, gifts, 5578 starMap, etc). We only want the FIRST hero banner swapped, not every tile. 5579 The JS block below tags the first matched element with .recording-target-banner; 5580 this CSS rule scopes the background swap to that element only. 5581 */ 5582 html.recording-mode .recording-target-banner { 5583 background-image: url(/dynamicimage/product/libraryimages/image2/19482/banner-mobile.webp) !important; 5584 background-size: cover !important; 5585 background-position: center center !important; 5586 background-repeat: no-repeat !important; 5587 } 5588 @media (min-width: 768px) { 5589 html.recording-mode .recording-target-banner { 5590 background-image: url(/dynamicimage/product/libraryimages/image2/19830/decoy-summer.webp) !important; 5591 } 5592 } 5593</style> 5594
5595<script type="text/javascript"> 5596//<![CDATA[ 5597 5598(function () { 5599 var params = new URLSearchParams(location.search); 5600 if (params.get('isrecording') === 'true') { 5601 sessionStorage.setItem('recordingMode', '1'); 5602 } 5603 if (sessionStorage.getItem('recordingMode') !== '1') return; 5604 5605 document.documentElement.classList.add('recording-mode'); 5606 5607 // URLs resolved server-side by JSF EL. 5608 var URLS = { 5609 teaserDesktop: '/dynamicimage/product/libraryimages/image2/19479/my-picture-on-canvas.webp', 5610 teaserMobile: '/dynamicimage/product/libraryimages/image2/19480/mobile.webp', 5611 bannerDesktop: '/dynamicimage/product/libraryimages/image2/19830/decoy-summer.webp', 5612 bannerMobile: '/dynamicimage/product/libraryimages/image2/19482/banner-mobile.webp' 5613 }; 5614 5615 function setImgSrc(img, url) { 5616 img.setAttribute('src', url); 5617 if (img.hasAttribute('data-src')) img.setAttribute('data-src', url); 5618 img.removeAttribute('srcset'); 5619 } 5620 5621 function swapAll() { 5622 var isDesktop = window.matchMedia('(min-width: 768px)').matches; 5623 var teaserUrl = isDesktop ? URLS.teaserDesktop : URLS.teaserMobile; 5624 var bannerUrl = isDesktop ? URLS.bannerDesktop : URLS.bannerMobile; 5625 5626 // Phone hero teaser variants render the teaser as an img element instead of 5627 // a background-image. On desktop the teaser is a background-image (handled 5628 // entirely by the CSS rule above), and `.page-teaser .product > img` matches 5629 // unrelated decorative elements like MFDE's profiFotoBadge - so the img-swap 5630 // is gated to mobile viewports only. 5631 if (!isDesktop) { 5632 var teaserSelectors = [ 5633 '.page-teaser .showcase .product >
5633 img', // MFDE, CDUS phone 5634 '.multiproduct-banner .banner-image > img' // BCNL, mi-arte phone 5635 ]; 5636 document.querySelectorAll(teaserSelectors.join(',')).forEach(function (img) { 5637 setImgSrc(img, teaserUrl); 5638 }); 5639 } 5640 5641 // Pick the FIRST hero banner on the page. Try selectors in priority order: 5642 // 1. data-analysis-data="promo-banner" - MPUK, CDUS, monoeuvre.fr, MFDE 5643 // 2. #campaignBanner - BCNL, mi-arte.es (category-teaser-right with that id) 5644 // 3. .category-teaser-left - stampa-su-tela.it (wall-decor themed left teaser) 5645 var bannerSelectors = [ 5646 '[data-analysis-data*="promo-banner"]', 5647 '#campaignBanner', 5648 '.category-teaser-left' 5649 ]; 5650 var heroBanner = null; 5651 for (var i = 0; i < bannerSelectors.length && !heroBanner; i++) { 5652 heroBanner = document.querySelector(bannerSelectors[i]); 5653 } 5654 if (heroBanner) { 5655 // Two distinct banner shapes need different treatment: 5656 // - MFDE: the matched element is a div.text-part flex container with 5657 // an img on one side and a text caption on the other. Tagging this 5658 // with .recording-target-banner would paint the CSS background 5659 // across the whole container (including behind the text). Swap the 5660 // img src only. 5661 // - MPUK/CDUS/monoeuvre/BCNL/mi-arte/stampa: matched element is the 5662 // image container itself with inline background-image, no inner 5663 // img child. Tag for CSS background swap. 5664 var innerImgs = heroBanner.querySelectorAll('img'); 5665 if (innerImgs.length) { 5666 innerImgs.forEach(function (img) { 5667 setImgSrc(img, bannerUrl); 5668 }); 5669 } else { 5670 heroBanner.classList.add('recording-target-banner'); 5671 } 5672 } 5673 } 5674 5675 if (document.readyState === 'loading') { 5676 document.addEventListener('DOMContentLoaded', swapAll); 5677 } else { 5678 swapAll(); 5679 } 5680})(); 5681//]]> 5682</script>
5682 5683 5684 5685
5685<script type="text/javascript" src="/components/file-upload/js/fileupload.js" defer="defer"></script>
5685 5686 5687 5688 5689
vendor: 4,150 bytes, lines 5689-5694
5689<script type="text/javascript"> 5690 5691 // <![CDATA[ 5692/*! lazysizes - v5.3.2 */ 5693 5694!function(e){var t=function(u,D,f){"use strict";var k,H;if(function(){var e;var t={lazyClass:"lazyload",loadedClass:"lazyloaded",loadingClass:"lazyloading",preloadClass:"lazypreload",errorClass:"lazyerror",autosizesClass:"lazyautosizes",fastLoadedClass:"ls-is-cached",iframeLoadMode:0,srcAttr:"data-src",srcsetAttr:"data-srcset",sizesAttr:"data-sizes",minSize:40,customMedia:{},init:true,expFactor:1.5,hFac:.8,loadMode:2,loadHidden:true,ricTimeout:0,throttleDelay:125};H=u.lazySizesConfig||u.lazysizesConfig||{};for(e in t){if(!(e in H)){H[e]=t[e]}}}(),!D||!D.getElementsByClassName){return{init:function(){},cfg:H,noSupport:true}}var O=D.documentElement,i=u.HTMLPictureElement,P="addEventListener",$="getAttribute",q=u[P].bind(u),I=u.setTimeout,U=u.requestAnimationFrame||I,o=u.requestIdleCallback,j=/^picture$/i,r=["load","error","lazyincluded","_lazyloaded"],a={},G=Array.prototype.forEach,J=function(e,t){if(!a[t]){a[t]=new RegExp("(\\s|^)"+t+"(\\s|$)")}return a[t].test(e[$]("class")||"")&&a[t]},K=function(e,t){if(!J(e,t)){e.setAttribute("class",(e[$]("class")||"").trim()+" "+t)}},Q=function(e,t){var a;if(a=J(e,t)){e.setAttribute("class",(e[$]("class")||"").replace(a," "))}},V=function(t,a,e){var i=e?P:"removeEventListener";if(e){V(t,a)}r.forEach(function(e){t[i](e,a)})},X=function(e,t,a,i,r){var n=D.createEvent("Event");if(!a){a={}}a.instance=k;n.initEvent(t,!i,!r);n.detail=a;e.dispatchEvent(n);return n},Y=function(e,t){var a;if(!i&&(a=u.picturefill||H.pf)){if(t&&t.src&&!e[$]("srcset")){e.setAttribute("srcset",t.src)}a({reevaluate:true,elements:[e]})}else if(t&&t.src){e.src=t.src}},Z=function(e,t){return(getComputedStyle(e,null)||{})[t]},s=function(e,t,a){a=a||e.offsetWidth;while(a<H.minSize&&t&&!e._lazysizesWidth){a=t.offsetWidth;t=t.parentNode}return a},ee=function(){var a,i;var t=[];var r=[];var n=t;var s=function(){var e=n;n=t.length?r:t;a=true;i=false;while(e.length){e.shift()()}a=false};var e=function(e,t){if(a&&!t){e.apply(this,arguments)}else{n.push(e);if(!i){i=true;(D.hidden?I:U)(s)}}};e._lsFlush=s;return e}(),te=function(a,e){return e?function(){ee(a)}:function(){var e=this;var t=arguments;ee(function(){a.apply(e,t)})}},ae=function(e){var a;var i=0;var r=H.throttleDelay;var n=H.ricTimeout;var t=function(){a=false;i=f.now();e()};var s=o&&n>49?function(){o(t,{timeout:n});if(n!==H.ricTimeout){n=H.ricTimeout}}:te(function(){I(t)},true);return function(e){var t;if(e=e===true){n=33}if(a){return}a=true;t=r-(f.now()-i);if(t<0){t=0}if(e||t<9){s()}else{I(s,t)}}},ie=function(e){var t,a;var i=99;var r=function(){t=null;e()};var n=function(){var e=f.now()-a;if(e<i){I(n,i-e)}else{(o||r)(r)}};return function(){a=f.now();if(!t){t=I(n,i)}}},e=function(){var v,m,c,h,e;var y,z,g,p,C,b,A;var n=/^img$/i;var d=/^iframe$/i;var E="onscroll"in u&&!/(gle|ing)bot/.test(navigator.userAgent);var _=0;var w=0;var M=0;var N=-1;var L=function(e){M--;if(!e||M<0||!e.target){M=0}};var x=function(e){if(A==null){A=Z(D.body,"visibility")=="hidden"}return A||!(Z(e.parentNode,"visibility")=="hidden"&&Z(e,"visibility")=="hidden")};var W=function(e,t){var a;var i=e;var r=x(e);g-=t;b+=t;p-=t;C+=t;while(r&&(i=i.offsetParent)&&i!=D.body&&i!=O){r=(Z(i,"opacity")||1)>0;if(r&&Z(i,"overflow")!="visible"){a=i.getBoundingClientRect();r=C>a.left&&p<a.right&&b>a.top-1&&g<a.bottom+1}}return r};var t=function(){var e,t,a,i,r,n,s,o,l,u,f,c;var d=k.elements;if((h=H.loadMode)&&M<8&&(e=d.length)){t=0;N++;for(;t<e;t++){if(!d[t]||d[t]._lazyRace){continue}if(!E||k.prematureUnveil&&k.prematureUnveil(d[t])){R(d[t]);continue}if(!(o=d[t][$]("data-expand"))||!(n=o*1)){n=w}if(!u){u=!H.expand||H.expand<1?O.clientHeight>500&&O.clientWidth>500?500:370:H.expand;k._defEx=u;f=u*H.expFactor;c=H.hFac;A=null;if(w<f&&M<1&&N>2&&h>2&&!D.hidden){w=f;N=0}else if(h>1&&N>1&&M<6){w=u}else{w=_}}if(l!==n){y=innerWidth+n*c;z=innerHeight+n;s=n*-1;l=n}a=d[t].getBoundingClientRect();if((b=a.bottom)>=s&&(g=a.top)<=z&&(C=a.right)>=s*c&&(p=a.left)<=y&&(b||C||p||g)&&(H.loadHidden||x(d[t]))&&(m&&M<3&&!o&&(h<3||N<4)||W(d[t],n))){R(d[t]);r=true;if(M>9){break}}else if(!r&&m&&!i&&M<4&&N<4&&h>
vendor: 3,851 bytes, lines 5694-5697
56942&&(v[0]||H.preloadAfterLoad)&&(v[0]||!o&&(b||C||p||g||d[t][$](H.sizesAttr)!="auto"))){i=v[0]||d[t]}}if(i&&!r){R(i)}}};var a=ae(t);var S=function(e){var t=e.target;if(t._lazyCache){delete t._lazyCache;return}L(e);K(t,H.loadedClass);Q(t,H.loadingClass);V(t,B);X(t,"lazyloaded")};var i=te(S);var B=function(e){i({target:e.target})};var T=function(e,t){var a=e.getAttribute("data-load-mode")||H.iframeLoadMode;if(a==0){e.contentWindow.location.replace(t)}else if(a==1){e.src=t}};var F=function(e){var t;var a=e[$](H.srcsetAttr);if(t=H.customMedia[e[$]("data-media")||e[$]("media")]){e.setAttribute("media",t)}if(a){e.setAttribute("srcset",a)}};var s=te(function(t,e,a,i,r){var n,s,o,l,u,f;if(!(u=X(t,"lazybeforeunveil",e)).defaultPrevented){if(i){if(a){K(t,H.autosizesClass)}else{t.setAttribute("sizes",i)}}s=t[$](H.srcsetAttr);n=t[$](H.srcAttr);if(r){o=t.parentNode;l=o&&j.test(o.nodeName||"")}f=e.firesLoad||"src"in t&&(s||n||l);u={target:t};K(t,H.loadingClass);if(f){clearTimeout(c);c=I(L,2500);V(t,B,true)}if(l){G.call(o.getElementsByTagName("source"),F)}if(s){t.setAttribute("srcset",s)}else if(n&&!l){if(d.test(t.nodeName)){T(t,n)}else{t.src=n}}if(r&&(s||l)){Y(t,{src:n})}}if(t._lazyRace){delete t._lazyRace}Q(t,H.lazyClass);ee(function(){var e=t.complete&&t.naturalWidth>1;if(!f||e){if(e){K(t,H.fastLoadedClass)}S(u);t._lazyCache=true;I(function(){if("_lazyCache"in t){delete t._lazyCache}},9)}if(t.loading=="lazy"){M--}},true)});var R=function(e){if(e._lazyRace){return}var t;var a=n.test(e.nodeName);var i=a&&(e[$](H.sizesAttr)||e[$]("sizes"));var r=i=="auto";if((r||!m)&&a&&(e[$]("src")||e.srcset)&&!e.complete&&!J(e,H.errorClass)&&J(e,H.lazyClass)){return}t=X(e,"lazyunveilread").detail;if(r){re.updateElem(e,true,e.offsetWidth)}e._lazyRace=true;M++;s(e,t,r,i,a)};var r=ie(function(){H.loadMode=3;a()});var o=function(){if(H.loadMode==3){H.loadMode=2}r()};var l=function(){if(m){return}if(f.now()-e<999){I(l,999);return}m=true;H.loadMode=3;a();q("scroll",o,true)};return{_:function(){e=f.now();k.elements=D.getElementsByClassName(H.lazyClass);v=D.getElementsByClassName(H.lazyClass+" "+H.preloadClass);q("scroll",a,true);q("resize",a,true);q("pageshow",function(e){if(e.persisted){var t=D.querySelectorAll("."+H.loadingClass);if(t.length&&t.forEach){U(function(){t.forEach(function(e){if(e.complete){R(e)}})})}}});if(u.MutationObserver){new MutationObserver(a).observe(O,{childList:true,subtree:true,attributes:true})}else{O[P]("DOMNodeInserted",a,true);O[P]("DOMAttrModified",a,true);setInterval(a,999)}q("hashchange",a,true);["focus","mouseover","click","load","transitionend","animationend"].forEach(function(e){D[P](e,a,true)});if(/d$|^c/.test(D.readyState)){l()}else{q("load",l);D[P]("DOMContentLoaded",a);I(l,2e4)}if(k.elements.length){t();ee._lsFlush()}else{a()}},checkElems:a,unveil:R,_aLSL:o}}(),re=function(){var a;var n=te(function(e,t,a,i){var r,n,s;e._lazysizesWidth=i;i+="px";e.setAttribute("sizes",i);if(j.test(t.nodeName||"")){r=t.getElementsByTagName("source");for(n=0,s=r.length;n<s;n++){r[n].setAttribute("sizes",i)}}if(!a.detail.dataAttr){Y(e,a.detail)}});var i=function(e,t,a){var i;var r=e.parentNode;if(r){a=s(e,r,a);i=X(e,"lazybeforesizes",{width:a,dataAttr:!!t});if(!i.defaultPrevented){a=i.detail.width;if(a&&a!==e._lazysizesWidth){n(e,r,i,a)}}}};var e=function(){var e;var t=a.length;if(t){e=0;for(;e<t;e++){i(a[e])}}};var t=ie(e);return{_:function(){a=D.getElementsByClassName(H.autosizesClass);q("resize",t)},checkElems:t,updateElem:i}}(),t=function(){if(!t.i&&D.getElementsByClassName){t.i=true;re._();e._()}};return I(function(){H.init&&t()}),k={cfg:H,autoSizer:re,loader:e,init:t,uP:Y,aC:K,rC:Q,hC:J,fire:X,gW:s,rAF:ee}}(e,e.document,Date);e.lazySizes=t,"object"==typeof module&&module.exports&&(module.exports=t)}("undefined"!=typeof window?window:{}); 5695 // ]]> 5696 5697 </script>
5697 5698 5699 5700 5701
5701<script type="text/javascript"> 5702 //<![CDATA[ 5703 var pushErrorTooBig = function() { 5704 window.dataLayer = window.dataLayer || []; 5705 window.dataLayer.push({ 5706 'event': 'ui.output', 5707 'eventGroup': 'UI', 5708 'ui': { 5709 'interface': 'FileUploader', 5710 'output': { 5711 'type': 'popup', 5712 'output': 'error', 5713 'output_value': 'file_too_big', 5714 'text': 'File is too large', 5715 'id': 2 5716 } 5717 } 5718 }); 5719 }; 5720 5721 var pushErrorWrongFile = function() { 5722 window.dataLayer = window.dataLayer || []; 5723 window.dataLayer.push({ 5724 'event': 'ui.output', 5725 'eventGroup': 'UI', 5726 'ui': { 5727 'interface': 'FileUploader', 5728 'output': { 5729 'type': 'popup', 5730 'output': 'error', 5731 'output_value': 'wrong_file_type', 5732 'text': 'Wrong file type', 5733 'id': 3 5734 } 5735 } 5736 }); 5737 }; 5738 5739 var pushErrorTooSmall = function() { 5740 window.dataLayer = window.dataLayer || []; 5741 window.dataLayer.push({ 5742 'event': 'ui.output', 5743 'eventGroup': 'UI', 5744 'ui': { 5745 'interface': 'FileUploader', 5746 'output': { 5747 'type': 'popup', 5748 'output': 'error', 5749 'output_value': 'file_too_small', 5750 'text': 'Image resolution insufficient', 5751 'id': 1 5752 } 5753 } 5754 }); 5755 }; 5756 5757 var pushErrorResolution = function() { 5758 window.dataLayer = window.dataLayer || []; 5759 window.dataLayer.push({ 5760 'event': 'ui.output', 5761 'eventGroup': 'UI', 5762 'ui': { 5763 'interface': 'FileUploader', 5764 'output': { 5765 'type': 'popup', 5766 'output': 'error', 5767 'output_value': 'resulution_too_high', 5768 'text': 'Resolution too high', 5769 'id': 4 5770 } 5771 } 5772 }); 5773 }; 5774 5775 var pushErrorOther = function() { 5776 window.dataLayer = window.dataLayer || []; 5777 window.dataLayer.push({ 5778 'event': 'ui.output', 5779 'eventGroup': 'UI', 5780 'ui': { 5781 'interface': 'FileUploader', 5782 'output': { 5783 'type': 'popup', 5784 'output': 'error', 5785 'output_value': 'other_fileupload_error', 5786 'text': 'Error while uploading', 5787 'id': 5 5788 } 5789 } 5790 }); 5791 }; 5792 5793 var pushErrorTooMany = function() { 5794 window.dataLayer = window.dataLayer || []; 5795 window.dataLayer.push({ 5796 'event': 'ui.output', 5797 'eventGroup': 'UI', 5798 'ui': { 5799 'interface': 'FileUploader', 5800 'output': { 5801 'type': 'popup', 5802 'output': 'error', 5803 'output_value': 'too_many_pictures', 5804 'text': 'Too many pictures', 5805 'id': 6 5806 } 5807 } 5808 }); 5809 }; 5810 //]]> 5811 5812 </script>
5812 5813 5814 <style> 5815 :root { 5816 --primaryColor: #35B2B6; 5817 } 5818 5819 .mobile-chat-container, 5820 .usabilla_live_button_container { 5821 display: none; 5822 } 5823 5824 .getfeedback-mobile-widget { 5825 background: #fff; 5826 border: solid 2px var(--primaryColor); 5827 border-radius: 4px 0 0 4px; 5828 position: fixed; 5829 width: 40px; 5830 height: 38px; 5831 display: block; 5832 bottom: 30vh; 5833 margin-bottom: 2px; 5834 right: -2px; 5835 color: var(--primaryColor); 5836 font-size: 13px; 5837 text-align: center; 5838 font-weight: bold; 5839 cursor: pointer; 5840 z-index: 899; 5841 display: flex; 5842 align-items: center; 5843 justify-content: center; 5844 z-index: 2000000000; 5845 } 5846 5847 .getFeedbackModalOption { 5848 background-color: #fff; 5849 border: 2px solid var(--primaryColor); 5850 border-radius: 4px 0 0 4px; 5851 height: 37px; 5852 margin: 20px 0; 5853 width: 202px; 5854 display: flex; 5855 align-items: center; 5856 } 5857 5858 .getFeedbackModalOption button { 5859 border: none; 5860 height: 37px; 5861 width: 100%; 5862 padding: 0 0 0 10px; 5863 text-align: left; 5864 display: flex; 5865 align-items: center; 5866 } 5867 5868 .getFeedbackModalOption .icon { 5869 background-size: 20px; 5870 background-repeat: no-repeat; 5871 width: 20px; 5872 display: inline-block; 5873 height: 20px; 5874 position: relative; 5875 top: 0; 5876 } 5877 5878 .getFeedbackModalOption .icon.iconFeedback { 5879 background-image: url('/components/feedback/img/feedback_icon_feedback.svg'); 5880 } 5881 5882 .getFeedbackModalOption .icon.iconChat { 5883 background-image: url('/components/feedback/img/feedback_icon_chat.svg'); 5884 } 5885 5886 .getFeedbackModalOption .icon.iconHelp { 5887 background-image: url('/components/feedback/img/feedback_icon_help.svg'); 5888 } 5889 5890 .getFeedbackModalOption span:nth-child(2) { 5891 margin-left: 10px; 5892 font-size: 16px; 5893 color: var(--primaryColor); 5894 font-weight: 600; 5895 } 5896 5897 .getfeedback-overlay { 5898 position: fixed; 5899 background-color: transparent; 5900 padding: 0 0 0 10px; 5901 width: 225px !important; 5902 right: 0px !important; 5903 bottom: 30vh !important; 5904 left: unset !important; 5905 top: unset !important; 5906 border: none !important; 5907 z-index: 2000000002; 5908 } 5909 5910 #getFeedbackModalWrap.modal-wrap.-opened { 5911 position: fixed; 5912 display: block; 5913 z-index: 2000000002; 5914 opacity: 1; 5915 background-color: rgba(0, 0, 0, .6); 5916 top: 0; 5917 bottom: 0; 5918 left: 0; 5919 right: 0; 5920 } 5921 5922 .getfeedback-overlay .head { 5923 display: none; 5924 } 5925 5926 @media only screen and (orientation: landscape) { 5927 .getfeedback-overlay { 5928 bottom: 0px !important; 5929 } 5930 } 5931 5932 .getfeedback-overlay .head, 5933 .getfeedback-overlay .scroll { 5934 background-color: transparent !important; 5935 } 5936 5937 .getfeedback-overlay .foot { 5938 float: right; 5939 padding: 0; 5940 } 5941 5942 .getfeedback-overlay .foot .feedbackclose, 5943 .getfeedback-overlay .foot .feedbackclose:hover { 5944 background-color: var(--primaryColor); 5945 width: 42px !important; 5946 height: 42px; 5947 border: 2px solid var(--primaryColor); 5948 border-radius: 4px 0 0 4px; 5949 } 5950 5951 .getfeedback-overlay .foot .feedbackclose span { 5952 width: 100%; 5953 height: 100%; 5954 background: transparent; 5955 display: block; 5956 position: relative; 5957 z-index: 9; 5958 } 5959 5960 .getfeedback-overlay .foot .feedbackclose span:before { 5961 content: ' '; 5962 height: 32px; 5963 width: 4px; 5964 background-color: #fff !important; 5965 display: inline-block; 5966 background-image: none; 5967 transform: rotate(45deg); 5968 border-style: none; 5969 top: 4px; 5970 position: relative; 5971 left: 3px; 5972 margin-top: 0; 5973 } 5974 5975 .getfeedback-overlay .foot .feedbackclose span:after { 5976 content: ' '; 5977 height: 32px; 5978 width: 4px; 5979 background-color: #fff !important; 5980 display: inline-block; 5981 transform: rotate(-45deg); 5982 position: relative; 5983 top: 4px; 5984 left: -2px; 5985 } 5986 5987 .getfeedback-overlay .getFeedbackModalOption { 5988 background-color: #fff; 5989 border: 2px solid var(--primaryColor); 5990 border-radius: 4px 0 0 4px; 5991 height: 37px; 5992 margin: 20px 0; 5993 width: 202px; 5994 } 5995 5996 .getfeedback-overlay .getFeedbackModalOption button { 5997 border: none; 5998 height: 37px; 5999 width: 100%; 6000 padding: 0 0 0 10px; 6001 text-align: left; 6002 background-color: transparent; 6003 } 6004 6005 .getfeedback-overlay .getFeedbackModalOption .icon { 6006 background-size: 20px; 6007 background-repeat: no-repeat;
6008 width: 20px; 6009 display: inline-block; 6010 height: 20px; 6011 position: relative; 6012 top: 0; 6013 } 6014 6015 .getfeedback-overlay .getFeedbackModalOption .icon.iconFeedback { 6016 background-image: url('/components/feedback/img/feedback_icon_feedback.svg'); 6017 } 6018 6019 .getfeedback-overlay .getFeedbackModalOption .icon.iconChat { 6020 background-image: url('/components/feedback/img/feedback_icon_chat.svg'); 6021 } 6022 6023 .getfeedback-overlay .getFeedbackModalOption .icon.iconHelp { 6024 background-image: url('/components/feedback/img/feedback_icon_help.svg'); 6025 } 6026 6027 .getfeedback-overlay .getFeedbackModalOption span:nth-child(2) { 6028 margin-left: 10px; 6029 font-size: 16px; 6030 color: var(--primaryColor); 6031 font-weight: 600; 6032 } 6033 6034 .QSIWebResponsive .QSIWebResponsiveDialog-Layout1-SI_3wkF9cAgIWOZKqW_embedded-target-container, 6035 body>div.QSIWebResponsive>div.QSIWebResponsive-creative-container-fade>div>div.QSIWebResponsiveDialog-Layout1-SI_3wkF9cAgIWOZKqW_embedded-target-container { 6036 width: 100% !important; 6037 } 6038 #helix-chat-container { 6039 z-index: 9999999999; 6040 position: relative; 6041 } 6042 #helix-chat-container > div { 6043 visibility: hidden; 6044 } 6045 #zowieFloatingButton, 6046 #zowieFloatingButtonMobile { 6047 display: none !important; 6048 } 6049 #zowieChatbotWrapper { 6050 bottom: 0 !important; 6051 } 6052 </style> 6053 <div class="getfeedback-mobile-widget" id="getfeedback-widget-button" onclick="event.stopPropagation();$('.getfeedback-mobile-widget').css('display', 'none');$('#getFeedbackModal').show();if($('#getFeedbackModal').data('plugin_modal')){Modal.open('#getFeedbackModal');}else{$('#getFeedbackModalWrap').addClass('-opened');}$('#getfeedback-widget-button').css('display', 'none');if(window.gleenWidget) {window.gleenWidget.close()}" style="cursor: pointer;"> 6054 <span>Support</span> 6055 </div> 6056 <div class="modal-wrap" id="getFeedbackModalWrap"></div> 6057 6058 6059 <div class="js-modal getfeedback-overlay" id="getFeedbackModal"> 6060 <div class="body"> 6061 <div class="getFeedbackModalOption"> 6062 <button class="button -control -neutral" type="button" id="chatButton" onclick="document.querySelector('#helix-chat-container > div > div')?.click();closeFeedbackModal();"> 6063 <span class="icon iconChat"></span> 6064 <span>Live chat</span> 6065 </button> 6066 </div> 6067 <div class="getFeedbackModalOption"> 6068 6069 <button class="button -control -neutral" type="button" id="usbl-integrated-button" onclick="closeFeedbackModal(); populateSurveyField('Feedback_Button'); profileClicked();"> 6070 <span class="icon iconFeedback"></span> 6071 <span>Comentario</span> 6072 </button> 6073 </div> 6074 </div> 6075 <div class="foot"> 6076 <button class="button -control -neutral feedbackclose" type="button" onclick="closeFeedbackModal()"><span></span></button> 6077 </div> 6078 </div> 6079 6080 6081 <span id="OSP_Survey" style="display: none;"></span> 6082 6083
6083<script type="text/javascript"> 6084 //<![CDATA[ 6085 6086 document.addEventListener("click", function (event) { 6087 const modal = document.getElementById("zowieAlternativeChannels"); 6088 const chatButton = document.getElementById("chatButton"); 6089 6090 if (!modal || !chatButton) return; 6091 6092 if (chatButton.contains(event.target)) { 6093 modal.style.opacity = 1; // Show the element when chatButton is clicked 6094 } else if (!modal.contains(event.target)) { 6095 modal.style.opacity = 0; // Hide the element when clicking outside 6096 } 6097 }); 6098 6099 var hasInterceptLoaded; // changed let to var due to random errors when changing payment method on checkout page (defined twice for some reason) 6100 window.addEventListener("qsi_js_loaded", interceptLoaded, false); 6101 6102 function interceptLoaded() { 6103 if (QSI.API) { 6104 hasInterceptLoaded = true; 6105 } else { 6106 hasInterceptLoaded = false; 6107 } 6108 } 6109 6110 function runIntercept() { 6111 if (hasInterceptLoaded) { 6112 QSI.API.run(); 6113 } 6114 } 6115 6116 function profileClicked() { 6117 if (hasInterceptLoaded) { 6118 QSI.API.unload(); 6119 QSI.API.load().done(runIntercept); 6120 } 6121 } 6122 6123 function hideFeedback() { 6124 if ($("#mobileMenu").hasClass("-expanded")) { 6125 $(".usabilla_live_button_container").css("z-index", "999"); 6126 $(".embeddedServiceHelpButton").css("z-index", "999"); 6127 } else { 6128 $(".usabilla_live_button_container").css("z-index", "-1"); 6129 $(".embeddedServiceHelpButton").css("z-index", "-1"); 6130 } 6131 } 6132 6133 // NGE-8420: the GetFeedback/Qualtrics survey is now opened from the inline onclick on 6134 // #usbl-integrated-button (see above), matching the old side-tab trigger in 6135 // /components/feedback/default.xhtml. The listener that used to live here was attached 6136 // at parse time and is no longer needed. 6137 6138 function populateSurveyField(val) { 6139 var field = document.getElementById('OSP_Survey'); 6140 field.textContent = val; 6141 } 6142 6143 var getFeedbackModal = document.getElementById("getFeedbackModal"); 6144 var getFeedbackModalWrap = document.getElementById("getFeedbackModalWrap"); 6145 6146 $(getFeedbackModal).hide(); //feedback modal to be closed on page load 6147 6148 // Function to close the modal 6149 function closeFeedbackModal() { 6150 $('#getFeedbackModal').hide(); 6151 $(getFeedbackModal.parentElement).removeClass('-opened'); 6152 $(getFeedbackModalWrap).removeClass('-opened'); // Also remove from wrap itself 6153 $('#getfeedback-widget-button').show(); 6154 $('body').css('overflow',''); 6155 $('html').css('overflow', ''); 6156 } 6157 6158 //hide, usabilla button, unhide the new widget button when closing modal by click outside 6159 $(document).ready(function() { 6160 // Check if window.usabilla_live is a function before calling it 6161 if (typeof window.usabilla_live === 'function') { 6162 try { 6163 window.usabilla_live("hide"); 6164 } catch (exception) { 6165 console.log(exception); 6166 } 6167 } else { 6168 console.log("window.usabilla_live is not a function"); 6169 } 6170 6171 if (getFeedbackModal) { 6172 getFeedbackModal.parentElement.addEventListener("click", function(event) { 6173 if (event.target === getFeedbackModal.parentElement) { 6174 closeFeedbackModal(); 6175 } 6176 }); 6177 } 6178 6179 if (getFeedbackModalWrap) { 6180 getFeedbackModalWrap.addEventListener("click", function(event) { 6181 if (event.target === getFeedbackModalWrap) { 6182 closeFeedbackModal(); 6183 } 6184 }); 6185 } 6186 }); 6187 6188 6189 // ]]> 6190 </script>
6190 6191 6192 <style> 6193 .desktop .getfeedback-overlay { 6194 margin-top: 0 !important; 6195 margin-bottom: 30vh; 6196 height: 175px; 6197 overflow: hidden !important; 6198 } 6199 .desktop .getfeedback-overlay .scroll { 6200 position: absolute; 6201 right: -8px; 6202 width: 220px; 6203 overflow: hidden !important; 6204 } 6205 .desktop .getfeedback-overlay .body { 6206 padding: 0 10px; 6207 } 6208 .desktop .getfeedback-overlay .foot { 6209 position: absolute; 6210 right: 5px; 6211 } 6212 .getfeedback-mobile-widget { 6213 height: 70px; 6214 } 6215 .getfeedback-mobile-widget span { 6216 transform: rotate(-90deg); 6217 } 6218 6219 .phone .getfeedback-overlay .scroll .body { 6220 padding: 0 !important; 6221 } 6222 6223 .phone .getfeedback-overlay { 6224 width: auto !important; 6225 overflow: hidden !important; 6226 padding: 0; 6227 } 6228 </style> 6229 6230 6231
6231<script> 6232//<![CDATA[ 6233 $.fn.extend({ 6234 has_value: function() { 6235 return this.filter(function() { 6236 return $(this).val().length > 0; 6237 }).length == this.length; 6238 } 6239 }); 6240 6241 var $inputs = $('#loginFormFlying\\:username, #loginFormFlying\\:password'), 6242 $register = $('#flyMenuFakeButton'); 6243 6244 function updateRegisterButtonState() { 6245 if ($inputs.length > 0) { 6246 $register.prop('disabled', !$inputs.has_value()); 6247 } 6248 } 6249 6250 if ($inputs.length > 0) { 6251 $inputs.on('change keyup', updateRegisterButtonState); 6252 updateRegisterButtonState(); 6253 } 6254//]]> 6255 </script>
6255</body> 6256</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.