body {
   /* background: radial-gradient(farthest-corner at 50% 0%, #23617d 0%, #112031 100%); */
   background-color: #050801;
   margin: 0;
   padding: 0;
   overflow-x: hidden;
   /* Keep this if needed */
   font-optical-sizing: auto;
   color: #fff;
   font-size: 100%;
   font-family: "Oxygen", serif;
   font-weight: 400;
   position: static;
   /* Ensure body is not relative or absolute */
   overflow: visible;
   /* Ensure overflow is not hidden */
}

.main {
   height: 100%;
   scroll-behavior: smooth;
}
.main::-webkit-scrollbar {
   width: 0px;
   background: transparent !important;
}

.main::-webkit-scrollbar-thumb {
   background-color: transparent !important;
}


a {
   color: white;
   text-decoration: none;
}

.hero {
   padding-top: 5%;
   height: 30vh;
   overflow-x: hidden;
   overflow-y: hidden;
}



/* Fixed menu styles */
#product-row.fixed-menu {
   position: fixed !important;
   width: 50%;
   background: rgba(0, 0, 0, 0.2);
   border-radius: 16px;
   box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
   backdrop-filter: blur(10px);
   -webkit-backdrop-filter: blur(10px);
   border: 1px solid rgba(255, 255, 255, 0.3);
   z-index: 999;
   overflow-x: scroll;
   overflow-y: hidden;
   right: 0;
   height: 150px;

   /* Optional: Add padding */
}


h1 {

   color: white;
   font-size: 3rem;
   font-family: "Oxygen", serif;
   font-optical-sizing: auto;
}

.glass {
   background: rgba(255, 255, 255, 0.2);
   border-radius: 16px;
   box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
   backdrop-filter: blur(10px);
   -webkit-backdrop-filter: blur(10px);
   border: 1px solid rgba(255, 255, 255, 0.3);
   padding: 20px;
}

.glass-dark {
   background: rgba(0, 0, 0, 0.5);
   border-radius: 16px;
   box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
   backdrop-filter: blur(10px);
   -webkit-backdrop-filter: blur(10px);
   border: 1px solid rgba(255, 255, 255, 0.3);
   padding: 20px;
}


section {
   min-height: 100vh;
   display: grid;
   place-items: center;
   padding: 0%;
   margin: 0%;


}
.container-list {
   min-height: 100vh;
}

@media screen and (max-width:1000px) {
   section {
      margin-block: 2vh !important
   }
}

.hero {
   margin-block: -5% !important;
   height: 75vh !important;
}



@media screen and (max-width:800px) {
   .hero {
      margin-inline: 5% !important;
      margin-block: 5% !important;
      height: 70vh;
   }
}



.infinity .card:hover {
   --webkit-box-shadow: 0px 0px 45px 10px rgba(249, 241, 200, 1);
   --moz-box-shadow: 0px 0px 45px 10px rgba(249, 241, 200, 1);
   box-shadow: 0px 0px 45px 10px rgba(249, 241, 200, 1);
}

.dark-title h1 {
   font-weight: 900;
   text-transform: uppercase;
   font-size: 5rem;
   letter-spacing: 1vw;
   text-align: center;
}


@media screen and (max-width:1000px) {
   .dark-title h1 {
      letter-spacing: 0.2vw;
      font-size: 2rem !important;
      padding-block: 10%;
   }
}



footer {
   min-height: 200px;
   background-color: rgba(0, 0, 0, 0.9);
   display: flex;
   align-items: center;
   padding-inline: 10%;
}


/* Container for the light rays */
.light-rays {
   position: fixed;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   pointer-events: none;
   filter: blur(0.6rem);
}

