@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{--ink:#1c1e20;--muted:#626568;--paper:#fff;--wash:#f3f3f0;--line:#d8d9d5;--serif:'Libre Caslon Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.7 var(--sans);-webkit-font-smoothing:antialiased}body,h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.08;letter-spacing:-.025em}h1{font-size:clamp(48px,5.7vw,82px);margin-bottom:28px}h2{font-size:clamp(36px,3.8vw,54px);margin-bottom:24px}h3{font-size:30px}em{font-style:italic}a{color:inherit;text-decoration:none}p{margin-bottom:24px}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;max-width:100%;height:auto}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #5b77a1;outline-offset:5px}[hidden]{display:none!important}::selection{background:#d3d6d6}.wrap{width:min(1200px,calc(100% - 112px));margin-inline:auto}.eyebrow{font-family:var(--sans);font-size:11px;font-weight:600;line-height:1.5;text-transform:uppercase;letter-spacing:.18em;margin:0 0 23px}.eyebrow span{margin:0 5px;color:#8a8d8f}.lead{font-size:20px;line-height:1.7;color:var(--muted);max-width:680px}.skip-link{position:fixed;left:20px;top:-80px;padding:12px;background:#fff;z-index:999}.skip-link:focus{top:10px}.site-header{height:104px;background:rgba(255,255,255,.98);border-bottom:1px solid #ebebe8;position:sticky;top:0;z-index:50}.header-inner{display:flex;height:100%;align-items:center;justify-content:space-between;gap:40px}.brand{flex-shrink:0}.brand img{width:200px;height:auto}.site-header nav{display:flex;align-items:center;gap:33px;font-size:13px;font-weight:500}.site-header nav>a{position:relative;padding:12px 0;white-space:nowrap}.site-header nav>a[aria-current=page]:after{content:'';position:absolute;height:1px;background:var(--ink);left:0;right:0;bottom:7px}.site-header nav>a:hover{color:#707777}.site-header nav .nav-contact{border:1px solid #323535;padding:13px 19px;margin-left:8px}.nav-contact span{margin-left:22px}.menu-toggle{display:none;border:0;background:transparent;align-items:center;gap:14px}.hero{position:relative;min-height:620px;color:#fff;background:#1d2224;overflow:hidden}.hero-image{position:absolute;inset:0;height:100%;width:100%;object-fit:cover;object-position:center 52%;filter:grayscale(1)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,18,21,.64),rgba(12,18,21,.23) 80%)}.hero-content{position:relative;padding-top:100px;padding-bottom:100px}.hero h1{font-size:clamp(54px,6vw,85px);line-height:1.06;letter-spacing:-.025em;max-width:850px;margin:0 0 27px}.hero h1 em{color:#e0e2df}.hero .eyebrow{color:#e7e8e5;margin-bottom:31px}.hero-content>p:not(.eyebrow){font-size:17px;line-height:1.7;color:#e2e3e2}.hero-actions{display:flex;gap:30px;align-items:center;margin-top:32px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;background:var(--ink);color:#fff;border:1px solid var(--ink);padding:15px 22px;font-family:var(--sans);font-size:13px;font-weight:500;line-height:1.5;transition:background .2s,color .2s}.button:hover{background:#404547}.button-light{background:#fff;color:var(--ink);border-color:#fff}.button-light:hover{background:#e5e7e4}.button span,.text-link span,.hero-text-link span{font-size:20px;line-height:1}.hero-text-link{display:flex;gap:24px;align-items:center;font-size:13px;border-bottom:1px solid #8d9292;padding:12px 0}.hero-bottom{position:relative;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #ffffff44;padding:20px 0 23px;font-size:10px;letter-spacing:.17em}.hero-bottom a{font-size:12px;letter-spacing:0}.hero-bottom a span{margin-left:22px;font-size:18px}.about-section{display:grid;grid-template-columns:1fr 1fr;gap:100px;padding-block:106px}.about-copy{font-size:17px;line-height:1.85;color:#54595b}.about-copy>p:first-child{color:var(--ink);font-size:20px;line-height:1.7}.about-more{font-size:16px;border-top:1px solid var(--line);padding-top:20px}.about-more summary{list-style:none;cursor:pointer;color:var(--ink);font-size:13px;display:flex;justify-content:space-between}.about-more summary::-webkit-details-marker{display:none}.about-more[open] summary{margin-bottom:20px}.expertise-section{background:var(--wash);padding:90px 0 95px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:45px}.section-heading h2{margin-bottom:0}.section-heading>.text-link{margin-bottom:4px;flex-shrink:0}.section-heading>p{font-size:15px;color:var(--muted);margin:0 0 6px}.service-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:70px}.service-row{display:flex;align-items:center;gap:22px;border-top:1px solid #c9ccc7;padding:26px 0;transition:padding .2s}.service-row:nth-last-child(-n+2){border-bottom:1px solid #c9ccc7}.service-number{font:11px var(--sans);color:#737879;align-self:center}.service-row h3{font-family:var(--sans);font-size:17px;line-height:1.5;letter-spacing:0;flex:1;margin:0;font-weight:400}.service-row>span:last-child{font-size:21px;font-family:var(--sans)}.service-row:hover{padding-inline:8px;color:#606866}.text-link{display:inline-flex;gap:28px;font:500 13px/1.7 var(--sans);border-bottom:1px solid #929797;padding-bottom:8px;align-items:center}.text-link:hover{color:#727b7c}.people-section{padding-block:98px}.people-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px}.person-monogram{height:195px;background:#eceeea;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:57px;position:relative;color:#656b67;border-bottom:2px solid #9da59f;transition:background .2s}.person-monogram span{position:absolute;right:15px;bottom:13px;font:22px var(--sans);color:#434b47}.person-card:nth-child(even) .person-monogram{background:#e2e5e0}.person-card h3{font-family:var(--sans);font-size:17px;letter-spacing:-.02em;margin:21px 0 8px;font-weight:500;line-height:1.4}.person-card p{font-size:12px;line-height:1.65;color:var(--muted);margin:0}.person-card:hover .person-monogram{background:#d3d8d2}.insights-section{background:var(--wash);padding:90px 0 100px}.insight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px 30px}.insight-card{min-width:0;display:flex;flex-direction:column}.card-image{overflow:hidden;display:block;aspect-ratio:1.6;background:#e4e5e1}.card-image img{width:100%;height:100%;object-fit:cover;filter:grayscale(1);transition:transform .35s}.insight-card:hover .card-image img{transform:scale(1.035)}.card-copy{padding-top:24px;display:flex;flex-direction:column;flex:1}.card-copy .eyebrow{font-size:9px;letter-spacing:.12em;color:#636866;margin-bottom:14px}.card-copy h3{font-size:31px;line-height:1.12;margin-bottom:15px}.card-copy h3 a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.excerpt{font-size:14px;line-height:1.8;color:var(--muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:25px}.card-copy .text-link{margin-top:auto;align-self:flex-start}.contact-band{background:#212629;color:#fff;padding:76px 0 83px}.contact-band-inner{display:flex;align-items:center;justify-content:space-between;gap:60px}.contact-band h2{font-size:clamp(38px,4vw,56px);margin-bottom:0}.contact-band .eyebrow{color:#b9c0c0}.contact-band-inner>div:last-child>p{font-size:15px;line-height:1.8;color:#d3d7d8}.site-footer{background:#fff;padding-top:62px}.footer-top{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:70px;padding-bottom:45px}.footer-brand{width:200px;margin-bottom:23px;filter:brightness(0);height:auto}.footer-top p,.footer-top a{font-size:12px;line-height:1.9;color:#62676a}.footer-top .eyebrow{font-size:10px;color:var(--ink);margin-bottom:20px}.footer-top a{display:block;margin-bottom:6px}.footer-top a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid var(--line);padding:24px 0 29px;display:flex;justify-content:space-between;gap:80px;font-size:10px;line-height:1.9;color:#71777a}.footer-bottom p{max-width:690px;margin:0}.footer-bottom>span{flex:0 0 215px}.page-intro{padding-top:76px;padding-bottom:55px}.page-intro .eyebrow{margin-bottom:23px}.page-intro h1 em{color:#727876}.page-intro .lead{margin-bottom:0}.page-intro .button{margin-top:30px}.directory-section{padding-bottom:100px}.directory-people{padding-top:10px}.archive-section{padding-bottom:100px}.insights-tools{border-block:1px solid var(--line);padding:24px 0;display:grid;grid-template-columns:2fr 1fr;gap:30px}.insights-tools label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:9px}.insights-tools input,.insights-tools select{border:1px solid #c8ccca;border-radius:0;background:#fff;color:var(--ink);padding:14px 16px;width:100%;font-size:15px;height:53px}.result-count{font-size:12px;color:var(--muted);margin:21px 0 30px}.empty-state{padding:70px 0;text-align:center}.empty-state h2{font-size:40px}.empty-state p{color:var(--muted)}.article-heading{width:min(760px,calc(100% - 48px));margin:0 auto;padding:57px 0 26px}.back-link{display:inline-block;font-size:12px;color:#656b6e;margin-bottom:37px}.back-link:hover{text-decoration:underline}.article-heading h1{font-size:clamp(36px,4.5vw,59px);line-height:1.1;margin-bottom:27px}.article-heading .eyebrow{margin-bottom:17px}.article-meta{display:flex;gap:20px;flex-wrap:wrap;font-size:11px;color:var(--muted);align-items:center;border-top:1px solid var(--line);padding-top:20px}.share-button{border:0;background:none;margin-left:auto;font-size:11px;color:var(--ink);padding:0}.share-status{font-size:12px;margin:7px 0 0;min-height:17px}.article-image{width:min(1100px,calc(100% - 64px));margin:0 auto 46px;aspect-ratio:2.7;overflow:hidden;background:var(--wash)}.article-image img{width:100%;height:100%;object-fit:cover;filter:grayscale(1)}.article-body{width:min(760px,calc(100% - 48px));margin:0 auto;padding-bottom:68px;font-size:18px;line-height:1.85}.article-body p{text-align:justify;text-align-last:left;text-justify:inter-word;hyphens:auto;overflow-wrap:break-word;margin-bottom:24px}.article-body>p:first-child{font-size:21px;line-height:1.75;color:#3c4446;margin-bottom:36px}.article-body h2{font-family:var(--sans);font-size:23px;font-weight:500;letter-spacing:-.02em;line-height:1.35;margin:37px 0 17px}.article-body a{border-bottom:1px solid #8b9595}.article-body ul{padding-left:23px;font-size:15px;line-height:1.9}.article-body li{margin-bottom:7px}.article-body>p:has(em){font-size:14px;color:var(--muted);margin-top:28px}.article-body>p:has(a[href^="mailto:"]){background:var(--wash);padding:24px 27px;border-left:2px solid #89938f;font-size:16px;text-align:justify}.related{padding:58px 0 90px;border-top:1px solid var(--line)}.related h2{font-size:40px}.service-detail{display:grid;grid-template-columns:1.5fr 1fr;gap:100px;padding-bottom:100px}.service-copy{font-size:19px;line-height:1.85}.advice-note{margin-top:45px;background:var(--wash);padding:34px}.advice-note h2{font-size:33px}.advice-note p{font-size:16px}.service-detail aside{border-top:1px solid var(--line);padding-top:24px}.service-detail aside>a{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:13px 0;font-size:13px;gap:15px}.service-detail aside>a:hover{color:#737e79}.profile-intro{padding-block:58px 85px}.profile-heading{display:flex;align-items:center;gap:50px;margin-bottom:50px}.profile-initials{width:200px;height:225px;background:var(--wash);display:grid;place-items:center;flex-shrink:0;font:70px var(--serif);color:#717b75;border-bottom:2px solid #a5afa6}.profile-heading h1{font-size:60px;margin-bottom:16px}.profile-heading .lead{font-size:17px}.profile-heading .eyebrow{margin-bottom:20px}.profile-body{max-width:780px;margin-left:250px;font-size:18px;line-height:1.9}.contact-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:100px;padding-bottom:100px}.contact-options>a{display:grid;grid-template-columns:1fr auto;border-top:1px solid var(--line);padding:27px 0 30px;gap:7px}.contact-options>a:last-child{border-bottom:1px solid var(--line)}.contact-options .eyebrow{grid-column:1/-1;margin-bottom:4px;color:var(--muted)}.contact-options strong{font-size:clamp(22px,2.6vw,34px);font-family:var(--serif);font-weight:400;overflow-wrap:anywhere}.contact-options>a>span:last-child{font-size:26px}.office{background:var(--wash);padding:36px}.office h2{font-size:34px;line-height:1.2}.office>p{font-size:15px}.office hr{border:0;border-top:1px solid var(--line);margin:30px 0}.office .eyebrow{font-size:10px;margin-bottom:15px}.office .office-note{font-size:12px;color:var(--muted);margin-bottom:0}.prose-page{max-width:820px;padding-bottom:90px;font-size:17px;line-height:1.9;overflow-wrap:anywhere}.prose-page p{white-space:normal;margin-bottom:25px}
@media(min-width:1500px){.wrap{width:min(1280px,calc(100% - 140px))}.hero-content{padding-top:115px;padding-bottom:115px}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.site-header nav{gap:20px}.brand img{width:175px}.site-header nav .nav-contact{margin-left:0}.about-section{gap:55px}.people-grid{gap:16px}.person-monogram{height:165px}.person-card h3{font-size:15px}.service-grid{column-gap:40px}.service-detail,.contact-layout{gap:55px}.profile-body{margin-left:220px}.footer-top{gap:35px}.section-heading>p br{display:none}}
@media(max-width:800px){.site-header{height:86px}.brand img{width:174px}.menu-toggle{display:flex}.site-header nav{display:none;position:absolute;top:85px;left:0;right:0;background:#fff;padding:25px 32px 35px;box-shadow:0 12px 20px #0001;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:7px}.site-header nav.is-open{display:flex}.site-header nav>a{padding:10px 0}.site-header nav .nav-contact{margin-top:10px;display:flex;justify-content:space-between;padding:14px 17px}.site-header nav>a[aria-current=page]:after{display:none}.hero{min-height:600px}.hero-content{padding:85px 0 70px}.hero h1{font-size:64px}.hero-bottom{font-size:8px}.about-section{grid-template-columns:1fr;gap:15px;padding-block:70px}.about-copy{max-width:660px}.section-heading{gap:25px;align-items:flex-start;flex-direction:column;margin-bottom:35px}.section-heading>p br{display:block}.expertise-section,.people-section,.insights-section{padding-block:70px}.service-grid{gap:0 35px}.service-row{gap:14px}.service-row h3{font-size:15px}.people-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 20px}.person-monogram{height:180px}.insight-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 26px}.home .insight-card:last-child{display:flex}.contact-band-inner{gap:30px;align-items:flex-start}.contact-band h2{font-size:40px}.footer-top{grid-template-columns:1fr 1fr}.footer-top>div:first-child{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:30px}.footer-top>div:first-child p{margin:0}.footer-brand{margin:0}.footer-bottom{gap:30px}.footer-bottom>span{flex-basis:140px}.profile-heading{gap:30px}.profile-initials{width:160px;height:190px}.profile-heading h1{font-size:48px}.profile-body{margin-left:0}.service-detail{grid-template-columns:1fr;gap:55px}.contact-layout{grid-template-columns:1fr;gap:40px}.office{display:block}.page-intro{padding-top:55px}.profile-intro{padding-top:40px}.prose-page{width:calc(100% - 64px)}.article-meta{gap:14px}.article-image{aspect-ratio:2.3}}
@media(max-width:540px){.wrap{width:calc(100% - 40px)}html{scroll-padding-top:95px}.site-header{height:78px}.brand img{width:161px}.site-header nav{top:77px;padding-inline:20px}.menu-toggle{font-size:12px;gap:10px}.menu-toggle span{font-size:21px}.hero{min-height:605px}.hero-content{padding:75px 0 60px}.hero .eyebrow{font-size:9px;letter-spacing:.15em;margin-bottom:31px}.hero h1{font-size:49px;line-height:1.12;letter-spacing:-.03em}.hero-content>p:not(.eyebrow){font-size:14px;line-height:1.8}.hero-actions{align-items:flex-start;gap:21px;flex-direction:column;margin-top:28px}.button{font-size:12px;padding:14px 19px;gap:33px}.hero-text-link{font-size:12px}.hero-bottom{gap:17px;padding:17px 0;align-items:flex-start}.hero-bottom>span{font-size:8px;letter-spacing:.09em;max-width:145px;line-height:1.7}.hero-bottom>a{font-size:10px;display:flex;align-items:center}.hero-bottom a span{margin-left:10px}.hero-image{object-position:55% center}.hero-shade{background:linear-gradient(90deg,rgba(10,17,21,.75),rgba(10,17,21,.3))}h1{font-size:47px}h2{font-size:39px}.eyebrow{font-size:10px;margin-bottom:21px}.about-section{padding-block:58px;gap:12px}.about-copy>p:first-child{font-size:18px}.about-copy{font-size:15px}.about-more{font-size:15px}.expertise-section,.people-section,.insights-section{padding-block:58px}.section-heading>p{font-size:14px}.section-heading>p br{display:none}.service-grid{grid-template-columns:1fr}.service-row{padding:22px 0;gap:18px}.service-row h3{font-size:16px}.service-row:nth-last-child(2){border-bottom:0}.service-number{font-size:10px}.people-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 16px}.person-monogram{height:165px;font-size:51px}.person-card h3{font-size:15px;margin:15px 0 6px}.person-card p{font-size:11px}.insight-grid{grid-template-columns:1fr;gap:40px}.card-image{aspect-ratio:1.7}.card-copy{padding-top:20px}.card-copy h3{font-size:32px}.card-copy .eyebrow{font-size:9px}.excerpt{font-size:14px}.contact-band{padding:57px 0 61px}.contact-band-inner{flex-direction:column;gap:27px}.contact-band h2{font-size:39px}.contact-band-inner>div:last-child>p{font-size:14px}.footer-top{gap:35px 20px;grid-template-columns:1fr}.footer-top>div:first-child{display:block}.footer-brand{width:180px;margin-bottom:22px}.footer-top>div:first-child p{font-size:12px}.site-footer{padding-top:45px}.footer-top>div:nth-child(2) .eyebrow{margin-bottom:12px}.footer-top nav a{margin-bottom:10px}.footer-bottom{flex-direction:column;gap:16px;font-size:10px}.footer-bottom>span{flex-basis:auto}.page-intro{padding-top:43px;padding-bottom:37px}.page-intro h1{font-size:47px}.page-intro .lead{font-size:17px}.directory-section,.archive-section{padding-bottom:65px}.insights-tools{grid-template-columns:1fr;gap:17px}.insights-tools input,.insights-tools select{font-size:14px;padding:12px;height:49px}.insights-tools label{font-size:10px}.result-count{margin-bottom:25px}.article-heading{padding-top:34px;width:calc(100% - 40px);padding-bottom:20px}.article-heading .back-link{margin-bottom:25px}.article-heading h1{font-size:36px;line-height:1.13;margin-bottom:22px;overflow-wrap:break-word}.article-heading .eyebrow{font-size:10px}.article-meta{font-size:10px;column-gap:13px;row-gap:10px}.share-button{font-size:10px;margin-left:0}.article-image{width:calc(100% - 40px);aspect-ratio:1.8;margin-bottom:28px}.article-body{width:calc(100% - 40px);font-size:16px;line-height:1.85;padding-bottom:35px}.article-body>p:first-child{font-size:18px;line-height:1.75;margin-bottom:28px}.article-body h2{font-size:20px;margin:29px 0 16px}.article-body>p:has(a[href^="mailto:"]){padding:20px;font-size:15px}.article-body>p:has(em){font-size:12px}.article-body ul{font-size:13px;overflow-wrap:anywhere}.related{padding-block:40px 60px}.related h2{font-size:35px}.profile-intro{padding-top:32px;padding-bottom:55px}.profile-heading{flex-direction:column;align-items:flex-start;gap:28px;margin-bottom:27px}.profile-initials{width:125px;height:135px;font-size:58px}.profile-heading h1{font-size:45px}.profile-heading .eyebrow{margin-bottom:14px}.profile-heading .lead{font-size:15px;margin-bottom:0}.profile-body{font-size:16px;line-height:1.85}.service-copy{font-size:17px}.advice-note{padding:26px;margin-top:30px}.service-detail{padding-bottom:60px}.contact-layout{padding-bottom:60px}.contact-options strong{font-size:28px}.office{padding:29px}.prose-page{width:calc(100% - 40px);font-size:15px;line-height:1.85;padding-bottom:55px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.sra-verification{display:flex;align-items:center;justify-content:space-between;gap:36px;padding:30px 0;border-top:1px solid var(--line)}
.sra-verification .eyebrow{font-size:9px;margin-bottom:10px;color:var(--muted)}
.sra-verification h2{font-size:30px;margin-bottom:10px}
.sra-verification p:not(.eyebrow){font-size:12px;color:var(--muted);margin:0}
.sra-verification-actions{display:flex;flex-direction:column;gap:14px;align-items:flex-start;flex-shrink:0}
.sra-register-link{font-size:13px;gap:23px}
.sra-badge{flex-shrink:0}
@media(max-width:640px){.sra-verification{align-items:flex-start;flex-direction:column;gap:22px;padding:27px 0}.sra-verification h2{font-size:28px}.sra-verification p:not(.eyebrow){font-size:11px}.sra-register-link{font-size:12px;gap:19px}}

/* Shared reading rhythm: paragraphs justify, with a natural final line. */
p {
  text-align: justify;
  text-align-last: left;
  text-justify: inter-word;
  hyphens: auto;
  -webkit-hyphens: auto;
  overflow-wrap: break-word;
  orphans: 3;
  widows: 3;
}
strong { font-weight: 700; }
h1, h2, h3, h4 { text-align: left; text-wrap: balance; }
h2, h3, h4 { scroll-margin-top: 12px; }
.eyebrow, .person-card p, .profile-heading .lead, .article-meta,
.result-count, .share-status, .footer-top p, .sra-verification p,
.office > p:not(.office-note) {
  text-align: left;
  hyphens: none;
}
.about-copy, .profile-body, .service-copy, .prose-page {
  color: #343a3d;
  line-height: 1.85;
}
.about-copy p, .profile-body p, .service-copy p, .prose-page p {
  margin-bottom: 1.35em;
}
.about-copy strong, .profile-body strong, .service-copy strong,
.article-body strong, .prose-page strong { color: var(--ink); }
.page-intro .lead { max-width: 65ch; }
.person-card h3, .service-row h3 { font-weight: 600; }
.person-card p { font-size: 13px; line-height: 1.65; }
.card-copy h3 { line-height: 1.2; }
.excerpt { font-size: 15px; line-height: 1.8; -webkit-line-clamp: 4; }
.card-copy .eyebrow { font-size: 10px; line-height: 1.65; }
.article-meta { font-size: 12px; row-gap: 10px; line-height: 1.65; }
.share-button, .back-link { font-size: 12px; }
.article-body { line-height: 1.85; }
.article-body h2 { font-weight: 600; line-height: 1.4; margin-top: 2em; }
.article-body ul { font-size: 16px; line-height: 1.8; padding-left: 1.3em; }
.article-body li { margin-bottom: .8em; overflow-wrap: anywhere; }
.article-body a, .prose-page a {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: .2em;
  border-bottom: 0;
}
.article-body > p:has(em) { font-size: 14px; line-height: 1.8; }
.article-body > p:has(a[href^="mailto:"]) { line-height: 1.85; }
.prose-page { max-width: 780px; font-size: 17px; overflow-wrap: break-word; }
.prose-page h2, .prose-page h3, .prose-page h4 {
  font-family: var(--sans);
  font-weight: 600;
  letter-spacing: -.015em;
}
.prose-page h2 { font-size: 29px; line-height: 1.3; margin: 2.5em 0 .85em; padding-top: 1em; border-top: 1px solid var(--line); }
.prose-page h3 { font-size: 21px; line-height: 1.4; margin: 1.9em 0 .8em; }
.prose-page h4 { font-size: 17px; line-height: 1.5; margin: 1.8em 0 .7em; }
.prose-page ul { margin: 0 0 1.5em; padding-left: 1.35em; }
.prose-page li { margin-bottom: .65em; padding-left: .15em; line-height: 1.8; }
.prose-page .fee-line { padding: 14px 18px; background: var(--wash); border-left: 2px solid #9da59f; font-variant-numeric: tabular-nums; }
.page-contents { padding: 26px 30px; margin-bottom: 45px; background: var(--wash); border: 1px solid var(--line); }
.page-contents .eyebrow { margin-bottom: 16px; }
.page-contents ul { columns: 2; column-gap: 32px; list-style: none; padding: 0; margin: 0; }
.page-contents li { break-inside: avoid; padding: 0; margin-bottom: 12px; font-size: 14px; line-height: 1.6; }
.page-contents a { text-decoration-color: #959b97; }
.table-wrap { margin: 24px 0 34px; overflow-x: auto; border: 1px solid var(--line); }
.table-wrap:focus-visible { outline: 3px solid #5b77a1; outline-offset: 3px; }
table { border-collapse: collapse; width: 100%; font-size: 15px; line-height: 1.65; font-variant-numeric: tabular-nums; }
th, td { padding: 16px 18px; text-align: left; vertical-align: top; border-bottom: 1px solid var(--line); overflow-wrap: normal; }
thead th { background: var(--wash); font-weight: 700; }
tbody th { font-weight: 600; width: 26%; }
tbody tr:last-child > * { border-bottom: 0; }
.footer-top p, .footer-top a { font-size: 13px; }
.footer-bottom { font-size: 12px; color: #60686c; }
.sra-verification p:not(.eyebrow) { font-size: 13px; }
@media (max-width: 540px) {
  .about-copy, .about-more, .profile-body, .prose-page { font-size: 16px; line-height: 1.85; }
  .service-copy { font-size: 17px; }
  .person-card p { font-size: 12px; }
  .excerpt { font-size: 16px; }
  .article-body ul { font-size: 15px; }
  .article-body h2 { font-size: 21px; margin-top: 1.8em; }
  .article-meta, .share-button { font-size: 12px; }
  .article-body > p:has(em) { font-size: 14px; }
  .article-body > p:has(a[href^="mailto:"]) { padding: 20px; font-size: 16px; }
  .profile-heading h1, .page-intro h1 { overflow-wrap: break-word; }
  .prose-page h2 { font-size: 25px; }
  .prose-page h3 { font-size: 20px; }
  .page-contents { padding: 22px; }
  .page-contents ul { columns: 1; }
  table { font-size: 13px; }
  th, td { padding: 12px 10px; }
  .footer-top > div:first-child p, .footer-bottom { font-size: 12px; }
  .sra-verification p:not(.eyebrow) { font-size: 12px; }
}

.contact-details { font-style: normal; text-align: left; line-height: 1.85; margin: 0 0 1.5em; padding: 20px 24px; background: var(--wash); overflow-wrap: anywhere; }

/* October 2026: considered motion, clearer service journeys and compact inner-page footers. */
.hero { min-height: 640px; }
.hero-scene { opacity: 0; transition: opacity .65s ease; }
.hero-scene.is-current { opacity: 1; }
.hero-shade { background: linear-gradient(90deg,rgba(10,16,19,.86),rgba(10,16,19,.65)); }
.hero-content { display: grid; grid-template-columns: 1.65fr 1fr; align-items: end; gap: 64px; padding-top: 88px; padding-bottom: 66px; }
.hero h1 { font-size: clamp(48px,5.4vw,78px); }
.hero-introduction { color: #e6e7e6; font-size: 17px; line-height: 1.8; text-align: left; }
.hero-panel-content { border-left: 1px solid #ffffff55; padding: 6px 0 8px 32px; min-height: 230px; }
.hero-panel-content h2 { font-size: clamp(28px,2.7vw,39px); line-height: 1.15; margin-bottom: 18px; }
.hero-panel-content p { font-size: 15px; line-height: 1.8; color: #eee; text-align: left; max-width: 38ch; }
.hero-panel-content .hero-text-link { width: fit-content; gap: 16px; }
.hero-tabs { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 26px; padding-bottom: 26px; }
.hero-image,.hero-shade { pointer-events: none; }
.hero-tabs button { display: flex; align-items: center; gap: 14px; text-align: left; border: 0; border-top: 2px solid #ffffff66; background: transparent; color: #e3e4e4; min-height: 70px; padding: 17px 0; font-size: 14px; }
.hero-tabs button[aria-selected="true"] { border-top-color: #fff; color: #fff; font-weight: 700; }
.hero-tabs button>span:first-child { font-size: 11px; opacity: .8; font-variant-numeric: tabular-nums; }
.hero-tabs button>span:last-child { margin-left: auto; font-size: 21px; }
.hero-tabs button:hover { color: #fff; border-top-color: #fff; }
.hero-tabs button:focus-visible,.hero-panel-content [role="tabpanel"]:focus-visible { outline: 2px solid #fff; outline-offset: 5px; }
.working-section { padding-block: 88px; }
.working-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 38px; list-style: none; margin: 0; padding: 0; }
.working-grid li { border-top: 1px solid #aeb5b1; padding-top: 24px; }
.step-number { display: block; margin-bottom: 26px; color: #68726c; font-size: 12px; letter-spacing: .12em; }
.working-grid h3 { font-size: 29px; line-height: 1.2; }
.working-grid p { color: var(--muted); font-size: 15px; line-height: 1.8; text-align: left; margin-bottom: 0; }
.international-note { display: grid; grid-template-columns: 1fr 2fr; gap: 38px; background: var(--wash); padding: 28px 32px; margin-top: 48px; }
.international-note p { margin: 0; }
.international-note p:last-child { font-size: 15px; line-height: 1.8; }
.working-section+.people-section { padding-top: 18px; }
.excerpt { -webkit-line-clamp: 3; text-align: left; }
.card-copy h3 { font-size: 29px; line-height: 1.2; }
.card-copy .eyebrow { line-height: 1.8; }
.service-copy h2 { font-size: 35px; margin-top: 42px; }
.service-copy>h2:first-child { margin-top: 0; }
.service-copy { font-size: 17px; }
.matter-list { padding-left: 22px; margin: 22px 0 34px; }
.matter-list li { padding-left: 5px; margin-bottom: 13px; }
.service-faqs { margin-top: 42px; }
.faq-item { border-top: 1px solid var(--line); }
.faq-item:last-child { border-bottom: 1px solid var(--line); }
.faq-item summary { display: flex; justify-content: space-between; gap: 20px; list-style: none; font-size: 16px; font-weight: 600; cursor: pointer; padding: 22px 0; line-height: 1.6; }
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item summary span { flex: 0 0 auto; font-size: 22px; font-weight: 400; }
.faq-item[open] summary span { transform: rotate(45deg); }
.faq-item p { font-size: 16px; line-height: 1.85; margin: 0 0 24px; }
.advice-note h2 { margin-top: 0; }
.fees-link { margin: 18px 0 0; font-size: 13px!important; text-align: left; }
.fees-link a { text-decoration: underline; text-underline-offset: 3px; }
.service-team { margin-bottom: 48px; }
.service-team>p:not(.eyebrow) { color: var(--muted); font-size: 14px; line-height: 1.8; text-align: left; }
.service-person { display: block; border-bottom: 1px solid var(--line); padding: 15px 0; font-size: 13px; line-height: 1.8; }
.service-person span { margin-left: 8px; }
.service-team .text-link { margin-top: 22px; }
.profile-body ul { padding-left: 22px; }
.profile-body li { margin-bottom: 10px; }
.enquiry-guidance { max-width: 840px; padding: 0 0 75px; }
.enquiry-guidance h2 { font-size: 35px; }
.enquiry-guidance p { font-size: 16px; line-height: 1.85; }
.policy-sources { border-top: 1px solid var(--line); margin-top: 48px; padding-top: 24px; font-size: 14px; }
.policy-sources p { margin-bottom: 14px; text-align: left; }
.policy-sources ul { padding-left: 20px; }
.policy-sources a { text-decoration: underline; text-underline-offset: 3px; }
.footer-compact { padding-top: 42px; }
.footer-compact .footer-top { padding-bottom: 28px; }
.footer-compact .footer-utilities { display: grid; grid-template-columns: 1fr 1fr; gap: 44px; border-top: 1px solid var(--line); }
.footer-compact .whatsapp-channel,.footer-compact .sra-verification { border-top: 0; padding: 26px 0; gap: 20px; }
.footer-compact .channel-copy h2,.footer-compact .sra-verification h2 { font-size: 25px; margin-bottom: 12px; }
.footer-compact .channel-copy .eyebrow,.footer-compact .sra-verification .eyebrow { font-size: 9px; margin-bottom: 12px; }
.footer-compact .channel-copy>p:not(.eyebrow) { font-size: 13px; line-height: 1.7; text-align: left; margin-bottom: 14px; }
.footer-compact .channel-copy .button { padding: 10px 12px; font-size: 11px; gap: 10px; }
.footer-compact .channel-qr-button { flex: 0 0 130px; width: 130px; }
.footer-compact .channel-qr-button img { width: 130px; border-radius: 0; }
.footer-compact .channel-qr-button>span { font-size: 11px; gap: 5px; }
.footer-compact .sra-verification { flex-direction: column; align-items: flex-start; justify-content: center; gap: 12px; }
.footer-compact .sra-verification p:not(.eyebrow) { font-size: 12px; margin-bottom: 0; }
.footer-compact .sra-verification-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; }
.footer-compact .sra-register-link { font-size: 11px; gap: 10px; }
@media(max-width:1000px) {
  .hero-content { gap: 32px; grid-template-columns: 1.5fr 1fr; }
  .hero-panel-content { padding-left: 24px; }
  .hero h1 { font-size: 56px; }
  .working-grid { gap: 24px; }
  .footer-compact .footer-utilities { gap: 28px; }
}
@media(max-width:800px) {
  .hero-content { grid-template-columns: 1fr; gap: 35px; padding: 55px 0 36px; }
  .hero-panel-content { min-height: 184px; max-width: 580px; }
  .hero-panel-content h2 { font-size: 30px; }
  .hero-panel-content p { max-width: 52ch; }
  .hero-tabs { gap: 18px; }
  .hero-tabs button { font-size: 12px; gap: 10px; }
  .working-section { padding-block: 65px; }
  .working-grid { grid-template-columns: 1fr; gap: 30px; }
  .step-number { margin-bottom: 14px; }
  .working-grid h3 { margin-bottom: 14px; }
  .international-note { grid-template-columns: 1fr; gap: 16px; padding: 26px; }
  .footer-compact .footer-utilities { grid-template-columns: 1fr; gap: 0; }
  .footer-compact .sra-verification { border-top: 1px solid var(--line); flex-direction: row; align-items: center; justify-content: space-between; }
  .footer-compact .sra-verification-actions { flex-direction: column; align-items: flex-start; }
}
@media(max-width:540px) {
  p,.article-body p,.article-body>p:has(a[href^="mailto:"]),.profile-body p,.service-copy p { text-align: left; hyphens: none; -webkit-hyphens: none; }
  .hero h1 { font-size: clamp(42px,10.8vw,58px); }
  .hero-content { padding-top: 42px; }
  .hero-introduction { font-size: 16px; }
  .hero-panel-content { padding-left: 18px; min-height: 212px; }
  .hero-panel-content h2 { font-size: 28px; }
  .hero-tabs { grid-template-columns: 1fr; gap: 0; padding-bottom: 20px; }
  .hero-tabs button { min-height: 52px; padding: 12px 4px; font-size: 13px; border-top-width: 1px; }
  .hero-tabs button[aria-selected="true"] { box-shadow: inset 3px 0 #fff; padding-left: 12px; }
  .service-copy h2,.enquiry-guidance h2 { font-size: 30px; }
  .advice-note { padding: 25px; }
  .footer-compact .sra-verification { flex-direction: column; align-items: flex-start; }
  .enquiry-guidance { padding-bottom: 55px; }
}

p { hyphenate-limit-chars: 8 4 4; }

.whatsapp-channel { display: flex; align-items: center; justify-content: space-between; gap: 60px; padding: 42px 0; border-top: 1px solid var(--line); }
.channel-copy { max-width: 520px; }
.channel-copy .eyebrow { color: var(--muted); font-size: 10px; margin-bottom: 16px; }
.channel-copy h2 { font-size: 38px; line-height: 1.15; margin-bottom: 20px; }
.channel-copy > p:not(.eyebrow) { font-size: 16px; line-height: 1.8; color: var(--muted); max-width: 48ch; }
.channel-qr-button { flex: 0 0 300px; padding: 0; background: transparent; border: 0; color: var(--ink); text-align: center; cursor: zoom-in; }
.channel-qr-button img { width: 300px; border-radius: 8px; }
.channel-qr-button > span { display: inline-flex; gap: 18px; align-items: center; margin-top: 10px; font-size: 13px; font-weight: 500; border-bottom: 1px solid #929797; padding-bottom: 5px; }
.channel-dialog { width: min(648px, calc(100% - 32px)); max-height: calc(100dvh - 32px); margin: auto; border: 1px solid var(--line); border-radius: 8px; padding: 24px; color: var(--ink); background: #fff; box-shadow: 0 20px 80px #0004; }
.channel-dialog::backdrop { background: rgb(15 22 25 / .7); }
.channel-dialog-header { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-bottom: 18px; }
.channel-dialog-header h2 { font: 600 20px/1.4 var(--sans); margin: 0; }
.channel-dialog-header button { width: 44px; height: 44px; flex-shrink: 0; border: 1px solid var(--line); background: #fff; color: var(--ink); font-size: 28px; line-height: 1; }
.channel-dialog > img { width: 100%; max-height: calc(100dvh - 230px); object-fit: contain; }
.channel-dialog > p { font-size: 14px; line-height: 1.7; text-align: left; margin: 18px 0; }
body.has-channel-dialog { overflow: hidden; }
@media (max-width: 680px) {
  .whatsapp-channel { align-items: flex-start; flex-direction: column; gap: 28px; padding: 34px 0; }
  .channel-copy h2 { font-size: 34px; }
  .channel-qr-button { flex-basis: auto; width: min(300px, 100%); align-self: center; }
  .channel-qr-button img { width: 100%; }
  .channel-copy .button, .channel-dialog .button { font-size: 12px; gap: 16px; }
  .channel-dialog { padding: 16px; }
  .channel-dialog-header { gap: 12px; }
  .channel-dialog-header h2 { font-size: 17px; }
}
