:root{--ink: #1a1d24;--ink-soft: #3a3f4a;--ink-mute: #6b7280;--paper: #faf8f4;--paper-warm: #f4f1ea;--rule: #d8d3c8;--rule-soft: #e8e4dc;--navy: #0f2847;--font: "Inter", -apple-system, system-ui, sans-serif;--content-max: 1280px;--measure: 720px;--t-display: 72px;--t-display-sm: 48px;--t-h2-lg: 36px;--t-h2: 28px;--t-body-lg: 21px;--t-body: 17.5px;--t-caption: 13px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font);font-size:16px;line-height:1.6;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;font-feature-settings:"ss01","cv11"}.brand-strip{background:var(--ink);height:10px;width:100%}.site-header{border-bottom:1px solid var(--rule-soft);background:#faf8f4f0;backdrop-filter:blur(10px);position:sticky;top:0;z-index:50}.header-inner{max-width:var(--content-max);margin:0 auto;padding:16px 48px;display:flex;align-items:center;justify-content:space-between;gap:24px}.header-mark svg{display:block}nav.primary ul{list-style:none;display:flex;gap:40px}nav.primary a{font-size:14px;font-weight:500;color:var(--ink-soft);text-decoration:none;transition:color .15s ease}nav.primary a:hover{color:var(--navy)}.page{display:none}.page.active{display:block}section{padding:70px 48px;border-top:1px solid var(--rule-soft);position:relative}section:first-child{border-top:none}.section-inner{max-width:var(--content-max);margin:0 auto;position:relative}.section-label-big{font-size:15px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--navy);margin-bottom:32px;display:flex;align-items:baseline;gap:18px;line-height:1}.section-label-big:before{content:"";width:48px;height:1px;background:var(--navy);transform:translateY(-.35em)}.hero{padding:110px 48px 90px}.hero-inner{max-width:var(--content-max);margin:0 auto}.hero .eyebrow{font-size:var(--t-caption);font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--navy);margin-bottom:40px;display:flex;align-items:baseline;gap:18px;line-height:1}.hero .eyebrow:before{content:"";width:48px;height:1px;background:var(--navy);transform:translateY(-.35em)}.hero h1{font-weight:700;font-size:var(--t-display);line-height:1.04;letter-spacing:-.04em;color:var(--ink);margin-bottom:40px;max-width:1080px}.hero h1 .accent{color:var(--navy)}.hero .lede{font-size:var(--t-body-lg);line-height:1.5;color:var(--ink-soft);max-width:680px;font-weight:400;letter-spacing:-.008em}.page-header{padding:64px 48px;background:var(--paper-warm);border-top:none}.page-header-inner{max-width:var(--content-max);margin:0 auto}.page-header .page-eyebrow{font-size:var(--t-caption);font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--navy);margin-bottom:24px;display:flex;align-items:baseline;gap:18px;line-height:1}.page-header .page-eyebrow:before{content:"";width:48px;height:1px;background:var(--navy);transform:translateY(-.35em)}.page-header h1{font-weight:700;font-size:64px;line-height:1.04;letter-spacing:-.038em;color:var(--ink)}h2{font-weight:700;font-size:var(--t-h2-lg);line-height:1.14;letter-spacing:-.03em;color:var(--ink);margin-bottom:24px}h2.h2-small{font-size:var(--t-h2)}h3{font-weight:700;font-size:22px;line-height:1.2;letter-spacing:-.022em;color:var(--ink);margin-bottom:14px}p{font-size:var(--t-body);line-height:1.62;color:var(--ink-soft);max-width:var(--measure);margin-bottom:18px}p strong{font-weight:600;color:var(--ink)}p:last-child{margin-bottom:0}.pull-quote{padding:56px 48px;background:var(--paper-warm);border-top:1px solid var(--rule-soft);border-bottom:1px solid var(--rule-soft)}.pull-quote-inner{max-width:var(--content-max);margin:0 auto}.pull-quote blockquote{font-size:var(--t-h2-lg);font-weight:600;line-height:1.22;letter-spacing:-.028em;color:var(--navy);max-width:1020px;margin:0}.pull-quote blockquote:before{content:"";display:block;width:56px;height:2px;background:var(--navy);margin-bottom:24px}.practice{background:var(--paper-warm)}.practice .copy{max-width:880px;font-size:var(--t-body-lg);line-height:1.5;font-weight:500;color:var(--ink);letter-spacing:-.012em;margin-bottom:20px}.practice .copy:last-of-type{margin-bottom:24px}.practice .link-row a{font-size:14px;font-weight:600;color:var(--navy);text-decoration:none;letter-spacing:.02em;border-bottom:1px solid var(--navy);padding-bottom:3px}.practice .link-row a:hover{opacity:.7}.services-teasers h2{margin-bottom:44px;max-width:720px}.teaser-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--rule-soft);border-top:1px solid var(--rule-soft);border-bottom:1px solid var(--rule-soft);margin-bottom:36px}.teaser-card{background:var(--paper);padding:40px 32px 44px;transition:background .2s ease}.teaser-card:hover{background:var(--paper-warm)}.teaser-num-big{font-size:var(--t-display-sm);font-weight:800;line-height:1;color:var(--navy);letter-spacing:-.04em;margin-bottom:10px;opacity:.9}.teaser-tag{font-size:11px;font-weight:700;color:var(--ink-mute);letter-spacing:.18em;text-transform:uppercase;margin-bottom:20px}.teaser-card h3{font-size:21px;margin-bottom:12px}.teaser-card p{font-size:15.5px;line-height:1.55;color:var(--ink-soft)}.services-teasers .link-row a{font-size:14px;font-weight:600;color:var(--navy);text-decoration:none;letter-spacing:.02em;border-bottom:1px solid var(--navy);padding-bottom:3px}.contact-cta{padding:90px 48px}.contact-cta h2{font-size:var(--t-h2-lg);margin-bottom:24px;max-width:800px}.contact-cta a.email-link{font-size:var(--t-h2);font-weight:700;color:var(--navy);text-decoration:none;border-bottom:1px solid var(--navy);padding-bottom:6px;display:inline-block;letter-spacing:-.022em;word-break:break-word}.contact-cta a.email-link:hover{opacity:.7}.about-content{padding:64px 48px 80px}.about-content .inner{max-width:var(--content-max);margin:0 auto}.about-section h2{font-size:var(--t-h2);margin-bottom:24px}.services-orientation{padding:64px 48px 70px}.services-orientation .inner{max-width:var(--content-max);margin:0 auto}.services-orientation h2{font-size:var(--t-h2);margin-bottom:24px}.service-lines{padding:70px 48px;background:var(--paper-warm)}.service-lines .inner{max-width:var(--content-max);margin:0 auto}.service-lines h2{font-size:var(--t-h2);margin-bottom:40px}.service-block{display:grid;grid-template-columns:120px 1fr;gap:40px;padding:36px 0 40px;border-top:1px solid var(--rule);align-items:start}.service-block:last-child{border-bottom:1px solid var(--rule)}.service-block-num{font-size:var(--t-display-sm);font-weight:800;line-height:1;color:var(--navy);letter-spacing:-.04em;opacity:.85}.service-block-body h3{font-size:24px;margin-bottom:16px;letter-spacing:-.026em}.service-block-body p{font-size:16.5px;line-height:1.6;color:var(--ink-soft);margin-bottom:14px;max-width:760px}.service-block-body p:last-child{margin-bottom:0}.services-how{padding:70px 48px}.services-how .inner{max-width:var(--content-max);margin:0 auto}.services-how h2{font-size:var(--t-h2);margin-bottom:24px}.contact-page-content{padding:64px 48px 90px}.contact-page-content .inner{max-width:var(--content-max);margin:0 auto}.contact-lead{font-size:var(--t-body-lg);line-height:1.5;color:var(--ink);max-width:820px;margin-bottom:56px;font-weight:500;letter-spacing:-.014em}.contact-block{margin-bottom:44px}.contact-block:last-child{margin-bottom:0}.contact-block-label{font-size:var(--t-caption);font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--navy);margin-bottom:16px;display:flex;align-items:baseline;gap:18px;line-height:1}.contact-block-label:before{content:"";width:32px;height:1px;background:var(--navy);transform:translateY(-.35em)}.contact-block .email-large{font-size:var(--t-h2);font-weight:700;color:var(--navy);text-decoration:none;border-bottom:1px solid var(--navy);padding-bottom:6px;display:inline-block;letter-spacing:-.024em;word-break:break-word}.contact-block .email-large:hover{opacity:.7}.contact-block .location-text{font-size:var(--t-body);color:var(--ink-soft);line-height:1.55}.notfound-page{padding:110px 48px;min-height:60vh}.notfound-page .inner{max-width:var(--content-max);margin:0 auto}.notfound-page h1{font-size:var(--t-display-sm);margin-bottom:32px;font-weight:700;letter-spacing:-.038em}.notfound-page p{font-size:var(--t-body-lg);color:var(--ink-soft);margin-bottom:14px;max-width:720px}.notfound-page p a{color:var(--navy);text-decoration:none;border-bottom:1px solid var(--navy)}footer{background:var(--ink);color:#faf8f4b3;padding:56px 48px 36px;font-size:14px;line-height:1.6}.footer-inner{max-width:var(--content-max);margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr;gap:56px;padding-bottom:36px;border-bottom:1px solid rgba(250,248,244,.12)}footer .ident-mark{margin-bottom:16px}footer .ident-text{font-size:12.5px;color:#faf8f480;line-height:1.7;margin-top:6px}footer .col-label{font-size:11px;text-transform:uppercase;letter-spacing:.2em;color:#faf8f473;margin-bottom:14px;font-weight:700}footer ul{list-style:none}footer ul li{margin-bottom:6px}footer a{color:#faf8f4bf;text-decoration:none}footer a:hover{color:var(--paper)}.footer-base{max-width:var(--content-max);margin:24px auto 0;font-size:12px;color:#faf8f466}@media (max-width: 1024px){section,.hero,.page-header,.about-content,.services-orientation,.service-lines,.services-how,.contact-page-content,.contact-cta,.notfound-page,.pull-quote,footer{padding-left:32px;padding-right:32px}.header-inner{padding-left:32px;padding-right:32px}section{padding-top:64px;padding-bottom:64px}.hero{padding-top:90px;padding-bottom:80px}.page-header{padding-top:56px;padding-bottom:56px}:root{--t-display: 56px;--t-display-sm: 40px;--t-h2-lg: 30px;--t-h2: 26px;--t-body-lg: 19px}.page-header h1{font-size:52px}.teaser-grid{grid-template-columns:1fr}.service-block{grid-template-columns:90px 1fr;gap:28px}.service-block-body h3{font-size:22px}.footer-inner{gap:40px}}@media (max-width: 768px){section,.hero,.page-header,.about-content,.services-orientation,.service-lines,.services-how,.contact-page-content,.contact-cta,.notfound-page,.pull-quote,footer{padding:52px 24px}.header-inner{padding:14px 24px}.brand-strip{height:8px}.hero{padding-top:60px;padding-bottom:48px}:root{--t-display: 40px;--t-display-sm: 32px;--t-h2-lg: 26px;--t-h2: 22px;--t-body-lg: 18px;--t-body: 16.5px;--t-caption: 12px}.hero h1{letter-spacing:-.034em}.hero .eyebrow{margin-bottom:28px}.page-header{padding-top:48px;padding-bottom:48px}.page-header h1{font-size:38px;letter-spacing:-.032em}.page-header .page-eyebrow{margin-bottom:20px}h3{font-size:19px}.header-mark svg{width:140px;height:auto}nav.primary ul{gap:24px}nav.primary a{font-size:13px}.pull-quote{padding:48px 24px}.pull-quote blockquote:before{width:40px;margin-bottom:20px}.contact-cta{padding:60px 24px}.contact-block .email-large{word-break:break-word}.about-content{padding-top:48px;padding-bottom:60px}.service-block{grid-template-columns:1fr;gap:8px;padding:24px 0 28px}.service-block-num{font-size:36px;margin-bottom:4px}.service-block-body h3{font-size:20px}.service-block-body p{font-size:15.5px}.section-label-big{margin-bottom:24px;font-size:13px;letter-spacing:.14em}.section-label-big:before{width:32px}.footer-inner{grid-template-columns:1fr;gap:28px;padding-bottom:28px}footer{padding-top:40px;padding-bottom:24px}}@media (max-width: 480px){section,.hero,.page-header,.about-content,.services-orientation,.service-lines,.services-how,.contact-page-content,.contact-cta,.notfound-page,.pull-quote,footer{padding:42px 18px}.header-inner{padding:12px 18px;gap:14px}.hero{padding-top:48px;padding-bottom:42px}:root{--t-display: 32px;--t-display-sm: 28px;--t-h2-lg: 22px;--t-h2: 20px;--t-body-lg: 17px;--t-body: 15.5px}.hero h1{line-height:1.08}.page-header h1{font-size:32px}.header-mark svg{width:115px;height:auto}nav.primary ul{gap:16px}nav.primary a{font-size:12.5px}.pull-quote{padding:40px 18px}.teaser-card{padding:32px 22px 36px}.contact-cta{padding:48px 18px}.service-block-body h3{font-size:19px}.service-block-body p{font-size:15px}footer{padding-top:32px;padding-bottom:22px}}.hero .eyebrow,.hero h1,.hero .lede,.page-header .page-eyebrow,.page-header h1{opacity:0;animation:rise .6s ease forwards}.hero .eyebrow{animation-delay:.05s}.hero h1{animation-delay:.15s}.hero .lede{animation-delay:.28s}.page-header .page-eyebrow{animation-delay:.05s}.page-header h1{animation-delay:.15s}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}nav.primary a[aria-current=page]{color:var(--navy);font-weight:600}.skip-link{position:absolute;left:-9999px;top:0;background:var(--navy);color:var(--paper);padding:10px 16px;z-index:200;font-size:14px;font-weight:600;text-decoration:none}.skip-link:focus{left:8px;top:8px}.about-bio-grid{display:grid;grid-template-columns:320px 1fr;gap:56px;align-items:start}.about-portrait{margin:0}.about-portrait img{display:block;width:100%;height:auto;border-radius:2px;background:var(--paper-warm)}.about-portrait figcaption{font-size:13px;color:var(--ink-mute);margin-top:14px;letter-spacing:.01em;line-height:1.5}.about-portrait figcaption strong{color:var(--ink-soft);font-weight:600;display:block}@media (max-width: 900px){.about-bio-grid{grid-template-columns:1fr;gap:32px}.about-portrait{max-width:280px}}.legal-content{padding:64px 48px 80px}.legal-content .inner{max-width:var(--content-max);margin:0 auto}.legal-lede{font-size:var(--t-body-lg);line-height:1.5;color:var(--ink);max-width:820px;font-weight:500;letter-spacing:-.014em}.legal-section{padding-top:48px;margin-top:48px;border-top:1px solid var(--rule-soft)}.legal-section:first-of-type{border-top:none;margin-top:40px;padding-top:0}.legal-section h2{font-size:var(--t-h2);margin-bottom:20px}.legal-section h3{font-size:16px;font-weight:600;color:var(--ink);letter-spacing:0;margin-top:28px;margin-bottom:10px;text-transform:none}.legal-section p,.legal-section li{max-width:760px}.legal-section ul{margin:0 0 18px;padding-left:22px}.legal-section li{font-size:var(--t-body);line-height:1.62;color:var(--ink-soft);margin-bottom:8px}.legal-section a{color:var(--navy);text-decoration:none;border-bottom:1px solid var(--navy)}.legal-section a:hover{opacity:.7}.legal-dl{display:grid;grid-template-columns:200px 1fr;gap:4px 24px;max-width:760px;margin:0 0 24px}.legal-dl dt{font-weight:600;color:var(--ink);font-size:var(--t-body);padding:4px 0}.legal-dl dd{margin:0;color:var(--ink-soft);font-size:var(--t-body);padding:4px 0}@media (max-width: 600px){.legal-dl{grid-template-columns:1fr;gap:0}.legal-dl dt{padding-bottom:0}.legal-dl dd{padding-top:2px;padding-bottom:14px}}.legal-currency{margin-top:48px;padding-top:28px;border-top:1px solid var(--rule-soft)}.legal-currency p{font-size:14px;color:var(--ink-mute);max-width:760px}