/* Each light ray beam */
.light-rays>li {
   /* Default custom property values */
   --deg: 0;
   --length: 0;
   --thickness: 20px;
   --duration: 2s;
   --delay: 1s;
   --rotate: 0deg;
   --degRange: 72.5deg;
   --spreadRange: 40vw;

   position: absolute;
   transform-style: preserve-3d;
   perspective: 500px;
   width: var(--thickness);
   /* The height is a base (20% + 370px) plus an optional adjustment (--length) */
   height: calc(20% + 370px + var(--length));
   left: 50%;
   /* 
      The transform positions each beam horizontally according to --deg.
      When --deg is 0.5 the beam is centered;
      values lower or higher will shift it left/right and rotate it accordingly.
   */
   transform: translateX(calc(-50% + var(--deg) * var(--spreadRange) * -1 + 0.5 * var(--spreadRange))) translateY(-100px) rotateZ(calc(var(--degRange) * -0.5 + var(--deg) * var(--degRange))) rotateX(0.01deg);
   transform-origin: center -100px;
   mix-blend-mode: screen;
   animation: shimmer linear var(--duration) calc(var(--delay) * -1) infinite alternate forwards,
      rotate ease-in-out calc(var(--duration) * 3.14) calc(var(--delay) * -1) infinite alternate forwards;
}

/* Pseudo-element for the gradient fill of each beam */
.light-rays>li::before {
   content: '';
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   background: linear-gradient(to bottom, rgba(166, 255, 248, 1), rgba(166, 255, 248, 0) 100%);
   transform-origin: top center;
   transform: rotateX(40deg);
}

/* Ustawienia dla 15 snopów – wartości dobrane "randomowo" dla efektu rozproszenia */
.light-rays>li:nth-child(1) {
   --deg: 0.12;
   --thickness: 10px;
   --length: -20px;
   --duration: 1.8s;
   --delay: 2.2s;
   --rotate: -24deg;
}

.light-rays>li:nth-child(2) {
   --deg: 0.35;
   --thickness: 18px;
   --length: 10px;
   --duration: 2s;
   --delay: 2.5s;
   --rotate: 13deg;
}

.light-rays>li:nth-child(3) {
   --deg: 0.68;
   --thickness: 14px;
   --length: -10px;
   --duration: 1.7s;
   --delay: 2.1s;
   --rotate: -37deg;
}

.light-rays>li:nth-child(4) {
   --deg: 0.22;
   --thickness: 16px;
   --length: 5px;
   --duration: 2.2s;
   --delay: 2s;
   --rotate: 5deg;
}

.light-rays>li:nth-child(5) {
   --deg: 0.91;
   --thickness: 12px;
   --length: 0px;
   --duration: 1.9s;
   --delay: 2.3s;
   --rotate: 23deg;
}

.light-rays>li:nth-child(6) {
   --deg: 0.47;
   --thickness: 20px;
   --length: -15px;
   --duration: 2.5s;
   --delay: 2.4s;
   --rotate: -15deg;
}

.light-rays>li:nth-child(7) {
   --deg: 0.15;
   --thickness: 22px;
   --length: 8px;
   --duration: 2.3s;
   --delay: 2.6s;
   --rotate: 30deg;
}

.light-rays>li:nth-child(8) {
   --deg: 0.55;
   --thickness: 18px;
   --length: 12px;
   --duration: 1.8s;
   --delay: 2.8s;
   --rotate: -20deg;
}

.light-rays>li:nth-child(9) {
   --deg: 0.80;
   --thickness: 16px;
   --length: -5px;
   --duration: 2.1s;
   --delay: 2.7s;
   --rotate: 10deg;
}

.light-rays>li:nth-child(10) {
   --deg: 0.30;
   --thickness: 14px;
   --length: 5px;
   --duration: 2s;
   --delay: 2.9s;
   --rotate: -36deg;
}

.light-rays>li:nth-child(11) {
   --deg: 0.65;
   --thickness: 20px;
   --length: 0px;
   --duration: 2.2s;
   --delay: 2.3s;
   --rotate: 29deg;
}

.light-rays>li:nth-child(12) {
   --deg: 0.05;
   --thickness: 12px;
   --length: -10px;
   --duration: 1.7s;
   --delay: 2.1s;
   --rotate: -1deg;
}

