:root{--background:#fff;--foreground:#0b2440;--card:#fff;--card-foreground:#0b2440;--popover:#fff;--popover-foreground:#0b2440;--primary:#145cf5;--primary-foreground:#fff;--secondary:#eef4ff;--secondary-foreground:#0b2440;--muted:#f3f6fa;--muted-foreground:#536477;--accent:#eef4ff;--accent-foreground:#0b2440;--destructive:#b42318;--border:#dce3eb;--input:#cbd5df;--ring:#145cf5;--radius:.4rem}

*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:#fff;color:#0b2440;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}a{text-decoration:none;color:inherit}button,input,textarea{font:inherit}button,a,input,textarea,summary{outline-offset:5px}button{cursor:pointer}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.1;letter-spacing:-.04em}h1{font-size:clamp(3rem,5.2vw,5.3rem);font-weight:600;margin:25px 0}h1 span{color:#145cf5}h2{font-size:clamp(2.1rem,3.4vw,3.35rem);font-weight:500}h3{font-size:1.4rem;letter-spacing:-.025em;font-weight:600}.header{max-width:1500px;margin:auto;padding:18px 5%;display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid #e5ebf1}.logo{width:238px;height:76px;object-fit:contain}.header nav{display:flex;gap:30px;font-size:.9rem}.header nav a:hover{text-decoration:underline}.button{display:inline-flex;gap:24px;align-items:center;justify-content:center;background:#145cf5;color:white;padding:18px 24px;border:0;border-radius:4px;font-size:1rem;font-weight:600;line-height:1.4}.button:hover{background:#1049c5}.button.small{padding:13px 20px;font-size:.9rem}.hero{max-width:1500px;margin:auto;display:grid;grid-template-columns:1fr 1fr;min-height:630px}.hero-copy{padding:65px 8% 60px 10%}.eyebrow{font-size:.78rem;letter-spacing:.12em;font-weight:700;color:#235cad;line-height:1.5}.intro{font-size:1.1rem;max-width:470px;color:#526378;margin-bottom:30px}.micro{font-size:.82rem;color:#65768a;margin-top:20px;max-width:390px}.hero-visual{position:relative;margin:26px 5% 26px 0;overflow:hidden;border-radius:5px}.hero-visual>img{width:100%;height:100%;object-fit:cover}.image-label{position:absolute;bottom:28px;left:28px;padding:23px 28px;background:#fff;color:#0b2440;border-left:4px solid #145cf5}.image-label span{font-size:.7rem;letter-spacing:.08em;display:block;margin-bottom:10px}.image-label strong{font-weight:500;font-size:1.65rem;line-height:1.2}.sector-strip{background:#0b2440;color:white;display:flex;justify-content:space-around;gap:20px;padding:26px 5%;font-size:.78rem;letter-spacing:.1em}.section{max-width:1500px;margin:auto;padding:88px 5%}.section-heading{display:grid;grid-template-columns:1.3fr 1fr;gap:60px;align-items:end;margin-bottom:40px}.section-heading .eyebrow,.area .eyebrow,.quote .eyebrow,.faq .eyebrow{margin-bottom:18px}.section-heading>p{max-width:440px;color:#526378}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.service-grid article{padding:28px 24px;border:1px solid #dce3eb;display:flex;flex-direction:column;gap:22px;border-radius:5px}.card-top{display:flex;justify-content:space-between;align-items:center;color:#145cf5}.card-top span{font-size:.8rem;color:#64768a}.service-grid h3{font-size:1.4rem;line-height:1.22;max-width:240px}.service-grid p{color:#526378;font-size:.96rem;flex:1}.service-grid a{display:flex;align-items:center;justify-content:space-between;font-size:.86rem;font-weight:bold;gap:8px}.service-note{font-size:.8rem;color:#63748a;margin-top:22px}.approach{background:#edf4ff;padding:80px max(5%,calc((100vw - 1350px)/2));display:grid;grid-template-columns:1fr 1fr;gap:100px}.approach h2{margin:18px 0 25px}.approach p{color:#526378;max-width:500px}.text-link{display:inline-flex;align-items:center;gap:18px;margin-top:25px;font-weight:600}.approach ol{list-style:none;padding:0;margin:0}.approach li{display:flex;gap:24px;padding:24px 0;border-bottom:1px solid #cddcf0}.approach li:first-child{padding-top:0}.approach li>span{color:#145cf5;font-size:1rem}.approach h3{font-size:1.3rem;margin-bottom:10px}.area{display:grid;grid-template-columns:1fr 1.1fr;gap:65px}.area p:not(.eyebrow){color:#526378}.cities{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}.cities span{padding:7px 13px;border:1px solid #dce3eb;border-radius:30px;font-size:.88rem}.quote{background:#0b2440;color:white;max-width:none;display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;padding-left:max(5%,calc((100vw - 1350px)/2));padding-right:max(5%,calc((100vw - 1350px)/2))}.quote .eyebrow{color:#8bb7ff}.quote h2{font-size:clamp(2.5rem,4vw,4rem)}.quote-copy>p:not(.eyebrow){color:#cad6e5;max-width:420px;margin:25px 0}.quote-copy ul{padding:0;list-style:none;margin:30px 0}.quote-copy li{display:flex;align-items:center;gap:13px;margin:12px 0}.quote-copy li svg{color:#8bb7ff;width:19px}.pricing-note{border-top:1px solid #3c5068;padding-top:30px;max-width:440px;margin-top:44px}.pricing-note h3{font-size:1.1rem;margin-bottom:14px}.pricing-note p{color:#cad6e5;font-size:.93rem}.form-panel{background:white;color:#0b2440;border-radius:6px;padding:35px}.form-intro{font-size:.82rem;color:#63748a;margin:10px 0 24px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-grid label,.field>label{display:block;font-size:.875rem;font-weight:600}.form-grid label span{font-weight:400;color:#63748a}input,textarea,[data-slot=select-trigger]{width:100%;border:1px solid #cbd5df;border-radius:4px;background:white;min-height:46px;padding:10px 12px;color:#0b2440;margin-top:7px;font-size:1rem;box-shadow:none}textarea{resize:vertical}.full{grid-column:1/-1}.trap{display:none!important}.privacy-copy{font-size:.78rem;line-height:1.6;color:#63748a;margin:23px 0}.submit{width:100%;justify-content:space-between}.submit:disabled{opacity:.6;cursor:wait}.error{padding:12px;background:#fff0ed;color:#a52c1c;margin-bottom:15px}.success{padding:35px 0}.success>svg{color:#145cf5}.success h3{font-size:2rem;margin:20px 0}.success p{margin-bottom:25px}.reference{font-size:.85rem;overflow-wrap:anywhere}.faq{max-width:1000px}.faq h2{margin-bottom:35px}.faq details{border-bottom:1px solid #dce3eb;padding:22px 0}.faq summary{cursor:pointer;font-size:1.08rem;font-weight:600}.faq details p{color:#526378;margin-top:18px;max-width:720px}footer{border-top:1px solid #dce3eb;padding:35px 5%;display:grid;grid-template-columns:1fr auto;gap:10px 40px}footer strong{font-size:1.25rem}footer p{font-size:.85rem;color:#63748a;grid-column:1;grid-row:2}footer a{display:flex;align-items:center;gap:12px;font-size:.9rem;grid-row:1;grid-column:2}footer>span{font-size:.78rem;color:#63748a;text-align:right}.skip{position:absolute;top:-100px;background:white;padding:12px;z-index:100}.skip:focus{top:0}
@media(max-width:1000px){.header nav{display:none}.hero-copy{padding:45px 7% 40px 10%}.hero{min-height:580px}.hero h1{font-size:3.5rem}.service-grid{grid-template-columns:1fr 1fr}.approach,.quote{gap:40px}.form-grid{grid-template-columns:1fr}.form-panel{padding:25px}.section{padding-top:65px;padding-bottom:65px}}
@media(max-width:650px){.header{gap:12px;padding:10px 5%}.logo{width:175px;height:58px}.button.small{padding:11px 12px;font-size:.8rem;gap:8px}.hero{display:flex;flex-direction:column}.hero-copy{padding:40px 6%}.hero h1{font-size:clamp(2.8rem,11vw,4rem)}.hero-visual{height:340px;margin:0 5% 24px}.image-label{bottom:18px;left:18px;padding:16px 20px}.image-label strong{font-size:1.3rem}.sector-strip{flex-wrap:wrap;gap:15px 22px;font-size:.7rem}.section-heading,.approach,.area,.quote{grid-template-columns:1fr;gap:30px}.section-heading{margin-bottom:30px}.service-grid{grid-template-columns:1fr}.service-grid article{padding:25px}.service-grid h3{max-width:none}.approach{padding:55px 6%}.section{padding:55px 6%}.quote-copy ul{font-size:.92rem}.pricing-note{margin-top:25px}.form-panel{padding:23px 20px}footer{display:flex;flex-direction:column;gap:14px;padding:30px 6%}footer>span{text-align:left}footer p{max-width:300px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.contact-email a{text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}footer a{overflow-wrap:anywhere}

.form-panel{align-self:start}img{max-width:100%}footer strong a{display:inline-flex}
