.lc-category-banner { --category-wash: #f6efde; --category-shape: #dedebd; --category-accent: #586c40; position: relative; isolation: isolate; display: flex; align-items: center; overflow: hidden; border: 1px solid #ddd4bd; border-radius: 1.4rem; background: var(--category-wash); color: #435333; text-decoration: none; }
.lc-category-tone-food { --category-wash: #edf0df; --category-shape: #d3deba; --category-accent: #536c3d; }
.lc-category-tone-snack { --category-wash: #f9ead8; --category-shape: #f1d4b1; --category-accent: #995522; }
.lc-category-tone-litter { --category-wash: #eeede2; --category-shape: #dbdbc2; --category-accent: #666440; }
.lc-category-tone-care { --category-wash: #eaf0e5; --category-shape: #d1e0c7; --category-accent: #4f7046; }
.lc-category-tone-toy { --category-wash: #f9edcd; --category-shape: #eddaa4; --category-accent: #896221; }
.lc-category-tone-accessories { --category-wash: #eaece1; --category-shape: #d2d8bc; --category-accent: #566a45; }
.lc-category-tone-wear { --category-wash: #f6e7dc; --category-shape: #eacbbb; --category-accent: #91583b; }
.lc-category-banner-copy { position: relative; z-index: 2; width: 59%; padding: 1.5rem; }
.lc-category-banner-eyebrow { margin: 0 0 .5rem; color: var(--category-accent); font-size: .72rem; font-weight: 600; letter-spacing: .02em; }
.lc-category-banner h1, .lc-category-banner h2 { color: #3e5030; margin: 0; line-height: 1.35; overflow-wrap: anywhere; }
.lc-category-banner h2 { font-size: clamp(1.25rem, 1.75vw, 1.7rem); }
.lc-category-banner-subtitle { margin: .7rem 0 0; color: #606246; font-size: .88rem; line-height: 1.65; }
.lc-category-banner-cta { display: inline-flex; align-items: center; gap: .55rem; min-height: 44px; margin-top: .9rem; font-size: .82rem; color: var(--category-accent); font-weight: 600; }
.lc-category-orbit { position: absolute; z-index: -1; right: -13%; bottom: -70%; width: 68%; aspect-ratio: 1; border-radius: 50%; background: var(--category-shape); transform: rotate(-16deg); }
.lc-category-orbit::after { content: ''; position: absolute; inset: -1.1rem; border: 1px dashed var(--category-accent); border-radius: inherit; opacity: .22; }
.lc-category-scenery { position: absolute; z-index: 0; right: -1%; top: 50%; transform: translateY(-50%) rotate(-6deg); width: 53%; aspect-ratio: 1; mix-blend-mode: multiply; pointer-events: none; transition: transform .25s ease; }
.lc-category-scenery img { display: block; width: 100%; height: 100%; object-fit: contain; border-radius: 50%; }
.lc-category-paw { position: absolute; z-index: 1; color: var(--category-accent); opacity: .12; transform: rotate(18deg); }
.lc-category-paw .icon { width: 2.7rem; height: 2.7rem; }
.lc-category-paw--one { top: .85rem; right: 1rem; }
.lc-category-paw--two { bottom: 1rem; right: 41%; transform: rotate(-24deg); }
.lc-category-paw--two .icon { width: 1.8rem; height: 1.8rem; }
.lc-category-banner--card { min-height: 235px; height: 100%; }
.lc-category-banner--card:hover { color: #3e5030; box-shadow: 0 8px 22px #4c543512; border-color: var(--category-accent); }
.lc-category-banner--card:hover .lc-category-scenery { transform: translateY(-50%) rotate(0deg) scale(1.04); }
.lc-category-banner--card:focus-visible { outline: 3px solid var(--category-accent); outline-offset: 4px; }
.lc-category-banner--hero { min-height: 236px; margin: 0 0 1rem; }
.lc-category-banner--hero .lc-category-banner-copy { width: 64%; padding: 1.65rem 2.5rem; }
.lc-category-banner--hero h1 { font-size: clamp(1.8rem, 3.1vw, 2.8rem); }
.lc-category-banner--hero .lc-category-banner-eyebrow { font-size: .82rem; }
.lc-category-banner--hero .lc-category-banner-subtitle { font-size: 1rem; }
.lc-category-banner--hero .lc-category-scenery { width: 330px; max-width: 37%; right: 3.5%; }
.lc-category-banner--hero .lc-category-orbit { width: 38%; bottom: -105%; right: -4%; }
.lc-category-banner--hero .lc-category-paw--one { top: 1.3rem; right: 1.75rem; }
.lc-category-banner--hero .lc-category-paw--two { bottom: 1.3rem; right: 38%; }
.shop-main:has(.lc-category-banner--hero) { position: relative; isolation: isolate; }
.lc-catalog-backdrop { position: absolute; z-index: -1; inset: 0; overflow: hidden; pointer-events: none; }
.lc-catalog-backdrop img { position: absolute; top: 360px; right: -90px; width: 640px; opacity: .045; mix-blend-mode: multiply; transform: rotate(-12deg); }
.category-choice-strip { min-width: 0; max-width: 100%; margin: 0 0 .7rem; }
.category-choice-scroll { min-width: 0; overflow-x: auto; overscroll-behavior-inline: contain; scroll-snap-type: x proximity; scrollbar-width: thin; scrollbar-color: #adb797 transparent; padding: .3rem; }
.category-choice-scroll > ul { display: flex; gap: .6rem; list-style: none; padding: 0; margin: 0; }
.category-choice-scroll li { flex: 0 0 175px; min-width: 0; scroll-snap-align: start; }
.category-choice { display: flex; align-items: center; gap: .6rem; min-height: 76px; height: 100%; padding: .6rem; border: 1px solid #d9decd; border-radius: .9rem; background: var(--category-wash, #f6efde); color: #3e5030; text-decoration: none; }
.category-choice:hover { border-color: var(--category-accent, #586c40); box-shadow: 0 3px 10px #4c543512; }
.category-choice-art { display: block; flex: 0 0 44px; width: 44px; height: 44px; overflow: hidden; border-radius: 50%; mix-blend-mode: multiply; }
.category-choice-art img { display: block; width: 100%; height: 100%; object-fit: contain; }
.category-choice-name { flex: 1; min-width: 0; font-size: .84rem; font-weight: 600; line-height: 1.5; overflow-wrap: anywhere; }
.category-choice:focus-visible { outline: 3px solid var(--forest); outline-offset: 2px; }
.woocommerce-products-header:has(.category-choice-strip) .lc-category-banner--hero { min-height: 180px; margin-bottom: .45rem; }
.woocommerce-products-header:has(.category-choice-strip) .lc-category-banner-copy { padding-block: 1.1rem; }
.woocommerce-products-header:has(.category-choice-strip) .lc-category-scenery { width: 270px; }
.shop-main .woocommerce-products-header:has(.lc-category-banner--hero) { margin-bottom: .8rem; }
.shop-main .woocommerce-products-header:has(.lc-category-banner--hero) .catalog-filter-panel { margin: 0; border: 0; background: transparent; box-shadow: none; }
.shop-main .woocommerce-products-header:has(.lc-category-banner--hero) .catalog-filter-panel > summary { width: fit-content; min-height: 44px; padding: .6rem 1rem; border: 1px solid var(--border); border-radius: 2rem; background: #fffdf9; cursor: pointer; }
.shop-main:has(.lc-category-banner--hero) .woocommerce-result-count, .shop-main:has(.lc-category-banner--hero) .woocommerce-ordering { margin-bottom: .75rem; }
.shop-main:has(.lc-category-banner--hero) .woocommerce-breadcrumb { margin-bottom: .75rem; }
@media (max-width: 1000px) {
  .lc-category-banner-copy { padding: 1.15rem; }
  .lc-category-banner--hero .lc-category-banner-copy { padding: 1.5rem; }
}
@media (max-width: 600px) {
  .category-choice-scroll li { flex-basis: 168px; }
  .category-choice { min-height: 72px; }
  .category-choice-name { font-size: .8rem; }
  .woocommerce-products-header:has(.category-choice-strip) .lc-category-banner--hero { min-height: 140px; }
  .woocommerce-products-header:has(.category-choice-strip) .lc-category-banner-copy { padding-block: .85rem; }
  .woocommerce-products-header:has(.category-choice-strip) .lc-category-banner-eyebrow { display: none; }
  .woocommerce-products-header:has(.category-choice-strip) .lc-category-scenery { width: 155px; }
  .shop-main:has(.category-choice-strip) .woocommerce-result-count { float: left; max-width: 45%; padding-block: .35rem; font-size: .78rem; }
  .shop-main:has(.category-choice-strip) .woocommerce-ordering { float: right; width: 52%; }
  .shop-main:has(.category-choice-strip) .woocommerce-ordering select { width: 100%; font-size: .78rem; }
  .lc-category-banner { border-radius: 1.2rem; }
  .lc-category-banner--card { min-height: 200px; }
  .lc-category-banner-copy { width: 62%; padding: 1.15rem; }
  .lc-category-banner h2 { font-size: 1.3rem; }
  .lc-category-banner-subtitle { font-size: .8rem; }
  .lc-category-banner-cta { margin-top: .5rem; }
  .lc-category-banner--hero { min-height: 195px; }
  .lc-category-banner--hero .lc-category-banner-copy { width: 65%; padding: 1.15rem; }
  .lc-category-banner--hero h1 { font-size: clamp(1.45rem, 6vw, 1.8rem); line-height: 1.4; }
  .lc-category-banner--hero .lc-category-banner-eyebrow { font-size: .7rem; }
  .lc-category-banner--hero .lc-category-banner-subtitle { font-size: .8rem; }
  .lc-category-banner--hero .lc-category-scenery { width: 185px; max-width: 49%; right: -5%; }
  .lc-category-banner--hero .lc-category-orbit { width: 66%; bottom: -36%; right: -20%; }
  .lc-category-banner--hero .lc-category-paw--one { top: .7rem; right: .7rem; }
  .lc-category-banner--hero .lc-category-paw--two { right: 32%; bottom: .65rem; }
  .lc-category-paw .icon { width: 1.8rem; height: 1.8rem; }
  .lc-catalog-backdrop img { top: 370px; width: 360px; right: -80px; }
}
@media (prefers-reduced-motion: reduce) {
  .lc-category-scenery { transition: none; }
}
