.ivy-cf{--ivy-cf-image:52px;--ivy-cf-text:11px;--ivy-cf-color:inherit;--ivy-cf-panel-width:100%;--ivy-cf-panel-height:430px;--ivy-cf-sidebar:190px;--ivy-cf-radius:50%;--ivy-cf-overlay:rgba(0,0,0,.34);--ivy-cf-dcols:0;--ivy-cf-mcols:3;box-sizing:border-box;color:var(--ivy-cf-color);font-family:inherit}.ivy-cf *,.ivy-cf *:before,.ivy-cf *:after{box-sizing:inherit}.ivy-cf a{color:inherit;text-decoration:none}.ivy-cf img{display:block;height:100%;object-fit:cover;width:100%}.ivy-cf-placeholder{align-items:center;background:#f1f1f1;color:#777;display:flex;font-size:16px;font-weight:600;height:100%;justify-content:center;width:100%}
.ivy-cf-desktop{clear:both;height:32px;margin:0 0 12px;overflow:visible;position:relative;width:100%;z-index:99990}.ivy-cf-trigger{align-items:center;background:transparent;border:0;color:inherit;cursor:pointer;display:inline-flex;font-family:inherit;font-size:12px;font-weight:400;gap:8px;height:32px;line-height:32px;margin:0;padding:0 12px}.ivy-cf-trigger:hover,.ivy-cf-trigger:focus,.ivy-cf-desktop.is-open .ivy-cf-trigger{background:#f2f2f2;outline:0}.ivy-cf-trigger i{border-bottom:1px solid currentColor;border-right:1px solid currentColor;height:6px;margin-top:-3px;transform:rotate(45deg);transition:transform .15s;width:6px}.ivy-cf-desktop.is-open .ivy-cf-trigger i{margin-top:3px;transform:rotate(225deg)}
.ivy-cf-overlay{background:var(--ivy-cf-overlay);bottom:0;left:0;opacity:0;position:fixed;right:0;top:0;transition:opacity .15s;z-index:99980}.ivy-cf-desktop.is-open .ivy-cf-overlay{opacity:1}.ivy-cf-mega{background:#fff;border:0;box-shadow:none;display:grid;grid-template-columns:var(--ivy-cf-sidebar) minmax(0,1fr);height:min(var(--ivy-cf-panel-height),calc(100vh - 110px));left:0;max-height:var(--ivy-cf-panel-height);opacity:0;overflow:hidden;position:absolute;top:32px;transform:translateY(-4px);transition:opacity .15s,transform .15s;visibility:hidden;width:var(--ivy-cf-panel-width);z-index:99999}.ivy-cf-desktop.is-open .ivy-cf-mega{opacity:1;transform:none;visibility:visible}
.ivy-cf-parent-menu{border-right:1px solid #eee;overflow-y:auto;padding:7px 0}.ivy-cf-parent-menu button{align-items:center;background:#fff;border:0;color:#333;cursor:pointer;display:flex;font-family:inherit;font-size:11px;font-weight:400;justify-content:space-between;line-height:1.2;min-height:35px;padding:7px 12px;text-align:left;width:100%}.ivy-cf-parent-menu button:hover,.ivy-cf-parent-menu button[aria-selected=true],.ivy-cf-parent-menu button.is-current{background:#f3f3f3;color:#111}.ivy-cf-parent-menu button i{color:#aaa;font-size:16px;font-style:normal}.ivy-cf-content{overflow-y:auto;padding:13px 24px 24px}.ivy-cf-group+.ivy-cf-group{border-top:1px solid #f0f0f0;margin-top:16px;padding-top:13px}.ivy-cf-group-head{align-items:center;display:flex;justify-content:space-between;margin-bottom:11px}.ivy-cf-group-head strong{font-size:12px;font-weight:600}.ivy-cf-group-head a{color:#777;font-size:10px}.ivy-cf-group-grid{display:grid;gap:15px 12px;grid-template-columns:repeat(auto-fit,minmax(calc(var(--ivy-cf-image) + 22px),1fr));justify-items:center}.ivy-cf[data-dcols]:not([data-dcols="0"]) .ivy-cf-content .ivy-cf-group-grid{grid-template-columns:repeat(var(--ivy-cf-dcols),minmax(0,1fr))}
.ivy-cf-circle{display:block;max-width:88px;min-width:0;text-align:center}.ivy-cf-circle-image{background:#f4f4f4;border:0;border-radius:var(--ivy-cf-radius);display:block;height:var(--ivy-cf-image);margin:0 auto 6px;overflow:hidden;width:var(--ivy-cf-image)}.ivy-cf-circle-name{color:var(--ivy-cf-color);display:block;font-size:var(--ivy-cf-text);font-weight:400;line-height:1.18;overflow-wrap:anywhere}.ivy-cf-count{color:#888;display:block;font-size:9px;font-weight:400;margin-top:2px}.ivy-cf-circle:hover .ivy-cf-circle-name{text-decoration:underline}
.ivy-cf-mobile{display:none;height:100dvh;min-height:600px;overflow:hidden;width:100%}.ivy-cf-mobile-head{background:#fff;padding:12px 10px 9px}.ivy-cf-mobile-head h1{font-size:19px;font-weight:600;margin:0 0 10px}.ivy-cf-search{align-items:center;background:#f5f5f5;display:flex;height:38px;padding:0 11px}.ivy-cf-search>span{border:1.5px solid currentColor;border-radius:50%;height:13px;margin-right:9px;position:relative;width:13px}.ivy-cf-search>span:after{background:currentColor;content:"";height:1.5px;position:absolute;right:-5px;top:10px;transform:rotate(45deg);width:6px}.ivy-cf-search input{background:transparent!important;border:0!important;box-shadow:none!important;flex:1;font-family:inherit;font-size:12px;height:100%;min-width:0;outline:0;padding:0!important}.ivy-cf-search button{background:transparent;border:0;color:#777;font-size:19px}
.ivy-cf-mobile-layout{display:grid;grid-template-columns:var(--ivy-cf-sidebar) minmax(0,1fr);height:calc(100dvh - 78px);min-height:520px}.ivy-cf-mobile-rail{background:#f6f6f6;overflow-y:auto}.ivy-cf-mobile-rail button{background:transparent;border:0;border-left:2px solid transparent;color:#555;display:block;font-family:inherit;font-size:11px;line-height:1.2;min-height:46px;padding:7px 8px;text-align:left;width:100%}.ivy-cf-mobile-rail button[aria-selected=true]{background:#fff;border-left-color:currentColor;color:inherit;font-weight:600}.ivy-cf-mobile-panels{min-width:0;overflow-y:auto;padding:13px 10px}.ivy-cf-mobile-title{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.ivy-cf-mobile-title strong{font-size:13px}.ivy-cf-mobile-title a{color:#777;font-size:10px}.ivy-cf-mobile .ivy-cf-group-grid{gap:14px 8px;grid-template-columns:repeat(var(--ivy-cf-mcols),minmax(0,1fr))}.ivy-cf-mobile .ivy-cf-circle{max-width:78px}.ivy-cf-mobile-empty{color:#777;font-size:12px;padding:40px 20px;text-align:center}
.ivy-cf-mobile-layout{grid-template-columns:min(var(--ivy-cf-sidebar),110px) minmax(0,1fr)}
.ivy-cf,.ivy-cf *{text-transform:none!important}.ivy-cf-parent-heading{background:#fff;color:#333!important;display:block;font-size:11px;font-weight:400;line-height:1.2;min-height:35px;padding:11px 12px 7px;text-decoration:none!important;transition:background-color .12s ease}.ivy-cf .ivy-cf-parent-menu>a.ivy-cf-parent-heading:hover,.ivy-cf .ivy-cf-parent-menu>a.ivy-cf-parent-heading:focus,.ivy-cf .ivy-cf-parent-menu>a.ivy-cf-parent-heading:focus-visible,.ivy-cf .ivy-cf-parent-menu>a.ivy-cf-parent-heading.is-current{background:#f3f3f3!important;color:#111!important;outline:0}.ivy-cf-mobile-rail .ivy-cf-parent-heading{background:transparent;font-size:11px;padding:11px 8px}
.ivy-cf .ivy-cf-trigger:hover,.ivy-cf .ivy-cf-trigger:focus,.ivy-cf.ivy-cf-desktop.is-open .ivy-cf-trigger{background:#f2f2f2!important;color:var(--ivy-cf-color)!important}.ivy-cf .ivy-cf-trigger span{color:inherit!important}
.ivy-cf-desktop .ivy-cf-content{padding:0}.ivy-cf-desktop .ivy-cf-content-panel{height:100%;min-width:0}.ivy-cf-category-layout{display:grid;grid-template-columns:minmax(220px,28%) minmax(0,1fr);height:100%;min-width:0}.ivy-cf-shop-by{border-right:1px solid #eee;min-width:0;overflow-y:auto;padding:14px 16px 20px}.ivy-cf-shop-by-title{color:#333;font-size:12px;font-weight:600;margin:0 0 14px}.ivy-cf-shop-by-grid{display:grid;gap:15px 9px;grid-template-columns:repeat(3,minmax(0,1fr));justify-items:center}.ivy-cf-shop-by .ivy-cf-circle{max-width:76px}.ivy-cf-deep-groups{min-width:0;overflow-y:auto;padding:14px 22px 24px}.ivy-cf-deep-groups .ivy-cf-group+.ivy-cf-group{margin-top:20px;padding-top:16px}.ivy-cf-view-all-icon{display:grid;gap:3px;grid-template-columns:repeat(2,6px);place-content:center;height:100%;width:100%}.ivy-cf-view-all-icon i{border:1.4px solid currentColor;display:block;height:6px;width:6px}.ivy-cf-view-all-circle .ivy-cf-circle-image{background:#f1f1f1;color:#222}
@media(max-width:1180px) and (min-width:1025px){.ivy-cf-category-layout{grid-template-columns:minmax(190px,30%) minmax(0,1fr)}.ivy-cf-shop-by-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ivy-cf-deep-groups{padding-left:16px;padding-right:16px}}
.ivy-cf-desktop.is-open .ivy-cf-parent-menu button.is-current[aria-selected="false"]{background:#fff!important;color:#333!important}

/* v4.6.7: fixed, left-anchored circle columns. Short rows no longer stretch
   across the panel, so every circle remains vertically aligned. */
@media (min-width:1025px) {
  .ivy-cf-desktop .ivy-cf-shop-by-grid {
    column-gap:12px!important;
    grid-template-columns:repeat(3,76px)!important;
    justify-content:start!important;
    justify-items:center!important;
    row-gap:15px!important;
  }
  .ivy-cf-desktop .ivy-cf-deep-groups .ivy-cf-group-grid {
    column-gap:20px!important;
    grid-template-columns:repeat(auto-fill,88px)!important;
    justify-content:start!important;
    justify-items:center!important;
    row-gap:15px!important;
  }
  .ivy-cf-desktop .ivy-cf-group-grid .ivy-cf-circle {
    justify-self:center!important;
    margin:0!important;
    width:88px!important;
  }
  .ivy-cf-desktop .ivy-cf-shop-by-grid .ivy-cf-circle {
    width:76px!important;
  }
}

/* v4.8.31: one typography owner for category labels. Existing component
   sizes and line-heights remain unchanged. */
.ivy-cf .ivy-cf-trigger,
.ivy-cf .ivy-cf-top-category,
.ivy-cf .ivy-cf-parent-menu button,
.ivy-cf .ivy-cf-parent-heading,
.ivy-cf .ivy-cf-circle-name,
.ivy-cf .ivy-cf-mobile-rail button {
  font-family:inherit!important;
  font-style:normal!important;
  font-weight:600!important;
  letter-spacing:normal!important;
  text-transform:none!important;
  word-spacing:normal!important;
}
.ivy-cf .ivy-cf-mobile-rail button[aria-selected="true"] {
  font-weight:600!important;
}

@media (max-width:1024px) {
  .ivy-cf-mobile .ivy-cf-group-grid {
    align-items:start!important;
    justify-items:center!important;
  }
  .ivy-cf-mobile .ivy-cf-circle {
    justify-self:center!important;
    margin:0!important;
    width:100%!important;
  }
}

/* v4.6.9: restore clean two-line labels. Wrap at word boundaries and prevent
   orphaned final letters such as the last "t" in Improvement. */
@media (min-width:1025px) {
  .ivy-cf-desktop .ivy-cf-shop-by-grid {
    column-gap:10px!important;
    grid-template-columns:repeat(3,96px)!important;
  }
  .ivy-cf-desktop .ivy-cf-deep-groups .ivy-cf-group-grid {
    column-gap:12px!important;
    grid-template-columns:repeat(auto-fill,100px)!important;
  }
  .ivy-cf-desktop .ivy-cf-group-grid .ivy-cf-circle,
  .ivy-cf-desktop .ivy-cf-shop-by-grid .ivy-cf-circle {
    max-width:none!important;
    width:100%!important;
  }
  .ivy-cf-desktop .ivy-cf-circle-name {
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
    display:-webkit-box!important;
    hyphens:auto!important;
    line-clamp:2!important;
    min-height:calc(var(--ivy-cf-text) * 1.18 * 2)!important;
    overflow:hidden!important;
    overflow-wrap:normal!important;
    text-overflow:ellipsis!important;
    text-wrap:balance!important;
    white-space:normal!important;
    word-break:normal!important;
  }
}

/* v4.7.1 final layout authority — compact reference layout without x-scroll. */
@media (min-width:1025px) {
  .ivy-cf-desktop .ivy-cf-category-layout {
    grid-template-columns:minmax(300px,26%) minmax(0,1fr)!important;
    overflow:hidden!important;
  }
  .ivy-cf-desktop .ivy-cf-shop-by {
    box-sizing:border-box!important;
    overflow-x:hidden!important;
    padding-left:14px!important;
    padding-right:14px!important;
  }
  .ivy-cf-desktop .ivy-cf-shop-by-grid {
    column-gap:8px!important;
    grid-template-columns:repeat(3,minmax(0,82px))!important;
    max-width:100%!important;
    row-gap:16px!important;
    width:100%!important;
  }
  .ivy-cf-desktop .ivy-cf-shop-by-grid .ivy-cf-circle {
    max-width:100%!important;
    min-width:0!important;
    width:100%!important;
  }
  .ivy-cf-desktop .ivy-cf-deep-groups {
    box-sizing:border-box!important;
    overflow-x:hidden!important;
  }
  .ivy-cf-desktop .ivy-cf-deep-groups .ivy-cf-group-grid {
    column-gap:12px!important;
    grid-template-columns:repeat(auto-fit,minmax(82px,1fr))!important;
    justify-items:center!important;
    row-gap:16px!important;
  }
  .ivy-cf-desktop .ivy-cf-deep-groups .ivy-cf-circle {
    max-width:96px!important;
  }
}
@media (min-width:1025px) and (max-width:1180px) {
  .ivy-cf-desktop .ivy-cf-category-layout {
    grid-template-columns:minmax(270px,30%) minmax(0,1fr)!important;
  }
}
@media (min-width:1025px) and (max-width:1180px) {
  .ivy-cf-desktop .ivy-cf-shop-by-grid {
    grid-template-columns:repeat(2,100px)!important;
  }
}
@media (max-width:1024px) {
  .ivy-cf-mobile .ivy-cf-circle-name {
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
    display:-webkit-box!important;
    hyphens:auto!important;
    line-clamp:2!important;
    overflow:hidden!important;
    overflow-wrap:normal!important;
    text-overflow:ellipsis!important;
    text-wrap:balance!important;
    white-space:normal!important;
    word-break:normal!important;
  }
}
@media (min-width:1025px) and (max-width:1180px) {
  .ivy-cf-desktop .ivy-cf-shop-by-grid {
    grid-template-columns:repeat(2,76px)!important;
  }
}

/* v4.6.8: single-line circle labels with wider aligned cells. */
@media (min-width:1025px) {
  .ivy-cf-desktop .ivy-cf-shop-by-grid {
    column-gap:12px!important;
    grid-template-columns:repeat(2,130px)!important;
  }
  .ivy-cf-desktop .ivy-cf-deep-groups .ivy-cf-group-grid {
    column-gap:8px!important;
    grid-template-columns:repeat(auto-fill,136px)!important;
  }
  .ivy-cf-desktop .ivy-cf-group-grid .ivy-cf-circle,
  .ivy-cf-desktop .ivy-cf-shop-by-grid .ivy-cf-circle {
    max-width:none!important;
    width:100%!important;
  }
  .ivy-cf-desktop .ivy-cf-circle-name {
    overflow:visible!important;
    overflow-wrap:normal!important;
    text-overflow:clip!important;
    white-space:nowrap!important;
    word-break:normal!important;
  }
}
@media (max-width:1024px) {
  .ivy-cf-mobile .ivy-cf-circle-name {
    overflow:hidden!important;
    overflow-wrap:normal!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    word-break:normal!important;
  }
}

/* v4.6.9 final label authority — keep this after the v4.6.8 experiment. */
@media (min-width:1025px) {
  .ivy-cf-desktop .ivy-cf-shop-by-grid{column-gap:10px!important;grid-template-columns:repeat(3,96px)!important}
  .ivy-cf-desktop .ivy-cf-deep-groups .ivy-cf-group-grid{column-gap:12px!important;grid-template-columns:repeat(auto-fill,100px)!important}
  .ivy-cf-desktop .ivy-cf-group-grid .ivy-cf-circle,.ivy-cf-desktop .ivy-cf-shop-by-grid .ivy-cf-circle{max-width:none!important;width:100%!important}
  .ivy-cf-desktop .ivy-cf-circle-name{
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
    display:-webkit-box!important;
    hyphens:auto!important;
    line-clamp:2!important;
    min-height:calc(var(--ivy-cf-text) * 1.18 * 2)!important;
    overflow:hidden!important;
    overflow-wrap:normal!important;
    text-overflow:ellipsis!important;
    text-wrap:balance!important;
    white-space:normal!important;
    word-break:normal!important;
  }
}
@media (min-width:1025px) and (max-width:1180px){.ivy-cf-desktop .ivy-cf-shop-by-grid{grid-template-columns:repeat(2,100px)!important}}
@media (max-width:1024px){.ivy-cf-mobile .ivy-cf-circle-name{-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;display:-webkit-box!important;hyphens:auto!important;line-clamp:2!important;overflow:hidden!important;overflow-wrap:normal!important;text-overflow:ellipsis!important;text-wrap:balance!important;white-space:normal!important;word-break:normal!important}}

/* v4.7.0: keep Shop by Category inside its column and wrap every item. */
@media (min-width:1025px) {
  .ivy-cf-desktop .ivy-cf-category-layout,
  .ivy-cf-desktop .ivy-cf-shop-by {
    max-width:100%!important;
    overflow-x:hidden!important;
  }
  .ivy-cf-desktop .ivy-cf-shop-by-grid {
    box-sizing:border-box!important;
    column-gap:8px!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    max-width:100%!important;
    overflow:visible!important;
    width:100%!important;
  }
  .ivy-cf-desktop .ivy-cf-shop-by-grid .ivy-cf-circle {
    max-width:100%!important;
    min-width:0!important;
    width:100%!important;
  }
}

/* v4.7.1 cascade lock: reference-style three-column Shop by Category. */
@media (min-width:1025px) {
  .ivy-cf-desktop .ivy-cf-category-layout{grid-template-columns:minmax(300px,26%) minmax(0,1fr)!important;overflow:hidden!important}
  .ivy-cf-desktop .ivy-cf-shop-by{box-sizing:border-box!important;overflow-x:hidden!important;padding-left:14px!important;padding-right:14px!important}
  .ivy-cf-desktop .ivy-cf-shop-by-grid{column-gap:8px!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;max-width:100%!important;row-gap:16px!important;width:100%!important}
  .ivy-cf-desktop .ivy-cf-shop-by-grid .ivy-cf-circle{max-width:100%!important;min-width:0!important;width:100%!important}
  .ivy-cf-desktop .ivy-cf-deep-groups{box-sizing:border-box!important;overflow-x:hidden!important}
  .ivy-cf-desktop .ivy-cf-deep-groups .ivy-cf-group-grid{column-gap:12px!important;grid-template-columns:repeat(auto-fit,minmax(82px,1fr))!important;justify-items:center!important;row-gap:16px!important}
  .ivy-cf-desktop .ivy-cf-deep-groups .ivy-cf-circle{max-width:96px!important}
}
@media (min-width:1025px) and (max-width:1180px){.ivy-cf-desktop .ivy-cf-category-layout{grid-template-columns:minmax(270px,30%) minmax(0,1fr)!important}}

/* v4.7.3: fixed left-origin tracks keep every circle vertically aligned. */
@media (min-width:1025px) {
  .ivy-cf-desktop .ivy-cf-shop-by-grid {
    grid-template-columns:repeat(3,minmax(0,82px))!important;
    justify-content:start!important;
    justify-items:center!important;
  }
  .ivy-cf-desktop .ivy-cf-deep-groups .ivy-cf-group-grid {
    grid-template-columns:repeat(auto-fill,96px)!important;
    justify-content:start!important;
    justify-items:center!important;
  }
  .ivy-cf-desktop .ivy-cf-deep-groups .ivy-cf-circle {
    justify-self:center!important;
    margin:0!important;
    width:96px!important;
  }
}

/* v4.8.5: reset ONLY the Categories trigger tracking.
   Horizontal category names keep their existing spacing unchanged. */
.ivy-cf-desktop .ivy-cf-trigger,
.ivy-cf-desktop .ivy-cf-trigger span {
  font-stretch:normal!important;
  letter-spacing:normal!important;
  word-spacing:normal!important;
  text-transform:none!important;
}
/* v4.8.77 — Curated Shop by Category is identical in purpose on every device. */
@media(max-width:1024px){
 .ivy-cf-mobile .ivy-cf-curated-shop-by{border-bottom:1px solid #eee;margin:0 0 16px!important;padding:0 0 16px!important}
 .ivy-cf-mobile .ivy-cf-curated-shop-by .ivy-cf-group-head{justify-content:flex-start!important}
 .ivy-cf-mobile .ivy-cf-curated-shop-by .ivy-cf-shop-by-grid{display:grid!important;grid-template-columns:repeat(var(--ivy-cf-mcols),minmax(0,1fr))!important;width:100%!important}
}
@media(max-width:420px){.ivy-cf-mobile .ivy-cf-curated-shop-by .ivy-cf-shop-by-grid{column-gap:8px!important;row-gap:14px!important}}

/* v4.8.83 — Just for You: match the left-origin, fixed-track spacing of the
   other desktop category circles. Keep circle dimensions/appearance untouched. */
@media (min-width:1025px) {
  .ivy-cf-desktop .ivy-cf-just-panel .ivy-cf-group-grid {
    grid-template-columns:repeat(auto-fill,96px)!important;
    column-gap:12px!important;
    row-gap:16px!important;
    justify-content:start!important;
    justify-items:center!important;
  }
  .ivy-cf-desktop .ivy-cf-just-panel .ivy-cf-circle {
    justify-self:center!important;
    margin:0!important;
    width:96px!important;
    max-width:96px!important;
  }
}
