@font-face {
  font-display: swap;
  font-family: "Gilroy";
  font-style: normal;
  font-weight: 400;
  src: url(../fonts/Gilroy-Regular.woff);
}

@font-face {
  font-display: swap;
  font-family: "Gilroy";
  font-style: normal;
  font-weight: 500;
  src: url(../fonts/Gilroy-Medium.woff);
}

@font-face {
  font-display: swap;
  font-family: "Gilroy";
  font-style: normal;
  font-weight: 700;
  src: url(../fonts/Gilroy-Bold.woff);
}

@font-face {
  font-display: swap;
  font-family: "Gilroy";
  font-style: italic;
  font-weight: 400;
  src: url(../fonts/Gilroy-RegularItalic.woff);
}

@font-face {
  font-display: swap;
  font-family: "Gilroy";
  font-style: italic;
  font-weight: 500;
  src: url(../fonts/Gilroy-MediumItalic.woff);
}

@font-face {
  font-display: swap;
  font-family: "Gilroy";
  font-style: italic;
  font-weight: 700;
  src: url(../fonts/Gilroy-BoldItalic.woff);
}

main {
  overflow: hidden;
}

main .ABI-ECOM-section--slideshow .Slideshow__Carousel {
  overflow: hidden;
}

main .ABI-ECOM-section--slideshow .Slideshow__Carousel .SectionHeader {
  text-align: left;
}

main .ABI-ECOM-section--slideshow .Slideshow__Carousel .SectionHeader .Button {
  color: #ffffff;
  border-color: #1c1b1b;
  background-color: #1c1b1b;
}

main .Slideshow__Carousel .Slideshow__ImageContainer {
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-delay: 0s;
  animation-iteration-count: 1;
  animation-name: heroImageAnimate__zoomOut;
}

main .Slideshow__Carousel .Slideshow__Content {
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-delay: 0s;
  animation-iteration-count: 1;
  animation-name: animate__fadeInUp;
}

.ABI-ECOM-section .FlexboxIeFix .ImageHero--fade {
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-delay: 0s;
  animation-iteration-count: 1;
  animation-name: heroImageAnimate__zoomOut;
}

@keyframes animate__fadeInUp {
  0% {
    opacity: 0;
    margin-top: 10%;
  }

  100% {
    margin-top: 0;
    opacity: 1;
  }
}

@keyframes heroImageAnimate__zoomOut {
  0% {
    opacity: 0;
    scale: 1.3;
  }

  100% {
    opacity: 1;
    scale: 1;
  }
}

.ABI-ECOM-section.feature-testimonials .FeaturesSection {
  color: #ffffff;
  background: #000000;
}

.ABI-ECOM-section .FeaturesSection .TestimonialList {
  width: 80%;
  padding: 0 50px;
  margin: 0 auto;
}

.ABI-ECOM-section .FeaturesSectionHome .TestimonialList .swiper-slide {
  width: calc(100% / 6);
}

.ABI-ECOM-section .FeaturesSectionSingleProduct .TestimonialList .swiper-slide {
  width: calc(100% / 4);
}

@media screen and (max-width: 1024px) {
  .ABI-ECOM-section .FeaturesSection .TestimonialList {
    width: 100% !important;
    padding: 0px !important;
    margin: 0 auto;
  }
}

/* Machine Page */
@media screen and (min-width: 1008px) {
  .Machine__ProductList--carousel {
    margin-left: 0;
  }
}

/* Single Product Page */
.Product__Tabs .Collapsible .Collapsible__Button {
  display: flex;
  justify-content: space-between;
}

/* Swiper dots style */
.swiper-pagination {
  display: none;
}

.swiper-pagination-bullet {
  width: 12px;
  height: 12px;
  display: inline-block;
  border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: 1 !important;
  border: 2px solid white !important;
}

.swiper-pagination-bullet-active {
  opacity: 1 !important;
  background: white !important;
  border: 2px solid white !important;
}

