.bg-topographic-primary {
  position: relative;
}
.bg-topographic-primary:before {
  content: "";
  background: var(--wpr-bg-86433efc-a156-4d40-a05c-fa8868c12fa8);
  display: block;
  position: absolute;
  right: -20%;
  bottom: 0px;
  width: 100%;
  height: 100%;
  background-size: 100% 100%;
  pointer-events: none;
}

.bg-topographic-primary-left {
  position: relative;
}
.bg-topographic-primary-left:before {
  content: "";
  background: var(--wpr-bg-ac5adc04-14ab-42c8-8fed-9f9ae4b57e9a);
  display: block;
  position: absolute;
  left: -20%;
  bottom: 0px;
  width: 100%;
  height: 100%;
  background-size: 100% 100%;
  transform: scaleX(-1);
  pointer-events: none;
}

.bg-topographic {
  position: relative;
}
.bg-topographic:before {
  content: "";
  background: var(--wpr-bg-2e2c5bc9-4fc6-4eaf-b552-66b78d7a6a7e);
  display: block;
  position: absolute;
  right: -20%;
  bottom: 0px;
  width: 100%;
  height: 100%;
  background-size: 100% 100%;
  pointer-events: none;
}

.bg-plane-trail {
  position: relative;
  overflow: hidden;
}
.bg-plane-trail:before {
  content: "";
  background: var(--wpr-bg-237dfabf-f2b9-4fac-8da0-1473c1f5d631);
  display: block;
  position: absolute;
  left: -10%;
  z-index: 0;
  top: 50%;
  transform: translateY(-60%);
  width: 110%;
  height: 90%;
  background-size: 100% 100%;
  pointer-events: none;
}

.bg-plane-trail-light {
  position: relative;
  overflow: hidden;
}

.bg-plane-trail-light:before {
  content: "";
  background: var(--wpr-bg-30ac9ec1-a2d5-4412-b663-13199398aa9c);
  display: block;
  position: absolute;
  left: -10%;
  z-index: 2;
  top: 50%;
  transform: translateY(-60%);
  width: 110%;
  height: 90%;
  background-size: 100% 100%;
  pointer-events: none;
}

.bg-plane-trail-tan {
  position: relative;
  overflow: hidden;
}

.bg-plane-trail-tan:before {
  content: "";
  background: var(--wpr-bg-79cf57a9-650d-4074-b594-ddc07d6599b9);
  display: block;
  position: absolute;
  left: -10%;
  z-index: 2;
  top: 50%;
  transform: translateY(-60%);
  width: 110%;
  height: 90%;
  background-size: 100% 100%;
  pointer-events: none;
}

.bg-trail-light {
  position: relative;
  overflow: hidden;
}

.bg-trail-light:after {
  content: "";
  background: var(--wpr-bg-5aab330e-0662-4f27-a710-7285bc119982);
  display: block;
  position: absolute;
  left: 0;
  z-index: 2;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  height: 100%;
  background-size: 100% 100%;
  pointer-events: none;
}

.bg-trail-left-light {
  position: relative;
  overflow: hidden;
}

.bg-trail-left-light:after {
  content: "";
  background: var(--wpr-bg-748de2e2-a7d9-4fa9-90c7-51cd146e4367);
  display: block;
  position: absolute;
  left: 0;
  z-index: 2;
  bottom: 0;
  width: 100%;
  height: 100%;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: bottom left;
  pointer-events: none;
}

.bg-trail-tan {
  position: relative;
  overflow: hidden;
}

.bg-trail-tan:after {
  content: "";
  background: var(--wpr-bg-ca51c4df-9a71-444a-aad4-5857f92f22a0);
  display: block;
  position: absolute;
  left: 0;
  z-index: 2;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  height: 100%;
  background-size: 100% 100%;
  pointer-events: none;
}

.bg-topographic-light {
  position: relative;
  overflow: hidden;
}

.bg-topographic-light:before {
  content: "";
  background: var(--wpr-bg-f5c34e0e-610b-4844-8690-681d6fdf4c4e);
  display: block;
  position: absolute;
  right: 0%;
  bottom: 0px;
  width: 100%;
  height: 100%;
  z-index: 2;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: left bottom;
  pointer-events: none;
}

