.all-categories-page { background:#f7f7f2; color:#102218; }
.categories-header { grid-template-columns:auto 1fr auto; }
.categories-header .desktop-nav a.active { background:#eaf0e9; color:#1f5637; }
.categories-hero { position:relative; overflow:hidden; color:#fff; background:linear-gradient(120deg,#07170f,#123722 65%,#1e5637); }
.categories-hero::after { content:""; position:absolute; inset:0; opacity:.12; background-image:linear-gradient(rgba(255,255,255,.25) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.25) 1px,transparent 1px); background-size:58px 58px; }
.categories-hero-inner { position:relative; z-index:1; padding:74px 0 68px; }
.categories-hero h1 { max-width:820px; margin:0; font:800 clamp(2.5rem,5vw,4.7rem)/1 Manrope,sans-serif; letter-spacing:-.055em; }
.categories-hero p:not(.eyebrow) { max-width:650px; margin:22px 0 0; color:rgba(255,255,255,.7); font-size:1rem; }
.categories-facts { display:flex; flex-wrap:wrap; gap:30px; margin-top:32px; }
.categories-facts span { padding-right:30px; border-right:1px solid rgba(255,255,255,.18); color:rgba(255,255,255,.6); font-size:.75rem; }
.categories-facts span:last-child { border:0; }
.categories-facts strong { display:block; color:#fff; font:800 1.25rem Manrope,sans-serif; }
.categories-tools { position:sticky; top:78px; z-index:30; padding:18px 0; background:rgba(247,247,242,.94); border-bottom:1px solid #dfe7df; backdrop-filter:blur(16px); }
.category-search { max-width:680px; height:52px; margin:auto; display:flex; align-items:center; gap:10px; padding:0 16px; border:1px solid #cedacf; border-radius:14px; background:#fff; }
.category-search span { color:#1f5637; font-size:1.3rem; }
.category-search input { width:100%; border:0; outline:0; background:transparent; color:#102218; }
.group-jump { display:flex; gap:8px; margin-top:14px; overflow-x:auto; scrollbar-width:thin; padding-bottom:3px; }
.group-jump a { flex:0 0 auto; padding:8px 11px; border:1px solid #d7e1d8; border-radius:99px; background:#fff; color:#1f5637; text-decoration:none; font-size:.7rem; font-weight:800; }
.search-feedback { margin:12px 0 0; text-align:center; color:#1f5637; font-size:.8rem; font-weight:700; }
.category-groups { padding:32px 0 80px; }
.category-group-section { scroll-margin-top:180px; padding:38px 0; border-bottom:1px solid #dfe7df; }
.category-group-head { display:flex; justify-content:space-between; align-items:end; gap:24px; margin-bottom:22px; }
.category-group-head p { margin:0 0 5px; color:#1f5637; font-size:.63rem; font-weight:800; letter-spacing:.15em; }
.category-group-head h2 { margin:0; font:800 clamp(1.7rem,3vw,2.5rem) Manrope,sans-serif; letter-spacing:-.04em; }
.category-group-head > span { color:#6a776f; font-size:.76rem; }
.category-index-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:13px; }
.category-index-card { min-width:0; display:grid; grid-template-columns:74px 1fr auto; align-items:center; gap:14px; padding:12px; border:1px solid #dfe7df; border-radius:16px; background:#fff; color:#102218; text-decoration:none; box-shadow:0 6px 20px rgba(16,40,27,.04); transition:.2s ease; }
.category-index-card:hover { transform:translateY(-3px); border-color:#a8c0ae; box-shadow:0 14px 30px rgba(16,40,27,.09); }
.category-index-image { width:74px; height:68px; display:grid; place-items:center; overflow:hidden; border-radius:11px; background:#f1f4ef; }
.category-index-image img { width:100%; height:100%; padding:6px; object-fit:contain; }
.category-index-copy { min-width:0; }
.category-index-copy strong { display:block; overflow:hidden; text-overflow:ellipsis; font:750 .84rem Manrope,sans-serif; }
.category-index-copy small { display:block; margin-top:5px; color:#6a776f; font-size:.66rem; }
.category-index-arrow { width:31px; height:31px; display:grid; place-items:center; border-radius:50%; background:#edf3ec; color:#1f5637; }
.categories-footer a { color:rgba(255,255,255,.65); text-decoration:none; }
@media(max-width:900px){.categories-header{grid-template-columns:1fr auto}.categories-header .desktop-nav{display:none}.categories-tools{top:68px}.category-index-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.categories-hero-inner{padding:52px 0}.categories-hero h1{font-size:2.65rem}.categories-facts{gap:16px}.categories-facts span{padding-right:16px}.categories-tools{padding:13px 0}.category-search{height:48px}.category-index-grid{grid-template-columns:1fr}.category-group-head{align-items:start;flex-direction:column;gap:6px}.category-group-section{padding:30px 0}.categories-footer{height:auto;padding:22px 0;align-items:flex-start;flex-direction:column}}
