/* Movement enhances the content; everything remains visible without JavaScript. */
.reading-progress{position:fixed;z-index:60;left:0;top:0;width:100%;height:3px;background:#bd9d60;transform:scaleX(0);transform-origin:left;pointer-events:none}
.pointer-aura{position:fixed;left:0;top:0;width:40px;height:40px;border:1px solid #b69a6190;border-radius:50%;pointer-events:none;z-index:80;opacity:0;transition:width .25s,height .25s,background .25s,opacity .2s;margin:-20px 0 0 -20px}
.pointer-aura.over{width:62px;height:62px;margin:-31px 0 0 -31px;background:#c7ad7820}.pointer-aura.active{opacity:1}
.header{transition:box-shadow .35s,background .35s}.header.scrolled{box-shadow:0 6px 26px #122e3010;background:#f7f5effc}
.desktop-nav a:not(.nav-contact){position:relative}.desktop-nav a:not(.nav-contact):after{content:'';position:absolute;left:0;bottom:-7px;right:0;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:right;transition:transform .4s}.desktop-nav a:hover:after,.desktop-nav a[aria-current="location"]:after{transform:scaleX(1);transform-origin:left}
.hero-copy>*,.hero-foot{animation:hero-arrive 1s cubic-bezier(.2,.7,.2,1) both}.hero-copy>h1{animation-delay:.12s}.hero-copy>.hero-description{animation-delay:.24s}.hero-copy>.button{animation-delay:.36s}.hero-foot{animation-delay:.46s}@keyframes hero-arrive{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
.hero-image img{height:110%;margin-top:-3%;transform:translateY(var(--hero-shift,0px));will-change:transform}.photo-frame img{transition:transform 1s cubic-bezier(.2,.7,.2,1)}.photo-frame{overflow:hidden}.about-art:hover .photo-frame img{transform:scale(1.035)}
.motion-ready .reveal-pending{opacity:0;transform:translateY(30px)}.motion-ready .reveal{transition:opacity .85s cubic-bezier(.2,.7,.2,1),transform .85s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}
.motion-ready .reveal-pending:focus-within{opacity:1;transform:none}
.button{transition:translate .25s,background .25s,box-shadow .3s,transform .3s}.button:hover{box-shadow:0 9px 22px #0f302b1a}.button span,.text-link span{transition:transform .35s}.button:hover span,.text-link:hover span{transform:translate(3px,-3px)}
.area summary{transition:padding .35s,background .35s}.area summary:hover{padding-left:10px;background:#b8a2730c}.area[open] .area-content{animation:details-enter .4s ease both}.faq details[open]>p{animation:details-enter .4s ease both}@keyframes details-enter{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
.steps li:after{content:'';position:absolute;top:-1px;left:0;width:100%;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform 1.1s}.steps li.in-view:after{transform:scaleX(1)}
.statement p em{background:linear-gradient(#c7b181,#c7b181) left bottom/0 1px no-repeat;transition:background-size 1.3s .2s}.statement.in-view p em{background-size:100% 1px}
.team{background:#eeeee6;border-top:1px solid #d6d9ce}.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px}.lawyer{min-width:0}.lawyer-photo{position:relative;overflow:hidden;aspect-ratio:4/4.5;background:#dfe3da}.lawyer-photo img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s cubic-bezier(.2,.7,.2,1),filter .8s;filter:saturate(.85)}.lawyer-photo.nelson img{object-position:center 27%}.lawyer-photo.kau img{object-position:center 22%}.lawyer:hover .lawyer-photo img,.lawyer:focus-within .lawyer-photo img{transform:scale(1.035);filter:saturate(1)}.photo-index{position:absolute;left:22px;bottom:22px;letter-spacing:2px;font-size:8px;color:#fff9ed;background:#16342edb;padding:7px 11px}.lawyer-caption{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:26px 0 20px;border-bottom:1px solid #c4ccbc}.lawyer-caption .eyebrow{margin-bottom:9px;font-size:9px}.lawyer-caption h3{font-size:clamp(25px,2.6vw,35px);line-height:1.15}.lawyer-caption>a{display:grid;place-items:center;width:44px;height:44px;flex:none;border:1px solid #adb9a8;border-radius:50%;font-size:22px;transition:background .3s,color .3s,transform .3s}.lawyer-caption>a:hover{background:var(--green);color:white;transform:rotate(8deg)}.team-end{display:flex;justify-content:space-between;gap:30px;align-items:center;margin-top:35px}.team-end>span{font:italic 22px var(--serif);color:#6d7866}.team-end .text-link{margin:0}
@media(max-width:1100px){.desktop-nav{gap:20px;font-size:10px}.brand{width:200px}.team-grid{gap:35px}}
@media(max-width:800px){.pointer-aura{display:none}.hero-image img{height:100%;margin:0;transform:none;will-change:auto}.team-grid{gap:25px}.lawyer-caption{gap:10px}.lawyer-caption h3{font-size:27px}.team-end{align-items:flex-start}.team-end>span{font-size:20px}}
@media(max-width:580px){.team-grid{grid-template-columns:1fr;gap:40px}.lawyer-photo{aspect-ratio:4/4.5}.lawyer-caption h3{font-size:30px}.team-end{flex-direction:column;gap:18px}.motion-ready .reveal{transition-duration:.55s}}
@media(hover:none),(pointer:coarse){.pointer-aura{display:none}}
@media(prefers-reduced-motion:reduce){.pointer-aura{display:none}.hero-image img{transform:none!important;will-change:auto}.motion-ready .reveal-pending{opacity:1;transform:none}.hero-copy>*,.hero-foot{animation:none}.button{translate:none!important}}
.motion-disabled .reveal-pending{opacity:1;transform:none}.motion-disabled .pointer-aura{display:none}.motion-disabled .hero-image img{transform:none;will-change:auto}

@media(min-width:801px){.lawyer-photo{height:460px;aspect-ratio:auto}.lawyer-photo.kau img{object-position:center top}}
