:root{--navy:#182e43;--deep:#132638;--ink:#29343b;--gold:#aa9164;--paper:#f7f5ef;--muted:#667078;--line:#dcdcd5;color-scheme:only light}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px;-webkit-text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.75}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400}h1,h2,.partner h3,.team-grid h3,.practice-list summary,.approach-art p{font-family:"Palatino Linotype","Book Antiqua",Palatino,Georgia,serif}em{font-weight:400;color:var(--gold)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:6px}.wrap{max-width:1280px;width:calc(100% - 112px);margin:auto}.section{padding:110px 0}.eyebrow,.section-label{font-size:10px;letter-spacing:2.1px;font-weight:600;line-height:1.6}.section-label{display:flex;align-items:center;gap:18px;margin-bottom:44px}.line{width:35px;height:1px;background:var(--gold)}h2{font-size:clamp(35px,3.2vw,48px);line-height:1.19;letter-spacing:-1px}.header{height:112px;display:flex;align-items:center;justify-content:space-between;padding:20px 56px;background:var(--paper);border-bottom:1px solid var(--line)}.brand{width:304px}.brand img{width:100%;mix-blend-mode:multiply}.header nav{display:flex;gap:33px;align-items:center;font-size:12px}.nav-contact{margin-left:12px;border-bottom:1px solid var(--gold);padding-bottom:7px}.nav-contact span{margin-left:28px}.menu-toggle{display:none}.hero{background:var(--navy);color:var(--paper);position:relative;display:grid;grid-template-columns:1.12fr 1fr;overflow:hidden}.hero-copy{padding:84px 15px 84px max(56px,calc((100vw - 1168px)/2));z-index:1}.hero .eyebrow{color:#d1c6af;display:flex;align-items:center;gap:15px}.hero .eyebrow>span{width:28px;height:1px;background:var(--gold)}h1{font-size:clamp(42px,4.4vw,67px);line-height:1.12;letter-spacing:-1.8px;margin:28px 0 27px;position:relative;margin-right:-125px}h1 em{color:#c2b18f}.hero-intro{color:#d2d9de;font-size:16px;max-width:400px;line-height:1.8}.button{display:inline-flex;align-items:center;gap:48px;border:1px solid #9c8a69;padding:13px 21px;font-size:12px;margin-top:32px;transition:background .2s}.button:hover{background:#ffffff12}.hero-visual{position:relative;background:linear-gradient(90deg,var(--navy),transparent 22%),url('assets/maritime-banner.jpg') top center/100% auto no-repeat;background-color:#393a39;min-height:560px}.hero-visual:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#182e4315 30%,#182e4340 70%,var(--navy))}.visual-note{position:absolute;right:42px;bottom:55px;text-align:right;font-size:9px;letter-spacing:2px;line-height:2.3;display:grid;color:#e5e4de}.hero-bottom{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #ffffff1c;margin:0 56px;padding:19px 0;font-size:9px;letter-spacing:1.8px;color:#cad0d4}.hero-bottom a{letter-spacing:.4px;font-size:11px}.hero-bottom a span{padding-left:24px}.firm-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px}.firm-text p{margin-bottom:20px;font-size:14px;color:var(--muted)}.firm-text .lead{font-size:20px;line-height:1.6;color:var(--ink)}.text-link{font-size:12px;display:inline-flex;gap:24px;border-bottom:1px solid var(--gold);padding-bottom:5px;margin-top:8px}.expertise{background:#eeeee7;border-top:1px solid #e4e4dd}.section-heading{display:flex;justify-content:space-between;gap:80px;align-items:end;margin-bottom:52px}.section-heading>p{max-width:320px;font-size:14px;color:var(--muted)}.practice-list{border-top:1px solid #c8cbc7}.practice-list details{border-bottom:1px solid #c8cbc7}.practice-list summary{list-style:none;display:flex;align-items:center;justify-content:space-between;font-size:27px;line-height:1.4;padding:24px 0;cursor:pointer}.practice-list summary::-webkit-details-marker{display:none}.plus{font-family:Arial,sans-serif;font-size:24px;font-weight:200;color:var(--gold);transition:transform .2s}.practice-list details[open] .plus{transform:rotate(45deg)}.practice-body{padding:0 70px 26px 0;max-width:820px;color:var(--muted);font-size:14px}.practice-tags{margin-top:20px;font-size:9px;letter-spacing:1.5px;color:#69695c}.approach{display:grid;grid-template-columns:1fr 1fr;gap:120px;align-items:center}.approach-art{background:#e8e9e0;min-height:580px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#596a71;position:relative}.approach-art:before{content:"";position:absolute;inset:20px;border:1px solid #c8cbbf}.approach-art svg{width:240px;height:300px;transition:transform .5s}.approach-art:hover svg{transform:rotate(-3deg)}.approach-art p{text-align:center;line-height:1.3;font-style:italic;font-size:23px;margin-top:22px;color:#596259}.approach-copy .section-label{margin-bottom:25px}.principle{margin-top:28px;padding-top:23px;border-top:1px solid var(--line)}.principle h3{font-size:15px;font-weight:500;margin-bottom:8px}.principle p{font-size:13px;color:var(--muted)}.people{background:#fff}.partner{display:grid;grid-template-columns:380px 1fr;gap:80px;align-items:center;padding:12px 0 55px}.portrait{height:420px;overflow:hidden;background:#e6e6df}.portrait img{height:100%;width:100%;object-fit:cover;object-position:49% center}.partner-copy{max-width:600px}.partner-copy .eyebrow{color:var(--gold)}.partner h3{font-size:37px;line-height:1.3;margin:12px 0 20px}.partner-copy>p:not(.eyebrow){font-size:14px;color:var(--muted);margin-bottom:17px}.partner-copy .languages{font-size:12px!important;letter-spacing:.4px}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.team-grid article{padding:35px 30px 34px 0}.team-grid article+article{border-left:1px solid var(--line);padding-left:35px}.person-mark{display:block;font-family:Georgia,serif;font-style:italic;font-size:24px;color:var(--gold);margin-bottom:23px}.team-grid h3{font-size:25px;margin-bottom:6px}.team-grid p{font-size:11px;color:var(--muted);letter-spacing:.5px}.membership{display:flex;align-items:center;gap:25px;margin-top:52px}.membership img{width:78px;height:78px;object-fit:contain}.membership .eyebrow{font-size:8px;color:var(--muted);letter-spacing:1.5px;margin-bottom:5px}.membership p:not(.eyebrow){font-family:Georgia,serif;font-size:17px}.membership span{font-size:11px;color:var(--muted)}.contact{background:var(--navy);color:var(--paper)}.contact .section-label{color:#d5d7d4}.contact-layout{display:grid;grid-template-columns:1.6fr 1fr;gap:70px}.contact h2{font-size:clamp(42px,4.8vw,67px)}.contact em{color:#c2b18f}.contact-email{font-size:clamp(15px,2vw,25px);display:inline-block;margin-top:36px;border-bottom:1px solid #a89370;padding-bottom:9px;overflow-wrap:anywhere}.contact-email span{margin-left:22px}.contact-details{border-left:1px solid #ffffff2b;padding-left:55px}.contact-details .eyebrow{color:#c2b18f;margin-bottom:23px}.contact-details address{font-style:normal;font-size:17px;line-height:1.8;margin-bottom:20px}.contact-details>a{font-size:15px}.contact-details>p:last-child{font-size:11px;color:#bac4cb;margin-top:22px}footer{background:var(--deep);color:#b5bfc8}.footer-top{display:flex;justify-content:space-between;padding-top:35px;padding-bottom:25px;border-bottom:1px solid #ffffff15;font-size:11px;letter-spacing:1px}.footer-top small{font-size:8px;color:#ae9b78;margin-left:15px}.footer-top a{font-size:10px;letter-spacing:0}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:21px;padding-bottom:25px;font-size:9px}.footer-bottom button{background:none;border:0;color:inherit;padding:0;font-size:9px}.skip{position:absolute;top:-80px;background:white;padding:12px;z-index:20}.skip:focus{top:0}dialog{border:0;max-width:600px;width:calc(100% - 36px);padding:45px;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#102233b8}dialog h2{font-size:32px;margin:15px 0 24px}dialog p:not(.eyebrow){font-size:14px;margin-bottom:18px}.dialog-close{position:absolute;right:14px;top:6px;background:none;border:0;font-size:27px}dialog a{text-decoration:underline;overflow-wrap:anywhere}
@media(min-width:1600px){.hero-copy{padding-left:calc((100vw - 1280px)/2)}.hero-visual{background-size:100% auto}}
@media(max-width:1000px){.wrap{width:calc(100% - 64px)}.header{padding:20px 32px}.brand{width:265px}.header nav{gap:20px}.hero-copy{padding:65px 15px 65px 32px}h1{font-size:49px;margin-right:-100px}.hero-visual{min-height:570px;background-size:auto 180%;background-position:48% 0}.hero-bottom{margin:0 32px}.firm-layout{gap:40px}.approach{gap:55px}.approach-art{min-height:540px}.partner{grid-template-columns:300px 1fr;gap:40px}.portrait{height:410px}.team-grid h3{font-size:22px}.section{padding:85px 0}}
@media(max-width:700px){html{scroll-padding-top:20px}.wrap{width:calc(100% - 40px)}.header{height:auto;min-height:91px;padding:14px 20px;position:relative;flex-wrap:wrap;gap:12px}.brand{width:min(245px,calc(100% - 82px))}.menu-toggle{display:flex;gap:14px;align-items:center;background:none;border:0;padding:10px 0;font-size:12px;min-height:44px}.menu-toggle span{font-size:25px;color:var(--gold)}.header nav{display:none;width:100%;border-top:1px solid var(--line);padding:12px 0;flex-wrap:wrap;gap:20px}.header nav.is-open{display:flex}.nav-contact{margin-left:0}.hero{grid-template-columns:1fr}.hero-copy{padding:43px 20px 37px}.hero .eyebrow{font-size:8px;letter-spacing:1.55px;gap:10px}h1{font-size:clamp(34px,8.6vw,52px);letter-spacing:-1.2px;margin:26px 0 24px;line-height:1.13}.hero-intro{font-size:14px;max-width:350px}.button{margin-top:25px;padding:12px 18px;font-size:11px;gap:42px}.hero-visual{min-height:0;height:66vw;max-height:350px;margin:0 20px;background-size:100% auto;background-position:center top;background-image:linear-gradient(0deg,#182e4340,transparent 60%),url('assets/maritime-banner.jpg')}.hero-visual:before{background:linear-gradient(0deg,var(--navy),transparent 35%)}.visual-note{right:15px;bottom:21px;font-size:7px;letter-spacing:1.5px}.hero-bottom{margin:0 20px;font-size:7px;letter-spacing:1px;padding:17px 0}.hero-bottom a{font-size:9px}.hero-bottom a span{padding-left:8px}.section{padding:62px 0}.section-label{font-size:9px;letter-spacing:1.8px;margin-bottom:27px;gap:13px}h2{font-size:34px;letter-spacing:-.7px}.firm-layout{grid-template-columns:1fr;gap:28px}.firm-text .lead{font-size:18px}.firm-text p{font-size:13px}.text-link{font-size:11px;gap:16px}.section-heading{display:block;margin-bottom:32px}.section-heading>p{margin-top:24px;font-size:13px;max-width:330px}.practice-list summary{font-size:22px;padding:20px 0;gap:22px}.practice-list summary>span:first-child{max-width:90%}.practice-body{padding:0 12px 23px 0;font-size:13px}.practice-tags{font-size:8px}.approach{grid-template-columns:1fr;gap:40px}.approach-art{min-height:370px;order:2}.approach-art svg{height:230px;width:200px}.approach-art p{font-size:21px;margin-top:0}.principle{margin-top:24px;padding-top:20px}.partner{grid-template-columns:1fr;gap:28px;padding-bottom:35px}.portrait{width:100%;height:340px;max-width:400px}.partner h3{font-size:31px}.partner-copy>p:not(.eyebrow){font-size:13px}.team-grid{grid-template-columns:1fr}.team-grid article{padding:23px 0;position:relative;padding-left:62px}.team-grid article+article{border-left:0;border-top:1px solid var(--line);padding-left:62px}.person-mark{position:absolute;left:0;top:22px;font-size:22px}.team-grid h3{font-size:23px}.membership{gap:17px;margin-top:34px}.membership img{width:65px;height:65px}.membership p:not(.eyebrow){font-size:15px;line-height:1.5}.membership span{font-size:10px}.contact-layout{grid-template-columns:1fr;gap:38px}.contact h2{font-size:44px}.contact-email{font-size:17px;margin-top:28px}.contact-email span{margin-left:10px}.contact-details{border-left:0;border-top:1px solid #ffffff2b;padding:28px 0 0}.contact-details address{font-size:16px}.footer-top{font-size:10px;gap:15px}.footer-top small{display:block;margin-left:0;margin-top:5px}.footer-bottom{font-size:8px;align-items:start}.footer-bottom button{font-size:8px;text-align:right;max-width:100px}dialog{padding:35px 25px}}
.brand{height:70px;display:flex;align-items:center;overflow:hidden}
.brand img{flex-shrink:0;clip-path:inset(0 1px 0 0)}
.hero-visual:before{background:linear-gradient(180deg,transparent 50%,var(--navy) 83%)}
@media(max-width:700px){.hero-visual:before{background:linear-gradient(0deg,var(--navy),transparent 35%)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
