@charset "UTF-8";
/* Forest green, bronze and sculptural imagery extend the supplied identity. */
:root{--ink:#13382d;--navy:#13382d;--deep:#091e18;--paper:#f8f9f6;--gold:#dfbf94;--bronze:#785a32;--muted:#53645d;--line:#d6dfd8;--max:1400px}
body{overflow-wrap:break-word}
.wrap{width:min(var(--max),calc(100% - 112px))}
main,section,article,aside,.wrap>*{min-width:0}
h2 em{font-weight:400;color:var(--bronze)}
.eyebrow{font-size:.875rem;letter-spacing:.14em}
.site-header{background:#fcfdfa;border-bottom:1px solid #dce3da;box-shadow:0 4px 22px #0a281209}
.header-inner{min-height:100px}
.brand-name{font-size:1.55rem;letter-spacing:.025em}
.brand-sub{font-size:.75rem;letter-spacing:.2em}
.brand-logo{width:60px;height:60px;flex-basis:60px}
.site-nav{gap:28px}
.site-nav>a{position:relative}
.site-nav>a:not(.nav-payment):after{content:"";position:absolute;left:0;bottom:5px;width:100%;height:1px;background:var(--bronze);transform:scaleX(0);transform-origin:left;transition:transform .25s}
.site-nav>a:hover:after,.site-nav>a[aria-current]:after{transform:scaleX(1)}
.site-nav .nav-payment{background:var(--ink);border-color:var(--ink);color:#fff;padding:13px 18px}
.site-nav .nav-payment:hover{background:#254d3c;color:#fff}
.button{min-height:52px;border-radius:2px;transition:background .2s,box-shadow .2s,transform .2s;max-width:100%}
.button:hover{background:#264d3e;transform:translateY(-2px);box-shadow:0 8px 24px #0a201a18}
.button.gold:hover{background:#ead1af}
.rule-link{min-height:44px}
.cinema-hero{position:relative;background:#081a14;color:#fff;isolation:isolate;overflow:hidden}
.cinema-slide{position:relative;isolation:isolate;animation:slide-enter .65s ease both}
.cinema-content{position:relative;z-index:2;min-height:clamp(650px,78svh,840px);display:flex;align-items:center;padding-block:72px 144px}
.cinema-copy{width:min(680px,55%)}
.cinema-copy .eyebrow{color:var(--gold);margin-bottom:26px}
.cinema-copy h1,.cinema-copy h2{font-family:var(--serif);font-size:clamp(3.4rem,5.25vw,5.4rem);line-height:1.07;letter-spacing:-.038em;margin:0 0 28px;color:#fff}
.cinema-copy h1 em,.cinema-copy h2 em{font-weight:400;color:var(--gold)}
.cinema-copy>p{max-width:500px;color:#d7e0d8;font-size:1.0625rem;line-height:1.85;margin-bottom:30px}
.cinema-copy .actions{gap:18px 28px;align-items:flex-start}
.cinema-copy .rule-link{color:#e1e9e1;font-size:.9375rem}
.cinema-copy .button{font-size:.9375rem;gap:18px}
.cinema-art{position:absolute;inset:0 0 0 20%;z-index:-2;display:block}
.cinema-art img{width:100%;height:100%;object-fit:cover;object-position:65% center}
.cinema-slide:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#081a14 5%,#081a14e8 28%,#081a1480 47%,#081a1400 72%),linear-gradient(0deg,#081a14e8,transparent 25%)}
.art-note{position:absolute;right:0;bottom:145px;color:#d8c4a7;writing-mode:vertical-rl;text-transform:uppercase;letter-spacing:.15em;font-size:.75rem}
.cinema-navigation{position:absolute;bottom:30px;left:0;right:0;z-index:3}
.slider-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #ffffff30;padding-top:22px}
.slide-dots,.slide-actions{display:flex;gap:10px;align-items:center}
.slide-dots button{display:flex;align-items:center;justify-content:center;min-width:62px;min-height:46px;border:0;border-bottom:2px solid #b6c5bb55;background:transparent;color:#a5b8ac;font-size:.875rem;letter-spacing:.1em;transition:color .2s,border-color .2s}
.slide-dots button[aria-current=true]{border-color:var(--gold);color:var(--gold)}
.round-button{display:inline-flex;align-items:center;justify-content:center;border:1px solid #ffffff55;border-radius:50%;width:46px;height:46px;background:transparent;color:inherit;font-size:1.25rem;transition:background .2s}
.round-button:hover{background:#ffffff16}
.slide-pause{min-height:44px;margin-right:14px;color:inherit;border:0;background:transparent;padding:8px 0;font-size:.875rem;text-decoration:underline;text-underline-offset:5px}
.cinema-hero.is-playing .cinema-art img{animation:camera-drift 10s ease-out both}
.bureau-ribbon{background:#102e23;color:#eef2e9;border-top:1px solid #ffffff15}
.bureau-ribbon>.wrap{display:grid;grid-template-columns:1fr 1fr 1fr}
.bureau-ribbon .wrap>div,.bureau-ribbon .wrap>a{display:flex;align-items:center;gap:22px;padding:30px 26px;border-right:1px solid #ffffff20}
.bureau-ribbon .wrap>:first-child{padding-left:0}
.bureau-ribbon .wrap>:last-child{border:0}
.ribbon-value{font-family:var(--serif);font-size:clamp(1.4rem,2vw,1.85rem);line-height:1.2;color:var(--gold);white-space:nowrap}
.bureau-ribbon span:not(.ribbon-value){font-size:.875rem;line-height:1.65}
.section{padding-block:112px}
.section-heading{grid-template-columns:1.2fr 1fr;gap:70px;margin-bottom:50px}
.section-heading h2{font-size:clamp(2.45rem,4vw,3.9rem)}
.section-heading>p{font-size:1rem;max-width:440px;justify-self:end}
.file-section{background:#f8f9f6}
.process-layout{display:grid;grid-template-columns:1.65fr 1fr;gap:0;border:1px solid var(--line)}
.process-stage{padding:48px;background:#fff}
.process-slide{display:grid;grid-template-columns:72px 1fr;gap:22px;min-height:320px;animation:slide-enter .45s ease both}
.process-number{font-family:var(--serif);font-size:3.9rem;color:#bfa782;line-height:1}
.process-slide .eyebrow{margin-bottom:16px;font-size:.875rem}
.process-slide h3{font-family:var(--serif);font-size:clamp(1.8rem,2.6vw,2.65rem);line-height:1.16;max-width:520px;margin-bottom:20px}
.process-slide p{color:var(--muted);font-size:1rem}
.process-advice{border-left:2px solid var(--gold);padding-left:20px;margin:26px 0}
.process-advice strong{font-size:.9375rem;font-weight:600}
.process-advice p{font-size:.875rem;margin:8px 0 0}
.process-stage .slider-controls,.review-stage .slider-controls{border-color:var(--line);margin-top:24px}
.process-stage .slide-dots button,.review-stage .slide-dots button{color:var(--muted);border-color:var(--line)}
.process-stage .slide-dots button[aria-current=true],.review-stage .slide-dots button[aria-current=true]{color:var(--bronze);border-color:var(--bronze)}
.process-stage .round-button,.review-stage .round-button{border-color:#b4c2b7}
.process-stage .round-button:hover,.review-stage .round-button:hover{background:#eff3ed}
.process-side{padding:48px 38px;background:var(--ink);color:#fff;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.process-side .eyebrow{color:var(--gold)}
.process-side h3{font-family:var(--serif);font-size:2.8rem;line-height:1.12;margin-bottom:24px}
.process-side>p{color:#cddad1;font-size:1rem}
.process-phone{color:var(--gold);font-family:var(--serif);font-size:clamp(1.45rem,2.1vw,2.2rem);line-height:1.4;margin-bottom:20px;display:flex;gap:22px;align-items:center}
.process-side .rule-link{color:#fff}
.process-side .process-footnote{margin:30px 0 0;border-top:1px solid #ffffff26;padding-top:22px;font-size:.875rem}
#services{background:#eef2ec;border-block:1px solid #e0e7dc}
.practice-grid{gap:20px;border:0;grid-template-columns:repeat(3,minmax(0,1fr))}
.practice-card{border:1px solid #d2dcd0;padding:32px;background:#fbfcf9;transition:transform .3s,box-shadow .3s,border-color .3s}
.practice-card:hover{transform:translateY(-5px);background:#fff;box-shadow:0 16px 36px #1c3b2810;border-color:#a5b6a7}
.practice-card p{font-size:1rem}
.practice-card:first-child{background:linear-gradient(90deg,#11392eed 25%,#11392ec7 70%,#11392e99),url('images-editorial-resolution-800.webp') center/cover;color:#fff}
.practice-card:first-child:hover{background:linear-gradient(90deg,#11392eed 25%,#11392ec7 70%,#11392e99),url('images-editorial-resolution-800.webp') center/cover}
.practice-card:first-child p{max-width:580px;color:#e2e9e1}
.practice-card:first-child summary,.practice-card:first-child details[open] summary{color:var(--gold)}
.practice-card:first-child h3{font-size:2.5rem}
.practice-top{margin-bottom:35px}
.practice-top>span:last-child{color:#b39a74;font-family:var(--serif);font-size:1.6rem}
.practice-no{font-size:.875rem}
.about-section{background:#fbfcf8}
.about-grid{grid-template-columns:1fr 1fr;gap:100px}
.about-art{padding:0 28px 28px 0}
.about-art:after{content:"";position:absolute;left:28px;top:28px;right:0;bottom:0;border:1px solid #c7b28f;z-index:0;pointer-events:none}
.about-art img{position:relative;z-index:1;aspect-ratio:4/5;max-height:640px}
.art-caption{z-index:2;left:24px;right:52px;bottom:52px;background:#0d2c23eb;border-top:1px solid #b7a17a}
.about-copy p{font-size:1rem}
.principle p{font-size:.9375rem}
.team-strip{background:var(--ink);color:#fff;padding-block:58px;border:0}
.team-strip h2{font-size:2.4rem;color:#fff}
.team-strip p{color:#d6dfd4;max-width:690px;font-size:1rem}
.team-strip .rule-link{color:var(--gold);flex-shrink:0}
.contact-grid{grid-template-columns:1fr 1.1fr;gap:80px}
.contact-form{box-shadow:0 18px 54px #0c29170b;border-top:3px solid var(--gold);padding:40px}
.contact-item dt{font-size:.875rem}
.contact-item a.small{display:inline-block;padding-block:8px;text-decoration:underline;text-underline-offset:4px}
.office-section{background:var(--deep);color:#f3f4ed;padding-block:94px 55px}
.office-heading{display:grid;grid-template-columns:1.25fr 1fr;gap:60px;align-items:end;margin-bottom:40px}
.office-heading h2{font-size:clamp(2.4rem,3.9vw,3.8rem);margin-bottom:0}
.office-heading .eyebrow,.office-heading h2 em{color:var(--gold)}
.office-heading address{font-size:1.0625rem;font-style:normal;max-width:420px;color:#d2dcd3;line-height:1.9}
.office-heading .rule-link{color:var(--gold);margin-top:10px}
.office-map{position:relative;min-height:420px;background:#13392d;border:1px solid #ffffff25}
.map-placeholder{min-height:420px;padding:36px 24px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:radial-gradient(ellipse at center,#2e513e 0,#102e24 75%)}
.map-symbol{font-size:3rem;color:var(--gold);line-height:1;margin-bottom:12px}
.map-placeholder .eyebrow{color:#c5d1c3;margin-bottom:14px}
.map-placeholder h3{font-family:var(--serif);font-size:2.5rem;margin-bottom:8px}
.map-placeholder>p{color:#d7e1d7}
.map-placeholder .map-note{font-size:.875rem;color:#cad5ca;margin:20px 0 0}
.map-note a{text-decoration:underline;text-underline-offset:3px}
.office-map iframe{display:block;width:100%;height:450px;border:0;background:#edf0e9}
.office-caption{display:flex;justify-content:space-between;gap:24px;padding-top:22px;color:#bdcdbf;font-size:.875rem}
.office-caption>a{color:var(--gold);text-decoration:underline;text-underline-offset:4px;flex-shrink:0}
.site-footer{padding-top:70px;background:#061811;border-top:1px solid #ffffff16}
.footer-address{font-size:.875rem;font-style:normal;color:#d4dfd3;margin-bottom:24px}
.footer-col h3{font-size:.875rem}
.footer-col a{min-height:32px}
.page-intro{position:relative;isolation:isolate;overflow:hidden;background:#0a241b;padding-block:60px 76px}
.page-intro:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#0a241b 28%,#0a241bbf 65%,#0a241b80),url('images-editorial-justice-800.webp') right 43%/70% auto no-repeat}
.page-intro .wrap{position:relative}
.page-intro .breadcrumb{font-size:.875rem}
.person{box-shadow:0 8px 32px #183c2406;transition:transform .3s,box-shadow .3s}
.person:hover{transform:translateY(-4px);box-shadow:0 18px 38px #183c2414}
.person-photo{border-bottom:3px solid var(--gold)}
.person-content{padding:32px}
.person h3{font-size:2rem}
.payment-sidebar{border-top:3px solid var(--gold);position:sticky;top:130px}
.payment-panel{box-shadow:0 6px 30px #183c2406}
.review-section{background:#edf2eb}
.review-stage{max-width:960px;margin:auto;padding:48px 64px;background:white;border-top:2px solid var(--gold)}
.review-slide{margin:0;animation:slide-enter .45s ease both}
.review-slide blockquote{margin:0 0 30px;font-family:var(--serif);font-size:clamp(1.6rem,3vw,2.4rem);line-height:1.5}
.review-slide figcaption{display:flex;flex-wrap:wrap;gap:12px 24px;font-size:.875rem;align-items:center}
.review-slide figcaption strong{font-size:1rem}
.review-slide figcaption a{text-decoration:underline;text-underline-offset:3px;color:var(--bronze)}
.whatsapp{background:#153e2e;border-color:#c0a576;bottom:max(20px,env(safe-area-inset-bottom));right:max(20px,env(safe-area-inset-right))}
@keyframes camera-drift{from{transform:scale(1)}to{transform:scale(1.045)}}
@keyframes slide-enter{from{opacity:.4;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@keyframes section-enter{from{opacity:.4;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
.is-revealed{animation:section-enter .7s cubic-bezier(.2,.65,.3,1) both}
@media(min-width:1700px){.cinema-copy{width:690px}.cinema-content{min-height:790px}}
@media(max-width:1200px){.wrap{width:calc(100% - 64px)}.site-nav{gap:17px}.brand-name{font-size:1.35rem}.brand-logo{width:52px;height:52px;flex-basis:52px}.brand{gap:13px}.cinema-copy{width:60%}.cinema-copy h1,.cinema-copy h2{font-size:clamp(3.3rem,5.5vw,4.6rem)}.bureau-ribbon .wrap>div,.bureau-ribbon .wrap>a{display:block;padding:27px 23px}.ribbon-value{display:block;margin-bottom:8px}.section-heading{gap:44px}.about-grid{gap:60px}.contact-grid{gap:44px}.process-stage{padding:36px}.process-side{padding:36px 28px}.process-slide{grid-template-columns:50px 1fr;gap:18px;min-height:365px}.process-number{font-size:3rem}.process-side h3{font-size:2.4rem}.process-phone{font-size:1.7rem}.practice-card{padding:28px}}
@media(max-width:1000px){.brand-sub{letter-spacing:.12em}.site-nav{gap:12px}.site-nav .nav-payment{padding:11px 12px}.process-layout{grid-template-columns:1.4fr 1fr}.process-slide{display:block;min-height:430px}.process-number{margin-bottom:20px}.process-slide h3{font-size:2rem}.practice-grid{gap:14px}.about-grid{gap:35px}.contact-form{padding:28px}}
@media(max-width:950px){.header-inner{min-height:84px}.site-nav{max-height:calc(100dvh - 105px);overflow-y:auto}.site-nav>a:not(.nav-payment):after{display:none}.cinema-content{min-height:680px;padding-block:64px 150px}.cinema-copy{width:65%}.cinema-copy h1,.cinema-copy h2{font-size:clamp(3.1rem,6vw,4.2rem)}.cinema-copy>p{font-size:1rem}.cinema-art{left:10%}.cinema-slide:after{background:linear-gradient(90deg,#081a14 0,#081a14d9 30%,#081a1473 65%,#081a1422),linear-gradient(0deg,#081a14,transparent 35%)}.section{padding-block:80px}.process-layout{grid-template-columns:1fr}.process-slide{display:grid;grid-template-columns:72px 1fr;min-height:290px}.process-stage{padding:40px}.process-side{display:grid;grid-template-columns:1fr 1fr;gap:0 30px;padding:36px 40px;align-items:start}.process-side .eyebrow,.process-side .process-footnote{grid-column:1/-1}.process-side h3{grid-row:2/4}.process-side>p{margin-bottom:20px}.process-side .rule-link{width:fit-content}.process-side .process-footnote{margin:20px 0 0}.process-phone{font-size:1.85rem}.practice-card:first-child h3{font-size:2.1rem}.office-heading{gap:36px}.payment-sidebar{position:static}.team-strip h2{font-size:2.1rem}}
@media(max-width:720px){html{scroll-padding-top:100px}.wrap{width:calc(100% - 40px)}.header-inner{min-height:82px;padding-block:14px}.brand-logo{width:46px;height:46px;flex-basis:46px}.brand-name{font-size:1.3rem}.brand-sub{font-size:.75rem;letter-spacing:.07em}.menu-button{font-size:.875rem}.cinema-content{min-height:0;display:block;padding-block:40px 270px}.cinema-copy{width:100%;max-width:560px}.cinema-copy h1,.cinema-copy h2{font-size:clamp(2.65rem,8vw,3.9rem);line-height:1.1;margin-bottom:22px}.cinema-copy .eyebrow{font-size:.75rem;letter-spacing:.1em;margin-bottom:22px}.cinema-copy>p{max-width:520px;margin-bottom:24px;line-height:1.75}.cinema-copy .actions{gap:10px 20px}.cinema-copy .button{font-size:.875rem;gap:12px;padding:12px 17px}.cinema-copy .rule-link{font-size:.875rem;gap:18px}.cinema-art{inset:auto 0 0;height:440px}.cinema-art img{object-position:72% center}.cinema-slide:after{background:linear-gradient(0deg,#081a14d9 0,transparent 19%,#081a1473 36%,#081a14 61%)}.art-note{writing-mode:horizontal-tb;bottom:100px;right:0;font-size:.75rem}.cinema-navigation{bottom:22px}.slider-controls{gap:14px;padding-top:17px}.slide-dots{gap:7px}.slide-dots button{min-width:45px}.slide-pause{margin-right:4px;font-size:.875rem}.slide-actions{gap:8px}.round-button{width:44px;height:44px}.bureau-ribbon>.wrap{grid-template-columns:1fr 1fr}.bureau-ribbon .wrap>div,.bureau-ribbon .wrap>a{padding:24px 20px}.bureau-ribbon .wrap>:nth-child(2){border:0;padding-right:0}.bureau-ribbon .wrap>:last-child{grid-column:1/-1;display:flex;gap:24px;padding:20px 0;border-top:1px solid #ffffff20;align-items:center}.bureau-ribbon .wrap>:last-child .ribbon-value{margin:0}.ribbon-value{font-size:1.5rem;white-space:normal}.bureau-ribbon span:not(.ribbon-value){font-size:.875rem}.section{padding-block:62px}.section-heading{grid-template-columns:1fr;gap:20px;margin-bottom:32px}.section-heading h2{font-size:2.6rem}.section-heading>p{justify-self:start;max-width:none}.process-stage{padding:26px}.process-slide{display:block;min-height:360px}.process-number{font-size:2.75rem;margin-bottom:22px}.process-slide h3{font-size:2.1rem}.process-advice{margin-block:22px}.process-side{display:block;padding:32px 26px}.process-side h3{font-size:2.5rem}.process-phone{font-size:1.85rem}.process-side .process-footnote{margin-top:26px}.practice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.practice-card{padding:24px}.practice-card:first-child h3{font-size:2.2rem}.practice-card h3{font-size:1.5rem}.practice-top{margin-bottom:22px}.about-grid{grid-template-columns:1fr;gap:36px}.about-art{max-width:540px;margin:auto;padding:0 20px 20px 0}.about-art:after{top:20px;left:20px}.about-art img{aspect-ratio:5/4}.art-caption{right:36px;left:16px;bottom:36px;padding:18px}.about-copy h2{font-size:2.6rem}.team-strip{padding-block:42px}.team-strip .wrap{display:block}.team-strip h2{font-size:2rem}.contact-grid{grid-template-columns:1fr;gap:32px}.contact-copy h2{font-size:2.6rem}.office-section{padding-block:65px 42px}.office-heading{grid-template-columns:1fr;gap:25px;margin-bottom:32px}.office-heading h2{font-size:2.6rem}.office-heading address{font-size:1rem}.office-map,.map-placeholder{min-height:370px}.office-map iframe{height:390px}.office-caption{display:block}.office-caption>a{display:inline-block;min-height:44px;padding-top:12px}.site-footer{padding-top:48px}.page-intro{padding-block:34px 50px}.page-intro:before{background:linear-gradient(90deg,#0a241b 0,#0a241bcc 80%),url('images-editorial-justice-800.webp') right center/cover no-repeat}.review-stage{padding:30px 24px}.person-content{padding:26px}.person h3{font-size:1.8rem}.whatsapp{min-height:46px;padding:10px 15px;right:14px;bottom:max(14px,env(safe-area-inset-bottom))}}
@media(max-width:440px){.wrap{width:calc(100% - 32px)}.brand{gap:10px}.brand-name{font-size:1.15rem}.brand-sub{font-size:.75rem;letter-spacing:0}.brand-logo{width:42px;height:42px;flex-basis:42px}.menu-button{padding:8px;font-size:.875rem}.menu-lines{font-size:1.1rem}.cinema-copy h1,.cinema-copy h2{font-size:clamp(2.2rem,8.3vw,3.1rem)}.cinema-copy .button{width:100%}.cinema-content{padding-bottom:260px}.slide-pause{font-size:.75rem;max-width:100px;line-height:1.4}.slide-dots button{min-width:38px}.slide-actions{gap:6px}.slider-controls{gap:10px}.practice-grid{grid-template-columns:1fr;gap:16px}.practice-card:first-child{grid-column:auto}.process-stage{padding:24px 20px}.process-slide{min-height:420px}.process-side{padding:30px 22px}.process-phone{font-size:1.7rem}.contact-list{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr;gap:0}.contact-form{padding:24px 20px}.section-heading h2,.about-copy h2,.contact-copy h2,.office-heading h2{font-size:2.25rem}.map-placeholder{padding-inline:18px}.map-placeholder .eyebrow{font-size:.75rem}.bureau-ribbon .wrap>div{padding-inline:14px}.bureau-ribbon .wrap>:first-child{padding-left:0}.bureau-ribbon .wrap>:last-child{display:block}.bureau-ribbon .wrap>:last-child .ribbon-value{margin-bottom:8px}.person h3{font-size:1.6rem}}
@media(prefers-reduced-motion:reduce){.cinema-hero .cinema-art img,.cinema-slide,.process-slide,.review-slide,.is-revealed{animation:none!important;transform:none!important}.button:hover,.person:hover,.practice-card:hover{transform:none}.cinema-hero .slide-pause{display:none}html{scroll-behavior:auto}}
@media print{.cinema-art,.cinema-navigation,.bureau-ribbon,.slider-controls,.office-map,.office-caption,.whatsapp{display:none!important}.cinema-hero,.cinema-slide,.cinema-copy h1,.process-side,.team-strip,.office-section{background:#fff;color:#000}.cinema-content{padding:20px 0;min-height:0}.cinema-copy{width:100%}.cinema-copy p{color:#000}.cinema-slide:after{display:none}.process-layout,.office-heading,.about-grid{display:block}.process-slide[hidden]{display:block!important}.office-section{padding:20px 0}.wrap{width:100%}.office-heading address{color:#000}.office-heading .eyebrow,.office-heading h2 em{color:#333}}
