*{box-sizing:border-box}
 :root{--ink:#142b3a;--accent:#235a79;--paper:#fff;--light:#f1f4f6;--rule:#d9e1e5}
body{margin:0;font:1rem/1.65 Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper)}
a{color:inherit;text-underline-offset:.2em}
a,button{-webkit-tap-highlight-color:transparent}
button{font:inherit}
a:focus-visible,button:focus-visible{outline:3px solid #df9d35;outline-offset:4px}
.service-strip{background:var(--ink);color:#fff;padding:.6rem max(5vw,1.2rem);font-size:.875rem;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.service-strip a{text-decoration:none;font-weight:bold}
header{padding:0 max(5vw,1.2rem);border-bottom:1px solid var(--rule)}
.header-row{max-width:1200px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.1rem 0}
.brand{text-decoration:none;display:flex;flex-direction:column;line-height:1.1;flex-shrink:0}
.brand strong{font-size:2rem;letter-spacing:.04em}
.brand span{font-size:.875rem;letter-spacing:.13em;margin-top:.25rem}
.header-call{font-weight:700}
.menu-button{display:none;background:white;color:var(--ink);border:1px solid var(--rule);padding:.5rem .8rem;cursor:pointer}
nav{max-width:1200px;margin:auto;display:flex;flex-wrap:wrap;gap:.5rem 1.8rem;padding:.6rem 0}
nav a{text-decoration:none;padding:.45rem 0;border-bottom:3px solid transparent;font-size:.9375rem}
nav a:hover,nav a[aria-current]{border-bottom-color:var(--accent)}
main{max-width:1200px;margin:auto}
.hero{padding:4.5rem 0 4rem;border-bottom:1px solid var(--rule)}
.hero>div{max-width:780px}
.eyebrow{font-size:.875rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--accent);margin:0 0 1rem}
h1,h2,h3{line-height:1.12;text-wrap:balance}
h1{font-size:clamp(2.5rem,5.5vw,4.5rem);margin:0 0 1.5rem;letter-spacing:-.035em}
h2{font-size:clamp(1.75rem,3vw,2.6rem);letter-spacing:-.025em;margin:0 0 1.4rem}
h3{font-size:1.35rem;margin:0 0 .8rem}
p{max-width:65ch}
.intro{font-size:1.25rem;max-width:48ch}
.actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.8rem}
.button{background:var(--accent);border:2px solid var(--accent);color:#fff;padding:.8rem 1.2rem;text-decoration:none;font-weight:700;display:inline-block;text-align:center}
.button:hover{background:var(--ink);border-color:var(--ink)}
.button.secondary{background:white;color:var(--ink);border-color:var(--ink)}
.section{padding:3.5rem 0;border-bottom:1px solid var(--rule)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:4rem}
.services{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:2.2rem;border-top:2px solid var(--ink)}
.services a{padding:1.5rem 1.2rem 1rem 0;text-decoration:none;border-bottom:1px solid var(--rule)}
.services a+a{padding-left:1.2rem;border-left:1px solid var(--rule)}
.services a:hover h3{text-decoration:underline}
.services p{margin:0}
.columns{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.detail-list{padding-left:1.3rem}
.detail-list li{padding:.3rem 0}
.text-link{font-weight:700}
.closing{padding:3.5rem;background:var(--light);margin:3rem 0}
footer{background:var(--ink);color:#fff;padding:3rem max(5vw,1.2rem);display:grid;grid-template-columns:1fr 1fr;gap:1rem}
footer a{display:block;overflow-wrap:anywhere}
footer p{margin:.5rem 0}
.copyright{grid-column:1/-1;font-size:.875rem}
.large-link{font-size:1.5rem;font-weight:700}
.mobile-actions{display:none}
.skip{position:fixed;top:-100px;left:1rem;background:white;padding:1rem;z-index:10}
.skip:focus{top:1rem}
@media(max-width:1320px){main{margin:0 5vw}
}
@media(max-width:900px){.services{grid-template-columns:repeat(2,1fr)}
.services a:nth-child(3){border-left:0;padding-left:0}
.split{gap:2rem}
.columns{gap:1rem}
}
@media(max-width:700px){body{padding-bottom:3.8rem}
.header-call{display:none}
.menu-button{display:block}
nav{display:none;padding:.5rem 0 1rem;gap:0}
nav.open{display:flex;flex-direction:column}
nav a{padding:.55rem 0;width:100%}
.hero{padding:2.8rem 0}
.split,.columns{grid-template-columns:1fr;gap:2rem}
.section{padding:2.7rem 0}
.closing{padding:2rem 1.2rem;margin:2rem 0}
footer{grid-template-columns:1fr}
h1{font-size:2.8rem}
.actions .button{width:100%}
.mobile-actions{display:grid;grid-template-columns:1fr 1fr;position:fixed;bottom:0;left:0;right:0;background:var(--ink);border-top:1px solid #ffffff50;z-index:5}
.mobile-actions a{color:white;text-decoration:none;text-align:center;font-weight:bold;padding:.85rem .6rem}
.mobile-actions a+a{background:var(--accent)}
.service-strip{font-size:.875rem}
.services h3{font-size:1.15rem}
.intro{font-size:1.125rem}
}
