/* CAG PRO®: public mobile navigation; all rules stay inside the CAG UI. */
.cag-mobile-nav { display:none; }
@media screen and (max-width:760px) {
  body.cag-mobile-ready {
    --cag-nav-space:calc(78px + env(safe-area-inset-bottom, 0px));
    padding-bottom:var(--cag-nav-space);
  }
  .cag-mobile-ready .cag-mobile-nav {
    display:block; position:fixed; z-index:44; inset:auto 0 0;
    box-sizing:border-box; margin:0;
    padding:7px max(12px, env(safe-area-inset-right, 0px)) max(8px, env(safe-area-inset-bottom, 0px)) max(12px, env(safe-area-inset-left, 0px));
    border-top:1px solid #e7eaf0; background:rgba(255,255,255,.97);
    box-shadow:0 -6px 28px rgba(19,37,51,.06);
    -webkit-backdrop-filter:blur(18px); backdrop-filter:blur(18px);
  }
  .cag-mobile-nav__items { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); max-width:560px; margin:auto; gap:4px; }
  .cag-mobile-nav .cag-mobile-nav__link {
    display:flex; flex-direction:column; align-items:center; justify-content:center;
    box-sizing:border-box; min-width:0; min-height:60px; gap:3px; padding:3px 2px;
    border-radius:13px; color:#50616f; font:600 11px/1.35 Arial,Helvetica,sans-serif;
    text-decoration:none; -webkit-tap-highlight-color:transparent; touch-action:manipulation;
    transition:background-color .16s ease,color .16s ease,transform .16s ease;
  }
  .cag-mobile-nav__icon { display:flex; align-items:center; justify-content:center; width:54px; height:32px; border-radius:11px; transition:background-color .16s ease,transform .16s ease; }
  .cag-mobile-nav__icon svg { display:block; width:23px; height:23px; }
  .cag-mobile-nav .active { color:#bd2431; font-weight:700; }
  .cag-mobile-nav .active .cag-mobile-nav__icon { background:#fdebed; }
  .cag-mobile-nav .highlight { color:#bd2431; }
  .cag-mobile-nav .highlight .cag-mobile-nav__icon { background:#cf2b38; color:white; box-shadow:0 3px 8px #cf2b381f; }
  .cag-mobile-nav .cag-mobile-nav__link:active { background:#f5f6f8; transform:scale(.96); }
  .cag-mobile-nav .cag-mobile-nav__link:active .cag-mobile-nav__icon { transform:translateY(1px); }
  .cag-mobile-nav .cag-mobile-nav__link:focus-visible { outline:3px solid #087c70; outline-offset:-2px; }
  .cag-mobile-ready[data-cag-keyboard="open"] .cag-mobile-nav { visibility:hidden; pointer-events:none; }
  .cag-mobile-ready :is(input,select,textarea,button,[tabindex],a) { scroll-margin-bottom:calc(var(--cag-nav-space) + 24px); }
  .cag-mobile-ready :is(.launch-form,.registration) :is(input,select,textarea) { font-size:16px; }
  .cag-mobile-ready .menu-toggle { min-width:44px; min-height:44px; touch-action:manipulation; }
  .community-home .launch-actions { gap:16px; }
  .community-home .launch-actions>.launch-button { min-height:52px; }
  .community-home .launch-text-link { min-height:44px; align-items:center; }
  .community-home .community-hero-copy>p:not(.launch-eyebrow) { font-size:15px; line-height:1.8; }
  .community-home .community-free-promise span { font-size:12px; }
  .community-home .community-hero-art figcaption { font-size:12px; }
}
@media (prefers-reduced-motion:reduce) {
  .cag-mobile-nav *, .cag-mobile-nav *::before { transition:none!important; animation:none!important; }
  .cag-mobile-nav .cag-mobile-nav__link:active { transform:none; }
}
@media (forced-colors:active) {
  .cag-mobile-nav .active { outline:2px solid Highlight; outline-offset:-3px; }
  .cag-mobile-nav .highlight .cag-mobile-nav__icon { border:1px solid ButtonText; }
}
@media print { .cag-mobile-nav { display:none!important; } body.cag-mobile-ready { padding-bottom:0; } }
