/* stylelint-disable-next-line no-descending-specificity */
/* Early access promo-bar */
.header-promo-bar:has(.early-access) {
    background-color: black;
    color: white;
    height: 6.4rem;
  }
.carousel.promo-bar.early-access.inline.no-button.block.fully-visible {
    height: 6.4rem;
  }
header.with-promo:has(.early-access) {
    margin-bottom: 6.4rem;
  }
header.with-promo:has(.early-access) .menu-popup-overlay {
    inset:22rem 0;
  }
.carousel.promo-bar.early-access .countdown-timer {
    display: inline-flex;
    gap: 0.6rem;
    margin-left: 0.6rem;
    vertical-align: middle;
  }
.carousel.promo-bar.early-access .time-box {
    background-color: #F4F0F6;
    color: #171717;
    padding: 0.6rem 1rem;
    border-radius: 0.5rem;
    min-width: 2.4rem;
    text-align: center;
    font-family: Arial, sans-serif;
    user-select: none;
    box-shadow: 0 0 0.5rem rgb(0 0 0 / 30%);
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
  }
.carousel.promo-bar.early-access .time-box .value {
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1;
  }
.carousel.promo-bar.early-access .time-box .value em {
    padding: 0 0.2rem;
    font-style: normal;
  }
.carousel.promo-bar.early-access .time-box .label {
    font-size: 1.1rem;
    text-transform: uppercase;
    opacity: 0.7;
    line-height: 1;
    margin-top: 0.2rem;
    height: 1.2rem; /* keep consistent height for boxes with empty label */
  }
.carousel.promo-bar.early-access .carousel-item-text {
    display: flex;
    gap: 2rem;
    align-items: center;
  }
.carousel.promo-bar.early-access .carousel-item-text a {
    text-decoration: underline;
    color: white;
  }
@media only screen and (width < 1024px) {
    .section.inline-links.promo-bar.carousel-container {
      display: block;
    }
  
    header.with-promo.header-wrapper:has(.early-access) .header-middle{
     top: 6.4rem;
    }
  
    header.with-promo.header-wrapper:has(.early-access) .header-promo-bar{
      position: fixed;
      width: 100%;
      z-index: 35;
      top: 0;
      left: 0;
      right: 0;
    }
  
    body:not(.search-active) header.with-promo.header-wrapper:has(.early-access) .header > .section.search{
      top: 12rem;
    }
  
    .carousel.promo-bar.early-access .carousel-item-text span{
      display: flex;
      text-align: left;
    }
  
    .carousel.promo-bar.early-access .carousel-item-text a{
      display: none;
    }
  
    .carousel.promo-bar.early-access .time-box .value {
      font-size: 1.2rem;
    }
  
    header.with-promo.header-wrapper:has(.early-access) .section.carousel-container .carousel-item-columns-container {
      padding: 0;
    }

    .carousel.promo-bar.early-access .time-box {
      padding: 0.4rem 0.8rem;
    }
  }
