/* Reset */
html{line-height:1.15;-webkit-text-size-adjust:100%}
body,html,.h1,h1,h2,h3,h4,h5,h6,figure,video,ul,ol,li,menu{margin:0;padding:0;}
[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}
[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}
[type=button]:-moz-focusring,[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}
input::placeholder,textarea::placeholder,input::-webkit-input-placeholder,textarea::-webkit-input-placeholder,input:-ms-input-placeholder,textarea:-ms-input-placeholder,input::-ms-input-placeholder,textarea::-ms-input-placeholder{color:rgba(255,255,255,0.65);}
*{font-weight:normal;text-rendering:optimizeLegibility;text-rendering:optimizeLegibility;outline:none !important;box-sizing:border-box;-webkit-box-sizing:border-box;}
a{text-decoration:none;}
a,input[type="submit"],.btn{transition:0.2s;}
input,textarea,select,button,a{padding:0;color:inherit;font:inherit;letter-spacing:inherit;background:transparent;border-radius:0;-webkit-border-radius:0;}
form input:not([type="select"]):not([type="file"]),form textarea{border: 2px solid #FF40B1;padding: 12px 16px;}
input[type="submit"]{cursor:pointer;}
img,.btn{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;}
figure img,figure video,figure iframe{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:1;}
figure{position:relative;}
figure:after{content:'';pointer-events:none;position:absolute;z-index:0;top:0;left:0;width:100%;height:100%;}
img{border-style:none;vertical-align:top;max-width:100%;height:auto;pointer-events:none;}
a img{pointer-events:all;}
::-webkit-media-controls{display:none !important;}
video{pointer-events:none;}
svg,video{vertical-align:top;}
p:empty{display:none;}
p:first-child{margin-top:0;}
p:last-child{margin-bottom:0;}
::selection{background:rgba(222,222,222,0.3);}
::-moz-selection{background:rgba(222,222,222,0.3);}
.center{text-align:center;margin:0 auto;}
.center-flex{justify-content:center;}
.slide video,.slide img{object-fit:cover;height: 100%;width: 100%;}
.flex{display:flex;}
.flex.center{align-items:center;}
.space-between{justify-content:space-between;}
.align-start{align-items: flex-start !important;}
.flex-col{flex-direction:column;}
.mobile{display:none;}


/* smooth animation */
.btn-pink img { transition: filter .2s ease; }
.btn-pink:hover img {filter: hue-rotate(6deg) saturate(105%) contrast(100%);}


.sr-only {
  position: absolute !important;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap; border: 0;
}
.sr-only-focusable:active,
.sr-only-focusable:focus {
  position: static !important;
  width: auto; height: auto;
  margin: 0; overflow: visible;
  clip: auto; white-space: normal;
}


/* Colors */
.bg-pink{background-color:#FF40B1;}

.bg-orange { background-color: #FF6633; }
.bg-blue   { background-color: #2997C7; }
.bg-green  { background-color: #44D62C; }
.bg-sea    { background-color: #00BDA5; }
.bg-purple { background-color: #4E7ED2; }
.bg-pink   { background-color: #F5B8D5; }

.is-active.orange-border img{border-color:#FF6633 !important;}
.is-active.green-border img{border-color:#44D62C !important;}
.is-active.green-pink img{border-color:#F5B8D5 !important;}


.white{color:white;}
.pink{color:#FF40B1;}

.btn-transparent{position:relative;display: inline-block;}
.btn-transparent span{position:absolute;left:50%;transform:translate(-50%,0);z-index:2;display:flex;top: 3px;left: 50%;width: 96%;margin-left: -1px;height: 72%;background: #FE3FB0;justify-content: center;align-items: center;border-radius: 48px;font-weight: 700;font-size: 24px;color: #fff;transition: 0.2s;opacity:0;}
.btn-transparent:hover span{opacity:1;}

/* Animations */
.animate{transition:all 0.75s cubic-bezier(.2,.9,.45,1);-webkit-transition:all 0.75s cubic-bezier(.2,.9,.45,1);transform:translate3d(0,40px,0);-webkit-transform:translate3d(0,40px,0);opacity:0;}
.animated{transform:translate3d(0,0,0);-webkit-transform:translate3d(0,0,0);opacity:1 !important;}


/* Global */
html{
  font-synthesis: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

:root{
  --font-sans: "din-2014-narrow", Arial, sans-serif;
  --font-cond: "din-condensed", "DIN Condensed", Impact, "Helvetica Neue", sans-serif;
  --font-roboto: "roboto", Arial, sans-serif;
  --font-quicksand: "quicksand", Arial, sans-serif;
}

#main{position:relative;z-index:2;}

body{overflow-x:hidden;}
section{position:relative;}
.section-bg{position:absolute;left:0;top:0;z-index:-1;width: 100%;height: 100%;object-fit: cover;}
.p-absolute{position:absolute;}
.p-sticky{position:sticky;top:0;}
.box{box-shadow: 0px 12px 26px 0px #00000033;border-radius:24px;padding: 28px 30px;}
.no-shadow{box-shadow:none !important;}
.bg-pink-badge{background-color: #F365B4;background-image:url(../img/bg-pink-badge.webp);background-repeat:no-repeat;background-position:center top;background-size: cover;}
.bg-white-paper{background-color: #F8F8F8;background:url(../img/bg-white-paper.webp);background-repeat:no-repeat;background-position:center top;background-size: cover;}
.bg-blue-paper{background-color: #2790BE;background:url(../img/bg-blue-paper.webp);background-repeat:no-repeat;background-position:center top;background-size: 104% auto;}
.bg-blue-bubble-paper{background-color: #2892BD;background:url(../img/bg-blue-bubble-paper.webp);background-repeat:no-repeat;background-position:center top;background-size:100% auto;}
.bg-orange-bubbles{background-color: #EC6633;background:url(../img/bg-orange-bubbles.webp);background-repeat:no-repeat;background-position:center top;background-size:100% auto;}
.bakterie{pointer-events:none;}
.bakterie img[class*="rellax"] { will-change: transform; }

sup {line-height: 0;font-size: 60% !important;}


.bg{position:absolute;width:100%;height:100%;z-index:-1;}

.bg-orange-paper{
  background-color:#FF6633;
  background-image:url(../img/bg-orange-paper.webp);
  background-repeat:no-repeat;
  background-position:center top;
  background-size:cover;
}
.bg-blue-paper{
  background-color:#2997C7;
  background-image:url(../img/bg-blue-paper.webp);
  background-repeat:no-repeat;
  background-position:center top;
  background-size: cover;
}
.bg-green-paper{
  background-color:#44D62C;
  background-image:url(../img/bg-green-paper.webp);
  background-repeat:no-repeat;
  background-position:center top;
  background-size:cover;
}
.bg-sea-paper{
  background-color:#00BDA5;
  background-image:url(../img/bg-sea-paper.webp);
  background-repeat:no-repeat;
  background-position:center top;
  background-size:cover;
}
.bg-purple-paper{
  background-color:#4E7ED2;
  background-image:url(../img/bg-purple-paper.webp);
  background-repeat:no-repeat;
  background-position:center top;
  background-size:cover;
}
.bg-pink-paper{
  background-color:#F5B8D5;
  background-image:url(../img/bg-pink-paper.webp);
  background-repeat:no-repeat;
  background-position:center top;
  background-size:cover;
}

.bg-pink-paper .white { color:#444444 !important; }



html{font-size:18px;}
body{font-size:18px;font-family: var(--font-sans);}
.condensed{font-family: var(--font-cond);}
.narrow{font-family: var(--font-sans);}
.roboto{font-family:var(--font-roboto);}
.quicksand{font-family:var(--font-quicksand);}

b,strong{font-weight:600;}

.fw-300{font-weight:300;}
.fw-400{font-weight:400;}
.fw-600{font-weight:600;}
.fw-700{font-weight:700;}

.fs-20{font-size:1.112rem;}
.fs-24{font-size:1.334rem;}
.fs-32{font-size:1.778rem;}
h2{font-size:2.223rem;font-weight:700;}
h1,.h1,.fs-48{font-size:2.67rem;font-weight:700;}
.fs-56{font-size:3.1112rem;}
.fs-64{font-size:3.112rem;}

.lh-1{line-height:1;}
.lh-11{line-height:1.1;}
.lh-12{line-height:1.2;}
.lh-13{line-height:1.3;}
.lh-14{line-height:1.4;}
.lh-15{line-height:1.5;}



/* Header */
header{position: relative;background: white;z-index: 3;box-shadow: 0px 12px 26px 0px #FF43B240;}
header .info-bar{position: relative;z-index: 3;padding:5px 0;background-color: #FF40B1; overflow: hidden;white-space: nowrap;}

header .info-bar span{
  display: inline-block;
  padding-left: 100%;         /* start fully off the right side */
  white-space: nowrap;
  animation: infoBarTicker 20s linear infinite;
}

/* right → left, then jump back to right side and repeat */
@keyframes infoBarTicker {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}


header .container{display:flex;justify-content:space-between;align-items: center;padding-top: 10px;padding-bottom: 2px;}
header li{list-style:none;}
header .btn{z-index: 3;top:3px;position:relative;}
.menu{display:flex;}
.menu > li{margin-right:40px;}
.menu a{font-size:1.111rem;font-weight:600;}
.sub-menu{display:none;position:absolute;}
.menu-left{align-items:center;}
.menu-left .logo{position: relative;top: -2px;z-index: 3;margin-right:60px;}


/* Home */
.home .start{height: 52vw;max-height: 780px;}
.home .start .container,.home .start .row{height:100%;}
.home .start .col{display: flex;align-items:center;}

.start-bg{position:absolute;height:100%;width:100%;top:0;left:0;object-fit: cover;z-index: -1;}
.home .start-text{max-width:550px;}
.home .start-text .formula{margin: 1.25rem 0 0;}
.home .start-text h1,.home .start-text .h1{font-size:3.56rem; /* 64px */font-weight: 400;}
.home .start-text h2{font-size:1.78rem; /* 32px */margin-bottom: 1.5rem;font-weight: 400;}
.home .start-text .btn{margin-top:1.5rem;}
.home .packshot{max-width:566px;margin-left:15%;}


.home .section-formula:before{transform: translate(0,-19vw);}

.text-carousel{padding: 32px 0;overflow:hidden;will-change: scroll-position;}
.text-slide{flex:0 0 auto;display:flex;align-items:center;margin-right: 40px;text-wrap:nowrap;cursor:default;}
.text-slide:after{content:'';height:34px;width:1px;background:#FF40B1;display:inline-flex;margin-left:40px;}


/* Home - reviews */
.home .reviews{padding-bottom: 80px;}
.home .reviews .bacteria:nth-child(1){bottom: -150px;left: -98px;}
.home .reviews .bacteria:nth-child(2){bottom: -400px;right: 20vw;}
.home .reviews .bacteria:nth-child(3){bottom: -300px;right: -80px;}
.home .reviews .container{z-index:2;position:relative;}

/* Home - FAQ */
.home .faq{padding-top: 20px;}

/* Home - products */
.home .products{position: relative;padding: 120px 0;box-shadow: inset 0  -12px 26px -10px #FF43B240;overflow: hidden;}
.home .products:before{
  content:"";
  position:absolute;
  left:0; right:0; top:0; height:22px;   /* adjust height to taste */
  pointer-events:none;
  /* inner top glow */
  box-shadow: inset 0 12px 26px -10px #FF43B240;
  /* if section has rounded top corners, inherit them: */
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
}
.products .container{position:relative;z-index:1;padding-bottom: 160px;padding-top: 0;}
.home .products:after{content:'';position:absolute;bottom:0;left:0;background:50% / 100% no-repeat url(../img/bg-blue-bubble-paper.webp);width:100%;height:40vw;z-index:0;transform: translate(0,16vw);pointer-events:none;opacity: 0;}

.bacteria{position:absolute;pointer-events: none;will-change: transform;transform: translateZ(0);backface-visibility: hidden;}
.bacteria img{max-width:262px;height:auto;filter: drop-shadow(0 30px 15px rgba(255, 67, 178, 0.102));}
.products .bacteria:nth-child(1){top: 3%;left: -50px;}
.products .bacteria:nth-child(2){top: -2%;right: 100px;}
.products .bacteria:nth-child(3){top: 25%;left: 20px;}
.products .bacteria:nth-child(4){top: 26%;right: -50px;}
.products .bacteria:nth-child(5){bottom: 0;left: -50px;}
.products .bacteria:nth-child(6){top: 35%;left: 32%;}
.products .bacteria:nth-child(7){bottom: 40%;right: -100px;}
.products .bacteria:nth-child(8){bottom: 32%;right: 28%;}

.products-grid{align-items:stretch;overflow:visible;}
.product-box{margin: 0 0 50px;flex: 1 0 auto;}
.product-box:not(.products-info) .product-box-inner{box-shadow: 0px 12px 26px 0px #5151511A;padding:24px;border-radius:24px;background: white;display: block;}
.section-title{margin-bottom: 50px;}
.section-title img{position:relative;margin-left:8px;top:7px;}
.product-img{margin-bottom:15px;}
.product-img img{height:232px;width:auto;}
.product-img-link{display:block;}
.product-img-link img{transition:0.3s;}
.product-box-inner:hover .product-img-link img{transform:scale(1.06);}
.product-box-inner:hover .btn-transparent span{opacity:1;}

.product-short{margin:0.4rem 0;min-height: 42px;}
.product-qty{margin:0.75rem 0;}

.product-cta{display: flex;justify-content:center;}

.products-info{position:relative;  --bleed: 120px; flex-basis: calc(33.333% + var(--bleed));max-width:  calc(33.333% + var(--bleed));margin-right: calc(-1 * var(--bleed)); /* kompensacja poszerzenia */}
.products-info .product-box-inner{position: relative;border-radius:24px;height: 100%;}
.products-info img{height:100%;width:auto;object-fit: cover;border-radius: 24px;object-position:80% 50%;}
.products-info .badge{position:absolute;border-radius:24px;padding:5px 16px 8px;max-width:250px;}
.products-info .badge:nth-child(1){top:60px;text-align:right;left:120px;}
.products-info .badge:nth-child(2){top:260px;left:40px;}


/* Sekcja Formula */
.section-formula:before{content:'';position:absolute;top:0;left:0;background:50% / 100% no-repeat url(../img/bg-blue-bubble-paper.webp);width:100%;height:40vw;z-index:0;transform: translate(0,-20vw);pointer-events: none;}
.section-formula:after{content:'';position:absolute;bottom:0;left:0;background:50% / 100% no-repeat url(../img/bg-blue-bubble-paper.webp);width:100%;height:40vw;z-index:0;transform:scale(-1) translate(0,-50%);transform: scale(-1) translate(0,-20vw);pointer-events:none;}
.section-formula{padding:120px 0;z-index: 2;}
.section-formula .container{position:relative;z-index:2;}
.section-formula .box{max-width:640px;}
.ingredients-title{margin-top:60px;max-width:800px;margin-bottom:2rem;}
.icon-text{align-items:center;margin-bottom: 80px;}


/* Reviews */
.reviews{padding-top:calc(20vw - 80px);}
.reviews .container{z-index:2;position:relative;}
.review-bottom-left{align-items:flex-end;visibility: hidden;}
.review-bottom{justify-content:space-between;margin-top:40px;align-items:flex-end;}
.review{margin-bottom:50px;}
.author{margin-left:12px;}



/* FAQ */
.faq{
    padding: 8vw 0 40px;
}

.faq-columns {
    display: flex;
    gap: 20px;
    margin-top: 50px;
}

.faq-col {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.faq-item {
    width: 100%;
    position: relative;
    box-shadow: 0px 12px 26px 0px #0000001A;
    margin-bottom: 20px;
    border-radius: 24px;
    background: white;
}

.faq-question {
    width: 100%;
    padding: 1rem 1.5rem;
    border-radius: 24px;
    box-shadow: 0px 12px 26px 0px #FF43B233;
    cursor: pointer;
}

.faq-question h4 {
    padding-right: 10px;
}

.faq-answer{
    padding: 1rem 1.5rem 1.3rem;
    border-bottom-left-radius: 24px;
    border-bottom-right-radius: 24px;
}

.expandable{
    display:none;
}

.expand-icon{
    transform:scale(-1);
    transition:0.3s;
}

.faq-question.active .expand-icon{
    transform:scale(1);
}


/* Section Contact */
.contact{padding: 0 0 8vw;}
.contact .section-title{margin-bottom:30px;}
.contact .btn-outer{margin-top:30px;}

.contact:after{content:'';position:absolute;bottom:0;left:0;background:50% / 100% no-repeat url(../img/bg-blue-bubble-paper.webp);width:100%;height:40vw;z-index:0;transform: translate(0,20vw);pointer-events: none;}


/* Footer */
footer{position:relative;z-index:2;color:white;padding-top: 120px;padding-bottom: 100px;}
footer .section-bg{top:initial;bottom: 0;height: 200px;}
.footer-top{border-bottom:1px solid white;padding-bottom:30px;margin-bottom: 36px;align-items:center;}
.footer-menu{position:absolute;left:50%;transform:translate(-50%,0);margin-top:7px;}
.footer-menu a{font-weight:600;}
.footer-menu a:not(:last-child){margin-right:30px;}
.socials{gap:10px;}
.footer-bottom .flex{font-size:14px;gap:20px;justify-content:center;}
.footer-bottom a{border-bottom:1px solid;}



/* Single Produkty */

/* Breadcrumbs */
.breadcrumb{font-family:var(--font-roboto);font-size:14px;padding-top:80px;}
.breadcrumb__sep{margin:0 8px;}
.breadcrumb__current{font-weight:600;}

.product-desc-outer{margin-top:40px;}
.product-desc{margin-top:10px;}
.product-desc h1,.product-desc .h1{margin-bottom:10px;line-height: 1.2;}
.product-desc p{margin-top:0;}
.product-desc ul{padding-left:20px;line-height: 1.2;margin: 1.5rem 0;}
.product-desc li{font-weight:600;font-size:1.112rem;margin: 0.75rem 0;}
.block{margin:80px 0;justify-content: stretch;align-items: center;}

.block .col{flex: 1 1 0;}
.block .gallery.row{margin:20px -10px;align-items: stretch;}
.block .gallery.row .col{margin-bottom:0;}
.block .gallery .col{padding-left:10px;padding-right:10px;flex: 1;display: flex;flex-direction: column;}
.block .box.p-absolute{max-width:340px;transform:translate(-30px,-100%);z-index:2;margin-top: 24px;}
.gallery:not(.icons){position: relative;z-index: -1;padding: 0 10px;background: white;margin: -40px 0 !important;}
.gallery:not(.icons) .col{padding: 0;}
.gallery:not(.icons) .g-cap{display: none;}
.block .gallery .white-box{padding: 40px 20px;flex: 1 1 auto; display: flex;flex-direction: column;height: 100%;}
.block-big{position:relative;width:100%;overflow:hidden;border-radius:24px;box-shadow:0 12px 26px 0 #00000040;}
.white-box{background:white;padding: 30px 25px;border-radius:24px;}
.white-box .g-cap{font-weight:400;}
.block-text{font-size:1.112rem;}
.block-text p + ul{margin-top:-1rem;}
.block-text p + ol{margin-top:-1rem;margin-bottom:-1rem;}
.block-text .section-title{margin-bottom:30px;}
.block-text .section-title img{top: -1px;margin-left: 10px;}
.block-text li{margin-left:20px;}
.block-text li,.block-text span,.block-text p{line-height:1.5;}
.block-big>img,.product-main>img,.g-fig>img{position:absolute;inset:0;width:100%;height:100%}
.product-main>img,.block-big>img{object-fit:contain}
.page-product .product-img{max-height: 30vw;height: 480px;padding: 30px 0;}
.page-product .product-img img{height:100%;width:100%;object-fit:contain;}

.thumbs{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top: 20px;}
.thumbs img{max-width: 120px;max-height: 100px;display:block}
.thumb:nth-child(1){margin-right:-10px}

#product-main-img{
  opacity:1;
  transition:opacity .25s ease;
}
#product-main-img.is-hide{
  opacity:0;
}
.thumb{
  opacity:0.8;
}
.thumb:hover,.thumb.is-active{
  opacity:1;
}


.logo-short{display:block;margin: 25px 0 0;}
.variants{display:flex;gap:16px;align-items:center;flex-wrap:wrap;align-items: flex-start;}
.variants .variant{text-align:center;text-decoration:none;max-width: 78px;margin-top: 1rem;}
.variants .variant img{width: auto;max-height: 80px;max-width: 75px;display:block;padding: 6px 0 3px;border-radius: 8px;background: white;border: 1px solid #000000;}
.variants .variant .quantity{display:block;margin-top:6px;font-size: 16px;}
.variants .variant.is-active .quantity{font-weight:600;}
.variant.is-active img{border: 3px solid #F5B8D5;}
.btns{display:flex;gap: 5px;align-items:center;flex-wrap:wrap;margin-top: 28px;}

.text-box{border-radius:9px;padding:7px 20px;line-height:1.5;max-width: 320px;/* margin-top:-40px; */}


.text-box.bg-orange-paper{max-width:230px;}

.product-start{padding-bottom: 10vw;}
.product-start .container{z-index:2;position:relative;}
.bg-bubbles{position:absolute;width: 120vw;height: 50vw;bottom: -24vw;left: 50%;transform: translate(-50%,0);object-fit: cover;z-index:0;}

.product-start .bacteria:nth-child(1){bottom:40%;left: -50px;}
.product-start .bacteria:nth-child(2){top: 5%;right: -40px;}

.section-2{padding-top:120px;z-index: 2;}

.icons{/* max-width:600px; */text-align: center;}
.icons .figure-outer{max-width: 130px;max-height: 130px;margin: 0 auto;width: 100%;}
.g-cap{margin-top:12px;}
.figure-outer img{object-fit:contain;}


.icons-carousel{
  position: relative;
  overflow: hidden;
  padding: 40px 0;
  margin-top: 20px;
}
.icons-carousel .carousel{
  min-height: 210px;
  display: block;
}
.icons-carousel .icon{
  width: 250px;
  display: block;
  margin-right: 20px;
  padding: 30px 16px;
  border-radius: 16px;
  text-align: center;
  box-shadow: 0 12px 26px #0003;
  flex: none;
}
.icons-carousel .icon img{
  display: block;
  width: 74px;
  height: 74px;
  margin: 0 auto 15px;
  object-fit: contain;
}

.text-carousel{
  display: block;
}
.text-carousel-outer{
  box-shadow: 0px 0px 26px 0px #FF43B240;
}
.icons-carousel .flickity-viewport {
  overflow: visible !important;
  padding: 20px 0;
  box-sizing: content-box;
}
.icons-carousel {
  overflow-x: hidden;
  overflow-y: visible;
}
.text-carousel .flickity-viewport {
  overflow: visible !important;
  box-sizing: content-box;
}
.icons-carousel .carousel,
.text-carousel {
  opacity: 0;
  transition: opacity .35s ease;
}
.icons-carousel .carousel.is-ready,
.text-carousel.is-ready {
  opacity: 1;
}

/* keep the viewport open so shadows can render, but no padding */
.text-carousel .flickity-viewport{
  overflow: visible !important;
  padding: 0;
  background: transparent !important;
  box-sizing: border-box;
}

/* add the glow to the sliding layer itself */
.text-carousel .flickity-slider{
  filter: drop-shadow(0 0 26px #FF43B240);
  will-change: transform;
}

/* make sure the root doesn't clip vertically */
.text-carousel{
  overflow-x: hidden;
  overflow-y: visible;
}



.page-product .section-2:after{content:'';position:absolute;bottom: -10vw;left:0;width: 100%;height: 40vw;z-index: -1;transform: translate(0,50%) scale(1,-1);pointer-events:none;}
.page-product .reviews{padding-top:calc(20vw - 20px);padding-bottom: 15vw;}
.page-product .faq .bacteria:nth-child(1){right:20vw;bottom: 0;}

.page-product .reviews .bacteria:nth-child(1){top:10%;left: -50px;}
.page-product .reviews .bacteria:nth-child(2){top: 20%;right: -100px;}
.page-product .reviews .bacteria:nth-child(3){top:45%;left: 20px;}
.page-product .reviews .bacteria:nth-child(4){bottom: 36%;right: -100px;}
.page-product .reviews .bacteria:nth-child(5){top: -2%;right: 100px;}

.page-product .reviews-carousel {position: relative;width: 50%;margin: 0 auto;}

.page-product .reviews-carousel .review {
  width: 100%;
  padding: 0 30px 0;
  box-sizing: border-box;
}

.page-product .reviews-carousel .review-inner{
  min-height:200px;
  justify-content: space-between;
}

.page-product .reviews-carousel .review-bottom{
  margin:0;
}

.page-product .reviews-carousel .author{
  margin:0;
}

.page-product .reviews-carousel .flickity-button {
  background: #fff;
  box-shadow: 0 6px 18px #0000001a;
  width: 40px; height: 40px;
}
.page-product .reviews-carousel .flickity-button:hover { background: #fff; }
.page-product .reviews-carousel .flickity-prev-next-button.previous { left: -10px; }
.page-product .reviews-carousel .flickity-prev-next-button.next     { right: -10px; }



/* Base button style */
.page-product .flickity-prev-next-button {
  width: 65px !important;
  height: 65px !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  transform: translateY(-50%);
  top: calc(50% - 20px);
}

/* Hide built-in SVG */
.flickity-prev-next-button .flickity-button-icon {
  display: none !important;
}

/* Use your custom icons */
.flickity-prev-next-button.previous {
  background-image: url('../img/slider-prev.svg') !important;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.flickity-prev-next-button.next {
  background-image: url('../img/slider-next.svg') !important;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

/* Optional: positioning tweaks per carousel */
.reviews-carousel .flickity-prev-next-button.previous { left: -10px; }
.reviews-carousel .flickity-prev-next-button.next { right: -10px; }

/* Optional: hover/focus states (no tint change) */
.flickity-prev-next-button:hover,
.flickity-prev-next-button:focus {
  background-color: transparent !important;
  opacity: 0.9;
}

.section-product-info{padding: 100px 0;}

.spec-section{border-top:1px solid #FF40B1;padding-top:28px;margin: 40px 0;}

.section-desc{padding-left: 40%;margin-top: -25px;}


.spec-section__title{max-width:240px;align-items:center;cursor: pointer;position: relative;z-index: 2;}
.spec-section__title .expand-icon{height:12px;transform: scale(1);}
.active .expand-icon{transform:scale(-1);}

/* Tabele */
.spec-table-wrap { padding: 16px 0 24px; }

.spec-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  border: 1px solid #1f1f1f;
  border-top-left-radius: 16px;
  border-top-right-radius: 16px;
  overflow: hidden;
  background: #fff;
}

.spec-table thead th {
  color: #fff;
  font-weight: 700;
  padding: 14px 16px;
  border-right: 1px solid rgba(255,255,255,.25);
}
.spec-table thead th:last-child { border-right: 0; }


.spec-table thead th:first-child  { border-top-left-radius: 16px; }
.spec-table thead th:last-child   { border-top-right-radius: 16px; }


.spec-table tbody td {
  padding: 14px 16px;
  border-top: 1px solid #1f1f1f;
  border-right: 1px solid #1f1f1f;
}
.spec-table tbody td:last-child { border-right: 0; }


.spec-table .th-left, .spec-table .td-left   { text-align: left; }
.spec-table .th-center, .spec-table .td-center { text-align: center; }


.spec-note { font-size: 0.9rem; margin-top: 6px; }


.spec-table thead.bg-orange th { background-color: #FF6633; color:#fff; }
.spec-table thead.bg-blue   th { background-color: #2997C7; color:#fff; }
.spec-table thead.bg-green  th { background-color: #44D62C; color:#000; }
.spec-table thead.bg-sea    th { background-color: #00BDA5; color:#fff; }
.spec-table thead.bg-purple th { background-color: #4E7ED2; color:#fff; }
.spec-table thead.bg-pink   th {background-color: #F5B8D5;color: #000;}


/* Produkty */
.products-start{position:relative;overflow:visible;z-index:3;padding-bottom: 70px;}
.products-start:after{content:'';position:absolute;bottom:0;left:0;background:50% / 100% no-repeat url(../img/bg-blue-bubble-paper.webp);width:100%;height: 40vw;z-index:-1;transform: scale(-1,-1) translate(0,-22vw);pointer-events: none;}
.p-produkty .products{padding-top: 12vw;z-index:2;}
.p-produkty .products:after{content:'';position:absolute;width:100%;height:100%;top:0;left:0;background: linear-gradient(160.23deg, transparent 40.27%, #FFCFF0 73.77%);z-index:-1;}
.p-produkty .start-title{padding:40px 0;}
.p-produkty .probiotyki{margin-top:4px;}
.p-produkty .start-title h2{margin-bottom:20px;}
.p-produkty .start-title .condensed{max-width:770px;}
.p-produkty .products-info .badge{text-align:right;max-width: 320px;}
.p-produkty .products-info .badge:nth-child(1){top:40px;left:160px;}
.p-produkty .products-info .badge:nth-child(2){top:250px;left:40px;}
.p-produkty .products-info .badge:nth-child(3){top:300px;left:100px;}
.p-produkty .products-info .badge:nth-child(4){bottom:60px;left:40px;}

/* Produkty - bakterie */
.section-bacteria{z-index:2;padding-top:200px;background-size: cover;}
.section-bacteria:after{content:'';position:absolute;top:0;left:0;width:100%;height: 40vw;z-index:-1;pointer-events:none;background:url(../img/bg-blue-bubble-paper.webp);transform:translate(0,-20vw);background-repeat:no-repeat;background-position:center top;background-size:100% auto;}
.bacteria-index{margin-top:60px;}
.bacteria-box{margin-bottom:40px;min-height:390px;align-items:center;}
.bacteria-box .bacteria-box-inner{height:100%;align-items: center;}
.bacteria-box img{width:160px;height:160px;object-fit:contain;}
.section-bacteria h3{margin-top:30px;max-width:800px;}


/* Contact */
.contact-section{padding: 0 0 200px;}
.contact-section .breadcrumb{margin-bottom:30px;}
.contact-section h1,.contact-section .h1{margin-bottom:20px;}
.contact-form,.contact-form *{color:#222222}
.contact-form textarea{border-radius:24px;width: 100%;}
.contact-form input{border-radius:77px;max-width:100%;width: 100%;}
.contact-els{gap:20px;}
.contact-els .contact-el{width:calc(50% - 10px);}
.contact-el p{margin:10px 0;}
.contact-form input[type="submit"]{background:#FF40B1;color:white;font-weight:700;width:100%;box-shadow: 0px 8px 6px 0px #FF43B233;margin-top: 15px;}
.contact-form input[type="submit"]:hover{background:#FF0197;}
.requested{font-size:12px;}
.wpcf7-list-item label{display:flex;}
.textarea-el{margin: 0 0 30px;display:block;}
.wpcf7-acceptance .wpcf7-list-item-label{font-size:14px;font-family:var(--font-roboto);font-weight: 300 !important;line-height: 1.5;}
.wpcf7-acceptance input{margin-right: 20px;height: 20px;width: 20px;}

.wpcf7-response-output{border:0 !important;padding:0 !important;color: #FF40B1;}
.wpcf7-not-valid-tip{font-size:14px;margin-top:5px;color:#FF40B1;}

.contact-details:before{content:'';position:absolute;top:0;left:0;background: 50% / 100% no-repeat url(../img/kontakt-bubbles-top.webp);width:100%;height: 60vw;z-index:0;transform: translate(0,-33vw);pointer-events:none;}
.contact-details:after{content:'';position:absolute;bottom: 100px;left:0;background: 50% / 100% no-repeat url(../img/kontakt-bubbles-bottom.webp);width:100%;height: 30vw;z-index:0;transform: translate(0,33vw);pointer-events:none;}
.contact-details{padding: 200px 0 100px;z-index: 2;}
.contact-details .container{position:relative;}
.contact-details h3{font-size:24px;font-weight:700;}
.contact-details h4{font-size:22px;font-weight:700;margin-top: 25px;}
.contact-details .icon{margin-bottom:20px;}
.contact-details .icon img{width:48px;height:48px;}
.contact-details .text{line-height:1.3;}


.products-carousel{padding-top: 24vw;padding-bottom: 20vw;}
.products-carousel:after{content:'';position:absolute;bottom:0;left:0;background:50% / 100% no-repeat url(../img/bg-blue-bubble-paper.webp);width:100%;height:40vw;z-index:0;transform: translate(0,20vw);pointer-events: none;}
.products-carousel > *{position:relative;z-index:2;}
.products-carousel:before{content:'';position:absolute;width:100%;height:100%;top:0;left:0;background: linear-gradient(160.23deg, transparent 40.27%, #FFCFF0 73.77%);z-index: 0;}

#products-arrows{position:relative;max-width: 800px;margin-top: 40px;}


/* Page default */
.start-section{min-height:420px;}
.page-content{/* padding-bottom: 20vw; */}
.page-content:after{content:'';position:absolute;bottom: -80px;left:0;background: 50% / cover no-repeat url(../img/bg-blue-bubble-paper.webp);width:100%;height: 41vw;z-index: 0;transform: translate(0,20vw);pointer-events: none;}
.page-main h2{margin-top:2rem;}
.page-title{text-transform:uppercase;margin:30px 0;}
.side-nav{position: sticky;top: 0;width: 490px;background-color: #EC6633;background:url(../img/side-bar.webp);background-repeat:no-repeat;background-position: center;background-size: 120%;padding:60px 40px;}
.side-nav h3{margin-bottom:20px;}
.side-nav ul{list-style:none;}
.side-nav li{border:2px solid transparent;transition: 0.2s;background: transparent;padding:10px;margin-bottom:10px;font-family: var(--font-roboto);}
.side-nav li.active{border-color:white;background:#EC52A7;}
.side-nav span{font-weight:600;}
.page-main{padding: 60px 100px 200px;padding-bottom: 13vw;max-width: 1000px;}
.page-main p{font-weight:400;line-height:1.5;}
.page-cols{align-items: flex-start;}
.side-nav {position: sticky;align-self: flex-start;top: 0;height: calc(100vh + 200px);flex: 0 0 auto;}
.page-main ul{padding-left:15px;margin:1rem 0;line-height:1.5;}

.p-polityka footer{padding-top:200px;}


@media (max-width:1200px){
  html,
  body{
    font-size:16px;
  }
  .home .start-text .formula{
    width: 260px;
    margin-bottom:8px;
  }
  .home .start-text h1,
  .home .start-text .h1{
    font-size:40px;
  }
  .container{
    padding:0 20px;
  }
  .home .product-img img{width:100%;height:auto;max-width: 240px;max-height: 240px;}
  .product-box{-ms-flex-preferred-size:50%;flex-basis:50%;max-width:50%;}
  .products-info{-ms-flex-preferred-size:50%;flex-basis:100%;max-width:500px;margin:0 auto;}

  .home .start{height:66vw;}
  .home .packshot{max-width:360px;}
  .products-info .badge:nth-child(1){top:30px;}
  .products-info .badge:nth-child(2){top:200px;}
  .p-produkty .products-info .badge:nth-child(1){top:20px;right:10px;}
  .p-produkty .products-info .badge:nth-child(4){left:20px;top:160px;bottom:initial;}
  .p-produkty .products-info .badge:nth-child(2){top:200px;}
  .p-produkty .products-info .badge:nth-child(3){top:240px;}
  .side-nav{width:300px;padding: 20px;}
  .block .box.p-absolute{transform:translate(-30px,-80%);}
}

@media (max-width:1000px){
  .reviews{padding-top:120px;}
  .bacteria-box{-ms-flex-preferred-size:50%;flex-basis:50%;max-width:50%;}
  .reviews .row{justify-content:center;}
  .reviews .review{-ms-flex-preferred-size:100%;flex-basis:100%;max-width:100%;max-width:500px;margin-bottom: 20px;}
  .ingredients .icon-text img{max-width:140px;}
  .icons .figure-outer{max-width:100px;max-height:100px;}
  .page-main{padding:20px 50px 120px;}
  .side-nav li{margin-bottom:4px;}
}

@media (max-width:800px){
  .bg-orange-paper,
  .bg-blue-paper,
  .bg-green-paper,
  .bg-sea-paper,
  .bg-purple-paper,
  .bg-pink-paper,
  .bg-white-paper{background-repeat:repeat;background-size:contain;}
  html{overflow-x:hidden;}
  .desktop{
    display:none;
  }
  .home .start{
    height:auto;
    max-height:none;
    padding: 30px 0;
  }
  .home .start .mobile{
    display:block;
  }
  .home .start .bg-blue-paper{
    height: 108vw;
    width: 100%;
    position: absolute;
    top: 0;
    z-index: -2;
  }
  .home .start-bg{
    transform: scale(1,-1);
    height: 60vw;
    width: 120vw;
    top: 106vw;
  }
  .home .start .row{
     flex-direction:column;
     height: auto;
   }
  .home .start .col{
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    max-width: 100%;
  }
  .home .start .col:nth-child(1){
    padding-top:20px;
  }
  .home .start .col:nth-child(2){
    padding-top: 33vw;
  }
  .home .packshot{
    max-width:100%;
    margin:0;
  }
  .home .reviews .row{
    flex-direction: column;
    align-items: center;
  }
  .home .reviews .col{
    -ms-flex-preferred-size:100%;
    flex-basis:100%;
    max-width: 100%;
    width: 400px;
  }
  .bacteria img{max-width:140px;}
  .home .reviews .bacteria:nth-child(1){bottom:50px;left:0px;}
  .home .reviews .bacteria:nth-child(2){bottom:20px;}
  .home .reviews .bacteria:nth-child(3){bottom:80px;}
  footer .section-bg{height:calc(100% - 35px);}
  .fs-64{font-size:36px;}
  .logo-short{max-width:240px;margin-bottom:7px;}
  .product-start .col{-ms-flex-preferred-size:100%;flex-basis:100%;max-width:100%;}
  .page-product .product-img{max-height:none;height: 75vw;max-width: 300px;margin: 0 auto;}
  .section-2{padding-top:60px;}
  .spec-section__title{max-width:170px;}
  .section-desc{padding-left:33%;}
  .page-product .reviews-carousel{width:100%;max-width: 500px;}
  .contact-section .row{flex-direction:column;align-items: center;}
  .contact-section .row .col:nth-child(1){margin-bottom:30px;}
  .contact-section .row .col{max-width:500px;}
  .contact-details{padding: 50px 0 40px;}
  .contact-details .row{flex-direction:column;}
  .contact-details .col{-ms-flex-preferred-size:100%;flex-basis:100%;max-width:100%;margin-bottom:50px;}
  .products-carousel{padding-top: 120px;padding-bottom: 140px;}
  footer .section-bg{height: 85%;}
  .page-cols{flex-direction:column;}
  .side-nav{width:100%;height:auto;position:relative;}
  .page-cols .col{-ms-flex-preferred-size:100%;flex-basis:100%;max-width:100%;}
  .p-polityka footer .section-bg{height:calc(100% - 130px);}
  .contact-details:after{bottom:60px;}
  .product-start .row{/* flex-direction:column-reverse; */}
  .faq{padding:70px 0 40px;}
  .contact{padding:0 0 80px;}
  .single-produkty .block{flex-direction:column;}
  .single-produkty .block > .col{-ms-flex-preferred-size: 100%;flex-basis: 100%;max-width: 500px;margin:0 auto;width: 100%;padding: 0;}
  .single-produkty .block > .col:nth-child(1){margin-bottom:20px;}
  .block .box.p-absolute{position:relative;margin-bottom: -100px;max-width: 300px;}
}

@media (max-width: 600px){
  .mobile{display:block;}
  h2{font-size:28px;}
  #menu{position:fixed;top: 0;left:0;width:100%;height: 100%;z-index: 2;visibility: hidden;pointer-events: none;opacity: 0;transition: 0.5s;}
  .menu{flex-direction:column;justify-content:center;align-items:center;height:100%;}
  .menu-left .logo{margin-right:30px;}
  #menu > div{height:100%;}
  .menu-open #menu{opacity:1;pointer-events:all;visibility:visible;background: rgba(255,255,255,0.97);}
  .menu-trigger span:nth-child(1),.menu-trigger span:nth-child(3){transform-origin:0 0;}
  header .btn img{max-height: 56px;}
  .menu-open .menu-trigger span:nth-child(2){opacity:0;}
  .menu-open .menu-trigger span:nth-child(1){transform: rotate(45deg) translate(0px,-4px);}
  .menu-open .menu-trigger span:nth-child(3){transform: rotate(-45deg) translate(-1px,1px);width:100%;}
  .menu a{font-size:36px;}
  .menu > li{margin:0 0 20px;}
  .fs-24{font-size:20px;}
  .fs-56{font-size:36px;}
  .page-title{margin:20px 0;}
  .start-section{min-height: 260px;}
  .bacteria-box{min-height:auto;}
  .section-bacteria-top{flex-direction:column;}
  .section-bacteria-top .col,
  .product-box{-ms-flex-preferred-size:100%;flex-basis:100%;max-width:100%;}
  .section-bacteria-top .col:nth-child(1){margin-bottom:20px;}
  .products-info .badge:nth-child(1){top:30px;left: initial;right: 10px;}
  .products-info .badge:nth-child(2){top:33vw;left: 10px;}
  h1,.h1,.fs-48{font-size: 40px;}
  .section-title img{max-width:180px;top: 9px;margin-left: 5px;}
  .block-text .section-title img{margin-left: 6px;max-width: 160px;}
  .home .products{padding:60px 0;}
  .product-box:not(.products-info) .product-box-inner{padding:14px;}
  .products .container{padding-bottom:80px;}
  .section-formula{padding:60px 0;}
  .formula{max-width:240px;margin-bottom:7px;}
  .section-formula .row{flex-direction:column;}
  .section-formula .col{-ms-flex-preferred-size:100%;flex-basis: 100%;max-width: 100%;text-align: center;margin-bottom: 30px;}
  .ingredients-title{margin-top:30px;font-size: 22px;}
  .icon-text{margin-bottom:20px;}
  .icon-text img{max-width:160px;}
  .faq-columns{flex-direction:column;}
  .section-bacteria{padding-top:100px;}
  .footer-top{flex-direction:column;}
  .footer-menu{position:relative;transform:none;left:initial;margin: 20px 0;}
  footer{padding:60px 0;}
  .footer-bottom .flex{flex-direction:column;align-items:center;text-align: center;}
  .bacteria-box{-ms-flex-preferred-size:100%;flex-basis:100%;max-width:100%;}
  .breadcrumb{padding-top:50px;font-size: 12px;}
  .breadcrumb__sep{margin:0 4px;}
  .product-desc,.product-desc p,.product-desc li{font-size:18px;}
  .block{margin: 0 0 20px;flex-direction: column;justify-content: flex-start;align-items: flex-start;}
  .block .col{ms-flex-preferred-size:100%;flex-basis: 100%;max-width: 100%;width: 100%;margin-bottom: 30px;}
  .page-product .reviews{padding-top: 120px;}
  .section-desc{padding-left:0;padding-top:40px;}
  .section-product-info{padding: 60px 0 20px;}
  .spec-section__title{max-width:100%;}
  .contact-section{padding-bottom:120px;}
  .page-main{padding:20px;}
  .p-polityka footer{padding-top:140px;}
  .menu-trigger{width: 32px;height: 21px;display:flex;justify-content:space-between;flex-direction:column;cursor:pointer;margin-left: 16px;position: relative;top: -2px;z-index: 101;flex-shrink: 0;}
  .menu-trigger span{width:100%;height:3px;background:black;transition:all 0.3s ease-in-out;}
  .page-product .section-2:after{left:50%;width: 140%;transform: translate(-50%,50%) scale(1,-1);}
  .wpcf7-acceptance input{margin-right:10px;}
  .wpcf7-list-item{margin-left:0;}
  .contact-details:after{bottom:20px;}
  .icons-carousel{padding: 20px 0;}
  .products-start{padding-bottom:40px;}
  .p-produkty .products{padding-top: 80px;}
  .products-info .product-box-inner{height:auto;}
  .products-info img{height:auto;width:100%;}
  .gallery:not(.icons){margin:-20px 0 !important;}
  .block .gallery .white-box{padding:20px 10px;}
  .block .box.p-absolute{margin-bottom:-120px;transform: translate(-20px,-60%);}
  .white-box{padding:20px 16px;}
  .box{padding:20px 22px;}
}

@media (max-width:500px){
  .btns img{max-height:58px;width: auto;}
  .icons-carousel .icon img{width:60px;height:60px;}
}

@media (max-width:414px){
    h1,.h1,.fs-48{font-size: 36px;}
  .section-title img{margin-left:3px;top: 7px;}
  .logo-short{max-width:220px;margin-bottom: 4px;}
  .product-desc{margin-top:6px;}
}