.homepage{--max:1120px;--blue:#235aab;color:#223047}.homepage .site-header{min-height:76px}.homepage .brand{gap:9px}.homepage .brand img{width:34px;height:34px}.homepage .brand span{letter-spacing:-.85px;font-size:25px;font-weight:650}.homepage .desktop-nav{color:#5b6575;gap:25px;font-size:14px}.homepage .header-cta{color:#365278;background:#fff;border-color:#d5deea;min-height:42px;padding:10px 17px;font-size:14px;font-weight:500}.homepage .header-cta:hover{background:#f4f7fb;border-color:#a4b9d5}.homepage .operating-section{margin-top:40px;padding-top:36px;padding-bottom:43px}.homepage .operating-section>h2{color:#25364e;letter-spacing:-.025em;margin-bottom:30px;font-size:clamp(25px,2.15vw,30px);font-weight:560;line-height:1.3}.homepage .service-columns h3{color:#354760;letter-spacing:-.015em;margin-bottom:10px;font-size:19px;font-weight:570}.homepage .service-columns p{color:#657082;letter-spacing:0;font-size:15px;line-height:1.65}.homepage .lifecycle{color:#25364e;background:#f5f7fa;border-top:1px solid #e5eaf0;border-bottom:1px solid #e5eaf0;padding-block:42px}.homepage .section-label{color:#626f80;text-transform:none;letter-spacing:.015em;margin-bottom:14px;font-size:13px;font-weight:450}.homepage .lifecycle h2{letter-spacing:-.025em;margin-bottom:11px;font-size:clamp(26px,2.2vw,31px);font-weight:550;line-height:1.3}.homepage .lifecycle-intro{color:#626f80;letter-spacing:0;margin-bottom:29px;font-size:16px;line-height:1.6}.homepage .lifecycle-columns article{border-color:#dce3eb}.homepage .lifecycle-columns h3{color:#3d4d65;letter-spacing:-.015em;margin-bottom:9px;font-size:18px;font-weight:560}.homepage .lifecycle-columns p{color:#626f80;letter-spacing:0;font-size:15px;line-height:1.65}.homepage .site-footer{padding-block:28px}.homepage .site-footer .brand img{width:31px;height:31px}.homepage .site-footer .brand span{font-size:23px;font-weight:620}.homepage .locations{color:#647080;margin-left:40px;font-size:13px}.homepage .footer-contact>p{color:#667182;font-size:14px}.homepage .footer-contact .button{color:#3a5d8d;background:0 0;border-color:#0000;gap:18px;min-height:32px;padding:0;font-size:15px;font-weight:500}.homepage .footer-contact .button svg{width:19px;height:19px}.homepage .footer-contact .button:hover{text-underline-offset:4px;text-decoration:underline}.homepage .company-footer{padding-block:22px 28px}@media (width<=640px){.homepage .site-header{min-height:72px}.homepage .brand img{width:30px;height:30px}.homepage .brand span{font-size:23px}.homepage .operating-section{margin-top:30px;padding-top:28px;padding-bottom:30px}.homepage .operating-section>h2{margin-bottom:25px;font-size:25px}.homepage .service-columns h3{font-size:19px}.homepage .service-columns p{font-size:15px}.homepage .lifecycle{padding-block:31px}.homepage .lifecycle h2{font-size:27px}.homepage .lifecycle-columns h3{font-size:19px}.homepage .lifecycle-columns p{font-size:15px}.homepage .footer-contact .button{justify-content:flex-start;width:auto;min-height:38px}}.homepage .desktop-nav a[aria-current=page],.homepage .mobile-nav a[aria-current=page]{color:#235aab;text-underline-offset:6px;text-decoration:underline}.detail-link{color:#235aab;align-items:center;gap:14px;font-size:14px;line-height:1.6;display:inline-flex}.detail-link:hover{text-underline-offset:4px;text-decoration:underline}.homepage .lifecycle>.page-width>.detail-link{margin-top:26px}.homepage .service-columns h3 a:hover{color:#235aab}.homepage .service-columns h3 a span{color:#526b90;margin-left:5px;font-size:15px}@media (width>=901px) and (width<=1050px){.homepage .desktop-nav{gap:17px;font-size:13px}.homepage .site-header{gap:18px}}.homepage .operating-section>h2{margin-bottom:17px}.homepage .operating-intro{color:#626f80;max-width:820px;margin:0 0 30px;font-size:16px;line-height:1.7}.homepage .operating-section>.detail-link{margin-top:27px}@media (width>=901px) and (width<=1050px){.homepage .desktop-nav{display:none}.homepage .site-header{position:relative}.homepage .header-cta{margin-left:auto}.homepage .menu-toggle{background:#fff;border:1px solid #cad5e5;border-radius:4px;padding:12px 16px;font-size:14px;display:block}.homepage .mobile-nav:not([hidden]){z-index:10;background:#fff;border:1px solid #d5ddea;border-radius:5px;width:260px;padding:12px;display:grid;position:absolute;top:72px;right:0;box-shadow:0 12px 30px #071f4220}.homepage .mobile-nav a,.homepage .mobile-nav button{text-align:left;background:#fff;border:0;padding:13px 12px;font-size:16px}}
