@import url('fonts.css');
@import url('purpose-tokens.css');
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-sans);font-size:1rem;line-height:1.75}body.locked{overflow:hidden}a{color:inherit;text-underline-offset:5px}button{font:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}img{display:block;max-width:100%;height:auto}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--font-display);font-weight:400;line-height:1.16}h1{font-size:clamp(3rem,4.9vw,4.75rem);letter-spacing:-.04em}h2{font-size:clamp(2.2rem,3.4vw,3.4rem);letter-spacing:-.035em}h3{font-size:1.6rem;letter-spacing:-.015em}p+p{margin-top:20px}.wrap{width:min(1280px,calc(100% - 112px));margin-inline:auto}.eyebrow{font-family:var(--font-sans);font-size:.875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--capital-verdigris);margin-bottom:20px}.muted{color:#53616a}.lede{font-size:1.125rem;line-height:1.8}.number{font-size:.875rem;color:var(--capital-verdigris);font-variant-numeric:tabular-nums}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:50px;padding:12px 22px;border:1px solid var(--capital-verdigris);background:var(--capital-verdigris);color:var(--paper);font-size:.9375rem;font-weight:500;text-decoration:none;line-height:1.5;transition:background .15s}.button:hover{background:var(--navy);border-color:var(--navy)}.button.light{background:var(--paper);color:var(--navy);border-color:var(--paper)}.button.light:hover{background:#e4e2dc}.text-link{display:inline-block;text-decoration:none;border-bottom:1px solid currentColor;padding:8px 0;font-size:.9375rem;font-weight:500}.text-link:hover{border-bottom-width:2px}.skip{position:fixed;left:16px;top:-100px;z-index:100;background:var(--paper);padding:12px}.skip:focus{top:12px}:focus-visible{outline:3px solid #b48036;outline-offset:5px}.reviewbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-inline:32px;background:var(--mist);color:#36414a;border-bottom:1px solid #c8c9c2;font-size:.75rem;letter-spacing:.05em}.reviewbar nav{display:flex;align-items:stretch}.reviewbar a,.reviewbar button{font-family:var(--font-sans);background:none;color:inherit;border:0;border-left:1px solid #c8c9c2;padding:12px 18px;font-size:.8125rem;letter-spacing:0;text-decoration:none;min-height:44px}.reviewbar [aria-current=page]{background:var(--paper);font-weight:600}.reviewbar a:hover,.reviewbar button:hover{background:#d5d5cc}.header{padding-block:27px;border-bottom:1px solid #d0d1c9;background:var(--paper);position:relative;z-index:5}.header-inner{display:flex;justify-content:space-between;align-items:center;gap:28px}.brand{display:block;flex-shrink:0;width:245px}.brand img{width:100%;height:auto}.nav{display:flex;align-items:center;gap:32px}.nav a{font-size:.9375rem;text-decoration:none}.nav a:not(.button){padding-block:10px}.nav a:hover,.nav [aria-current=page]{text-decoration:underline;text-underline-offset:7px}.nav .button{min-height:44px;padding:9px 22px}.menu-toggle{display:none;min-height:44px;padding:8px 14px;border:1px solid #96a29d;background:none;color:var(--navy)}.hero{display:grid;grid-template-columns:1.13fr .87fr;min-height:670px;background:var(--navy);color:var(--paper)}.hero-copy{padding:78px 58px 80px max(56px,calc((100vw - 1280px)/2));display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.hero .eyebrow{color:#b7d4ce}.hero .lede{max-width:510px;margin-block:28px 30px;color:#d5dfe8}.hero-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap}.hero .button{background:var(--paper);color:var(--navy);border-color:var(--paper)}.hero .button:hover{background:#d5dfe8}.hero-media{position:relative;margin:44px 44px 44px 0;min-width:0;overflow:hidden;background:var(--purpose-blue)}.hero-media img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:50% 50%}.hero-media figcaption{position:absolute;bottom:22px;left:22px;right:22px;background:rgba(11,36,69,.86);padding:11px 15px;color:var(--paper);font-size:.8125rem}.house .hero{background:var(--paper);color:var(--navy);grid-template-columns:1fr 1fr}.house .hero .eyebrow{color:var(--capital-verdigris)}.house .hero .lede{color:#53616a}.house .hero .button{background:var(--capital-verdigris);border-color:var(--capital-verdigris);color:var(--paper)}.house .hero .button:hover{background:var(--navy)}.house .hero-media{margin:0}.intro{padding-block:76px;display:grid;grid-template-columns:1fr 1fr;gap:90px;border-bottom:1px solid #c9cdc5}.intro h2{font-size:clamp(2.1rem,2.8vw,2.8rem)}.intro .text-link,.relationship .text-link{margin-top:23px}.section{padding-block:94px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:75px;margin-bottom:48px}.section-head>p{max-width:360px;color:#53616a}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 65px}.service{border-top:1px solid #bdc7be;display:grid;grid-template-columns:30px 1fr;gap:20px;padding:27px 0 32px}.service .number{padding-top:6px}.service h3{font-size:1.65rem;margin-bottom:13px}.service h3 a{display:flex;align-items:baseline;justify-content:space-between;gap:14px;text-decoration:none}.service h3 a:hover{text-decoration:underline}.service h3 span{font-family:var(--font-sans);font-size:1rem;color:var(--capital-verdigris)}.service p{color:#53616a;max-width:465px}.principles{padding-block:83px;background:var(--mist)}.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px}.step{border-top:1px solid #9eaaa1;padding-top:23px}.step .number{display:block;margin-bottom:34px}.step h3{font-size:1.65rem;margin-bottom:18px}.step p{color:#53616a}.principles>.wrap>.text-link{margin-top:42px}.house .principles{background:var(--navy);color:var(--paper)}.house .principles .eyebrow,.house .principles .number{color:#b7d4ce}.house .principles p{color:#d5dfe8}.relationship{display:grid;grid-template-columns:1fr 1fr;gap:90px}.relationship>div>p:not(.eyebrow){max-width:530px}.contact-band{background:var(--navy);color:var(--paper);padding-block:80px}.contact-band .eyebrow{color:#b7d4ce}.contact-inner{display:flex;align-items:center;justify-content:space-between;gap:60px}.contact-inner>div>p:last-child{margin-top:24px;color:#d5dfe8}.contact-inner .button{flex-shrink:0}.footer{background:var(--navy);color:#d5dfe8;padding:55px 0 28px;border-top:1px solid #40546d}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:36px;padding-bottom:38px}.footer-top nav{display:flex;gap:26px;flex-wrap:wrap;font-size:.9375rem}.footer a{text-decoration:none}.footer a:hover{text-decoration:underline}.footer-meta{border-top:1px solid #40546d;padding-block:26px;display:flex;justify-content:space-between;gap:28px;font-size:.875rem}.footer-meta>div{display:flex;gap:25px;flex-wrap:wrap}.footer-meta a{text-decoration:underline}.review-disclaimer{font-size:.8125rem;max-width:990px;line-height:1.7;color:#c0cbd7}.page-hero{padding:27px 0 76px;border-bottom:1px solid #c9cdc5}.page-hero.dark{background:var(--navy);color:var(--paper);border:0}.breadcrumbs{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:60px;font-size:.875rem;color:#53616a}.dark .breadcrumbs{color:#d5dfe8}.page-heading{display:grid;grid-template-columns:1.35fr 1fr;gap:90px;align-items:end}.page-heading h1{font-size:clamp(2.8rem,4.5vw,4.5rem)}.page-heading .lede{color:#53616a;max-width:460px}.dark .lede{color:#d5dfe8}.dark .eyebrow{color:#b7d4ce}.service-review-note{padding-block:24px;font-size:.875rem;color:#53616a}.service-review-note p{max-width:1050px}.service-index{display:flex;flex-wrap:wrap;gap:10px 28px;border-top:1px solid #c9cdc5;border-bottom:1px solid #c9cdc5;padding-block:22px}.service-index a{font-size:.9375rem;padding:5px 0}.service-detail{display:grid;grid-template-columns:1fr 1fr;gap:90px;padding-block:70px;border-bottom:1px solid #c9cdc5;scroll-margin-top:24px}.service-detail:last-child{border:0}.service-detail h2{font-size:clamp(2.2rem,3.2vw,3.3rem);margin-bottom:24px}.service-summary{font-size:1.125rem;color:#53616a}.service-detail>div>p{max-width:550px}.focus{border-top:1px solid #c9cdc5;padding-top:24px;margin-top:27px}.focus h3{font-family:var(--font-sans);font-weight:600;font-size:.875rem;color:var(--capital-verdigris);letter-spacing:0;margin-bottom:12px}.focus p{color:#53616a}.risk-note{font-size:.875rem;margin-top:26px;color:#53616a}.process-row{display:grid;grid-template-columns:40px 1fr 1.2fr;gap:35px;border-top:1px solid #c9cdc5;padding-block:33px}.process-row p{color:#53616a}.process-row .number{padding-top:5px}.contact-layout,.document-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px}.contact-layout h2{margin-bottom:25px}.contact-layout .text-link{margin-top:25px}.contact-status{padding:36px;background:var(--mist);border-top:3px solid var(--capital-verdigris)}.contact-status h2{font-size:2.2rem}.contact-status p:not(.eyebrow){color:#53616a}.contact-status .button{margin-top:25px}.document-layout h2{margin-bottom:22px}.document-meta{margin:30px 0}.document-meta>div{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #c9cdc5;padding-block:12px;max-width:440px}.document-meta dt{color:#53616a}.document-meta dd{margin:0}.document-actions{display:flex;gap:25px;align-items:center;flex-wrap:wrap}.disclosure-copy h3{margin-bottom:20px}.disclosure-copy p{color:#53616a}.disclosure-copy h3:not(:first-child){margin-top:38px}dialog{padding:0;border:1px solid #84958d;background:var(--paper);color:var(--ink);width:min(740px,calc(100% - 32px));max-height:85vh}dialog::backdrop{background:rgba(11,36,69,.75)}.dialog-head{position:sticky;top:0;z-index:1;background:var(--paper);border-bottom:1px solid #c9cdc5;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 28px}.dialog-head h2{font-family:var(--font-sans);font-size:1.125rem;letter-spacing:0}.dialog-close{background:none;border:1px solid #84958d;min-height:44px;padding:8px 15px;color:var(--navy)}.dialog-body{padding:30px}.dialog-body h3{font-size:1.6rem;margin-bottom:18px}.dialog-body h3:not(:first-of-type){margin-top:32px}.dialog-body p,.dialog-body li{color:#53616a}.dialog-body ol{padding-left:24px}.dialog-body li{margin-bottom:15px}.dialog-body .text-link{margin-top:22px}
@media(min-width:1700px){.hero-copy{padding-right:80px}.hero{min-height:720px}}
@media(max-width:1150px){.wrap{width:calc(100% - 64px)}.brand{width:215px}.nav{gap:22px}.hero-copy{padding:64px 32px}.hero-media{margin:32px 32px 32px 0}.hero{min-height:620px}.intro,.relationship,.page-heading,.service-detail,.contact-layout,.document-layout{gap:50px}.service-grid{column-gap:36px}.service h3{font-size:1.5rem}.section-head{gap:45px}.steps{gap:24px}.step h3{font-size:1.45rem}}
@media(max-width:850px){.wrap{width:calc(100% - 44px)}.reviewbar{padding:0;flex-direction:column;gap:0}.reviewbar>span{padding:7px 12px;text-align:center}.reviewbar nav{width:100%;border-top:1px solid #c8c9c2}.reviewbar a,.reviewbar button{flex:1;text-align:center;padding:10px 8px}.reviewbar a:first-child{border-left:0}.header{padding-block:20px}.brand{width:205px}.menu-toggle{display:block}.nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--paper);border-bottom:1px solid #84958d;padding:18px 22px;gap:0}.nav.open{display:flex;flex-direction:column;align-items:stretch}.nav a:not(.button){padding:14px 0}.nav .button{margin-block:10px}.hero,.house .hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:55px 22px}.hero h1{font-size:clamp(2.8rem,7.5vw,4.5rem)}.hero .lede{max-width:600px}.hero-media{height:370px;margin:0 22px 24px}.house .hero-media{height:420px;margin:0}.intro,.relationship,.page-heading,.service-detail,.contact-layout,.document-layout{grid-template-columns:1fr;gap:28px}.intro{padding-block:55px}.section{padding-block:60px}.section-head{display:block;margin-bottom:35px}.section-head>p{max-width:600px;margin-top:23px}.principles{padding-block:60px}.steps{grid-template-columns:1fr 1fr;gap:35px 26px}.step h3{font-size:1.65rem}.contact-band{padding-block:60px}.contact-inner{display:block}.contact-inner .button{margin-top:30px}.footer-top,.footer-meta{flex-direction:column;align-items:flex-start;gap:25px}.footer-top nav{gap:16px 24px}.footer-meta>div{gap:16px 24px}.page-hero{padding-bottom:50px}.breadcrumbs{margin-bottom:40px}.page-heading h1{font-size:clamp(2.6rem,7vw,4rem)}.page-heading .lede{max-width:600px}.service-detail{padding-block:50px}.process-row{grid-template-columns:28px 1fr;gap:12px 20px}.process-row p{grid-column:2}.contact-status{padding:28px}.document-layout{gap:55px}}
@media(max-width:600px){.service-grid{grid-template-columns:1fr}.service{gap:15px}.service h3{font-size:1.5rem}.service p{max-width:none}.hero-actions{gap:18px}.hero-actions .button{padding-inline:18px}.hero-media{height:300px}.house .hero-media{height:350px}.hero .eyebrow{font-size:.75rem;letter-spacing:.08em}.hero h1{font-size:clamp(2.45rem,8.7vw,3.5rem)}.steps{grid-template-columns:1fr}.step .number{margin-bottom:20px}.review-date{display:none}.footer-meta>div{flex-direction:column}.document-actions{align-items:flex-start;flex-direction:column;gap:15px}.dialog-head{padding:18px 20px}.dialog-body{padding:24px}.contact-status h2{font-size:2rem}}
@media(max-width:360px){.wrap{width:calc(100% - 36px)}.brand{width:175px}.hero-copy{padding-inline:18px}.hero-media{margin-inline:18px}.hero h1{font-size:2.4rem}.page-heading h1{font-size:2.45rem}.hero-actions{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

/* v0.3: local, watermarked stock previews; preserve each full image. */
.editorial-photo{margin:0;min-width:0}
.editorial-photo img{display:block;width:100%;height:auto;object-fit:contain;background:var(--mist)}
.editorial-photo figcaption{padding:12px 0 0;color:#53616a;font-size:.75rem;line-height:1.6}
.photo-break{padding-bottom:76px}
.photo-break .editorial-photo,.service-photo-break .editorial-photo{max-width:1000px;margin-inline:auto}
.editorial-split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.editorial-copy h2{margin-bottom:26px}
.editorial-copy .text-link{margin-top:23px}
.photo-heading{grid-template-columns:1fr 1fr;align-items:center;gap:64px}
.photo-heading h1{font-size:clamp(2.7rem,4.1vw,4.1rem)}
.photo-heading .lede{margin-top:25px}
.service-detail{padding-block:58px}
.service-photo-break{padding-block:28px 30px;border-bottom:1px solid #c9cdc5}
.process-photo{max-width:1000px;margin:0 auto 52px}
.process{display:grid;grid-template-columns:1fr 1fr;gap:12px 60px}
.process-row{grid-template-columns:28px 1fr;gap:14px 20px}
.process-row p{grid-column:2}
.contact-band{padding-block:65px}
@media(max-width:850px){
 .editorial-split,.photo-heading{grid-template-columns:1fr;gap:30px}
 .editorial-copy h2{margin-bottom:22px}
 .photo-break{padding-bottom:52px}
 .process{gap:10px 28px}
 .process-photo{margin-bottom:35px}
 .service-detail{padding-block:42px}
 .hero-copy{padding-block:38px}
 .hero .lede{margin-block:22px 25px}
 .contact-band{padding-block:50px}
}
@media(max-width:600px){
 .process{grid-template-columns:1fr;gap:0}
 .service-photo-break{padding-block:20px 24px}
 .editorial-photo figcaption{font-size:.6875rem}
}

/* Keep the design tabs, without the retired review-label row. */
.reviewbar{justify-content:flex-end}.reviewbar nav{border-top:0}
