*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto}
h1,h2,h3{text-wrap:balance}
span[style*="border-radius: 999px"]{white-space:nowrap}
a{color:#2C4BC0}a:hover{color:#141B34}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #2C4BC0;outline-offset:2px}
.mnav{display:none}
@media (max-width:900px){
  .foot-grid{grid-template-columns:1fr 1fr !important}
  .foot-brand{grid-column:1 / -1}
}
@media (max-width:640px){
  h1{font-size:38px !important}h2{font-size:28px !important}
  main section > div{padding-top:48px !important;padding-bottom:48px !important;padding-left:20px !important;padding-right:20px !important;gap:28px !important}
  #contact > div > div{padding:28px !important}
  header > nav{padding:14px 20px !important;flex-wrap:nowrap !important;gap:12px !important}
  header .brand{gap:10px !important}
  header .brand > span{padding-left:10px !important;gap:4px !important}
  header .brand > span > span:first-child{font-size:11px !important;letter-spacing:0.2em !important}
  header .brand-desc{font-size:8.5px !important;letter-spacing:0.05em !important}
  header .brand img{height:24px !important}
  .nav-links{display:none !important}
  header .brand{min-height:44px}
  main a[style*="text-decoration: none"]:not([style*="background"]),main p a{display:inline-block;padding:12px 0}
  main section a[href="/"]{display:inline-block;padding:12px 0}
  .mnav{display:block;position:relative}
  .mnav summary{list-style:none;cursor:pointer;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border:1px solid #D7DFF4;border-radius:10px;color:#141B34;background:#fff}
  .mnav summary::-webkit-details-marker{display:none}
  .mnav summary svg{pointer-events:none}
  .mnav summary{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
  .mnav .i-close{display:none}
  .mnav[open] .i-open{display:none}
  .mnav[open] .i-close{display:block}
  .mnav-panel{display:none;position:absolute;right:0;top:calc(100% + 8px);background:#fff;border:1px solid #D7DFF4;border-radius:12px;box-shadow:0 12px 30px rgba(20,27,52,.14);padding:8px;flex-direction:column;min-width:230px;z-index:50}
  .mnav[open] .mnav-panel{display:flex}
  .mnav-panel a{padding:12px 14px;color:#141B34;text-decoration:none;font-weight:500;border-radius:8px}
  .mnav-panel a.cta{background:#2C4BC0;color:#fff;margin-top:6px;text-align:center;font-weight:600}
  footer > div{padding-left:20px !important;padding-right:20px !important}
  footer a{display:inline-block;padding:6px 0}
}