.swiper-button-next,
.swiper-button-prev {
  position: absolute;
  top: var(--swiper-navigation-top-offset, 50%);
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - (var(--swiper-navigation-size) / 2));
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
  width: 45px;
  height: 45px;
  background-image: linear-gradient(225deg, #ffb4b4 0%, #ffed99 100%);
  background-repeat: repeat;
  background-size: 100%;
  stroke-width: 1px;
  border-radius: 50%;
  color: black;
}

@media screen and (max-width: 1025px) {
  .swiper-button-next,
  .swiper-button-prev {
    display: none;
  }
}

@media screen and (max-width: 640px) {
  main .Slideshow__Carousel .Slideshow__ImageContainer {
    --aspect-ratio: 0.6818181818181818 !important;
  }
}

.swiper-button-next:after,
.swiper-button-prev:after {
  font-family: swiper-icons;
  font-size: 1rem;
  text-transform: none !important;
  letter-spacing: 0;
  font-variant: initial;
  line-height: 1.2;
  width: auto;
  height: 18px;
  stroke: currentColor;
  stroke-width: 1.5px;
  font-weight: 700;
}

.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
  opacity: 0;
}

@media screen and (max-width: 1024px) {
  .justAppeared__Testimonials .swiper-backface-hidden {
    display: block;
  }

  .justAppeared__Testimonials .swiper-wrapper {
    width: 100%;
    height: 100px;
    z-index: 1;
    display: flex;
    transition-property: transform;
    transition-timing-function: var(
      --swiper-wrapper-transition-timing-function,
      initial
    );
  }

  .swiper-pagination {
    position: relative !important;
    display: flex;
    margin-top: 1.375rem;
    justify-content: center;
    align-items: center;
    gap: 10px;
  }

  .swiper-pagination-vertical.swiper-pagination-bullets,
  .swiper-vertical > .swiper-pagination-bullets {
    right: 0;
    left: 0;
    top: 50%;
    transform: translate3d(0px, -50%, 0);
  }
}

@media screen and (max-width: 320px) {
  .Container {
    padding: 0 15px;
  }
}

.ABI-ECOM-section--collection-list
  .collection-list
  .CollectionItem
  .CollectionItem__Wrapper:hover
  > .CollectionItem__ImageWrapper {
  transform: scale(1.3);
  -webkit-transform: scale(1.3);
  transition: all 10s ease-in-out;
}

.TabPanel {
  margin: 0 90px;
  overflow: hidden;
}

@media screen and (max-width: 768px) {
  .TabPanel {
    margin: 0;
  }
}

@media screen and (max-width: 426px) {
  .ABI-ECOM-section--slideshow
    .Slideshow
    .Slideshow__Slide
    .SectionHeader__Heading {
    line-height: 1;
  }
}

.ABI-ECOM-section .FeaturesSection .TestimonialList {
  width: 80%;
  padding: 0 50px;
  margin: 0 auto;
}

.reveal__fadeIn {
  opacity: 1;
  -webkit-transform: none;
  transform: none;
}

@-webkit-keyframes fadeOutDownProd {
  0% {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 10%, 0);
    transform: translate3d(0, 10%, 0);
  }
}

@keyframes fadeOutDownProd {
  0% {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 10%, 0);
    transform: translate3d(0, 10%, 0);
  }
}

.TabPanel .ProductList.animate_fadeOutDown {
  -webkit-animation-name: fadeOutDownProd;
  animation-name: fadeOutDownProd;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}
