.bg-topographic-primary {
  position: relative;
}
.bg-topographic-primary:before {
  content: "";
  background: var(--wpr-bg-2ce95608-1fb2-44eb-8962-52590ae3d526);
  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-a78a5698-3d85-4595-835b-9a71bd40afe2);
  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-9c7d1c57-b752-42e1-86fc-2e72cff09310);
  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-a8622f23-4eaa-4d94-8d58-7133313faf78);
  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-471a3e8a-ae68-4746-b765-bd685945e865);
  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-b9169a3a-0466-424b-b169-dc16b3388455);
  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-6be3b087-af1e-43a3-a918-b0c5d7e9dc9f);
  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-3267c663-0126-470c-ad79-6479764c991a);
  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-2db0dc7c-4043-4876-bc9b-7b73a04f1d47);
  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-1871b96f-4276-4bf1-a87b-6132c6132fac);
  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-a66f32c8-3141-4658-991f-afbfa29951a2);
  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-0c737a16-c928-4a45-aad1-69ac1598e1d1);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  height: 26px;
  width: 26px;
}
