/* ======================================================
   ub-v2.css – v1.3.2 stable — 2025-10-04
   Underbug Child Theme — Clean scoped structure
   Focus: Home hero, shop header, product grid, footer
   Next: Mini-cart island rework
====================================================== */

/* ================================
   CUSTOM FONT — GT Pressura Mono
================================ */
@font-face {
  font-family: 'GT Pressura Mono';
  src: url('fonts/GT-Pressura-Mono-Regular.woff2') format('woff2'),
    url('fonts/GT-Pressura-Mono-Regular.woff') format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'GT Pressura Mono';
  src: url('fonts/GT-Pressura-Mono-Bold.woff2') format('woff2'),
    url('fonts/GT-Pressura-Mono-Bold.woff') format('woff');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'GT Pressura Mono';
  src: url('fonts/GT-Pressura-Mono-Light.woff2') format('woff2'),
    url('fonts/GT-Pressura-Mono-Light.woff') format('woff');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

/* ===============================================
   ub-v2.css — mobile-first, scoped, layered
   Home + Archive separation with footer fix
================================================ */
@layer tokens, base, layout, components, utilities, desktop, woocommerce;


/* ================================
   TOKENS — Design system
================================ */
@layer tokens {
  :where(.ub-v2) {
    --ub-clr-ink: #1E1E1E;
    --ub-clr-bg: #DDDCBC;
    --ub-clr-accent: #FFDB00;
    --ub-clr-brand: #510000;

    --ub-radius: 10px;
    --ub-rail-width: clamp(820px, 60vw, 1200px);
    --ub-gutter: clamp(8px, 2vw, 16px);
    --ub-margin-fluid: 3px;

    --ub-fs-50: clamp(12px, 3.5vw, 14px);
    --ub-fs-100: clamp(14px, 3.2vw, 16px);
    --ub-fs-200: clamp(16px, 3vw, 18px);
    --ub-fs-300: clamp(18px, 2.4vw, 20px);
    --ub-fs-400: clamp(20px, 2.2vw, 24px);
  }
}

/* ================================
   BASE — Global resets & fonts
================================ */
@layer base {
  :where(.ub-v2) {
    font-family: 'GT Pressura Mono', monospace;
    color: var(--ub-clr-ink);
    overflow-x: hidden;
    margin: 0.0rem;
  }

  :where(body.home.ub-v2) img {
    max-width: 100%;
    height: auto;
    display: block;
  }

  :where(.ub-v2) a {
    text-decoration: none;
    color: inherit;
  }
}

/* ================================
   LAYOUT — Page structure
================================ */
@layer layout {
  :where(body.home.ub-v2) .page-content {
    max-width: var(--ub-rail-width);
    box-sizing: border-box;
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    gap: 3px;
    margin-left: auto;
    margin-right: 3px;
  }

  :where(body.home.ub-v2) .underbug-info-stack,
  :where(body.home.ub-v2) .underbug-product-stack {
    display: flex;
    flex-direction: column;
    gap: var(--ub-margin-fluid);
    align-items: flex-end;
  }

  @media (max-width: 1024px) {

    :where(body.home.ub-v2) .underbug-info-stack,
    :where(body.home.ub-v2) .underbug-product-stack {
      align-items: center;
    }

    .footer-container.footer-home,
    .footer-container.footer-archive {
      align-items: center;
    }



    :where(body.home.ub-v2) .underbug-hero-dots {
      position: absolute !important;
      bottom: 10px !important;
      left: 0px !important;
      transform: none !important;
      z-index: 9999 !important;
      display: flex !important;
      gap: 12px !important;
      width: 100% !important;
      justify-content: center !important;
    }

    :where(body.home.ub-v2) .underbug-hero-dot {
      width: 12px !important;
      height: 12px !important;
      border-radius: 50% !important;
      border: 2px solid #DDDCBC !important;

    }

    :where(body.home.ub-v2) .underbug-hero-dot.active {
      transform: scale(1.2) !important;
      transition: all 0.25s ease !important;
      background-color: #1E1E1E;
    }


  }
}

/* ================================
   COMPONENTS — Content blocks
================================ */
@layer components {

  /* ----------------------------
     HERO — Mobile-first
  ---------------------------- */
  @media (max-width: 1199px) {
    :where(body.home.ub-v2) .underbug-hero {
      position: relative;
      width: calc(100% - (var(--ub-margin-fluid) * 2));
      margin: var(--ub-margin-fluid);
      overflow: hidden;
      z-index: 1;
    }

    :where(body.home.ub-v2) .underbug-hero-slider,
    :where(body.home.ub-v2) .underbug-hero-slide {
      position: relative;
      width: 100%;
      height: 100%;
      overflow: visible !important;
    }

    :where(body.home.ub-v2) .underbug-hero-slide {
      display: none;
      justify-content: center;
      align-items: center;

    }

    :where(body.home.ub-v2) .underbug-hero-slide.active {
      display: flex;
    }

    :where(body.home.ub-v2) .underbug-hero-slide img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      border-radius: var(--ub-radius);
    }

    .underbug-hero-slide .underbug-hero-bleed {
      display: none !important;
    }

    .page-content {
      margin-left: 0.188rem;
      margin-right: 0.188rem;
    }
  }

  /* ✅ HERO DOTS — shared */
  :where(body.home.ub-v2) .underbug-hero-dots {
    display: flex;
    gap: 10px;
    z-index: 9999;
  }


  .underbug-hero-slide .underbug-hero-bleed {
    position: absolute;
    top: -1rem;
    right: -24vw;
    width: 25vw;
    height: 104.5vh;
    background-image: var(--bleed-img);
    background-size: cover;
    background-position: center right;
    filter: blur(6px);
    transform: scaleX(-1);
    pointer-events: none;
    z-index: 0;
  }

  /* keep the main image above the bleed layer */
  .underbug-hero-slide picture,
  .underbug-hero-slide img {
    position: relative;
    z-index: 1;
  }


  @media (max-width: 1199px) {
    :where(body.home.ub-v2) .underbug-hero-dots {
      position: absolute;
      bottom: 10px;
      left: 50%;
      transform: translateX(-50%);
    }
  }

  @media (min-width: 1200px) {
    :where(body.home.ub-v2) .underbug-hero-dots {
      position: fixed;
      bottom: 20px;
      left: 20px;
      transform: none;
    }


    :where(body.home.ub-v2) .underbug-hero-dot {
      width: 12px;
      height: 12px;
      border: 2px solid #DDDCBC;
      border-radius: 50%;
      background-color: transparent;
      display: block;
      transition: background-color 0.25s ease;
      cursor: pointer;
    }

    :where(body.home.ub-v2) .underbug-hero-dot.active {
      background-color: #1E1E1E;
    }



    /* ================================
   ARCHIVE / SHOP — DESKTOP
   Responsive grid, portrait images, full-width button
================================ */
    :where(body.archive.woocommerce) {
      background: var(--ub-clr-bg);
      font-family: 'GT Pressura Mono', monospace;

    }

    /* ✅ Product Grid — 3 per row */
    :where(body.archive.woocommerce) ul.products {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 3vw;
      list-style: none;
      margin: 0 auto;
      padding: 0;
      justify-items: center;
    }

    /* ✅ Product Card */
    :where(body.archive.woocommerce) ul.products li.product {
      background: #ffffff00;
      border: none;
      box-shadow: none;
      display: flex;
      flex-direction: column;
      align-items: center;
      text-align: center;
      width: 100%;
      max-width: 23vw;
      /* padding: 1vw 0vw 0vw 0vw; */
      box-sizing: border-box;
      transition: transform 0.25s ease;
      /* margin-bottom: 50px; */

    }


    /* ✅ Product Image — Portrait 3:4 ratio */
    :where(body.archive.woocommerce) ul.products li.product a img {
      width: 100%;
      height: 55.30vh;
      aspect-ratio: 3 / 4;
      object-fit: contain;
      border-radius: var(--ub-radius);
      opacity: 0.7;
    }

    :where(body.archive.woocommerce) ul.products li.product:hover a img {
      opacity: 100%;
      transform: translateY(-0.1vh);
    }

    /* ✅ Title + Price Row */
    :where(body.archive.woocommerce) ul.products li.product .title-price-row {
      display: flex;
      flex-direction: initial;
      justify-content: center;
      align-items: center;
      gap: 2.0vh;
      width: 100%;
      margin-bottom: 2vh;
    }

    :where(body.archive.woocommerce) ul.products li.product .woocommerce-loop-product__title {
      font-size: clamp(0.9rem, 1vw, 1.1rem);
      font-weight: 400;
      text-transform: uppercase;
      color: var(--ub-clr-ink);
      margin: 0;
    }

    :where(body.archive.woocommerce) ul.products li.product .price {
      font-size: clamp(0.9rem, 1vw, 1.1rem);
      font-weight: 400;
      color: var(--ub-clr-ink);
    }

    /* ✅ Full-width Add-to-Cart Button */
    :where(body.archive.woocommerce) ul.products li.product a.button {
      display: block;
      width: 30%;
      border-radius: 50px;
      background: var(--ub-clr-ink);
      color: var(--ub-clr-bg);
      text-transform: uppercase;
      font-size: 16px;
      font-weight: 400;
      letter-spacing: 0.5px;
      text-align: center;
      margin-top: auto;
      transition: background 0.25s ease, transform 0.25s ease;
      padding: 0.5rem 1rem 0.4rem 1rem;

    }

    :where(body.archive.woocommerce) ul.products li.product a.button:hover {
      background: #222;

    }

    /* ✅ Added to cart link (after click) */
    :where(body.archive.woocommerce) a.added_to_cart {
      display: block;
      width: 100%;
      margin-top: 1vh;
      padding: 1vh 0;
      background: var(--ub-clr-accent);
      color: var(--ub-clr-ink);
      border-radius: 50px;
      text-transform: uppercase;
      font-size: clamp(0.8rem, 0.9vw, 1rem);
      text-align: center;
      transition: background 0.25s ease;
    }

    :where(body.archive.woocommerce) a.added_to_cart:hover {
      background: #e0c900;
    }


    /* ----------------------------
     FOOTER — home + archive
  ---------------------------- */
    .underbug-footer {
      font-family: 'GT Pressura Mono', monospace;
      /* color: var(--ub-clr-bg); */
      max-width: var(--ub-rail-width);
      margin-left: 3px;
      margin-right: 3px;
      font-size: var(--ub-fs-50) !important;
      margin-top: 3px;
      margin-bottom: 2px;

    }

    body.archive .underbug-footer {
      margin-top: 25px;
      margin-bottom: 3px;
    }


    body.archive .footer-container.footer-shop-only {
      width: 166%;
      max-width: 170% !important;
    }

    .footer-container.footer-shop-only,
    .footer-container.footer-home,
    .footer-container.footer-shop {
      display: flex;
      flex-direction: column;
      gap: 2px;
      max-width: var(--ub-rail-width);
      align-items: flex-end;
    }

    .footer-container.footer-shop-only>div,
    .footer-container.footer-home>div,
    .footer-container.footer-shop>div {
      background: #222;
      border-radius: var(--ub-radius);
      padding: 20px;
      color: var(--ub-clr-bg);
      display: grid;
      grid-template-columns: 120px 1fr;
      align-items: start;
      gap: 16px;
      width: clamp(320px, 25vw, 477px);
    }

    .footer-container.footer-shop-only h3,
    .footer-container.footer-home h3,
    .footer-container.footer-shop h3 {
      font-size: var(--ub-fs-50);
      color: var(--ub-clr-bg);
      text-align: left;
      margin: 0px;
    }

    .footer-container.footer-shop-only ul,
    .footer-container.footer-home ul,
    .footer-container.footer-shop ul {
      list-style: none;
      margin: 0;
      padding: 0;
      display: flex;
      flex-direction: column;
      gap: 0px;
      align-items: flex-start;
    }

    .footer-container.footer-shop-only li,
    .footer-container.footer-home li,
    .footer-container.footer-shop li {
      margin: 0;
    }

    .footer-container.footer-shop-only a,
    .footer-container.footer-home a,
    .footer-container.footer-shop a {
      color: var(--ub-clr-bg);
      text-decoration: none;
      font-size: var(--ub-fs-50);
      line-height: 1.5;
      transition: color 0.2s ease;
    }

    .footer-container.footer-shop-only a:hover,
    .footer-container.footer-home a:hover,
    .footer-container.footer-shop a:hover {
      color: #ffffff;
    }

    /* Hide logo ONLY on home and single-product page */

    body.home .footer-logo,
    body.single-product .footer-logo {
      display: none !important;
    }

    body.archive .footer-logo {
      background: none;
      padding: 0 !important;
      width: 105% !important;
      margin-bottom: 0 !important;
    }

    /* ✅ Reset all list item margins */
    .footer-pages ul li {
      margin-top: 0;
    }

    /* Small gap between normal items */

    .footer-socials ul li+li {
      margin-top: 6px;
    }

    /* Bigger gap ONLY after every 2nd item (before 3rd, 5th, 7th...) */

    .footer-pages ul li:nth-child(2n + 1):not(:first-child) {
      margin-top: 16px;
    }

    .footer-contact ul li:nth-child(1n + 1):not(:first-child) {
      margin-top: 16px;
    }


    /* ✅ Shop-only footer layout */
    .footer-container.footer-shop-only {
      display: flex;
      flex-direction: row;
      justify-content: space-between;
      width: 100%;
    }

    .footer-container.footer-shop-only>div {
      flex: 1;
      border-radius: var(--ub-radius);
      padding: 20px;
      color: var(--ub-clr-bg);
      display: grid;
      grid-template-columns: 120px 1fr;
      align-items: start;
      width: 24.791vw !important;
    }

    .footer-container.footer-shop-only>.footer-logo {
      order: 4;
      /* 👈 or a high number to push it to the right end */
    }

    .footer-container.footer-shop-only>.footer-pages {
      order: 1;
    }

    .footer-container.footer-shop-only>.footer-contact {
      order: 2;
    }

    .footer-container.footer-shop-only>.footer-socials {
      order: 3;
    }



    /* ✅ Make logo box fixed size */
    .footer-container.footer-shop-only .footer-logo {
      flex: 0 0 280px;
      display: flex;
      align-items: center;
      justify-content: center;

    }

    .footer-container.footer-shop-only .footer-logo img {
      width: 21.5vw !important;
    }


    .footer-container.footer-shop-only .footer-pages {
      width: 24.791vw !important;
    }

    .footer-container.footer-shop-only .footer-contact {
      width: 24.791vw !important;
    }

    .footer-container.footer-shop-only .footer-socials {
      width: 24.791vw !important;
    }

  }


  /* ----------------------------
     INFO BOXES
  ---------------------------- */
  :where(body.home.ub-v2) .info-box {
    padding: 30px 30px 20px 30px;
    border-radius: var(--ub-radius);
    background: #fff;
    box-sizing: border-box;
    color: var(--ub-clr-ink);
    text-transform: uppercase;
    font-size: var(--ub-fs-200);
    width: 100%;
  }

  :where(body.home.ub-v2) .info-box.yellow {
    background-color: var(--ub-clr-accent);
    color: var(--ub-clr-brand);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 8px;
  }

  :where(body.home.ub-v2) .info-box.yellow h3 {
    font-size: var(--ub-fs-300);
    margin: 0 0 50px;
    font-weight: 400;
  }

  :where(body.home.ub-v2) .info-box.yellow p {
    font-size: var(--ub-fs-100);
    line-height: 1.4;
    margin: 0;
    text-transform: none;
    font-weight: 400;
  }

  :where(body.home.ub-v2) .info-box.yellow a {
    color: var(--ub-clr-accent);
  }

  :where(body.home.ub-v2) .info-box.green {
    background-color: #DDDCBC;
    color: #006100;
    font-size: var(--ub-fs-400);
    line-height: 1.4rem;
    font-weight: 400;
  }

  :where(body.home.ub-v2) .info-box.logo-box {
    background: none;
    border: 0;
    padding: 0rem;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  :where(body.home.ub-v2) .info-box.logo-box img {
    width: 100%;
    object-fit: contain;
  }

  /* ----------------------------
     PRODUCT BOXES (Home)
  ---------------------------- */
  :where(body.home.ub-v2) .product-box {
    padding: 20px;
    border-radius: var(--ub-radius);
    display: flex;
    flex-direction: column;
    gap: 20px;
    text-align: left;
    min-height: 360px;
    box-sizing: border-box;
    width: 100%;
  }


  :where(body.home.ub-v2) .product-box img {
    border-radius: var(--ub-radius);
    width: 100%;
    margin: 0 auto;
    display: block;
  }

  :where(body.home.ub-v2) .product-box h3 {
    font-size: var(--ub-fs-200);
    margin: 0rem 0 2rem 0;
    text-transform: uppercase;
  }

  :where(body.home.ub-v2) .product-box p {
    font-size: var(--ub-fs-100);
    line-height: 1.5;
    margin: 0;
  }

  .ub-v2 .btn,
  :where(body.home.ub-v2) .product-box .button {
    display: inline-block;
    margin-top: 2rem;
    align-self: flex-start;
    background: var(--ub-clr-brand);
    color: white;
    padding: 0.5rem 1rem 0.3rem 1rem;
    border-radius: 20px;
    font-size: 1rem;
    font-weight: 400;
    letter-spacing: 0.5px;
    text-align: center;
    text-transform: uppercase;

  }

  .ub-v2 .btn:hover,
  :where(body.home.ub-v2) .product-box .button:hover {
    background: var(--ub-clr-brand);
  }

  /* ----------------------------
     SHOP / ARCHIVE — mobile only
  ---------------------------- */
  @media (max-width: 1024px) {

    body.archive.woocommerce,
    body.single-product {
      background-color: #DDDCBC;
      font-family: 'GT Pressura Mono', monospace !important;
    }

    .woocommerce ul.products {
      display: grid;
      grid-template-columns: 1fr;
      gap: 100px;
      margin: 0 auto 40px;
      padding: 0;
      list-style: none;
      max-width: 100%;
      box-sizing: border-box;
      justify-items: center;
    }

    .woocommerce ul.products li.product {
      background: none;
      border: none;
      box-shadow: none;
      text-align: center;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      margin: 0 auto;
      box-sizing: border-box;
      width: 100%;
      max-width: 420px;
    }

    .woocommerce ul.products li.product a img {
      width: 100%;
      max-width: 200px;
      height: auto;
      object-fit: contain;
      margin: 0 auto;
      border-radius: 10px;
      /* opacity: 0.7; */
      transition: opacity 0.3s;
    }

    .woocommerce ul.products li.product:hover a img {
      opacity: 1;
    }

    .woocommerce ul.products li.product .title-price-row {
      display: flex;
      justify-content: center;
      align-items: center;
      gap: 12px;
      width: 100%;
      margin-top: 0.5rem;
    }

    .woocommerce ul.products li.product .product-title-wrap {
      flex: 0 0 auto;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;


    }

    .woocommerce ul.products li.product .woocommerce-loop-product__title {
      font-size: 16px !important;
      font-weight: 400;
      text-transform: uppercase;
      color: var(--ub-clr-ink);
      margin: 0;
      text-align: center;
    }

    .woocommerce ul.products li.product .product-price-wrap {
      flex: 0 0 auto;
      white-space: nowrap;
    }

    .woocommerce ul.products li.product .price {
      font-size: 16px !important;
      font-weight: 400;
      color: var(--ub-clr-ink);
      margin: 0;
    }

    body.single-product .single_add_to_cart_button,
    .woocommerce ul.products li.product a.button {
      display: inline-block;
      background: var(--ub-clr-ink);
      color: var(--ub-clr-bg);
      border-radius: 15px;
      font-size: 14px;
      font-weight: 400;
      letter-spacing: 0.5px;
      text-transform: uppercase;
      text-align: center;
      transition: background 0.25s ease;
      line-height: 100%;
      padding: 0.5rem 0.7rem 0.5rem 0.7rem;
      border: none !important;
      text-align: center;
    }



    .woocommerce ul.products li.product a.button:hover {
      background: #222;
    }

    :where(body.archive.woocommerce) a.added_to_cart {
      display: inline-block !important;
      margin-left: 0.5rem;
      background: var(--ub-clr-accent);
      color: var(--ub-clr-ink);
      border-radius: 20px;
      padding: 0.35rem 0.9rem;
      font-size: var(--ub-fs-100);
      text-transform: uppercase;
    }

    :where(body.archive.woocommerce) .add-to-cart-wrap,
    .ub-v2 .add-to-cart-wrap {
      display: flex;
      justify-content: center;
      align-items: center;
      gap: 8px;
      margin-top: 0.8rem;
      width: 100%;
    }
  }

  @media (max-width: 1024px) {

    :where(body.home.ub-v2) .underbug-hero-dots {
      position: fixed;
      bottom: 20px;
      left: 20px;
      transform: none;
    }


    :where(body.home.ub-v2) .underbug-hero-dot {
      width: 12px;
      height: 12px;
      border: 2px solid #DDDCBC;
      border-radius: 50%;
      background-color: transparent;
      display: block;
      transition: background-color 0.25s ease;
      cursor: pointer;
    }

    :where(body.home.ub-v2) .underbug-hero-dot.active {
      background-color: #1E1E1E;
    }

    /* Footer wrapper */
    body.home .underbug-footer {
      background: transparent;
      max-width: 100%;
      margin: 0 0 3px 0;
      padding: 0;
    }

    body.archive.woocommerce .underbug-footer {
      margin: 100px 0 3px 0;
      align-items: center;
      max-width: 100%;
      padding: 0;
    }

    /* ✅ Full-width footer container */
    .underbug-footer {
      display: flex;
      justify-content: center;
      align-items: center;
      width: 100%;
      padding: 0;
    }

    /* ✅ Responsive footer container */
    .footer-container {
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      gap: 2px;
      width: 100%;
      max-width: 100%;
      margin: 0 auto;
      padding: 0 var(--ub-margin-fluid);
      box-sizing: border-box;
      font-size: var(--ub-fs-50) !important;

    }

    /* Footer boxes */
    .footer-container .footer-contact,
    .footer-container .footer-pages,
    .footer-container .footer-socials {
      padding: 22px !important;
      width: 100%;
    }

    /* ✅ Full-width boxes with screen-aligned margin */
    .footer-container>div {
      background: #222;
      border-radius: var(--ub-radius);
      color: var(--ub-clr-bg);
      display: grid;
      grid-template-columns: 120px 1fr;
      align-items: start;
      justify-content: center;
      width: 100%;
      /* 👈 full width */
      margin: 0 auto;
      text-align: left;
      box-sizing: border-box;

    }

    .footer-container h3 {
      font-size: var(--ub-fs-50);
      margin-bottom: 10px;
      text-align: left;
    }

    .footer-container ul {
      list-style: none;
      margin: 0;
      padding: 0;
      display: flex;
      flex-direction: column;
      gap: 0px;
      align-items: flex-start;
    }

    .footer-logo {
      display: flex;
      justify-content: center;
      padding: 0;
      background: none !important;
      width: 100% !important;
      grid-template-columns: none !important;
    }

    .footer-logo img {
      width: 100%;
      /* 👈 responsive image */
      max-width: 100%;
      /* 👈 always scale */
      height: auto;
      margin: 3px 0 0 0;
    }



  }




  @media (max-width: 1024px) {

    .underbug-single-product-grid {
      margin-top: -45px;

    }

    /* Outer wrapper */
    .underbug-product-slider {
      position: relative;
      width: 99vw;
      margin: 0 auto;
      background: #DDDCBC;
      border-radius: 10px;
      overflow: hidden;
      box-shadow: 0 2px 12px rgba(0, 0, 0, 0.04);
      min-height: 320px;
    }

    /* Track — remove flex */
    .underbug-product-slider-track {
      width: 100%;
      height: auto;
      cursor: grab;
    }



    .underbug-product-slider-track.is-draggable {
      cursor: grab;
    }

    /* Slides */
    .underbug-product-slide {
      width: 100%;
      display: block;
      background: #bcbba0;
    }

    /* Image */
    .underbug-product-slider-img {
      width: 100%;
      height: auto;
      display: block;
      object-fit: contain;
      margin-left: 2px;
      /* margin-right: 2px; */
      border-radius: 10px;
    }

    /* ✅ Style Flickity dots */
    /* ✅ Now the dots will position correctly inside */
    .flickity-page-dots {
      position: absolute !important;
      bottom: 14px !important;
      left: 50% !important;
      transform: translateX(-50%) !important;
      display: flex !important;
      justify-content: center;
      z-index: 20;
      padding: 0;
      margin: 0;
    }


    .flickity-page-dots .dot {
      width: 10px;
      height: 10px;
      border-radius: 50%;
      background: #1E1E1E;
      /* 👈 visible but subtle */
      border: 2px solid #DDDCBC;
      /* 👈 matches background tone */
      cursor: pointer;
      transition: background 0.3s ease, transform 0.3s ease;

    }

    .flickity-page-dots .dot.is-selected {
      background: #1E1E1E;
      /* 👈 selected state visible */
      transform: scale(1.15);
    }

    /* ✅ Hide Flickity prev/next arrows on mobile */
    .flickity-button {
      display: none !important;
      visibility: hidden !important;
      opacity: 0 !important;
      pointer-events: none !important;
    }



  }

  /* ----------------------------
     SHOP / ARCHIVE — mobile only product title + price row 
  ---------------------------- */
  @media (max-width: 1024px) {

    .ub-title-price-row {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 12px 0;
      border-bottom: 1px solid #1E1E1E;
      /* 👈 light separator below */
      padding-bottom: 50px !important;

    }

    .ub-product-title {
      font-size: 16px;
      font-weight: 400;
      text-transform: uppercase;
      margin: 0;
    }

    .ub-product-price {
      font-size: 16px;
      font-weight: 400;
      color: var(--ub-clr-ink);
    }


    .underbug-product-details {
      padding: 3px 3px 3px 3px;
    }

    .underbug-product-details>div {
      padding: 23px 20px 0px 20px;

    }


    body.single-product .single_add_to_cart_button {
      margin: 20px 20px 20px 20px !important;
    }

    body.single-product footer.underbug-footer,
    body.single-product footer.underbug-footer .footer-container {
      padding: 50px 0px 0px 0px !important;
      margin-top: 0 !important;
    }



    .product-info-section {
      border-bottom: 1px solid #1E1E1E;
      padding: 16px 0;
    }

    .toggle-header {
      display: flex;
      justify-content: space-between;
      align-items: center;
      font-size: 14px;
      font-weight: 400;
      text-transform: uppercase;
      margin-bottom: 8px;
      cursor: pointer;
    }



    .underbug-product-details .cart {
      margin-top: 10px;
    }


    .product-info-section .toggle-header {
      font-size: 14px;
      font-weight: 400;
      text-transform: uppercase;
      margin-bottom: 20px;
      cursor: pointer;
      display: flex;
      justify-content: space-between;
      align-items: center;
    }


    .product-info-section .toggle-content p,
    .product-info-section .toggle-content a {
      display: inline;
      word-break: keep-all;
      /* overflow-wrap: break-word; */
      max-width: 100%;
    }

    .product-info-section .toggle-content p {
      display: block;
      word-break: normal;
      overflow-wrap: normal;
      max-width: 100%;
      white-space: normal;
      margin: 0 0 1rem 0;
      letter-spacing: 0.3px;
    }
  }

  /* ----------------------------
     SHOP / ARCHIVE — mobile only product info section 
  ---------------------------- */
  @media (max-width: 1024px) {




    /* ----------------------------
   SHOP HEADER
---------------------------- */

    :where(body.archive.woocommerce) .shop-header,
    :where(body.single-product.woocommerce) .shop-header {
      background: var(--ub-clr-bg);
      padding: 12px 20px;
      font-family: 'GT Pressura Mono', monospace;
      position: relative;
      z-index: 1001;
    }

    :where(body.single-product.woocommerce) .shop-header {
      background: transparent !important;
    }



    :where(body.archive.woocommerce) .shop-header-container,
    :where(body.single-product.woocommerce) .shop-header-container {
      display: flex;
      justify-content: space-between;
      align-items: center;
      max-width: var(--ub-rail-width);
      margin: 0 auto;
    }

    :where(body.archive.woocommerce) .basket-group,
    :where(body.single-product.woocommerce) .basket-group {
      display: flex;
      align-items: center;
      gap: 10px;
      /* 👈 this is where the spacing lives */


    }

    :where(body.archive.woocommerce) .shop-home-button,
    :where(body.archive.woocommerce) .shop-basket-button,
    :where(body.single-product.woocommerce) .shop-home-button,
    :where(body.single-product.woocommerce) .shop-basket-button {

      color: #1E1E1E;
      padding: 6px 0px;
      text-transform: uppercase;
      letter-spacing: 0.5px;
      cursor: pointer;
      background: none;
      border: none;
      font-size: 14px;
      font-weight: 400;
      font-family: 'GT Pressura Mono', monospace;
      line-height: 1;
    }

    :where(body.archive.woocommerce) .cart-count,
    :where(body.single-product.woocommerce) .cart-count {
      color: var(--ub-clr-ink);
      width: 26px;
      height: 26px;
      display: flex;
      justify-content: center;
      align-items: center;
      font-size: 14px;
      font-weight: 400;
    }


  }

  /* ----------------------------
     HIDE PEACHPAY BUTTON         
  ---------------------------- */
  #peachpay-floating-button-container {
    display: none !important;
  }

}