@-webkit-keyframes fadeInUpProd {
  0% {
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translate3d(0, 10%, 0);
    transform: translate3d(0, 10%, 0);
  }

  to {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

@keyframes fadeInUpProd {
  0% {
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translate3d(0, 10%, 0);
    transform: translate3d(0, 10%, 0);
  }

  to {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

.TabPanel .ProductList.animate_fadeInUp {
  -webkit-animation-name: fadeInUpProd;
  animation-name: fadeInUpProd;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

@media screen and (max-width: 1008px) {
  .flickity-slider.flickity-viewport__mixMatch {
    display: flex;
    align-items: center;
    justify-content: center;
  }
}

@media screen and (max-width: 425px) {
  .ShopTheLook .flickity-viewport {
    height: 350px !important;
  }
}

@media screen and (max-width: 1025px) {
  .blogPageProductList .swiper-button-next,
  .swiper-button-prev {
    display: block;
  }
}

/* Homepage Collection Items Pagination Dots Style */
.collectionItem__Home .swiper-pagination-bullet {
  width: 10px;
  height: 10px;
  display: inline-block;
  border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
  background: #fff;
  opacity: 1 !important;
  border: 1px solid black !important;
}

.collectionItem__Home .swiper-pagination-bullet-active {
  opacity: 1 !important;
  border: 1px solid black !important;
  background: #000000 !important;
}

.collectionItem__Home .swiper-pagination {
  padding: 0 2rem;
  justify-content: flex-start;
}

.Image--zoomOut {
  background-position: center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
}

.swiper-button-next:after,
.swiper-button-prev:after {
  font-family: swiper-icons;
  font-size: 1rem;
  text-transform: none !important;
  letter-spacing: 0;
  font-variant: initial;
  line-height: 1.2;
  width: auto;
  height: 18px;
  stroke: currentColor;
  stroke-width: 1.5px;
  font-weight: 700;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@media screen and (max-width: 640px) {
  .Slideshow__Image-Machine-Mobile {
    display: block;
  }
  .Slideshow__Image-Machine {
    display: none;
  }
}

@media screen and (min-width: 641px) {
  .Slideshow__Image-Machine-Mobile {
    display: none;
  }
  .Slideshow__Image-Machine {
    display: block;
  }
}

.ArticleList .Grid__Cell {
  overflow: hidden;
}

/* FAQ */
.Faq__Item[aria-expanded="true"] .Faq__AnswerWrapper {
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
  visibility: visible;
}

.Faq__AnswerWrapper {
  overflow: hidden;
  height: 0;
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
  visibility: hidden;
}

.Faq__Question {
  font-size: 1rem;
  line-height: 20px;
  font-weight: 700;
}

.FaqPage .FaqPageSec {
  margin-bottom: 1rem;
}

@media screen and (max-width: 1007px) {
  .Faq__Question {
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 21px;
    line-height: 1.3125rem;
  }

  .FaqPage .FaqPageSec {
    margin-bottom: 1.5rem;
  }

  .FaqPageCont {
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 21px;
    line-height: 1.3125rem;
    font-weight: 500;
  }
}

/* Single Product Page */
.flickity-enabled {
  position: relative;
}

.flickity-enabled:focus {
  outline: none;
}

.flickity-viewport {
  overflow: hidden;
  position: relative;
  height: 100%;
}

.flickity-slider {
  position: absolute;
  width: 100%;
  height: 100%;
}

/* draggable */

.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
  tap-highlight-color: transparent;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.flickity-enabled.is-draggable .flickity-viewport {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab;
}

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

/* ---- previous/next buttons ---- */

.flickity-prev-next-button {
  position: absolute;
  top: 50%;
  width: 44px;
  height: 44px;
  border: none;
  border-radius: 50%;
  background: white;
  background: hsla(0, 0%, 100%, 0.75);
  cursor: pointer;
  /* vertically center */
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.flickity-prev-next-button:hover {
  background: white;
}

.flickity-prev-next-button:focus {
  outline: none;
  box-shadow: 0 0 0 5px #09f;
}

.flickity-prev-next-button:active {
  opacity: 0.6;
}

.flickity-prev-next-button.previous {
  left: 10px;
}
.flickity-prev-next-button.next {
  right: 10px;
}

.flickity-prev-next-button:disabled {
  opacity: 0.3;
  cursor: auto;
}

.flickity-prev-next-button svg {
  position: absolute;
  left: 20%;
  top: 20%;
  width: 60%;
  height: 60%;
}

.flickity-prev-next-button .arrow {
  fill: #333;
}

* {
  box-sizing: border-box;
}

.carousel {
  background: #fff;
}

.carousel-main {
  margin-bottom: 8px;
}

.carousel-cell {
  width: 100%;
  height: 504px;
  margin-right: 8px;
  background: rgb(255, 255, 255);
  border-radius: 5px;
}

.carousel-nav .carousel-cell {
  height: 90px;
  width: 120px;
}

/* Atelierbram edit */
.carousel-main img {
  display: block;
  margin: 0 auto;
}

.container {
  max-width: 672px;
  margin: 0 auto;
}

/* h1 {
  text-align: center;
} */

.Product__SlideItem {
  border: none !important;
}

/* Styles for Flickity navigation dots */
.flickity-page-dots {
  display: flex;
  justify-content: center;
  align-items: center;
  list-style: none;
  margin: 1rem 0;
  padding: 0;
}

/* Style for each dot */
.flickity-page-dots .dot {
  width: 10px;
  height: 10px;
  background-color: #33333300;
  border-radius: 50%;
  margin: 0 5px;
  cursor: pointer;
}

@media screen and (min-width: 1008px) {
  .carousel-cell.is-selected {
    border: 1px solid var(--heading-color);
  }
}

@media screen and (max-width: 1024px) {
  .carousel-nav {
    display: none;
  }
}

.pswp__bg {
  background-color: #fff !important;
  opacity: 1 !important;
}

.pswp--touch .pswp__button--arrow {
  visibility: visible !important;
}

.pswp__top-bar {
  position: relative;
  left: 0;
  top: 100% !important;
  margin-top: -10vh;
  width: 100%;
  height: 60px;
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  z-index: 10;
  pointer-events: none !important;
  /* background-color: black; */
}

.pswp__counter,
.pswp__preloader {
  display: none;
}

.pswp__button--close {
  position: absolute !important;
  width: 60px !important;
  box-shadow: 0 2px 10px #36363626 !important;
  border-radius: 50%;
  left: 50%;
  transform: translateX(-50%);
}

.pswp__button--arrow {
  width: 60px !important;
  height: 60px !important;
  box-shadow: 0 2px 10px #36363626 !important;
  border-radius: 50%;
}

.pswp__icn {
  left: 13px !important;
  fill: rgb(80, 80, 80) !important;
  color: rgb(80, 80, 80);
  width: 32px !important;
  width: 32px !important;
}

.pswp__button--arrow--prev {
  right: auto !important;
  top: 100% !important;
  margin-top: -10vh !important;
  left: 45% !important;
  transform: translateX(-100%) !important;
  width: 60px !important;
  height: 60px !important;
}

.pswp__button--arrow--prev .pswp__icn {
  top: 50% !important;
  margin-top: 0 !important;
  width: 32px !important;
  height: 32px !important;
  border-radius: 0;
  transform: translateY(-50%);
}

.pswp__button--arrow--next {
  right: auto !important;
  top: 100% !important;
  margin-top: -10vh !important;
  left: 60% !important;
  transform: translateX(-100%) !important;
  width: 60px !important;
  height: 60px !important;
}

.pswp__icn-shadow {
  stroke-width: unset !important;
  fill: none;
}

.pswp__button--arrow--next .pswp__icn {
  top: 50% !important;
  margin-top: 0 !important;
  width: 32px !important;
  height: 32px !important;
  border-radius: 0;
  transform: translate(-65%, -50%) scale(-1, 1) !important;
  left: 50% !important;
}

#header-locale-popover::before {
  position: absolute;
  right: 50%;
  width: 10px;
  height: 10px;
  border-style: solid;
  content: "";
  bottom: 100%;
  border-width: 0 10px 10px;
  border-color: transparent transparent var(--light-background) transparent;
  -webkit-filter: drop-shadow(0 -2px 2px rgba(54, 54, 54, 0.2));
  filter: drop-shadow(0 -2px 2px rgba(54, 54, 54, 0.2));
  transform: translateX(-50%);
}

@media screen and (max-width: 1008px) {
  .Popover__Small {
    top: auto !important;
  }
  #header-locale-popover::before {
    position: absolute;
    right: 50%;
    width: 10px;
    height: 10px;
    border-style: solid;
    content: "";
    display: none;
  }
}

@media screen and (min-width: 1007px) {
  .Popover__Small {
    display: none;
  }

  .Drawer__Content .HorizontalList .HorizontalList__Item button {
    pointer-events: none;
  }
}

@media screen and (max-width: 640px) {
  .Image--lazyLoad {
    transform: translateX(0);
  }
}
