.bg-topographic-primary {
  position: relative;
}
.bg-topographic-primary:before {
  content: "";
  background: var(--wpr-bg-4096e8c8-bb5e-43cf-988e-93a6a19ba33d);
  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-ef06b50b-ba26-42ee-89b6-d1055ca7e02b);
  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-88bb07db-d3a7-4e3d-98c6-0fcbbb533e42);
  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-7917879a-ce15-4cfb-abb0-b170eddeb6f5);
  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-6de9bb1e-bc8c-4789-bae2-b221fa7a9e10);
  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-b8bc9b87-9f5a-491b-a3ad-51a03732e298);
  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-f0e25e2f-6da8-4c84-b66f-07d3bcb09e9a);
  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-a67dad9c-0575-4fc2-ab71-459f43ef4325);
  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-58c675d6-f796-4280-afb9-497af01dfba6);
  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-baf7da75-08aa-4829-8e0c-13f7843d3edd);
  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-4152426c-19ae-42ad-b709-5b2c3f43d060);
  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-769189c3-1b6b-4244-a017-534ec8d94853);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  height: 26px;
  width: 26px;
}
