@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;1,400&display=swap');
:root{--paper:#f3f1eb;--ink:#142b46;--blue:#24477c;--muted:#687687;--line:#c9c9c1;--white:#fffefa;--pale:#e6e5df;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.wrap{width:min(1180px,calc(100% - 64px));margin:auto}.eyebrow{font-size:10px;letter-spacing:.19em;text-transform:uppercase;color:var(--muted)}header{height:86px;border-bottom:1px solid var(--line);display:flex;align-items:center}.nav{display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px}.brand img{width:58px;height:58px;object-fit:contain}.brand-name{font-size:12px;font-weight:700;letter-spacing:.13em;line-height:1.1}.brand-name small{display:block;font-size:8px;font-weight:500;letter-spacing:.14em;color:var(--muted);margin-top:6px}.links{display:flex;align-items:center;gap:25px;font-size:10px;letter-spacing:.1em;text-transform:uppercase}.links a:hover,.footer-links a:hover{opacity:.6}.nav-cta,.button{border:1px solid var(--ink);padding:13px 17px;display:inline-flex;gap:18px;align-items:center;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.button{background:var(--ink);color:var(--white);padding:17px 21px}.hero{padding:88px 0 76px}.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:7vw;align-items:center}.hero h1{font:clamp(52px,7vw,92px)/.99 var(--serif);font-weight:400;letter-spacing:-.05em;margin:25px 0}.hero h1 em{color:var(--blue)}.lead{font:20px/1.6 var(--serif);color:#46586c;max-width:590px}.actions{display:flex;gap:22px;align-items:center;flex-wrap:wrap;margin-top:34px}.underlink{font-size:10px;letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid;padding-bottom:7px}.hero-art{height:470px;background:#c7cfce;position:relative;overflow:hidden}.hero-art svg{width:100%;height:100%}.art-caption{position:absolute;bottom:20px;left:22px;color:white;font:italic 15px var(--serif)}.ribbon{border-block:1px solid var(--line);padding:17px 0;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.ribbon span:before{content:'✳';color:var(--blue);margin-right:10px}section{padding:94px 0}.split{display:grid;grid-template-columns:.65fr 1.35fr;gap:8vw}.section-no{font:italic 17px var(--serif);color:var(--blue)}h2{font:clamp(36px,4.7vw,60px)/1.08 var(--serif);font-weight:400;letter-spacing:-.04em;margin:16px 0 24px}h3{font:27px/1.15 var(--serif);font-weight:400;margin:0 0 14px}.copy{font:19px/1.7 var(--serif);color:#46586c}.smallcopy{font-size:13px;line-height:1.85;color:var(--muted)}.dark{background:var(--ink);color:var(--white)}.dark .eyebrow,.dark .smallcopy{color:#b9c6d2}.dark h2{max-width:700px}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#627286;margin-top:48px;border:1px solid #627286}.service-card{background:var(--ink);padding:34px 32px;min-height:240px}.service-card .num{font:italic 17px var(--serif);color:#9eb2c7;margin-bottom:22px}.service-card p{font-size:13px;line-height:1.8;color:#c2ccd5;max-width:480px}.light{background:var(--pale)}.steps{display:grid;grid-template-columns:repeat(3,1fr);margin-top:44px;border-top:1px solid #adb5b7}.step{padding:25px 25px 0 0}.step+.step{border-left:1px solid #adb5b7;padding-left:25px}.step b{font:italic 50px var(--serif);font-weight:400;color:var(--blue)}.step p{font-size:12px;line-height:1.8;color:#586779}.band{display:grid;grid-template-columns:1fr .8fr;gap:8vw;align-items:end}.panel{border-top:1px solid #aeb8bc;padding-top:22px}.panel p{font-size:13px;line-height:1.85;color:#526176}.local-list{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:36px}.local-item{border-top:1px solid var(--line);padding-top:17px}.local-item strong{font:22px var(--serif);font-weight:400}.local-item p{font-size:12px;line-height:1.7;color:var(--muted)}.cta{background:#dfe3e2}.cta-grid{display:grid;grid-template-columns:1fr .8fr;gap:8vw;align-items:end}.cta-box{border-top:1px solid #aab4b8;padding-top:20px}.cta-box p{font-size:13px;line-height:1.8;color:#566578}.cta-box a{margin-top:15px}footer{background:var(--ink);color:white;padding:32px 0}.foot{display:flex;justify-content:space-between;gap:25px;align-items:center}.foot-brand{font-size:11px;letter-spacing:.15em}.foot-brand small{display:block;color:#b7c4d0;font-size:9px;margin-top:7px;letter-spacing:.1em}.foot-meta{font-size:9px;letter-spacing:.1em;color:#b7c4d0;text-transform:uppercase}.mobile-toggle{display:none}.page-hero{padding:76px 0 65px;border-bottom:1px solid var(--line)}.page-hero h1{font:clamp(44px,6vw,76px)/1.04 var(--serif);font-weight:400;letter-spacing:-.045em;max-width:900px;margin:20px 0}.page-hero .lead{max-width:740px}.content-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px}.content-block{padding-top:22px;border-top:1px solid var(--line)}.content-block p{font-size:14px;line-height:1.9;color:#526176}.bullet-list{padding:0;list-style:none}.bullet-list li{padding:13px 0;border-bottom:1px solid var(--line);font:18px var(--serif)}.note{border-left:2px solid var(--blue);padding:5px 0 5px 18px;font-size:12px;line-height:1.8;color:var(--muted);margin-top:25px}.breadcrumb{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding-top:25px}.breadcrumb a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:820px){.wrap{width:calc(100% - 38px)}header{height:74px}.brand img{width:50px;height:50px}.links{gap:12px}.links a:not(.nav-cta){display:none}.hero{padding:55px 0}.hero-grid,.split,.band,.cta-grid,.content-grid{grid-template-columns:1fr;gap:35px}.hero h1{font-size:clamp(50px,12vw,78px)}.hero-art{height:340px}.ribbon{justify-content:flex-start;gap:15px 25px}.ribbon span{white-space:nowrap}section{padding:70px 0}.service-grid{grid-template-columns:1fr}.service-card{min-height:0}.steps{grid-template-columns:1fr}.step,.step+.step{border-left:0;border-bottom:1px solid #adb5b7;padding:20px 0}.local-list{grid-template-columns:1fr 1fr}.foot{align-items:flex-start;flex-direction:column}.page-hero{padding:55px 0}.content-grid{gap:28px}}
