@font-face{font-family:Manrope;src:url("assets/manrope.woff2") format("woff2");font-style:normal;font-weight:200 800;font-display:swap}
@font-face{font-family:"Source Serif";src:url("assets/source-serif.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Source Serif";src:url("assets/source-serif-italic.woff2") format("woff2");font-weight:400;font-style:italic;font-display:swap}
:root{
  color-scheme:light;
  --ink:#172b39;--body:#404e52;--muted:#566263;--bronze:#795b30;--rule:#d4d3c9;
  --ground:#fbfaf6;--paper:#f7f4eb;--wash:#efeee7;--deep:#172b36;
  --serif:"Source Serif",Georgia,serif;--sans:Manrope,Arial,sans-serif;
  --edge:clamp(24px,5.3vw,88px);--ease:cubic-bezier(.22,.61,.36,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:20px}
body{margin:0;background:var(--ground);color:var(--ink);font:400 16px/1.6 var(--sans);-webkit-font-smoothing:antialiased;overflow-wrap:break-word}
img{max-width:100%;display:block}
h1,h2,h3,p,ol,figure,dl,dd{margin:0}
a{color:inherit;text-underline-offset:.22em}
button,summary,a{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:2px solid #8e682e;outline-offset:5px}
[hidden]{display:none!important}
::selection{background:#dfd2b8;color:#172b39}
.wrap{width:min(calc(100% - var(--edge) * 2),1360px);margin-inline:auto}
.skip{position:fixed;top:12px;left:12px;padding:12px 20px;background:white;z-index:10;transform:translateY(-180%)}
.skip:focus{transform:translateY(0)}
.mast{position:relative;z-index:4;border-bottom:1px solid var(--rule)}
.mast-inner{display:flex;align-items:center;gap:clamp(25px,4vw,64px);min-height:84px}
.signature{display:inline-flex;align-items:center;gap:10px;white-space:nowrap;text-decoration:none;color:var(--ink);font:720 24px/1 var(--sans);letter-spacing:-1px;word-spacing:.035em}
.signature img{width:37px;height:auto}
.main-nav{margin-left:auto;display:flex;align-items:center;gap:clamp(22px,2.6vw,42px)}
.main-nav a,.header-action,.top-link,.footer-base nav a,.mobile-menu a{font-weight:630;text-decoration:none}
.main-nav a{position:relative;padding:12px 0;font-size:13px}
.main-nav a::after,.footer-base nav a::after{content:"";position:absolute;left:0;right:0;bottom:7px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .25s var(--ease)}
.main-nav a:hover::after,.footer-base nav a:hover::after{transform:scaleX(1)}
.header-action{display:inline-flex;align-items:center;gap:16px;background:var(--ink);color:var(--ground);font-size:13px;padding:11px 17px;border:1px solid var(--ink);transition:background .25s;color-scheme:dark}
.header-action span,.button-primary span,.text-link span,.top-link span{display:inline-block;transition:transform .28s var(--ease)}
.header-action:hover,.header-action:focus-visible{background:#29414a}
.header-action:hover span,.button-primary:hover span{transform:translate(2px,-2px)}
.mobile-menu{display:none}
.eyebrow,.example-label,.index,.brief-no{font-family:var(--sans);font-size:11px;line-height:1.4;font-weight:720;letter-spacing:.13em;text-transform:uppercase}
.eyebrow{display:flex;align-items:center;gap:11px;color:var(--bronze)}
.eyebrow>span{display:block;width:24px;height:1px;background:currentColor}
.hero-copy{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:clamp(35px,5vw,85px);align-items:end;padding:clamp(54px,5.4vw,89px) 0 clamp(41px,4.1vw,68px)}
.hero h1{margin-top:22px;font:400 clamp(66px,6.6vw,105px)/.985 var(--serif);letter-spacing:-.054em}
em{font-weight:400}
.hero h1 em,.section-intro h2 em{letter-spacing:-.052em;word-spacing:.02em}
.hero-aside{padding-bottom:4px;max-width:385px}
.hero-aside>p{max-width:37ch;font-size:clamp(16px,1.25vw,20px);line-height:1.6;color:var(--body)}
.text-link,.top-link{display:inline-flex;align-items:center;gap:16px;font-size:14px;line-height:1.4;font-weight:700;text-decoration:none}
.text-link{margin-top:22px;padding:0 0 7px;border-bottom:1px solid currentColor}
.text-link:hover span{transform:translateY(3px)}
.photo-window{background:#a89982;overflow:hidden}
.photo-window img{width:100%;height:clamp(260px,26vw,410px);object-fit:cover;object-position:60% 63%}
.register-hero figcaption{display:flex;align-items:baseline;justify-content:space-between;margin-top:8px;color:var(--muted);font-size:11px;font-weight:550;letter-spacing:.015em}
.register-hero figcaption span:first-child{font-family:var(--serif);font-size:14px;font-style:italic}
.section-space{padding-block:clamp(74px,7.3vw,126px)}
.approach,.individual-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(38px,7vw,126px);align-items:start}
.section-intro h2,.firm-copy h2{font:400 clamp(45px,4.55vw,76px)/1.025 var(--serif);letter-spacing:-.055em;margin-top:22px}
.section-intro>p:not(.eyebrow),.firm-copy>p:not(.eyebrow){font-size:clamp(16px,1.15vw,18px);line-height:1.65;max-width:42ch;color:var(--body);margin-top:22px}
.steps{list-style:none;padding:0;margin-top:3px;border-top:1px solid var(--rule)}
.steps li{display:grid;grid-template-columns:38px 1fr;gap:18px;padding:21px 0 22px;border-bottom:1px solid var(--rule)}
.index{padding-top:7px;color:var(--bronze);font-variant-numeric:tabular-nums}
.steps h3{font:400 clamp(23px,1.9vw,32px)/1.25 var(--serif);letter-spacing:-.037em}
.steps p{color:var(--body);margin-top:6px;max-width:53ch;font-size:15px;line-height:1.65}
.approach{row-gap:40px}
.expertise-strip{grid-column:1/-1;border-top:1px solid var(--rule);padding-top:21px;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);column-gap:clamp(38px,7vw,126px)}
.expertise-strip h3{font:400 24px/1.3 var(--serif);letter-spacing:-.03em}
.expertise-strip ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:9px 22px;color:var(--body);font-size:13px;line-height:1.5}
.individual-band{background:var(--wash)}
.individual-grid{align-items:center;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr)}
.individual-intro{align-self:start}
.case-nav{margin-top:25px;max-width:350px;border-top:1px solid #c5c5b9}
.case-nav a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid #c5c5b9;text-decoration:none;font-size:14px;font-weight:550;color:var(--body);transition:color .2s}
.case-nav a::after{content:"→";font:400 19px/1 var(--sans);margin-right:4px;transition:transform .3s var(--ease);color:var(--muted)}
.case-nav a:hover,.case-nav a[aria-selected=true]{color:var(--ink)}
.case-nav a[aria-selected=true]{font-weight:800;border-bottom-color:var(--ink)}
.case-nav a[aria-selected=true]::after,.case-nav a:hover::after{transform:translateX(4px);color:var(--ink)}
.register-sheets{padding:1px 12px 0 0}
.brief{position:relative;background:#fcfaf3;padding:clamp(22px,3.2vw,53px);border:1px solid #d7d4c7;box-shadow:3px 4px 0 -1px #e4e0d2,6px 8px 0 -2px #d9d5c6;isolation:isolate}
.brief+.brief{margin-top:20px}
.register-sheets.enhanced .brief+.brief{margin-top:0}
.brief::after{content:"";position:absolute;top:18%;left:100%;width:10px;height:45px;background:#a28651;border-radius:0 2px 2px 0}
.brief-head{display:flex;align-items:center;gap:12px;border-bottom:1px solid #bbb9ac;padding-bottom:18px}
.brief-head>img{width:31px;height:auto}
.brief-head>span:nth-child(2){font:400 16px/1.12 var(--serif)}
.brief-no{margin-left:auto;color:var(--muted);font-size:10px;letter-spacing:.1em;font-variant-numeric:tabular-nums}
.example-label{font-size:10px;letter-spacing:.13em;color:var(--bronze);margin-top:26px}
.brief h3{font:400 clamp(28px,2.35vw,40px)/1.14 var(--serif);letter-spacing:-.045em;margin-top:4px}
.brief dt{font-size:11px;font-weight:750;line-height:1.45;color:var(--ink);margin-top:17px}
.brief dd{font-size:15px;line-height:1.6;color:var(--body);max-width:51ch;margin-top:4px}
.brief dd:first-of-type{font:italic 400 clamp(17px,1.4vw,21px)/1.4 var(--serif);color:var(--ink)}
.brief dt:nth-of-type(2){border-top:1px solid #d4d0c3;padding-top:15px}
.intake-status{margin:21px 0 0;color:var(--muted);font-size:13px;line-height:1.6;max-width:66ch}
.intake-status a{white-space:nowrap;font-weight:650}
.firm-section{background:var(--deep);color:var(--paper)}
.firm-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(36px,7.6vw,136px);align-items:center}
.firm-photo{overflow:hidden;background:#94846b}
.firm-photo img{width:100%;height:auto;aspect-ratio:1.36;object-fit:cover;object-position:53% 54%}
.firm-copy .eyebrow{color:#cfb78a}
.firm-copy>p:not(.eyebrow){color:#e0e2de;max-width:49ch;margin-top:17px}
.firm-copy h2{font-size:clamp(43px,4.2vw,69px);margin-bottom:24px}
.button-primary{display:inline-flex;gap:21px;align-items:center;background:var(--paper);border:1px solid var(--paper);color:var(--ink);font-weight:700;text-decoration:none;font-size:14px;padding:14px 21px;margin-top:28px;transition:background .25s}
.button-primary:hover{background:white}
.firm-copy a:focus-visible{outline-color:var(--paper)}
.footer{padding-block:42px 20px}
.footer-main,.footer-base{display:flex;align-items:center;justify-content:space-between;gap:24px}
.footer-main{padding-bottom:34px}
.footer-main .signature{font-size:21px;gap:9px}
.footer-main .signature img{width:32px}
.footer-main>p{margin-right:auto;margin-left:clamp(12px,4vw,68px);font-size:13px;line-height:1.55;color:var(--muted)}
.top-link{font-size:13px}
.top-link:hover span{transform:translateY(-3px)}
.footer-base{border-top:1px solid var(--rule);padding-block:12px}
.footer-base small,.footer-base nav a{font-size:12px;color:var(--muted)}
.footer-base nav{display:flex;gap:23px;align-items:center;flex-wrap:wrap}
.footer-base nav a{position:relative;padding:8px 0}
.legal-documents{max-width:83ch}
.notice{border-top:1px solid var(--rule);padding:12px 0}
.notice summary{cursor:pointer;font-weight:650;font-size:14px}
.notice-body{padding:16px 8px 4px}
.notice-body p{margin:0 0 12px;color:var(--body);font-size:15px}
.notice-body h3{font:400 23px/1.25 var(--serif);margin:21px 0 7px}
.legal-ready .notice:not([open]){display:none}
@media(min-width:900px){.register-sheets.enhanced .brief{min-height:407px}}
@media(max-width:970px){
  .mast-inner{gap:24px;min-height:75px}.main-nav{gap:17px}.main-nav a,.header-action{font-size:12px}
  .signature{font-size:21px}.signature img{width:32px}.hero-copy{grid-template-columns:1.16fr .84fr;gap:25px}.hero h1{font-size:clamp(54px,6.7vw,68px)}
}
@media(max-width:900px){
  .mast-inner{min-height:68px;gap:14px}.main-nav,.header-action{display:none}
  .mobile-menu{display:block;margin-left:auto}
  .mobile-menu>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:9px;padding:12px 1px;font-size:14px;font-weight:650}
  .mobile-menu summary::-webkit-details-marker{display:none}
  .mobile-menu svg{fill:none;stroke:currentColor;stroke-width:1.5}
  .mobile-menu nav{position:absolute;top:100%;left:0;right:0;display:grid;background:var(--ground);border-bottom:1px solid var(--rule);padding:8px var(--edge) 18px;box-shadow:0 10px 12px -14px var(--ink)}
  .mobile-menu nav a{padding:11px 0;border-top:1px solid var(--rule);font-size:15px}
}
@media(max-width:760px){
  :root{--edge:clamp(20px,5vw,35px)}
  .hero-copy{grid-template-columns:1fr;gap:23px;padding:43px 0 32px}
  .hero h1{font-size:clamp(54px,10.5vw,82px);margin-top:17px}
  .hero-aside{max-width:510px;padding:0}.hero-aside>p{font-size:16px;max-width:46ch;line-height:1.55}
  .text-link{margin-top:16px}
  .photo-window img{height:clamp(214px,49vw,308px);object-position:60% 62%}
  .register-hero figcaption{font-size:10px}.register-hero figcaption span:first-child{font-size:13px}
  .section-space{padding-block:60px}
  .approach,.individual-grid,.firm-grid{grid-template-columns:minmax(0,1fr);gap:30px}
  .section-intro h2,.firm-copy h2{margin-top:16px;font-size:clamp(40px,7.4vw,56px)}
  .section-intro>p:not(.eyebrow){margin-top:14px}
  .expertise-strip{grid-template-columns:1fr;gap:17px}.expertise-strip ul{font-size:12px;gap:9px 16px}
  .steps li{grid-template-columns:29px 1fr;gap:10px;padding:17px 0}.steps p{font-size:14px}
  .steps h3{font-size:23px}
  .case-nav{max-width:none;margin-top:19px}.case-nav a{padding-block:11px}
  .brief{padding:22px}.brief-head{padding-bottom:14px}.brief::after{width:8px}
  .example-label{margin-top:20px}.register-sheets{padding-right:8px}
  .firm-copy{order:0}.firm-photo{order:1}.firm-photo img{max-height:340px;aspect-ratio:1.75}
  .firm-copy h2{margin-bottom:15px}.button-primary{margin-top:23px}
  .footer{padding-block:30px 12px}.footer-main{display:grid;grid-template-columns:1fr auto;gap:13px;padding-bottom:24px}
  .footer-main>p{grid-row:2;margin:0}.footer-main>p br{display:none}.footer-main .top-link{grid-column:2;grid-row:1;gap:8px}
  .footer-base{align-items:flex-start;flex-direction:column;gap:0}.footer-base nav{gap:17px}.footer-base nav a{font-size:12px}
}
@media(max-width:360px){.hero h1{font-size:clamp(43px,13.5vw,49px)}.signature{font-size:20px}.eyebrow{font-size:10px}.brief{padding:17px}.brief-head{gap:9px}.brief-head>span:nth-child(2){font-size:15px}.footer-base nav{gap:13px}}
@media(prefers-reduced-motion:no-preference){
  @keyframes arrive{from{opacity:.3;transform:translateY(7px)}to{opacity:1;transform:none}}
  @keyframes turn{from{opacity:.6;transform:translateX(4px)}to{opacity:1;transform:none}}
  @keyframes settle{from{transform:scale(1.022)}to{transform:scale(1)}}
  .hero-title{animation:arrive .55s var(--ease) both}.hero-aside{animation:arrive .58s .06s var(--ease) both}
  .brief.is-changing{animation:turn .26s var(--ease) both}
  .photo-window img,.firm-photo.in-view img{animation:settle 1.15s var(--ease) both}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
@media print{
  .mobile-menu,.main-nav,.header-action,.button-primary,.text-link,.top-link,.case-nav,.footer-base nav,.skip{display:none!important}
  .wrap{width:92%}.section-space{padding-block:24px}.hero-copy{padding:25px 0}.hero h1{font-size:50px}
  .photo-window img{height:170px}.brief,.steps li,.firm-copy{break-inside:avoid}.individual-grid,.approach,.firm-grid{gap:20px}
  .firm-section{color:var(--ink);background:var(--ground)}.firm-copy>p:not(.eyebrow){color:var(--body)}
}
