/* HOTFIX V1.5 — Dynamic promotions and boosting */
.placement-banner{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:1rem auto;padding:clamp(.85rem,2vw,1.35rem);max-width:1320px;border:1px solid color-mix(in srgb,var(--banner-text) 12%,transparent);border-radius:16px;background:var(--banner-bg);color:var(--banner-text);overflow:hidden;box-shadow:0 10px 30px rgba(20,45,16,.08)}
.placement-banner[style]{margin-top:var(--pb-margin-y);margin-bottom:var(--pb-margin-y);padding:var(--pb-padding);border:var(--pb-border-width) solid var(--pb-border-color);border-radius:var(--pb-radius);max-width:min(1320px,var(--pb-max-width))}.placement-banner[style] .placement-banner__full-media{border-radius:calc(var(--pb-radius) - var(--pb-border-width))}.placement-banner[style] .placement-banner__full-media img{object-fit:var(--pb-fit)}.placement-banner[style]:not(.placement-banner--header):not(.placement-banner--content-sticky) .placement-banner__full-media img{height:var(--pb-desktop-height)}.placement-banner--header[style]{max-width:min(700px,var(--pb-max-width))}.placement-banner--header[style] .placement-banner__full-media img{object-fit:var(--pb-fit)}.banner-shadow-none{box-shadow:none!important}.banner-shadow-soft{box-shadow:0 10px 28px rgba(20,45,16,.12)!important}.banner-shadow-medium{box-shadow:0 16px 38px rgba(13,35,14,.22)!important}.banner-shadow-strong{box-shadow:0 22px 55px rgba(0,0,0,.34)!important}.banner-shadow-glow{box-shadow:0 0 28px color-mix(in srgb,var(--pb-border-color) 70%,transparent)!important}.banner-animation-fade{animation:bannerFadeIn .55s ease}.banner-animation-slide{animation:bannerSlideIn .55s ease}.banner-animation-zoom{animation:bannerZoomIn .5s ease}@keyframes bannerSlideIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes bannerZoomIn{from{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}
.placement-banner--header{max-width:none;margin:0;border-width:0 0 1px;border-radius:0;padding:.65rem clamp(1rem,5vw,4rem)}
.placement-banner--footer{margin:1.5rem auto}
.placement-banner--content-sticky{position:fixed;z-index:1030;right:16px;top:50%;width:300px!important;height:500px;margin:0!important;border-radius:16px!important;transform:translateY(-50%);box-shadow:0 18px 50px rgba(0,0,0,.25)!important}.placement-banner--content-sticky .placement-banner__full-media,.placement-banner--content-sticky .placement-banner__full-media img{width:300px;height:500px;max-height:none;object-fit:cover}.placement-banner__close{position:absolute;z-index:2;top:8px;right:8px;display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(255,255,255,.8);border-radius:50%;background:rgba(10,24,11,.78);color:#fff;box-shadow:0 5px 16px rgba(0,0,0,.25)}
.placement-banner--content-sticky .sticky-banner-slide{display:none}.placement-banner--content-sticky .sticky-banner-slide.is-active{display:block;animation:bannerFadeIn .45s ease}.promotion-home-modal .carousel-item{background:#07180b}.promotion-home-modal .carousel-indicators{z-index:4}.promotion-home-modal .carousel-control-prev,.promotion-home-modal .carousel-control-next{z-index:4}@keyframes bannerFadeIn{from{opacity:0}to{opacity:1}}
.placement-banner--image-only{display:block;padding:0;background:transparent;border:0;box-shadow:0 12px 34px rgba(20,45,16,.12)}.placement-banner--header.placement-banner--image-only{width:min(700px,calc(100% - 24px));max-width:700px;margin:12px auto;border-radius:14px;box-shadow:0 10px 28px rgba(20,45,16,.12)}.placement-banner__full-media{display:block;width:100%;overflow:hidden;border-radius:inherit}.placement-banner__full-media img{display:block;width:100%;height:auto;max-height:clamp(180px,32vw,520px);object-fit:cover}.placement-banner--header .placement-banner__full-media{aspect-ratio:7/3}.placement-banner--header .placement-banner__full-media img{width:100%;height:100%;max-height:none;object-fit:cover}.placement-banner--footer .placement-banner__full-media img{max-height:360px}
.promotion-slide--image-only{display:block!important;padding:0!important;overflow:hidden}.promotion-full-image{display:block;width:100%;height:326px}.promotion-full-image img{display:block;width:100%;height:100%;object-fit:cover}
.placement-banner__copy{display:flex;flex:1;align-items:center;gap:clamp(.65rem,2vw,1.4rem);min-width:0}.placement-banner__copy small{font-weight:900;letter-spacing:.08em}.placement-banner__copy strong{font-size:clamp(1rem,2vw,1.45rem)}.placement-banner__copy span{opacity:.78}.placement-banner__copy a{display:inline-flex;align-items:center;gap:.35rem;margin-left:auto;padding:.55rem .9rem;border-radius:9px;background:var(--banner-text);color:var(--banner-bg);font-weight:800;text-decoration:none;white-space:nowrap}.placement-banner__media img{width:clamp(90px,12vw,180px);height:74px;object-fit:cover;border-radius:10px}
.promotion-home-modal .modal-content{position:relative;border:0;border-radius:22px;background:var(--banner-bg);color:var(--banner-text);overflow:hidden;box-shadow:0 28px 80px rgba(0,0,0,.28)}.promotion-modal-close{position:absolute;z-index:3;top:1rem;right:1rem}.promotion-modal-grid{display:grid;grid-template-columns:1.05fr .95fr;min-height:390px}.promotion-modal-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(2rem,5vw,4rem)}.promotion-modal-copy small{font-weight:900;letter-spacing:.12em}.promotion-modal-copy h2{margin:.75rem 0;font-size:clamp(2rem,5vw,3.4rem);font-weight:900}.promotion-modal-copy p{font-size:1.05rem;opacity:.8}.promotion-modal-image img{width:100%;height:100%;min-height:390px;object-fit:cover}
.promotion-modal-image--full{display:block;width:100%}.promotion-modal-image--full img{display:block;width:100%;height:auto;min-height:0;max-height:78vh;object-fit:contain;background:#0b180d}
.promotion-modal-image--full[style]{padding:var(--pb-padding);border:var(--pb-border-width) solid var(--pb-border-color);border-radius:var(--pb-radius);max-width:var(--pb-max-width);margin:var(--pb-margin-y) auto;overflow:hidden}.promotion-modal-image--full[style] img{height:var(--pb-desktop-height);object-fit:var(--pb-fit);border-radius:calc(var(--pb-radius) - var(--pb-border-width))}
@media(max-width:767px){.placement-banner{align-items:stretch}.placement-banner__copy{flex-wrap:wrap}.placement-banner__copy span{width:100%}.placement-banner__copy a{margin-left:0}.placement-banner__media{display:none}.placement-banner__full-media img{max-height:280px}.placement-banner[style]:not(.placement-banner--content-sticky) .placement-banner__full-media img{height:var(--pb-mobile-height)}.placement-banner--header .placement-banner__full-media img{max-height:none}.promotion-full-image{height:270px}.promotion-modal-grid{grid-template-columns:1fr}.promotion-modal-image{order:-1}.promotion-modal-image img{min-height:180px;height:180px}.promotion-modal-image--full img{height:auto;min-height:0;max-height:80vh}.promotion-modal-copy{padding:1.5rem}.promotion-modal-copy h2{font-size:2rem}}
@media(max-width:991px){.placement-banner--content-sticky{right:10px;top:auto;bottom:12px;width:150px!important;height:250px;transform:none}.placement-banner--content-sticky .placement-banner__full-media,.placement-banner--content-sticky .placement-banner__full-media img{width:150px;height:250px}.placement-banner__close{top:5px;right:5px;width:30px;height:30px}}
.promotion-slide[style]{padding:var(--pb-padding)!important;border:var(--pb-border-width) solid var(--pb-border-color)!important;border-radius:var(--pb-radius)!important;overflow:hidden;max-width:var(--pb-max-width);margin-top:var(--pb-margin-y);margin-bottom:var(--pb-margin-y)}.promotion-slide[style] .promotion-full-image{height:var(--pb-desktop-height);border-radius:calc(var(--pb-radius) - var(--pb-border-width));overflow:hidden}.promotion-slide[style] .promotion-full-image img{object-fit:var(--pb-fit)}
@media(max-width:767px){.promotion-slide[style] .promotion-full-image,.promotion-modal-image--full[style] img{height:var(--pb-mobile-height)}}
.market-promotion-carousel {
  min-width: 0;
  overflow: hidden;
  border: 1px solid #e6e8eb;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 5px 18px rgba(31, 40, 29, 0.035);
}

.market-promotion-carousel .carousel-inner,
.market-promotion-carousel .carousel-item {
  min-height: 326px;
}

.market-promotion-carousel .market-promo-banner {
  min-height: 326px;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  background: var(--promotion-background, #eaf6e4);
}

.market-promotion-carousel .market-promo-copy {
  padding-right: clamp(2.5rem, 5vw, 4.25rem);
}

.market-promotion-carousel .market-promo-banner h1 {
  color: var(--promotion-text, var(--primary-dark));
}

.market-promotion-carousel .market-promo-banner p {
  color: color-mix(in srgb, var(--promotion-text, var(--primary-dark)) 74%, white);
}

.market-promotion-carousel .market-promo-image img {
  border-radius: 14px;
}

.market-promotion-carousel .carousel-indicators {
  right: auto;
  left: clamp(1.2rem, 4vw, 3rem);
  z-index: 4;
  justify-content: flex-start;
  margin-right: 0;
  margin-bottom: 0.75rem;
  margin-left: 0;
}

.market-promotion-carousel .carousel-indicators [data-bs-target] {
  width: 7px;
  height: 7px;
  margin: 0 3px;
  border: 0;
  border-radius: 50%;
  background-color: var(--primary);
}

.market-promotion-carousel .carousel-control-prev,
.market-promotion-carousel .carousel-control-next {
  top: 50%;
  bottom: auto;
  width: 34px;
  height: 34px;
  border: 1px solid rgba(255, 255, 255, 0.7);
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.86);
  box-shadow: 0 5px 14px rgba(18, 37, 14, 0.12);
  opacity: 1;
  transform: translateY(-50%);
}

.market-promotion-carousel .carousel-control-prev {
  left: 0.65rem;
}

.market-promotion-carousel .carousel-control-next {
  right: 0.65rem;
}

.market-promotion-carousel .carousel-control-prev-icon,
.market-promotion-carousel .carousel-control-next-icon {
  width: 15px;
  height: 15px;
  filter: invert(25%) sepia(26%) saturate(1112%) hue-rotate(61deg) brightness(87%);
}

.promotion-price-pill {
  display: inline-flex;
  align-items: center;
  margin-bottom: 0.75rem;
  padding: 0.38rem 0.7rem;
  border: 1px solid color-mix(in srgb, var(--primary) 15%, white);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.78);
  color: var(--primary-dark);
  font-size: 0.8rem;
  font-weight: 900;
}

.promotion-boost-badge {
  color: #b35400;
}

.promotion-slide-image-link {
  width: 100%;
  height: 100%;
  display: grid;
  place-items: center;
}

@media (max-width: 991px) {
  .market-promotion-carousel,
  .market-promotion-carousel .carousel-inner,
  .market-promotion-carousel .carousel-item,
  .market-promotion-carousel .market-promo-banner {
    min-height: 300px;
  }
}

@media (max-width: 767px) {
  .market-promotion-carousel,
  .market-promotion-carousel .carousel-inner,
  .market-promotion-carousel .carousel-item,
  .market-promotion-carousel .market-promo-banner {
    min-height: 270px;
  }

  .market-promotion-carousel .carousel-control-prev,
  .market-promotion-carousel .carousel-control-next {
    display: none;
  }

  .market-promotion-carousel .market-promo-copy {
    padding-right: 1rem;
  }
}

@media (max-width: 575px) {
  .market-promotion-carousel,
  .market-promotion-carousel .carousel-inner,
  .market-promotion-carousel .carousel-item,
  .market-promotion-carousel .market-promo-banner {
    min-height: 238px;
  }

  .market-promotion-carousel .carousel-indicators {
    left: 1rem;
    margin-bottom: 0.45rem;
  }

  .promotion-price-pill {
    margin-bottom: 0.5rem;
    padding: 0.3rem 0.5rem;
    font-size: 0.68rem;
  }
}
