/* ============================================================
 Mobile Category Accordion — FY Bedding
 ============================================================ */

/* ── Default: hide mobile-only toggles on desktop ── */
.cat-toggle { display: none; }

/* ── Desktop category filter styling ── */
.cat-filter-wrap { max-width: 1280px; margin: 0 auto; padding: 0 48px; }
.cat-filter-group { margin-bottom: 16px; }
.cat-label-row { font-family: 'Inter', sans-serif; font-size: 11px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: #9D6238; margin-bottom: 10px; }
.cat-all-products { margin-bottom: 20px; }

/* ── Mobile (<=768px) ── */
@media (max-width: 768px) {
 .cat-filter-wrap { max-width: none; margin: 0; padding: 12px 20px !important; }

 .cat-filter-group {
 margin-bottom: 6px !important;
 border: 1px solid #e8e0d6;
 border-radius: 10px;
 overflow: hidden;
 background: #fff;
 }

 .cat-filter-group .cat-label-row {
 display: flex;
 align-items: center;
 justify-content: space-between;
 padding: 10px 14px;
 cursor: pointer;
 user-select: none;
 -webkit-tap-highlight-color: transparent;
 transition: background .15s;
 margin-bottom: 0 !important;
 font-family: 'Inter', sans-serif;
 font-size: inherit;
 font-weight: inherit;
 letter-spacing: inherit;
 text-transform: inherit;
 color: inherit;
 }
 .cat-filter-group .cat-label-row:active {
 background: #FAF8F5;
 }

 .cat-filter-group .cat-label-row > span:first-child {
 font-weight: 600 !important;
 font-size: 13px !important;
 color: #3D2A1C !important;
 text-transform: none !important;
 letter-spacing: normal !important;
 }

 .cat-filter-group .cat-toggle {
 display: block !important;
 font-size: 18px !important;
 color: #9D6238 !important;
 transition: transform 0.25s ease !important;
 line-height: 1 !important;
 }
 .cat-filter-group.open .cat-toggle {
 transform: rotate(45deg) !important;
 }

 .cat-filter-group .cat-buttons {
 display: none !important;
 flex-wrap: wrap;
 gap: 5px;
 padding: 0 14px 12px;
 }
 .cat-filter-group.open .cat-buttons {
 display: flex !important;
 }

 .cat-filter-group .cat-buttons .btn {
 font-size: 11px !important;
 padding: 5px 12px !important;
 border-radius: 6px !important;
 }

 .cat-all-products {
 margin-bottom: 10px !important;
 }
 .cat-all-products .btn {
 font-size: 13px !important;
 padding: 7px 20px !important;
 }
}

@media (max-width: 480px) {
 .cat-filter-wrap {
 padding: 8px 14px !important;
 }
 .cat-filter-group .cat-label-row {
 padding: 8px 12px !important;
 }
 .cat-filter-group .cat-buttons {
 padding: 0 12px 10px !important;
 }
}