.carousel-wrapper {
  width: 100%;
  position: relative;
  max-width: unset;
}
.carousel {
  box-sizing: border-box;
  display: flex;
  overflow: hidden;
  margin: auto;
  width: 100%;
  padding: 0 2rem;
}
.carousel-item {
  box-sizing: border-box;
  width: 100%;
  flex: 1 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2rem;
}
.carousel-item-columns-container {
  display: flex;
  align-items: center;
  justify-content: center;
}
.carousel-item-image img {
  display: block;
  object-fit: contain;
  width: 100%;
}
.carousel-item-text p {
  text-align: start;
}
.price-wrapper {
  display: inline;
}
.carousel.cards .carousel-item .price-wrapper .dynamic-price {
  text-decoration: line-through;
  padding-right: var(--space-space-6);
  font-size: var(--font-size-3);
  padding-top: var(--spacing-xxsmall);
  font-weight: var(--font-weight-6);
}
.discount-text {
  color: var(--color-primary-100);
  font-size: var(--font-size-2);
  margin-top: var(--spacing-xxsmall);
}
.carousel.cards .carousel-item .logged-in .dynamic-price,
.carousel.cards .carousel-item p.dynamic-price:hover,
.carousel.cards .carousel-item .logged-in .discount-text{
  text-decoration: line-through;
}
html[dir="rtl"] .carousel.cards .carousel-item .price-wrapper .dynamic-price {
  padding-right: unset;
  padding-left: var(--space-space-6);
}
.carousel.cards .carousel-item .member-price{
  background: var(--color-tertiary-100);
  width: fit-content;
  margin-top: var(--spacing-xxsmall);
  font-size: var(--font-size-1);
}
button.carousel-nav-button {
  z-index: 2;
  min-width: unset;
  padding: 0;
  border-radius: 50%;
  position: absolute;
  top: 37%;
  display: flex;
  justify-content: center;
  align-items: center;
  color: var(--text-color-main);
  border: 1.5px solid var(--text-color-main);
  background-color: inherit;
  margin: 0;
}
button.carousel-nav-button::after {
  content: none;
}
button.carousel-nav-button.disabled {
  display: none;
}
.recommendation-picture img {
  aspect-ratio: 2/3;
}
button.carousel-nav-button .icon img {
  height: 1.8rem;
  width: 1.8rem;
}
button.carousel-nav-left {
  left: 2rem;
}
button.carousel-nav-right {
  right: 2rem;
}
.carousel-dot-buttons {
  margin: var(--space-space-8) 0 0;
  display: flex;
  justify-content: center;
  gap: 1rem;
  min-width: unset;
}
.recommendations-wrapper .carousel-dot-buttons button {
  margin: 0.5rem 0;
}
button.carousel-dot-button {
  min-width: unset;
  height: 1rem;
  width: 1rem;
  background-color: transparent;
  border: 1px solid var(--color-secondary-100);
  border-radius: 50%;
  padding: 0;
}
button.carousel-dot-button.selected {
  background-color: var(--color-neutral-black);
  border: 0;
}
.carousel-dot-img-buttons {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.carousel-dot-img-buttons .carousel-dot-button {
  max-width: 10rem;
  padding: 1rem;
  opacity: 0.7;
  width: 100%;
  border-radius: inherit;
  height: 100%;
  border: none;
}
/* stylelint-disable no-descending-specificity */
.carousel-dot-img-buttons .carousel-dot-button img {
  display: block;
}
.carousel-dot-img-buttons .carousel-dot-button.selected {
  opacity: 1;
}
.carousel .carousel-item a {
  display: flex;
  flex-direction: column;
  flex: 1 1 0;
}
.carousel a.social-share-link {
  position: absolute;
  top: 0.8rem;
  right: 0.8rem;
}
.section.recommendations-container.personalization-container {
  text-align: center;
}
html[dir="rtl"] .carousel a.social-share-link {
  position: absolute;
  left: 0.8rem;
  right: unset;
}
@media only screen and (width >= 767px) {
  .carousel {
    padding: 0;
  }

  button.carousel-nav-button .icon img {
    height: 2.4rem;
    width: 2.4rem;
  }
}
/* Inline variant */
.carousel.inline {
  display: flex;
  align-items: center;
  touch-action: pan-y;
}
.carousel.inline .carousel-item {
  display: block;
  width: 100%;
  padding: var(--space-space-16) 0;
  margin: 0;
  text-align: center;
  font-size: var(--font-size-2);
}
.carousel-wrapper.inline .carousel-nav-button {
  top: 1.4rem;
  height: auto;
}
.carousel-wrapper.inline .carousel-nav-button.carousel-nav-left {
  left: -1rem;
}
.carousel-wrapper.inline .carousel-nav-button.carousel-nav-right {
  right: -1rem;
}
.carousel-wrapper.inline .carousel-nav-button .icon img {
  height: 1.2rem;
  width: 1.2rem;
}
.section.carousel-container .carousel .carousel-item a {
  word-break: break-word;
}
.carousel-wrapper.inline .carousel-item .carousel-item-text a:hover {
  text-decoration: none;
  text-underline-offset: unset;
}
.carousel-wrapper.inline .carousel-nav-button .icon {
  height: 2.4rem;
  width: 2.4rem;
}
@media only screen and (width >= 768px) {
  .carousel.inline.fully-visible .carousel-item {
    width: auto;
    flex: 1;
  }

  .carousel.cards .carousel-item .member-price{
    font-size: var(--font-size-2);
  }
}
/* cards variant */
.carousel-wrapper.cards {
  margin: 0 auto;
}
.carousel-wrapper.cards .carousel-nav-button {
  display: none;
}
.carousel-wrapper.cards .carousel-nav-left {
  left: -2rem;
}
.carousel-wrapper.cards .carousel-nav-right {
  right: -2rem;
}
.carousel.cards {
  width: 100%;
  padding: 0;
  text-align: start;
  touch-action: pan-y;
}
.carousel.cards .carousel-item {
  display: block;
  width: 40%;
  max-width: 50%;
  padding: 1rem 0.5rem;
  margin: 0;
}
.carousel.cards .carousel-item .card {
  height: 100%;
  width: 100%;
  margin: 0;
  position: relative;
  transition: all 0.3s;
  display: flex;
  align-items: stretch;
  align-content: stretch;
  flex-direction: column;
}
.carousel.cards .carousel-item .card a:hover {
  color: var(--color-text-main);
}
.carousel.cards .carousel-item p {
  font-size: var(--text-s);
  margin: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  word-break: break-word;
}
.carousel.cards .carousel-item p:nth-child(1) {
  padding-top: var(--spacing-xsmall);
}
.carousel.cards .carousel-item p:nth-child(2) {
  padding-top: var(--spacing-xxsmall);
  font-size: var(--font-size-3);
  font-weight: var(--font-weight-6);
}
.carousel.cards .carousel-item .member-price-wrapper p {
  padding: 0;
}
.carousel.cards .carousel-item p:nth-child(1):hover {
  color: var(--color-text-main);
  text-decoration: underline;
}
.home main > .section.carousel-container {
  padding-top:0;
  padding-bottom: 0;
}
.recommendation-picture {
  position: relative;
  width: 100%;
  aspect-ratio: 2/3;
  overflow: hidden;
  background-color: var(--color-neutral-480);
}
.recommendations.cards.carousel .carousel-item .card{
  position: relative;
  }
.recommendations .carousel-item .card .image-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  width: 8rem;
  height: 8rem;
  z-index: 1;
  margin: var(--space-space-8) 0;
}
.recommendation-picture svg{
    width: 100%;
    height: auto;
    max-height: 100%;
    object-fit: cover;
}
.carousel.cards .promotions p.promotion-link {
  padding: 0;
  font-size: var(--text-m);
  color: var(--color-primary-100);
}
.carousel.cards .promotions p.promotion-link:hover {
  text-decoration: none;
  color: var(--color-primary-100);
}
.section.carousel-container .carousel-item-columns-container {
  padding: 0 var(--space-space-5x);
}
.section.carousel-container .carousel-wrapper.inline .carousel-nav-button {
  top: 37%;
}
.recommendations-container .products-container .product-item .product-item-info:has(.plp-aura-price) .product-item-price.strikethrough .item-price {
  text-decoration: line-through;
}
@media only screen and (width >= 768px) {
  .section.carousel-container .carousel-item-columns-container {
    padding: unset;
  }

  .carousel-wrapper.cards .carousel-nav-button:not(.disabled) {
    display: block;
  }

  .price-wrapper {
    display: flex;
    flex-wrap: wrap;
  }

  .modal-content .price-wrapper {
    display: inline;
  }

  .carousel.inline .carousel-item {
    font-size: var(--font-size-4);
    padding: 1.3rem 0;
  }

  .carousel-wrapper.cards .carousel-item {
    width: 25%;
    max-width: 25%;
  }

  .carousel.inline {
    height: auto;
    padding: var(--space-space-16) var(--space-space-24);
    gap: var(--space-space-4);
  }

  .carousel.cards .carousel-item {
    padding: 1rem 1.5rem;
  }

  .carousel.cards .carousel-item .logged-in .dynamic-price,
  .carousel.cards .carousel-item .logged-in .discount-text{
    text-decoration: line-through;
  }

  .carousel.cards .carousel-item .member-price-wrapper{
    flex-basis: 100%;
  }

  .carousel.cards .carousel-item .logged-in .member-price-wrapper{
    order: -1;
  }

  .carousel.cards .carousel-item .logged-in .dynamic-price,
  .carousel.cards .carousel-item p.dynamic-price:hover,
  .carousel.cards .carousel-item .logged-in .discount-text{
    text-decoration: line-through;
  }

  .carousel.cards .carousel-item .not-scratched,
  .carousel.cards .carousel-item .logged-in .not-scratched,
  .carousel.cards .carousel-item .member-price:hover{
    text-decoration: none;
  }
}
/* bat specific code goes here */
/* Always keep .bat scope for brand specific override
Example:
.bat h2 {
  color: var(--color-token);
}
*/
.bat .hp-usp .carousel .carousel-item {
  padding: var(--space-space-12) var(--space-space-16);
}
.bat .carousel .carousel-item a {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  gap: var(--space-space-4);
  color: var(--color-tertiary-c);
  font: var(--type-body-3-default-font);
}
.bat .carousel.inline {
  height: var(--sf-height-48);
}
.bat .carousel-wrapper.inline .carousel-nav-button.carousel-nav-left {
  left: -0.8rem;
}
.bat .section.carousel-container {
  background: var(--color-primary-c);
  position: relative;
}
@media (width >= 1600px) {
  body.bat {
    overflow-x: hidden;
  }

  .bat .section.carousel-container:has(.carousel-wrapper.hp-usp) {
    left: calc(-50vw + 50%);
    width: 100vw;
    padding: 0;
  }

  html[dir='rtl'] .bat .section.carousel-container:has(.carousel-wrapper.hp-usp) {
    right: calc(-50vw + 50%);
  }
}
.bat .section.carousel-container .carousel-wrapper.hp-usp.dynamic-keys {
  background: var(--color-primary-c);
}
.bat .carousel-wrapper.inline .carousel-nav-button.carousel-nav-right {
  right: -0.8rem;
}
.bat .hp-usp .carousel-nav-button {
  display: block;
}
.bat .hp-usp.carousel-wrapper.inline .carousel-nav-button {
  top: 30%;
  background-color: transparent;
  border: none;
  border-radius: 0;
}
.bat .carousel-wrapper.inline .carousel-nav-button .icon img {
  height: 4.2rem;
  width: var(--sf-width-2);
  position: relative;
  top: -10px;
  display: none;
}
.bat .carousel-item-image {
  text-wrap: nowrap;
}
.bat .icon-chevron-right {
  background-color: var(--color-tertiary-c);
  mask: url("/icons/chevron-right.svg") no-repeat;
}
.bat .icon-chevron-left {
  background-color: var(--color-tertiary-c);
  mask: url("/icons/chevron-left.svg") no-repeat;
}
.bat .recommendations-container .icon-chevron-right {
  background-color: var(--color-primary-a);
  mask-size: 50%;
  mask-position: var(--space-space-1x-2) var(--space-space-1x-2);
}
.bat .recommendations-container .icon-chevron-left {
  background-color: var(--color-primary-a);
  mask-size: 50%;
  mask-position: var(--space-space-1x-2) var(--space-space-1x-2);
}
html[dir='rtl'] .bat .recommendations-container .icon-chevron-right {
  mask-position: var(--space-space-10) var(--space-space-1x-2);
}
html[dir='rtl'] .bat .recommendations-container .icon-chevron-left {
  mask-position: var(--space-space-2x-1) var(--space-space-1x-2);
}
.bat .icon-free-delivery,
.bat .icon-devices,
.bat .icon-cash {
  height: var(--sf-height-2-4);
  width: var(--sf-width-2-4);
}
.bat .recommendations-container .carousel.cards .carousel-item {
  width: 47%;
  max-width: unset;
  padding: 0;
  flex: 0 0 auto;
}
.bat .recommendations-container .carousel.cards {
  gap: var(--space-space-8);
  padding: var(--space-space-16) 0 0;
}
.bat.search .recommendations-container .carousel.cards {
  gap: var(--space-space-8);
  padding: var(--space-space-16) 0 var(--space-space-32);
}
.bat .recommendations-container .carousel .carousel-item a {
  flex: unset;
}
.bat .recommendations-container .carousel.cards .carousel-item p:nth-child(1){
  padding-top: 0;
}
.bat .recommendations-container .carousel.cards .carousel-item p:nth-child(2) {
  padding-top: 0;
  font: var(--type-details-3-font);
}
.bat .recommendations-container .carousel.cards .carousel-item p:nth-child(1):hover {
  text-decoration: none;
}
html[dir='rtl'] .bat .recommendations-container .carousel.cards .carousel-item p:nth-child(1) {
  padding-top: unset;
  margin-right: 0;
  margin-left: var(--space-space-2);
}
.bat .recommendations-container .carousel-wrapper.cards .carousel-nav-button {
  z-index: 0;
}
.bat .recommendations-container .carousel-wrapper.cards .carousel-nav-button:not(.disabled) {
  top: -3.6rem;
  right: 0;
  position: absolute;
  border-radius: 50%;
  border: 1px solid var(--color-neutral-480);
  width: 3.2rem;
  height: 3.2rem;
}
.bat .recommendations-container > .carousel-wrapper.cards .carousel-nav-button:not(.disabled) {
  display:block;
}
.bat .recommendations-container .carousel-wrapper.cards .carousel-nav-button:not(.disabled):hover {
  background: none;
}
.bat .recommendations-container .carousel-wrapper.cards .carousel-nav-button.carousel-nav-left:not(.disabled) {
  left: auto;
  right: var(--space-space-48);
}
.bat .recommendations-container .carousel-wrapper.cards .carousel-nav-button.carousel-nav-right:not(.disabled) {
  right: var(--space-space-12);
}
html[dir='rtl'] .bat .recommendations-container .carousel-wrapper.cards .carousel-nav-button.carousel-nav-right:not(.disabled) {
  right: auto;
  left: var(--space-space-48);
}
html[dir='rtl'] .bat .recommendations-container .carousel-wrapper.cards .carousel-nav-button.carousel-nav-left:not(.disabled) {
  right: unset;
  left: var(--space-space-12);
}
.bat .carousel.cards .carousel-item .card .product-image-container > a > .item-images > img {
  width: auto;
  height: 100%;
}
.bat .recommendations.carousel.cards .carousel-item .card .product-image-container {
  max-height: var(--embed-width-3-5);
  min-height: unset;
}
.bat .hp-usp.carousel-wrapper .carousel-item .carousel-item-image {
  display: flex;
}
@Media (width >= 768px) {
  .bat .hp-usp .carousel-nav-button {
    display: none;
  }

  .bat .recommendations-container .carousel-wrapper.cards .carousel-nav-button.carousel-nav-left:not(.disabled) {
    right: var(--space-space-36);
  }

  .bat .recommendations-container .carousel-wrapper.cards .carousel-nav-button.carousel-nav-right:not(.disabled) {
    right: 0;
  }

  html[dir='rtl'] .bat .recommendations-container .carousel-wrapper.cards .carousel-nav-button.carousel-nav-left:not(.disabled) {
    left: 0;
  }

  html[dir='rtl'] .bat .recommendations-container .carousel-wrapper.cards .carousel-nav-button.carousel-nav-right:not(.disabled) {
    left: var(--space-space-38)
  }
}
@media (width >= 1024px) {
  .bat .recommendations-container .carousel.cards {
    gap: var(--space-space-32);
    padding: var(--space-space-16) 0 0;
  }

  .bat.search .recommendations-container .carousel.cards {
    gap: var(--space-space-32);
    padding: var(--space-space-16) 0;
  }

  .bat .recommendations-container .carousel-wrapper.cards .carousel-item {
    width: 14.6%;
    max-width: unset;
  }
}
