html{scroll-padding-top:24px}
body{overflow-x:hidden}
body.menu-open{overflow:hidden}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.screen-reader-text:focus,.skip-link:focus{clip:auto!important;width:auto;height:auto;top:10px;left:10px;z-index:100000;background:#fff;color:#111417;padding:12px 16px;box-shadow:0 0 0 3px var(--blue)}
a:focus-visible,button:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
.navToggle{display:none;width:42px;height:42px;border:1px solid var(--line);background:#fff;cursor:pointer;place-items:center;padding:10px;position:relative}
.navToggle span,.navToggle:before,.navToggle:after{content:"";display:block;width:18px;height:1px;background:var(--ink);transition:transform .2s,opacity .2s}
.navToggle span{margin:5px 0}
.navToggle[aria-expanded=true] span{opacity:0}
.navToggle[aria-expanded=true]:before{transform:translateY(6px) rotate(45deg)}
.navToggle[aria-expanded=true]:after{transform:translateY(-6px) rotate(-45deg)}
.product,.cases{background-color:var(--dark)}
.brand b,.nav nav a:hover,.hero h1 em,.sectionTitle h2 em,.contact h2 em,.directions strong,.descriptor,.productIntro>a span,.signal>b,.monitorFoot span,.steps>article>span,.caseArrow,.whyGrid article b{color:var(--blue)}
.primary:hover,.contactRow>a:hover{background:var(--blue)}
.directions article:hover{border-color:var(--blue)}
.coreStatus i,.monitorHead i,.caseMark i,.tech i{background:var(--blue);box-shadow:0 0 10px var(--blue)}
.nav,.hero,.section,.product,.cases,.contact{background-repeat:no-repeat}
.corePanel img{background:#edf2f5}
.directions article,.caseGrid>a,.steps article{content-visibility:auto;contain-intrinsic-size:1px 360px}
@media (max-width:950px){
  .nav{position:relative;z-index:50}
  .navToggle{display:grid;margin-left:auto;margin-right:10px}
  .nav nav{display:flex;position:absolute;top:calc(100% + 1px);left:0;right:0;max-height:0;overflow:hidden;opacity:0;pointer-events:none;background:rgba(245,247,248,.98);border-bottom:1px solid var(--line);padding:0 18px;flex-direction:column;gap:0;transition:max-height .24s ease,opacity .18s ease,padding .24s ease;box-shadow:0 18px 40px rgba(17,20,23,.08)}
  .nav nav.is-open{max-height:310px;opacity:1;pointer-events:auto;padding-top:10px;padding-bottom:10px}
  .nav nav a{padding:15px 0;border-bottom:1px solid var(--line);font-size:12px}
  .nav nav a:last-child{border-bottom:0}
}
@media (max-width:600px){
  .navCta{font-size:0;min-width:42px;height:42px;padding:0;display:grid;place-items:center}
  .navCta i{font-size:15px;margin:0}
  .brand{gap:8px}
  .brand img{width:34px;height:34px}
}
@media (prefers-reduced-motion:reduce){.nav nav,.navToggle span,.navToggle:before,.navToggle:after{transition:none}}

.contactRow{align-items:start}
.requestForm{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:42px}
.requestForm label{display:flex;flex-direction:column;gap:9px}
.requestForm label>span{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.requestForm .is-wide{grid-column:1/-1}
.requestForm input[type="text"],.requestForm textarea{width:100%;border:1px solid #c8d2d8;background:#ffffffc9;color:var(--ink);padding:16px 17px;font-size:14px;line-height:1.45;outline:none;transition:border-color .2s,box-shadow .2s,background .2s}
.requestForm textarea{min-height:128px;resize:vertical}
.requestForm input[type="text"]:focus,.requestForm textarea:focus{border-color:var(--blue);background:#fff;box-shadow:0 0 0 3px #12b8ff1f}
.requestForm input::placeholder,.requestForm textarea::placeholder{color:#8b969e}
.requestConsent{flex-direction:row!important;align-items:flex-start;gap:10px!important;margin-top:4px}
.requestConsent input{width:17px;height:17px;margin:1px 0 0;accent-color:var(--blue);flex:0 0 auto}
.requestConsent span{font-size:11px!important;line-height:1.5;letter-spacing:0!important;text-transform:none!important;font-weight:500!important}
.requestSubmit{display:flex;align-items:center;gap:20px}
.requestSubmit button{background:var(--ink);color:#fff;text-transform:uppercase;letter-spacing:.12em;display:flex;justify-content:space-between;align-items:center;min-width:270px;padding:21px 22px;font-size:10px;font-weight:800;cursor:pointer}
.requestSubmit button:hover{background:#079fe1}
.requestSubmit button:focus-visible{outline:3px solid #12b8ff66;outline-offset:3px}
.requestSubmit button span{color:var(--blue)}
.requestSubmit button:hover span{color:#fff}
.requestSubmit small{color:var(--muted);max-width:340px;font-size:11px;line-height:1.5}
.requestTrap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.requestNotice{margin-top:34px;border:1px solid;padding:15px 17px;font-size:13px;line-height:1.5}
.requestNotice.is-success{background:#eaf9f1;border-color:#90d7ae;color:#176137}
.requestNotice.is-warning{background:#fff8e8;border-color:#e2c577;color:#715312}
.requestNotice.is-error{background:#fff0f0;border-color:#e2a1a1;color:#7d2828}

@media (max-width:600px){
  .requestForm{grid-template-columns:1fr;gap:14px;margin-top:34px}
  .requestForm .is-wide{grid-column:auto}
  .requestSubmit{align-items:stretch;flex-direction:column;gap:12px}
  .requestSubmit button{width:100%;min-width:0}
}
