1 2<!doctype html> 3<html lang="pl"> 4<head> 5 <title>Kontakt - Botanic</title> 6 <meta charset="utf-8"> 7 <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=2.0, user-scalable=yes, interactive-widget=resizes-content"> 8 <meta name="description" content=""> 9 <meta name="keywords" content=""> 10 11 <meta name="view-transition" content="same-origin" /> 12 <meta content="https://botanic.com.pl/userdata/public/skins/7f68b08a74977525acdb9dc1b97fc796_copy_27/assets/og-botanic-1200x630.png" property="og:image"> 13<meta content="1200" property="og:image:width"> 14<meta content="630" property="og:image:height"> 15<meta content="Botanic" property="og:image:alt"> 16<meta content="Botanic" property="og:site_name"> 17 18 <link rel="canonical" href="https://botanic.com.pl/contact" /> 19 20 21
21<script> 22 (function () { 23 const defaultConsents = { 24 ad_storage: 'denied', 25 ad_user_data: 'denied', 26 ad_personalization: 'denied', 27 analytics_storage: 'denied' 28 }; 29 30 window.dataLayer = window.dataLayer || []; 31 32 function gtag() { 33 window.dataLayer.push(arguments); 34 } 35 36 gtag('consent', 'default', defaultConsents); 37 })(); 38 </script>
38 39 40 <meta name="format-detection" content="telephone=no"> 41 42 <link rel="dns-prefetch" href="//www.googletagmanager.com"> 43 <link rel="dns-prefetch" href="//www.google-analytics.com"> 44 <link rel="dns-prefetch" href="https://fonts.gstatic.com"> 45 <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> 46 <link rel="preload" href="//botanic.com.pl/userdata/public/skins/7f68b08a74977525acdb9dc1b97fc796_copy_27/cache/MzM6MTc6NS4yNi41Ng.css" as="style"> 47 <link rel="stylesheet" href="//botanic.com.pl/userdata/public/skins/7f68b08a74977525acdb9dc1b97fc796_copy_27/cache/MzM6MTc6NS4yNi41Ng.css" type="text/css" data-turbo-track="reload"> 48 49 <meta name="turbo-cache-control" content="no-cache"> 50 51 <link rel="icon" href="/environment/cache/images/storefrontImages_318d9e17-aa15-4a4d-b438-773695c3fcc2_0_0.png"> 52 </head> 53<body> 54 <div class="grid"><a href="#main" class="link__skip-link">Przejdź do gÅównej treÅci</a></div> 55 <header id="main-header" class="context-31"> 56 <div class="grid grid_full" style="background-color: rgb(255, 255, 255);" data-skin-grid-section-id="12bd68b5-66ab-4832-9355-5e012bc674aa"><div class="grid__row" data-skin-grid-row-id="ca8c22c4-d7ef-4757-9ee9-57fcf7761f29"><div class="grid__col grid__col_xs-12 grid__col_sm-12 grid__col_lg-12 grid__col_xxl-12" data-skin-grid-column-id="31f48ce6-ad2c-461b-a8c4-e84170188f85"><div 57 class="module" 58 data-module-name="000652b2-bce7-21f1-9102-f9d74be4814a" 59 data-module-id="627" 60 data-module-instance="6496"><link rel="preload" as="font" type="font/woff2" crossorigin href="https://fonts.gstatic.com/s/poppins/v20/pxiEyp8kv8JHgFVrJJnecnFHGPezSQ.woff2"> 61<link rel="preload" as="font" type="font/woff2" crossorigin href="https://fonts.gstatic.com/s/poppins/v20/pxiEyp8kv8JHgFVrJJfecnFHGPc.woff2"> 62<link rel="preload" as="font" type="font/woff2" crossorigin href="https://fonts.gstatic.com/s/poppins/v20/pxiByp8kv8JHgFVrLCz7Z1JlFd2JQEl8qw.woff2"> 63<link rel="preload" as="font" type="font/woff2" crossorigin href="https://fonts.gstatic.com/s/poppins/v20/pxiByp8kv8JHgFVrLCz7Z1xlFd2JQEk.woff2"> 64<link rel="preload" as="font" type="font/woff2" crossorigin href="https://fonts.gstatic.com/s/notosans/v35/o-0bIpQlx3QUlC5A4PNB6Ryti20_6n1iPHjc5a7du3mhPy0.woff2"> 65<link id="iconsPath" href="/userdata/public/storefront/images/22316bac-95a8-44eb-8a4c-e43a3368ed92.svg"> 66<header class="bn-hdr"> 67 <div class="bn-top"><div class="grid"><div class="grid__row grid__row_container-width"><div class="grid__col grid__col_xs-12"><div class="bn-hdr__inner"> 68 <span class="bn-top__msg is-active"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M11 20A7 7 0 0 1 9.8 6.1C15.5 5 17 4.48 19 2c1 2 2 4.18 2 8 0 5.5-4.78 10-10 10z"/><path d="M2 21c0-3 1.85-5.36 5.08-6"/></svg>Producent szklarni ogrodowych, wiat i zadaszeÅ basenowych</span> 69 <span class="bn-top__msg"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"/></svg>Konstrukcje z poliwÄglanu â sprawdzone w polskich ogrodach</span> 70 <span class="bn-top__msg"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="1" y="3" width="15" height="13"/><polygon points="16 8 20 8 23 11 23 16 16 16 16 8"/><circle cx="5.5" cy="18.5" r="2.5"/><circle cx="18.5" cy="18.5" r="2.5"/></svg>Dostawa na terenie caÅej Polski</span> 71 <span class="bn-top__msg"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 11.5a8.38 8.38 0 0 1-.9 3.8 8.5 8.5 0 0 1-7.6 4.7 8.38 8.38 0 0 1-3.8-.9L3 21l1.9-5.7a8.38 8.38 0 0 1-.9-3.8 8.5 8.5 0 0 1 4.7-7.6 8.38 8.38 0 0 1 3.8-.9h.5a8.48 8.48 0 0 1 8 8v.5z"/></svg>WiÄkszy projekt? Skontaktuj siÄ z naszym dziaÅem handlowym</span> 72 </div></div></div></div></div> 73 74 <div class="bn-main"><div class="grid"><div class="grid__row grid__row_container-width"><div class="grid__col grid__col_xs-12"><div class="bn-hdr__inner"> 75 <a class="bn-logo" href="/" aria-label="Botanic â strona gÅówna"><img src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+Cjxzdmcgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDYyMjEgMTM0OCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3BhY2U9InByZXNlcnZlIiB4bWxuczpzZXJpZj0iaHR0cDovL3d3dy5zZXJpZi5jb20vIiBzdHlsZT0iZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjI7Ij4KICAgIDxyZWN0IGlkPSJQYWdlLTIiIHNlcmlmOmlkPSJQYWdlIDIiIHg9IjAiIHk9IjAiIHdpZHRoPSI2MjIxIiBoZWlnaHQ9IjEzN
75DcuMzMzIiBzdHlsZT0iZmlsbDpub25lOyIvPgogICAgPGc+CiAgICAgICAgPGNsaXBQYXRoIGlkPSJfY2xpcDEiPgogICAgICAgICAgICA8cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iNjIyMSIgaGVpZ2h0PSIxMzQ3LjMzMyIvPgogICAgICAgIDwvY2xpcFBhdGg+CiAgICAgICAgPGcgY2xpcC1wYXRoPSJ1cmwoI19jbGlwMSkiPgogICAgICAgICAgICA8Zz4KICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik03MDUuOTUsODY4LjI4OUM3MDUuOTUsNzA2LjIyIDU5NC4yOTYsNTk2LjM2NyA0NjQuNjI5LDU5Ni4zNjdDMzMxLjM2LDU5Ni4zNjcgMjIxLjUwNyw3MDQuNDE5IDIyMS41MDcsODY4LjI4OUMyMjEuNTA3LDEwMzAuMzc2IDMzMS4zNiwxMTQwLjIzIDQ2NC42MjksMTE0MC4yM0M1OTQuMjk1LDExNDAuMjMgNzA1Ljk1LDEwMzAuMzc3IDcwNS45NSw4NjguMjg5TTIxNy45MDUsMTMyNS43MTRMMCwxMzI1LjcxNEwwLDQ3LjFMMjMyLjMxNSw0Ny4xTDIzMi4zMTUsNTIwLjcxN0MyODIuNzQ4LDQ0My4yODUgMzk0LjM4NCwzODUuNjY1IDUxMy4yNjEsMzg1LjY2NUM3NDcuMzU5LDM4NS42NjUgOTQwLjA2Niw1ODEuOTU2IDk0MC4wNjYsODY2LjQ4N0M5NDAuMDY2LDExNTEuMDM2IDc0Ny4zNTksMTM0Ny4zMjcgNTA5LjY0LDEzNDcuMzI3QzM4Ny4xNzksMTM0Ny4zMjcgMjY4LjMzOCwxMjg2LjA4NyAyMTcuOTA1LDEyMDEuNDVMMjE3LjkwNSwxMzI1LjcxNFoiIHN0eWxlPSJmaWxsOnJnYigyNyw2NCw0MCk7ZmlsbC1ydWxlOm5vbnplcm87Ii8+CiAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMjc2MC41OTgsMTMxMS4zMDZDMjcyMi43OTIsMTMzMi45MiAyNjY1LjE1NCwxMzQ3LjMyOSAyNTg5LjUyMywxMzQ3LjMyOUMyNDAwLjQzNiwxMzQ3LjMyOSAyMjgzLjM3OCwxMjM1LjY3NSAyMjgzLjM3OCwxMDM3LjU4MkwyMjgzLjM3OCw1OTQuNTQ4TDIxNTMuNzEyLDU5NC41NDhMMjE1My43MTIsNDA3LjI2M0wyMjkwLjU4Myw0MDcuMjYzTDIyOTAuNTgzLDE5OC4zNjNMMjUxNy40OTQsMTM4Ljk0M0wyNTE3LjQ5NCw0MDcuMjYzTDI3MzkuMDAyLDQwNy4yNjNMMjczOS4wMDIsNTk0LjU0OEwyNTE3LjQ5NCw1OTQuNTQ4TDI1MTcuNDk0LDEwMDUuMTYxQzI1MTcuNDk0LDEwOTguODA0IDI1NjYuMTI2LDExMzguNDMgMjY1Mi41NjQsMTEzOC40M0MyNjc3Ljc2MiwxMTM4LjQzIDI3MjIuNzkyLDExMzEuMjI1IDI3NjAuNTk4LDExMDkuNjExTDI3NjAuNTk4LDEzMTEuMzA2WiIgc3R5bGU9ImZpbGw6cmdiKDI3LDY0LDQwKTtmaWxsLXJ1bGU6bm9uemVybzsiLz4KICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik0zNDQzLjA3NSw5NTIuOTMxTDM0NDMuMDc1LDkxOC43MjdMMzI1Ny41OTEsOTQyLjEyNEMzMTU2Ljc0NCw5NTQuNzMyIDMwOTkuMTA2LDk5Ni4xNDEgMzA5OS4xMDYsMTA2Mi43ODRDMzA5OS4xMDYsMTEyNS44MDcgMzE1MS4zNCwxMTY1LjQzMyAzMjI2Ljk3MSwxMTY1LjQzM0MzMzQ1LjgzLDExNjUuNDMzIDM0NDMuMDc1LDEwNjguMTg4IDM0NDMuMDc1LDk1Mi45MzFNMzI2Ni41OTcsMzg1LjY1M0MzNTAwLjcxMywzODUuNjUzIDM2NjkuOTg3LDUxMy41MTggMzY2OS45ODcsNzQ1LjgzM0wzNjY5Ljk4NywxMzI1LjcxOUwzNDUyLjA4MiwxMzI1LjcxOUwzNDUyLjA4MiwxMTk3Ljg1NEMzMzk0LjQ0NCwxMjkxLjQ5NyAzMjk1LjQxNiwxMzQ3LjMzMyAzMTc0Ljc1NiwxMzQ3LjMzM0MzMDAxLjg2MiwxMzQ3LjMzMyAyODc1Ljc5OCwxMjM3LjQ4IDI4NzUuNzk4LDEwODYuMTk5QzI4NzUuNzk4LDkyNS45MTMgMjk5NC42NzUsODM0LjA3MSAzMjA4Ljk2LDgwMS42NjhMMzQ0MS4yNzUsNzY3LjQ0NkwzNDQxLjI3NSw3NDIuMjNDMzQ0MS4yNzUsNjQ2Ljc4NiAzMzY1LjY0NCw1OTAuOTUgMzI0OC41ODYsNTkwLjk1QzMxMjYuMTI1LDU5MC45NSAzMDE0LjQ3LDY0My4xODQgMjk0Ni4wNDQsNjkzLjYxN0wyOTQ2LjA0NCw0NzMuODkyQzMwMjMuNDc2LDQyMy40NzcgMzE0Mi4zMzUsMzg1LjY1MyAzMjY2LjU5OCwzODUuNjUzIiBzdHlsZT0iZmlsbDpyZ2IoMjcsNjQsNDApO2ZpbGwtcnVsZTpub256ZXJvOyIvPgogICAgICAgICAgICAgICAgPHBhdGggZD0iTTQ0MzUuMjg2LDM4NS42NkM0NjQ3LjgwNiwzODUuNjYgNDc5MS44NjMsNTI3LjkzNCA0NzkxLjg2Myw3NjcuNDM2TDQ3OTEuODYzLDEzMjUuNzA4TDQ1NTcuNzQ3LDEzMjUuNzA4TDQ1NTcuNzQ3LDc5Ni4yNTRDNDU1Ny43NDcsNjYzLjAwNCA0NDc4LjUxNCw1OTQuNTU5IDQzNzQuMDY0LDU5NC41NTlDNDIxOS4xODEsNTk0LjU1OSA0MTYxLjU2Miw3MzMuMjMxIDQxNjEuNTYyLDg1Mi4wOUw0MTYxLjU2MiwxMzI1LjcwN0wzOTI3LjQ0NiwxMzI1LjcwN0wzOTI3LjQ0Niw0MDcuMjU1TDQxNTIuNTU2LDQwNy4yNTVMNDE1Mi41NTYsNTMxLjUzNkM0MjA0Ljc3Miw0NDMuMjc5IDQyOTYuNjMyLDM4NS42NTkgNDQzNS4yODUsMzg1LjY1OSIgc3R5bGU9ImZpbGw6cmdiKDI3LDY0LDQwKTtmaWxsLXJ1bGU6bm9uemVybzsiLz4KICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik01MDQ3LjUzMiw0MDcuMjZMNTI4MS42NDgsNDA3LjI2TDUyODEuNjQ4LDEzMjUuNzEyTDUwNDcuNTMyLDEzMjUuNzEyTDUwNDcuNTMyLDQwNy4yNlpNNTI5OS42NDEsMTQwLjc0MUM1Mjk5LjY0MSwyMTYuMzcyIDUyNDAuMjIxLDI3NC4wMSA1MTY2LjM5MSwyNzQuMDFDNTA5MC43NiwyNzQuMDEgNTAyOS41MiwyMTYuMzcyIDUwMjkuNTIsMTQwLjc0MUM1MDI5LjUyLDY1LjExIDUwOTAuNzYsNy40NzIgNTE2Ni4zOTEsNy40NzJDNTI0MC4yMjEsNy40NzIgNTI5OS42NDEsNjUuMTEgNTI5OS42NDEsMTQwLjc0MSIgc3R5bGU9ImZpbGw6cmdiKDI3LDY0LDQwKTtmaWxsLXJ1bGU6bm9uemVybzsiLz4KICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik02MjE2LjIzOSw2NjIuOTk3QzYxNTUuMDE3LDYxOS43NjkgNjA2Ni43Niw1OTYuMzU0IDU5OTQuNzMxLDU5Ni4zNTRDNTgzMC44NDMsNTk2LjM1NCA1NzE5LjIwNiw3MDguMDA4IDU3MTkuMjA2LDg2OC4yOTVDNTcxOS4yMDYsMTAxNy43NzQgNTgyMy42NTYsMTEzNi42MzMgNTk5NC43MzEsMTEzNi42MzNDNjA3My45ODMsMTEzNi42MzMgNjE1OC42MDEsMTExNS4wMTkgNjIxOC4wNCwxMDY4LjE4OEw2MjE4LjA0LDEyODkuNjk2QzYxNT
75EuNDE1LDEzMzEuMTIzIDYwNTAuNTY3LDEzNDcuMzM0IDU5NjUuOTEyLDEzNDcuMzM0QzU2ODYuNzY3LDEzNDcuMzM0IDU0ODEuNDcsMTE0MC4yMTcgNTQ4MS40Nyw4NjguMjk1QzU0ODEuNDcsNTk0LjU1MyA1NjgzLjE4MywzODUuNjU0IDU5NjcuNzE0LDM4NS42NTRDNjA1Mi4zNTEsMzg1LjY1NCA2MTQ3Ljc5NSw0MDUuNDY3IDYyMTYuMjM5LDQ0My4yOTJMNjIxNi4yMzksNjYyLjk5OUw2MjE2LjIzOSw2NjIuOTk3WiIgc3R5bGU9ImZpbGw6cmdiKDI3LDY0LDQwKTtmaWxsLXJ1bGU6bm9uemVybzsiLz4KICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik0xNTYzLjA4MSwxMTMzLjAxOUMxNDE3LjIwNCwxMTMzLjAxOSAxMzEyLjc1NCwxMDE3Ljc2MiAxMzEyLjc1NCw4NjYuNUMxMzEyLjc1NCw3MTUuMjIgMTQxNy4yMDQsNTk5Ljk2MyAxNTYzLjA4MSw1OTkuOTYzQzE3MDcuMTM4LDU5OS45NjMgMTgxMS42MDYsNzE1LjIyIDE4MTEuNjA2LDg2Ni41QzE4MTEuNjA2LDEwMTcuNzYyIDE3MDcuMTM4LDExMzMuMDE5IDE1NjMuMDgxLDExMzMuMDE5TTE2NTYuODY5LDM5My44ODRMMTcxNS43MDcsMzkzLjg4NEMxOTAyLjY4MywzOTMuODg0IDIwNTQuMjczLDI0Mi4yOTQgMjA1NC4yNzMsNTUuMzE4TDE5MDcuNDg3LDU1LjMxOEMxNzIzLjI0LDU1LjMxOCAxNTczLjY3LDIwMi41OTYgMTU2OS4zNCwzODUuODA2QzE1NjcuMjQ4LDM4NS43ODggMTU2NS4xOTIsMzg1LjY2IDE1NjMuMDgxLDM4NS42NkMxNTYwLjM3LDM4NS42NiAxNTU3LjcxNCwzODUuODA2IDE1NTUuMDIxLDM4NS44NDJDMTU1MC43MDksMjAyLjYxNCAxNDAxLjEzOSw1NS4zMTggMTIxNi44NTYsNTUuMzE4TDEwNzAuMDg4LDU1LjMxOEMxMDcwLjA4OCwyNDIuMjk0IDEyMjEuNjc4LDM5My44ODQgMTQwOC42NTQsMzkzLjg4NEwxNDY4LjcyOSwzOTMuODg0QzEyMzYuMTk2LDQzNC43NjUgMTA3Ni44MzgsNjI1Ljg5IDEwNzYuODM4LDg2Ni41MDFDMTA3Ni44MzgsMTEzOC40MjMgMTI4MC4zMzQsMTM0Ny4zMjMgMTU2My4wODIsMTM0Ny4zMjNDMTg0NC4wMSwxMzQ3LjMyMyAyMDQ3LjUwNiwxMTM4LjQyMyAyMDQ3LjUwNiw4NjYuNTAxQzIwNDcuNTA2LDYyNS44OSAxODg4LjE2Niw0MzQuNzY2IDE2NTYuODcsMzkzLjg4NCIgc3R5bGU9ImZpbGw6cmdiKDM5LDEwNCwzNSk7ZmlsbC1ydWxlOm5vbnplcm87Ii8+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPgo=" width="300" height="65" alt="Botanic"></a> 76 <div class="bn-phone"> 77 <span class="bn-phone__icon"><svg width="22" height="22" viewBox="0 0 24 24" fill="none" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"/></svg></span> 78 <span><a class="bn-phone__num" href="tel:+48833070023">+48 833 070 023</a><span class="bn-phone__hours">Pon.âPt. 8:00â17:00</span></span> 79 </div> 80 <form class="bn-search" action="/pl/s" method="post" role="search"> 81 <input type="search" name="search" placeholder="Wpisz, czego szukasz" aria-label="Wyszukiwarka produktów"> 82 <button type="submit" aria-label="Szukaj"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"><circle cx="11" cy="11" r="8"/><line x1="21" y1="21" x2="16.65" y2="16.65"/></svg></button> 83 </form> 84 <nav class="bn-actions" aria-label="Konto i koszyk"> 85 <a href="/contact"><svg width="23" height="23" viewBox="0 0 24 24" fill="none" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M3 18v-6a9 9 0 0 1 18 0v6"/><path d="M21 19a2 2 0 0 1-2 2h-1a2 2 0 0 1-2-2v-3a2 2 0 0 1 2-2h3zM3 19a2 2 0 0 0 2 2h1a2 2 0 0 1 2-2v-3a2 2 0 0 1-2-2H3z"/></svg><span>Kontakt</span></a> 86 <a href="/pl/login"><svg width="23" height="23" viewBox="0 0 24 24" fill="none" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"/><circle cx="12" cy="7" r="4"/></svg><span>Zaloguj</span></a> 87 <a class="bn-cart" href="/pl/basket"><svg width="23" height="23" viewBox="0 0 24 24" fill="none" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M6 2L3 6v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6l-3-4z"/><line x1="3" y1="6" x2="21" y2="6"/><path d="M16 10a4 4 0 0 1-8 0"/></svg><span class="bn-cart__badge">0</span><span>Koszyk</span></a> 88 <button type="button" class="bn-burger" aria-label="Menu"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="#1a1a1a" stroke-width="2.2" stroke-linecap="round"><line x1="3" y1="6" x2="21" y2="6"/><line x1="3" y1="12" x2="21" y2="12"/><line x1="3" y1="18" x2="21" y2="18"/></svg></button> 89 </nav> 90 </div></div></div></div></div> 91 92 <nav class="bn-nav" aria-label="GÅówna nawigacja"><div class="grid"><div class="grid__row grid__row_container-width"><div class="grid__col grid__col_xs-12"><div class="bn-hdr__inner"> 93 <div class="bn-nav__item"><a class="bn-nav__link" href="/pl/i/Opinie-klientow/24">Opinie klientów</a></div> 94 <div class="bn-nav__item"> 95 <a class="bn-nav__link" href="/wszystkie-szklarnie">Szklarnie ogrodowe <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"/></svg></a> 96 <div class="bn-sub">
97 <span class="bn-sub__group">Szklarnie z poliwÄglanu</span> 98 <a href="/szklarnie-partner">Szklarnie Partner</a> 99 <a href="/szklarnie-rolnik">Szklarnie Rolnik</a> 100 <a href="/duze-szklarnie-ogrodowe">Duże szklarnie ogrodowe</a> 101 <a href="/tunele-ogrodowe-z-poliweglanu">Tunele ogrodowe</a> 102 <div class="bn-sub__sep"></div> 103 <a href="/akcesoria-do-szklarni">Akcesoria do szklarni</a> 104 </div> 105 </div> 106 <div class="bn-nav__item"><a class="bn-nav__link" href="/wiaty-samochodowe">Wiaty samochodowe</a></div> 107 <div class="bn-nav__item"><a class="bn-nav__link" href="/pl/c/Zadaszenia-basenowe/50">Zadaszenia basenowe</a></div> 108 <div class="bn-nav__item"> 109 <a class="bn-nav__link" href="/grzadki-i-klomby">GrzÄ dki i klomby <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"/></svg></a> 110 <div class="bn-sub"> 111 <a href="/grzadki-ogrodowe">GrzÄ dki ogrodowe</a> 112 <a href="/klomby-ogrodowe">Klomby ogrodowe</a> 113 <a href="/kompostowniki">Kompostowniki</a> 114 </div> 115 </div> 116 <div class="bn-nav__item"><a class="bn-nav__link" href="/realizacje">Realizacje</a></div><div class="bn-nav__item"><a class="bn-nav__link" href="/pl/i/Zostan-Partnerem-B2B/35">ZostaÅ Partnerem B2B</a></div><div class="bn-nav__item"><a class="bn-nav__link" href="/rekrutacja">Rekrutacja</a></div> 117 </div></div></div></div></nav> 118</header> 119 120
121<script> 122(function(){ 123 if(window.__bnHdrInit)return; window.__bnHdrInit=1; 124 function init(){ 125 var hdr=document.querySelector('.bn-hdr'); 126 if(!hdr||hdr.dataset.bnReady)return; 127 hdr.dataset.bnReady='1'; 128 syncCart(); 129 } 130 function syncCart(){ 131 try{ 132 var ind=document.querySelector('#main-header .indicator[data-value], basket-preview .indicator, [data-basket-count]'); 133 var hdr=document.querySelector('.bn-hdr'); 134 if(!hdr)return; 135 var badge=hdr.querySelector('.bn-cart__badge'); 136 if(!badge)return; 137 var v=ind?(ind.getAttribute('data-value')||ind.textContent||'').trim():''; 138 if(!v||v==='0'){badge.style.display='none';}else{badge.style.display='';badge.textContent=v;} 139 }catch(e){} 140 } 141 if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init(); 142 setTimeout(syncCart,1500); 143 /* rotacja topbara (4s): zapytania w momencie ticku â wÄzÅy po SPA sÄ nowe */ 144 setInterval(function(){ 145 var msgs=document.querySelectorAll('.bn-hdr .bn-top__msg'); 146 if(msgs.length>1){ 147 var cur=document.querySelector('.bn-hdr .bn-top__msg.is-active'); 148 var i=[].indexOf.call(msgs,cur); 149 if(cur)cur.classList.remove('is-active'); 150 var next=msgs[((i<0?0:i)+1)%msgs.length]; 151 next.classList.add('is-active'); 152 } 153 },4000); 154 /* burger: delegacja */ 155 document.addEventListener('click',function(e){ 156 var b=e.target.closest?e.target.closest('.bn-burger'):null; 157 if(b){ 158 var hdr=b.closest('.bn-hdr'); 159 var nav=hdr?hdr.querySelector('.bn-nav'):null; 160 if(nav)nav.classList.toggle('is-open'); 161 } 162 }); 163 /* syncCart po SPA / zmianach koszyka: observer na document (przeżywa podmianÄ body) */ 164/* Jedna wspolna magistrala obserwatora DOM zamiast osobnego MutationObservera 165 w kazdym module. Dwie kolejki: natychmiastowa (przenoszenie blokow â musi 166 zdazyc w tej samej klatce, inaczej po nawigacji SPA mignie natywna stopka) 167 i odlozona o 150 ms (synchronizacja licznikow â tak bylo i wczesniej). */ 168 window.__bnDomWatch=window.__bnDomWatch||(function(){var now=[],later=[],t=null,mo=null;function flush(){t=null;for(var i=0;i<later.length;i++){try{later[i]();}catch(e){}}}function tick(){for(var i=0;i<now.length;i++){try{now[i]();}catch(e){}}if(later.length){if(t)clearTimeout(t);t=setTimeout(flush,150);}}return function(fn,defer){(defer?later:now).push(fn);if(!mo){mo=new MutationObserver(tick);mo.observe(document,{childList:true,subtree:true});}};})(); 169 window.__bnDomWatch(syncCart,true); 170})(); 171</script>
171</div></div></div></div><div class="grid" style="background-color: var(--globalBodyBackgroundColor);" data-skin-grid-section-id="4fd3340c-1c63-4b83-a445-fc4968aaae4d"><div class="grid__row" data-skin-grid-row-id="979df87c-3d3b-423b-8474-d55a57d20288"><div class="grid__col grid__col_xs-grow" data-skin-grid-column-id="aef08df4-756d-4e0b-a772-a66f1dcc6fe0"><div class="grid__row" data-skin-grid-row-id="ca065155-a5bd-42bf-9d47-16f84934e140"><div class="grid__col gc__contact__bar grid__col_xs-grow grid__col_sm-grow grid__col_lg-grow grid__col_xxl-grow" data-skin-grid-column-id="5159799f-d2c9-49b9-8531-66caef88d284"></div><div class="grid__col grid__col_xs-grow grid__col_sm-grow grid__col_lg-grow grid__col_xxl-grow gc__rownaj__w__prawo" data-skin-grid-column-id="e8ced1e9-b3f7-4c33-81ef-dfc70e0e9668"></div></div></div></div></div><div class="grid pt-xs-0 pb-xs-0 pt-sm-0 pb-sm-0 pt-lg-0 pb-lg-0 pt-xxl-0 pb-xxl-0 mt-xs-2 mb-xs-1 mt-sm-2 mb-sm-1 mt-lg-2 mb-lg-1 mt-xxl-2 mb-xxl-1" data-skin-grid-section-id="3cf42b18-0df7-49cc-bca1-c862d3801bd9"> 172 173 <div class="grid__row grid__row_xs-hcenter grid__row_sm-hleft grid__row_lg-hleft grid__row_xxl-hcenter grid__row_xs-vcenter grid__row_sm-vcenter grid__row_lg-vcenter grid__row_xxl-vcenter" data-skin-grid-element-custom-name="NagÅówek z logo i socjalami" data-skin-grid-row-id="2f8991ab-4778-400e-afa3-5e6eba93eea3"> 174 <div class="grid__col hidden-xs-only grid__col_xs-4 grid__col_sm-4 grid__col_lg-4 grid__col_xxl-4" data-skin-grid-element-custom-name="Social media" data-skin-grid-column-id="c3e25f4a-ac8d-4708-9d88-715ed0b59bc8"> 175 176 </div> 177 178 <div class="grid__col gc__main__logo__container grid__col_xs-auto grid__col_sm-auto grid__col_lg-grow grid__col_xxl-4" data-skin-grid-column-id="7ddbfcd9-e112-4bb4-8449-24421f33d91b"> 179 <div 180 class="module" 181 data-module-name="logo" 182 data-module-id="49" 183 data-module-instance="6586"> 184 185 186 <figure class="logo"> 187 <a href="/" > 188 189 190 <picture 191 class="image" 192 > 193 194 195 <source 196 srcset="/environment/cache/images/storefrontImages_1d70c3b1-0404-4649-b04b-0e5d9cf299d9_265_0.webp 1x" 197 type="webp" 198 > 199 200 <img 201 src="/environment/cache/images/storefrontImages_1d70c3b1-0404-4649-b04b-0e5d9cf299d9_265_0.webp" 202 width="265" 203 height="68" 204 alt="Szablony Shoper od GrowCommerce - strona gÅówna" 205 title="Szablony Shoper od GrowCommerce" 206 class="logo" 207 fetchpriority="high" 208 > 209 </picture> 210 211 </a> 212 </figure> 213
214<script type="application/ld+json"> 215 { 216 "@context": [ 217 "http://schema.org/", 218 { "@base": "https://botanic.com.pl/" } 219 ], 220 "@type": "OnlineStore", 221 "@id": "22bdbcb658ad0f939a54f364776fb2a1bdb0f3f3", 222 "name": "Botanic", 223 "legalName": "Botanic", 224 "logo": "/environment/cache/images/storefrontImages_1d70c3b1-0404-4649-b04b-0e5d9cf299d9_265_0.webp", 225 "url": "https://botanic.com.pl/" 226 } 227</script>
227 228</div> 229 </div> 230 <div class="grid__col gc__main__menu__header grid__col_xs-4 grid__col_sm-4 grid__col_lg-4 grid__col_xxl-4 hidden-xs-only hidden-sm-only hidden-md-only" data-skin-grid-column-id="f4f4f4ba-0f02-4de5-8828-8ff3924b58af"><div 231 class="module" 232 data-module-name="basket_preview" 233 data-module-id="39" 234 data-module-instance="6518"> 235 236 237 238 239 <basket-preview 240 is-with-value sheet 241 basket-url="/pl/basket" 242 basket-delivery-payment-url="/pl/basket/step2" 243 module-instance-id="6518" 244 > 245 <h-sheet-opener name="basket-preview-sheet"> 246 <span class="sr-only">Produkty w koszyku: 0. Zobacz szczegóÅy</span> 247 <div class="labeled-icon"> 248 <div class="indicator" data-value="0"> 249 250 251 <svg class=" 252 icon 253 254 255 256 257 labeled-icon__icon 258 " 259 aria-hidden="true" 260 focusable="false" 261 > 262 <use href="/userdata/public/storefront/images/22316bac-95a8-44eb-8a4c-e43a3368ed92.svg#icon-basket" xlink:href="/userdata/public/storefront/images/22316bac-95a8-44eb-8a4c-e43a3368ed92.svg#icon-basket"></use> 263 </svg> 264 265 </div> 266 <div class="labeled-icon__signature font_bold" aria-hidden="true">Koszyk</div> 267 </div> 268 </h-sheet-opener> 269 270 <h-sheet id="basket-preview-sheet" hidden> 271 <h-sheet-header> 272 <p class="section-title section-title_s">Produkty w koszyku</p> 273 274 <h-sheet-close class="btn btn_icon sheet__btn-right"> 275 <span class="sr-only">Zamknij okno</span> 276 <h-icon icon-name="icon-x" aria-hidden="true"></h-icon> 277 </h-sheet-close> 278 </h-sheet-header> 279 280 <h-sheet-body> 281 <div class="basket-preview"> 282 <div class="grid__row grid__row_xs-vcenter"> 283 <div class="grid__col"> 284 285 286 <svg class=" 287 icon 288 289 290 291 292 icon_xxl 293 " 294 aria-hidden="true" 295 focusable="false" 296 > 297 <use href="/userdata/public/storefront/images/22316bac-95a8-44eb-8a4c-e43a3368ed92.svg#icon-basket" xlink:href="/userdata/public/storefront/images/22316bac-95a8-44eb-8a4c-e43a3368ed92.svg#icon-basket"></use> 298 </svg> 299 300 </div> 301 <div class="grid__col"> 302 <p class="p align_center" tabindex="0">Twój koszyk jest pusty</p> 303 </div> 304 </div> 305 </div> 306 </h-sheet-body> 307 308 </h-sheet> 309 </basket-preview> 310 311 312</div></div> 313 314 315 </div> 316</div> 317<div class="grid" data-skin-grid-section-id="41ee4628-187b-4999-a806-ac1d5880422c"> 318 <div class="grid__row" data-skin-grid-row-id="490be876-3909-4f03-9fd5-c516ad3f2f96"> 319 <div class="grid__col grid__col_xs-12" data-skin-grid-column-id="c0377a2e-5715-4e52-b5a3-863b54536cd3"> 320 321 </div> 322 </div> 323</div> </header> 324<main class="context-31" id="main" tabindex="-1"> 325 <div class="grid" data-skin-grid-section-id="c596afe2-be29-4b61-92ce-425e75d99d9a"><div class="grid__row" data-skin-grid-row-id="85a12ab3-5ea2-47c0-bb53-c6bff134b580"><div class="grid__col grid__col_xs-12" data-skin-grid-column-id="ac47c555-8c3b-48d1-9b0b-d815e09489a1"><div 326 class="module" 327 data-module-name="000652b2-bce7-21f1-b302-058567baf4e5" 328 data-module-id="626" 329 data-module-instance="6495"><style> 330/* === STRONA KONTAKT 1:1 z makiety === */ 331.bn-ct{display:none;background:#fff;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;} 332.bn-ct.is-on{display:block;} 333.bn-ct *{box-sizing:border-box;} 334.bn-ct__wrap{width:min(100% - 48px,1280px);margin:0 auto;} 335.bn-ct__hero{padding:34px 0 0;} 336.bn-ct__crumbs{font-size:13px;color:#8a938a;margin-bottom:18px;} 337.bn-ct__crumbs a{color:#276823;text-decoration:none;} 338.bn-ct__crumbs a:hover{text-decoration:underline;} 339.bn-ct__hrow{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;flex-wrap:wrap;padding-bottom:28px;border-bottom:1px solid #ececec;} 340.bn-ct__h1{margin:0;font-size:clamp(30px,4vw,46px);font-weight:800;color:#276823;letter-spacing:-.02em;font-family:"Open Sans","Helvetica Neue",sans-serif;line-height:1.05;} 341.bn-ct__lead{margin:0;max-width:440px;font-size:16px;line-height:1.6;color:#576057;}
342.bn-ct__quick{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:34px 0;} 343.bn-ct__qcard{display:flex;flex-direction:column;align-items:flex-start;padding:26px;background:#F7F6F2;border:1px solid #ececec;border-radius:16px;text-decoration:none;transition:transform .18s,box-shadow .18s,border-color .18s;} 344.bn-ct__qcard:hover{transform:translateY(-3px);box-shadow:0 18px 36px -22px rgba(27,64,40,.35);border-color:#d5e3d0;} 345.bn-ct__qicon{width:52px;height:52px;border-radius:12px;background:#F0F7ED;color:#276823;display:flex;align-items:center;justify-content:center;margin-bottom:14px;} 346.bn-ct__qlabel{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#8a938a;margin-bottom:4px;} 347.bn-ct__qvalue{font-size:18px;font-weight:800;color:#1a1a1a;margin-bottom:6px;} 348.bn-ct__qsub{font-size:13px;color:#8a938a;line-height:1.5;} 349.bn-ct__layout{display:grid;grid-template-columns:.82fr 1.18fr;gap:32px;padding:14px 0 76px;align-items:start;} 350.bn-ct__info{display:flex;flex-direction:column;gap:20px;} 351.bn-ct__icard{padding:26px;background:#fff;border:1px solid #e5e5e5;border-radius:16px;} 352.bn-ct__ihead{display:flex;align-items:center;gap:12px;margin-bottom:14px;} 353.bn-ct__iicon{width:42px;height:42px;flex:none;border-radius:10px;background:#F0F7ED;color:#276823;display:flex;align-items:center;justify-content:center;} 354.bn-ct__ititle{margin:0;font-size:17px;font-weight:700;color:#1a1a1a;} 355.bn-ct__addr{font-style:normal;font-size:15px;line-height:1.7;color:#576057;} 356.bn-ct__addr strong{display:block;color:#1a1a1a;margin-bottom:2px;} 357.bn-ct__legal{display:flex;gap:36px;margin-top:16px;padding-top:16px;border-top:1px solid #ececec;} 358.bn-ct__legal dt{font-size:11px;color:#8a938a;text-transform:uppercase;letter-spacing:.05em;margin:0;} 359.bn-ct__legal dd{margin:3px 0 0;font-size:15px;font-weight:700;color:#1a1a1a;} 360.bn-ct__formwrap{padding:32px;background:#F7F6F2;border:1px solid #ececec;border-radius:20px;} 361.bn-ct__kicker{display:inline-block;padding:5px 14px;background:#F0F7ED;color:#276823;font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;border-radius:999px;margin-bottom:12px;} 362.bn-ct__ftitle{margin:0 0 8px;font-size:26px;font-weight:800;color:#276823;font-family:"Open Sans","Helvetica Neue",sans-serif;} 363.bn-ct__flead{margin:0 0 24px;font-size:15px;line-height:1.6;color:#576057;} 364.bn-ct__row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;} 365.bn-ct__field{display:flex;flex-direction:column;gap:6px;} 366.bn-ct__flabel{font-size:13px;font-weight:600;color:#1a1a1a;} 367.bn-ct__req{color:#c0392b;} 368.bn-ct__input,.bn-ct__select,.bn-ct__textarea{width:100%;padding:12px 14px;border:1.5px solid #d6ddd3;border-radius:10px;font-size:15px;font-family:inherit;background:#fff;color:#1a1a1a;transition:border-color .15s,box-shadow .15s;} 369.bn-ct__input:focus,.bn-ct__select:focus,.bn-ct__textarea:focus{outline:none;border-color:#276823;box-shadow:0 0 0 3px rgba(39,104,35,.1);} 370.bn-ct__textarea{resize:vertical;min-height:120px;} 371.bn-ct__consent{display:flex;gap:12px;align-items:flex-start;margin:4px 0 22px;font-size:13px;line-height:1.55;color:#576057;} 372.bn-ct__consent input{margin-top:3px;flex:none;width:18px;height:18px;accent-color:#276823;} 373.bn-ct__consent a{color:#276823;text-decoration:underline;} 374.bn-ct__submit{display:inline-flex;align-items:center;gap:10px;padding:15px 30px;background:#276823;color:#fff;border:0;border-radius:12px;font-size:16px;font-weight:700;cursor:pointer;font-family:inherit;transition:background .15s,transform .15s;} 375.bn-ct__submit:hover{background:#1b4028;transform:translateY(-1px);} 376.bn-ct__submit svg{width:18px;height:18px;} 377.bn-ct__ok{display:none;text-align:center;padding:20px;} 378.bn-ct__ok svg{width:56px;height:56px;color:#276823;margin-bottom:14px;} 379.bn-ct__ok h3{margin:0 0 8px;font-size:22px;color:#276823;font-weight:800;} 380.bn-ct__ok p{margin:0;color:#576057;font-size:15px;} 381.bn-ct.is-sent .bn-ct__form{display:none;} 382.bn-ct.is-sent .bn-ct__ok{display:block;} 383@media(max-width:860px){.bn-ct__quick{grid-template-columns:1fr;}.bn-ct__layout{grid-template-columns:1fr;}.bn-ct__row{grid-template-columns:1fr;}} 384 385 386/* full-bleed: sekcja w gridzie SVE ma byÄ peÅnej szerokoÅci jak na boju (monolit wstawiaÅ jÄ jako dziecko main) */ 387main > .grid:has(.bn-ct){margin-left:0!important;margin-right:0!important;max-width:none!important;width:auto!important;margin-top:0!important;margin-bottom:0!important;} 388main > .grid:has(.bn-ct) .grid__col{padding-left:0!important;padding-right:0!important;} 389main > .grid:has(.bn-ct) .grid__row{margin-left:0!important;margin-right:0!important;} 390/* /contact: natywne sekcje chowane OFF-SCREEN (jak w monolicie; display:none zabiÅoby <contact-form>) */ 391main >
391 .grid:not(:has(.bn-ct)){position:absolute!important;left:-99999px!important;top:0!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important;} 392/* Only the native form needs an off-screen mount for its connector. */ 393main > .grid:not(:has(.bn-ct)):not(:has(contact-form)){display:none!important;position:static!important;left:auto!important;} 394</style> 395 396<section class="bn-ct is-on" aria-label="Kontakt"> 397 <div class="bn-ct__hero"><div class="bn-ct__wrap"> 398 <nav class="bn-ct__crumbs" aria-label="Åcieżka nawigacji"><a href="/">Strona gÅówna</a> / <span>Kontakt</span></nav> 399 <div class="bn-ct__hrow"> 400 <h1 class="bn-ct__h1">Kontakt</h1> 401 <p class="bn-ct__lead">Pomożemy dobraÄ szklarniÄ, wiatÄ czy zadaszenie do Twoich potrzeb. Odpowiadamy w ciÄ gu jednego dnia roboczego.</p> 402 </div> 403 </div></div> 404 405 <div class="bn-ct__wrap"> 406 <div class="bn-ct__quick"> 407 <a href="tel:+48833070023" class="bn-ct__qcard"> 408 <span class="bn-ct__qicon"><svg width="26" height="26" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"/></svg></span> 409 <span class="bn-ct__qlabel">Telefon</span> 410 <span class="bn-ct__qvalue">+48 833 070 023</span> 411 <span class="bn-ct__qsub">Pon.âPt. 8:00â17:00</span> 412 </a> 413 <a href="mailto:[email protected]" class="bn-ct__qcard"> 414 <span class="bn-ct__qicon"><svg width="26" height="26" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z"/><polyline points="22,6 12,13 2,6"/></svg></span> 415 <span class="bn-ct__qlabel">E-mail</span> 416 <span class="bn-ct__qvalue">[email protected]</span> 417 <span class="bn-ct__qsub">Odpowiadamy w ciÄ gu<br>1 dnia roboczego</span> 418 </a> 419 <a href="#bn-ct-form" class="bn-ct__qcard"> 420 <span class="bn-ct__qicon"><svg width="26" height="26" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"/></svg></span> 421 <span class="bn-ct__qlabel">Formularz</span> 422 <span class="bn-ct__qvalue">Napisz wiadomoÅÄ</span> 423 <span class="bn-ct__qsub">Wybierz kategoriÄ<br>i opisz swojÄ sprawÄ</span> 424 </a> 425 </div> 426 427 <div class="bn-ct__layout"> 428 <aside class="bn-ct__info"> 429 <article class="bn-ct__icard"> 430 <div class="bn-ct__ihead"> 431 <span class="bn-ct__iicon"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z"/><circle cx="12" cy="10" r="3"/></svg></span> 432 <h2 class="bn-ct__ititle">Biuro sprzedaży</h2> 433 </div> 434 <address class="bn-ct__addr"><strong>Botanic SpóÅka Cywilna</strong>ul. Podlaska 17 (pokój 5, piÄtro 1)<br>15-552 BiaÅystok</address> 435 </article> 436 <article class="bn-ct__icard"> 437 <div class="bn-ct__ihead"> 438 <span class="bn-ct__iicon"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M3 21h18"/><path d="M5 21V7l8-4v18"/><path d="M19 21V11l-6-4"/></svg></span> 439 <h2 class="bn-ct__ititle">Dane spóÅki</h2> 440 </div> 441 <address class="bn-ct__addr"><strong>Botanic SpóÅka Cywilna</strong>ul. UsÅugowa 33<br>15-521 ZaÅcianki</address> 442 <dl class="bn-ct__legal"><div><dt>NIP</dt><dd>966 218 55 46</dd></div><div><dt>REGON</dt><dd>526 871 549</dd></div></dl> 443 </article> 444 </aside> 445 446 <section class="bn-ct__formwrap" id="bn-ct-form">
447 <span class="bn-ct__kicker">Formularz kontaktowy</span> 448 <h2 class="bn-ct__ftitle">Napisz do nas</h2> 449 <p class="bn-ct__flead">Wybierz kategoriÄ, opisz swojÄ sprawÄ â odezwiemy siÄ tego samego dnia roboczego.</p> 450 <form class="bn-ct__form" novalidate> 451 <div class="bn-ct__row"> 452 <label class="bn-ct__field"><span class="bn-ct__flabel">ImiÄ i nazwisko <span class="bn-ct__req">*</span></span><input type="text" class="bn-ct__input" data-f="name" required autocomplete="name"></label> 453 <label class="bn-ct__field"><span class="bn-ct__flabel">Adres e-mail <span class="bn-ct__req">*</span></span><input type="email" class="bn-ct__input" data-f="email" required autocomplete="email"></label> 454 </div> 455 <div class="bn-ct__row"> 456 <label class="bn-ct__field"><span class="bn-ct__flabel">Telefon <span class="bn-ct__req">*</span></span><input type="tel" class="bn-ct__input" data-f="phone" required autocomplete="tel"></label> 457 <label class="bn-ct__field"><span class="bn-ct__flabel">Kategoria <span class="bn-ct__req">*</span></span><select class="bn-ct__select" data-f="category" required><option value="" disabled selected>â Wybierz â</option><option>Pytanie o produkt</option><option>Zapytanie ofertowe</option><option>Reklamacja / zwrot</option><option>Dostawa i montaż</option><option>WspóÅpraca / B2B</option><option>Inne</option></select></label> 458 </div> 459 <label class="bn-ct__field" style="margin-bottom:16px;"><span class="bn-ct__flabel">TreÅÄ wiadomoÅci <span class="bn-ct__req">*</span></span><textarea class="bn-ct__textarea" data-f="message" required placeholder="Opisz krótko czego dotyczy zapytanieâ¦"></textarea></label> 460 <label class="bn-ct__consent"><input type="checkbox" data-f="consent" required><span>AkceptujÄ <a href="/pl/i/Polityka-prywatnosci/6">politykÄ prywatnoÅci</a>. Administratorem danych jest BOTANIC SpóÅka Cywilna, ul. UsÅugowa 33, 15-521 ZaÅcianki. Dane przetwarzane w celu odpowiedzi na zapytanie.</span></label> 461 <button type="submit" class="bn-ct__submit">WyÅlij wiadomoÅÄ <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round"><line x1="5" y1="12" x2="19" y2="12"/><polyline points="12 5 19 12 12 19"/></svg></button> 462 </form> 463 <div class="bn-ct__ok"> 464 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M22 11.08V12a10 10 0 1 1-5.93-9.14"/><polyline points="22 4 12 14.01 9 11.01"/></svg> 465 <h3>DziÄkujemy!</h3> 466 <p>Twoja wiadomoÅÄ zostaÅa wysÅana. Odezwiemy siÄ tego samego dnia roboczego.</p> 467 </div> 468 </section> 469 </div> 470 </div> 471</section>
472<script type="application/ld+json">{"@context":"https:\/\/schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Strona g\u0142\u00f3wna","item":"https:\/\/botanic.com.pl"},{"@type":"ListItem","position":2,"name":"Kontakt"}]}</script>
472 473</div></div></div></div> 474 <div class="grid mb-xs-2 mt-xs-2 mb-sm-2 mb-lg-2 mb-xxl-2" data-skin-grid-section-id="f59e1f3b-1ee8-4d3a-a7f3-667a7f5e07ad"> 475 <div class="grid__row" data-skin-grid-row-id="d1a239dd-1059-47eb-b8fe-07f34c2b2550"> 476 <div class="grid__col grid__col_xs-12 grid__col_sm-grow grid__col_lg-grow grid__col_xxl-grow" data-skin-grid-column-id="dcabc52c-5235-4f1b-86e7-26618e79c6dd"></div> 477 </div> 478</div> 479<div class="grid" data-skin-grid-section-id="d8b481b1-7fcf-4ec5-a069-597eef28a1b0"> 480 <div class="grid__row grid__row_xs-hleft grid__row_sm-hleft grid__row_lg-hleft grid__row_xxl-hleft grid__row_xs-vtop grid__row_sm-vtop grid__row_lg-vtop grid__row_xxl-vtop mb-xs-1 mb-sm-4 mb-lg-4 mb-xxl-4" data-skin-grid-row-id="31aef661-b877-44a6-a672-fb20b82802a7"> 481 <div class="grid__col grid__col_xs-12 grid__col_sm-grow grid__col_lg-grow grid__col_xxl-grow" data-skin-grid-column-id="4302145b-6c12-4c39-b0d3-d752e20f1b43"> 482 483 </div> 484 </div> 485 <div class="grid__row" data-skin-grid-row-id="aaefad19-55ab-42c1-ae96-9ad81113c20e"> 486 <div class="grid__col grid__col_xs-grow" data-skin-grid-column-id="8b5366b8-e6e8-495c-92c3-8244968f4e92"> 487 488 </div> 489 </div> 490 <div class="grid__row" data-skin-grid-row-id="406cf617-962c-4c1f-9621-fa23b3b5a3b9"> 491 <div class="grid__col hidden-sm-only hidden-md-only hidden-lg-only hidden-xl-only hidden-xxxl-only hidden-xxl-only pt-xs-2 pb-xs-2 pt-sm-2 pb-sm-2 pt-lg-2 pb-lg-2 pt-xxl-2 pb-xxl-2 grid__col_xs-grow grid__col_sm-grow grid__col_lg-grow grid__col_xxl-grow" data-skin-grid-column-id="d1d83b02-31fb-464b-b8eb-1de4bdab5968"> 492 493 </div> 494 </div> 495 <div class="grid__row grid__row_xs-hleft grid__row_sm-hleft grid__row_lg-hleft grid__row_xxl-hleft grid__row_xs-vcenter grid__row_sm-vcenter grid__row_lg-vcenter grid__row_xxl-vcenter mt-sm-4" data-skin-grid-row-id="3bf7be73-d410-4fd5-91d2-c36fe2baaf0e"> 496 <div class="grid__col hidden-xs-only grid__col_xs-4 grid__col_sm-4 grid__col_lg-4 grid__col_xxl-4 pl-xs-4 pl-sm-4 pl-lg-4 pl-xxl-4" data-skin-grid-column-id="76632fd6-7d9d-4b73-8e8d-2e89119116ec"> 497 498 </div> 499 <div class="grid__col grid__col_xs-grow" data-skin-grid-column-id="9ebad648-060e-481f-a33d-247dc1f9e88f"> 500 501 </div> 502 </div> 503 <div class="grid__row grid__row_xs-hleft grid__row_sm-hleft grid__row_lg-hleft grid__row_xxl-hleft grid__row_xs-vbaseline grid__row_sm-vbaseline grid__row_lg-vbaseline grid__row_xxl-vbaseline mt-xs-4 mt-sm-4 mt-lg-4 mt-xxl-4" data-skin-grid-row-id="a131458e-7efe-412f-b8b1-e2a6feacbfc2"> 504 <div class="grid__col grid__col_xs-12 grid__col_sm-12 grid__col_lg-12 grid__col_xxl-12" data-skin-grid-column-id="d696c5e5-e00e-49f1-97cb-56496c8f7b24"> 505 <div 506 class="module" 507 data-module-name="contact_form" 508 data-module-id="63" 509 data-module-instance="6548"> 510 511 512 513 <div class="contact-form"> 514 515 <h2 516 class=" 517 header 518 header_h2 519 header_underline contact-form__header 520 " 521 > 522 <span 523 class=" 524 header_highlight 525 " 526 > 527 Formularz kontaktowy 528 </span> 529 530 </h2> 531 532 533 534 <flash-messenger class="flash-messenger control" name="contact-form-6548"></flash-messenger> 535 536 <div class="form__additional-info" aria-hidden="true"> 537 <i> 538 ObowiÄ zkowe pola oznaczone sÄ symbolem - 539 <span class="form__additional-info_secondary">*</span> 540 </i> 541 </div> 542 543 <contact-form module-instance-id="6548"> 544 <div slot="form"> 545 546 547 548 <control-connector 549 class="control " 550 551 > 552 <h-control> 553 <h-control-label 554 class=" 555 control__label 556 label 557 " 558 > 559 <label for="contact-name"> 560 561 ImiÄ i nazwisko 562 563 564 </label> 565 </h-control-label> 566 567 <h-control-content class="control"> 568 <h-control-element class="control__element"> 569 <h-input 570 controlId="contact-name" 571 controlName="name" 572 placeholder="" 573 class=" contact-form__input" 574 > 575 <h-input-control 576 value="" 577 ></h-input-control> 578 579 </h-input> 580 </h-control-element> 581 582 <control-errors></control-errors> 583 </h-control-content> 584 </h-control> 585 </control-connector> 586 587 588 589 590 591 <control-connector 592 class="control " 593 required email 594 > 595 <h-control> 596 <h-control-label 597 class=" 598 control__label 599 label 600 label_required " 601 > 602 <label for="contact-email">
603 <span class="label__asterisk" aria-hidden="true">*</span> 604 605 Adres e-mail 606 607 608 </label> 609 </h-control-label> 610 611 <h-control-content class="control"> 612 <h-control-element class="control__element"> 613 <h-input 614 controlId="contact-email" 615 controlName="email" 616 placeholder="" 617 required class=" contact-form__input" 618 type="email" > 619 <h-input-control 620 value="" 621 required ></h-input-control> 622 623 </h-input> 624 </h-control-element> 625 626 <control-errors></control-errors> 627 </h-control-content> 628 </h-control> 629 </control-connector> 630 631 632 633 634 635 <control-connector 636 class="control " 637 638 > 639 <h-control> 640 <h-control-label 641 class=" 642 control__label 643 label 644 " 645 > 646 <label for="contact-subject"> 647 648 Temat 649 650 651 </label> 652 </h-control-label> 653 654 <h-control-content class="control"> 655 <h-control-element class="control__element"> 656 <h-input 657 controlId="contact-subject" 658 controlName="subject" 659 placeholder="" 660 class=" contact-form__input" 661 > 662 <h-input-control 663 value="" 664 ></h-input-control> 665 666 </h-input> 667 </h-control-element> 668 669 <control-errors></control-errors> 670 </h-control-content> 671 </h-control> 672 </control-connector> 673 674 675 676 677 <control-connector class="control" required > 678 <h-control> 679 <h-control-label 680 class=" 681 control__label 682 label 683 label_required " 684 > 685 <label for="contact-content"> 686 <span class="label__asterisk" aria-hidden="true">*</span> 687 688 WiadomoÅÄ 689 </label> 690 </h-control-label> 691 692 <h-control-content class="control"> 693 <h-control-element class="control__element"> 694 <h-textarea 695 controlId="contact-content" 696 controlName="content" 697 class=" contact-form__input" 698 required 699 > 700 <h-textarea-control placeholder="Wpisz tutaj"></h-textarea-control> 701 </h-textarea> 702 </h-control-element> 703 704 <control-errors></control-errors> 705 </h-control-content> 706 </h-control> 707 </control-connector> 708 709 710 711 <control-connector 712 class="control " 713 > 714 <h-control> 715 <h-control-content class="control"> 716 <h-control-element class="control__element"> 717 718 <div class="checkbox "> 719 <div class="checkbox__control"> 720 <input 721 type="checkbox" 722 id="5" 723 name="additional_5" 724 725 value="1" 726 727 autocomplete="off" 728 class="checkbox__input " 729 730 731 aria-required="true" 732 aria-invalid="false" 733 734 735 /> 736 737 <label 738 class="checkbox__label" 739 for="5"></label> 740 </div> 741 742 <div class="checkbox__content"> 743 <label 744 class="label label_required " 745 for="5" 746 >
747 <span class="label__asterisk" aria-hidden="true">*</span> 748 749 Administratorem Pani/Pana danych osobowych jest BOTANIC Polska z siedzibÄ w ZaÅciankach, 15-521 ZaÅcianki, ul. UsÅugowa 33. Pani/Pana dane osobowe przetwarzane bÄdÄ w celu odpowiedzi na zadane przez PaniÄ /Pana pytania. SzczegóÅowe zasady przetwarzania Pani/Pana danych osobowych znajdujÄ siÄ pod linkiem <a href="https://botanic.com.pl/polityka-prywatnosci/">https://botanic.com.pl/polityka-prywatnosci/</a> 750 </label> 751 752 </div> 753 754 </div> 755 756 </h-control-element> 757 758 <control-errors></control-errors> 759 </h-control-content> 760 </h-control> 761 </control-connector> 762 763 764 765 766 <control-connector 767 class="control " 768 769 > 770 <h-control> 771 <h-control-label 772 class=" 773 control__label 774 label 775 " 776 > 777 <label for="4"> 778 779 Telefon 780 781 782 </label> 783 </h-control-label> 784 785 <h-control-content class="control"> 786 <h-control-element class="control__element"> 787 <h-input 788 controlId="4" 789 controlName="additional_4" 790 placeholder="" 791 class=" " 792 type="text" > 793 <h-input-control 794 value="" 795 ></h-input-control> 796 797 </h-input> 798 </h-control-element> 799 800 <control-errors></control-errors> 801 </h-control-content> 802 </h-control> 803 </control-connector> 804 805 806 <input type="text" name="email_verify" aria-hidden="true" tabindex="-1" autocomplete="off" /> 807 808 <div class="grid__row grid__row_xs-hright mb-xs-4"> 809 <div class="grid__col grid__col_xs-12"> 810 <button type="submit" class="btn btn_primary contact-form__button">WyÅlij</button> 811 </div> 812 </div> 813 </div> 814 </contact-form> 815 </div> 816 817</div> 818 </div> 819 </div> 820</div></main> 821 822 <footer id="main-footer" class="context-31"> 823 <div class="grid mt-md-6 mt-xl-8 grid_full mt-xs-4 mt-sm-6 mt-lg-8 mt-xxl-8 grid_xs-hcenter" data-skin-grid-section-id="c5d02a15-1ee7-4a3a-93af-3f8b534dc264"><div class="grid__row grid__row_container-width" data-skin-grid-row-id="634d5a34-7731-4182-bf70-7494f14ca534"><div class="grid__col grid__col_xs-12 grid__col_sm-12 grid__col_lg-6 grid__col_xxl-6" data-skin-grid-column-id="d9f43c16-fadb-481b-905b-fbe7dbdd3a9f"><div class="grid__row" data-skin-grid-row-id="ea6826cc-0374-435c-8c8d-3ef2044a50d0"><div class="grid__col grid__col_xs-grow" data-skin-grid-column-id="369a1683-12fb-4d77-998c-b3a471b62ee1"><div class="grid__row" data-skin-grid-row-id="a0a00042-2ec8-4152-a33d-0c15347fd70e"><div class="grid__col grid__col_xs-grow" data-skin-grid-column-id="e39e211b-ea79-4eba-bf31-1474021ddfc4"><div class="grid__row grid__row_xs-hleft grid__row_sm-hleft grid__row_lg-hleft grid__row_xxl-hleft grid__row_xs-vtop grid__row_sm-vtop grid__row_lg-vtop grid__row_xxl-vtop gc__footer__text__social__container" data-skin-grid-row-id="f6d04178-0090-4446-8175-9f1ab013bef3"><div class="grid__col grid__col_xs-12 grid__col_sm-grow grid__col_lg-grow grid__col_xxl-grow pb-xs-3 pb-sm-3 pb-lg-3 pb-xxl-3" data-skin-grid-column-id="b537869f-9f79-43bc-b943-c9b1c9a09d8d"></div><div class="grid__col grid__col_xs-12" data-skin-grid-column-id="4b4ff6e2-0993-49b1-a6d6-6761daec5f2a"></div></div></div></div></div></div></div><div class="grid__col gc__footer__trust__badges grid__col_xs-12 grid__col_sm-12 grid__col_lg-grow grid__col_xxl-grow" data-skin-grid-column-id="7054d18f-598b-4e96-8e8c-bb1838139908"></div></div> 824 <div class="grid__row grid__row_xs-hleft grid__row_sm-hleft grid__row_lg-hleft grid__row_xxl-hleft grid__row_xs-vtop grid__row_sm-vtop grid__row_lg-vtop grid__row_xxl-vtop grid__row_container-width" data-skin-grid-row-id="5b1f0eac-280e-4054-b339-82b8cfc7d166"> 825 <div class="grid__col gc__footer__enchanced grid__col_xs-12 grid__col_sm-6 grid__col_lg-3 grid__col_xxl-3" data-skin-grid-column-id="2bf1d325-8df1-4276-a304-90e1b2f76351"><div class="grid__row" data-skin-grid-row-id="6b5e4525-20d0-4ccf-93bf-75acfdc9c22a"><div class="grid__col grid__col_xs-grow grid__col_sm-grow grid__col_lg-grow grid__col_xxl-grow gc__contact__info__footer" data-skin-grid-column-id="2ea89ef7-ac0a-4427-940e-05b744853f8c"></div></div><div class="grid__row" data-skin-grid-row-id="213db88d-eabf-4bd3-a1ae-5ca6eacb5887"><div class="grid__col grid__col_xs-grow" data-skin-grid-column-id="1484f2b3-94dd-4cc4-a2a2-335b696a02b8"><div 826 class="module" 827 data-module-name="000652b2-bce7-21f1-9a02-995bbbb9e79c" 828 data-module-id="610" 829 data-module-instance="6468"> 830<footer class="bn-footer"> 831 <div class="bn-fwrap"> 832 <div class="bn-footer__main">
833 <div class="bn-footer__col bn-footer__brand"> 834 <a class="bn-footer__logo" href="/" aria-label="Botanic"><img src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+PCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIj48c3ZnIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHZpZXdCb3g9IjAgMCA2MjIxIDEzNTIiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgeG1sbnM6c2VyaWY9Imh0dHA6Ly93d3cuc2VyaWYuY29tLyIgc3R5bGU9ImZpbGwtcnVsZTpldmVub2RkO2NsaXAtcnVsZTpldmVub2RkO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoyOyI+PHJlY3QgaWQ9IlBhZ2UtMiIgc2VyaWY6aWQ9IlBhZ2UgMiIgeD0iMCIgeT0iMCIgd2lkdGg9IjYyMjEiIGhlaWdodD0iMTM1MS4zMzMiIHN0eWxlPSJmaWxsOm5vbmU7Ii8+PGNsaXBQYXRoIGlkPSJfY2xpcDEiPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSI2MjIxIiBoZWlnaHQ9IjEzNTEuMzMzIi8+PC9jbGlwUGF0aD48ZyBjbGlwLXBhdGg9InVybCgjX2NsaXAxKSI+PGcgaWQ9IkxheWVyLTEiIHNlcmlmOmlkPSJMYXllciAxIj48L2c+PGc+PHBhdGggZD0iTTcwNS45NSw4NzIuMjg5YzAsLTE2Mi4wNjkgLTExMS42NTQsLTI3MS45MjIgLTI0MS4zMjEsLTI3MS45MjJjLTEzMy4yNjksMCAtMjQzLjEyMiwxMDguMDUyIC0yNDMuMTIyLDI3MS45MjJjMCwxNjIuMDg3IDEwOS44NTMsMjcxLjk0MSAyNDMuMTIyLDI3MS45NDFjMTI5LjY2NiwwIDI0MS4zMjEsLTEwOS44NTMgMjQxLjMyMSwtMjcxLjk0MW0tNDg4LjA0NSw0NTcuNDI1bC0yMTcuOTA1LDBsMCwtMTI3OC42MTRsMjMyLjMxNSwtMGwwLDQ3My42MTdjNTAuNDMzLC03Ny40MzIgMTYyLjA2OSwtMTM1LjA1MiAyODAuOTQ2LC0xMzUuMDUyYzIzNC4wOTgsMCA0MjYuODA1LDE5Ni4yOTEgNDI2LjgwNSw0ODAuODIyYzAsMjg0LjU0OSAtMTkyLjcwNyw0ODAuODQgLTQzMC40MjYsNDgwLjg0Yy0xMjIuNDYxLDAgLTI0MS4zMDIsLTYxLjI0IC0yOTEuNzM1LC0xNDUuODc3bDAsMTI0LjI2M1oiIHN0eWxlPSJmaWxsOiNmMGY3ZWQ7ZmlsbC1ydWxlOm5vbnplcm87Ii8+PHBhdGggZD0iTTI3NjAuNTk4LDEzMTUuMzA2Yy0zNy44MDYsMjEuNjE0IC05NS40NDQsMzYuMDIzIC0xNzEuMDc1LDM2LjAyM2MtMTg5LjA4NywwIC0zMDYuMTQ1LC0xMTEuNjU0IC0zMDYuMTQ1LC0zMDkuNzQ3bDAsLTQ0My4wMzRsLTEyOS42NjYsMGwwLC0xODcuMjg1bDEzNi44NzEsMGwwLC0yMDguOWwyMjYuOTExLC01OS40MmwwLDI2OC4zMmwyMjEuNTA4LDBsMCwxODcuMjg1bC0yMjEuNTA4LDBsMCw0MTAuNjEzYzAsOTMuNjQzIDQ4LjYzMiwxMzMuMjY5IDEzNS4wNywxMzMuMjY5YzI1LjE5OCwwIDcwLjIyOCwtNy4yMDUgMTA4LjAzNCwtMjguODE5bDAsMjAxLjY5NVoiIHN0eWxlPSJmaWxsOiNmMGY3ZWQ7ZmlsbC1ydWxlOm5vbnplcm87Ii8+PHBhdGggZD0iTTM0NDMuMDc1LDk1Ni45MzFsMCwtMzQuMjA0bC0xODUuNDg0LDIzLjM5N2MtMTAwLjg0NywxMi42MDggLTE1OC40ODUsNTQuMDE3IC0xNTguNDg1LDEyMC42NmMwLDYzLjAyMyA1Mi4yMzQsMTAyLjY0OSAxMjcuODY1LDEwMi42NDljMTE4Ljg1OSwwIDIxNi4xMDQsLTk3LjI0NSAyMTYuMTA0LC0yMTIuNTAybS0xNzYuNDc4LC01NjcuMjc4YzIzNC4xMTYsMCA0MDMuMzksMTI3Ljg2NSA0MDMuMzksMzYwLjE4bDAsNTc5Ljg4NmwtMjE3LjkwNSwwbDAsLTEyNy44NjVjLTU3LjYzOCw5My42NDMgLTE1Ni42NjYsMTQ5LjQ3OSAtMjc3LjMyNiwxNDkuNDc5Yy0xNzIuODk0LDAgLTI5OC45NTgsLTEwOS44NTMgLTI5O
834C45NTgsLTI2MS4xMzRjMCwtMTYwLjI4NiAxMTguODc3LC0yNTIuMTI4IDMzMy4xNjIsLTI4NC41MzFsMjMyLjMxNSwtMzQuMjIybDAsLTI1LjIxNmMwLC05NS40NDQgLTc1LjYzMSwtMTUxLjI4IC0xOTIuNjg5LC0xNTEuMjhjLTEyMi40NjEsMCAtMjM0LjExNiw1Mi4yMzQgLTMwMi41NDIsMTAyLjY2N2wwLC0yMTkuNzI1Yzc3LjQzMiwtNTAuNDE1IDE5Ni4yOTEsLTg4LjIzOSAzMjAuNTU0LC04OC4yMzkiIHN0eWxlPSJmaWxsOiNmMGY3ZWQ7ZmlsbC1ydWxlOm5vbnplcm87Ii8+PHBhdGggZD0iTTQ0MzUuMjg2LDM4OS42NmMyMTIuNTIsMCAzNTYuNTc3LDE0Mi4yNzQgMzU2LjU3NywzODEuNzc2bDAsNTU4LjI3MmwtMjM0LjExNiwwbDAsLTUyOS40NTRjMCwtMTMzLjI1IC03OS4yMzMsLTIwMS42OTUgLTE4My42ODMsLTIwMS42OTVjLTE1NC44ODMsMCAtMjEyLjUwMiwxMzguNjcyIC0yMTIuNTAyLDI1Ny41MzFsMCw0NzMuNjE3bC0yMzQuMTE2LDBsMCwtOTE4LjQ1MmwyMjUuMTEsMGwwLDEyNC4yODFjNTIuMjE2LC04OC4yNTcgMTQ0LjA3NiwtMTQ1Ljg3NyAyODIuNzI5LC0xNDUuODc3IiBzdHlsZT0iZmlsbDojZjBmN2VkO2ZpbGwtcnVsZTpub256ZXJvOyIvPjxwYXRoIGQ9Ik01MDQ3LjUzMiw0MTEuMjZsMjM0LjExNiwwbDAsOTE4LjQ1MmwtMjM0LjExNiwwbDAsLTkxOC40NTJabTI1Mi4xMDksLTI2Ni41MTljMCw3NS42MzEgLTU5LjQyLDEzMy4yNjkgLTEzMy4yNSwxMzMuMjY5Yy03NS42MzEsMCAtMTM2Ljg3MSwtNTcuNjM4IC0xMzYuODcxLC0xMzMuMjY5YzAsLTc1LjYzMSA2MS4yNCwtMTMzLjI2OSAxMzYuODcxLC0xMzMuMjY5YzczLjgzLDAgMTMzLjI1LDU3LjYzOCAxMzMuMjUsMTMzLjI2OSIgc3R5bGU9ImZpbGw6I2YwZjdlZDtmaWxsLXJ1bGU6bm9uemVybzsiLz48cGF0aCBkPSJNNjIxNi4yMzksNjY2Ljk5N2MtNjEuMjIyLC00My4yMjggLTE0OS40NzksLTY2LjY0MyAtMjIxLjUwOCwtNjYuNjQzYy0xNjMuODg4LDAgLTI3NS41MjUsMTExLjY1NCAtMjc1LjUyNSwyNzEuOTQxYzAsMTQ5LjQ3OSAxMDQuNDUsMjY4LjMzOCAyNzUuNTI1LDI2OC4zMzhjNzkuMjUyLDAgMTYzLjg3LC0yMS42MTQgMjIzLjMwOSwtNjguNDQ1bDAsMjIxLjUwOGMtNjYuNjI1LDQxLjQyNyAtMTY3LjQ3Myw1Ny42MzggLTI1Mi4xMjgsNTcuNjM4Yy0yNzkuMTQ1LDAgLTQ4NC40NDIsLTIwNy4xMTcgLTQ4NC40NDIsLTQ3OS4wMzljMCwtMjczLjc0MiAyMDEuNzEzLC00ODIuNjQxIDQ4Ni4yNDQsLTQ4Mi42NDFjODQuNjM3LDAgMTgwLjA4MSwxOS44MTMgMjQ4LjUyNSw1Ny42MzhsMCwyMTkuNzA3WiIgc3R5bGU9ImZpbGw6I2YwZjdlZDtmaWxsLXJ1bGU6bm9uemVybzsiLz48cGF0aCBkPSJNMTU2My4wODEsMTEzNy4wMTljLTE0NS44NzcsMCAtMjUwLjMyNywtMTE1LjI1NyAtMjUwLjMyNywtMjY2LjUxOWMwLC0xNTEuMjggMTA0LjQ1LC0yNjYuNTM3IDI1MC4zMjcsLTI2Ni41MzdjMTQ0LjA1NywwIDI0OC41MjUsMTE1LjI1NyAyNDguNTI1LDI2Ni41MzdjMCwxNTEuMjYyIC0xMDQuNDY4LDI2Ni41MTkgLTI0OC41MjUsMjY2LjUxOW05My43ODgsLTczOS4xMzVsNTguODM4LDBjMTg2Ljk3NiwwIDMzOC41NjYsLTE1MS41OSAzMzguNTY2LC0zMzguNTY2bC0xNDYuNzg2LDBjLTE4NC4yNDcsMCAtMzMzLjgxNywxNDcuMjc4IC0zMzguMTQ3LDMzMC40ODhjLTIuMDkyLC0wLjAxOCAtNC4xNDgsLTAuMTQ2IC02LjI1OSwtMC4xNDZjLTIuNzExLDAgLTUuMzY3LDAuMTQ2IC04LjA2LDAuMTgyYy00LjMxMiwtMTgzLjIyOCAtMTUzLjg4MiwtMzMwLjUyNCAtMzM4LjE2NSwtMzMwLjUyNGwtMTQ2Ljc2OCwwYzAsMTg2Ljk3NiAxNTEuNTksMzM4LjU2NiAzMzguNTY2LDMzOC41NjZsNjAuMDc1LDBjLTIzMi41MzMsNDAuODgxIC0zOTEuODkxLDIzMi4wMDYgLTM5MS44OTEsNDcyLjYxN2MwLDI3MS45MjIgMjAzLjQ5Niw0ODAuODIyIDQ4Ni4yNDQsNDgwLjgyMmMyODAuOTI4LDAgNDg0LjQyNCwtMjA4LjkgNDg0LjQyNCwtNDgwLjgyMmMwLC0yNDAuNjExIC0xNTkuMzQsLTQzMS43MzUgLTM5MC42MzYsLTQ3Mi42MTciIHN0eWxlPSJmaWxsOiNiY2ZkYWM7ZmlsbC1ydWxlOm5vbnplcm87Ii8+PC9nPjwvZz48L3N2Zz4=" width="300" height="65" alt="Botanic"></a> 835 <p class="bn-footer__about">Producent szklarni ogrodowych z poliwÄglanu, wiat samochodowych i zadaszeÅ basenowych.</p> 836 <div class="bn-footer__contact"> 837 <a class="bn-footer__phone" href="tel:+48833070023"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"/></svg>+48 833 070 023</a> 838 <div class="bn-footer__hours">Pon.âPt. 8:00â17:00</div> 839 </div> 840 </div> 841 <div class="bn-footer__col"> 842 <h2 class="bn-footer__title">Kategorie</h2> 843 <ul class="bn-footer__list"> 844 <li><a href="/szklarnie">Szklarnie z poliwÄglanu</a></li> 845 <li><a href="/wiaty-samochodowe">Wiaty samochodowe</a></li> 846 <li><a href="/grzadki-i-klomby">GrzÄ dki i klomby</a></li> 847 <li><a href="/pl/c/Zadaszenia-basenowe/50">Zadaszenia basenowe</a></li> 848 </ul> 849 </div> 850 <div class="bn-footer__col"> 851 <h2 class="bn-footer__title">Informacje</h2> 852 <ul class="bn-footer__list"> 853 <li><a href="/o-nas">O nas</a></li> 854 <li><a href="/pl/i/Jak-wybrac-szklarnie.-Poradnik/33">Jak wybraÄ szklarniÄ. Poradnik</a></li> 855 <li><a href="/pl/i/Malowanie-konstrukcji/23">Malowanie konstrukcji</a></li> 856 <li><a href="/pl/i/Tasmy-i-profile/37">TaÅmy i profile</a></li> 857 <li><a href="/formy-platnosci">Formy pÅatnoÅci</a></li> 858 <li><a href="/pl/blog">Blog</a></li> 859 <li><a href="/realizacje">Realizacje</a></li> 860 <li><a href="/montaz-szklarni">Montaż szklarni</a></li> 861 <li><a href="/pl/i/Nasi-Partnerzy/36">Nasi Partnerzy</a></li> 862 <li><a href="/mapa-strony">Mapa strony</a></li> 863 <li><a href="/contact">Kontakt</a></li> 864 </ul> 865 </div>
866 <div class="bn-footer__col"> 867 <h2 class="bn-footer__title">Pomoc</h2> 868 <ul class="bn-footer__list"> 869 <li><a href="/pl/i/Zwroty-i-reklamacje/7">Zwroty i reklamacje</a></li> 870 <li><a href="/pl/i/Program-afiliacyjny-Botanic/21">Program afiliacyjny Botanic</a></li> 871 <li><a href="/faq">FAQ</a></li> 872 <li><a href="/regulamin">Regulamin sklepu</a></li> 873 <li><a href="/polityka-prywatnosci">Polityka prywatnoÅci</a></li> 874 <li><a href="/jak-kupic-na-raty">Jak kupiÄ na raty?</a></li> 875 <li><a href="/pl/i/Zostan-Partnerem-B2B/35">ZostaÅ Partnerem B2B</a></li> 876 </ul> 877 </div> 878 </div> 879 <div class="bn-footer__bottom"> 880 <p>© 2026 Botanic. Wszystkie prawa zastrzeżone.</p> 881 </div> 882 </div> 883 <button class="bn-totop" type="button" aria-label="PrzewiÅ do góry"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"><polyline points="18 15 12 9 6 15"/></svg></button> 884</footer></div></div></div></div> 885 <div class="grid__col grid__col_xs-12 grid__col_sm-6 grid__col_lg-grow grid__col_xxl-grow" data-skin-grid-column-id="e19e5350-160e-403e-bb35-fbdb18de043b"> 886 887 </div><div class="grid__col gc__footer__newsletter grid__col_xs-12 grid__col_sm-12 grid__col_lg-3 grid__col_xxl-3" data-skin-grid-column-id="9ad1b203-c2df-40c7-be54-6f51dd86c778"></div> 888 </div><div class="grid__row grid__row_container-width gc__last__footer__section grid__row_xs-vcenter grid__row_sm-vcenter grid__row_lg-vcenter grid__row_xxl-vcenter grid__row_xs-hcenter grid__row_sm-hbetween grid__row_lg-hbetween grid__row_xxl-hbetween" data-skin-grid-row-id="3c5016e3-51a8-40d4-8de8-7b3485b9b7bf"><div class="grid__col grid__col_xs-grow" data-skin-grid-column-id="8a8a2f73-5504-4baf-ab7b-f4598f59b503"></div><div class="grid__col pt-xs-4 pt-sm-0 grid__col_xs-12 grid__col_sm-9 grid__col_lg-grow grid__col_xxl-grow" data-skin-grid-column-id="e2bbb452-b634-48c0-8724-6c48a9d8e16d"></div></div> 889</div> </footer> 890 891 892 893 894
895<script id="skinSettings" type="application/json"> 896 { 897 "currency": "PLN", 898 "locale": "pl_PL", 899 "decimalSeparator": ",", 900 "thousandSeparator": " ", 901 "recaptchaSiteKey": "6Le4tYEpAAAAAP3ZMzqruaaLJMcxP7oRFVly2Ang", 902 "recaptchaEnabled": "1", 903 "isFullRegistrationMode": "", 904 "registrationType": "0", 905 "isGuestCheckoutEnabled": "", 906 "isCookieInformationEnabled": "1", 907 "isRegistrationEnabled": "1", 908 "isBuyingEnabledToUnregistered": "1", 909 "contextId": "31", 910 "licenseData": "1791415369101414386", 911 "showNetPrices": "", 912 "showGrossPrices": "1", 913 "showAdditionalTaxInfo": "", 914 "loginDisplayMode": "sheet", 915 "isShoperSSOActive": "1", 916 "lastUrl": "" 917 } 918</script>
918 919
920<script id="localesAndCurrenciesSettings" type="application/json"> 921 { 922 "locales": [{"locale":"pl_PL","region":"Polska","name":"polski","url":"\/","currencyCode":"PLN","localized":{"name":"polski","region":"Polska"}}], 923 "currencies": [{"code":"PLN","name":"z\u0142oty polski","symbol":"z\u0142"}] 924 } 925</script>
925 926
927<script id="featureFlags" type="application/json"> 928 { 929 "dev_basket_merging": "", 930 "dev_mobile_search_layer": "", 931 "select_shipping_country_on_shipping_step": "", 932 "create_basket_queue": "", 933 "dev_storefront_basket_set_default_country_fix": "", 934 "payments_santander_installments_calculator": "", 935 "storefront_registration": "1", 936 "p24_payment_hide_none_pln_payments": "1", 937 "dev_payments_p24_gopay_googlepay_in_all_currencies": "1", 938 "payments_basket_stripe_card": "", 939 "dev_payments_basket_stripe_card_storefront": "1", 940 "dev_storefront_form_honeypot": "1", 941 "dev_geoloc": "1", 942 "dev_gift_cards": "1", 943 "dev_geoloc_currency_param_fix": "1", 944 "dev_storefront_menu_optimization": "1", 945 "dev_storefront_menu_categories_optimization": "", 946 "dev_storefront_menu_progressive_loading": "", 947 "dev_inpost_pay_button": "", 948 "dev_google_customer_reviews_widget_fix": "1", 949 "dev_enable_analytics_events_with_prefix": "1", 950 "dev_disable_analytics_events_without_prefix": "", 951 "dev_payments_basket_p24_apple_pay": "1", 952 "dev_payments_basket_stripe_apple_pay": "1", 953 "dev_payments_basket_apple_pay": "1", 954 "dev_storefront_address_form_save": "1", 955 "dev_storefront_turbo_restore_loaded_event": "1", 956 "dev_accordion_optimization": "", 957 "dev_phoenix_lazy_loader_optimization": "1", 958 "stock_optimization": "1", 959 "dev_consent_mode_init_fix": "1", 960 "dev_remember_create_basket_queue": "", 961 "dev_remember_order_queue": "", 962 "dev_storefront_stock_optimization": "", 963 "dev_gift_cards_payment_check": "1", 964 "dev_google_analytics_refactor": "", 965 "dev_search_close_aria_hidden_fix": "1", 966 "dev_cached_select_options": "1", 967 "dev_search_fixes": "1", 968 "dev_google_reviews_sticky_bars_fix": "1", 969 "dev_search_focus_trap_fix": "1", 970 "dev_search_close_aria_hidden_fix": "1", 971 "dev_recaptcha_fix": "1", 972 "dev_filters_mobile_focus_trap": "1", 973 "dev_email_redirect_fix": "1", 974 "dev_markets": "", 975 "dev_sso_default_payment_method_fix": "1", 976 "dev_vat_eu_visibility_fix": "1", 977 "dev_recaptcha_social_register_fix": "1", 978 "dev_select_width_optimization": "1", 979 "dev_payments_popular_subchannels": "", 980 "dev_components_scheduling_optimization": "", 981 "dev_components_resolve_order_optimization": "" 982 } 983</script>
983 984 985 986 987 <div id="my-grecaptcha-badge" data-turbolinks-permanent></div> 988 989<login-modal> 990 991 <div hidden class="social-login-providers" slot="additional-login-providers"> 992 <div class="text-separator pb-xs-1"> 993 <div class="separator" aria-hidden="true"></div> 994 <span class="text-separator__content">lub</span> 995 <div class="separator" aria-hidden="true"></div> 996 </div> 997 998 <a data-turbo="false" class="btn btn_full-width mb-xs-2 shoper_sso btn_outline" href="/pl/login/shoper_sso"> 999 Zaloguj przez 1000 <img width="85" height="19" class="shoper_sso__logo shoper_sso__logo_dark" src="https://dcsaascdn.net/img/logo-shoper-one-white.svg" alt="Zaloguj siÄ przez Shoper One logo"> 1001 <img width="85" height="19" class="shoper_sso__logo shoper_sso__logo_light" src="https://dcsaascdn.net/img/logo-shoper-one-dark.svg" alt="Zaloguj siÄ przez Shoper One logo"> 1002 </a> 1003 <a data-turbo="false" class="btn btn_full-width mb-xs-2 facebook btn_outline" href="/pl/login/facebook"> 1004 <img width="16" height="16" class="btn__icon btn__icon_left" src="/assets/img/icons/facebook_logo.svg" alt="Zaloguj przez Facebooka logo"> 1005 Zaloguj przez Facebooka 1006 </a> 1007 <a data-turbo="false" class="btn btn_full-width mb-xs-2 google btn_outline" href="/pl/login/google"> 1008 <img width="16" height="16" class="btn__icon btn__icon_left" src="/assets/img/icons/google_logo.svg" alt="Zaloguj przez Google logo"> 1009 Zaloguj przez Google 1010 </a> 1011 1012 <small class="d-block color_secondary mb-xs-2"> 1013 Logowanie przez Facebook i Google do Botanic Åwiadczone jest w ramach usÅugi Shoper ONE. 1014 </small> 1015 </div> 1016 1017</login-modal> 1018 1019<register-modal> 1020 1021 <div hidden class="social-login-providers" slot="additional-login-providers"> 1022 <div class="text-separator pb-xs-1"> 1023 <div class="separator" aria-hidden="true"></div> 1024 <span class="text-separator__content">lub</span> 1025 <div class="separator" aria-hidden="true"></div> 1026 </div> 1027 1028 <a data-turbo="false" class="btn btn_full-width mb-xs-2 shoper_sso btn_outline" href="/pl/login/shoper_sso"> 1029 Zaloguj przez 1030 <img width="85" height="19" class="shoper_sso__logo shoper_sso__logo_dark" src="https://dcsaascdn.net/img/logo-shoper-one-white.svg" alt="Zaloguj siÄ przez Shoper One logo"> 1031 <img width="85" height="19" class="shoper_sso__logo shoper_sso__logo_light" src="https://dcsaascdn.net/img/logo-shoper-one-dark.svg" alt="Zaloguj siÄ przez Shoper One logo"> 1032 </a> 1033 <a data-turbo="false" class="btn btn_full-width mb-xs-2 facebook btn_outline" href="/pl/login/facebook"> 1034 <img width="16" height="16" class="btn__icon btn__icon_left" src="/assets/img/icons/facebook_logo.svg" alt="Zaloguj przez Facebooka logo"> 1035 Zaloguj przez Facebooka 1036 </a> 1037 <a data-turbo="false" class="btn btn_full-width mb-xs-2 google btn_outline" href="/pl/login/google"> 1038 <img width="16" height="16" class="btn__icon btn__icon_left" src="/assets/img/icons/google_logo.svg" alt="Zaloguj przez Google logo"> 1039 Zaloguj przez Google 1040 </a> 1041 1042 <small class="d-block color_secondary mb-xs-2"> 1043 Logowanie przez Facebook i Google do Botanic Åwiadczone jest w ramach usÅugi Shoper ONE. 1044 </small> 1045 </div> 1046 1047</register-modal> 1048 1049<remind-password-modal></remind-password-modal> 1050 1051<added-to-basket-modal url="/pl/basket"></added-to-basket-modal> 1052 1053<h-backdrop></h-backdrop> 1054 1055 1056 1057<div id="flash-messenger" data-turbo-permanent> 1058 <flash-messenger class="flash-messenger flash-messenger_fixed" name="global"></flash-messenger> 1059</div> 1060
1061<div id="aria-live-polite" role="region" aria-live="polite" aria-atomic="true" class="sr-only" data-turbo-permanent></div> 1062<div id="aria-live-assertive" role="alert" aria-live="assertive" aria-atomic="true" class="sr-only" data-turbo-permanent></div> 1063 1064 <aside class="js__footer-extension"> 1065 <div class="grid"> 1066 <div class="grid__row grid__row_xs-hcenter mt-sm-1 mt-lg-4 mb-xs-2"> 1067 <div class="grid__col grid__col_xs-12 grid__col_xs-hcenter"> 1068 <hr class="separator separator_secondary" aria-hidden="true"> 1069 <a 1070 href="https://www.shoper.pl/premium/" 1071 target="_blank" 1072 rel="noopener" 1073 title="Sklep internetowy Shoper Premium" 1074 class="link_no-underline link_secondary p_xs color_main">Sklep internetowy <b>Shoper Premium</b></a> 1075 </div> 1076 </div> 1077 </div> 1078 </aside> 1079<div 1080 class="module_type-integration" 1081 data-integration-module-name="0007ada2-423d-21f0-aa02-0727428d8ebc" 1082 data-integration-module-id="153"><template id="gc__basket_empty_state_template"> 1083 <section class="gc-basket-empty-state" aria-labelledby="gc-basket-empty-state-title"> 1084 <svg class="gc-basket-empty-state__icon" viewBox="0 0 48 48" aria-hidden="true" focusable="false"> 1085 <path d="M7 9h5l3.6 20h21.2l4.2-14H14"></path> 1086 <path d="M18 35h17"></path> 1087 <circle cx="19" cy="40" r="2.5"></circle> 1088 <circle cx="35" cy="40" r="2.5"></circle> 1089 </svg> 1090 <div class="gc-basket-empty-state__message" role="status" aria-live="polite" aria-atomic="true"> 1091 <h1 id="gc-basket-empty-state-title" class="gc-basket-empty-state__title">Twój koszyk jest pusty.</h1> 1092 <p class="gc-basket-empty-state__text">Dodaj produkty, aby przejÅÄ do zamówienia.</p> 1093 </div> 1094 <a class="btn btn_primary gc-basket-empty-state__cta" href="/">WrÃ³Ä do zakupów</a> 1095 </section> 1096</template> 1097 1098</div><div 1099 class="module_type-integration" 1100 data-integration-module-name="0007ada2-461b-21f0-8402-7b9f31987c3f" 1101 data-integration-module-id="156"> 1102<style> 1103 1104 /* --- General Footer Styling --- */ 1105 footer#main-footer, 1106 aside.js__footer-extension { 1107 background: #101010; 1108 1109 .contact-info__header, 1110 h1,h2,h3,h4,h5,h6,.label{ 1111 color: #FFFFFF; 1112 } 1113 1114 .gc__footer__trust__badges{ 1115 border-bottom: 1px solid #413e38; 1116 } 1117 .mt-lg-8, 1118 .grid_full>.grid__row:not(.gc__last__footer__section) { 1119 1120 > .grid__col{ 1121 border-bottom: 1px solid #413e38; 1122 } 1123 } 1124 1125 .icon{ 1126 stroke: #FFFFFF; 1127 } 1128 1129 color: #D5D5CB; 1130 1131 p.contact-info__details-working-hours, 1132 .gc__trustbadges__badge__body, 1133 .gc__footer__info__words{ 1134 color: #D5D5CB; 1135 } 1136 } 1137 1138 /* --- Headings --- */ 1139 footer#main-footer h3.overline.footer-group__title, 1140 aside.js__footer-extension h3.overline.footer-group__title { 1141 color: #FFFFFF; 1142 } 1143 1144 /* --- Links --- */ 1145 footer#main-footer a, 1146 aside.js__footer-extension a { 1147 color: #8FA116; 1148 } 1149 1150 footer#main-footer a:hover, 1151 aside.js__footer-extension a:hover { 1152 color: #8FA116 !important; 1153 text-decoration: underline; 1154 } 1155 1156 /* --- External Link Icon --- */ 1157 footer#main-footer a.link_secondary[target='_blank']::after, 1158 footer#main-footer .link_secondary[target='_blank']::after, 1159 aside.js__footer-extension a.link_secondary[target='_blank']::after, 1160 aside.js__footer-extension .link_secondary[target='_blank']::after { 1161 background-color: #D5D5CB; 1162 } 1163 1164 /* --- Social Media Icons Coloring --- */ 1165 footer#main-footer .gc__social__container a img, 1166 footer#main-footer .footer-social-media__item img, 1167 footer#main-footer .footer-social-media__item svg, 1168 aside.js__footer-extension .gc__social__container a img, 1169 aside.js__footer-extension .footer-social-media__item img, 1170 aside.js__footer-extension .footer-social-media__item svg { 1171 1172 filter: brightness(0) saturate(100%) invert(43%) sepia(95%) saturate(687%) hue-rotate(35deg) brightness(108%) contrast(83%); 1173 } 1174 1175 .gc__footer__newsletter { 1176 .control__element_flex { 1177 border: 2px solid #cacabe; 1178 transition: border-color .2s ease-in-out; 1179 -webkit-text-fill-color: #FFFFFF; 1180 1181 input { 1182 -webkit-text-fill-color: #FFFFFF; 1183 } 1184 } 1185 1186 .control__element_flex.is-focused { 1187 border-color: #ffffff; 1188 } 1189
1190 .input__control + .input__label { 1191 color: #aaaaaa; 1192 } 1193 1194 .input__control input { 1195 color: #FFFFFF; 1196 } 1197 1198 .newsletter__submit-button { 1199 background-color: #8FA116; 1200 background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='5' y1='12' x2='19' y2='12'%3E%3C/line%3E%3Cpolyline points='12 5 19 12 12 19'%3E%3C/polyline%3E%3C/svg%3E"); 1201 transition: background-color .2s ease-in-out; 1202 } 1203 1204 .newsletter__submit-button:hover { 1205 filter: brightness(1.15); /* Delikatne rozjaÅnienie koloru linku */ 1206 } 1207 } 1208</style></div><div 1209 class="module_type-integration" 1210 data-integration-module-name="0007ada2-46f3-21f0-8802-7f04ceb346e2" 1211 data-integration-module-id="159"><!-- gc-version:2026-09-04-unavailable-x --> 1212<style type="text/css"> 1213 :root { 1214 /* --- Add to Cart Button (Default State) --- */ 1215 --gc-product-tile-button-border-color: #101010; 1216 --gc-product-tile-button-bg-color: #101010; 1217 --gc-product-tile-button-text-color: #FFFFFF; 1218 1219 /* --- Add to Cart Button (Hover State) --- */ 1220 --gc-product-tile-button-border-color-hover: #101010; 1221 --gc-product-tile-button-bg-color-hover: #FFFFFF; 1222 --gc-product-tile-button-text-color-hover: #101010; 1223 1224 /* --- Notify Me Button (Default State) --- */ 1225 --gc-product-tile-notify-border-color: #666666; 1226 --gc-product-tile-notify-bg-color: #f5f5f5; 1227 --gc-product-tile-notify-text-color: #666666; 1228 1229 /* --- Notify Me Button (Hover State) --- */ 1230 --gc-product-tile-notify-border-color-hover: #333333; 1231 --gc-product-tile-notify-bg-color-hover: #e0e0e0; 1232 --gc-product-tile-notify-text-color-hover: #333333; 1233 1234 /* --- Animated Border --- */ 1235 --gc-product-tile-animated-border-color: #101010; 1236 1237 /* --- Image Standardization --- */ 1238 --gc-product-tile-image-border-radius: 8px; 1239 --gc-product-tile-image-aspect-ratio: 1 / 1; 1240 } 1241 1242 .btn_primary { 1243 background-color: var(--gc-product-tile-button-bg-color); 1244 color: var(--gc-product-tile-button-text-color); 1245 border: 1px solid var(--gc-product-tile-button-border-color); 1246 stroke: var(--gc-product-tile-button-text-color); 1247 transition: color 0.25s ease-in-out, background-color 0.25s ease-in-out, border-color 0.25s ease-in-out, box-shadow 0.25s ease-in-out; 1248 .btn__icon{ 1249 stroke: var(--gc-product-tile-button-text-color); 1250 } 1251 } 1252 1253 /* Notify Me Button Styles */ 1254 availability-notifier-btn .btn_secondary { 1255 background-color: var(--gc-product-tile-notify-bg-color); 1256 color: var(--gc-product-tile-notify-text-color); 1257 border: 1px solid var(--gc-product-tile-notify-border-color); 1258 stroke: var(--gc-product-tile-notify-text-color); 1259 overflow: hidden; 1260 transition: color 0.25s ease-in-out, background-color 0.25s ease-in-out, border-color 0.25s ease-in-out, box-shadow 0.25s ease-in-out; 1261 .btn__icon{ 1262 stroke: currentColor; 1263 } 1264 } 1265 1266 availability-notifier-btn .btn_secondary:hover, 1267 availability-notifier-btn .btn_secondary:focus-visible { 1268 background-color: var(--gc-product-tile-notify-bg-color-hover); 1269 color: var(--gc-product-tile-notify-text-color-hover); 1270 border-color: var(--gc-product-tile-notify-border-color-hover); 1271 stroke: var(--gc-product-tile-notify-text-color-hover); 1272 .btn__icon{ 1273 stroke: currentColor; 1274 } 1275 } 1276 1277 /* View Product Button uses same styles as Add to Cart */ 1278 .btn_secondary:not(availability-notifier-btn .btn_secondary) { 1279 border: 1px solid var(--gc-product-tile-button-border-color); 1280 stroke: var(--gc-product-tile-button-text-color); 1281 overflow: hidden; 1282 transition: color 0.25s ease-in-out, background-color 0.25s ease-in-out, border-color 0.25s ease-in-out, box-shadow 0.25s ease-in-out; 1283 .btn__icon{ 1284 stroke: currentColor; 1285 } 1286 } 1287 1288 .btn_secondary:not(availability-notifier-btn .btn_secondary):hover { 1289 fill: var(--gc-product-tile-button-text-color-hover); 1290 border-color: var(--gc-product-tile-button-border-color-hover); 1291 stroke: var(--gc-product-tile-button-border-color-hover); 1292 .btn__icon{ 1293 stroke: currentColor; 1294 } 1295 } 1296 1297 .btn_primary:hover { 1298 background-color: var(--gc-product-tile-button-bg-color-hover); 1299 color: var(--gc-product-tile-button-text-color-hover); 1300 border-color: var(--gc-product-tile-button-border-color-hover); 1301 stroke: var(--gc-product-tile-button-text-color-hover); 1302 .btn__icon{ 1303 stroke: var(--gc-product-tile-button-text-color-hover); 1304 } 1305 } 1306 1307 1308 1309 1310 1311 1312 1313 @media (max-width: 767px) { 1314 .product-tile { 1315 display: grid; 1316 grid-template-columns: 1fr auto !important; 1317 grid-template-areas: "header header" "content footer"; 1318 align-items: end; 1319 1320 .product-tile__header { grid-area: header; grid-column: 1 / -1 !important; } 1321 .product-tile__content { grid-area: content; margin-right: 5px;} 1322 .product-tile__footer { grid-area: footer; grid-column: 2 / 3 !important;
1322 grid-row: 2 !important; } 1323 buy-button, availability-notifier-btn { position: static; } 1324 } 1325 1326 /* Add to Cart Button */ 1327 .product-tile__footer-btn .btn_primary { 1328 width: 44px !important; 1329 height: 44px !important; 1330 padding: 0; 1331 border-radius: 50%; 1332 border-width: 1.5px; 1333 box-sizing: border-box; 1334 box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.1); 1335 font-size: 0; 1336 color: transparent; 1337 1338 1339 &:before { 1340 content: '+'; 1341 font-size: 28px; 1342 font-weight: 300; 1343 line-height: 44px; 1344 text-align: center; 1345 display: block; 1346 width: 100%; 1347 height: 100%; 1348 color: var(--gc-product-tile-button-text-color); 1349 transition: color 0.25s ease-in-out; 1350 } 1351 1352 &:hover { 1353 background-color: var(--gc-product-tile-button-bg-color-hover) !important; 1354 border-color: var(--gc-product-tile-button-border-color-hover) !important; 1355 1356 &:before { 1357 color: var(--gc-product-tile-button-text-color-hover); 1358 } 1359 } 1360 1361 } 1362 1363 /* Notify Me Button */ 1364 .product-tile availability-notifier-btn .btn_secondary { 1365 width: 44px !important; 1366 height: 44px !important; 1367 padding: 0; 1368 border-radius: 50%; 1369 border-width: 1.5px; 1370 box-sizing: border-box; 1371 box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.1); 1372 font-size: 0; 1373 color: transparent; 1374 1375 1376 &:before { 1377 content: ''; 1378 font-size: 0px !important; 1379 /* Bell icon SVG mask */ 1380 -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 8A6 6 0 0 0 6 8c0 7-3 9-3 9h18s-3-2-3-9'%3E%3C/path%3E%3Cpath d='M13.73 21a2 2 0 0 1-3.46 0'%3E%3C/path%3E%3C/svg%3E") center/60% no-repeat; 1381 mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 8A6 6 0 0 0 6 8c0 7-3 9-3 9h18s-3-2-3-9'%3E%3C/path%3E%3Cpath d='M13.73 21a2 2 0 0 1-3.46 0'%3E%3C/path%3E%3C/svg%3E") center/60% no-repeat; 1382 background-color: var(--gc-product-tile-notify-text-color); 1383 transition: background-color 0.25s ease-in-out; 1384 display: block; 1385 width: 100%; 1386 height: 100%; 1387 } 1388 1389 &:hover { 1390 background-color: var(--gc-product-tile-notify-bg-color-hover) !important; 1391 border-color: var(--gc-product-tile-notify-border-color-hover) !important; 1392 1393 &:before { 1394 background-color: var(--gc-product-tile-notify-text-color-hover); 1395 } 1396 } 1397 1398 } 1399 1400 /* View Product Button */ 1401 .product-tile__footer a.btn_primary:not(.product-tile__footer-btn .btn_primary) { 1402 width: 44px !important; 1403 height: 44px !important; 1404 padding: 0; 1405 border-radius: 50%; 1406 border-width: 1.5px; 1407 box-sizing: border-box; 1408 box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.1); 1409 font-size: 0; 1410 color: transparent; 1411 1412 1413 &:before { 1414 content: ''; 1415 font-size: 0px !important; 1416 /* Arrow right icon SVG mask */ 1417 -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='5' y1='12' x2='19' y2='12'%3E%3C/line%3E%3Cpolyline points='12,5 19,12 12,19'%3E%3C/polyline%3E%3C/svg%3E") center/60% no-repeat; 1418 mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='5' y1='12' x2='19' y2='12'%3E%3C/line%3E%3Cpolyline points='12,5 19,12 12,19'%3E%3C/polyline%3E%3C/svg%3E") center/60% no-repeat; 1419 background-color: var(--gc-product-tile-button-text-color); 1420 transition: background-color 0.25s ease-in-out; 1421 display: block; 1422 width: 100%; 1423 height: 100%; 1424 } 1425 1426 &:hover { 1427 background-color: var(--gc-product-tile-button-bg-color-hover) !important; 1428 border-color: var(--gc-product-tile-button-border-color-hover) !important; 1429 1430 &:before { 1431 background-color: var(--gc-product-tile-button-text-color-hover); 1432 } 1433 } 1434 1435 } 1436 } 1437 1438 @media (max-width: 767px) { 1439 .product-tile .product-tile__footer > .btn_special-disabled { 1440 width: 44px !important; 1441 height: 44px !important; 1442 padding: 0; 1443 border-radius: 50%; 1444 border-width: 1.5px; 1445 box-sizing: border-box; 1446 box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.1); 1447 font-size: 0; 1448 color: transparent; 1449 1450 display: inline-flex !important; 1451 align-items: center; 1452 justify-content: center; 1453 min-width: 44px !important; 1454 max-width: 44px !important; 1455 background-color: var(--neutralColors400, #7d90b5) !important; 1456 border-color: transparent !important; 1457 1458 &:before { 1459 content: 'Ã'; 1460 color: var(--neutralColors0, #fff); 1461 font-size: 28px; 1462 font-weight: 300; 1463 line-height: 1; 1464 } 1465 1466 } 1467 } 1468 1469 .product-tile:hover { 1470 position: relative; 1471 } 1472 .product-tile:hover:before, 1473 .product-tile:hover:after { 1474 content: ''; 1475 position: absolute; 1476 top: 0; 1477 left: 0; 1478 width: 100%; 1479 height: 100%; 1480 box-sizing: border-box; 1481 transition: transform 0.2s ease-out; 1482 pointer-events: none; 1483 z-index: 1;
1483 /* Upewnij siÄ, że ramka jest na wierzchu */ 1484 } 1485 .product-tile:hover:before { 1486 border-bottom: 1px solid var(--gc-product-tile-animated-border-color); 1487 border-left: 1px solid var(--gc-product-tile-animated-border-color); 1488 transform: scale(1); 1489 transform-origin: 0 100%; 1490 } 1491 .product-tile:hover:after { 1492 border-top: 1px solid var(--gc-product-tile-animated-border-color); 1493 border-right: 1px solid var(--gc-product-tile-animated-border-color); 1494 transform: scale(1); 1495 transform-origin: 100% 0%; 1496 } 1497 1498 .product-tile__image { 1499 position: relative; 1500 width: 100%; 1501 overflow: hidden; 1502 border-radius: var(--gc-product-tile-image-border-radius, 8px); 1503 } 1504 1505 .product-tile__image a { 1506 display: block; 1507 position: relative; 1508 width: 100%; 1509 aspect-ratio: var(--gc-product-tile-image-aspect-ratio, 1 / 1); 1510 overflow: hidden; 1511 border-radius: var(--gc-product-tile-image-border-radius, 8px); 1512 } 1513 1514 .product-tile__image a .image, 1515 .product-tile__image picture { 1516 position: absolute; 1517 top: 0; 1518 left: 0; 1519 width: 100%; 1520 height: 100%; 1521 overflow: hidden; 1522 border-radius: var(--gc-product-tile-image-border-radius, 8px); 1523 } 1524 1525 .product-tile__image img { 1526 width: 100%; 1527 height: 100% !important; 1528 object-fit: contain; 1529 object-position: center; 1530 border-radius: var(--gc-product-tile-image-border-radius, 8px); 1531 max-height: none !important; 1532 } 1533 1534 .product-tile__image .ribbon-group { 1535 position: absolute; 1536 z-index: 2; 1537 } 1538 1539 .product-tile__favourites { 1540 z-index: 3; 1541 } 1542 1543 1544 1545 .product-tile__image { position: relative; } 1546 .product-tile__image_primary, 1547 .product-tile__image_secondary { transition: opacity 0.3s ease-in-out; } 1548 .product-tile__image_primary { opacity: 1; } 1549 .product-tile__image_secondary { position: absolute; top: 0; left: 0; width: 100%; opacity: 0; } 1550 /* Desktop hover â tylko gdy jest drugie zdjÄcie */ 1551 .product-tile:has(.product-tile__image_secondary):hover .product-tile__image_primary { opacity: 0; } 1552 .product-tile:has(.product-tile__image_secondary):hover .product-tile__image_secondary { opacity: 1; } 1553 /* Mobile/touch â active */ 1554 .product-tile:has(.product-tile__image_secondary):active .product-tile__image_primary { opacity: 0; } 1555 .product-tile:has(.product-tile__image_secondary):active .product-tile__image_secondary { opacity: 1; } 1556 @media (hover: none) { 1557 .product-tile:has(.product-tile__image_secondary):active .product-tile__image_primary { opacity: 0; } 1558 .product-tile:has(.product-tile__image_secondary):active .product-tile__image_secondary { opacity: 1; } 1559 } 1560 </style> 1561 1562 <style> 1563 @media (min-width: 768px) and (max-width: 1919px) { 1564 .module_type-integration[data-integration-module-name="sticky_mobile_bars"] .sticky-mobile-bars { 1565 display: flex !important; 1566 width: auto; 1567 right: 40px; 1568 background: transparent; 1569 bottom: 120px; 1570 border: 0px; 1571 box-shadow: none; 1572 } 1573 .module_type-integration[data-integration-module-name="sticky_mobile_bars"] .sticky-mobile-bars .sticky-mobile-bars__total-and-pay-container { 1574 border-radius: 8px; 1575 } 1576 .module_type-integration[data-integration-module-name="sticky_mobile_bars"] .sticky-mobile-bars .sticky-mobile-bars__total-and-pay-container .sticky-mobile-bars__total-and-pay { 1577 background: #fff; 1578 box-shadow: 0 -2px 20px rgba(0, 0, 0, 0.15), 0 -8px 30px rgba(0, 0, 0, 0.12); 1579 border-top: 2px solid #ddd; 1580 padding: 20px 20px 24px; 1581 position: relative; 1582 z-index: 100; 1583 border: 1px solid #9d9d9d; 1584 border-radius: 8px; 1585 } 1586 .module_type-integration[data-integration-module-name="sticky_mobile_bars"] .sticky-mobile-bars__buy-button-container.fade-transition-end { 1587 flex: 1; 1588 display: flex; 1589 width: auto; 1590 right: 20px; 1591 bottom: 120px; 1592 border-radius: 8px; 1593 padding: 6px 12px; 1594 border: 1px solid #e0e0e0; 1595 background: #fff; 1596 box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.2); 1597 } 1598 .module_type-integration[data-integration-module-name="sticky_mobile_bars"] .sticky-mobile-bars__buy-button-container.fade-transition-end auth-controller.product-actions__wrapper { 1599 display: flex; 1600 justify-content: center; 1601 align-items: center; 1602 } 1603 .module_type-integration[data-integration-module-name="sticky_mobile_bars"] .sticky-mobile-bars__menu-container { 1604 display: none !important; 1605 visibility: hidden !important; 1606 opacity: 0 !important; 1607 height: 0 !important; 1608 overflow: hidden !important; 1609 } 1610 .module_type-integration[data-integration-module-name="sticky_mobile_bars"] .sticky-mobile-bars__menu, 1611 .module_type-integration[data-integration-module-name="sticky_mobile_bars"] .sticky-menu { 1612 display: none !important; 1613 } 1614 } 1615 </style> 1616</div><div 1617 class="module_type-integration" 1618 data-integration-module-name="0007ada2-a9ac-21f0-8a02-4d1f9233b2c1" 1619 data-integration-module-id="172"></div><div 1620 class="module_type-integration" 1621 data-integration-module-name="0007ada2-bff0-21f0-b502-59dd0ef40dec" 1622 data-integration-module-id="175"><template id="gc-carousel-slide-template"> 1623 <li class="splide__slide"> 1624 <product-tile 1625 class="product-tile" 1626 product-id="" 1627 name="" 1628 price="" 1629 producer="" 1630 category="" 1631 currency="PLN" 1632 list="" 1633 id="" 1634 categoryid="" 1635 availability="" 1636 relatedids="" 1637 > 1638 <div class="product-tile__row product-tile__header"> 1639 <div class="product-tile__row product-tile_row_image"> 1640 <div class="product-tile__image"> 1641 <div class="ribbon-group ribbon-group_absolute"> 1642 <!-- JS nadpisze innerHTML, np. wstÄ Å¼kÄ NowoÅÄ --> 1643 </div> 1644 1645 <product-link 1646 id="" 1647 name="" 1648 price="" 1649 producer="" 1650 category="" 1651 currency="PLN" 1652 list="" 1653 > 1654 <a href="#" title="" aria-label=""> 1655 <picture class="image product-tile__image_primary"> 1656 <source srcset="" type="image/webp"> 1657 <img src="" alt="" title="" width="500" height="500" loading="lazy"> 1658 </picture> 1659 1660 <picture class="image product-tile__image_secondary"> 1661 <source srcset="" type="image/webp"> 1662 <img src="" alt="" title="" width="500" height="500" loading="lazy"> 1663 </picture> 1664 </a> 1665 </product-link> 1666 </div> 1667 </div> 1668
1669 <span class="product-tile__codes"></span> 1670 1671 <product-link 1672 id="" 1673 name="" 1674 price="" 1675 producer="" 1676 category="" 1677 currency="PLN" 1678 list="" 1679 > 1680 <a href="#" title="" class="link_no-underline"> 1681 <h3 class="product-tile__name product-tile__name_fixed-height"> 1682 <!-- JS wstawi nazwÄ --> 1683 </h3> 1684 </a> 1685 </product-link> 1686 </div> 1687 1688<div class="product-tile__row product-tile__content"> 1689 <div class="product-tile__row-btn"> 1690 <a href="#" class="btn btn_s btn_primary"> 1691 Zobacz produkt 1692 </a> 1693 </div> 1694</div> 1695 </product-tile> 1696 </li> 1697</template> 1698</div><div 1699 class="module_type-integration" 1700 data-integration-module-name="customer_privacy" 1701 data-integration-module-id="81"> 1702 1703 <consents-modal privacy-policy-page-id="" modal-label="Ustawienia plików cookies" hidden> 1704 <header slot="base-header"> 1705 <h2 class="font_semibold h2">Dbamy o TwojÄ prywatnoÅÄ</h2> 1706 </header> 1707 1708 <div slot="base-content"> 1709 <div class="p p_s color_secondary"> 1710 <p>Pliki cookies i pokrewne im technologie umożliwiajÄ poprawne dziaÅanie strony i pomagajÄ nam dostosowaÄ ofertÄ do Twoich potrzeb. Możesz zaakceptowaÄ wykorzystanie przez nas wszystkich tych plików i przejÅÄ do sklepu lub dostosowaÄ użycie plików do swoich preferencji, wybierajÄ c opcjÄ "Dostosuj zgody".</p> 1711 1712 <p> 1713 <consents-show-privacy-policy class="link link_secondary">WiÄcej o plikach cookies przeczytasz w naszej Polityce prywatnoÅci.</consents-show-privacy-policy> 1714 </p> 1715 </div> 1716 </div> 1717 1718 <consents-accept-necessary slot="base-buttons" class="btn btn_outline">Zaakceptuj tylko niezbÄdne</consents-accept-necessary> 1719 <consents-show-advanced slot="base-buttons" class="btn btn_outline">Dostosuj zgody</consents-show-advanced> 1720 <consents-accept-all slot="base-buttons" class="btn btn_primary">Zaakceptuj wszystkie</consents-accept-all> 1721 1722 <header slot="advanced-header"> 1723 <h2 class="font_semibold h2">Ustawienia plików cookies</h2> 1724 </header> 1725 1726 <consents-show-base slot="advanced-header" class="btn btn_icon" aria-label="Zamknij okno"> 1727 1728 1729 <svg class=" 1730 icon 1731 icon_l 1732 1733 1734 1735 btn__icon 1736 " 1737 aria-hidden="true" 1738 focusable="false" 1739 > 1740 <use href="/userdata/public/storefront/images/22316bac-95a8-44eb-8a4c-e43a3368ed92.svg#icon-x" xlink:href="/userdata/public/storefront/images/22316bac-95a8-44eb-8a4c-e43a3368ed92.svg#icon-x"></use> 1741 </svg> 1742 1743 </consents-show-base> 1744 1745 <div slot="advanced-content"> 1746 <div class="mb-xs-2 color_secondary"> 1747 <p>W tym miejscu możesz okreÅliÄ swoje preferencje w zakresie wykorzystywania przez nas plików cookies.</p> 1748 </div> 1749 1750 <div class="control"> 1751 <consents-checkbox label="Zaznacz wszystko" name="all"></consents-checkbox> 1752 </div> 1753 1754 <div class="control"> 1755 <consents-checkbox class="mb-xs-2" label="NiezbÄdne do dziaÅania strony" checked disabled> 1756 <div slot><p>Te pliki sÄ niezbÄdne do dziaÅania naszej strony internetowej, dlatego też nie możesz ich wyÅÄ czyÄ.</p></div> 1757 </consents-checkbox> 1758 </div> 1759 1760 <div class="control"> 1761 <consents-checkbox class="mb-xs-2" label="Funkcjonalne" name="functionalConsent"> 1762 <div slot><p>Te pliki umożliwiajÄ Ci korzystanie z pozostaÅych funkcji strony internetowej (innych niż niezbÄdne do jej dziaÅania). Ich wÅÄ czenie da Ci dostÄp do peÅnej funkcjonalnoÅci strony.</p></div> 1763 </consents-checkbox> 1764 </div> 1765 1766 <div class="control"> 1767 <consents-checkbox class="mb-xs-2" label="Analityczne" name="analyticsConsent"> 1768 <div slot><p>Te pliki pozwalajÄ nam na dokonanie analiz dotyczÄ cych naszego sklepu internetowego, co może przyczyniÄ siÄ do jego lepszego funkcjonowania i dostosowania do potrzeb Użytkowników.</p></div> 1769 </consents-checkbox> 1770 </div> 1771 1772 <div class="control"> 1773 <consents-checkbox class="mb-xs-2" label="Analityczne dostawcy oprogramowania" name="platformAnalyticsConsent"> 1774 <div slot>Dane wykorzystywane przez dostawcÄ oprogramowania sklepu - cyber_Folks S.A. Na ich podstawie dokonywane sÄ analizy, zwiÄ zane z rozwojem oprogramowania, oraz mierzona jest skutecznoÅÄ kampanii reklamowych. Nie sÄ ÅÄ czone z innymi informacjami, podawanymi podczas rejestracji i skÅadania zamówienia. WiÄcej na ten temat przeczytasz w <a href="https://www.shoper.pl/static/dokumenty/polityka-prywatnosci-dla-osob-odwiedzajacych-sklepy-internetowe.pdf" target="_blank" rel="noopener" data-label="Otwieranie w nowej karcie" aria-label="Polityka plików cookies Shoper - otwiera siÄ w nowej karcie">Polityce plików cookies Shoper</a>.</div> 1775 </consents-checkbox> 1776 </div> 1777 1778 <div class="control"> 1779 <consents-checkbox class="mb-xs-2" label="Marketingowe" name="marketingConsent"> 1780 <div slot><p>DziÄki tym plikom możemy prowadziÄ dziaÅania marketingowe.</p></div> 1781 </consents-checkbox> 1782 </div> 1783 </div> 1784 1785 <consents-show-base slot="advanced-buttons" class="btn btn_outline">Anuluj</consents-show-base> 1786 <consents-save slot="advanced-buttons" class="btn btn_primary">Zapisz ustawienia</consents-save> 1787 </consents-modal> 1788</div><div 1789 class="module_type-integration" 1790 data-integration-module-name="shop_analytics" 1791 data-integration-module-id="89"></div><div 1792 class="module_type-integration" 1793 data-integration-module-name="google_analytics" 1794 data-integration-module-id="90">
1794<script class="js__google-analytic-config" type="application/json"> 1795 { 1796 "trackingId": "G-59ZWDP9ZH4", 1797 "containerId": "GTM-5KCPK6FS", 1798 "layerName": "dataLayer", 1799 "isGTM": "0" 1800 } 1801</script>
1801</div><div 1802 class="module_type-integration" 1803 data-integration-module-name="google_analytics_shoper_campaigns" 1804 data-integration-module-id="91"> 1805 </div><div 1806 class="module_type-integration" 1807 data-integration-module-name="facebook_business_extension" 1808 data-integration-module-id="99"> 1809
1809<script class="js__fbe-config" type="application/json"> 1810 { 1811 "pixelId": "447975941356148" 1812 } 1813 </script>
1813 1814 </div><div 1815 class="module_type-integration" 1816 data-integration-module-name="0005f4fd-2731-21ef-ba02-ade33ab46bf4" 1817 data-integration-module-id="98"> 1818 1819 1820 1821
1821<script class="js__google-analytic-config" type="application/json"> 1822 { 1823 "trackingId": "G-3Q5ZV276CY", 1824 "isGTM": "0" 1825 } 1826 </script>
1826 1827 1828 1829 1830 1831</div><div 1832 class="module_type-integration" 1833 data-integration-module-name="0006db8d-4365-21ef-9902-55c0d39831d5" 1834 data-integration-module-id="138"></div><div 1835 class="module_type-integration" 1836 data-integration-module-name="0007c731-08a9-21f1-aa02-613a003d59bb" 1837 data-integration-module-id="140"></div><div 1838 class="module_type-integration" 1839 data-integration-module-name="00051c99-a594-21ef-b402-5d7c70a416a9" 1840 data-integration-module-id="178"><div class="MXcomfinoModulemain" data-module-id="00051c99-a594-21ef-b402-5d7c70a416a9"> 1841
1841<script class="MXModuleConfigScript" type="application/json"> 1842 [] 1843 </script>
1843 1844
1844<script class="MXShopHash" type="text/plain"> 1845 550 1846 </script>
1846 1847
1847<script class="MXComfinoConfigAllJson" type="application/json">{"payment_id":"21","payment_show_logo":"0","widget_key":"1a5ec68d-786d-4ba3-aec9-75fa3083a307","widget_type":"standard","widget_offer_type":"INSTALLMENTS_ZERO_PERCENT","app_domain":"comfino"}</script>
1847 1848</div></div><div 1849 class="module_type-integration" 1850 data-integration-module-name="0007ada2-4ef0-21f1-a902-cf04c43a4db1" 1851 data-integration-module-id="181"> 1852 1853 1854 1855 <style> 1856 .gc__btt{position:fixed;bottom:calc(var(--gc-btt-bottom,32px) + env(safe-area-inset-bottom,0px));z-index:50;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(12px) scale(.82);transition:opacity .28s cubic-bezier(.16,1,.3,1),transform .38s cubic-bezier(.34,1.56,.64,1),visibility 0s linear .28s;--gc-btt-progress:100} 1857 .gc__btt.gc__btt--pos-right{right:var(--gc-btt-side,32px)} 1858 .gc__btt.gc__btt--pos-left{left:var(--gc-btt-side,32px)} 1859 .gc__btt.gc__btt--visible{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1);transition:opacity .28s cubic-bezier(.16,1,.3,1),transform .38s cubic-bezier(.34,1.56,.64,1),visibility 0s linear 0s} 1860 .gc__btt__btn{position:relative;display:inline-flex;align-items:center;justify-content:flex-start;gap:0;width:48px;height:48px;min-width:48px;min-height:48px;padding:0;border:0;border-radius:999px;cursor:pointer;font:inherit;font-weight:600;font-size:13px;letter-spacing:.01em;line-height:1;white-space:nowrap;overflow:hidden;background:var(--gc-btt-bg,#0a0a0a);color:var(--gc-btt-fg,#fafafa);box-shadow:0 3px 6px rgba(0,0,0,.14),0 14px 32px -8px rgba(0,0,0,.42);transition:width .32s cubic-bezier(.16,1,.3,1),padding .32s cubic-bezier(.16,1,.3,1),gap .32s cubic-bezier(.16,1,.3,1),box-shadow .26s ease,background-color .22s ease} 1861 .gc__btt__btn:hover{box-shadow:0 5px 10px rgba(0,0,0,.20),0 22px 48px -10px rgba(0,0,0,.58)} 1862 .gc__btt__btn:active{box-shadow:0 2px 4px rgba(0,0,0,.18),0 8px 18px -6px rgba(0,0,0,.34);transition-duration:.08s} 1863 .gc__btt__btn:focus-visible{outline:2px solid var(--gc-btt-fg,#fafafa);outline-offset:3px} 1864 .gc__btt__visual{position:relative;display:grid;flex:0 0 48px;width:48px;height:48px;place-items:center} 1865 .gc__btt__progress{position:absolute;inset:0;width:48px;height:48px;transform:rotate(-90deg);pointer-events:none} 1866 .gc__btt__progress-track,.gc__btt__progress-value{fill:none;stroke:currentColor;stroke-width:1.6;vector-effect:non-scaling-stroke} 1867 .gc__btt__progress-track{opacity:0} 1868 .gc__btt--with-ring .gc__btt__progress-track{opacity:.2} 1869 .gc__btt__progress-value{opacity:.92;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:var(--gc-btt-progress,100)} 1870 @keyframes gc__btt__bob{0%,100%{transform:translateY(1.5px)}50%{transform:translateY(-1.5px)}} 1871 .gc__btt__icon{position:relative;z-index:1;flex:none;width:18px;height:18px;will-change:transform} 1872 .gc__btt--visible .gc__btt__icon{animation:gc__btt__bob 2.4s ease-in-out infinite} 1873 .gc__btt__btn:hover .gc__btt__icon{animation-duration:1.6s} 1874 .gc__btt__label{display:none;white-space:nowrap} 1875 .gc__btt--pill_always .gc__btt__btn{width:auto;padding:0 18px 0 0;gap:8px} 1876 .gc__btt--pill_always .gc__btt__label{display:inline} 1877 .gc__btt--pill_hover .gc__btt__label{display:inline;max-width:0;opacity:0;transform:translateX(-4px);transition:max-width .32s cubic-bezier(.16,1,.3,1),opacity .22s cubic-bezier(.16,1,.3,1),transform .32s cubic-bezier(.16,1,.3,1)} 1878 .gc__btt--pill_hover .gc__btt__btn:hover,.gc__btt--pill_hover .gc__btt__btn:focus-visible{width:auto;padding:0 18px 0 0;gap:8px} 1879 .gc__btt--pill_hover .gc__btt__btn:hover .gc__btt__label,.gc__btt--pill_hover .gc__btt__btn:focus-visible .gc__btt__label{max-width:120px;opacity:1;transform:translateX(0)} 1880 @media (max-width:1023.98px){.gc__btt{display:none!important}} 1881 @media (hover:none){.gc__btt{display:none!important}} 1882 @media (prefers-reduced-motion:reduce){.gc__btt,.gc__btt__btn,.gc__btt--pill_hover .gc__btt__label{transition:none!important}.gc__btt--visible .gc__btt__icon{animation:none}} 1883 </style> 1884 1885 <gc-back-to-top 1886 id="gc-btt-" 1887 class="gc__btt gc__btt--circle gc__btt--pos-right gc__btt--with-ring" 1888 data-options="{"position":"right","shape":"circle","label":"","threshold":600,"smoothScroll":1,"bottomOffset":32,"sideOffset":32}" 1889 style="--gc-btt-bg: #0a0a0a; --gc-btt-fg: #fafafa; --gc-btt-bottom: 32px; --gc-btt-side: 32px; display: none;" 1890 aria-hidden="true" 1891 > 1892 <button 1893 class="gc__btt__btn" 1894 type="button" 1895 tabindex="-1" 1896 aria-label="Back to top of page" 1897 >
1898 <span class="gc__btt__visual" aria-hidden="true"> 1899 <svg 1900 class="gc__btt__progress" 1901 width="48" 1902 height="48" 1903 viewBox="0 0 48 48" 1904 aria-hidden="true" 1905 focusable="false" 1906 > 1907 <circle class="gc__btt__progress-track" cx="24" cy="24" r="22" pathLength="100"/> 1908 <circle class="gc__btt__progress-value" cx="24" cy="24" r="22" pathLength="100"/> 1909 </svg> 1910 <svg 1911 class="gc__btt__icon" 1912 width="18" 1913 height="18" 1914 viewBox="0 0 24 24" 1915 fill="none" 1916 stroke="currentColor" 1917 stroke-width="2" 1918 stroke-linecap="round" 1919 stroke-linejoin="round" 1920 aria-hidden="true" 1921 focusable="false" 1922 > 1923 <path d="M12 19V5"/> 1924 <path d="m5 12 7-7 7 7"/> 1925 </svg> 1926 </span> 1927 <span class="gc__btt__label">Back to top</span> 1928 </button> 1929 </gc-back-to-top> 1930 1931</div><div 1932 class="module_type-integration" 1933 data-integration-module-name="0007ada2-6be3-21f1-a102-b166e4326246" 1934 data-integration-module-id="183"></div><div 1935 class="module_type-integration" 1936 data-integration-module-name="000652b2-bce7-21f1-ac02-a30a72be35d8" 1937 data-integration-module-id="609"><!-- ============================================================================================ 1938 RINGOSTAT â MODEL DZIAÅANIA I CZEGO NIE WOLNO ROBIÄ. PRZECZYTAJ PRZED ZMIANAMI W NUMERACH. 1939 ============================================================================================ 1940 1941 MODEL. Ringostat podmienia numer statyczny na dynamiczny (call tracking) w DWÃCH trybach: 1942 1943 TRYB 1 â PODSTAWIENIE ZAAWANSOWANE (ten, o który nam chodzi). 1944 Obejmuje elementy wskazane XPath-ami w panelu Ringostata. Przy PIERWSZYM skanie strony 1945 skrypt Ringostata dla takiego elementu: 1946 ⢠nadaje atrybuty rngst-id / rngst-geogroup, 1947 ⢠USUWA z niego href, 1948 ⢠podmienia treÅÄ na maskÄ â+48 pokaż numer" (<span style="cursor:pointer">), 1949 ⢠podpina WÅASNÄ obsÅugÄ klikniÄcia, która odsÅania numer dynamiczny. 1950 Efekt = dokÅadnie wymaganie klienta: najpierw âpokaż numer", numer dopiero po klikniÄciu. 1951 1952 TRYB 2 â PODSTAWIENIE PROSTE (fallback). 1953 ZwykÅa podmiana tekstu numeru statycznego na dynamiczny. BEZ rngst-id, BEZ maski, 1954 BEZ klikniÄcia â numer widaÄ od razu. Tak wyglÄ da KAÅ»DY element, którego tryb 1 nie objÄ Å. 1955 1956 WARUNEK KONIECZNY TRYBU 1: element musi byÄ w DOM ZANIM Ringostat zrobi pierwszy skan. 1957 Skrypt Ringostata Åaduje siÄ async, wiÄc wszystko, co siedzi w statycznym HTML tego moduÅu, 1958 zdÄ Å¼a. Sekcja Kontakt klonowana z <template> też zdÄ Å¼a, bo klonujemy jÄ synchronicznie. 1959 1960 -------------------------------------------------------------------------------------------- 1961 CZEGO NIE WOLNO â każdy z tych bÅÄdów już wystÄ piÅ i zostaÅ potwierdzony pomiarem na żywo 1962 -------------------------------------------------------------------------------------------- 1963 1964 [1] NIE WOÅAJ ringostatRestartSubstitution(). 1965 Pomiar na TEJ SAMEJ stopce, dwie podstrony: 1966 strona gÅówna (bez restartu): rngst-id="1", href usuniÄty, âpokaż numer", klik OK 1967 /contact (z restartem): rngst-id=null, href wróciÅ, goÅy numer, klik martwy 1968 Restart NIE âdoskanowuje" strony â KASUJE tryb 1 na CAÅEJ stronie i zostawia tryb 2. 1969 Dlatego jeden restart woÅany w popupie albo na Kontakcie zabijaÅ również nagÅówek i stopkÄ. 1970 1971 [2] NIE BUDUJ elementu z numerem w JS po zaÅadowaniu strony. 1972 Nie istnieje podczas pierwszego skanu â dostanie najwyżej tryb 2. Dlatego popup 1973 âPorozmawiaj" leży w HTML statycznie (ukryty CSS-em), a JS tylko go otwiera i zamyka. 1974 1975 [3] NIE PRZENOÅ wÄzÅa z numerem miÄdzy miejscami (np. nagÅówek â modal). 1976 Psuje miejsce źródÅowe i nie naprawia docelowego. 1977 1978 [4] NIE DODAWAJ globalnych âguardów" przechwytujÄ cych klik w numer 1979 (preventDefault + symulowany .click() + pÄtla restartów) â blokujÄ natywny klik Ringostata. 1980 1981 [5] NIE WPISUJ rÄcznie tekstu âpokaż numer" w markup. 1982 MaskÄ rysuje Ringostat. Nasz markup ma zawieraÄ ZWYKÅY numer statyczny +48 833 070 023, 1983 inaczej Ringostat nie ma czego dopasowaÄ i element nie zostanie objÄty podmianÄ w ogóle. 1984 1985 -------------------------------------------------------------------------------------------- 1986 GDZIE SÄ NUMERY â 4 miejsca, wszystkie wg tej samej zasady: statycznie w HTML, numer statyczny 1987 -------------------------------------------------------------------------------------------- 1988 .bn-phone__num â nagÅówek 1989 .bn-footer__phone â stopka 1990 .bn-ct__qcard â kafelek âTelefon" na /contact (moduÅ 324 â render serwerowy) 1991 .bn-consult-phone â popup âPorozmawiaj" na karcie produktu 1992 1993 -------------------------------------------------------------------------------------------- 1994 DIAGNOSTYKA gdy któreÅ miejsce pokazuje numer OD RAZU (bez maski) 1995 -------------------------------------------------------------------------------------------- 1996 W konsoli przeglÄ darki: 1997 ['.bn-phone__num','.bn-footer__phone','.bn-ct__qcard','.bn-consult-phone'] 1998 .forEach(s=>{var e=document.querySelector(s); 1999 console.log(s, e?e.getAttribute('rngst-id'):'BRAK', e?e.textContent.trim().slice(0,22):'');}); 2000 2001 ⢠rngst-id ma wartoÅÄ â tryb 1 dziaÅa, maska i klik po stronie Ringostata. 2002 ⢠rngst-id = null â element NIE jest objÄty XPath-ami w panelu Ringostata dla tej domeny. 2003 To konfiguracja w panelu Ringostat â NIE do naprawienia z tego kodu. 2004 UWAGA: podglÄ d sklepu (sklep689102.shoparena.pl) i produkcja (botanic.com.pl) mogÄ mieÄ RÃÅ»NE 2005 pokrycie XPath. Zmierzone: na podglÄ dzie nagÅówek bywa bez rngst-id (tryb 2 â numer od razu), 2006 a stopka z rngst-id="1" (tryb 1 â maska). Testuj Åwiadomie, na której domenie patrzysz. 2007 ============================================================================================ --> 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024<!-- Popup âPorozmawiaj" â STATYCZNIE w HTML (nie budowany JS-em), bo tylko wtedy
2024numer trafia 2025 do pierwszego skanu Ringostata i dostaje maskÄ âpokaż numer" + dziaÅajÄ cy klik, dokÅadnie jak 2026 nagÅówek i stopka. WczeÅniej popup powstawaÅ dynamicznie i trzeba byÅo woÅaÄ 2027 ringostatRestartSubstitution() â a ten restart KASUJE podstawienie zaawansowane na caÅej 2028 stronie (zdejmuje rngst-id, przywraca href, gubi maskÄ i klik). Overlay jest ukryty przez CSS 2029 (opacity:0;visibility:hidden), wiÄc obecnoÅÄ na każdej podstronie niczego nie psuje. --> 2030<div class="bn-consult-overlay"> 2031 <div class="bn-consult-modal"> 2032 <button class="bn-consult-close" type="button" aria-label="Zamknij">×</button> 2033 <div class="bn-consult-ico"><svg viewBox="0 0 24 24" fill="currentColor"><path d="M6.6 10.8c1.4 2.8 3.8 5.2 6.6 6.6l2.2-2.2c.3-.3.7-.4 1-.2 1.1.4 2.3.6 3.6.6.6 0 1 .4 1 1V20c0 .6-.4 1-1 1C10.6 21 3 13.4 3 4c0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.3.2 2.5.6 3.6.1.4 0 .8-.3 1l-2.2 2.2z"/></svg></div> 2034 <h3>Porozmawiaj z doradcÄ </h3> 2035 <p class="bn-consult-lead">Masz pytania o wybór szklarni, montaż lub dostawÄ? ZadzwoÅ do naszego dziaÅu handlowego â pomożemy dobraÄ model idealny dla Ciebie.</p> 2036 <a class="bn-consult-phone" href="tel:+48833070023"><svg viewBox="0 0 24 24" fill="currentColor"><path d="M6.6 10.8c1.4 2.8 3.8 5.2 6.6 6.6l2.2-2.2c.3-.3.7-.4 1-.2 1.1.4 2.3.6 3.6.6.6 0 1 .4 1 1V20c0 .6-.4 1-1 1C10.6 21 3 13.4 3 4c0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.3.2 2.5.6 3.6.1.4 0 .8-.3 1l-2.2 2.2z"/></svg><span>+48 833 070 023</span></a> 2037 <p class="bn-consult-hours"><strong>Pon.âPt. 8:00â17:00</strong></p> 2038 </div> 2039</div> 2040 2041 2042<!-- Ringostat: call-tracking + podmiana numeru (instalacja globalna) -->
2043<script type="text/javascript"> 2044 /* Early render (578): the loader starts with the platform JS after the first screen is shown; without the bootstrap it starts at once. */ 2045 (window.__bnEarlyDefer||function(f){f();})(function(){(function (d,s,u,e,p) { 2046 p=d.getElementsByTagName(s)[0],e=d.createElement(s), 2047 e.async=1,e.src=u,p.parentNode.insertBefore(e,p); 2048 })(document,'script','https://script.ringostat.com/v4/9e/9e356d287a9a9cf2b946ea34321899aa911a4e62.js');}); 2049 var pw=function(){ 2050 if(typeof(ringostatAnalytics)==='undefined'){setTimeout(pw,100);} 2051 else{ringostatAnalytics.sendHit('pageview');} 2052 }; 2053 pw(); 2054</script>
2054 2055 2056 2057</div><div 2058 class="module_type-integration" 2059 data-integration-module-name="000652b2-bce7-21f1-9c02-15feb3f55517" 2060 data-integration-module-id="613"> 1 2061 2062 2063 2064 2065</div><div 2066 class="module_type-integration" 2067 data-integration-module-name="000652b2-bce7-21f1-9502-d59c003bbf34" 2068 data-integration-module-id="615">
2068<script>window._edrone=window._edrone||{};if(!window._edrone.app_id){window._edrone.app_id='off-in-skin';window._edrone.init=function(){};}</script>
vendor: 1 bytes, line 2068
2068
2069<script> 2070(function () { 2071 'use strict'; 2072 if (window.__bnGcScriptsOff) return; 2073 window.__bnGcScriptsOff = 1; 2074 function offIds(root) { 2075 var ids = []; 2076 if (!root.querySelector('.gc__siema-slider-container, [data-gc-src], img.gc__siema-image-deferred')) ids.push('172'); 2077 if (!(window.matchMedia && window.matchMedia('(min-width: 1024px) and (hover: hover)').matches)) ids.push('181'); 2078 if (!root.querySelector('product-list, filters-aggregator, [data-gc-listing-toolbar], .side-menu-categories')) ids.push('433'); 2079 return ids; 2080 } 2081 // Off for this page: take data-src away (only if the script is not loaded yet). On: give it back. 2082 function apply(script, ids) { 2083 var off = ids.indexOf(script.getAttribute('data-script-module-id')) > -1; 2084 if (off && script.hasAttribute('data-src') && !script.getAttribute('src')) { 2085 script.setAttribute('data-bn-src-off', script.getAttribute('data-src')); 2086 script.removeAttribute('data-src'); 2087 } else if (!off && script.hasAttribute('data-bn-src-off')) { 2088 script.setAttribute('data-src', script.getAttribute('data-bn-src-off')); 2089 script.removeAttribute('data-bn-src-off'); 2090 } 2091 } 2092 function applyAll(root, ids) { 2093 var list = root.querySelectorAll('script[data-script-module-id]'); 2094 for (var i = 0; i < list.length; i++) apply(list[i], ids); 2095 } 2096 // First load: the script tags come after this module in the HTML, so catch them as the parser adds them. 2097 var ids = offIds(document); 2098 var mo = new MutationObserver(function (records) { 2099 for (var r = 0; r < records.length; r++) { 2100 var added = records[r].addedNodes; 2101 for (var n = 0; n < added.length; n++) { 2102 var node = added[n]; 2103 if (node.nodeType === 1 && node.tagName === 'SCRIPT' && node.hasAttribute('data-script-module-id')) apply(node, ids); 2104 } 2105 } 2106 }); 2107 mo.observe(document.documentElement, { childList: true, subtree: true }); 2108 document.addEventListener('DOMContentLoaded', function () { applyAll(document, ids); mo.disconnect(); }, { once: true }); 2109 // SPA (Turbo): the module scripts live in div#scripts[data-turbo-permanent], so the tags of the previous page 2110 // stay. Decide by the incoming page and fix the tags that will stay, before the platform loads scripts. 2111 document.addEventListener('turbo:before-render', function (event) { 2112 var body = event.detail && event.detail.newBody; 2113 if (!body) return; 2114 var next = offIds(body); 2115 applyAll(document, next); 2116 applyAll(body, next); 2117 }); 2118})(); 2119</script>
vendor: 1 bytes, line 2119
2119
2120<script> 2121(function () { 2122 'use strict'; 2123 if (window.__bnLazyFrames) return; 2124 window.__bnLazyFrames = 1; 2125 var io = 'IntersectionObserver' in window ? new IntersectionObserver(function (entries) { 2126 for (var i = 0; i < entries.length; i++) if (entries[i].isIntersecting) load(entries[i].target); 2127 }, { rootMargin: '1200px 0px' }) : null; 2128 function load(frame) { 2129 var src = frame.getAttribute('data-bn-lazy-src'); 2130 if (!src) return; 2131 if (io) io.unobserve(frame); 2132 frame.removeAttribute('data-bn-lazy-src'); 2133 frame.setAttribute('src', src); 2134 } 2135 function scan() { 2136 var list = document.querySelectorAll('iframe[data-bn-lazy-src]'); 2137 for (var i = 0; i < list.length; i++) { if (io) io.observe(list[i]); else load(list[i]); } 2138 } 2139 if (document.readyState === 'loading') document.addEventListener('DOMContentLoaded', scan); else scan(); 2140 document.addEventListener('turbo:load', scan); 2141})(); 2142</script>
vendor: 1 bytes, line 2142
2142
2143<script> 2144(function () { 2145 'use strict'; 2146 var KEY = '__bnScriptDeferralController'; 2147 if (window[KEY]) return; 2148 // Order confirmation (/basket/done/â¦): <basket-done> emits `purchased` as soon as it renders, and the 2149 // platform never replays a purchase to analytics clients that subscribe later. Holding GTM/gtag here 2150 // until the first gesture dropped the purchase (GA4, Ads, Bing) for every buyer who had not moved yet. 2151 // knowledge_base/gtm-dubli-zdarzen-2026-09-25.md 2152 if (/\/basket\/done(\/|$)/.test(location.pathname)) return; 2153 var NP = Node.prototype, EP = Element.prototype; 2154 var original = { insertBefore: NP.insertBefore, appendChild: NP.appendChild, append: EP.append, prepend: EP.prepend }; 2155 var wrappers = {}; 2156 var held = []; 2157 var entries = new WeakMap(); 2158 var released = false; 2159 var armed = false; 2160 var gestures = ['pointerdown', 'keydown', 'touchstart', 'wheel', 'scroll', 'mousemove']; 2161 var holdIds = { recaptcha: true, 'shopLayer-script': true, 'dataLayer-script': true, 'gtag-jssdk-dataLayer': true }; 2162 2163 function shouldHold(node) { 2164 if (released || !node || node.nodeType !== 1 || node.tagName !== 'SCRIPT') return false; 2165 if (Object.prototype.hasOwnProperty.call(holdIds, node.id)) return true; 2166 var src = node.getAttribute('src'); 2167 if (!src) return false; 2168 try { 2169 var url = new URL(src, document.baseURI); 2170 return /^(www\.)?googletagmanager\.com$/i.test(url.hostname) && /^(\/gtm\.js|\/gtag\/js)$/.test(url.pathname); 2171 } catch (_) { return false; } 2172 } 2173 2174 function markerFor(node) { 2175 var entry = entries.get(node); 2176 if (!entry) { 2177 entry = { node: node, marker: document.createComment('deferred script') }; 2178 entries.set(node, entry); 2179 held.push(entry); 2180 } 2181 return entry.marker; 2182 } 2183 2184 function restore() { 2185 // A later integration may wrap our methods. Never overwrite its wrapper; 2186 // the released wrappers below become transparent delegates in that case. 2187 if (NP.insertBefore === wrappers.insertBefore) NP.insertBefore = original.insertBefore; 2188 if (NP.appendChild === wrappers.appendChild) NP.appendChild = original.appendChild; 2189 if (EP.append === wrappers.append) EP.append = original.append;
2190 if (EP.prepend === wrappers.prepend) EP.prepend = original.prepend; 2191 } 2192 2193 var scheduled = false; 2194 function onGesture() { 2195 // Odlozone skrypty wypuszczamy PO namalowaniu klatki tego gestu. Wstawienie 2196 //
2196<script> to parsowanie i wykonanie GTM/gtag, a dopoki ono trwa, przegladarka 2197 // nie pokaze reakcji na dotkniecie - dokladnie to mierzy INP. Moment startu 2198 // skryptow bez zmian: nadal pierwszy gest, tylko kilkadziesiat ms pozniej. 2199 // focusin/submit zostaja natychmiastowe: formularz moze od razu potrzebowac reCAPTCHY. 2200 if (released || scheduled) return; 2201 scheduled = true; 2202 disarm(); 2203 var run = function () { release('gesture'); }; // release jest idempotentny 2204 // requestAnimationFrame nie przychodzi w ukrytej karcie, a odchodzacy 2205 // odwiedzajacy ma trafic do analityki - stad zapasowy timer i visibilitychange. 2206 setTimeout(run, 300); 2207 document.addEventListener('visibilitychange', function () { if (document.hidden) run(); }, { once: true }); 2208 if (typeof requestAnimationFrame === 'function') { 2209 requestAnimationFrame(function () { requestAnimationFrame(function () { 2210 if (typeof requestIdleCallback === 'function') requestIdleCallback(run, { timeout: 150 }); else run(); 2211 }); }); 2212 } else run(); 2213 } 2214 function onFocus(event) { 2215 if (event.target && event.target.closest && event.target.closest('form')) release('form-focus'); 2216 } 2217 function onSubmit() { release('submit'); } 2218 function arm() { 2219 if (armed || released) return; 2220 armed = true; 2221 gestures.forEach(function (name) { window.addEventListener(name, onGesture, { capture: true, passive: true }); }); 2222 window.addEventListener('focusin', onFocus, true); 2223 document.addEventListener('submit', onSubmit, true); 2224 } 2225 function disarm() { 2226 gestures.forEach(function (name) { window.removeEventListener(name, onGesture, true); }); 2227 window.removeEventListener('focusin', onFocus, true); 2228 document.removeEventListener('submit', onSubmit, true); 2229 armed = false; 2230 } 2231 2232 function release(reason) { 2233 if (released) return; 2234 released = true; 2235 disarm(); 2236 restore(); 2237 var inserted = 0, discarded = 0; 2238 held.forEach(function (entry) { 2239 var marker = entry.marker; 2240 // A removed page/placeholder means its pending script was cancelled. 2241 if (!marker.isConnected || !marker.parentNode) { discarded++; return; } 2242 try { 2243 original.insertBefore.call(marker.parentNode, entry.node, marker); 2244 marker.remove(); 2245 inserted++; 2246 } catch (error) { 2247 console.error('[Botanic script deferral] Cannot release deferred script', error); 2248 } 2249 }); 2250 window.__bnDeferred = { releasedAt: Date.now(), reason: reason, count: inserted, discarded: discarded }; 2251 window.__bnRecaptcha = window.__bnDeferred; 2252 held = []; 2253 entries = new WeakMap(); 2254 } 2255 2256 wrappers.insertBefore = function (node, reference) { 2257 if (!shouldHold(node) || node.isConnected) return original.insertBefore.call(this, node, reference); 2258 // Native insertion validates parent/reference before the gesture is armed. 2259 original.insertBefore.call(this, markerFor(node), reference); 2260 arm(); 2261 return node; 2262 }; 2263 wrappers.appendChild = function (node) { 2264 if (!shouldHold(node) || node.isConnected) return original.appendChild.call(this, node); 2265 original.appendChild.call(this, markerFor(node)); 2266 arm(); 2267 return node; 2268 }; 2269 function variadic(method, parent, nodes) { 2270 var deferred = false; 2271 var values = Array.prototype.map.call(nodes, function (node) { 2272 if (!shouldHold(node) || node.isConnected) return node; 2273 deferred = true; 2274 return markerFor(node); 2275 }); 2276 var result = original[method].apply(parent, values); 2277 if (deferred) arm(); 2278 return result; 2279 } 2280 wrappers.append = function () { return variadic('append', this, arguments); }; 2281 wrappers.prepend = function () { return variadic('prepend', this, arguments); }; 2282 2283 window[KEY] = { release: release }; 2284 try { 2285 NP.insertBefore = wrappers.insertBefore; 2286 NP.appendChild = wrappers.appendChild; 2287 if (original.append) EP.append = wrappers.append;
2288 if (original.prepend) EP.prepend = wrappers.prepend; 2289 } catch (error) { 2290 release('installation-failed'); 2291 console.error('[Botanic script deferral] Installation failed', error); 2292 } 2293})(); 2294</script>
2294 2295</div><div 2296 class="module_type-integration" 2297 data-integration-module-name="000652b2-bce7-21f1-b802-b1a9f4ec1178" 2298 data-integration-module-id="623">
2298<script> 2299(function () { 2300 'use strict'; 2301 if (window.__bnMetaPixel) return; /* Turbo пеÑе-иÑполнÑÐµÑ ÑкÑипÑÑ body */ 2302 2303 var CFG = { 2304 pageViewWindowMs: 30000, /* повÑÐ¾Ñ PageView по ÑÐ¾Ð¼Ñ Ð¶Ðµ path в окне â дÑоп; 0 = вÑкл */ 2305 viewContentWindowMs: 30000, /* повÑÐ¾Ñ ViewContent (path + content_ids) â дÑоп; 0 = вÑкл */ 2306 addToCartWindowMs: 1200, /* заÑиÑа Ð¾Ñ Ð´Ð²Ð¾Ð¹Ð½Ð¾Ð³Ð¾ клика/двойного emit; 0 = вÑкл */ 2307 listMode: 'rename', /* ViewContent за пÑоÑмоÑÑ Ð¡ÐÐСÐÐ ÑоваÑов (VIEW_ITEM_LIST): 2308 'rename' â пеÑеименоваÑÑ Ð² каÑÑомное ViewCategory (док. Meta: 2309 ViewContent = каÑÑоÑка ÑоваÑа; ÑпиÑки â ViewCategory 2310 ÑеÑез trackCustom, 5â10 id), 2311 'drop' â погаÑиÑÑ ÑовÑем, 2312 'keep' â оÑÑавиÑÑ ÐºÐ°Ðº еÑÑÑ (поведение плаÑÑоÑмÑ) */ 2313 listIdsCap: 10, /* Meta ÑекомендÑÐµÑ 5â10 content_ids в ViewCategory */ 2314 disableAutoConfig: false, /* true = гаÑÐ¸Ñ Ð°Ð²Ñо-ÑобÑÑÐ¸Ñ Ð¿Ð¸ÐºÑÐµÐ»Ñ (SubscribedButtonClick), 2315 но заодно и Automatic Advanced Matching â по ÑмолÑÐ°Ð½Ð¸Ñ Ð²Ñкл, 2316 пÑавилÑнее вÑклÑÑиÑÑ Ð² Events Manager */ 2317 productPathRe: /\/p\//, /* пÑизнак ÑÑÑаниÑÑ ÑоваÑа: /pl/p/Nazwa/113 */ 2318 logLimit: 300 2319 }; 2320 2321 var st = { 2322 cfg: CFG, 2323 t0: Math.round(performance.now()), /* когда вÑÑал Ñ Ñк */ 2324 fbqAtInstall: typeof window.fbq, /* 'undefined' = ÑÑпели ÑанÑÑе плаÑÑоÑÐ¼Ñ */ 2325 kept: 0, dropped: 0, log: [], last: {} 2326 }; 2327 window.__bnMetaPixel = st; 2328 2329 st.summary = function () { 2330 var o = {}; 2331 for (var i = 0; i < st.log.length; i++) { 2332 var r = st.log[i], k = r.event + ' ' + r.action + (r.reason ? ':' + r.reason : ''); 2333 o[k] = (o[k] || 0) + 1; 2334 } 2335 return o; 2336 }; 2337 2338 function note(action, name, reason) { 2339 if (st.log.length < CFG.logLimit) { 2340 st.log.push({ 2341 t: Math.round(performance.now()), 2342 path: location.pathname, 2343 event: name, action: action, reason: reason || '' 2344 }); 2345 } 2346 if (action === 'drop') { st.dropped++; } else { st.kept++; } 2347 } 2348 2349 /* fbq('track'|'trackCustom', name, data) | fbq('trackSingle'|'trackSingleCustom', pixel, name, data) */ 2350 function parse(args) { 2351 var m = args[0]; 2352 if (m === 'track' || m === 'trackCustom') return { name: args[1], data: args[2] }; 2353 if (m === 'trackSingle' || m === 'trackSingleCustom') return { name: args[2], data: args[3] }; 2354 return null; 2355 } 2356 2357 function idList(data) { 2358 var c = data && data.content_ids; 2359 if (!c) return []; 2360 return (Object.prototype.toString.call(c) === '[object Array]') ? c : [c]; 2361 } 2362 2363 function isList(data) { 2364 var ids = idList(data); 2365 return ids.length !== 1 || !CFG.productPathRe.test(location.pathname); 2366 } 2367 2368 /* {act:'pass'} | {act:'drop', why} | {act:'rename', to:'ViewCategory'} */ 2369 function decide(name, data) { 2370 var now = Date.now(), key, win, renameTo = null; 2371 2372 if (name === 'PageView') { 2373 key = 'PV|' + location.pathname; 2374 win = CFG.pageViewWindowMs; 2375 2376 } else if (name === 'ViewContent') { 2377 var ids = idList(data); 2378 if (isList(data)) { 2379 if (CFG.listMode === 'drop') return { act: 'drop', why: 'list' }; 2380 if (CFG.listMode === 'rename') renameTo = 'ViewCategory'; 2381 } 2382 key = (renameTo || 'VC') + '|' + location.pathname + '|' + ids.slice().sort().join(','); 2383 win = CFG.viewContentWindowMs; 2384 2385 } else if (name === 'AddToCart') { 2386 key = 'ATC|' + idList(data).slice().sort().join(',') + '|' + (data && data.value); 2387 win = CFG.addToCartWindowMs; 2388 2389 } else { 2390 return { act: 'pass' }; /* Purchase, InitiateCheckout, Search⦠â как еÑÑÑ */ 2391 } 2392 2393 if (win) { 2394 var prev = st.last[key]; 2395 if (prev && (now - prev) < win) return { act: 'drop', why: 'repeat' }; 2396 st.last[key] = now; /* меÑÐºÑ Ð´Ð²Ð¸Ð³Ð°ÐµÐ¼ ТÐÐЬÐРкогда пÑопÑÑÑили */ 2397 } 2398 return renameTo ? { act: 'rename', to: renameTo } : { act: 'pass' }; 2399 } 2400 2401 /* trackSingle -> trackSingleCustom, track -> trackCustom, Ñ Ð½Ð¾Ð²Ñм именем */ 2402 function rebuild(args, to) { 2403 var a = Array.prototype.slice.call(args), nameIdx, data; 2404 if (a[0] === 'track') { a[0] = 'trackCustom'; nameIdx = 1; } 2405 else if (a[0] === 'trackSingle') { a[0] = 'trackSingleCustom'; nameIdx = 2; } 2406 else return a; 2407 a[nameIdx] = to; 2408 data = a[nameIdx + 1]; 2409 if (data && data.content_ids && data.content_ids.length > CFG.listIdsCap) { 2410 var copy = {}, k; 2411 for (k in data) { if (Object.prototype.hasOwnProperty.call(data, k)) copy[k] = data[k]; } 2412 copy.content_ids = data.content_ids.slice(0, CFG.listIdsCap); 2413 a[nameIdx + 1] = copy; 2414 } 2415 return a; 2416 } 2417 2418 var autoCfgDone = {}; 2419 2420 function wrap(fn) { 2421 if (typeof Proxy !== 'function') return fn; 2422 try { 2423 return new Proxy(fn, { 2424 apply: function (target, thisArg, args) { 2425 try { 2426 var p = parse(args); 2427 if (p && p.name) { 2428 var d = decide(p.name, p.data); 2429 if (d.act === 'drop') { note('drop', p.name, d.why); return undefined; } 2430 if (d.act === 'rename') { 2431 note('rename', p.name, '-> ' + d.to); 2432 return target.apply(thisArg, rebuild(args, d.to)); 2433 } 2434 note('keep', p.name); 2435 } 2436 } catch (e) { /* Ñомнение â в полÑÐ·Ñ ÑобÑÑÐ¸Ñ */ } 2437 2438 var res = target.apply(thisArg, args); 2439 2440 if (CFG.disableAutoConfig && args[0] === 'init' && args[1] && !autoCfgDone[args[1]]) { 2441 autoCfgDone[args[1]] = 1; 2442 try { target.apply(thisArg, ['set', 'autoConfig', false, args[1]]); } catch (e) {} 2443 } 2444 return res; 2445 } 2446 }); 2447 } catch (e) { return fn; } 2448 } 2449 2450 var slot = {}; 2451 ['fbq', '_fbq'].forEach(function (prop) { 2452 var current = window[prop]; 2453 try { 2454 Object.defineProperty(window, prop, { 2455 configurable: true, 2456 enumerable: true, 2457 get: function () { return slot[prop]; }, 2458 set: function (v) { slot[prop] = (typeof v === 'function') ? wrap(v) : v; } 2459 }); 2460 } catch (e) { return; } 2461 if (current !== undefined) { window[prop] = current; } 2462 }); 2463})(); 2464</script>
2464</div><div 2465 class="module_type-integration" 2466 data-integration-module-name="000652b2-bce7-21f1-9602-1b7fbec78728" 2467 data-integration-module-id="630"><!-- BN-FOOTER-FALLBACK-2026-08-19: tylko dla stron bez osobnego moduÅu Footer --> 2468<template id="bn-footer-fallback-template"><footer class="bn-footer"> 2469 <div class="bn-fwrap"> 2470 <div class="bn-footer__main"> 2471 <div class="bn-footer__col bn-footer__brand"> 2472 <a class="bn-footer__logo" href="/" aria-label="Botanic"><img src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+PCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIj48c3ZnIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHZpZXdCb3g9IjAgMCA2MjIxIDEzNTIiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgeG1sbnM6c2VyaWY9Imh0dHA6Ly93d3cuc2VyaWYuY29tLyIgc3R5bGU9ImZpbGwtcnVsZTpldmVub2RkO2NsaXAtcnVsZTpldmVub2RkO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoyOyI+PHJlY3QgaWQ9IlBhZ2UtMiIg
2472c2VyaWY6aWQ9IlBhZ2UgMiIgeD0iMCIgeT0iMCIgd2lkdGg9IjYyMjEiIGhlaWdodD0iMTM1MS4zMzMiIHN0eWxlPSJmaWxsOm5vbmU7Ii8+PGNsaXBQYXRoIGlkPSJfY2xpcDEiPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSI2MjIxIiBoZWlnaHQ9IjEzNTEuMzMzIi8+PC9jbGlwUGF0aD48ZyBjbGlwLXBhdGg9InVybCgjX2NsaXAxKSI+PGcgaWQ9IkxheWVyLTEiIHNlcmlmOmlkPSJMYXllciAxIj48L2c+PGc+PHBhdGggZD0iTTcwNS45NSw4NzIuMjg5YzAsLTE2Mi4wNjkgLTExMS42NTQsLTI3MS45MjIgLTI0MS4zMjEsLTI3MS45MjJjLTEzMy4yNjksMCAtMjQzLjEyMiwxMDguMDUyIC0yNDMuMTIyLDI3MS45MjJjMCwxNjIuMDg3IDEwOS44NTMsMjcxLjk0MSAyNDMuMTIyLDI3MS45NDFjMTI5LjY2NiwwIDI0MS4zMjEsLTEwOS44NTMgMjQxLjMyMSwtMjcxLjk0MW0tNDg4LjA0NSw0NTcuNDI1bC0yMTcuOTA1LDBsMCwtMTI3OC42MTRsMjMyLjMxNSwtMGwwLDQ3My42MTdjNTAuNDMzLC03Ny40MzIgMTYyLjA2OSwtMTM1LjA1MiAyODAuOTQ2LC0xMzUuMDUyYzIzNC4wOTgsMCA0MjYuODA1LDE5Ni4yOTEgNDI2LjgwNSw0ODAuODIyYzAsMjg0LjU0OSAtMTkyLjcwNyw0ODAuODQgLTQzMC40MjYsNDgwLjg0Yy0xMjIuNDYxLDAgLTI0MS4zMDIsLTYxLjI0IC0yOTEuNzM1LC0xNDUuODc3bDAsMTI0LjI2M1oiIHN0eWxlPSJmaWxsOiNmMGY3ZWQ7ZmlsbC1ydWxlOm5vbnplcm87Ii8+PHBhdGggZD0iTTI3NjAuNTk4LDEzMTUuMzA2Yy0zNy44MDYsMjEuNjE0IC05NS40NDQsMzYuMDIzIC0xNzEuMDc1LDM2LjAyM2MtMTg5LjA4NywwIC0zMDYuMTQ1LC0xMTEuNjU0IC0zMDYuMTQ1LC0zMDkuNzQ3bDAsLTQ0My4wMzRsLTEyOS42NjYsMGwwLC0xODcuMjg1bDEzNi44NzEsMGwwLC0yMDguOWwyMjYuOTExLC01OS40MmwwLDI2OC4zMmwyMjEuNTA4LDBsMCwxODcuMjg1bC0yMjEuNTA4LDBsMCw0MTAuNjEzYzAsOTMuNjQzIDQ4LjYzMiwxMzMuMjY5IDEzNS4wNywxMzMuMjY5YzI1LjE5OCwwIDcwLjIyOCwtNy4yMDUgMTA4LjAzNCwtMjguODE5bDAsMjAxLjY5NVoiIHN0eWxlPSJmaWxsOiNmMGY3ZWQ7ZmlsbC1ydWxlOm5vbnplcm87Ii8+PHBhdGggZD0iTTM0NDMuMDc1LDk1Ni45MzFsMCwtMzQuMjA0bC0xODUuNDg0LDIzLjM5N2MtMTAwLjg0NywxMi42MDggLTE1OC40ODUsNTQuMDE3IC0xNTguNDg1LDEyMC42NmMwLDYzLjAyMyA1Mi4yMzQsMTAyLjY0OSAxMjcuODY1LDEwMi42NDljMTE4Ljg1OSwwIDIxNi4xMDQsLTk3LjI0NSAyMTYuMTA0LC0yMTIuNTAybS0xNzYuNDc4LC01NjcuMjc4YzIzNC4xMTYsMCA0MDMuMzksMTI3Ljg2NSA0MDMuMzksMzYwLjE4bDAsNTc5Ljg4NmwtMjE3LjkwNSwwbDAsLTEyNy44NjVjLTU3LjYzOCw5My42NDMgLTE1Ni42NjYsMTQ5LjQ3OSAtMjc3LjMyNiwxNDkuNDc5Yy0xNzIuODk0LDAgLTI5OC45NTgsLTEwOS44NTMgLTI5O
2472C45NTgsLTI2MS4xMzRjMCwtMTYwLjI4NiAxMTguODc3LC0yNTIuMTI4IDMzMy4xNjIsLTI4NC41MzFsMjMyLjMxNSwtMzQuMjIybDAsLTI1LjIxNmMwLC05NS40NDQgLTc1LjYzMSwtMTUxLjI4IC0xOTIuNjg5LC0xNTEuMjhjLTEyMi40NjEsMCAtMjM0LjExNiw1Mi4yMzQgLTMwMi41NDIsMTAyLjY2N2wwLC0yMTkuNzI1Yzc3LjQzMiwtNTAuNDE1IDE5Ni4yOTEsLTg4LjIzOSAzMjAuNTU0LC04OC4yMzkiIHN0eWxlPSJmaWxsOiNmMGY3ZWQ7ZmlsbC1ydWxlOm5vbnplcm87Ii8+PHBhdGggZD0iTTQ0MzUuMjg2LDM4OS42NmMyMTIuNTIsMCAzNTYuNTc3LDE0Mi4yNzQgMzU2LjU3NywzODEuNzc2bDAsNTU4LjI3MmwtMjM0LjExNiwwbDAsLTUyOS40NTRjMCwtMTMzLjI1IC03OS4yMzMsLTIwMS42OTUgLTE4My42ODMsLTIwMS42OTVjLTE1NC44ODMsMCAtMjEyLjUwMiwxMzguNjcyIC0yMTIuNTAyLDI1Ny41MzFsMCw0NzMuNjE3bC0yMzQuMTE2LDBsMCwtOTE4LjQ1MmwyMjUuMTEsMGwwLDEyNC4yODFjNTIuMjE2LC04OC4yNTcgMTQ0LjA3NiwtMTQ1Ljg3NyAyODIuNzI5LC0xNDUuODc3IiBzdHlsZT0iZmlsbDojZjBmN2VkO2ZpbGwtcnVsZTpub256ZXJvOyIvPjxwYXRoIGQ9Ik01MDQ3LjUzMiw0MTEuMjZsMjM0LjExNiwwbDAsOTE4LjQ1MmwtMjM0LjExNiwwbDAsLTkxOC40NTJabTI1Mi4xMDksLTI2Ni41MTljMCw3NS42MzEgLTU5LjQyLDEzMy4yNjkgLTEzMy4yNSwxMzMuMjY5Yy03NS42MzEsMCAtMTM2Ljg3MSwtNTcuNjM4IC0xMzYuODcxLC0xMzMuMjY5YzAsLTc1LjYzMSA2MS4yNCwtMTMzLjI2OSAxMzYuODcxLC0xMzMuMjY5YzczLjgzLDAgMTMzLjI1LDU3LjYzOCAxMzMuMjUsMTMzLjI2OSIgc3R5bGU9ImZpbGw6I2YwZjdlZDtmaWxsLXJ1bGU6bm9uemVybzsiLz48cGF0aCBkPSJNNjIxNi4yMzksNjY2Ljk5N2MtNjEuMjIyLC00My4yMjggLTE0OS40NzksLTY2LjY0MyAtMjIxLjUwOCwtNjYuNjQzYy0xNjMuODg4LDAgLTI3NS41MjUsMTExLjY1NCAtMjc1LjUyNSwyNzEuOTQxYzAsMTQ5LjQ3OSAxMDQuNDUsMjY4LjMzOCAyNzUuNTI1LDI2OC4zMzhjNzkuMjUyLDAgMTYzLjg3LC0yMS42MTQgMjIzLjMwOSwtNjguNDQ1bDAsMjIxLjUwOGMtNjYuNjI1LDQxLjQyNyAtMTY3LjQ3Myw1Ny42MzggLTI1Mi4xMjgsNTcuNjM4Yy0yNzkuMTQ1LDAgLTQ4NC40NDIsLTIwNy4xMTcgLTQ4NC40NDIsLTQ3OS4wMzljMCwtMjczLjc0MiAyMDEuNzEzLC00ODIuNjQxIDQ4Ni4yNDQsLTQ4Mi42NDFjODQuNjM3LDAgMTgwLjA4MSwxOS44MTMgMjQ4LjUyNSw1Ny42MzhsMCwyMTkuNzA3WiIgc3R5bGU9ImZpbGw6I2YwZjdlZDtmaWxsLXJ1bGU6bm9uemVybzsiLz48cGF0aCBkPSJNMTU2My4wODEsMTEzNy4wMTljLTE0NS44NzcsMCAtMjUwLjMyNywtMTE1LjI1NyAtMjUwLjMyNywtMjY2LjUxOWMwLC0xNTEuMjggMTA0LjQ1LC0yNjYuNTM3IDI1MC4zMjcsLTI2Ni41MzdjMTQ0LjA1NywwIDI0OC41MjUsMTE1LjI1NyAyNDguNTI1LDI2Ni41MzdjMCwxNTEuMjYyIC0xMDQuNDY4LDI2Ni41MTkgLTI0OC41MjUsMjY2LjUxOW05My43ODgsLTczOS4xMzVsNTguODM4LDBjMTg2Ljk3NiwwIDMzOC41NjYsLTE1MS41OSAzMzguNTY2LC0zMzguNTY2bC0xNDYuNzg2LDBjLTE4NC4yNDcsMCAtMzMzLjgxNywxNDcuMjc4IC0zMzguMTQ3LDMzMC40ODhjLTIuMDkyLC0wLjAxOCAtNC4xNDgsLTAuMTQ2IC02LjI1OSwtMC4xNDZjLTIuNzExLDAgLTUuMzY3LDAuMTQ2IC04LjA2LDAuMTgyYy00LjMxMiwtMTgzLjIyOCAtMTUzLjg4MiwtMzMwLjUyNCAtMzM4LjE2NSwtMzMwLjUyNGwtMTQ2Ljc2OCwwYzAsMTg2Ljk3NiAxNTEuNTksMzM4LjU2NiAzMzguNTY2LDMzOC41NjZsNjAuMDc1LDBjLTIzMi41MzMsNDAuODgxIC0zOTEuODkxLDIzMi4wMDYgLTM5MS44OTEsNDcyLjYxN2MwLDI3MS45MjIgMjAzLjQ5Niw0ODAuODIyIDQ4Ni4yNDQsNDgwLjgyMmMyODAuOTI4LDAgNDg0LjQyNCwtMjA4LjkgNDg0LjQyNCwtNDgwLjgyMmMwLC0yNDAuNjExIC0xNTkuMzQsLTQzMS43MzUgLTM5MC42MzYsLTQ3Mi42MTciIHN0eWxlPSJmaWxsOiNiY2ZkYWM7ZmlsbC1ydWxlOm5vbnplcm87Ii8+PC9nPjwvZz48L3N2Zz4=" alt="Botanic"></a> 2473 <p class="bn-footer__about">Producent szklarni ogrodowych z poliwÄglanu, wiat samochodowych i zadaszeÅ basenowych.</p> 2474 <div class="bn-footer__contact"> 2475 <a class="bn-footer__phone" href="tel:+48833070023"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"/></svg>+48 833 070 023</a> 2476 <div class="bn-footer__hours">Pon.âPt. 8:00â17:00</div> 2477 </div> 2478 </div> 2479 <div class="bn-footer__col"> 2480 <h3 class="bn-footer__title">Kategorie</h3> 2481 <ul class="bn-footer__list"> 2482 <li><a href="/szklarnie">Szklarnie z poliwÄglanu</a></li> 2483 <li><a href="/wiaty-samochodowe">Wiaty samochodowe</a></li> 2484 <li><a href="/grzadki-i-klomby">GrzÄ dki i klomby</a></li> 2485 <li><a href="/pl/c/Zadaszenia-basenowe/50">Zadaszenia basenowe</a></li> 2486 </ul> 2487 </div> 2488 <div class="bn-footer__col"> 2489 <h3 class="bn-footer__title">Informacje</h3> 2490 <ul class="bn-footer__list"> 2491 <li><a href="/o-nas">O nas</a></li> 2492 <li><a href="/pl/i/Jak-wybrac-szklarnie.-Poradnik/33">Jak wybraÄ szklarniÄ. Poradnik</a></li> 2493 <li><a href="/pl/i/Malowanie-konstrukcji/23">Malowanie konstrukcji</a></li> 2494 <li><a href="/pl/i/Tasmy-i-profile/37">TaÅmy i profile</a></li> 2495 <li><a href="/formy-platnosci">Formy pÅatnoÅci</a></li> 2496 <li><a href="/pl/blog">Blog</a></li> 2497 <li><a href="/realizacje">Realizacje</a></li> 2498 <li><a href="/montaz-szklarni">Montaż szklarni</a></li> 2499 <li><a href="/pl/i/Nasi-Partnerzy/36">Nasi Partnerzy</a></li> 2500 <li><a href="/mapa-strony">Mapa strony</a></li> 2501 <li><a href="/contact">Kontakt</a></li> 2502 </ul> 2503 </div>
2504 <div class="bn-footer__col"> 2505 <h3 class="bn-footer__title">Pomoc</h3> 2506 <ul class="bn-footer__list"> 2507 <li><a href="/pl/i/Zwroty-i-reklamacje/7">Zwroty i reklamacje</a></li> 2508 <li><a href="/pl/i/Program-afiliacyjny-Botanic/21">Program afiliacyjny Botanic</a></li> 2509 <li><a href="/faq">FAQ</a></li> 2510 <li><a href="/regulamin">Regulamin sklepu</a></li> 2511 <li><a href="/polityka-prywatnosci">Polityka prywatnoÅci</a></li> 2512 <li><a href="/jak-kupic-na-raty">Jak kupiÄ na raty?</a></li> 2513 <li><a href="/pl/i/Zostan-Partnerem-B2B/35">ZostaÅ Partnerem B2B</a></li> 2514 </ul> 2515 </div> 2516 </div> 2517 <div class="bn-footer__bottom"> 2518 <p>© 2026 Botanic. Wszystkie prawa zastrzeżone.</p> 2519 </div> 2520 </div> 2521 <button class="bn-totop" type="button" aria-label="PrzewiÅ do góry"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"><polyline points="18 15 12 9 6 15"/></svg></button> 2522</footer></template>
2523<script> 2524(function(){ 2525 function mountFallback(){ 2526 if(document.querySelector(".bn-footer"))return; 2527 var t=document.getElementById("bn-footer-fallback-template"); 2528 if(!t)return; 2529 var frag=t.content.cloneNode(true); 2530 var nativeFooter=document.getElementById("main-footer"); 2531 if(nativeFooter&&nativeFooter.parentNode)nativeFooter.parentNode.insertBefore(frag,nativeFooter); 2532 else document.body.appendChild(frag); 2533 } 2534 if(document.readyState==="loading")document.addEventListener("DOMContentLoaded",mountFallback);else mountFallback(); 2535})(); 2536</script>
2536</div><div 2537 class="module_type-integration" 2538 data-integration-module-name="000652b2-bce7-21f1-bd02-137e7f90380f" 2539 data-integration-module-id="631">
2540<script> 2541/* Listing kategorii: przenieÅ opis kategorii POD listÄ produktów (niektóre kategorie, np. âSzklarnie ogrodowe" /wszystkie-szklarnie, majÄ wielki blok opisu NAD produktami â klient chce produkty od razu, opis niżej). Kolumna produktów: [nagÅówek(tytuÅ+licznik), opis, lista]. Przenosimy bloki miÄdzy nagÅówkiem a listÄ pod listÄ. */ 2542(function(){ 2543 function run(){ 2544 var view=document.querySelector('.gc__category__view'); 2545 if(!view)return false;if(view.__bnDescMoved)return true; 2546 var list=view.querySelector('product-list'); 2547 if(!list)return false; 2548 /* kolumna produktów = bezpoÅrednie dziecko wiersza view, które zawiera product-list; 2549 listRow = bezpoÅrednie dziecko tej kolumny zawierajÄ ce product-list */ 2550 var row=view.children[0]||view; 2551 var prodCol=null; 2552 [].forEach.call(row.children,function(c){if(c.querySelector&&c.querySelector('product-list'))prodCol=c;}); 2553 if(!prodCol)return false; 2554 var listRow=null; 2555 [].forEach.call(prodCol.children,function(c){if(c===list||(c.querySelector&&c.querySelector('product-list')))listRow=c;}); 2556 if(!listRow)return false; 2557 var kids=[].slice.call(prodCol.children); 2558 var li=kids.indexOf(listRow); 2559 if(li<1){view.__bnDescMoved=1;return true;} 2560 var anchor=listRow.nextSibling, moved=0; 2561 for(var i=1;i<li;i++){ /* i=0 to nagÅówek (tytuÅ+licznik) â zostaje na górze */ 2562 var el=kids[i]; 2563 if(el.querySelector&&(el.querySelector('product-list')||el.querySelector('.tile-grid')))continue; 2564 if((el.textContent||'').trim().length<80)continue; 2565 prodCol.insertBefore(el,anchor); 2566 moved++; 2567 } 2568 view.__bnDescMoved=1;return true; 2569 } 2570 /* Bez listingu nie ma na co czekac: na stronie glownej, karcie produktu i 2571 stronach informacyjnych 40 prob co 300 ms chodzilo na pusto. */ 2572 var t=0;function boot(){var done=function(){document.documentElement.classList.add('bn-cat-ready');}; 2573 if(run()){done();return;} 2574 if(!document.querySelector('.gc__category__view,.gc__main__category__column,product-list')){done();return;} 2575 if(t++<40){setTimeout(boot,300);return;} 2576 done();} 2577 window.__bnCatDescBoot=boot; 2578 boot(); 2579})(); 2580</script>
2580 2581
2582<script> 2583/* Listing: ujednoliÄ przyciski kart â WSZYSTKIE âZobacz produkt" (link do produktu), po lewej; ukryj natywne przyciski w tym âDo koszyka"/quick-add (decyzja klienta 2026-07: âdodaj do koszyka ma nie istnieÄ â też ma byÄ zobacz produkt"). */ 2584(function(){ 2585 function urlOf(t){ 2586 var a=t.querySelector('.product-tile__image a[href]')||t.querySelector('.product-tile__name a[href]')||t.querySelector('a.product-tile__name[href]')||t.querySelector('a[href*="/p/"]')||t.querySelector('a[href]:not([href="#"]):not([href=""])'); 2587 return a?a.getAttribute('href'):null; 2588 } 2589 function run(){ 2590 var tiles=document.querySelectorAll('.tile-grid .product-tile'); 2591 [].forEach.call(tiles,function(t){ 2592 if(t.__bnCta)return; 2593 var footer=t.querySelector('.product-tile__footer'); 2594 var href=urlOf(t); 2595 if(!footer||!href)return; 2596 [].forEach.call(footer.querySelectorAll('.btn_primary,button,a.btn,a[class*="button"]'),function(b){b.style.setProperty('display','none','important');}); 2597 if(!footer.querySelector('.bn-tile-cta')){ 2598 var a=document.createElement('a'); 2599 a.className='bn-tile-cta';a.setAttribute('href',href);a.textContent='Zobacz produkt'; 2600 footer.appendChild(a); 2601 } 2602 t.__bnCta=1; 2603 }); 2604 } 2605 var mo; 2606 function boot(){ 2607 run(); 2608 if(!mo){ 2609 /* Bez siatki kafelkow nie ma czego obserwowac - obserwator na <body> chodzil 2610 na pusto przez 15 s na kazdej stronie bez listingu. Gdy kafelki pojawia sie 2611 pozniej (SPA), wspolna magistrala zawola boot() ponownie. */ 2612 var g=document.querySelector('.gc__category__view')||document.querySelector('.tile-grid'); 2613 if(!g)return; 2614 mo=new MutationObserver(function(){run();}); 2615 mo.observe(g,{childList:true,subtree:true}); 2616 setTimeout(function(){if(mo){mo.disconnect();mo=null;}},15000); 2617 } 2618 } 2619 window.__bnCatCtaBoot=boot; 2620})(); 2621</script>
2621 2622
2623<script> 2624/* ===== SPA-obwódka: oryginalne inline-skrypty przebiegaÅy przy każdej SPA-nawigacji; 2625 moduÅ wykonuje siÄ raz â adaptacje restartuje wspólny obserwator document (debounce 150 ms). ===== */ 2626(function(){ 2627 var t=null; 2628 function call(f){try{f&&f();}catch(e){}} 2629 function bootAll(){ 2630 call(window.__bnCatDescBoot); 2631 call(window.__bnCatCtaBoot); 2632 } 2633 if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',bootAll);else bootAll(); 2634 setTimeout(bootAll,1500); 2635/* Jedna wspolna magistrala obserwatora DOM zamiast osobnego MutationObservera 2636 w kazdym module. Dwie kolejki: natychmiastowa (przenoszenie blokow â musi 2637 zdazyc w tej samej klatce, inaczej po nawigacji SPA mignie natywna stopka) 2638 i odlozona o 150 ms (synchronizacja licznikow â tak bylo i wczesniej). */ 2639 window.__bnDomWatch=window.__bnDomWatch||(function(){var now=[],later=[],t=null,mo=null;function flush(){t=null;for(var i=0;i<later.length;i++){try{later[i]();}catch(e){}}}function tick(){for(var i=0;i<now.length;i++){try{now[i]();}catch(e){}}if(later.length){if(t)clearTimeout(t);t=setTimeout(flush,150);}}return function(fn,defer){(defer?later:now).push(fn);if(!mo){mo=new MutationObserver(tick);mo.observe(document,{childList:true,subtree:true});}};})(); 2640 /* Skrypt modulu integracyjnego wykonuje sie ponownie przy kazdej nawigacji 2641 SPA (Turbo podstawia nowe <body> razem z nim), wiec subskrybujemy raz. 2642 bootAll siega po window.__bnCatDescBoot/__bnCatCtaBoot, ktore kazde 2643 wykonanie nadpisuje swiezymi, wiec zachowanie zostaje to samo. */ 2644 if(!window.__bnTilesBound){window.__bnTilesBound=1;window.__bnDomWatch(bootAll,true);} 2645})(); 2646</script>
2646</div><div 2647 class="module_type-integration" 2648 data-integration-module-name="000652b2-bce7-21f1-9202-7ddddc447704" 2649 data-integration-module-id="643"></div><div 2650 class="module_type-integration" 2651 data-integration-module-name="0007ada2-a3c4-21f1-ba02-eb91070d7cc6" 2652 data-integration-module-id="433"> 2653<div 2654 class="gc-category-enhancements" 2655 data-gc-category-enhancements 2656 data-desktop-sidebar="1" 2657 data-desktop-categories="1" 2658 data-quick-filters-desktop="0" 2659 data-quick-filters-mobile="1" 2660 data-price-slider="1" 2661 data-collapse-groups="1" 2662 data-open-price="1" 2663 data-filter-search="1" 2664 data-desktop-scale="1" 2665 data-mobile-view="1" 2666 hidden 2667 aria-hidden="true" 2668></div> 2669</div> 2670 2671 2672<div id="scripts" data-turbo-permanent> 2673 <link id="app-translations" href="//botanic.com.pl/userdata/public/skins/7f68b08a74977525acdb9dc1b97fc796_copy_27/cache/MzM6MTc6NS4yNi41Ng.pl_PL.json" type="text/script" crossorigin/> 2674 2675
2675<script type="module" src="//botanic.com.pl/application/assets/storefront/storefrontApp.CsApItsi.min.js"></script>
2675 2676
2676<script type="module" src="//botanic.com.pl/application/assets/storefront/phoenixComponentsLazyLoader.BefGyk50.min.js"></script>
2676 2677
2677<script type="module" data-src="/userdata/public/storefront/js/110_de32438e7aae7b5449a40005b77206762cbc6cab.js" data-script-module-id="110"></script>
2677 2678
2678<script type="module" data-src="/userdata/public/storefront/js/111_f0f1a013787c945a45e0ecfacf99636a585458ae.js" data-script-module-id="111"></script>
2678 2679
2679<script type="module" data-src="/userdata/public/storefront/js/138_659f19e1fdfa6b5f8555fdba8ef2463711d87b40.js" data-script-module-id="138"></script>
2679 2680
2680<script type="module" data-src="/userdata/public/storefront/js/140_9f966b868feff1ca0e2df559ea80685b1feecdc4.js" data-script-module-id="140"></script>
2680 2681
2681<script type="module" data-src="/userdata/public/storefront/js/142_06bd4d5d641b6cf3d40a7b06b9996a3299636276.js" data-script-module-id="142"></script>
2681 2682
2682<script type="module" data-src="/userdata/public/storefront/js/145_a993d258baaecb8bec21f6f735597253fd3f787f.js" data-script-module-id="145"></script>
2682 2683
2683<script type="module" data-src="/userdata/public/storefront/js/147_ceaa0b49157afe9dbd204918ec52e546e69ae206.js" data-script-module-id="147"></script>
2683 2684
2684<script type="module" data-src="/userdata/public/storefront/js/148_f5efd1b7c03b37d77da7e0bbbf21d20b7edca07a.js" data-script-module-id="148"></script>
2684 2685
2685<script type="module" data-src="/userdata/public/storefront/js/149_f33fe3e7b7ea6922dee5bd4d5bc41f0e7d6b858b.js" data-script-module-id="149"></script>
2685 2686
2686<script type="module" data-src="/userdata/public/storefront/js/153_6ed97f65ac00618a93368e98a6303fbba7bc23cf.js" data-script-module-id="153"></script>
2686 2687
2687<script type="module" data-src="/userdata/public/storefront/js/159_6656c35a41d4994dea8d8d9ee50aab1e6aaf9f49.js" data-script-module-id="159"></script>
2687 2688
2688<script type="module" data-src="/userdata/public/storefront/js/162_7d8a7c7247c6898b93582f0d3f452731fbc490c4.js" data-script-module-id="162"></script>
2688 2689
2689<script type="module" data-src="/userdata/public/storefront/js/165_93a52c4d3a681be5181efd4706799649c7fc0cca.js" data-script-module-id="165"></script>
2689 2690
2690<script type="module" data-src="/userdata/public/storefront/js/166_75c8eb5cd4938a8195ca520ec7caee6d85cd3f9c.js" data-script-module-id="166"></script>
2690 2691
2691<script type="module" data-src="/userdata/public/storefront/js/167_f93d5e42591fc42767694888e9d1ce36cab24811.js" data-script-module-id="167"></script>
2691 2692
2692<script type="module" data-src="/userdata/public/storefront/js/169_bf0268affa8a7036f495f45abaff4926dfeef6d1.js" data-script-module-id="169"></script>
2692 2693
2693<script type="module" data-src="/userdata/public/storefront/js/170_adadcf6676a57074c86f7630724d7f57262d9463.js" data-script-module-id="170"></script>
2693 2694
2694<script type="module" data-src="/userdata/public/storefront/js/172_d578172038e4c7c087a3b0e62c51c1fd6189b302.js" data-script-module-id="172"></script>
2694 2695
2695<script type="module" data-src="/userdata/public/storefront/js/173_438429fb3f926ea5b23f220b75e7a5e185c313a6.js" data-script-module-id="173"></script>
2695 2696
2696<script type="module" data-src="/userdata/public/storefront/js/174_8c4ea70871eabb43952f905becc42556dabb632a.js" data-script-module-id="174"></script>
2696 2697
2697<script type="module" data-src="/userdata/public/storefront/js/175_3060b5c80a693625b93e64698dad52debdb5ab68.js" data-script-module-id="175"></script>
2697 2698
2698<script type="module" data-src="/userdata/public/storefront/js/177_8cba5d441e19383c8a61a4f3e1477408d268bafd.js" data-script-module-id="177"></script>
2698 2699
2699<script type="module" data-src="/userdata/public/storefront/js/178_58ae91ccdf4d600d2cfa972505cbf4ce599fcc6b.js" data-script-module-id="178"></script>
2699 2700
2700<script type="module" data-src="/userdata/public/storefront/js/179_bd1426d4fb008588c8bfd1b4b394457e0ac843a9.js" data-script-module-id="179"></script>
2700 2701
2701<script type="module" data-src="/userdata/public/storefront/js/181_a12fcbba06a8038ad0b7dc28854468e86ff4176b.js" data-script-module-id="181"></script>
2701 2702
2702<script type="module" data-src="/userdata/public/storefront/js/184_15b67d540cba1421e1db2e8d484a6d1f388bb756.js" data-script-module-id="184"></script>
2702 2703
2703<script type="module" data-src="/userdata/public/storefront/js/433_e9c5bc8e15a4f9417a02445a223ced6087ab310e.js" data-script-module-id="433"></script>
2703 2704
2704<script type="module" data-src="/userdata/public/storefront/js/609_a0816bafbbed9eba2fcf11d56cbc0ad1def672c0.js" data-script-module-id="609"></script>
2704 2705
2705<script type="module" data-src="/userdata/public/storefront/js/610_82642d3f8216227932a0ae3dc8822fc88f863bdf.js" data-script-module-id="610"></script>
2705 2706
2706<script type="module" data-src="/userdata/public/storefront/js/611_666c5f8c648f92596402cbe7761256928e51d66c.js" data-script-module-id="611"></script>
2706 2707
2707<script type="module" data-src="/userdata/public/storefront/js/612_9ebd9cb2b59288a4630821f6d5c83679e00760c0.js" data-script-module-id="612"></script>
2707 2708
2708<script type="module" data-src="/userdata/public/storefront/js/613_ae05bb2da894a3b3de446b2b92b3523db9f17ad0.js" data-script-module-id="613"></script>
2708 2709
2709<script type="module" data-src="/userdata/public/storefront/js/620_1eb063986af385efce69b101c484213bd0cf4cb3.js" data-script-module-id="620"></script>
2709 2710
2710<script type="module" data-src="/userdata/public/storefront/js/625_5ced1a50a6aad4b26c3d79a88c66452f1ad62fee.js" data-script-module-id="625"></script>
2710 2711
2711<script type="module" data-src="/userdata/public/storefront/js/626_597c26153bd73bb55f9dfdc233523bf57415cc2b.js" data-script-module-id="626"></script>
2711 2712
2712<script type="module" data-src="/userdata/public/storefront/js/638_d320b9cd62cc265857655342bc3a82ba055d952a.js" data-script-module-id="638"></script>
2712 2713 </div> 2714</body> 2715</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.