/*
Theme Name: Minimly Child
Theme URI: https://thisisadvantage.com
Template: minimly
Text Domain: minimly-child
Author: Cameron Knight
Author URI: https://thisisadvantage.com
Description: 100% organic theme. Full-site editing, vegan friendly, gluten-free.
Tags: one-column,custom-colors,custom-menu,custom-logo,editor-style,featured-images,full-site-editing,block-patterns,rtl-language-support,sticky-post,threaded-comments
Version: 1.1646729210
Updated: 2022-03-08 19:46:50
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/

/* --------------------------------------------
   GLOBAL & UTILITY STYLES
-------------------------------------------- */
@font-face {
  font-family: "made-mountain";
  src: url("/wp-content/themes/minimly-child/assets/fonts/MADEMountain.woff2")
      format("woff2"),
    url("/wp-content/themes/minimly-child/assets/fonts/MADEMountain.woff")
      format("woff");
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: "made-okine";
  src: url("/wp-content/themes/minimly-child/assets/fonts/MADEOkineSans.woff2")
      format("woff2"),
    url("/wp-content/themes/minimly-child/assets/fonts/MADEOkineSans.woff")
      format("woff");
  font-weight: 400;
  font-style: normal;
}

.editor-visual-editor__post-title-wrapper {
  display: none !important;
}

/* --------------------------------------------
   GLOBAL & UTILITY STYLES
-------------------------------------------- */

.safe-svg-cover .safe-svg-inside {
  margin-top: 5px;
}

.hidden {
  display: none !important;
}

:root {
  --vh: 100%;
}

main {
  margin: 0;
}

.wp-block-post-featured-image {
  max-width: 100%;
}

a {
  color: inherit;
}

.search-dropdown > * {
  width: 100%;
}

.m-carousel {
  display: flex;
  flex-wrap: nowrap;
  overflow: visible !important;
  list-style: none;
  padding: 0;
}

.gfield-choice-input[type="checkbox"] {
  width: auto !important;
  appearance: auto !important;
}

.gform_wrapper.gravity-theme .gfield_label {
  color: var(--wp--preset--color--darktext);
}

.gform_title {
      font-size: clamp(28px, 4vw, 35px) !important;
}

#gform_confirmation_message_2 h4 {
  margin-bottom: 0px !important;
}

ul {
  margin-block-start: 0px !important;
}

.m-carousel ul {
  display: flex;
}

.m-carousel:not(.keen-slider):not(.wp-block-query),
.m-carousel.wp-block-query ul {
  gap: 1rem;
}

.m-carousel.m-arrows:not(.keen-slider):not(.wp-block-query) {
  margin-bottom: calc(2rem + 44px);
}

.m-carousel:not(.keen-slider):not(.wp-block-query) > *,
.m-carousel.wp-block-query:not(.keen-slider) li {
  min-width: calc((100vw - (2 * var(--wp--custom--spacing--horizontal))) / 3);
  max-width: calc((100vw - (2 * var(--wp--custom--spacing--horizontal))) / 3);
}

@media (max-width: 600px) {
  .m-carousel:not(.keen-slider):not(.wp-block-query) > *,
  .m-carousel.wp-block-query:not(.keen-slider) li {
    min-width: calc(
      (100vw - (2 * var(--wp--custom--spacing--horizontal))) / 1.5
    );
    max-width: calc(
      (100vw - (2 * var(--wp--custom--spacing--horizontal))) / 1.5
    );
  }

  .m-carousel.m-slides-mobile-1\.1:not(.keen-slider):not(.wp-block-query) > * {
    min-width: calc(
      (100vw - (2 * var(--wp--custom--spacing--horizontal))) / 1.1
    );
    max-width: calc(
      (100vw - (2 * var(--wp--custom--spacing--horizontal))) / 1.1
    );
  }
  .m-carousel.m-slides-mobile-1:not(.keen-slider):not(.wp-block-query) > *,
  .m-carousel.wp-block-query.m-slides-mobile-1:not(.keen-slider) li {
    min-width: calc((100vw - (2 * var(--wp--custom--spacing--horizontal))) / 1);
    max-width: calc((100vw - (2 * var(--wp--custom--spacing--horizontal))) / 1);
  }
}
@media (min-width: 601px) {
  .m-carousel.m-slides-mobile-2\.5:not(.keen-slider):not(.wp-block-query) > * {
    min-width: calc(
      (100vw - (2 * var(--wp--custom--spacing--horizontal))) / 2.5
    );
    max-width: calc(
      (100vw - (2 * var(--wp--custom--spacing--horizontal))) / 2.5
    );
  }
  .m-carousel.m-slides-mobile-3\.5:not(.keen-slider):not(.wp-block-query) > * {
    min-width: calc(
      (100vw - (2 * var(--wp--custom--spacing--horizontal))) / 3.5
    );
    max-width: calc(
      (100vw - (2 * var(--wp--custom--spacing--horizontal))) / 3.5
    );
  }
}