.light-rays>li:nth-child(13) {
   --deg: 0.77;
   --thickness: 16px;
   --length: 10px;
   --duration: 2.4s;
   --delay: 2.5s;
   --rotate: 10deg;
}

.light-rays>li:nth-child(14) {
   --deg: 0.42;
   --thickness: 18px;
   --length: -20px;
   --duration: 2.3s;
   --delay: 2.7s;
   --rotate: 83deg;
}

.light-rays>li:nth-child(15) {
   --deg: 0.90;
   --thickness: 20px;
   --length: 5px;
   --duration: 2.5s;
   --delay: 2.8s;
   --rotate: -62deg;
}

/* Animations */
@keyframes shimmer {
   0% {
      opacity: 0.33;
   }

   100% {
      opacity: 0.03;
   }
}

/* The rotate animation uses the experimental individual transform property.
    If not supported in your browser, it may have no effect. */
@keyframes rotate {
   0% {
      transform: rotate(0deg);
   }

   100% {
      transform: rotate(var(--rotate));
   }
}












.card-round {
   width: 150px;
   aspect-ratio: 1 / 1;
   border-radius: 50%;
   overflow: hidden;
   display: flex;
   align-items: center;
   justify-content: center;
   background-color: #fff;
   /* Ciemne tło dla kontrastu */
   transition: box-shadow 0.3s ease-in-out;
   position: relative;
}

.card-round img {
   transform: scale(1.3);
   object-fit: cover;
}