.portrait-topographic-light {
  position: relative;
  overflow: hidden;
}

.portrait-topographic-light:before {
  content: "";
  background: var(--wpr-bg-5cc0fcbc-a228-48b3-84ae-42a47da180f2);
  display: block;
  position: absolute;
  left: 0px;
  bottom: 0px;
  width: 100%;
  height: 100%;
  z-index: 2;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: left bottom;
  pointer-events: none;
}

/* --- VARIATIONS ---*/
.flip-topographic:before {
  transform: scaleX(-1);
}

/* --- COMPONENT SPECIFIC VARIATIONS ---*/
.about-cover.bg-plane-trail-light:before {
  left: -30%;
  z-index: 3;
  top: unset;
  transform: unset;
  bottom: -3%;
  width: 100%;
  height: 60vw;
  max-height: 70%;
  background-size: 100% 100%;
  pointer-events: none;
}

.about-cover.bg-trail-light:after {
  right: 0;
  top: unset;
  transform: unset;
  bottom: -3%;
  width: 100%;
  height: 60vw;
  max-height: 60%;
  background-position: right;
  background-size: contain;
  background-repeat: no-repeat;
  pointer-events: none;
}
.sustainability-trails {
  overflow: visible;
  margin-top: -3rem !important;
}
.sustainability-trails.bg-plane-trail-tan:before {
  left: -75%;
  transform: unset;
  width: 100%;
  height: 100%;
  top: unset;
  bottom: -15%;
  background-size: 100% 100%;
  pointer-events: none;
}
.sustainability-trails.bg-trail-tan:after {
  left: unset;
  right: -23%;
  transform: unset;
  width: 60%;
  top: -10%;
  height: 60%;
  z-index: 0;
  bottom: unset;
  background-size: 100% 100%;
  pointer-events: none;
}

/* ----- TO BE MERGED TO STYLE.CSS ------ */

.search-filter-field--id-24 button.arrow {
  position: absolute;
  top: 50%;
  left: 0;
  background: none !important;
  cursor: pointer;
  transform: translateY(-50%);
  padding: 0 !important;
}

.search-filter-field--id-24 .arrow svg {
  background: var(--wp--preset--color--ocean-teal);
  border-radius: 100px;
  padding: 4px !important;
  font-size: 16px;
  line-height: 1;
  opacity: 0;
  transition: 0.3s ease-out;
}

.search-filter-field--id-24::hover .arrow svg {
  opacity: 1;
}
.m-carousel,
.keen-slider__slide {
  overflow: visible !important;
}

.js-tilt-glare {
  margin: 0;
}

.search-filter-input-button {
  box-shadow: none !important;
}

.standard-card,
.product-card {
  overflow: hidden;
  border-radius: 16px;
}

.standard-card {
  aspect-ratio: 2/3;
}

.product-card:hover,
.standard-card:hover {
  box-shadow: 0 8px 8px hsl(0deg 0% 0% / 0.075), 0 16px 16px hsl(0deg 0% 0% / 0.075), 0 32px 32px hsl(0deg 0% 0% / 0.075);
}

.standard-card img {
  aspect-ratio: 2 / 3;
  min-height: auto;
}

.keen-slider__slide:hover {
  z-index: 999;
}

.mega-menu .wp-block-navigation-item__label {
  font-size: 0.8rem;
  line-height: 1;
}

.product-form-field {
  margin: 0 !important;
}

summary::after {
  content: "+";
}

.acf-accordion-repeater {
  margin: 0 !important;
}

p.price.wc-block-components-product-price {
  font-weight: 800;
  display: flex;
  flex-direction: column;
  font-size: 1.2rem;
}

.smaller-text {
  font-size: 0.8rem;
}

.search-filter-field--id-24 .search-filter-input-button:first-of-type::before {
  content: "";
  background-image: var(--wpr-bg-a933761e-6ea2-4434-b400-7c7e4a49c582);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  height: 26px;
  width: 26px;
}