.m-carousel img {
  object-fit: cover;
  width: 100%;
}

.m-carousel.auto-width :is(img, video) {
  object-fit: cover;
  height: clamp(350px, 35vw, 600px) !important;
}

@font-face {
  font-family: "chocoleta";
  src: url("/wp-content/themes/minimly-child/assets/fonts/chocoleta.woff2")
      format("woff2"),
    url("/wp-content/themes/minimly-child/assets/fonts/chocoleta.woff")
      format("woff");
  font-weight: 400;
  font-style: normal;
}

.is-nowrap {
  flex-wrap: nowrap;
}

.overlay-bottom::after {
  content: "";
  background: linear-gradient(0deg, #00000082, transparent);
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  pointer-events: none;
}

.overlay-bottom {
  position: relative;
}

.overflow-visible {
  overflow: visible !important;
}

.h-screen {
  height: calc(var(--vh, 1vh) * 100) !important;
}

.h-tall {
  min-height: 70vh;
}

.h-fill *,
.h-fill {
  height: 100% !important;
}

.items-center *,
.items-center {
  display: flex;
  align-items: center;
}

.rounded,
.wp-block-embed__wrapper {
  border-radius: 16px;
  overflow: hidden;
}

.relative {
  position: relative;
}

.absolute-bottom {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 1rem;
}

.padding-horizontal {
  padding-left: var(--wp--custom--spacing--horizontal) !important;
  padding-right: var(--wp--custom--spacing--horizontal) !important;
}

.padding-vertical {
  padding-top: var(--wp--custom--spacing--vertical) !important;
  padding-bottom: var(--wp--custom--spacing--vertical) !important;
}

.padding {
  padding: var(--wp--custom--spacing--vertical)
    var(--wp--custom--spacing--horizontal) !important;
}

.mx-auto {
  margin: auto !important;
}

.no-underline,
.no-underline a {
  text-decoration: none !important;
}

.logo-images-grid img {
  max-width: 125px;
  max-height: 80px;
  object-fit: contain;
  border-radius: 0px !important;
}

.trusted-logos img {
  max-width: 130px;
  max-height: 80px;
  object-fit: contain;
  border-radius: 0px !important;
}

.inline-image img {
  margin-bottom: 20px;
}

.wp-container-core-buttons-is-layout-4 a {
  height: 100%;
  display: flex;
  align-items: center;
}

@media (max-width: 600px) {
  .wp-block-buttons .wp-block-button a {
    padding: 1rem;
  }
}

.button-icon a {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: var(--wp--preset--font-size--body);
}

.button-icon-gap-expanded a {
  gap: 1.5rem !important;
}

.button-icon img {
  width: auto !important;
  height: 15px;
  transform: scale(1.5);
}

.row-width {
  min-width: 100%;
}

.wp-block-separator {
  min-width: 100%;
}

@media (max-width: 1024px) {
  .wp-block-group-is-layout-grid {
    grid-template-columns: 1fr !important;
  }
}

// button mobile padding

.tick-icons {
  list-style: none;
  padding: 0;
}

.tick-icons li {
  position: relative;
  padding-left: 25px;
}

.tick-icons li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 20px; /* icon width */
  height: 20px; /* icon height */
  background-image: url("/wp-content/themes/minimly-child/assets/check-o.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: centre;
}

.accred-logo img {
  max-width: 175px !important;
  max-height: 300px !important;
  object-fit: contain !important;
  mix-blend-mode: darken;
}

.navigation-wrapper,
.keen-slider {
  max-width: 100%;
}

.portrait-cover-image {
  min-width: 100%;
  object-fit: cover;
}

.wp-.mobile-cover-background {
  z-index: 1;
}

.wp-block-cover__background.has-background-dim {
  z-index: 2;
}

.wp-block-cover .wp-block-cover__inner-container {
  z-index: 3;
}

.wp-block-column .wp-block-cover {
  height: 100%;
}

/* --------------------------------------------
   RESPONSIVE BREAKPOINTS & MEDIA QUERIES
-------------------------------------------- */

@media (max-width: 781px) {
  .portrait-cover-image {
    min-width: 100%;
    min-height: 60vh !important;
    max-height: 60vh !important;
    object-fit: cover;
  }
}

@media (min-width: 1024px) {
  .max-cover-700 .wp-block-cover {
    min-height: 700px !important;
  }
}

@media (max-width: 768px) {
  .m-cover-screen .wp-block-cover {
    min-height: auto !important;
    height: 80vh !important;
    max-height: 600px !important;
  }

  .stack-m {
    grid-template-columns: 1fr;
  }

  .m-shrink .safe-svg-inside {
    width: 96px !important;
    height: 96px !important;
  }

  .m-text-center *,
  .m-text-center {
    text-align: center;
    justify-content: center;
    align-items: center;
  }
}

@media (min-width: 600px) {
  .tb-hidden {
    display: none;
  }
}

@media (max-width: 600px) {
  .m-hidden {
    display: none;
  }
}

/* --------------------------------------------
   MORE GLOBAL & WP-BLOCK STYLES
-------------------------------------------- */

.w-full,
.w-full img {
  width: 100% !important;
}

[data-animation="imagereveal"].wp-block-image {
  overflow: hidden;
}

.wp-block-query-pagination-numbers {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  gap: 4px;
}

.wide-buttons a {
  min-width: 250px;
}

.has-white-color.wp-element-button:not(.has-foreground-background-color) {
  border-color: currentColor;
}

.tilted-heading {
  transform-origin: left bottom;
  transform: rotate(-4deg) translateY(10%);
}

.shine {
  margin: 0;
  pointer-events: none;
}

.z-10 {
  position: relative;
  z-index: 10;
}

li.post {
  margin-block-start: 0px !important;
  height: 100%;
}

:root :where(.wp-block-quote) {
  border-width: 3px;
  border-color: var(--wp--preset--color--desert-clay);
  padding-left: 32px;
}

.quote-contained {
  border-radius: 16px;
  border: 1px solid !important;
  padding: 32px;
}

/* --------------------------------------------
   HEADER
-------------------------------------------- */
@media (max-width: 1024px) {
  .m-centered-header {
    grid-template-columns: auto 1fr !important;
  }
}

@media (max-width: 600px) {
  .wp-block-minimly-minimly-dynamic-logo {
    width: 120px !important;
  }
}

@media (max-width: 410px) {
  header .wp-block-buttons .wp-block-button a {
   display: none;
  }
}

.wp-block-navigation__submenu-container {
  border-radius: 16px !important;
  overflow: hidden !important;
  padding: 1rem 0.5rem !important;
}

.wp-block-navigation__submenu-container  span.wp-block-navigation-item__label {
  text-transform: capitalize !important;
}

.wp-block-navigation__submenu-container .wp-block-navigation-item__content {
  color: var(--wp--preset--color--darktext) !important;
}

body:not(.home) header.mega-menu__active #header-left-logo-search-bar, body:not(.home) header.mega-menu__active .search-dropdown > div {
  background: white !important;
}
/* --------------------------------------------
   STANDARD CARD
-------------------------------------------- */

