.jm-shop{
    width:100%;
    max-width:100%;
    margin:0;
    overflow-x:clip;
    background:#E5E0D3;
    color:#0A2819;
    font-family:Inter,sans-serif;
  }

  .jm-shop__hero{
    width:100%;
    overflow:hidden;
    background:#E5E0D3;
    position:relative;
  }

  .jm-shop__hero-title{
    display:none;
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
    margin:0;
    font-family:Jomolhari,serif;
    font-size:24px;
    font-weight:200;
    line-height:36px;
    color:#F5EEE2;
    text-align:center;
    pointer-events:none;
  }

  .jm-shop__hero-img{
    display:block;
    width:100%;
    height:clamp(220px,30vw,434px);
    object-fit:cover;
    object-position:center;
  }

  .jm-shop__layout{
    display:grid;
    grid-template-columns:minmax(240px,360px) minmax(0,1fr);
    max-width:1440px;
    margin:0 auto;
    align-items:stretch;
  }

  .jm-shop__sidebar{
    background:#E5E0D3;
    padding:clamp(48px,5.6vw,80px) clamp(24px,2.8vw,40px) clamp(48px,5.6vw,80px) clamp(24px,5.6vw,80px);
  }

  .jm-shop__categories-title{
    margin:0 0 clamp(32px,4vw,56px);
    font-family:Inter,sans-serif;
    font-size:clamp(24px,2.1vw,30px);
    font-weight:400;
    line-height:1.2;
    color:#0A2819;
    text-align:left;
  }

  .jm-shop__categories{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:clamp(14px,1.4vw,18px);
    margin:0 0 clamp(40px,4.5vw,64px);
    padding:0;
    list-style:none;
  }

  .jm-shop__category{
    position:relative;
    display:inline-block;
    font-size:clamp(16px,1.4vw,20px);
    font-weight:200;
    line-height:1.4;
    color:#737373;
    text-decoration:none;
    text-align:left;
    transition:color .2s;
  }

  .jm-shop__category:hover{color:#44403C}

  .jm-shop__category.is-active{
    color:#44403C;
    padding-bottom:10px;
  }

  .jm-shop__category.is-active::after{
    content:"";
    position:absolute;
    left:0;
    bottom:0;
    width:100%;
    height:1px;
    background:#44403C;
  }

  .jm-shop__category-item{
    display:block;
  }

  .jm-shop__category-clear{
    display:none;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    width:16px;
    height:16px;
    color:#F5EEE2;
    text-decoration:none;
    font-size:14px;
    line-height:1;
  }

  .jm-shop__filter-open{
    position:absolute;
    width:1px;
    height:1px;
    padding:0;
    margin:-1px;
    overflow:hidden;
    clip:rect(0,0,0,0);
    white-space:nowrap;
    border:0;
  }

  .jm-shop__toolbar-mobile{
    display:none;
    align-items:center;
    gap:8px;
    margin-bottom:12px;
  }

  .jm-shop__filter-btn{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    width:26px;
    height:26px;
    border-radius:8px;
    background:#DDD0BD;
    color:#0A2819;
    cursor:pointer;
    line-height:0;
  }

  .jm-shop__filter-btn svg{
    display:block;
    width:10px;
    height:10px;
  }

  .jm-shop__search-desktop{
    flex-shrink:0;
  }

  .jm-shop__filter{
    width:min(100%,208px);
    min-height:320px;
    padding:20px;
    border-radius:12px;
    background:#DDD0BD;
    box-sizing:border-box;
  }

  .jm-shop__filter-title{
    margin:0 0 16px;
    font-size:clamp(16px,1.4vw,20px);
    font-weight:200;
    line-height:1.4;
    color:#0A2819;
    text-align:left;
  }

  .jm-shop__filter-list{
    margin:0;
    padding:0;
    list-style:none;
    display:flex;
    flex-direction:column;
    gap:4px;
  }

  .jm-shop__filter-item label,
  .jm-shop__filter-link{
    display:flex;
    align-items:center;
    gap:10px;
    font-size:16px;
    font-weight:200;
    line-height:32px;
    color:#0A2819;
    cursor:pointer;
    text-align:left;
    text-decoration:none;
  }

  .jm-shop__filter-link::before{
    content:"";
    width:20px;
    height:20px;
    margin:0;
    border:1px solid #74817B;
    border-radius:50%;
    flex-shrink:0;
    background:transparent;
    box-sizing:border-box;
  }

  .jm-shop__filter-link.is-active::before{
    border-color:#74817B;
    background:radial-gradient(circle,#434343 0 6px,transparent 6px);
  }

  .jm-shop__filter-item input{
    appearance:none;
    width:20px;
    height:20px;
    margin:0;
    border:1px solid #74817B;
    border-radius:50%;
    flex-shrink:0;
    background:transparent;
    cursor:pointer;
  }

  .jm-shop__filter-item input:checked{
    border-color:#74817B;
    background:radial-gradient(circle,#434343 0 6px,transparent 6px);
  }

  .jm-shop__main{
    background:#F4F2ED;
    padding:clamp(48px,5.6vw,80px) clamp(24px,5.6vw,80px) clamp(56px,6vw,100px) clamp(32px,4vw,60px);
    min-width:0;
  }

  .jm-shop__title{
    margin:0 0 clamp(20px,2.5vw,32px);
    font-family:Jomolhari,serif;
    font-size:clamp(36px,3.5vw,50px);
    font-weight:200;
    line-height:1.34;
    color:#0A2819;
    text-align:left;
  }

  .jm-shop__meta{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    margin-bottom:clamp(28px,3.5vw,48px);
  }

  .jm-shop__search{
    position:relative;
    flex-shrink:0;
    width:min(100%,208px);
    height:36px;
  }

  .jm-shop__search-input{
    width:100%;
    height:36px;
    padding:0 40px 0 16px;
    border:0;
    border-radius:12px;
    background:#DDD0BD;
    font-family:Inter,sans-serif;
    font-size:14px;
    font-weight:200;
    color:#0A2819;
    outline:none;
    box-sizing:border-box;
  }

  .jm-shop__search-btn{
    position:absolute;
    top:0;
    right:0;
    width:40px;
    height:36px;
    padding:0;
    border:0;
    background:transparent;
    color:#0A2819;
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:center;
    line-height:0;
  }

  .jm-shop__search-btn svg{
    display:block;
    width:18px;
    height:18px;
    flex-shrink:0;
  }

  .jm-shop__active-cat{
    display:inline-block;
    margin:0;
    font-family:Jomolhari,serif;
    font-size:clamp(20px,1.7vw,24px);
    font-weight:200;
    line-height:1.34;
    color:#0A2819;
    text-align:left;
  }

  .jm-shop__active-cat::after{
    content:"";
    display:block;
    width:100%;
    height:1px;
    margin-top:8px;
    background:#0A2819;
  }

  .jm-shop__products,
  .jm-shop .woocommerce ul.products{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,22.78vw));
    gap:clamp(12px,2.78vw,40px);
    margin:0;
    padding:0;
    list-style:none;
  }

  .jm-shop__products::before,
  .jm-shop__products::after,
  .jm-shop .woocommerce ul.products::before,
  .jm-shop .woocommerce ul.products::after{display:none}

  .jm-shop__product,
  .jm-shop .woocommerce ul.products li.product{
    width:auto!important;
    margin:0!important;
    float:none!important;
    text-align:left;
    min-width:0;
  }

  .jm-shop__product-link,
  .jm-shop .woocommerce ul.products li.product a.woocommerce-loop-product__link{
    display:block;
    text-decoration:none;
    color:inherit;
  }

  .jm-product-image-frame{
    display:block;
    overflow:hidden;
    border-radius:12px;
    background:#E5E0D3;
    aspect-ratio:328/340;
    padding:clamp(16px,4.5vw,60px);
    box-sizing:border-box;
    margin:0 0 20px;
  }

  .jm-product-image-frame img,
  .jm-shop__product-media,
  .jm-shop .woocommerce ul.products li.product a img,
  .jm-shop .woocommerce ul.products li.product .jm-product-image-frame img{
    width:100%;
    height:100%;
    margin:0!important;
    padding:0;
    border-radius:0;
    background:transparent;
    object-fit:contain;
    object-position:center;
    display:block;
    transition:transform .45s cubic-bezier(.25,.46,.45,.94);
  }

  .jm-product-image-frame:hover img,
  .jm-home__products li.product:hover .jm-product-image-frame img,
  .jm-shop__product:hover .jm-product-image-frame img{
    transform:scale(1.08);
  }

  .jm-shop__product-name,
  .jm-shop .woocommerce ul.products li.product .woocommerce-loop-product__title{
    margin:0 0 8px;
    padding:0;
    font-family:Inter,sans-serif;
    font-size:16px;
    font-weight:400;
    line-height:22px;
    color:#545454;
    text-align:left;
  }

  .jm-shop__product-price,
  .jm-shop .woocommerce ul.products li.product .price{
    display:block;
    margin:0;
    font-family:Inter,sans-serif;
    font-size:16px;
    font-weight:300;
    line-height:22px;
    color:#929E6A;
    text-align:left;
  }

  .jm-shop .woocommerce-breadcrumb,
  .jm-shop .woocommerce-result-count,
  .jm-shop .woocommerce-ordering,
  .jm-shop .woocommerce ul.products li.product .button,
  .jm-shop .woocommerce ul.products li.product a.button,
  .jm-shop .woocommerce ul.products li.product .add_to_cart_button,
  .jm-shop .woocommerce ul.products li.product .added_to_cart,
  .jm-shop .woocommerce ul.products li.product .star-rating,
  .jm-shop .woocommerce-notices-wrapper{display:none!important}

  .jm-shop .woocommerce ul.products li.product a.woocommerce-loop-product__link,
  .jm-shop .woocommerce ul.products li.product .woocommerce-loop-product__title{
    color:#545454!important;
    text-decoration:none!important;
  }

  .jm-shop .woocommerce ul.products li.product .price,
  .jm-shop .woocommerce ul.products li.product .price .amount,
  .jm-shop .woocommerce ul.products li.product .price bdi{
    color:#929E6A!important;
  }

  @media (prefers-reduced-motion:reduce){
    .jm-product-image-frame img{transition:none}
    .jm-product-image-frame:hover img,.jm-home__products li.product:hover .jm-product-image-frame img,.jm-shop__product:hover .jm-product-image-frame img{transform:none}
  }

  .jm-shop .woocommerce ul.products li.product .jm-product-image-frame{
    background:#E5E0D3!important;
  }

  .jm-shop__search .woocommerce-product-search{
    position:relative;
    margin:0;
    height:36px;
  }

  .jm-shop__search .woocommerce-product-search .screen-reader-text{
    border:0;
    clip:rect(1px,1px,1px,1px);
    clip-path:inset(50%);
    height:1px;
    margin:-1px;
    overflow:hidden;
    padding:0;
    position:absolute;
    width:1px;
    word-wrap:normal!important;
  }

  .jm-shop__category.is-active::after{
    height:1px;
    background:#44403C;
  }

  .jm-shop__active-cat::after{
    height:1px;
    background:#0A2819;
  }

  @media (max-width:1199px){
    .jm-shop__layout{grid-template-columns:minmax(220px,280px) minmax(0,1fr)}
    .jm-shop__products,
    .jm-shop .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,22.78vw))}
  }

  @media (max-width:768px){
    .jm-shop{background:#F4F2ED}

    .jm-shop__hero-img{height:clamp(140px,37vw,220px)}

    .jm-shop__hero-title{display:block}

    .jm-shop__layout{grid-template-columns:1fr}

    .jm-shop__sidebar{
      padding:12px 20px 0;
      background:#F4F2ED;
    }

    .jm-shop__main{
      padding:12px 20px 48px;
      background:#F4F2ED;
    }

    .jm-shop__categories-title,
    .jm-shop__title,
    .jm-shop__meta{display:none!important}

    .jm-shop__toolbar-mobile{display:flex}

    .jm-shop__categories{
      flex-direction:row;
      flex-wrap:nowrap;
      align-items:center;
      overflow-x:auto;
      gap:8px;
      margin:0 0 12px;
      padding-bottom:2px;
      -webkit-overflow-scrolling:touch;
      scrollbar-width:none;
    }

    .jm-shop__categories::-webkit-scrollbar{display:none}

    .jm-shop__categories > li,
    .jm-shop__category-item{
      flex-shrink:0;
      display:flex;
      align-items:center;
    }

    .jm-shop__category{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      height:24px;
      padding:0 12px;
      border-radius:8px;
      background:#E5E0D3;
      font-family:Jomolhari,serif;
      font-size:10px;
      font-weight:200;
      line-height:24px;
      color:#0A2819;
      white-space:nowrap;
      padding-bottom:0;
    }

    .jm-shop__category:hover{color:#0A2819}

    .jm-shop__category.is-active{
      background:#46563B;
      color:#F5EEE2;
      padding-bottom:0;
    }

    .jm-shop__category.is-active::after{display:none}

    .jm-shop__category-item.is-active{
      gap:4px;
      height:24px;
      padding:0 8px 0 4px;
      border-radius:8px;
      background:#46563B;
    }

    .jm-shop__category-item.is-active .jm-shop__category{
      background:transparent;
      padding:0 4px 0 0;
      color:#F5EEE2;
    }

    .jm-shop__category-clear{display:flex}

    .jm-shop__toolbar-mobile .jm-shop__search{
      flex:1;
      width:auto;
      max-width:none;
      height:24px;
      margin:0;
    }

    .jm-shop__toolbar-mobile .jm-shop__search-input{
      height:24px;
      padding:0 12px 0 32px;
      border-radius:8px;
      font-family:Jomolhari,serif;
      font-size:10px;
    }

    .jm-shop__toolbar-mobile .jm-shop__search-btn{
      left:0;
      right:auto;
      width:32px;
      height:24px;
    }

    .jm-shop__toolbar-mobile .jm-shop__search-btn svg{
      width:12px;
      height:12px;
    }

    .jm-shop__filter{
      display:none;
      width:100%;
      max-width:none;
      min-height:0;
      margin-bottom:12px;
      padding:16px;
      border-radius:8px;
    }

    .jm-shop__filter-open:checked ~ .jm-shop__filter{display:block}

    .jm-shop__filter-title{font-size:16px}

    .jm-shop__filter-item label,
    .jm-shop__filter-link{font-size:14px;line-height:28px}

    .jm-shop__product-name,
    .jm-shop .woocommerce ul.products li.product .woocommerce-loop-product__title{
      font-size:10px;
      line-height:14px;
      font-weight:400;
      margin-bottom:4px;
    }

    .jm-shop__product-price,
    .jm-shop .woocommerce ul.products li.product .price{
      font-size:12px;
      line-height:16px;
      font-weight:300;
    }

    .jm-shop__products,
    .jm-shop .woocommerce ul.products{
      grid-template-columns:repeat(2,minmax(0,1fr));
      gap:12px;
    }

    .jm-shop__product-link .jm-product-image-frame,
    .jm-shop .woocommerce ul.products li.product .jm-product-image-frame{
      margin-bottom:8px;
      padding:16px;
      border-radius:8px;
      aspect-ratio:160/176;
    }
  }

.jm-shop .woocommerce{max-width:none;margin:0;padding:0}