.card-round::before {
   content: "";
   position: absolute;
   top: -5px;
   left: -5px;
   width: calc(100% + 10px);
   height: calc(100% + 10px);
   border-radius: 50%;
   border: 3px solid transparent;
   background: conic-gradient(transparent, #00a2ff, transparent);
   animation: laser-border 2s linear infinite;
   pointer-events: none;
   z-index: 1;
   opacity: 0;
   transition: opacity 0.3s ease-in-out;
}

.card-round:hover::before {
   opacity: 1;
}

@keyframes laser-border {
   0% {
      transform: rotate(0deg);
   }

   100% {
      transform: rotate(360deg);
   }
}

.features {
   overflow-x: hidden !important;
}

.feature-style {
   margin-top: 10vh;
}

section {
   overflow-x: hidden !important;
}


.modal {
   position: fixed !important;
   z-index: 9999 !important;
}



.btn-outline-light:hover,
.btn-outline-light:hover a {
   color: black !important;
}


.heart {
   color: white !;
}


.content {

   display: flex;
   align-items: center !important;
}


.neon {
   position: fixed;
   background-color: #000;
   display: inline-block;
   padding: 25px 30px;
   margin: 40px 0;
   color: #fff;
   text-decoration: none;
   text-transform: uppercase;
   transition: 0.5s;
   letter-spacing: 4px;
   overflow: hidden;
   margin-right: 50px;
   width: 200px;
   bottom: 5%;
   right: 2%;

   /* Set the color effect for one neon element */
}

.neon:hover {
   background: #fff;
   color: #050801;
   box-shadow: 0 0 5px #fff,
      0 0 25px #fff,
      0 0 50px #fff,
      0 0 200px #fff;
   -webkit-box-reflect: below 1px linear-gradient(transparent, #0005);
}

.neon span {
   position: absolute;
   display: block;
}

.neon span:nth-child(1) {
   top: 0;
   left: 0;
   width: 100%;
   height: 2px;
   background: linear-gradient(90deg, transparent, #fff);
   animation: animate1 1s linear infinite;
}

@keyframes animate1 {
   0% {
      left: -100%;
   }

   50%,
   100% {
      left: 100%;
   }
}

.neon span:nth-child(2) {
   top: -100%;
   right: 0;
   width: 2px;
   height: 100%;
   background: linear-gradient(180deg, transparent, #fff);
   animation: animate2 1s linear infinite;
   animation-delay: 0.25s;
}

@keyframes animate2 {
   0% {
      top: -100%;
   }

   50%,
   100% {
      top: 100%;
   }
}

.neon span:nth-child(3) {
   bottom: 0;
   right: 0;
   width: 100%;
   height: 2px;
   background: linear-gradient(270deg, transparent, #fff);
   animation: animate3 1s linear infinite;
   animation-delay: 0.50s;
}

@keyframes animate3 {
   0% {
      right: -100%;
   }

   50%,
   100% {
      right: 100%;
   }
}

.neon span:nth-child(4) {
   bottom: -100%;
   left: 0;
   width: 2px;
   height: 100%;
   background: linear-gradient(360deg, transparent, #fff);
   animation: animate4 1s linear infinite;
   animation-delay: 0.75s;
}

@keyframes animate4 {
   0% {
      bottom: -100%;
   }

   50%,
   100% {
      bottom: 100%;
   }
}



.carousel-inner {

   height: 50vh;
   overflow-y: hidden;
   display: flex;
   align-items: center;
}
.carousel-inner img {
   width: 100%;
   height: 100%;
   object-fit: cover;
}

@media screen and (max-width:1000px) {
   .carousel {
      position: absolute !important;
      top: 5vh;
      z-index: -100;
   }

   .carousel-inner {
      height: 35vh;
   }

}

.black-morth {
   border-radius: 50px;
   background: #171717;
   box-shadow: 20px 20px 60px #141414,
      -20px -20px 60px #1a1a1a;
}







/* scroll bar */



/* ===== Scrollbar CSS ===== */
/* Firefox */
* {
   scrollbar-width: auto;
   scrollbar-color:  rgba(0, 0, 0, 0.1);
}

/* Chrome, Edge, and Safari */
*::-webkit-scrollbar {
   width: 4px;
}

*::-webkit-scrollbar-track {
   background: rgba(0, 0, 0, 0.1);
}

*::-webkit-scrollbar-thumb {
   background-color: rgba(166, 255, 248, 0.8);
   border-radius: 10px;
   border: 3px solid rgba(166, 255, 248, 0.8);
}
*::-webkit-scrollbar-corner {
   background: transparent;
}











.card-product-list .aa h5 {
   height: 100%;
   display: flex;
   align-items: center;
}

/* Card flip effect - with touch device support */
.card-product-list {
   perspective: 1000px;
   /* Create 3D effect */
}

.card-product-list .card {
   position: relative;
   height: 100%;
   transition: transform 0.6s;
   transform-style: preserve-3d;
}
.card-product-list h5 {
  
   display: flex;
   align-items: center;
}
/* Keep the hover effect for desktop */
@media (min-width: 992px) {
   .card-product-list:hover .card {
      transform: rotateY(180deg);
   }
}

/* Add a class for touch devices */
.card-product-list .card.flipped {
   transform: rotateY(180deg);
}

/* Front and back faces */
.card-front,
.card-back {
   position: absolute;
   width: 100%;
   height: 100%;
   -webkit-backface-visibility: hidden;
   /* Safari */
   backface-visibility: hidden;
   border-radius: 0.375rem;
   /* Same as Bootstrap's card border-radius */
}

.card-front {
   color: white;
}

.card-back {
   background-color: #343a40;
   /* Dark background matching the front */
   color: white;
   transform: rotateY(180deg);
   display: flex;
   flex-direction: column;
   justify-content: center;
   padding: 1rem;
   text-align: center;
}

/* Optional: add some styling for better appearance */
.card-back h6 {
   margin-bottom: 0.75rem;
}

.card-back p {
   margin-bottom: 0;
}

/* Small indicator for touch devices to show it's interactive */
.flip-indicator {
   position: absolute;
   bottom: 8px;
   right: 8px;
   font-size: 20px;
   color: rgba(255, 255, 255, 0.7);
   z-index: 1;
}


.img-thumbnail {
   width: 250px !important;
}




@media screen and (max-width:1000px) {
   .detail-title h1 {
      font-size: 15px !important;

   }

   .img-thumbnail {
      width: 100px !important;
   }

}









/* >>> FAQ STYLES <<< */
.faq_container {
   border-bottom: 2px solid #ddd;
}

.faq_question {
   font-size: 1.2rem;
   font-weight: 600;
   padding: 10px;
   position: relative;
   display: flex;
   align-items: center;
   justify-content: space-between;
   cursor: pointer;
}

.answercont {
   max-height: 0;
   overflow: hidden;
   transition: 0.3s;
}

.answer {
   padding: 0 10px 20px;
   line-height: 1.5rem;
}

.fqa_headline_container h2 span {
   font-weight: 700;
}

.faq_question-text h3 {
   font-size: 22px;
}

.icon.active {
   background: transparent;
   border: 2px solid #fff;
}

.icon:hover {
   cursor: pointer;
}

.icon-shape {
   position: relative;
   width: 50px;
   height: 50px;
}

.icon .icon-shape::before {
   position: absolute;
   content: "";
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
   width: 30px;
   height: 4px;
   background: #fff;
   border-radius: 3px;
   transition: all 0.5s ease;
}

.icon .icon-shape::after {
   position: absolute;
   content: "";
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
   width: 4px;
   height: 30px;
   background: #fff;
   border-radius: 3px;
   transition: all 0.5s ease;
}

.icon .icon-shape.active::before {
   transform: translate(-50%, -50%) rotate(180deg);
   transition: all 0.5s ease;
}

.icon .icon-shape.active::after {
   transform: translate(-50%, -50%) rotate(90deg);
   transition: all 0.5s ease;
}



.search-bar-container {
   display: flex;
   align-items: center;
   background: #171717;
   box-shadow: 20px 20px 60px #141414,
      -20px -20px 60px #1a1a1a;
   padding: 5px;
   width: 300px;
   height: 50px;
   margin: 10px;
   border-radius: 50px;
   position: relative;
   transition: width 1.5s;
 }
 
 .magnifier {
   width: 25px;
   cursor: pointer;
   position: absolute;
   left: 20px;
   color: #fff;
 }

 
 .input {
   background-color: transparent;
   border: none;
   margin: 10px 50px;
   width: 100%;
   outline: none;
   color: rgb(100, 100, 100);
   transition: width 1s;
   transition-delay: 0.5s;
 }
 .search-bar-container button {
   opacity:1;
   transition: opacity 0.5s;
}
 .active.search-bar-container {
   width: 50px;
 }
 
 .active .input {
   width: 0;
 }
 
.active button[type="submit"] {
   opacity: 0;
   transition: opacity 0.5s;
   border: none;
   outline: none;
}




@media screen and (max-width: 600px) {
   .hero {
      margin-top: 25vh !important;
      height: 50vh;
   }

   .dice-layout {
       display: grid !important;
       grid-template-columns: repeat(3, 1fr);
       grid-template-rows: repeat(3, 1fr);
       gap: 0px;
       place-items: center;
       height: 100%;
       width: 100vw;
       margin: 0 auto;
       padding: 0;
   }

   .dice-layout .card-round {
       width: 130px;
       height: 130px;
      background-color: black;
   }

   .dice-layout .card-round img {
       transform: scale(1.2);
   }

   .dice-layout .card-round:nth-child(1) {
       grid-column: 1;
       grid-row: 1;
       margin-left:30%
      
   }

   .dice-layout .card-round:nth-child(2) {
       grid-column: 3;
       grid-row: 1;
       margin-right:50%;
   }

   .dice-layout .card-round:nth-child(3) {
       grid-column: 2;
       grid-row: 2;
   }

   .dice-layout .card-round:nth-child(4) {
       grid-column: 1;
       grid-row: 3;
       margin-left:30%;
   }

   .dice-layout .card-round:nth-child(5) {
       grid-column: 3;
       grid-row: 3;
         margin-right: 50%;
   }
}

