.ff-catalogue{background:#fafaf8;min-height:60vh}
.ff-catalogue-heading{padding-block:32px 26px}
.ff-catalogue-heading h1{font-size:clamp(30px,3vw,42px);line-height:1.35;margin:18px 0 10px;color:#26372c}
.ff-catalogue-heading p{color:#5f665e;margin:0;font-size:17px}
.ff-catalogue-intro{max-width:80ch}
.ff-catalogue .archive-layout-ff{display:grid;grid-template-columns:220px minmax(0,1fr);gap:32px;padding:0 0 64px;align-items:start}
.ff-catalogue .archive-sidebar-ff{position:sticky;top:100px;margin:0;padding:0;border:0}
.ff-category-picker{border:1px solid #dedfd6;background:white;border-radius:12px;overflow:hidden}
.ff-category-picker summary{cursor:pointer;display:flex;justify-content:space-between;gap:16px;padding:18px;font-weight:500;color:#26372c;list-style:none;background:#ecf3e5}
.ff-category-picker summary::-webkit-details-marker,.ff-catalogue-sort summary::-webkit-details-marker{display:none}
.ff-category-picker[open]>summary .ff-nav__caret{transform:rotate(225deg)}
.ff-category-picker-body{padding:16px;max-height:65vh;overflow:auto}
.ff-category-all{display:block;padding:8px 0 16px;color:#315f2e;font-weight:500}
.ff-catalogue .filter-group__list a{min-height:40px}
.ff-catalogue .filter-group__list a.active{color:#315f2e;background:#ecf3e5;border-radius:6px;padding-inline:8px}
.ff-catalogue .filter-group__toggle{min-width:36px;min-height:36px}
.ff-catalogue-toolbar{display:flex;align-items:center;gap:16px;justify-content:space-between}
.ff-catalogue-search{margin:0;max-width:440px;flex:1;background:white}
.ff-catalogue-sort{position:relative;flex:none;font-size:15px}
.ff-catalogue-sort summary{list-style:none;cursor:pointer;border:1px solid #c7cec1;border-radius:8px;background:white;min-height:48px;padding:11px 16px;display:flex;gap:24px;align-items:center;color:#26372c}
.ff-catalogue-sort>div{position:absolute;right:0;top:calc(100% + 6px);min-width:190px;padding:6px;border:1px solid #dedfd6;border-radius:8px;background:white;z-index:5;box-shadow:0 8px 24px #26372c14}
.ff-catalogue-sort a{display:block;padding:10px 12px;color:#26372c;border-radius:5px}
.ff-catalogue-sort a:hover,.ff-catalogue-sort a[aria-current]{background:#ecf3e5;color:#315f2e}
.ff-catalogue .ff-catalogue-count{font-size:14px;color:#5f665e;margin:18px 0}
.ff-catalogue .ff-products-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.ff-catalogue .ffh-product-content{flex:1}
.ff-catalogue .ffh-product{display:flex;flex-direction:column;min-width:0}
.ff-catalogue .ffh-product h3{overflow-wrap:anywhere}
.ff-catalogue .ff-archive-load-more{margin-top:32px;text-align:center}
.ff-catalogue .load-more-btn{background:#eaf4e2;color:#315f2e;border:1px solid #c7cec1;border-radius:8px;padding:12px 24px}
@media(max-width:1050px){.ff-catalogue .archive-layout-ff{grid-template-columns:190px minmax(0,1fr);gap:24px}.ff-catalogue .ff-products-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.ff-catalogue-heading{padding-block:24px}.ff-catalogue-heading p{font-size:15px}.ff-catalogue .archive-layout-ff{grid-template-columns:1fr;gap:20px}.ff-catalogue .archive-sidebar-ff{position:static}.ff-category-picker-body{max-height:50vh}.ff-catalogue-toolbar{gap:10px;flex-wrap:wrap}.ff-catalogue-search{max-width:none;flex-basis:100%}.ff-catalogue-sort{margin-left:auto}.ff-catalogue-sort summary{min-height:44px}.ff-catalogue .ff-products-grid{gap:16px 12px}.ff-catalogue .ffh-product-content{padding:12px 10px}}

body.ff-catalogue-page{--ffh-ink:#26372c;--ffh-muted:#5f665e;--ffh-green:#83c452;--ffh-green-deep:#315f2e;--ffh-line:#dedfd6;background:#fafaf8}
.ff-catalogue-page .ff-nav{background:#fafaf8;backdrop-filter:none}
.ff-catalogue-page .ff-nav__inner{height:84px;max-width:1240px}
.ff-catalogue-page .ff-nav__logo img{max-height:54px}
.ff-catalogue-page .ff-nav__cta,.ff-catalogue-page .ff-nav__cta-mobile{background:#83c452;color:#20341b!important;box-shadow:none;border-radius:8px}
.ff-catalogue .ff-catalogue-search input{border:1px solid #c7cec1;border-radius:8px;background:white;color:#26372c}
.ff-catalogue .filter-group__toggle{padding:0;width:36px;flex:0 0 36px;background:#ecf3e5;color:#315f2e}
.ff-catalogue .ff-catalogue-heading p{margin-top:12px}
@media(max-width:1050px){.ff-catalogue-page .ff-nav__links{display:none}.ff-catalogue-page .ff-nav__mobile-btn{display:block}.ff-catalogue-page .ff-mobile-menu{top:84px}}
@media(max-width:768px){.ff-catalogue-page .ff-nav__inner{height:68px;gap:12px}.ff-catalogue-page .ff-nav__logo img{max-height:43px}.ff-catalogue-page .ff-mobile-menu{top:68px}.ff-catalogue-page .ff-nav__cta--desktop{display:none}.ff-catalogue-page .ff-nav__cta-mobile{display:flex;align-items:center;min-height:42px}.ff-catalogue-page .ff-nav__mobile-btn{min-height:42px}}
.ff-line-qr--catalogue{margin-top:24px;padding-top:20px;border-top:1px solid #dedfd6}
.ff-catalogue .ff-line-qr__title{font-size:16px;color:#26372c}
.ff-line-qr--catalogue .ff-line-qr__media{max-width:220px;padding:12px;border-radius:16px;box-shadow:none;background:#fff}
.ff-line-qr--catalogue .ff-line-qr__image{border-radius:0}
.ff-catalogue .ff-line-qr__note{font-size:13px;max-width:26ch}
@media(max-width:760px){.ff-line-qr--catalogue{display:grid;grid-template-columns:112px minmax(0,1fr);gap:8px 16px;text-align:left;align-items:center}.ff-line-qr--catalogue .ff-line-qr__media{grid-column:1;grid-row:1 / 3;width:112px;padding:6px;border-radius:12px}.ff-line-qr--catalogue .ff-line-qr__title{grid-column:2;align-self:end}.ff-line-qr--catalogue .ff-line-qr__note{grid-column:2;align-self:start}}
/* Category children occupy their own full-width row, never a flex column beside parents. */
.ff-catalogue .archive-layout-ff{grid-template-columns:260px minmax(0,1fr)}
.ff-category-picker-body{padding:12px;max-height:none;overflow:visible}
.ff-catalogue .filter-group__list .filter-group__item--parent{display:block;position:relative;margin:0 0 4px;padding:0}
.ff-catalogue .filter-group__item--parent>a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;padding:10px 8px;font-size:14px;font-weight:400;line-height:1.6;width:100%;min-width:0}
.ff-catalogue .filter-group__item--parent:has(>.filter-group__toggle)>a{width:calc(100% - 34px)}
.ff-catalogue .filter-group__item--parent>a>span:first-child{overflow-wrap:break-word;word-break:normal}
.ff-catalogue .filter-group__item--parent>a .count{font-size:12px;min-width:22px;text-align:right;color:#687160;font-variant-numeric:tabular-nums}
.ff-catalogue .filter-group__toggle{position:absolute;top:9px;right:0;width:30px;min-width:30px;height:30px;min-height:30px;background:transparent;border:0;border-radius:6px}
.ff-catalogue .filter-group__toggle::before{content:'';width:6px;height:6px;border-right:1.5px solid;border-bottom:1.5px solid;transform:rotate(45deg)}
.ff-catalogue .filter-group__toggle[aria-expanded=true]::before{content:'';transform:rotate(225deg)}
.ff-catalogue .filter-group__subcats{display:block;width:100%;flex-basis:100%;padding:0;margin:0}
.ff-catalogue .filter-group__subcats.is-collapsed{display:none}
.ff-catalogue .filter-group__subcats>.filter-group__list{margin-left:10px;padding-left:8px;border-left:1px solid #e3e7de}
.ff-catalogue .filter-group__list a.active{font-weight:500;background:#ecf3e5}
.ff-catalogue .ff-category-all{padding:10px 8px;font-size:15px}
.ff-catalogue .archive-sidebar-ff{position:static}
.ff-catalogue-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px}
.ff-catalogue .ff-catalogue-search{width:100%;max-width:none;min-width:0}
.ff-catalogue .ff-catalogue-search input{min-width:0}
.ff-catalogue-sort summary{gap:16px;justify-content:space-between;min-width:134px}
.ff-catalogue-sort .ff-nav__caret{width:7px;height:7px}
@media(min-width:761px) and (max-width:1050px){.ff-catalogue .archive-layout-ff{grid-template-columns:230px minmax(0,1fr);gap:24px}}
@media(max-width:760px){.ff-catalogue .archive-layout-ff{grid-template-columns:1fr}.ff-category-picker{position:relative;overflow:visible;z-index:10}.ff-category-picker>summary{border-radius:11px}.ff-category-picker[open]>summary .ff-nav__caret{transform:rotate(225deg)}.ff-category-picker-body{position:absolute;inset-inline:-1px;top:calc(100% + 8px);max-height:min(55vh,var(--ff-picker-height,55vh));overflow-y:auto;overscroll-behavior:contain;background:#fff;border-radius:12px;box-shadow:0 8px 28px #26372c26}.ff-category-picker[data-open-above] .ff-category-picker-body{top:auto;bottom:calc(100% + 8px)}.ff-category-picker summary:focus-visible,.ff-category-picker-body a:focus-visible{outline:2px solid #315f2e;outline-offset:3px}.ff-catalogue .ff-catalogue-toolbar{grid-template-columns:minmax(0,1fr) 132px;gap:10px}.ff-catalogue-sort{margin:0;font-size:14px}.ff-catalogue-sort summary{min-width:0;min-height:48px;padding:10px 12px;gap:10px}.ff-catalogue-search input{font-size:14px;padding-left:10px}}