.standard-card:hover,
.product-card:hover {
  z-index: 99;
}

.standard-card {
  height: 100%;
}

.standard-card h3 {
  margin: 0;
  color: white;
}

.standard-card img {
  min-height: 430px;
  object-fit: cover;
  height: 100%;
}

.standard-card a,
.standard-card .minimly-acf-image-container,
.standard-card figure {
  width: 100%;
  height: 100%;
}

.carousel-query-block.gradient {
  background: linear-gradient(180deg, #184c46 0%, #f9f9f9 100%) !important;
}

.carousel-query-block h2 {
  max-width: 600px;
}

/* ───────────────────────────────────────────────
       NOISE LAYER on main::after (works in plain CSS)
    ─────────────────────────────────────────────── */
body {
  position: relative;
}

body::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  background-image: url("/wp-content/uploads/2025/05/grain.svg");
  background-repeat: repeat;
  opacity: 1;
  mix-blend-mode: hard-light;
  animation: grainMove 8s steps(10) infinite;
}

/* subtle drift so the speckle isn’t perfectly static */
@keyframes grainMove {
  0%,
  100% {
    transform: translate(0, 0);
  }
  25% {
    transform: translate(-2%, 1%);
  }
  50% {
    transform: translate(1%, -1%);
  }
  75% {
    transform: translate(-1%, 2%);
  }
}

