:root { --bks-green: #759a00; --bks-dark: #26320f; --bks-soft: #f5f8ed; }
.bks-trigger { appearance:none; border:0; background:transparent; color:#252525; width:44px; height:44px; padding:10px; margin-left:10px; border-radius:50%; cursor:pointer; display:inline-flex; align-items:center; justify-content:center; transition:background .18s,color .18s; flex:0 0 auto; }
.bks-trigger:hover,.bks-trigger:focus-visible { background:var(--bks-soft); color:var(--bks-green); outline:2px solid transparent; }
.bks-trigger svg,.bks-close svg,.bks-field-icon { width:24px; height:24px; fill:currentColor; }
.bks-overlay[hidden] { display:none; }
.bks-overlay { position:fixed; inset:0; z-index:999999; display:grid; align-items:start; justify-items:center; overflow:auto; padding:clamp(18px,7vh,72px) 16px 32px; }
.bks-backdrop { position:fixed; inset:0; background:rgba(19,27,8,.58); backdrop-filter:blur(3px); }
.bks-dialog { position:relative; width:min(720px,100%); max-height:calc(100dvh - 64px); overflow:auto; background:#fff; border-radius:18px; box-shadow:0 24px 70px rgba(0,0,0,.28); padding:clamp(22px,4vw,38px); color:#202020; }
.bks-dialog h2 { margin:0 52px 20px 0; color:var(--bks-dark); font-size:clamp(25px,4vw,34px); line-height:1.15; }
.bks-close { position:absolute; top:14px; right:14px; width:44px; height:44px; padding:10px; border:0; border-radius:50%; background:var(--bks-soft); color:var(--bks-dark); cursor:pointer; }
.bks-close:hover,.bks-close:focus-visible { color:var(--bks-green); outline:2px solid var(--bks-green); outline-offset:2px; }
.bks-form { position:relative; margin:0; }
.bks-form input { width:100%; min-height:58px; border:2px solid #dbe3ca; border-radius:12px; padding:12px 16px 12px 52px; font-size:18px; color:#202020; background:#fff; }
.bks-form input:focus { border-color:var(--bks-green); outline:3px solid rgba(117,154,0,.18); }
.bks-field-icon { position:absolute; left:17px; top:17px; color:var(--bks-green); pointer-events:none; }
.bks-hint,.bks-status { margin:9px 2px; min-height:20px; font-size:14px; color:#667056; }
.bks-status:empty { display:none; }
.bks-results { display:grid; gap:8px; margin-top:10px; }
.bks-result { display:grid; gap:3px; padding:13px 15px; border:1px solid #e1e7d5; border-radius:11px; color:#222; text-decoration:none; transition:border-color .15s,background .15s,transform .15s; }
.bks-result:hover,.bks-result:focus-visible { background:var(--bks-soft); border-color:#b8ca8d; transform:translateY(-1px); outline:0; }
.bks-result strong { color:var(--bks-dark); font-size:17px; line-height:1.3; }
.bks-type { color:var(--bks-green); font-size:11px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.bks-excerpt { color:#596052; font-size:14px; line-height:1.45; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.bks-more { display:block; margin-top:8px; padding:13px 16px; border-radius:10px; background:var(--bks-green); color:#fff; text-align:center; text-decoration:none; font-weight:700; }
.bks-more:hover,.bks-more:focus-visible { background:#638300; color:#fff; }
.bks-empty { background:var(--bks-soft); border-radius:10px; padding:18px; color:#505b40; }
.bks-loading { width:28px; height:28px; margin:24px auto; border:3px solid #e5eadb; border-top-color:var(--bks-green); border-radius:50%; animation:bks-spin .7s linear infinite; }
.bks-open { overflow:hidden; }
@keyframes bks-spin { to { transform:rotate(360deg); } }
@media (max-width:921px) { #ast-mobile-header .bks-trigger { margin:0 4px 0 0; } }
@media (max-width:544px) { .bks-overlay { padding:12px; align-items:start; } .bks-dialog { border-radius:14px; padding:20px 16px; max-height:calc(100dvh - 24px); } .bks-dialog h2 { font-size:25px; margin-bottom:16px; } .bks-form input { min-height:54px; font-size:16px; } .bks-result { padding:12px; } }
@media (prefers-reduced-motion:reduce) { .bks-trigger,.bks-result { transition:none; } .bks-loading { animation-duration:1.4s; } }

/* Header CTA: keep Contact neutral and highlight the training signup. */
body .main-header-menu > .menu-item-77996 > a.menu-link,
body .main-header-menu > .menu-item-77996 > a.menu-link:hover,
body .main-header-menu > .menu-item-77996 > a.menu-link:focus-visible {
  background:transparent !important;
  color:#2f2f2f !important;
  border-radius:0 !important;
  box-shadow:none !important;
  transform:none !important;
  padding:10px 14px !important;
  line-height:40px !important;
}
body .main-header-menu > .menu-item-77996 > a.menu-link:hover,
body .main-header-menu > .menu-item-77996 > a.menu-link:focus-visible { color:#6f8f00 !important; }

body .main-header-menu > .menu-item-77995 > a.menu-link {
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  min-height:38px;
  height:auto;
  margin:11px 5px;
  padding:0 15px !important;
  line-height:1.2 !important;
  border-radius:7px !important;
  background:#7fa200 !important;
  color:#fff !important;
  box-shadow:0 4px 12px rgba(127,162,0,.18) !important;
  text-shadow:none !important;
  transition:background .18s,box-shadow .18s,transform .18s;
}
body .main-header-menu > .menu-item-77995 > a.menu-link:hover,
body .main-header-menu > .menu-item-77995 > a.menu-link:focus-visible {
  background:#6f8f00 !important;
  color:#fff !important;
  box-shadow:0 6px 14px rgba(127,162,0,.24) !important;
  transform:translateY(-1px);
}

@media (max-width:921px) {
  body .main-header-menu > .menu-item-77996 > a.menu-link,
  body .main-header-menu > .menu-item-77996 > a.menu-link:hover,
  body .main-header-menu > .menu-item-77996 > a.menu-link:focus-visible {
    padding:0 20px !important;
    line-height:1.4 !important;
  }
  body .main-header-menu > .menu-item-77995 > a.menu-link {
    width:calc(100% - 28px);
    min-height:42px;
    margin:7px 14px;
    padding:8px 14px !important;
  }
}
