.category-entry { background: #f4f3ed; padding: 45px 0; }
.category-entry h2 { font-family: var(--font-display); font-weight: 400; font-size: clamp(28px, 3vw, 40px); margin-bottom: 25px; }
.category-eyebrow { text-transform: uppercase; letter-spacing: .14em; font-size: 11px; font-weight: 600; color: #626358; margin-bottom: 12px; }
.category-shortcuts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.category-shortcut { display: grid; grid-template-columns: 1fr auto; gap: 8px; padding: 20px; color: #252821; background: #fff; border: 1px solid #d4d6ca; border-radius: 12px; }
.category-shortcut > span:first-child { font-size: 14px; font-weight: 600; }
.category-shortcut small { grid-column: 1; grid-row: 2; font-size: 12px; color: #63685c; }
.category-shortcut > span:last-child { grid-column: 2; grid-row: 1 / 3; align-self: center; }
.category-shortcut:hover { background: #eeeee5; border-color: #70785e; }
.category-body { background: #faf9f6; }
.category-header { background: #121412; color: white; padding: 24px 40px; display: flex; justify-content: space-between; align-items: center; gap: 20px; flex-wrap: wrap; }
.category-brand { color: white; font-size: 14px; letter-spacing: .14em; font-weight: 600; }
.category-header nav { display: flex; gap: 24px; flex-wrap: wrap; }
.category-header nav a { color: #e0e4d9; font-size: 13px; padding-bottom: 5px; }
.category-header a[aria-current] { border-bottom: 1px solid #d4bf8e; }
.category-intro { padding: 65px 0 45px; }
.category-intro h1 { font-family: var(--font-display); font-weight: 400; line-height: 1.12; font-size: clamp(40px, 5vw, 65px); margin-bottom: 25px; }
.category-intro > p:not(.category-eyebrow) { color: #59604f; max-width: 600px; margin-bottom: 35px; font-size: 15px; }
.category-group { border-top: 1px solid #d4d6ca; padding: 45px 0; scroll-margin-top: 24px; }
.category-heading { display: flex; align-items: center; justify-content: space-between; gap: 25px; margin-bottom: 25px; }
.category-heading h2 { font-family: var(--font-display); font-weight: 400; font-size: 36px; margin-bottom: 12px; }
.category-heading p:not(.category-eyebrow) { font-size: 14px; color: #59604f; }
.category-heading > a { font-size: 12px; color: #3e4933; text-decoration: underline; }
.category-products { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px; }
.category-product { background: white; border: 1px solid #e1e3da; border-radius: 16px; display: grid; grid-template-columns: 40% 1fr; overflow: hidden; }
.category-product > img { width: 100%; height: 230px; object-fit: contain; padding: 22px; }
.category-product > div { padding: 28px 22px; align-self: center; }
.category-product h3 { font-size: 17px; margin-bottom: 12px; }
.category-product p { font-size: 13px; color: #59604f; margin-bottom: 18px; }
.category-product button { border: 0; border-radius: 99px; background: #1c2118; color: white; font-size: 13px; min-height: 44px; padding: 10px 20px; }
.category-notice { background: #eeeeE5; padding: 20px; border-radius: 10px; font-size: 13px; margin-block: 10px 45px; }
.category-footer { border-top: 1px solid #d4d6ca; padding-block: 30px; display: flex; justify-content: space-between; flex-wrap: wrap; gap: 20px; }
.category-footer a { color: #3e4933; font-size: 13px; }
.category-footer nav { display: flex; flex-wrap: wrap; gap: 20px; }
.category-footer p { flex-basis: 100%; font-size: 11px; color: #59604f; }
.category-skip { position: absolute; top: -100px; left: 20px; background: white; padding: 12px; color: black; }
.category-skip:focus { top: 10px; }
.category-body :focus-visible, .category-entry :focus-visible { outline: 3px solid #987d40; outline-offset: 4px; }
@media (max-width: 850px) { .category-shortcuts { grid-template-columns: repeat(2,minmax(0,1fr)); } .category-products { grid-template-columns: 1fr; } .category-header { padding: 22px; } }
@media (max-width: 480px) { .category-shortcut { padding: 16px 12px; } .category-heading { align-items: flex-start; flex-direction: column; gap: 12px; } .category-product > div { padding: 20px 14px; } .category-product > img { height: 215px; padding: 12px; } .category-intro { padding-top: 40px; } .category-shortcut > span:first-child { font-size: 13px; } }

/* Explicit routes from editorial selections to the full filtered catalog. */
.category-catalog-route { margin:16px 0 24px; }
.category-catalog-route .btn { max-width:100%; text-align:center; overflow-wrap:anywhere; }
