@font-face{font-family:Rubik;src:url('assets/rubik-regular.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:Rubik;src:url('assets/rubik-bold.ttf') format('truetype');font-weight:700;font-display:swap}@font-face{font-family:Editorial;src:url('assets/editorial-italic.ttf') format('truetype');font-style:italic;font-display:swap}
:root{--green:#415c59;--deep:#2c3e3c;--ivory:#ecebe2;--gold:#c9b87b;--ink:#253532;--paper:#f5f5f1;--line:rgba(44,62,60,.22);--pad:clamp(24px,5vw,84px)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--ivory);color:var(--ink);font-family:Rubik,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a,button,summary{-webkit-tap-highlight-color:transparent}button{border:0;background:none;padding:0}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:6px}::selection{background:var(--gold);color:var(--deep)}p{line-height:1.65}img,svg{display:block;max-width:100%}h1,h2,h3,p{margin-top:0}h2{font-size:clamp(40px,4.75vw,72px);font-weight:400;line-height:1.04;letter-spacing:-.055em;margin-bottom:28px}h2 em{font-family:Editorial,Georgia,serif;font-weight:400;font-size:1.17em;letter-spacing:-.035em}h3{letter-spacing:-.035em}small{display:block;font-size:11px;line-height:1.6}.eyebrow{font-size:10px;letter-spacing:.14em;font-weight:700;line-height:1.4}.section-pad{padding:100px var(--pad)}.small-square{display:inline-block;width:7px;height:7px;background:var(--gold)}.skip-link{position:fixed;top:-100px;left:20px;z-index:99;background:var(--gold);padding:15px}.skip-link:focus{top:10px}
.site-header{height:112px;padding:0 var(--pad);display:flex;align-items:center;justify-content:space-between;background:var(--deep);color:var(--ivory);border-bottom:1px solid rgba(236,235,226,.15)}.brand{display:inline-flex;align-items:center;gap:15px;flex-shrink:0}.wordmark{font-weight:700;font-size:23px;line-height:1.05;letter-spacing:-.055em}.wordmark-sub{display:flex;gap:8px;align-items:center;font-size:10px;letter-spacing:.15em;line-height:1.5;margin-top:5px}.wordmark-sub:before,.wordmark-sub:after{content:'';height:1px;background:currentColor;flex:1}.site-header nav{display:flex;gap:33px;align-items:center;font-size:12px}.site-header nav a{transition:color .2s}.site-header nav a:hover{color:var(--gold)}.site-header .nav-cta{margin-left:13px;border:1px solid rgba(201,184,123,.5);padding:15px 19px;color:var(--gold);display:flex;gap:35px}.menu-toggle{display:none}
.hero{background:var(--deep);color:var(--ivory);padding:48px var(--pad) 0;display:grid;grid-template-columns:1.06fr 1fr;column-gap:5.2vw;overflow:hidden}.hero-copy{padding-top:4px;position:relative;z-index:1}.hero-intro{display:flex;align-items:center;gap:10px;margin-bottom:32px}.hero h1{font-size:clamp(52px,6.65vw,110px);line-height:.98;letter-spacing:-.057em;font-weight:700;margin-bottom:30px}.hero h1>span{display:block;white-space:nowrap}.gold-text{color:var(--gold)}.hero-bottom{display:flex;align-items:center;justify-content:space-between;padding-right:24px;max-width:470px}.hero-bottom p{font-size:14px;line-height:1.65;margin-bottom:0;color:rgba(236,235,226,.78)}.round-link{width:63px;height:63px;border:1px solid rgba(236,235,226,.4);border-radius:50%;display:grid;place-items:center;font-size:28px;transition:background .2s,color .2s}.round-link:hover{background:var(--gold);color:var(--deep);border-color:var(--gold)}.hero-art{position:relative;display:flex;flex-direction:column;justify-content:space-between;padding-top:5px;align-self:stretch}.art-topline,.art-bottomline{display:flex;justify-content:space-between;align-items:center;font-size:8px;letter-spacing:.14em;color:var(--gold)}.art-topline{padding-bottom:17px;border-bottom:1px solid rgba(201,184,123,.28)}.mosaic-wrap{width:100%;margin:22px 0;position:relative;aspect-ratio:1}.mosaic{width:100%;height:100%;overflow:visible}.field-tile{fill:var(--green)}.logo-tile{fill:var(--gold)}.mosaic-tile{transform-box:fill-box;transform-origin:center}.art-bottomline{padding-top:15px;border-top:1px solid rgba(201,184,123,.28)}.art-bottomline button{font-size:10px;letter-spacing:.02em;display:flex;gap:12px;align-items:center;min-height:28px}.art-bottomline button span{font-size:18px}.hero-foot{grid-column:1/-1;margin-top:44px;padding:24px 0 25px;border-top:1px solid rgba(236,235,226,.2);display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:.09em}.hero-foot i{font-size:10px;font-style:normal;color:rgba(236,235,226,.6);letter-spacing:0;margin-left:17px}.hero-foot a:nth-child(2){font-size:13px;letter-spacing:.02em}.hero-foot a span{margin-left:25px}.scroll-label{font-size:8px}.section-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:55px}.section-caption{font-size:12px;line-height:1.5}.section-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:13%;align-items:end;margin-bottom:48px}.section-heading h2{margin:0}.section-heading>p{font-size:15px;margin-bottom:7px;max-width:380px}.practice{padding-bottom:110px}.practice-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}.practice-panel{padding:35px 60px 0 0}.practice-panel+.practice-panel{border-left:1px solid var(--line);padding-left:60px;padding-right:0}.practice-label{display:flex;align-items:center;justify-content:space-between;margin-bottom:27px}.practice-label svg{width:45px;height:45px;fill:var(--green)}.practice-panel h3{font-size:42px;font-weight:400;line-height:1.1;margin-bottom:20px}.practice-panel>p{font-size:14px;max-width:355px;color:#53645f;margin-bottom:27px}.practice-panel ul{padding:0;list-style:none;font-size:12px;line-height:2.25;margin-bottom:28px}.practice-panel li:before{content:'—';margin-right:12px;color:#73817c}.text-link{font-size:12px;display:flex;align-items:center;gap:35px;padding:12px 0;border-bottom:1px solid var(--line);width:fit-content;line-height:1.4;text-align:left}.text-link span{font-size:21px;transition:transform .2s}.text-link:hover span{transform:translate(3px,-3px)}.brian{display:grid;grid-template-columns:1fr 1fr;gap:8%;background:var(--paper);padding-top:90px;padding-bottom:90px;align-items:center}.portrait-panel{position:relative;background:#dcded3;isolation:isolate;overflow:hidden;height:660px}.portrait-pattern{position:absolute;max-width:none;width:170%;height:100%;left:-30%;object-fit:cover;opacity:.85;mix-blend-mode:multiply}.portrait-disc{position:absolute;width:88%;aspect-ratio:1;border-radius:50%;background:var(--gold);top:14%;left:6%;opacity:.64}.portrait{position:absolute;bottom:0;height:95%;width:auto;max-width:none;left:50%;transform:translateX(-50%);object-fit:contain}.portrait-panel::after{content:"";position:absolute;inset:auto 0 0;height:120px;background:linear-gradient(transparent,rgba(16,31,27,.85));pointer-events:none;z-index:1}.portrait-label{position:absolute;bottom:24px;left:24px;right:24px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px 16px;font-size:10px;line-height:1.4;letter-spacing:.1em;color:white;z-index:2}.brian-copy>.eyebrow{margin-bottom:35px}.brian-copy h2{font-size:clamp(38px,4.4vw,67px);margin-bottom:32px}.brian-copy h3{font-size:26px;font-weight:400;margin-bottom:7px}.attorney-label{font-size:9px;letter-spacing:.1em;margin-bottom:28px}.brian-copy>p:not(.eyebrow):not(.attorney-label){font-size:14px;max-width:420px;color:#53645f}.credentials{display:flex;flex-direction:column;gap:10px;font-size:11px;border-top:1px solid var(--line);margin-top:28px;padding:22px 0 15px}.brian-copy .text-link{margin-top:8px}.approach{background:var(--green);color:var(--ivory)}.approach .section-heading{grid-template-columns:1.4fr 1fr;gap:8%}.approach .section-heading>p{color:#dedfd4}.approach h2{font-size:clamp(40px,4.3vw,65px)}.process-list{margin-top:60px;border-top:1px solid rgba(236,235,226,.3)}.process-list article{display:grid;grid-template-columns:70px 1fr .85fr;gap:30px;padding:30px 0;border-bottom:1px solid rgba(236,235,226,.3);align-items:baseline}.process-number{font-family:Editorial,Georgia,serif;font-style:italic;color:var(--gold);font-size:29px}.process-list h3{font-size:27px;font-weight:400;margin:0}.process-list p{font-size:13px;max-width:360px;color:#dedfd4;margin:0}.questions{display:grid;grid-template-columns:.8fr 1.2fr;gap:10%;background:var(--paper)}.questions .eyebrow{margin-bottom:45px}.questions-intro{font-size:13px;color:#53645f;margin-top:32px}.faq-list{border-top:1px solid var(--line);padding-top:0;margin-top:11px}.faq-list details{border-bottom:1px solid var(--line);padding:0}.faq-list summary{font-size:14px;cursor:pointer;list-style:none;padding:25px 0;display:flex;gap:25px;justify-content:space-between;align-items:center;line-height:1.5}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-size:21px;color:var(--green);flex-shrink:0}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{font-size:13px;color:#53645f;margin:0 30px 25px 0;line-height:1.8}.contact{background:var(--gold);position:relative;overflow:hidden;isolation:isolate;padding-top:90px;padding-bottom:65px}.contact h2{font-size:clamp(50px,6vw,92px);margin:38px 0 70px}.contact-art{position:absolute;z-index:-1;right:5%;top:65px;width:30%;opacity:.24}.contact-art img{filter:brightness(0) saturate(100%)}.contact-bottom{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:35px;border-top:1px solid rgba(44,62,60,.35);padding-top:30px;align-items:start}.contact-phone{font-size:clamp(23px,2.5vw,37px);letter-spacing:-.045em}.contact-phone span{margin-left:20px}.contact-bottom p{font-size:13px;margin:0 0 9px}.contact-bottom .text-link{font-size:11px;padding:6px 0}.contact-bottom small{font-size:9px;margin-top:9px}.site-footer{background:var(--deep);color:var(--ivory);padding:48px var(--pad) 30px}.footer-main{display:flex;align-items:center;justify-content:space-between;padding-bottom:37px}.footer-main p{font-size:12px;margin:0;color:#c4cdc6}.footer-main button{font-size:10px;border-bottom:1px solid #6f807a;padding:8px 0;color:var(--gold)}.footer-bottom{display:flex;justify-content:space-between;font-size:9px;color:#b9c6bf;border-top:1px solid rgba(236,235,226,.2);padding-top:20px}.footer-bottom p{margin:0}.legal{font-size:9px;max-width:820px;color:#a8b8ae;line-height:1.7;margin:18px 0 0}dialog{border:0;padding:65px;width:min(760px,calc(100vw - 32px));max-height:90vh;background:var(--paper);color:var(--ink);box-shadow:0 30px 100px #0005}dialog::backdrop{background:rgba(16,31,27,.75);backdrop-filter:blur(6px)}.dialog-close{position:absolute;right:20px;top:14px;font-size:34px;width:40px;height:40px}.dialog-content h2,#dialog-content h2{font-size:48px;margin:28px 0}#dialog-content h3{font-size:20px;font-weight:400;margin:25px 0 12px}#dialog-content p,#dialog-content li{font-size:14px;line-height:1.8}#dialog-content ul{padding-left:20px}#dialog-content .dialog-contact{display:inline-flex;background:var(--deep);color:var(--ivory);padding:16px 25px;margin-top:20px;font-size:13px;gap:40px}body.dialog-open{overflow:hidden}
@media(prefers-reduced-motion:no-preference){body:not(.reduce-motion) .mosaic-wrap.playing .mosaic-tile{animation:assemble 1.8s cubic-bezier(.22,1,.36,1) both;animation-delay:calc(var(--delay) * 1.3)}body:not(.reduce-motion) .mosaic-wrap.playing .logo-tile{animation-name:assemble,illuminate;animation-duration:1.8s,2.1s;animation-delay:calc(var(--delay) * 1.3),.2s}body:not(.reduce-motion) .hero-intro{animation:appear .9s both}body:not(.reduce-motion) .hero h1>span{animation:line-in 1.2s cubic-bezier(.2,.8,.3,1) both}body:not(.reduce-motion) .hero h1>span:nth-child(2){animation-delay:.11s}body:not(.reduce-motion) .hero h1>span:nth-child(3){animation-delay:.22s}body:not(.reduce-motion) .hero h1>span:nth-child(4){animation-delay:.33s}@keyframes assemble{from{opacity:0;transform:translateY(35px) rotate(var(--turn)) scale(.8)}to{opacity:1;transform:none}}@keyframes illuminate{from{fill:var(--green)}to{fill:var(--gold)}}@keyframes line-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes appear{from{opacity:0}to{opacity:1}}}
.hero-action{display:flex;align-items:center;justify-content:space-between;gap:44px;background:var(--gold);color:var(--deep);width:fit-content;padding:17px 22px;font-size:12px;margin-top:27px;transition:background .2s}.hero-action:hover{background:var(--ivory)}.hero-action span{font-size:20px}.reduce-motion *{animation:none!important;transition:none!important}.reduce-motion{scroll-behavior:auto}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
@media(min-width:1700px){.hero{padding-top:65px}.hero-art{max-width:690px}.hero-bottom{max-width:600px}.hero h1{font-size:110px}.section-pad{padding-left:max(var(--pad),calc((100vw - 1580px)/2));padding-right:max(var(--pad),calc((100vw - 1580px)/2))}.hero-copy{padding-top:30px}}
@media(max-width:1100px){.site-header nav{gap:22px}.hero{column-gap:35px;padding-top:35px}.hero h1{font-size:6.6vw}.hero-bottom p{font-size:12px}.round-link{width:51px;height:51px}.hero-art{justify-content:flex-start}.mosaic-wrap{margin:30px 0}.hero-foot{margin-top:36px}.section-pad{padding-top:75px;padding-bottom:75px}.section-heading{gap:8%}.practice-panel{padding-right:35px}.practice-panel+.practice-panel{padding-left:35px}.portrait-panel{height:570px}.brian{gap:6%}.brian-copy h2{font-size:44px}.brian-copy>p:not(.eyebrow):not(.attorney-label){font-size:13px}.process-list article{grid-template-columns:45px 1fr 1fr;gap:20px}.process-list h3{font-size:23px}.contact-bottom{grid-template-columns:1fr 1fr;row-gap:30px}.contact-phone{grid-column:1/-1}.questions{gap:7%}.wordmark{font-size:21px}}
@media(max-width:760px){:root{--pad:24px}.site-header{height:85px}.brand{gap:10px}.brand img{width:39px;height:39px}.wordmark{font-size:19px}.wordmark-sub{font-size:8px;margin-top:3px}.menu-toggle{display:flex;gap:20px;align-items:center;font-size:11px;min-height:44px}.menu-toggle span{font-size:20px}.site-header nav{display:none;position:absolute;left:0;right:0;top:85px;background:var(--deep);z-index:9;padding:25px var(--pad) 35px;border-bottom:1px solid #6b7e78;gap:5px}.site-header nav.is-open{display:flex;flex-direction:column;align-items:stretch}.site-header nav a{padding:14px 0;font-size:16px}.site-header .nav-cta{padding:15px;margin:15px 0 0;justify-content:space-between}.hero{padding-top:32px;grid-template-columns:1fr;gap:0}.hero h1{font-size:clamp(42px,11vw,78px);line-height:1;letter-spacing:-.06em;margin-bottom:25px}.hero-intro{font-size:8px;margin-bottom:25px}.hero-bottom{max-width:100%;padding-right:0}.hero-bottom p{font-size:12px}.round-link{width:52px;height:52px}.hero-art{margin-top:40px}.art-topline,.art-bottomline{font-size:7px}.mosaic-wrap{margin:15px 0}.hero-foot{margin-top:28px;padding:23px 0;gap:14px;flex-wrap:wrap}.hero-foot>span{font-size:8px}.hero-foot i{margin-left:6px;font-size:8px}.hero-foot a:nth-child(2){font-size:10px}.hero-foot a span{margin-left:5px}.scroll-label{display:none}.section-pad{padding-top:64px;padding-bottom:64px}.section-top{margin-bottom:33px}.section-caption{font-size:10px}.eyebrow{font-size:9px}.section-heading{grid-template-columns:1fr;gap:25px;margin-bottom:32px}.section-heading>p{font-size:13px;max-width:100%}h2{font-size:43px}.practice-grid{grid-template-columns:1fr}.practice-panel{padding:28px 0 35px}.practice-panel+.practice-panel{border-left:0;border-top:1px solid var(--line);padding:28px 0 0}.practice-panel h3{font-size:35px}.practice-panel>p{max-width:100%;font-size:13px}.practice-panel ul{font-size:11px}.practice-label{margin-bottom:20px}.practice-label svg{width:36px;height:36px}.brian{grid-template-columns:1fr;gap:0;padding:0}.portrait-panel{height:500px;grid-row:2}.brian-copy{padding:64px var(--pad) 40px}.brian-copy h2{font-size:43px}.brian-copy>.eyebrow{margin-bottom:30px}.portrait{height:100%}.portrait-disc{width:78%;left:11%;top:7%}.portrait-label{bottom:20px}.approach .section-heading{grid-template-columns:1fr;gap:25px}.approach h2{font-size:39px}.process-list{margin-top:35px}.process-list article{grid-template-columns:30px 1fr;gap:12px;padding:23px 0}.process-list h3{font-size:22px}.process-list p{grid-column:2;font-size:12px}.process-number{font-size:24px}.questions{grid-template-columns:1fr;gap:22px}.questions .eyebrow{margin-bottom:30px}.questions h2 br{display:none}.questions-intro{display:none}.faq-list{margin-top:0}.faq-list summary{font-size:12px;padding:23px 0}.faq-list details p{font-size:12px}.contact{padding-top:65px}.contact h2{font-size:48px;margin:30px 0 45px}.contact-art{width:42%;right:-10%;top:45px;opacity:.16}.contact-bottom{gap:25px;grid-template-columns:1fr}.contact-phone{font-size:29px}.contact-bottom p{font-size:12px}.footer-main{flex-wrap:wrap;gap:30px;padding-bottom:25px}.footer-main>p{font-size:10px}.footer-main button{width:100%;text-align:left;border:0}.footer-bottom{gap:20px;font-size:10px}.legal{font-size:11px}.site-footer{padding-top:36px;padding-bottom:25px}dialog{padding:50px 26px 30px}#dialog-content h2{font-size:36px}}

.footer-pages{display:flex;flex-wrap:wrap;gap:14px 28px;padding:0 0 26px;font-size:11px;color:var(--ivory)}.footer-pages a{text-decoration:underline;text-underline-offset:4px}.footer-pages a:hover{color:var(--gold)}

/* Draw interface arrows without platform-dependent emoji glyphs. */
.ui-icon{display:inline-block;width:1em;height:1em;max-width:none;flex-shrink:0;vertical-align:-.15em}

/* Give small standalone controls comfortable touch areas on phones. */
@media(max-width:760px){.footer-pages a,.content-footer-links a,.footer-phone,.hero-foot a:not(.scroll-label),.inquiry-footer a,#motion-toggle,#replay{min-height:44px;display:inline-flex;align-items:center}.site-footer .footer-pages,.site-footer .content-footer-links{font-size:12px;row-gap:4px}.hero-foot{padding:12px 0}}
