/* NAV — final, simplified, split by breakpoint */

#siteNav {
  position: fixed;
  top: 120px;
  right: 0;
  background: #000;
  color: #fff;
  z-index: 10000;
}
#siteNav[hidden]{ display:none !important; }
#siteNav ul, #siteNav ul ul { list-style:none; margin:0; padding:0; }
#siteNav a{ display:block; text-decoration:none; color:#fff; padding:10px 12px; border-radius:6px; }
#siteNav a:hover{ background:#111; }

/* DESKTOP / LAPTOP */
@media (min-width:768px){
  /* panel sizing + open/close */
  #siteNav{ width:600px; border-radius:0 0 0 10px; }
  #siteNav:not(.active){ height:0; overflow:hidden; }
  #siteNav.active{ height:800px; overflow:auto; -webkit-overflow-scrolling:touch; padding-bottom:8px; }

  /* inner spacing */
  #siteNav ul{ padding:12px 16px; }

  /* top-level indent */
  #siteNav > ul > li > a{ padding-left:75px; }

  /* parent + caret */
  #siteNav li.has-children > a{ font-weight:600; }
  #siteNav li.has-children > a::after{ content:"▾"; margin-left:.4em; font-size:.9em; opacity:.9; vertical-align:middle; }

  /* submenu aligned under parent */
  #siteNav li.has-children > ul.submenu{ margin:6px 0 6px 75px; padding-left:12px; border-left:2px solid #333; }
  #siteNav li.has-children > ul.submenu li a{ padding:8px 10px; font-size:.95em; color:#ccc; }
  #siteNav li.has-children > ul.submenu li a:hover{ background:#111; color:#fff; }
}

/* MOBILE */
@media (max-width:767.98px){
  /* panel sizing + open/close */
  #siteNav{ width:calc(100% - 24px); margin-right:12px; border-radius:10px; }
  #siteNav:not(.active){ max-height:0; overflow:hidden; }
  #siteNav.active{ max-height:90dvh; overflow:auto; -webkit-overflow-scrolling:touch; padding-bottom:8px; }

  /* inner spacing */
  #siteNav ul{ padding:10px 12px; }

  /* top-level indent */
  #siteNav > ul > li > a{ padding-left:16px; }

  /* parent + caret */
  #siteNav li.has-children > a{ font-weight:600; }
  #siteNav li.has-children > a::after{ content:"▾"; margin-left:.35em; font-size:.9em; opacity:.9; }

  /* submenu aligned under parent */
  #siteNav li.has-children > ul.submenu{ margin:6px 0 6px 16px; padding-left:12px; border-left:2px solid #333; }
  #siteNav li.has-children > ul.submenu li a{ padding:8px 10px; font-size:.95em; color:#ccc; }
  #siteNav li.has-children > ul.submenu li a:hover{ background:#111; color:#fff; }
}

/* dim layer */
body.nav-open::before{
  content:"";
  position:fixed; inset:0;
  background:rgba(0,0,0,.25);
  z-index:9000;
  pointer-events:none;
}

.benefit-divider{
  border: none;
  height: 2px;
  background-color: #ffcd12;
  max-width: 500px;
  margin: 3.5rem auto 1.5rem; /* top gap ↑ */
}

/* Footer base + layout */
.site-footer{
  background:#ffcd12;
  color:#000;                 /* ensure readable text on yellow */
  width:100%;
  margin-top:2rem;
}

.site-footer .footer-content{
  max-width:1440px;
  margin:0 auto;
  padding:1.5rem 1rem;
  text-align:center;
  font-family:'Montserrat',system-ui,sans-serif;
}

/* Footer buttons row */
.footer-buttons{
  display:flex;
  justify-content:center;
  gap:.75rem;
  flex-wrap:wrap;
}

.footer-btn{
  background:#004b8d;
  color:#fff;
  text-decoration:none;
  padding:.6rem 1.2rem;
  border-radius:4px;
  font-size:.9rem;
}
.footer-btn:hover{ background:#00386b; }

