/* V2.7: stable carousel and mobile sticky navigation */
.ca-carousel-wrap{display:flex;gap:9px;align-items:center;min-width:0;width:100%;position:relative}
.ca-carousel-wrap .ca-carousel-track{flex:1 1 auto;min-width:0;display:grid!important;grid-auto-flow:column!important;overflow-x:auto!important;overflow-y:hidden!important;scroll-snap-type:x mandatory;scroll-behavior:smooth;overscroll-behavior-x:contain;scrollbar-width:none;grid-template-columns:none!important;align-items:stretch;gap:16px!important;padding:6px 2px 14px!important}
.ca-carousel-track::-webkit-scrollbar{display:none}
.ca-topic-section .ca-carousel-track{grid-auto-columns:calc((100% - 48px)/4)!important}
.ca-carousel-wrap .ca-program-grid.ca-carousel-track{grid-auto-columns:calc((100% - 32px)/3)!important}
.ca-carousel-track>*{min-width:0!important;width:100%!important;scroll-snap-align:start;height:100%;box-sizing:border-box}
.ca-carousel-arrow{flex:0 0 34px;width:34px;height:42px;display:grid;place-items:center;border:1px solid #d5e7dd;border-radius:11px;background:#f1f8f3;color:#17563c;font-size:28px;line-height:1;cursor:pointer;box-shadow:0 2px 10px #173c2210}
.ca-carousel-arrow:disabled{opacity:.28;cursor:default}
.ca-carousel-arrow:not(:disabled):hover{background:#dcefe3}
.ca-carousel-arrow:focus-visible,.ca-carousel-track:focus-visible{outline:2px solid #176444;outline-offset:3px}
@media(max-width:850px){
:root{--ca-header-h:74px}
.page-wrapper>header{position:sticky!important;top:0!important;z-index:1201!important;background:#fff!important;margin-bottom:0!important;transform:none!important}
.ca-mobile-categories{position:sticky!important;top:var(--ca-header-h)!important;z-index:1200!important;display:block!important;margin-top:0!important;margin-bottom:0!important;transform:none!important;box-shadow:0 4px 10px #173c2212!important}
.ca-mobile-scroll{padding:8px 12px!important;scroll-padding-inline:12px!important}
.page-wrapper>header .nav-wrapper{z-index:1250!important;max-height:calc(100dvh - var(--ca-header-h) - 10px)!important}
.page-wrapper>header #menu>li{border-bottom:1px solid #edf1ee!important;margin:0!important;padding:0 46px 0 0!important;position:relative!important;min-height:48px!important}
.page-wrapper>header #menu>li>a{display:flex!important;padding:13px 9px!important;font-size:14px!important;font-weight:700!important;min-height:47px!important;align-items:center!important}
.page-wrapper>header #menu .ca-sub-trigger{position:absolute!important;right:3px!important;top:4px!important;width:39px!important;height:39px!important;border-radius:10px!important;background:#eef7f1!important;border:1px solid #dbece1!important;display:grid!important;place-items:center!important}
.page-wrapper>header #menu li.ca-sub-open>ul{display:block!important;position:static!important;visibility:visible!important;opacity:1!important;width:100%!important;min-width:0!important;padding:6px 0 10px 12px!important;box-shadow:none!important;background:#f7faf8!important;transform:none!important}
.page-wrapper>header #menu li.ca-sub-open>ul li a{display:block!important;white-space:normal!important;padding:11px 10px!important;font-size:13px!important}
.ca-topic-section .ca-carousel-track{grid-auto-columns:calc((100% - 12px)/2)!important;gap:12px!important}
.ca-carousel-wrap .ca-program-grid.ca-carousel-track{grid-auto-columns:calc((100% - 12px)/2)!important;gap:12px!important}
.ca-carousel-arrow{flex-basis:27px;width:27px;height:38px;font-size:23px}
}
@media(max-width:540px){.ca-topic-section .ca-carousel-track,.ca-carousel-wrap .ca-program-grid.ca-carousel-track{grid-auto-columns:100%!important}}
@media(prefers-reduced-motion:reduce){.ca-carousel-track{scroll-behavior:auto!important}}
