/* Use the established brand blue on the security page's dark sections. */
.page-security .calm-opening-security,.page-security .work-security{background:var(--blue)}
.page-security .calm-opening-security h1>span{color:#abc6ff}
.page-security .calm-opening-security .breadcrumbs,.page-security .calm-opening-security .service-intro p{color:#d4dfff}
.page-security .motion-security .motion-stage{background:#0b1199;border-color:#454cbc;box-shadow:0 22px 55px -35px #00004d80}
.page-security .art-perimeter{fill:#2937bb;fill-opacity:.22;stroke:#667bd4}
.page-security .art-perimeter-trace{stroke:#afcaff}
.page-security .art-shield{fill:#365fce;stroke:#bed4ff}
.page-security .motion-security .art-onblue,.page-security .motion-security figcaption{fill:#d8e3ff;color:#d8e3ff}
.page-security .work-security .work-layer{background:#1925a5;border-color:#6374ce;box-shadow:0 10px 0 #000065}
.page-security .work-security .work-layer.is-active{background:#345ccc;box-shadow:0 10px 0 #15218d}
.page-security .work-security .work-step p{color:#d4dfff}
/* Contact: readable form, clear contact methods and consistent softer geometry. */
.page-contact .contact-intro{padding-top:60px;padding-bottom:25px}
.page-contact .contact-intro .lead{font-size:19px;max-width:590px}
.page-contact .contact-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:7%;align-items:start;padding-top:45px}
.page-contact .contact-aside h2{font-size:40px;line-height:1.15;margin-bottom:25px}
.page-contact .contact-aside>p{font-size:17px;line-height:1.8;max-width:490px}
.page-contact .contact-monogram{border-radius:14px;width:56px;height:56px;margin-bottom:26px}
.page-contact .contact-info{margin-top:38px}
.page-contact .contact-info h3{font-size:24px;margin:0 0 24px}
.page-contact .contact-detail{display:grid;grid-template-columns:46px minmax(0,1fr);gap:18px;padding:21px 0;align-items:start}
.page-contact .contact-detail-icon{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:#edf3ff;color:#315ec1;border:1px solid #d9e5fa}
.contact-detail-icon svg{width:23px;height:23px;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.page-contact .contact-detail h4{font-size:14px;font-weight:500;color:#536985;margin:0 0 9px;letter-spacing:0}
.page-contact .contact-detail a{font-size:19px;line-height:1.5;color:var(--blue);display:inline;overflow-wrap:anywhere}
.page-contact .contact-detail a:hover{text-decoration:underline;text-underline-offset:5px}
.page-contact .contact-detail address{font-style:normal;font-size:17px;line-height:1.7;color:#344b6b}
.contact-hours{margin:0;display:grid;gap:10px;font-size:15px;line-height:1.5;color:#344b6b}
.contact-hours>div{display:grid;grid-template-columns:1fr auto;gap:16px}.contact-hours dt,.contact-hours dd{margin:0}
.page-contact .emergency-note{font-size:13px;display:flex;align-items:center;gap:10px;margin:15px 0 0 64px;color:#31599b}
.emergency-note>span{width:6px;height:6px;border-radius:50%;background:#497dff;flex-shrink:0}
.page-contact .contact-layout form{border-radius:20px;padding:38px;background:#fff;border:1px solid #dbe5f5;box-shadow:0 18px 65px -35px #183d7630}
.page-contact .form-header{margin-bottom:26px}.page-contact .form-header>span{font-size:10px;letter-spacing:.12em}.page-contact .form-header h2{font-size:34px;line-height:1.2}
.page-contact .contact-layout label{font-size:15px;margin-bottom:24px;color:#233c60}
.page-contact .contact-layout input,.page-contact .contact-layout select,.page-contact .contact-layout textarea{font-size:16px;padding:15px 16px;line-height:1.5;border-radius:9px;border-color:#cfdced;background:#fbfcff;transition:border-color .2s,box-shadow .2s}
.page-contact .contact-layout input::placeholder,.page-contact .contact-layout textarea::placeholder{color:#7a899f;font-size:14px}
.page-contact .contact-layout input:focus,.page-contact .contact-layout select:focus,.page-contact .contact-layout textarea:focus{outline:0;border-color:#5684e1;box-shadow:0 0 0 3px #497dff15;background:white}
.page-contact .contact-layout textarea{min-height:150px;resize:vertical}
.page-contact .contact-intent{gap:9px;margin-bottom:26px}.page-contact .contact-intent button{border-radius:9px;font-size:12px;padding:13px 10px;line-height:1.5}
.page-contact .contact-layout .action{border-radius:10px;font-size:15px;min-height:58px}.page-contact .contact-layout .action span{border-radius:6px}
.page-contact .form-note{font-size:13px;line-height:1.7;margin-top:18px}.page-contact .form-status{font-size:14px}
@media(max-width:1100px){.page-contact .contact-layout{gap:35px;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}.page-contact .contact-layout form{padding:28px}.contact-hours>div{grid-template-columns:1fr;gap:2px}.page-contact .contact-detail a{font-size:17px}.page-contact .form-grid{grid-template-columns:1fr}.page-contact .contact-aside h2{font-size:35px}}
@media(max-width:760px){.page-contact .contact-intro{padding:36px 24px 15px}.page-contact .contact-intro .lead{font-size:17px}.page-contact .contact-layout{padding-top:25px;display:flex;flex-direction:column;gap:38px}.page-contact .contact-aside h2{font-size:34px}.page-contact .contact-aside>p{font-size:16px}.page-contact .contact-layout form{padding:25px 20px;border-radius:16px}.page-contact .form-header h2{font-size:29px}.page-contact .contact-detail{gap:13px;grid-template-columns:42px minmax(0,1fr);padding:17px 0}.page-contact .contact-detail-icon{width:42px;height:42px}.page-contact .contact-detail a{font-size:17px}.page-contact .contact-detail address{font-size:16px}.page-contact .emergency-note{margin-left:55px;font-size:12px}.page-contact .contact-intent{flex-direction:column}.page-contact .contact-intent button{font-size:14px;padding:12px}.page-contact .contact-info{margin-top:28px}.contact-hours>div{grid-template-columns:1fr auto;font-size:13px;gap:8px}}
