:root{--navy:#112d3e;--blue:#376b95;--pale:#e5f0f8;--warm:#f8f7f3;--ink:#182f3f;--muted:#536171;--line:#dbe3e9;--gold:#b79762;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:#fff;color:var(--ink);font:17px/1.65 Arial,Helvetica,sans-serif}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--navy)}h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.035em;line-height:1.15}h1{font-size:clamp(38px,4.5vw,68px);margin-bottom:24px}h2{font-size:clamp(29px,3vw,42px)}h3{font-size:23px;line-height:1.3}a{color:var(--blue);text-underline-offset:5px}a:hover{text-decoration-thickness:2px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}img{max-width:100%;display:block}button{font:inherit}button,summary{cursor:pointer}[hidden]{display:none!important}.container{width:min(1200px,100% - 80px);margin-inline:auto}.skip-link{position:absolute;top:-100px;left:20px;z-index:20;padding:12px;background:white}.skip-link:focus{top:10px}.site-header{position:sticky;top:0;z-index:15;background:rgba(255,255,255,.98);border-bottom:1px solid #eef0f1}.header-inner{width:min(1280px,100% - 64px);margin:auto;min-height:96px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:block;width:245px;height:76px;overflow:hidden;position:relative;flex-shrink:0}.brand img{position:absolute;width:285px;max-width:none;height:auto;left:-22px;top:-32px}.site-header nav{display:flex;gap:28px;align-items:center}.site-header nav a{color:var(--navy);font-size:14px;text-decoration:none;padding:12px 0;white-space:nowrap}.site-header nav a[aria-current]{font-weight:bold;border-bottom:2px solid var(--gold)}.menu-toggle{border:1px solid var(--line);border-radius:4px;background:white;color:var(--navy);padding:10px 12px}.breadcrumb{font-size:13px;display:flex;gap:12px;padding-block:18px;color:var(--muted)}.breadcrumb a{text-decoration:none}.hero{max-width:1440px;margin:auto;display:grid;grid-template-columns:1fr 1fr;background:var(--warm);min-height:470px}.hero-copy{padding:58px max(40px,calc((100vw - 1200px)/2)) 56px; padding-right:40px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.21em;line-height:1.7;color:var(--blue);margin-bottom:24px}.hero-lead{color:var(--muted);font-size:20px;line-height:1.6;max-width:620px;margin-bottom:0}.hero-photo{min-width:0;min-height:420px;position:relative;overflow:hidden}.hero-photo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.home-hero{min-height:540px}.home-hero h1{font-size:clamp(44px,5.1vw,76px)}.trust-strip{background:var(--pale);display:flex;justify-content:center;gap:80px;padding:24px 32px;color:var(--navy);font-size:16px}.trust-strip span+span{border-left:1px solid #b4c8d8;padding-left:80px}.services{padding-block:64px}.services h2{margin-bottom:32px}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.service-grid article{border-top:2px solid #a9cce7;padding:26px 0 10px;position:relative}.service-grid article+article{padding-left:25px;border-left:1px solid var(--line)}.service-grid h3{font:400 27px/1.25 var(--serif);margin:12px 0 18px}.service-grid p{font-size:17px;line-height:1.6;color:var(--muted);max-width:290px;min-height:55px}.service-symbol{font-size:13px;letter-spacing:.1em;color:var(--blue)}.service-grid a{font-size:15px}.reading-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:56px;padding-block:60px 72px}.toc{border-right:1px solid var(--line);padding-right:28px}.toc details{position:sticky;top:130px}.toc summary{font:400 26px/1.3 var(--serif);list-style:none;margin-bottom:24px;pointer-events:none}.toc nav{display:flex;flex-direction:column;gap:0}.toc a{font-size:15px;line-height:1.5;color:var(--muted);text-decoration:none;padding:12px 0 12px 18px;border-left:2px solid transparent;display:block}.toc a:hover,.toc a.active{border-left-color:var(--gold);color:var(--navy);background:#fafaf7}.prose{max-width:820px;min-width:0}.prose p,.prose li{font:17px/1.7 Arial,Helvetica,sans-serif;color:#45535f;overflow-wrap:break-word}.prose p{margin:0 0 1.25em}.prose h2{font-size:34px;margin:1.5em 0 .7em;scroll-margin-top:120px}.prose h2:first-child{margin-top:0}.prose h3{font:400 25px/1.3 var(--serif);margin:1.2em 0 .6em}.prose strong{font-weight:700;color:var(--navy)}.prose ul,.prose ol{margin:0 0 24px;padding-left:24px}.prose li{margin-bottom:10px}.prose .service-list{list-style:none;padding-left:20px;border-left:2px solid #a9cce7}.prose .service-list li{list-style:none;font-weight:600}.prose .service-list li::marker{content:''}.prose [id]{scroll-margin-top:130px}.button{display:inline-block;background:var(--navy);color:white!important;text-decoration:none!important;font:700 16px/1.4 Arial,Helvetica,sans-serif;padding:16px 25px;border:1px solid var(--navy);text-align:center;border-radius:1px}.button:hover{background:#245370;border-color:#245370}.prose p:has(>.button){margin-top:32px}.process{background:var(--navy);color:white;margin-top:48px;padding:30px;border-radius:2px}.process h2{color:white;font-size:32px;margin-top:0}.process h3{font:400 23px/1.35 var(--serif);color:#fff;margin-top:18px}.process p{color:#e1e9ef;font-size:16px}.process ol{list-style:none;padding:0;margin:0}.process li{list-style:none;color:white}.home-reading{border-top:1px solid var(--line)}.site-footer{background:var(--navy);color:white;padding:38px 0}.footer-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px}.footer-brand{font:400 32px/1 var(--serif);color:white;text-decoration:none}.footer-brand span{display:block;font:10px/2 Arial;letter-spacing:.2em}.site-footer nav{display:flex;gap:24px;flex-wrap:wrap}.site-footer a{color:#fff;font-size:14px;text-decoration:none}.site-footer .footer-brand{font-size:32px}.site-footer p{width:100%;font-size:13px;margin:8px 0 0;color:#b9cedd}.contact-heading{padding-block:50px 30px}.contact-heading h1{font-size:48px;letter-spacing:.04em;margin-bottom:18px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;padding-bottom:65px;align-items:stretch}.contact-card{background:var(--warm);border:1px solid var(--line);padding:34px;min-width:0;border-radius:4px}.contact-card h2{font-size:32px}.contact-card>div{font:17px/1.8 Arial,sans-serif}.contact-card font{font:inherit!important;color:inherit!important}.contact-card a{overflow-wrap:anywhere}.contact-card>.button{display:block;margin:0 0 14px}.contact-card>p{color:var(--muted)}.contact-card>a:last-child{display:block;margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}
@media(max-width:1050px){.header-inner{width:calc(100% - 40px);gap:10px}.site-header nav{gap:18px}.brand{width:220px}.hero-copy{padding:40px}.reading-layout{grid-template-columns:220px minmax(0,1fr);gap:35px}.container{width:calc(100% - 48px)}}
@media(max-width:850px){.header-inner{min-height:82px;flex-wrap:wrap;gap:0}.brand{width:215px;height:76px}.menu-toggle{display:block}.site-header nav{width:100%;flex-direction:column;align-items:stretch;gap:0;padding-bottom:16px}.site-header nav a{padding:12px 8px;white-space:normal}.site-header nav a[aria-current]{border-bottom:0;border-left:2px solid var(--gold)}.hero,.home-hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:34px 28px 38px}.hero-photo{height:auto;min-height:0;aspect-ratio:4/3}.hero-photo img{position:absolute;object-fit:cover}.hero h1{font-size:43px;max-width:660px}.hero-lead{font-size:18px}.trust-strip{gap:20px;justify-content:space-around;padding:20px 24px;font-size:14px}.trust-strip span{flex:1}.trust-strip span+span{padding-left:20px}.reading-layout{grid-template-columns:1fr;gap:28px;padding-block:30px 44px}.toc{border:1px solid var(--line);padding:16px 20px;background:#fafaf7}.toc details{position:static}.toc summary{pointer-events:auto;font-size:24px;margin:0}.toc details[open] summary{margin-bottom:14px}.toc summary::after{content:'＋';float:right;font:20px Arial}.toc details[open] summary::after{content:'−'}.toc nav{display:grid;grid-template-columns:1fr 1fr}.toc a{padding:8px 10px;font-size:14px}.services{padding-block:40px}.service-grid{gap:20px}.service-grid h3{font-size:24px}.service-grid article+article{padding-left:15px}.contact-heading h1{font-size:36px}.contact-card{padding:26px}}
@media(max-width:600px){body{font-size:16px}.container{width:calc(100% - 36px)}.header-inner{width:calc(100% - 28px)}.brand{width:190px}.brand img{width:255px;left:-22px;top:-26px}.hero-copy{padding:30px 22px}.hero h1{font-size:37px}.hero-photo{aspect-ratio:4/3}.eyebrow{font-size:11px;letter-spacing:.15em;margin-bottom:16px}.service-grid{grid-template-columns:1fr;gap:25px}.service-grid article+article{border-left:0;padding-left:0}.service-grid p{min-height:0;max-width:none}.service-grid h3{font-size:27px}.services h2{font-size:34px}.prose p,.prose li{font-size:16px;line-height:1.7}.prose h2{font-size:29px}.prose h3{font-size:23px}.toc nav{grid-template-columns:1fr}.trust-strip{gap:12px;font-size:12px;line-height:1.5;padding:18px}.trust-strip span+span{padding-left:12px}.contact-grid{grid-template-columns:1fr;gap:20px}.contact-heading{padding-top:32px}.contact-heading h1{font-size:29px}.contact-card{padding:24px}.footer-inner{align-items:flex-start}.site-footer nav{width:100%;gap:14px 22px}.process{padding:24px}.prose .button{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Show the full illustrative image on mobile, matching the user's preference. */
@media(max-width:850px){.hero-photo{aspect-ratio:1122/1402}.hero-photo img{object-fit:contain}}
.contact-card>div{line-height:1.7}

/* Mobile: show the whole original logo instead of clipping its padded image. */
@media(max-width:850px){
.header-inner{display:flex;flex-wrap:wrap;justify-content:space-between;column-gap:8px}
.brand{position:relative;width:220px;max-width:calc(100% - 120px);height:auto;aspect-ratio:2/1;overflow:visible;flex-shrink:1}
.brand img{position:static;inset:auto;display:block;width:100%;max-width:100%;height:auto;object-fit:contain;transform:none}
.menu-toggle{flex:0 0 auto;font-size:14px;padding:9px 10px}
}
@media(max-width:360px){.brand{width:180px;max-width:calc(100% - 108px)}.menu-toggle{padding:8px;font-size:13px}}