/* honour reduced-motion OS setting */
@media (prefers-reduced-motion: reduce) {
  main::after {
    animation: none;
  }
}

/* --------------------------------------------
   PRODUCT CARD
-------------------------------------------- */
.product-card .wp-block-post-title {
  min-height: 46px;
  display: flex;
  align-items: center;
}

.product-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  background: white;
}

.product-card .acf-image.w-full * {
  width: 100%;
}
.product-card .acf-image__attachment {
  object-fit: cover;
}

.product-card img {
  height: 240px;
}

.product-card > .wp-block-group-is-layout-constrained {
  flex: 1 1 auto;
  width: 100%;
  display: flex;
  flex-direction: column;
}

.product-card > .wp-block-group-is-layout-constrained > * {
  width: 100%;
}

.product-card .wp-block-post-title {
  margin-top: 0.2rem;
  padding-bottom: 1rem;
  min-height: 0;
}

.product-card .product-categories-icons {
  flex-wrap: nowrap;
  white-space: nowrap;
  overflow-x: auto;
  scrollbar-width: none;
  width: 100%;
  position: relative;
}

@media (min-width: 600px) {
  .product-card--price-container {
    min-height: 44px;
  }
}

.product-card .product-categories-icons::-webkit-scrollbar {
  display: none;
}

.product-categories-icons-container {
  width: 100%;
  position: relative;
  margin-top: auto !important;
}

.product-card .category-text {
  white-space: nowrap;
}

@media (max-width: 600px) {
  .wp-block-post,
  .product-card {
    max-width: calc(100vw - (2 * var(--wp--custom--spacing--horizontal)));
  }

  .product-card {
    transform: none !important;
  }
}

.product-card .wp-block-read-more {
  text-align: center;
}
.loop-price-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 1.5rem;
  row-gap: 0.25rem;
  margin: 0;
  font-size: 1rem;
  width: 100%;
}

.sticky-box .loop-price-grid {
  margin-top: 1rem;
}

.loop-price-grid dt {
  font-weight: 900;
  font-size: 0.8rem;
}

.loop-price-grid dd {
  margin: 0;
  text-align: left;
}

.loop-price-grid div:nth-child(2) {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
}

.loop-price-grid .woocommerce-Price-amount {
  font-weight: 800;
  display: flex;
  flex-direction: column;
  font-size: 1.2rem;
}

.loop-price-grid div:nth-child(2) .woocommerce-Price-amount {
  font-weight: 400;
  display: flex;
  flex-direction: column;
  font-size: 0.8rem;
}

.testimonials .carousel-arrows {
  justify-content: center;
}

.members-price-container {
  font-weight: 900;
  font-size: 0.8rem;
  width: 100%;
  align-items: center;
  text-align: center;
}

/* --------------------------------------------
   POSTS QUERY & POSTS CARD
-------------------------------------------- */
#posts-query-container .carousel-arrows {
  color: var(--wp--preset--color--darktext);
}

.post-card .wp-block-read-more {
  background: transparent none;
  border-radius: 60px;
  border-top-color: var(--wp--preset--color--darktext);
  border-top-width: 2px;
  border-top-style: solid;
  border-right-color: var(--wp--preset--color--darktext);
  border-right-width: 2px;
  border-right-style: solid;
  border-bottom-color: var(--wp--preset--color--darktext);
  border-bottom-width: 2px;
  border-bottom-style: solid;
  border-left-color: var(--wp--preset--color--darktext);
  border-left-width: 2px;
  border-left-style: solid;
  color: var(--wp--preset--color--darktext);
  font-size: var(--wp--preset--font-size--body);
  padding-top: 0.667em;
  padding-right: 1.66em;
  padding-bottom: 0.667em;
  padding-left: 1.66em;
}