/* ================================
   UTILITIES
================================ */
@layer utilities {
  :where(.ub-v2) .u-hide {
    display: none !important;
  }
}

/* ================================
   DESKTOP (≥1200px)
================================ */
@layer desktop {
  @media (min-width: 1200px) {
    :where(body.home.ub-v2) .underbug-hero {
      position: fixed;
      width: 80vw;
      max-width: 100vw;
      height: 85.55vh;
      min-height: min(868px, 90vh);

      z-index: 1;

    }

    :where(body.home.ub-v2) .underbug-hero-slide {
      display: none;
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      justify-content: center;
      align-items: center;
    }

    :where(body.home.ub-v2) .underbug-hero-slide.active {
      display: flex;
    }

    :where(body.home.ub-v2) .info-box.green {
      width: clamp(300px, 22vw, 427px);

    }

    :where(body.home.ub-v2) .info-box.yellow {
      width: clamp(320px, 25vw, 477px);
    }

    :where(body.home.ub-v2) .info-box.logo-box {
      width: clamp(300px, 20vw, 427px);
    }

    :where(body.home.ub-v2) .product-box.small {
      width: clamp(280px, 20vw, 377px);
    }

    :where(body.home.ub-v2) .product-box.medium {
      width: clamp(300px, 23vw, 427px);
    }

    :where(body.home.ub-v2) .product-box.large {
      width: clamp(340px, 28vw, 477px);
    }

    .woocommerce.ub-v2 ul.products {
      grid-template-columns: repeat(3, 1fr) !important;
      gap: 20px !important;
      margin-top: 10px;
      margin-bottom: 100px;
    }

    .footer-container.footer-home>div,
    .footer-container.footer-shop>div {
      width: clamp(320px, 25vw, 477px);
    }

    /* ✅ Ensure home footer overlays hero only on desktop
       AND aligns to the right */
    body.home.ub-v2 .underbug-footer {
      position: relative;
      z-index: 5;
      margin-left: auto;
      margin-right: 3px;

    }

    body.home.ub-v2 .underbug-hero {
      z-index: 1;
    }


    /* ----------------------------
   SHOP HEADER
---------------------------- */

    :where(body.archive.woocommerce) .shop-header,
    :where(body.single-product.woocommerce) .shop-header {
      background: var(--ub-clr-bg);
      padding: 12px 20px;
      font-family: 'GT Pressura Mono', monospace;
      /* position: relative; */
      z-index: 1001;

    }

    :where(body.single-product.woocommerce) .shop-header {
      background: transparent !important;
      position: fixed !important;
      top: 0 !important;
      left: 0;
      width: 98%;
      z-index: 9999;
    }



    :where(body.archive.woocommerce) .shop-header-container,
    :where(body.single-product.woocommerce) .shop-header-container {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin: 0 auto;
    }

    :where(body.archive.woocommerce) .basket-group,
    :where(body.single-product.woocommerce) .basket-group {
      display: flex;
      align-items: center;
      gap: 10px;



    }

    :where(body.archive.woocommerce) .shop-home-button,
    :where(body.archive.woocommerce) .shop-basket-button,
    :where(body.single-product.woocommerce) .shop-home-button,
    :where(body.single-product.woocommerce) .shop-basket-button {

      color: #1E1E1E;
      padding: 6px 0px;
      text-transform: uppercase;
      letter-spacing: 0.5px;
      cursor: pointer;
      background: none;
      border: none;
      font-size: 16px;
      font-weight: 400;
      font-family: 'GT Pressura Mono', monospace;
      line-height: 1;
    }

    :where(body.archive.woocommerce) .cart-count,
    :where(body.single-product.woocommerce) .cart-count {
      color: var(--ub-clr-ink);
      width: 26px;
      height: 26px;
      display: flex;
      justify-content: center;
      align-items: center;
      font-size: 16px;
      font-weight: 400;
    }

  }


  @media (min-width: 1200px) {

    /* ✅ Layout: Grid with sticky slider */
    .underbug-single-product-grid {
      display: grid;
      grid-template-columns: 69vw 1fr;
      margin-top: -52px;
      align-items: start;
      background: #DDDCBC;
      overflow: visible;
    }

    /* ✅ Left: Slider column pinned */
    .underbug-product-gallery {
      position: sticky;
      top: 0;
      height: 100vh;
      /* full viewport height */
      display: flex;
      align-items: center;
      justify-content: center;
      overflow: hidden;
      will-change: transform;
      backface-visibility: hidden;
    }

    /* ✅ Slider container */
    .underbug-product-slider {
      width: 69vw;
      max-width: 69vw;
      height: 99.8vh;
      border-radius: 10px;
      background: #DDDCBC;
      overflow: hidden;
      padding: 0 0.05vw;

    }

    .underbug-product-slider-track {
      transition: transform 1.2s cubic-bezier(.4, 0, .2, 1);
    }

    .underbug-product-slide {
      width: 40vw;
      aspect-ratio: 764 / 1074;
      display: flex;
      align-items: center;
      justify-content: space-between;
      border-radius: 10px;
      overflow: hidden;
      background: transparent;
      height: 99.8vh;
      padding: 0 0.1vw;
    }

    .underbug-product-slider-img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
      display: block;
      border-radius: 10px;
    }

    /* ✅ Right: Product details scrollable */
    .underbug-product-details {
      width: 100%;
      max-width: 28vw;
      min-height: 100vh;
      padding: 80px 20px 3px 30px;
      overflow: visible;
    }

    /* ✅ Title + price row */
    .ub-title-price-row {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 30px 0px 30px 0px;
      border-bottom: 1px solid #1E1E1E;
      width: 530px;
      font-size: 24px !important;
    }

    .ub-product-title {
      font-size: 24px;
      font-weight: 400;
      text-transform: uppercase;
      margin-left: 10px;
    }

    .ub-product-price {
      font-size: 24px;
      font-weight: 400;
      color: var(--ub-clr-ink);
      margin-right: 30px;
    }

    /* ✅ Product sections */
    .product-info-section {
      border-bottom: 1px solid #1E1E1E;
      padding: 20px 0;
    }

    /* ✅ Toggle header + icon */
    .toggle-header {
      display: flex;
      justify-content: space-between;
      align-items: center;
      font-size: 16px;
      font-weight: 400;
      text-transform: uppercase;
      cursor: pointer;
      width: 27.604vw;

    }

    .toggle-icon {
      font-size: 20px;
      transition: transform 0.3s ease;
    }

    .product-info-section.open .toggle-icon {
      transform: rotate(180deg);
    }



    .product-info-section .toggle-content p,
    .product-info-section .toggle-content a {
      display: inline;
      word-break: normal;
      max-width: 100%;
    }

    .product-info-section .toggle-content p {
      display: block;
      white-space: normal;
      margin: 1.5rem 0 1rem 0;
      letter-spacing: 0.3px;
    }

    /* ✅ Add-to-cart button spacing */
    .underbug-product-details .cart {
      margin-top: 20px;
    }



    .flickity-page-dots .dot.is-selected {
      background: var(--ub-clr-ink);
    }

    /* ✅ Footer cleanup */
    body.single-product .underbug-footer {
      padding: 150px 0px 0px 0px !important;
      margin: 0 !important;
      display: flex;
      justify-content: center;
    }

    body.single-product .footer-container.footer-home>div {
      padding: 39px !important;
      display: grid;


    }


    body.single-product .single_add_to_cart_button {
      display: block;
      width: 30%;
      border-radius: 50px;
      background: var(--ub-clr-ink);
      color: var(--ub-clr-bg);
      text-transform: uppercase;
      font-size: 16px;
      font-weight: 400;
      letter-spacing: 0.5px;
      text-align: center;
      margin-top: auto;
      transition: background 0.25s ease, transform 0.25s ease;
      padding: 0.5rem 1rem 0.4rem 1rem;
      border: none !important;
      cursor: pointer;

    }




  }


  /* @media (min-width:1200px) {


    .underbug-checkout-bg {
      position: centered;
      top: 0;
    }

 
    .underbug-checkout-container {
      max-width: 1090px;
      margin: 0 auto;

      font-family: 'GT Pressura Mono', monospace;
      display: flex;
      justify-content: center;
    }

    .underbug-checkout-grid {
      display: flex;
      justify-content: center;
      align-items: flex-start;
      gap: 32px;
      width: fit-content;
    }

    .checkout-section.checkout-box.checkout-col.checkout-col-right {
      width: 600px;
      flex-shrink: 0;
      border: 1px solid rgba(0, 0, 0, .1);
      border-radius: 10px;
      padding: 30px;
      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
      background-color: #DDDCBC;
      box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    }

    .checkout-col-left {
      margin-left: auto;
      margin-right: auto;
      max-width: 400px;
      width: 100%;
      border: 1px solid rgba(0, 0, 0, .1);
      border-radius: 10px;
      padding: 15px 30px 10px 30px;
      box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
      background-color: #DDDCBC;
      margin-bottom: 3px;
    }

    .checkout-col-left .form-row {
      width: 100%;
      max-width: 400px;
      margin-left: auto;
      margin-right: auto;
      box-sizing: border-box;
    }

    .checkout-col-left input,
    .checkout-col-left select,
    .checkout-col-left textarea {
      background: #DDDCBC !important;
    }

    .checkout-col-left h3,
    .checkout-col-left h2,
    .checkout-col-left .woocommerce-billing-fields>h3,
    .checkout-col-left .woocommerce-billing-fields>h2 {
      font-weight: 400;
    }

    .underbug-checkout-header {

      padding: 10px 1vw;


      position: relative;
      z-index: 10;
    }

   
    .underbug-checkout-header .shop-home-button {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      font-family: 'GT Pressura Mono', monospace;
      font-size: 14px;
      text-transform: uppercase;
      letter-spacing: 0.5px;
      background: transparent;

      color: #1E1E1E;
      padding: 10px 10px;
      border-radius: 50px;
      cursor: pointer;
      transition: all 0.3s ease;
      text-decoration: none;
    }




    
    body.woocommerce-checkout {
      background-color: #DDDCBC !important;
    }


    .woocommerce-checkout input[type="text"],
    .woocommerce-checkout input[type="email"],
    .woocommerce-checkout input[type="tel"],
    .woocommerce-checkout input[type="password"],
    .woocommerce-checkout select,
    .woocommerce-checkout textarea {
      width: 100%;
      max-width: 100%;
      min-width: 0;
      box-sizing: border-box;
      background: #DDDCBC;
      border: 1px solid rgba(0, 0, 0, .1);
      border-radius: 8px;
      padding: 12px 15px;
      font-family: 'GT Pressura Mono', monospace;
      font-size: 14px;
      color: #1E1E1E;
      transition: border-color 0.3s ease;
    }

    .woocommerce-checkout input[type="text"]:focus,
    .woocommerce-checkout input[type="email"]:focus,
    .woocommerce-checkout input[type="tel"]:focus,
    .woocommerce-checkout input[type="password"]:focus,
    .woocommerce-checkout select:focus,
    .woocommerce-checkout textarea:focus {
      outline: none;
      border-color: #1E1E1E;
      box-shadow: 0 0 5px rgba(30, 30, 30, 0.2);
    }

    .woocommerce-checkout label {
      font-family: 'GT Pressura Mono', monospace;
      font-size: 14px;
      font-weight: 400;
      color: #1E1E1E;
      text-transform: uppercase;
      display: block;
    }

    .woocommerce-checkout .form-row {
      margin-bottom: 20px;
    }

    #billing_first_name_field {
      width: 60%;
      float: left;
      box-sizing: border-box;
    }

    #billing_last_name_field {
      width: 38%;
      float: right;
      box-sizing: border-box;
    }

    #billing_address_1 {
      max-width: 350px;
    }

    #billing_address_1_field,
    #billing_postcode_field {
      display: inline-block;
      vertical-align: top;
      width: 48%;
      min-width: 400px;
      box-sizing: border-box;
    }

    #billing_address_1_field {
      margin-right: 4%;
    }

    #billing_address_1,
    #billing_postcode {
      max-width: 100%;
      width: 100%;
      min-width: 0;
      box-sizing: border-box;
    }

    #billing_country {
      max-width: 350px;
      width: 100%;
      min-width: 0;
      box-sizing: border-box;
    }

    #billing_country_field .select2-container {
      max-width: 400px !important;
      width: 400px !important;
      min-width: 0 !important;
      box-sizing: border-box;
    }

    #billing_country_field {
      max-width: 350px;
      width: 100%;
    }

    #billing_address_1_field,
    #billing_country_field {
      display: inline-block;
      width: 48%;
      min-width: 400px;
      box-sizing: border-box;
      vertical-align: top;
    }

    #billing_country_field {
      margin-right: 4%;
    }

    #billing_address_2_field {
      display: block;
      width: 100%;
      box-sizing: border-box;
      clear: both;
      margin-top: 0;
    }

    #order_comments {
      width: 100%;
      min-width: 0;
      max-width: 100%;
      height: 100px;
      resize: none;
      box-sizing: border-box;
    }

    
    .woocommerce-checkout-review-order-table {
      border-radius: 10px;
      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
      margin-bottom: 20px;
    }

    .woocommerce-checkout-review-order-table .product-thumbnail {
      display: table-cell !important;
      width: 60px;
      vertical-align: middle;
      padding-right: 10px;
    }

    .woocommerce-checkout-review-order-table .product-thumbnail img {
      width: 48px;
      height: auto;
      border-radius: 6px;
      display: block;
    }

    .woocommerce-checkout-review-order-table th,
    .woocommerce-checkout-review-order-table td {
      vertical-align: middle;
      padding: 10px 8px;
      text-align: left;
    }

    .woocommerce-checkout-review-order-table .product-name,
    .woocommerce-checkout-review-order-table th.product-name {
      text-align: left;
    }

    .woocommerce-checkout-review-order-table .product-total {
      text-align: right;
      font-size: 13px !important;
    }

    .woocommerce-checkout-review-order-table tfoot td {
      text-align: right;
    }

    .woocommerce-checkout-review-order-table th,
    .woocommerce-checkout-review-order-table td,
    .woocommerce-checkout-review-order-table strong {
      font-weight: 400 !important;
    }

    .woocommerce-checkout-review-order-table .shipping * {
      font-weight: 400 !important;
      font-size: 13px !important;
    }

    .woocommerce-checkout-review-order-table tfoot th.cart-subtotal {
      display: none;
    }

    .woocommerce-checkout-review-order-table thead th.product-total {
      display: none;
    }

    .underbug-checkout-bg .underbug-footer {
      display: none;
    }

    .woocommerce-checkout-payment ul {
      list-style: none;
    }

    .shop_table.woocommerce-checkout-review-order-table {
      width: 600px;
    }

    .underbug-checkout-grid .button.alt {
      display: block;
      width: 100%;
      border-radius: 50px;
      background: var(--ub-clr-ink);
      color: var(--ub-clr-bg);
      text-transform: uppercase;
      font-size: 16px;
      font-weight: 400;
      letter-spacing: 0.5px;
      text-align: center;
      margin-top: auto;
      transition: background 0.25s ease, transform 0.25s ease;
      padding: 0.5rem 1rem 0.4rem 1rem;
      border: none !important;
      cursor: pointer;
    }
    .woocommerce-shipping-totals.shipping ul {
      list-style: none;
      
    }

 .select2-container--default .select2-selection--single{
      background: #DDDCBC;
    }
      .woocommerce-privacy-policy-text{
      font-size: 12px !important;
      }

  } */



