/* Canonical public navigation: kept with the homepage treatment. */
nav.nav,nav.mm-nav{position:sticky;top:0;background:rgba(255,255,255,.96)!important;backdrop-filter:blur(14px);border-bottom:1px solid rgba(201,214,227,.8)!important;box-shadow:0 8px 24px rgba(25,69,110,.05)!important}
nav .container,nav .wrap{box-sizing:border-box;width:100%;max-width:1280px;margin:0 auto;padding:0 32px}
nav a{text-decoration:none}
nav .site-nav-menu{display:block!important}
.nav,.mm-nav{display:block!important;opacity:1!important;z-index:1000!important;overflow:visible!important}
.nav-inner,.mm-nav-inner{display:flex!important;align-items:center!important;justify-content:space-between!important;height:72px!important;gap:28px!important;overflow:visible!important}
.nav-logo,.mm-nav-logo,.logo{display:block!important;width:auto!important;height:28px!important;max-width:44px!important;object-fit:contain!important}
.site-nav-left{display:flex!important;align-items:center!important;gap:36px!important;min-width:0!important}
.site-nav-mark{display:inline-flex!important;align-items:center!important;flex:0 0 auto!important}
.site-nav-primary,.site-nav-actions{display:flex!important;align-items:center!important;gap:22px!important}
.site-nav-primary{justify-content:flex-start!important}
.site-nav-actions{margin-left:auto!important;justify-content:flex-end!important}
.site-nav-item{position:relative!important;display:flex!important;align-items:center!important}
.nav-link,.mm-nav-link{display:inline-flex!important;align-items:center!important;font-size:15px!important;line-height:1!important;font-weight:400!important;letter-spacing:0!important;color:#19456E!important;background:transparent!important;border:0!important;padding:0!important;border-radius:0!important;white-space:nowrap!important}
.site-nav-primary .nav-link,.site-nav-primary .mm-nav-link{position:relative!important}
.site-nav-primary .nav-link:after,.site-nav-primary .mm-nav-link:after{content:""!important;position:absolute!important;left:0!important;right:0!important;bottom:-10px!important;height:2px!important;background:#55B1FD!important;transform:scaleX(0)!important;transform-origin:left!important;transition:transform .18s cubic-bezier(.2,.8,.2,1)!important;opacity:.8!important}
.site-nav-primary .nav-link:hover:after,.site-nav-primary .mm-nav-link:hover:after,.site-nav-item:focus-within > .nav-link:after,.site-nav-item:focus-within > .mm-nav-link:after{transform:scaleX(1)!important}
.site-nav-login{height:44px!important;border:1px solid #D6E0EC!important;border-radius:999px!important;padding:0 18px!important;background:#fff!important;box-shadow:0 2px 8px rgba(25,69,110,.04)!important}
.site-nav-actions > .btn,.site-nav-actions > .mm-btn,.site-nav-actions > .btn-primary,.site-nav-actions > .mm-btn-primary{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;min-height:48px!important;background:#19456E!important;color:#fff!important;border:1px solid #19456E!important;border-radius:999px!important;padding:0 24px!important;font-size:15px!important;line-height:1!important;font-weight:400!important;box-shadow:0 12px 26px rgba(25,69,110,.16)!important;white-space:nowrap!important}
.site-nav-actions > .btn:hover,.site-nav-actions > .mm-btn:hover{background:#24356F!important;color:#fff!important;opacity:1!important}
.site-nav-menu{position:absolute!important;top:calc(100% + 12px)!important;left:-18px!important;width:314px!important;padding:10px!important;background:rgba(255,255,255,.98)!important;border:1px solid #D6E0EC!important;border-radius:18px!important;box-shadow:0 24px 60px rgba(25,69,110,.16)!important;opacity:0!important;visibility:hidden!important;transform:translateY(8px)!important;pointer-events:none!important;transition:opacity .18s cubic-bezier(.2,.8,.2,1),transform .18s cubic-bezier(.2,.8,.2,1),visibility 0s linear .18s!important;z-index:1001!important}
.site-nav-menu:before{content:""!important;position:absolute!important;left:0!important;right:0!important;top:-20px!important;height:20px!important}
.site-nav-item:hover .site-nav-menu,.site-nav-item:focus-within .site-nav-menu{opacity:1!important;visibility:visible!important;transform:none!important;pointer-events:auto!important;transition-delay:0s!important}
.site-nav-menu a{display:block!important;padding:14px 16px!important;border-radius:12px!important;color:#19456E!important;text-decoration:none!important;background:transparent!important}
.site-nav-menu a:after{display:none!important}
.site-nav-menu a:hover,.site-nav-menu a:focus-visible{background:#F1F6FB!important;outline:0!important}
.site-nav-menu span{display:block!important;font-size:15px!important;line-height:1.2!important;color:#19456E!important}
.site-nav-menu small{display:block!important;margin-top:4px!important;font-size:12px!important;line-height:1.35!important;color:rgba(25,69,110,.68)!important}
@media(max-width:980px){.site-nav-primary{display:none!important}.site-nav-left{gap:18px!important}.site-nav-actions .site-nav-login{display:none!important}}
@media(max-width:640px){.site-nav-actions .btn,.site-nav-actions .mm-btn{display:none!important}.site-nav-left{gap:14px!important}}
@media(max-width:1100px){.site-nav-primary{display:none!important}.site-nav-actions .site-nav-login,.site-nav-actions>.btn,.site-nav-actions>.mm-btn,.site-nav-actions>.button{display:none!important}}
@media(max-width:640px){nav .container,nav .wrap{padding:0 20px}}
/* Clip horizontal overflow without creating a scrolling ancestor for sticky nav. */
@media(max-width:1100px){html,body{overflow-x:clip!important}}

/* Public lead-form action alignment. */
.mm-form .mm-form-actions,.contact .form .actions{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:14px!important;margin-top:24px!important;text-align:center!important}
.mm-form .mm-form-actions .micro,.contact .form .actions .micro{width:min(100%,390px)!important;max-width:100%!important;margin:0!important;line-height:1.5!important;text-align:center!important}
.site-contact-form button[type=submit],.inquiry-form>button[type=submit]{display:flex!important;margin:24px auto 0!important}
.site-contact-form .site-form-note,.inquiry-form>.follow-up-note{width:min(100%,390px)!important;max-width:100%!important;margin:14px auto 0!important;line-height:1.5!important;text-align:center!important}
.inquiry-form .ca-form-actions button[type=submit]{margin:0!important}
nav.nav .nav-logo,nav.mm-nav .mm-nav-logo{width:auto!important;height:28px!important;max-width:44px!important;object-fit:contain!important}
.mm-form,.site-contact-form,.contact .form,.inquiry-form{min-width:0!important;max-width:100%!important;box-sizing:border-box!important}
.mm-form-row,.site-form-row,.contact .form .row,.inquiry-form .form-row{min-width:0!important}
.mm-form-field,.site-contact-form label,.contact .form .field,.inquiry-form label{min-width:0!important}
@media(max-width:640px){.mm-form-row,.site-form-row,.contact .form .row,.inquiry-form .form-row{grid-template-columns:minmax(0,1fr)!important}}

/* Homepage motion is shared by every public navigation, including landing pages. */
@media(prefers-reduced-motion:no-preference){
  nav.nav,nav.mm-nav{animation:metalmark-nav-enter .52s cubic-bezier(.2,.8,.2,1) both!important;transition:background .24s cubic-bezier(.2,.8,.2,1),box-shadow .24s cubic-bezier(.2,.8,.2,1),border-color .24s cubic-bezier(.2,.8,.2,1)!important}
  nav.nav:hover,nav.mm-nav:hover{box-shadow:0 12px 28px rgba(25,69,110,.1)!important}
  nav.nav:after,nav.mm-nav:after{content:""!important;position:absolute!important;left:0!important;right:0!important;bottom:-1px!important;height:1px!important;background:linear-gradient(90deg,transparent,#55B1FD,#726ADF,#FF7914,transparent)!important;opacity:.58!important;transform-origin:left!important;animation:metalmark-nav-line 5.5s ease-in-out infinite!important;pointer-events:none!important}
  .site-nav-mark img{transition:transform .22s cubic-bezier(.2,.8,.2,1),opacity .22s cubic-bezier(.2,.8,.2,1)!important}
  .site-nav-mark:hover img{transform:translateY(-1px) scale(1.025)!important}
  nav .nav-link,nav .mm-nav-link,nav .btn,nav .mm-btn,.ca-button,.mm-form button[type=submit],.site-contact-form button[type=submit],.contact .form button[type=submit],.inquiry-form button[type=submit]{transition:transform .18s cubic-bezier(.2,.8,.2,1),color .18s cubic-bezier(.2,.8,.2,1),background .18s cubic-bezier(.2,.8,.2,1),box-shadow .18s cubic-bezier(.2,.8,.2,1),opacity .18s cubic-bezier(.2,.8,.2,1)!important}
  nav .nav-link:hover,nav .mm-nav-link:hover,nav .btn:hover,nav .mm-btn:hover,.ca-button:hover,.mm-form button[type=submit]:hover,.site-contact-form button[type=submit]:hover,.contact .form button[type=submit]:hover,.inquiry-form button[type=submit]:hover{transform:translateY(-2px)!important}
  .site-nav-primary .nav-link:hover,.site-nav-primary .mm-nav-link:hover{transform:translateY(-1px)!important}
}
@keyframes metalmark-nav-enter{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}
@keyframes metalmark-nav-line{0%,100%{transform:scaleX(.28);opacity:.32}50%{transform:scaleX(1);opacity:.72}}
@media(prefers-reduced-motion:reduce){
  nav.nav,nav.mm-nav,nav.nav:after,nav.mm-nav:after{animation:none!important}
  nav.nav:after,nav.mm-nav:after{content:none!important}
  nav .nav-link,nav .mm-nav-link,nav .btn,nav .mm-btn,.site-nav-mark img,.ca-button,.mm-form button[type=submit],.site-contact-form button[type=submit],.contact .form button[type=submit],.inquiry-form button[type=submit]{transform:none!important;transition:none!important}
}

/* Shared form rhythm: prevent article body styles from changing reusable UI. */
.mm-form,.site-contact-form,.contact .form,.inquiry-form{padding:40px!important}
.mm-form-field label,.site-contact-form label,.contact .field label,.inquiry-form label[for]{font-size:11px!important;font-weight:600!important;line-height:1.6!important;letter-spacing:.08em!important;text-transform:uppercase!important;color:#F8FBFF!important}
:is(.mm-form,.site-contact-form,.contact .form,.inquiry-form) :is(input:not([type=hidden]):not([type=radio]):not([type=checkbox]),select,textarea){padding:13px 16px!important;font-size:15px!important;font-weight:400!important;line-height:1.4!important;letter-spacing:normal!important;text-transform:none!important}
:is(.mm-form,.site-contact-form,.contact .form,.inquiry-form) select{appearance:auto!important}
.mm-form button[type=submit],.site-contact-form button[type=submit],.contact .form button[type=submit],.inquiry-form button[type=submit]{line-height:1.3!important}
.mm-form .mm-form-actions .micro,.contact .form .actions .micro,.site-contact-form .site-form-note,.inquiry-form>.follow-up-note,.inquiry-form .ca-consent{font-size:12px!important;line-height:1.5!important}
section.mm-contact:before,section.site-contact:before,section.contact:before,section.ca-inquiry:before{mix-blend-mode:normal!important}
@media(max-width:640px){.mm-form,.site-contact-form,.contact .form,.inquiry-form{padding:28px!important}}

/* Footer typography stays the same on editorial and landing pages. */
footer.footer,footer.mm-footer{line-height:1.6!important}
footer.footer .container,footer.mm-footer .container,footer.footer .wrap,footer.mm-footer .wrap{box-sizing:border-box!important;width:100%!important;max-width:1280px!important;margin-left:auto!important;margin-right:auto!important;padding-left:32px!important;padding-right:32px!important}
.footer-grid h4,.mm-footer-grid h4{font-size:12px!important;font-weight:600!important;line-height:1.6!important;letter-spacing:.08em!important;text-transform:uppercase!important;color:rgba(211,237,255,.78)!important}
.footer-grid>div:first-child>p,.mm-footer-grid>div:first-child>p{font-size:14px!important;line-height:1.6!important;color:rgba(211,237,255,.78)!important}
.footer-grid>div:not(:first-child)>a,.mm-footer-grid>div:not(:first-child)>a{font-size:14px!important;line-height:1.6!important;padding:5px 0!important}
@media(max-width:1100px){.footer-grid>div:not(:first-child)>a,.mm-footer-grid>div:not(:first-child)>a{line-height:1.35!important}}
@media(max-width:640px){footer.footer .container,footer.mm-footer .container,footer.footer .wrap,footer.mm-footer .wrap{padding-left:20px!important;padding-right:20px!important}}
@media(max-width:520px){footer.footer,footer.mm-footer{padding-bottom:32px!important}}
