@font-face {
    font-family: "CF Asty Plaisio";
    src: url("https://www.plaisio.gr/assets/fonts/CFAstyPlaisio-Light.woff2") format("woff2"), url("https://www.plaisio.gr/assets/fonts/CFAstyPlaisio-Light.woff") format("woff");
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "CF Asty Plaisio";
    src: url("https://www.plaisio.gr/assets/fonts/CFAstyPlaisio-Bold.woff2") format("woff2"), url("https://www.plaisio.gr/assets/fonts/CFAstyPlaisio-Bold.woff") format("woff");
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "CF Asty Plaisio";
    src: url("https://www.plaisio.gr/assets/fonts/CFAstyPlaisio-Regular.woff2") format("woff2"), url("https://www.plaisio.gr/assets/fonts/CFAstyPlaisio-Regular.woff") format("woff");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

body {
    font-family: "CF Asty Plaisio", sans-serif;
    background-color: #E0E3E5;
    font-weight: 400;
}

img {
    width: 100%;
    height: auto;
}

.arrow {
    width: 26px;
}

/* Brands infinite horizontal scroll */
#brands .scroll-container {
    overflow: hidden;
    width: 100%;
    margin-top: 18px;
}

#brands .scroll-container ul li {
    width: 254px;
    height: 71px;
    padding-left:25px;
    padding-right: 25px;
    background-color: white;
    border: 1px solid black;
}

#brands ul li img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

#brands .scroll-container .carousel-primary {
    display: flex;
    align-items: center;
    gap: 2rem;
    width: max-content;
}

#brands .scroll-container .carousel-primary li {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

#brands .scroll-container .carousel-primary img {
    height: 48px;
    width: auto;
    opacity: 0.95;
    display: block;
}

@keyframes marquee-left {
    from { transform: translateX(0); }
    to   { transform: translateX(-50%); }
}

@keyframes marquee-right {
    from { transform: translateX(-50%); }
    to   { transform: translateX(0); }
}

/* The JS will add the .marquee class and set --marquee-duration dynamically */
.marquee-wrapper.marquee {
    animation-name: marquee-left;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
    animation-duration: var(--marquee-duration, 20s);
    will-change: transform;
    /* ensure the wrapper contains two side-by-side copies */
}

/* Pause on hover for UX */
/* .marquee-wrapper.marquee:hover {
    animation-play-state: paused;
} */

/* When the original scroll-container has .reverse we'll flip the animation */
.scroll-container.reverse .marquee-wrapper.marquee {
    animation-name: marquee-right;
}

/* Ensure the wrapper doesn't wrap and is visually full-width */
.marquee-wrapper {
    display: flex;
    flex-wrap: nowrap;
}


/* horizontal scroll */

/* Ensure section can host stacked bg layers */
#hs-section { position: relative; overflow: hidden; }
/* Put content above the bg layers */
#hs-row { position: relative; z-index: 1; }

#hs-section .bg-layer {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  opacity: 0;
  z-index: 0;
  pointer-events: none;
  will-change: opacity;
}


/* white stripe */

#stripe-content.open {
    transform:translateX(0);
    transition: transform 0.5s;
    opacity: 100%;
    pointer-events: all;
}

#white-stripe.open {
    pointer-events: none;
}

#white-stripe.open #stripe-bar {
    opacity:0;
}

/* underlines */

.u-underline{
  display:inline;     
  font-size: 3rem;            /* must be inline for per-line fragments */
  text-decoration:none;
  padding-bottom:.08em;           /* small gap */

  /* underline via background (one per line because of box-decoration-break) */
  background-image: linear-gradient(currentColor, currentColor);
  background-repeat: no-repeat;
  background-position: 0 100%;
  background-size: var(--ul-w, 0%) 0.12em;  /* animate this width */

  -webkit-box-decoration-break: clone;  /* Safari */
  box-decoration-break: clone;
}

.hamburger {
    padding-right: 0;
}

.hamburger-inner {
    background-color:white !important;
}
.hamburger-inner::before, .hamburger-inner::after {
    background-color: white !important;
}
.hamburger-box {
    width: 32px;
    height: 20px;
}

.hamburger-inner, .hamburger-inner:after, .hamburger-inner:before {
    width:32px;
    height: 2px;
}

.hamburger-inner:after {
    top: -16px;
}

.hamburger-inner:before {
    top: -8px;
}

.hamburger--collapse .hamburger-inner:after {
    top: -16px;
}

#section-2 button[aria-selected="true"] {
    background-color: black;
}

.swiper-s-2-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
}

.swiper-s-2-pagination .swiper-pagination-bullet {
    width: 50px;
    height: 10px;
    border:1px solid black;
    background-color: white;
    border-radius: 0;
    opacity: 100%;
}

.swiper-s-2-pagination .swiper-pagination-bullet-active {
    background-color: black;
}

@media only screen and (max-width: 1600px) {
    #brands .scroll-container ul li {
        width: 200px;
        height: 57px;
    }
}

@media only screen and (max-width: 1280px) {
    #brands .scroll-container ul li {
        width: 150px;
        height: 44px;
    }

    .arrow {
        width: 20px;
    }
}

@media only screen and (max-width: 991px) {
    .arrow {
        transform: rotate(-45deg);
    }
}

@media only screen and (max-width: 565px) {
    #brands .scroll-container ul li {
        width: 128px;
        height: 36px;
    }
    #brands .scroll-container .carousel-primary {
        gap: 14px;
    }
}


.has-bg{
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  transition: background-image .35s ease-in-out;
}
.desc-delivery { opacity: 0; visibility: hidden; }

body.no-scroll {
    overflow: hidden;
}