/* =========================================
   CLEAN CHECKOUT LAYOUT – responsive (≤1200)
   ========================================= */
@media (max-width: 1200px) {
  .ub-checkout-page {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    padding: 4rem 2vw;
    background: var(--ub-bg, #f8f9fb);
  }

  .ub-container {
    max-width: 80%;
    width: 100%;
    background: var(--ub-white, #fff);
    border-radius: 1.2rem;
    box-shadow: 0 0.4rem 1.2rem rgba(0, 0, 0, 0.05);
    padding: 3rem 4vw;
  }

  .ub-checkout-title {
    text-align: center;
    font-size: 1.8rem;
    line-height: 1.4;
    margin-bottom: 2.5rem;
    color: var(--ub-dark, #111);
  }

  .ub-columns {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
  }

  /* Collapse to single column on smaller viewports */
  @media (max-width: 768px) {
    .ub-columns {
      grid-template-columns: 1fr;
      gap: 2rem;
    }
  }

  .ub-section-title {
    font-size: 1.4rem;
    font-weight: 600;
    margin-bottom: 1.2rem;
    color: var(--ub-dark, #222);
    border-bottom: 0.15rem solid var(--ub-light-border, #eee);
    padding-bottom: 0.6rem;
  }

  .ub-payment {
    margin-top: 3rem;
  }

  /* Clean payment method area */
  .ub-payment-methods ul.payment_methods {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    gap: 1.2rem;
  }

  .ub-payment-methods li {
    background: var(--ub-light, #f6f7f9);
    border-radius: 0.8rem;
    padding: 1rem 1.5rem;
    transition: background 0.2s ease;
  }

  .ub-payment-methods li:hover {
    background: var(--ub-hover, #eef0f2);
  }

  .ub-place-order {
    text-align: center;
    margin-top: 3rem;
  }

  .ub-place-order .button.alt {
    background: var(--ub-dark, #111);
    color: var(--ub-white, #fff);
    padding: 1rem 2.2rem;
    font-size: 1rem;
    font-weight: 500;
    border-radius: 0.6rem;
    border: none;
    cursor: pointer;
    transition: background 0.25s ease;
  }

  .ub-place-order .button.alt:hover {
    background: var(--ub-darker, #333);
  }
}



  @media (min-width: 1200px) {
    .flickity-page-dots {
      position: absolute !important;
      bottom: 20px !important;
      left: 2vw !important;
      transform: none !important;
      display: flex !important;
      justify-content: flex-start !important;
      align-items: center !important;
      width: auto !important;
      margin: 0 !important;
      padding: 0 !important;
      text-align: left !important;
      z-index: 50 !important;
    }

    .flickity-page-dots .dot {
      width: 12px !important;
      height: 12px !important;
      border-radius: 50% !important;
      background: #1E1E1E !important;
      border: 2px solid #DDDCBC !important;
      cursor: pointer !important;
      transition: background 0.3s ease, transform 0.3s ease !important;
    }

    .flickity-page-dots .dot.is-selected {
      background: #1E1E1E !important;
      transform: scale(1.15) !important;
    }


   
  }
.woofc-action-left,
.woofc-action-cart {
  display: none !important;
}

.woofc-area.woofc-style-02 .woofc-area-bot .woofc-action .woofc-action-inner > div {  width: 100% !important; }



  /* ================================
   Accordion / Toggle Global Styles
================================ */
  .toggle-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.5s ease;
  }

  .product-info-section.open .toggle-content {
    max-height: 2000px;
    /* Enough space for any text */
  }


}








/* ================================
   WOOCOMMERCE MINI CART FIX
================================ */
@layer woocommerce {

  .woocommerce-mini-cart.active,
  .widget_shopping_cart_content.active,
  .site-header-cart:hover .woocommerce-mini-cart,
  .site-header-cart:hover .widget_shopping_cart_content {
    display: block;
  }



}