/* --------------------------------------------
   PRODUCTS QUERY RESPONSIVENESS
-------------------------------------------- */

@media (max-width: 1200px) {
  ul.columns-4.products-block-post-template {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 964px) {
  ul.columns-4.products-block-post-template {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* --------------------------------------------
   RANK MATH BREADCRUMBS
-------------------------------------------- */

nav.rank-math-breadcrumb p {
  font-size: 0.9rem;
  gap: 0.5rem;
  display: flex;
}

.rank-math-breadcrumb .last,
nav.breadcrumbs li:last-child {
  opacity: 0.5;
}

nav.breadcrumbs ol {
  list-style: none;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0.3rem;
  font-size: 0.8rem;
}

nav.breadcrumbs li:not(:last-child):after {
  content: "\203A";
  margin-left: 0.3rem;
}

/* --------------------------------------------
   Location Taxonomy
-------------------------------------------- */

.leb-booker :is(select, input) {
  padding: 0.8rem;
  border-radius: 100px !important;
  border: 1px solid;
  font-size: var(--wp--preset--font-size--body);
  background-color: transparent;
  color: inherit;
  width: 100%;
}

.leb-booker input {
  background: none;
}

.leb-booker {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.leb-quantity-wrapper {
  position: relative;
  width: 100%;
  margin-top: 0.25rem;
}

/* The number input itself: full width, with left/right padding so text never overlaps buttons */
.leb-quantity-wrapper .leb-quantity-input {
  width: 100%;
  padding: 0.8rem;
  border-radius: 100px !important;
  border: 1px solid;
  font-size: var(--wp--preset--font-size--body);
  background-color: transparent;
  color: inherit;
  width: 100%;
  box-sizing: border-box;
  text-align: center;
  border: 1px solid var(--wp--preset--color--darktext);
  border-radius: 0.25rem;
}

/* Minus & plus buttons: absolutely placed, hovering over the input edges */
.leb-quantity-wrapper .qty-minus,
.leb-quantity-wrapper .qty-plus {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: transparent;
  border: none;
  cursor: pointer;
  font-size: 1.25rem;
  line-height: 1;
  color: #333;
  width: 1.5rem;
  height: 100%;
  padding: 0;
}

/* Place “−” on the left edge */
.leb-quantity-wrapper .qty-minus {
  left: 1rem;
}

/* Place “+” on the right edge */
.leb-quantity-wrapper .qty-plus {
  right: 1rem;
}

/* Disable text selection on the buttons so clicks don’t highlight the “−/+” */
.leb-quantity-wrapper .qty-minus:focus,
.leb-quantity-wrapper .qty-plus:focus {
  outline: none;
}

.tick-icons {
  list-style: none;
  padding: 0px;
  color: var(--);
}

.product-hero-container {
  position: relative;
}

.fancybox__container {
  z-index: 99999 !important;
}

.tax-location .product-destination-country {
  justify-content: flex-start;
}

.tax-location .product-destination-country svg {
  display: none;
}

.tax-location .destination-text {
  font-size: 1rem !important;
  text-transform: capitalize;
  font-weight: 400;
}

.tax-location .acf-innerblocks-container {
  margin-block-start: 0px !important;
}

.program-information {
  max-width: 500px;
}

.program-information .is-layout-grid {
  align-items: center;
}

.acf-text {
  line-height: 1;
}

.product-hero-container .wp-block-buttons {
  position: absolute;
  bottom: 0;
  right: var(--wp--custom--spacing--horizontal);
  padding: 1rem;
}

.product-hero-container .wp-block-button__link::before {
  content: "";
  background: url(/wp-content/themes/minimly-child/assets/grid-light.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  height: 1rem;
  width: 1rem;
  display: inline-flex;
  margin-right: 0.5rem;
}

.pd-gallery--with-images .pd-gallery__wrapper img.pd-gallery__img {
  border-radius: 16px;
  object-fit: cover;
  width: 100% !important;
  height: 100% !important;
}

.pd-gallery {
  position: relative;
}

.view-gallery-button {
  pointer-events: none;
}

.pd-gallery .dots {
  color: white;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}

/* 60 / 40 grid – tablets & desktops (≥ 768 px) */
@media (min-width: 768px) {
  /* GRID applies only when the WRAPPER is NOT a carousel */
  .pd-gallery--with-images .pd-gallery__wrapper:not(.m-carousel) {
    display: grid !important;
    grid-template-columns: 2fr 1fr;
    grid-template-rows: auto auto;
    gap: 16px;
    width: 100% !important;
    height: 60vh !important;
  }

  .pd-gallery--with-images
    .pd-gallery__wrapper:not(.m-carousel)
    .pd-gallery__image {
    width: 100% !important;
    height: 100% !important;
    display: none !important;
    position: relative;
  }

  .pd-gallery--with-images
    .pd-gallery__wrapper:not(.m-carousel)
    .pd-gallery__image
    a {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
  }

  /* first / second / third positioning */
  .pd-gallery--with-images
    .pd-gallery__wrapper:not(.m-carousel)
    .pd-gallery__image:first-child {
    grid-column: 1 / 2;
    grid-row: 1 / 3;
    display: flex !important;
  }
  .pd-gallery--with-images
    .pd-gallery__wrapper:not(.m-carousel)
    .pd-gallery__image:nth-child(2) {
    grid-column: 2 / 3;
    grid-row: 1 / 2;
    display: flex !important;
  }
  .pd-gallery--with-images
    .pd-gallery__wrapper:not(.m-carousel)
    .pd-gallery__image:nth-child(3) {
    grid-column: 2 / 3;
    grid-row: 2 / 3;
    display: flex !important;
  }

  /* image styling */
  .pd-gallery--with-images .pd-gallery__wrapper img.pd-gallery__img {
    border-radius: 16px;
    object-fit: cover;
    width: 100% !important;
    height: 100% !important;
  }

  /* misc Woo elements */
  .pd-gallery--with-images
    .pd-gallery__wrapper:not(.m-carousel)
    .flex-viewport {
    height: 60vh !important;
  }
  .pd-gallery--with-images
    .pd-gallery__wrapper:not(.m-carousel)
    .flex-direction-nav,
  .pd-gallery--with-images
    .pd-gallery__wrapper:not(.m-carousel)
    .flex-control-nav {
    display: none !important;
  }

  /* fallbacks for 1–2 images */
  .pd-gallery--with-images
    .pd-gallery__wrapper:not(.m-carousel):has(.pd-gallery__image:only-child),
  .pd-gallery--with-images
    .pd-gallery__wrapper:not(.m-carousel):has(
      .pd-gallery__image:nth-child(2):last-child
    ) {
    grid-template-columns: 1fr;
    grid-template-rows: 1fr;
  }

  .pd-gallery--with-images
    .pd-gallery__wrapper:not(.m-carousel):has(
      .pd-gallery__image:nth-child(2)
    ):not(:has(.pd-gallery__image:nth-child(3))) {
    grid-template-columns: 2fr 1fr;
    grid-row: 1 / 3;
  }
  .pd-gallery--with-images
    .pd-gallery__wrapper:not(.m-carousel):has(
      .pd-gallery__image:nth-child(2)
    ):not(:has(.pd-gallery__image:nth-child(3)))
    .pd-gallery__image:first-child {
    grid-column: 1 / 2;
    grid-row: 1 / 2;
  }
}

.inclusion-grid .is-nowrap {
  flex-wrap: nowrap;
}
.inclusion-title,
.popup-item-title {
  margin: 0;
}
.inclusion-grid .is-layout-flex {
  gap: 1rem;
  align-items: flex-start;
}
.popup-section.popup-exclusion .inclusion-item {
  align-items: center;
}

.trip-overview-img {
  height: 300px !important;
}

.view-gallery-button {
  display: flex !important;
}

.carousel-container {
  margin-top: 1rem;
}

/* --------------------------------------------
   DETAILS & SUMMARY
-------------------------------------------- */

summary {
  list-style: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: clamp(18px, 3vw, 26px);
  line-height: 140%;
  font-weight: 500;
  gap: 1.5rem;
  position: relative;
}

summary h3 {
  margin: 0;
  font-weight: 500;
  font-size: var(--wp--custom--typography--font-size--large);
  padding: 0;
  padding-right: 40px;
}

summary::marker {
  content: "";
}

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

summary::after {
  font-size: 36px;
  transition: transform 0.3sease;
  position: absolute;
  right: 0px;
  font-family: system-ui;
  font-weight: 300;
}

details[open] summary::after {
  content: "-";
}

details > p {
  margin-block-start: 16px !important;
}

details {
  border-bottom: 1px solid;
}
details[open] {
  padding-bottom: 16px;
}

details img {
  border-radius: 16px;
}

/* --------------------------------------------
   Gravity Forms
-------------------------------------------- */
.gform_wrapper input,
.gform_wrapper textarea {
  width: 100%;
  border: 2px solid var(--wp--preset--color--darktext);
  appearance: none;
  border-radius: 12px;
  padding: 1rem !important;
  background: none;
  font-size: 1rem;
  font-family: inherit;
}

.gform_wrapper .gform_button {
  background: var(--wp--preset--color--darktext);
  color: white;
  text-transform: uppercase;
  font-weight: 700;
  cursor: pointer;
}

/* --------------------------------------------
  CART
-------------------------------------------- */
.wc-block-cart__sidebar.wp-block-woocommerce-cart-totals-block {
  height: fit-content;
  background: white;
  border-radius: 24px;
  padding: 1.5rem !important;
}

.wc-block-cart-items.wp-block-woocommerce-cart-line-items-block {
  background: white !important;
  border-radius: 24px;
  padding: 1.5rem !important;
  border-bottom: 0px !important;
}

.cross-sells-product > div {
  background: white;
  border-radius: 24px 24px 0px 0px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
}

.cross-sells-product .wp-block-cart-cross-sells-product__product-price {
  padding: 0px 12px;
}
.cross-sells-product h3 {
  padding: 0px 12px;
  margin-bottom: 8px !important;
}

.wp-block-woocommerce-cart
  .wp-block-woocommerce-cart-cross-sells-block
  .cross-sells-product
  div
  .wc-block-components-product-image {
  margin-bottom: 8px;
}

.cross-sells-product .wp-block-cart-cross-sells-product__product-add-to-cart {
  border-radius: 0px 0px 24px 24px;
}

.cross-sells-product .wp-block-button.wc-block-components-product-button {
  align-items: stretch !important;
  padding: 0rem 1rem 1rem 1rem;
}

.wc-block-cart__submit-button,
.wc-block-components-totals-coupon__button,
.wc-block-components-checkout-place-order-button {
  border-radius: 16px;
  background: var(--wp--preset--color--light);
  color: var(--wp--preset--color--darktext);
  text-transform: uppercase;
  font-weight: bold;
}

/* --------------------------------------------
  CHECKOUT
-------------------------------------------- */
.solid-nav.woocommerce-checkout
  :is(.wp-site-blocks)
  > *:not(header):not(footer)
  > :is(div:first-of-type, main:first-of-type) {
  margin-top: 40px !important;
}
.wp-container-core-group-is-layout-50fe2b03 {
  width: 100% !important;
}

.checkout-login-btn {
  border-radius: 60px !important;
  margin-top: 20px;
}

/* --------------------------------------------
  Merchandise
-------------------------------------------- */
.merch .wp-block-woocommerce-product-image {
  overflow: hidden;
}

.merch {
  border-radius: 24px;
  overflow: hidden;
}

.merch-info {
  padding: 0.5rem 1rem 1rem 1rem !important;
  text-align: left !important;
}

.merch-info * {
  text-align: left !important;
}

.merch-info h3 {
  margin-bottom: 0px !important;
}

/* --------------------------------------------
  Product Single
-------------------------------------------- */
.single-product .woocommerce-product-gallery__wrapper {
  border-radius: 24px;
  overflow: hidden;
}

.single-product .woocommerce table.variations tr td,
.woocommerce table.variations tr th {
  padding-bottom: 12px !important;
}
.single-product .single_add_to_cart_button {
  border-radius: 16px;
  background: var(--wp--preset--color--light);
  color: var(--wp--preset--color--darktext);
  text-transform: uppercase;
  font-weight: bold;
}

.single-product .single_variation_wrap .woocommerce-variation {
  margin-bottom: 0px !important;
}


/* --------------------------------------------
  Login
-------------------------------------------- */
