/* Scoped to the actual cat-page page root: no leakage into header/footer or other routes. */
.cat-page{
      --teal: #173f49;
      --teal-2: #245864;
      --teal-soft: rgba(23, 63, 73, .66);
      --pink: #ff6b7a;
      --pink-dark: #f35668;
      --white: #fff;
      --soft: #f6f5f1;
      --soft-2: #fbfaf7;
      --line: rgba(23, 63, 73, .11);
      --shadow: 0 18px 44px -30px rgba(23, 63, 73, .42);
      --container: 1400px;
      --gutter: clamp(16px, 3vw, 40px);
    }
.cat-page *{ box-sizing: border-box; }
.cat-page button, .cat-page select, .cat-page input{
      font: inherit;
    }
.cat-page a{
      color: inherit;
    }
.cat-page img{
      display: block;
      max-width: 100%;
    }
.cat-page{
      min-height: 100vh;
      direction: rtl;
      text-align: right;
      overflow: clip;
    }
.cat-page .container{
      width: min(100%, var(--container));
      margin-inline: auto;
      padding-inline: var(--gutter);
    }
.cat-page .category-top{
      padding: 22px 0 26px;
      border-bottom: 1px solid var(--line);
      background:
        radial-gradient(circle at 12% 18%, rgba(255, 107, 122, .07), transparent 28rem),
        linear-gradient(180deg, #fff 0%, #fcfbf8 100%);
    }
.cat-page .breadcrumb{
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 7px;
      margin: 0 0 20px;
      color: var(--teal-soft);
      font-size: .76rem;
      line-height: 1.6;
    }
.cat-page .breadcrumb a{
      text-decoration: none;
    }
.cat-page .breadcrumb a:hover, .cat-page .breadcrumb a:focus-visible{
      color: var(--teal);
      text-decoration: underline;
      text-underline-offset: 3px;
    }
.cat-page .breadcrumb-sep{
      opacity: .4;
    }
.cat-page .category-hero{
      max-width: 900px;
    }
.cat-page .category-title{
      margin: 0;
      max-width: 900px;
      font-size: clamp(1.65rem, 2.5vw, 2.35rem);
      line-height: 1.35;
      font-weight: 900;
      letter-spacing: -.02em;
    }
.cat-page .category-lead{
      max-width: 72ch;
      margin: 11px 0 0;
      color: var(--teal-soft);
      font-size: .94rem;
      line-height: 2;
    }
.cat-page .shortcut-section{
      margin-top: 42px;
      padding-top: 30px;
      border-top: 1px solid var(--line);
    }
.cat-page .shortcut-head{
      display: flex;
      align-items: baseline;
      justify-content: space-between;
      gap: 20px;
      margin-bottom: 11px;
    }
.cat-page .section-label{
      margin: 0;
      font-size: .84rem;
      font-weight: 800;
    }
.cat-page .shortcut-note{
      margin: 0;
      color: var(--teal-soft);
      font-size: .7rem;
    }
.cat-page .shortcut-row{
      display: flex;
      flex-wrap: wrap;
      align-items: stretch;
      gap: 8px;
      width: 100%;
    }
.cat-page .shortcut{
      flex: 1 1 110px;
      min-width: 0;
      min-height: 78px;
      padding: 12px 7px;
      display: flex;
      align-items: center;
      justify-content: center;
      border: 1px solid transparent;
      border-radius: 14px;
      text-align: center;
      text-decoration: none;
      font-size: .72rem;
      font-weight: 700;
      line-height: 1.55;
      transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
    }
.cat-page .shortcut:nth-child(10n/**/+1){ background: #fff5f7; }
.cat-page .shortcut:nth-child(10n/**/+2){ background: #fff9ef; }
.cat-page .shortcut:nth-child(10n/**/+3){ background: #fffdee; }
.cat-page .shortcut:nth-child(10n/**/+4){ background: #f5fbf0; }
.cat-page .shortcut:nth-child(10n/**/+5){ background: #effaf7; }
.cat-page .shortcut:nth-child(10n/**/+6){ background: #eff7fd; }
.cat-page .shortcut:nth-child(10n/**/+7){ background: #f4f3fd; }
.cat-page .shortcut:nth-child(10n/**/+8){ background: #faf3fc; }
.cat-page .shortcut:nth-child(10n/**/+9){ background: #fdf6f2; }
.cat-page .shortcut:nth-child(10n/**/+10){ background: #f8f7f1; }
.cat-page .shortcut:hover, .cat-page .shortcut:focus-visible{
      transform: translateY(-2px);
      border-color: var(--line);
      box-shadow: var(--shadow);
      outline: none;
    }
.cat-page .shop-area{
      padding: 26px 0 70px;
    }
.cat-page .facets-area{
      position: relative;
      margin-bottom: 15px;
      padding: 13px 15px 14px;
      border: 1px solid var(--line);
      border-radius: 16px;
      background: var(--soft-2);
    }
.cat-page .facets-top{
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 14px;
      margin-bottom: 10px;
    }
.cat-page .facets-heading{ display: flex; align-items: baseline; gap: 8px; min-width: 0; }
.cat-page .facets-title{ margin: 0; font-size: .82rem; font-weight: 900; white-space: nowrap; }
.cat-page .facets-subtitle{ margin: 0; color: var(--teal-soft); font-size: .7rem; }
.cat-page .facets-actions{ display: flex; align-items: center; gap: 9px; flex: 0 0 auto; }
.cat-page .clear-facets{
      min-height: 36px; padding: 0 8px; border: 0; border-radius: 8px;
      background: transparent; color: var(--pink-dark); cursor: pointer;
      font-size: .71rem; font-weight: 800;
    }
.cat-page .clear-facets:disabled{ opacity: .4; cursor: default; }
.cat-page .sort-select{
      min-height: 36px; min-width: 176px; padding: 0 9px;
      border: 1px solid var(--line); border-radius: 9px;
      background: #fff; color: var(--teal); font-size: .72rem; font-weight: 700;
    }
.cat-page .sr-only{ position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.cat-page .facet-strip{
      display: flex; gap: 8px; min-width: 0; overflow-x: auto;
      padding-block: 2px 5px; scrollbar-width: thin;
      overscroll-behavior-inline: contain;
    }
.cat-page .facet-trigger{
      flex: 0 0 auto; min-height: 39px; min-width: 112px; max-width: 195px;
      display: inline-flex; align-items: center; justify-content: space-between;
      gap: 14px; padding: 0 12px; border: 1px solid var(--line);
      border-radius: 9px; background: #fff; color: var(--teal);
      cursor: pointer; font-size: .74rem; font-weight: 800; white-space: nowrap;
      transition: border-color .15s, background .15s;
    }
.cat-page .facet-trigger:hover{ border-color: rgba(23,63,73,.35); }
.cat-page .facet-trigger[aria-expanded="true"], .cat-page .facet-trigger.has-selection{
      border-color: rgba(23,63,73,.45); background: #eaf1f1;
    }
.cat-page .facet-trigger-label{ overflow: hidden; text-overflow: ellipsis; }
.cat-page .facet-trigger-end{ display: inline-flex; gap: 6px; align-items: center; }
.cat-page .facet-trigger-count{ min-width: 19px; padding: 1px 5px; border-radius: 5px; background: var(--teal); color: #fff; font-size: .66rem; text-align: center; }
.cat-page .facet-chevron{ width: 8px; height: 8px; border-bottom: 1.8px solid currentColor; border-left: 1.8px solid currentColor; transform: rotate(-45deg) translateY(-2px); opacity: .75; }
.cat-page .facet-trigger[aria-expanded="true"] .facet-chevron{ transform: rotate(135deg) translateY(-2px); }
.cat-page .facet-scrim{ display: none; }
.cat-page .facets-modal-open{ overflow: hidden; }
.cat-page .facet-popover{
      position: absolute; z-index: 60; top: 100%; width: min(314px, calc(100vw - 42px));
      padding: 14px; border: 1px solid rgba(23,63,73,.16); border-radius: 15px;
      background: #fff; box-shadow: 0 18px 48px -22px rgba(12,39,46,.32);
      text-align: right;
    }
.cat-page .facet-popover-head{ display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 10px; }
.cat-page .facet-popover-title{ margin: 0; font-size: .87rem; font-weight: 900; }
.cat-page .facet-popover-close{ display: inline-grid; place-items: center; width: 30px; height: 30px; border: 0; border-radius: 8px; background: var(--soft); color: var(--teal); cursor: pointer; font-size: 1.3rem; }
.cat-page .facet-search{
      width: 100%; height: 38px; margin-bottom: 9px; padding: 0 12px;
      border: 1px solid var(--line); border-radius: 9px;
      background: var(--soft-2); color: var(--teal); font-size: .75rem;
    }
.cat-page .facet-options{ display: flex; flex-direction: column; gap: 1px; max-height: 235px; overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; }
.cat-page .facet-choice{
      display: flex; align-items: center; gap: 9px; min-height: 40px; padding: 6px 7px;
      border-radius: 8px; color: var(--teal); font-size: .73rem; line-height: 1.5; cursor: pointer;
    }
.cat-page .facet-choice:hover{ background: var(--soft-2); }
.cat-page .facet-choice input{ width: 16px; height: 16px; flex: 0 0 auto; accent-color: var(--teal); }
.cat-page .facet-choice-label{ flex: 1; min-width: 0; overflow-wrap: anywhere; }
.cat-page .facet-choice-count{ color: var(--teal-soft); font-size: .66rem; font-variant-numeric: tabular-nums; }
.cat-page .facet-no-options{ margin: 10px 0; color: var(--teal-soft); font-size: .74rem; }
.cat-page .facet-popover-foot{ margin-top: 9px; padding-top: 10px; border-top: 1px solid var(--line); display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.cat-page .facet-option-total{ color: var(--teal-soft); font-size: .66rem; }
.cat-page .facet-done{ padding: 6px 13px; border: 0; border-radius: 8px; background: var(--teal); color: #fff; font-size: .72rem; font-weight: 800; cursor: pointer; }
.cat-page .applied-filters{ display: flex; flex-wrap: wrap; gap: 6px; align-items: center; margin-top: 9px; }
.cat-page .applied-label{ color: var(--teal-soft); font-size: .69rem; }
.cat-page .applied-remove{
      display: inline-flex; align-items: center; gap: 6px; min-height: 29px;
      border: 1px solid rgba(23,63,73,.14); border-radius: 7px;
      padding: 3px 8px; background: #fff; color: var(--teal); font-size: .69rem; cursor: pointer;
    }
.cat-page .applied-remove:hover{ background: #fff2f4; border-color: rgba(243,86,104,.25); }
.cat-page .applied-remove span{ font-size: 1rem; line-height: 1; color: var(--pink-dark); }
.cat-page .facet-empty{ padding: 18px; margin-bottom: 15px; border: 1px dashed var(--line); border-radius: 14px; background: #fff; text-align: center; }
.cat-page .facet-empty p{ margin: 0 0 12px; font-size: .84rem; }
.cat-page .facet-empty button{ padding: 8px 14px; border: 1px solid var(--teal); border-radius: 9px; color: #fff; background: var(--teal); cursor: pointer; }
.cat-page .facet-trigger:focus-visible, .cat-page .facet-search:focus-visible, .cat-page .facet-choice input:focus-visible, .cat-page .applied-remove:focus-visible, .cat-page .facet-popover-close:focus-visible, .cat-page .facet-done:focus-visible, .cat-page .clear-facets:focus-visible, .cat-page .sort-select:focus-visible{
      outline: 2px solid rgba(255,107,122,.65); outline-offset: 2px;
    }
.cat-page [hidden]{ display: none !important; }
.cat-page .results-head{
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 18px;
      margin: 0 0 14px;
    }
.cat-page .results-count, .cat-page .results-hint{
      margin: 0;
      color: var(--teal-soft);
    }
.cat-page .results-count{
      font-size: .78rem;
    }
.cat-page .results-count strong{
      color: var(--teal);
      font-weight: 900;
    }
.cat-page .results-hint{
      font-size: .68rem;
    }
.cat-page .products{
      display: grid;
      grid-template-columns: repeat(4, minmax(0,1fr));
      gap: 18px;
    }
.cat-page .product-card{
      position: relative;
      min-width: 0;
      display: flex;
      flex-direction: column;
      overflow: hidden;
      border: 1px solid var(--line);
      border-radius: 22px;
      background: #fff;
      box-shadow: 0 1px 0 rgba(23,63,73,.02);
      transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
    }
.cat-page .product-card:hover{
      transform: translateY(-3px);
      border-color: rgba(23,63,73,.18);
      box-shadow: var(--shadow);
    }
.cat-page .product-media{
      position: relative;
      aspect-ratio: 4 / 3;
      overflow: hidden;
      background: var(--soft);
    }
.cat-page .product-main-link{
      display: block;
      width: 100%;
      height: 100%;
      text-decoration: none;
    }
.cat-page .product-main{
      width: 100%;
      height: 100%;
      object-fit: cover;
      transition: transform .55s cubic-bezier(.2,.7,.2,1), opacity .18s ease;
    }
.cat-page .product-card:hover .product-main{
      transform: scale(1.025);
    }
.cat-page .thumbs{
      position: absolute;
      z-index: 3;
      right: 9px;
      left: 9px;
      bottom: 9px;
      display: flex;
      justify-content: center;
      gap: 5px;
      padding: 6px;
      border: 1px solid rgba(255,255,255,.45);
      border-radius: 11px;
      background: rgba(255,255,255,.72);
      backdrop-filter: blur(10px) saturate(130%);
      overflow: hidden;
      max-width: calc(3 * 35px + 2 * 5px + 14px);
      margin-inline: auto;
    }
.cat-page .thumb:nth-child(n/**/+4){ display: none !important; }
.cat-page .thumb{
      flex: 0 0 auto;
      width: 35px;
      height: 35px;
      padding: 0;
      overflow: hidden;
      border: 1.5px solid rgba(23,63,73,.13);
      border-radius: 8px;
      background: #fff;
      cursor: pointer;
    }
.cat-page .thumb img{
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
.cat-page .thumb.is-active{
      border-color: var(--teal);
      box-shadow: 0 0 0 2px rgba(255,255,255,.8);
    }
.cat-page .thumb:focus-visible{
      outline: 2px solid var(--pink-dark);
      outline-offset: 2px;
    }
.cat-page .thumbs:has(.thumb:only-child){ display: none; }
.cat-page .product-content{
      flex: 1;
      display: flex;
      flex-direction: column;
      padding: 15px 15px 14px;
    }
.cat-page .product-title{
      margin: 0;
      font-size: .9rem;
      line-height: 1.75;
      font-weight: 800;
    }
.cat-page .product-title a{
      text-decoration: none;
    }
.cat-page .product-title a:hover, .cat-page .product-title a:focus-visible{
      color: var(--pink-dark);
      outline: none;
    }
.cat-page .product-attrs{
      display: flex;
      flex-wrap: wrap;
      align-items: stretch;
      align-content: flex-start;
      gap: 5px;
      margin-top: 9px;
      min-width: 0;
    }
.cat-page .product-attr{
      display: inline-flex;
      align-items: center;
      max-width: 100%;
      min-height: 25px;
      padding: 4px 7px;
      border-radius: 7px;
      background: var(--soft);
      color: var(--teal-soft);
      font-size: .63rem;
      font-weight: 700;
      line-height: 1.45;
      white-space: normal;
      overflow-wrap: anywhere;
    }
.cat-page .product-attr[hidden], .cat-page .product-card[hidden]{ display: none !important; }
.cat-page .product-meta{
      margin-top: auto;
      padding-top: 13px;
    }
.cat-page .product-price-row{
      display: flex;
      align-items: flex-end;
      justify-content: space-between;
      gap: 10px;
      padding-top: 11px;
      border-top: 1px solid var(--line);
    }
.cat-page .product-price{
      margin: 0;
      font-variant-numeric: tabular-nums;
      font-size: .91rem;
      line-height: 1.45;
      font-weight: 900;
    }
.cat-page .product-price small{
      display: block;
      margin-top: 2px;
      color: var(--teal-soft);
      font-size: .59rem;
      font-weight: 600;
    }
.cat-page .product-cta{
      flex: 0 0 auto;
      min-height: 36px;
      padding: 0 11px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border: 1px solid var(--teal);
      border-radius: 10px;
      background: var(--teal);
      color: #fff;
      text-decoration: none;
      font-size: .68rem;
      font-weight: 800;
      white-space: nowrap;
      transition: background .18s ease, border-color .18s ease;
    }
.cat-page .product-cta:hover, .cat-page .product-cta:focus-visible{
      border-color: var(--pink);
      background: var(--pink);
      outline: none;
    }
.cat-page .pagination-wrap{
      margin-top: 34px;
      display: flex;
      justify-content: center;
    }
.cat-page .pagination{
      display: inline-flex;
      align-items: center;
      gap: 6px;
      padding: 7px;
      border: 1px solid var(--line);
      border-radius: 13px;
      background: var(--soft-2);
    }
.cat-page .page-link{
      min-width: 36px;
      height: 36px;
      padding-inline: 9px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border-radius: 9px;
      text-decoration: none;
      font-size: .73rem;
      font-weight: 800;
    }
.cat-page .page-link:hover, .cat-page .page-link:focus-visible{
      background: #fff;
      outline: none;
    }
.cat-page .page-link.is-current{
      background: var(--teal);
      color: #fff;
    }
.cat-page .category-description{
      margin-top: 54px;
      padding-top: 34px;
      border-top: 1px solid var(--line);
    }
.cat-page .description-shell{
      max-width: 1000px;
    }
.cat-page .category-description h2{
      margin: 0 0 15px;
      font-size: 1.25rem;
      line-height: 1.55;
      font-weight: 900;
    }
.cat-page .description-copy{
      position: relative;
      max-height: 8.2rem;
      overflow: hidden;
      /* Content length is arbitrary: do not impose a fixed expanded height. */
    }
.cat-page .description-copy::after{
      content: "";
      position: absolute;
      right: 0;
      bottom: 0;
      left: 0;
      height: 4.5rem;
      background: linear-gradient(180deg, rgba(255,255,255,0), #fff);
      pointer-events: none;
    }
.cat-page .description-copy.is-open{
      max-height: none;
    }
.cat-page .description-copy.is-open::after{
      display: none;
    }
.cat-page .category-description p, .cat-page .category-description li{
      color: var(--teal-soft);
      font-size: .88rem;
      line-height: 2.05;
    }
.cat-page .category-description p{ margin: 0 0 12px; }
.cat-page .description-copy h2, .cat-page .description-copy h3, .cat-page .description-copy h4{
      margin: 19px 0 10px;
      line-height: 1.6;
      color: var(--teal);
    }
.cat-page .description-copy h2{ font-size: 1.12rem; }
.cat-page .description-copy h3{ font-size: 1rem; }
.cat-page .description-copy h4{ font-size: .91rem; }
.cat-page .description-copy ul, .cat-page .description-copy ol{ padding-inline-start: 24px; margin: 9px 0 17px; }
.cat-page .description-copy a{ color: var(--pink-dark); text-underline-offset: 3px; }
.cat-page .description-copy img, .cat-page .description-copy video, .cat-page .description-copy iframe{
      max-width: 100%; height: auto; border-radius: 12px;
    }
.cat-page .description-copy figure{ max-width: 100%; margin: 18px 0; }
.cat-page .description-copy blockquote{
      margin: 18px 0; padding: 10px 16px;
      border-inline-start: 3px solid var(--pink);
      background: var(--soft-2);
      border-radius: 8px;
    }
.cat-page .description-copy table{ display: block; max-width: 100%; overflow-x: auto; border-collapse: collapse; }
.cat-page .description-copy td, .cat-page .description-copy th{ padding: 9px 11px; border: 1px solid var(--line); }
.cat-page .read-more{
      margin-top: 8px;
      padding: 0;
      border: 0;
      background: transparent;
      color: var(--pink-dark);
      cursor: pointer;
      font-size: .76rem;
      font-weight: 900;
    }
@media  (max-width: 1180px) {.cat-page .shortcut{ flex-basis: calc((100% - 32px) / 5); }
.cat-page .products{
        grid-template-columns: repeat(3, minmax(0,1fr));
      }}
@media  (max-width: 860px) {.cat-page .shortcut{ flex-basis: calc((100% - 16px) / 3); }
.cat-page .sort-select{
        width: 100%;
      }
.cat-page .products{
        grid-template-columns: repeat(2, minmax(0,1fr));
        gap: 14px;
      }}
@media  (max-width: 640px) {.cat-page{
        --gutter: 14px;
      }
.cat-page .category-top{
        padding: 17px 0 22px;
      }
.cat-page .breadcrumb{
        margin-bottom: 15px;
        font-size: .68rem;
      }
.cat-page .category-lead{
        font-size: .82rem;
        line-height: 1.9;
      }
.cat-page .shortcut-section{
        margin-top: 32px;
        padding-top: 24px;
      }
.cat-page .shortcut-note{
        display: none;
      }
.cat-page .shortcut{ min-height: 66px; font-size: .67rem; }
.cat-page .shop-area{
        padding-top: 20px;
        padding-bottom: 48px;
      }
.cat-page .results-hint{
        display: none;
      }
.cat-page .products{
        gap: 10px;
      }
.cat-page .product-card{
        border-radius: 15px;
      }
.cat-page .product-media{
        aspect-ratio: 1 / 1;
      }
.cat-page .thumbs{
        right: 5px;
        left: 5px;
        bottom: 6px;
        padding: 4px;
        gap: 4px;
        max-width: calc(3 * 27px + 2 * 4px + 10px);
      }
.cat-page .thumb{ width: 27px; height: 27px; border-radius: 6px; }
.cat-page .product-content{
        padding: 11px 10px 10px;
      }
.cat-page .product-title{
        min-height: 3.15rem;
        display: -webkit-box;
        overflow: hidden;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        font-size: .76rem;
        line-height: 1.7;
      }
.cat-page .product-attrs{
        margin-top: 7px;
        gap: 4px;
      }
.cat-page .product-attr{
        min-height: 24px;
        padding: 3px 6px;
        font-size: .55rem;
      }
.cat-page .product-meta{
        padding-top: 9px;
      }
.cat-page .product-price-row{
        display: block;
        padding-top: 9px;
      }
.cat-page .product-price{
        font-size: .76rem;
      }
.cat-page .product-price small{
        font-size: .53rem;
      }
.cat-page .product-cta{
        width: 100%;
        min-height: 34px;
        margin-top: 8px;
        font-size: .62rem;
      }
.cat-page .pagination{
        gap: 3px;
        padding: 5px;
      }
.cat-page .page-link{
        min-width: 32px;
        height: 32px;
        font-size: .67rem;
      }
.cat-page .category-description{
        margin-top: 40px;
        padding-top: 27px;
      }
.cat-page .category-description h2{
        font-size: 1.03rem;
      }
.cat-page .category-description p{
        font-size: .8rem;
        line-height: 1.95;
      }}
@media  (max-width: 440px) {.cat-page .shortcut{ flex-basis: calc((100% - 8px) / 2); }}
@media  (max-width: 640px) {.cat-page .facets-area{ padding: 11px 12px; border-radius: 13px; }
.cat-page .facets-top{ align-items: center; gap: 7px; flex-wrap: wrap; }
.cat-page .facets-heading{ flex: 1; }
.cat-page .facets-subtitle{ display: none; }
.cat-page .facets-actions{ flex: 0 0 auto; gap: 4px; }
.cat-page .sort-select{ min-width: 128px; max-width: 155px; font-size: .65rem; }
.cat-page .clear-facets{ font-size: .66rem; }
.cat-page .facet-strip{ margin-inline: -2px; padding-inline: 2px; }
.cat-page .facet-trigger{ min-height: 37px; min-width: 105px; font-size: .69rem; }
.cat-page .facet-scrim:not([hidden]){ display: block; position: fixed; inset: 0; z-index: 1000; background: rgba(8,26,31,.39); }
.cat-page .facet-popover{
        position: fixed; z-index: 1001; top: auto !important; right: 0 !important;
        left: 0 !important; bottom: 0; width: 100%; max-height: min(70dvh, 560px);
        display: flex; flex-direction: column; padding: 17px 17px max(16px, env(safe-area-inset-bottom));
        border-radius: 18px 18px 0 0; border-bottom: 0;
      }
.cat-page .facet-options{ max-height: none; min-height: 0; flex: 1 1 auto; }
.cat-page .facet-popover-head, .cat-page .facet-search, .cat-page .facet-popover-foot{ flex: 0 0 auto; }}
@media  (max-width: 360px) {.cat-page .products{
        grid-template-columns: 1fr;
      }
.cat-page .product-media{
        aspect-ratio: 16 / 10;
      }
.cat-page .product-title{
        min-height: auto;
      }
.cat-page .product-price-row{
        display: flex;
      }
.cat-page .product-cta{
        width: auto;
        margin-top: 0;
      }}
@media  (prefers-reduced-motion: reduce) {.cat-page *, .cat-page *::before, .cat-page *::after{
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
      }}
.cat-page .product-card-intro{margin:7px 0 0;color:var(--teal-soft);font-size:.72rem;line-height:1.8;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;min-width:0}
@media (max-width:640px){.cat-page .product-card-intro{font-size:.62rem;line-height:1.65;margin-top:5px;-webkit-line-clamp:2}}