/* V2.8 - Mobile header inspired by portal news layout, cleaner desktop header, sticky quick menu */
:root{--ca-brand:#14533b;--ca-brand-dark:#10382b;--ca-brand-soft:#edf6f0;--ca-header-h:76px;--ca-quick-h:54px}
.page-wrapper>header{background:#fff!important;border-bottom:1px solid #e2ece7!important}
.page-wrapper>header .ca-header-row{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;min-height:88px!important;margin:0!important}
.ca-logo-link{display:flex!important;align-items:center!important}
.ca-brand-name{display:flex!important;flex-direction:column!important;justify-content:center!important}
.ca-brand-name small{margin-top:4px!important}
.page-wrapper>header .ca-drawer-head,.page-wrapper>header .ca-drawer-kicker,.page-wrapper>header .ca-drawer-close{display:none}

/* desktop cleanup */
@media(min-width:851px){
  .page-wrapper>header .ca-menu-top{display:none!important}
  .page-wrapper>header .logo{display:flex!important;align-items:center!important;gap:14px!important;float:none!important;width:auto!important;max-width:340px!important;flex:0 0 auto!important;padding:0!important}
  .page-wrapper>header .logo img{width:112px!important;height:58px!important;max-width:112px!important;object-fit:contain!important}
  .page-wrapper>header .nav-wrapper{display:block!important;position:static!important;flex:1 1 auto!important;width:auto!important;max-width:none!important;padding-left:26px!important}
  .page-wrapper>header nav{display:flex!important;justify-content:flex-end!important;align-items:center!important}
  .page-wrapper>header nav #menu{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:16px!important;list-style:none!important;margin:0!important;padding:0!important}
  .page-wrapper>header nav #menu>li{position:relative!important;display:block!important;float:none!important;padding:0!important;margin:0!important}
  .page-wrapper>header nav #menu>li>a{display:flex!important;align-items:center!important;gap:6px!important;padding:13px 4px!important;font-size:15px!important;font-weight:700!important;color:#183d31!important;white-space:nowrap!important}
  .page-wrapper>header nav #menu>li>a:hover{color:#1a8a5b!important}
  .page-wrapper>header nav #menu li ul{top:100%!important;left:0!important;min-width:220px!important;border:1px solid #d9e8df!important;border-radius:12px!important;overflow:hidden!important;box-shadow:0 18px 36px rgba(16,56,43,.12)!important;background:#fff!important}
  .page-wrapper>header nav #menu li ul a{padding:12px 14px!important;font-size:13px!important;color:#214d3d!important}
  .page-wrapper>header nav #menu li ul a:hover{background:#f4f9f6!important;color:#146345!important}
  .page-wrapper>header .ca-sub-trigger,.page-wrapper>header .ca-drawer-head{display:none!important}
  .ca-mobile-categories{display:none!important}
}

/* mobile/tablet */
@media(max-width:850px){
  html{scroll-padding-top:calc(var(--ca-header-h) + var(--ca-quick-h) + 6px)!important}
  body.ca-nav-open{overflow:hidden!important}
  body.ca-nav-open::before{content:"";position:fixed;inset:0;background:rgba(6,26,20,.45);z-index:1295}
  .top-bar{display:none!important}
  .page-wrapper>header{position:sticky!important;top:0!important;z-index:1300!important;box-shadow:0 3px 14px rgba(12,48,33,.08)!important}
  .page-wrapper>header>.container{width:calc(100% - 24px)!important;padding:0!important}
  .page-wrapper>header .ca-header-row{min-height:78px!important;gap:10px!important;padding:10px 0!important;position:relative!important}
  .page-wrapper>header .ca-menu-top{order:1!important;display:flex!important;align-items:center!important;justify-content:center!important;flex:0 0 46px!important;width:46px!important;height:46px!important;background:var(--ca-brand)!important;border:0!important;border-radius:12px!important;box-shadow:0 8px 18px rgba(20,83,59,.18)!important;z-index:2!important}
  .page-wrapper>header .ca-menu-top span{display:block!important;width:20px!important;height:2.5px!important;border-radius:10px!important;background:#fff!important;margin:2.5px 0!important}
  .page-wrapper>header .logo{order:2!important;flex:1 1 auto!important;max-width:none!important;width:auto!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;float:none!important;padding:0!important;min-width:0!important}
  .page-wrapper>header .logo img{width:78px!important;height:42px!important;max-width:78px!important;object-fit:contain!important}
  .ca-brand-name{font-size:14px!important;line-height:1.05!important;text-align:left!important;color:#123b2d!important}
  .ca-brand-name small{font-size:10px!important;font-weight:700!important;color:#6f8679!important;line-height:1.25!important}
  .page-wrapper>header .nav-wrapper{position:fixed!important;top:0!important;left:0!important;bottom:0!important;width:min(88vw,390px)!important;max-width:390px!important;height:100dvh!important;background:#f8fbf9!important;border-right:1px solid #dfe9e3!important;box-shadow:20px 0 40px rgba(7,33,24,.18)!important;z-index:1301!important;overflow:hidden auto!important;transform:translateX(-105%)!important;transition:transform .28s ease!important;padding:0!important;display:block!important}
  .page-wrapper>header .nav-wrapper.ca-menu-open{transform:translateX(0)!important}
  .page-wrapper>header .ca-drawer-head{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:12px!important;padding:22px 18px 16px!important;background:linear-gradient(135deg,#156244,#0f3c2d)!important;color:#fff!important;position:sticky!important;top:0!important;z-index:2!important}
  .ca-drawer-brand{display:grid!important;grid-template-columns:6px 1fr!important;column-gap:12px!important;align-items:start!important}
  .ca-drawer-accent{display:block!important;width:6px!important;height:40px!important;border-radius:99px!important;background:#f3d17d!important;grid-row:span 2!important;margin-top:2px!important}
  .ca-drawer-brand strong{display:block!important;font-size:22px!important;line-height:1.1!important;letter-spacing:-.02em!important}
  .ca-drawer-brand small{display:block!important;font-size:11px!important;opacity:.92!important;margin-top:4px!important}
  .page-wrapper>header .ca-drawer-close{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 42px!important;width:42px!important;height:42px!important;border:0!important;border-radius:12px!important;background:rgba(255,255,255,.14)!important;color:#fff!important;font-size:28px!important;line-height:1!important}
  .page-wrapper>header .ca-drawer-section{padding:16px 14px 18px!important}
  .page-wrapper>header .ca-drawer-kicker{display:block!important;font-size:12px!important;font-weight:800!important;letter-spacing:.12em!important;color:#7c8f86!important;text-transform:uppercase!important;margin:0 6px 14px!important}
  .page-wrapper>header nav{display:block!important}
  .page-wrapper>header nav #menu{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;list-style:none!important;margin:0!important;padding:0!important}
  .page-wrapper>header nav #menu>li{position:relative!important;float:none!important;display:block!important;min-height:96px!important;background:#fff!important;border:1px solid #dde8e1!important;border-radius:18px!important;padding:0!important;overflow:hidden!important;box-shadow:0 8px 18px rgba(13,52,36,.05)!important}
  .page-wrapper>header nav #menu>li>a{display:flex!important;align-items:center!important;min-height:100%!important;padding:20px 18px 18px 18px!important;font-size:18px!important;line-height:1.25!important;font-weight:800!important;color:#1b3f33!important;background:none!important;white-space:normal!important}
  .page-wrapper>header nav #menu>li>a::before{content:"";display:inline-block!important;flex:none!important;width:14px!important;height:14px!important;border-radius:999px!important;background:linear-gradient(135deg,#dff2e6,#f1f7f3)!important;border:1px solid #cde4d4!important;box-shadow:inset 0 0 0 3px #2c8e62!important;margin-right:12px!important}
  .page-wrapper>header nav #menu li ul{display:none!important;position:static!important;width:auto!important;margin:0 14px 14px!important;padding:10px!important;background:#f3f8f4!important;border:1px solid #e0ebe4!important;border-radius:14px!important;box-shadow:none!important;float:none!important;opacity:1!important;visibility:visible!important;transform:none!important;list-style:none!important}
  .page-wrapper>header nav #menu li.ca-sub-open ul{display:block!important}
  .page-wrapper>header nav #menu li ul li{display:block!important;border-top:1px solid #e5eee8!important}
  .page-wrapper>header nav #menu li ul li:first-child{border-top:none!important}
  .page-wrapper>header nav #menu li ul li a{display:block!important;padding:10px 8px!important;font-size:13px!important;font-weight:700!important;color:#24513f!important;white-space:normal!important}
  .page-wrapper>header .ca-sub-trigger{position:absolute!important;right:14px!important;top:14px!important;display:grid!important;place-items:center!important;width:38px!important;height:38px!important;border:0!important;border-radius:12px!important;background:#eff6f1!important;color:#1c6145!important;box-shadow:inset 0 0 0 1px #d9e8de!important}
  .page-wrapper>header .ca-sub-trigger svg{width:18px!important;height:18px!important;stroke:currentColor!important;transition:transform .2s ease!important}
  .page-wrapper>header .ca-sub-trigger[aria-expanded=true] svg{transform:rotate(180deg)!important}

  .ca-mobile-categories{display:block!important;position:sticky!important;top:var(--ca-header-h)!important;z-index:1299!important;background:var(--ca-brand)!important;border-bottom:1px solid rgba(255,255,255,.12)!important;box-shadow:0 10px 18px rgba(11,44,31,.08)!important}
  .ca-mobile-scroll{display:flex!important;gap:10px!important;overflow-x:auto!important;scrollbar-width:none!important;white-space:nowrap!important;padding:10px 12px!important;scroll-snap-type:x proximity!important}
  .ca-mobile-scroll::-webkit-scrollbar{display:none!important}
  .ca-mobile-scroll a{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:none!important;scroll-snap-align:start!important;padding:10px 16px!important;border-radius:999px!important;background:rgba(255,255,255,.13)!important;border:1px solid rgba(255,255,255,.18)!important;color:#fff!important;font-size:13px!important;font-weight:800!important;text-decoration:none!important;box-shadow:0 3px 8px rgba(0,0,0,.08)!important}
  .ca-mobile-scroll a:active,.ca-mobile-scroll a:hover{background:rgba(255,255,255,.24)!important}

  /* keep cards responsive */
  .ca-intro{padding:22px 18px!important;border-radius:24px!important}
  .ca-feature{gap:12px!important}
  .ca-feature .ca-feature-item,.ca-news-card,.ca-program,.ca-topic-card{border-radius:18px!important}
}

@media(max-width:560px){
  .page-wrapper>header .logo img{width:70px!important;height:40px!important}
  .ca-brand-name{font-size:13px!important}
  .ca-brand-name small{font-size:9.5px!important}
  .page-wrapper>header nav #menu{grid-template-columns:1fr!important}
  .page-wrapper>header nav #menu>li{min-height:0!important}
  .page-wrapper>header nav #menu>li>a{font-size:17px!important;padding:18px 18px 18px 18px!important}
  .ca-mobile-scroll a{font-size:12px!important;padding:9px 14px!important}
}
