.home-hero{position:relative;isolation:isolate;min-height:680px;background:var(--navy)}
.hero-backdrop{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;z-index:-2}
.home-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(var(--navy-rgb,16,32,61),.98) 0%,rgba(var(--navy-rgb,16,32,61),.93) 31%,rgba(var(--navy-rgb,16,32,61),.68) 53%,rgba(var(--navy-rgb,16,32,61),.16) 78%,rgba(var(--navy-rgb,16,32,61),.08) 100%);z-index:-1}
.home-hero .hero-grid{display:block;min-height:680px}
.home-hero .hero-copy{width:min(58%,680px);min-height:680px;padding:7rem 0 2.3rem}
.home-hero .hero-copy h1{font-size:clamp(3.5rem,5.8vw,6rem);max-width:660px}
.home-hero .hero-copy>p:not(.eyebrow){max-width:520px}
.home-hero .hero-rule{width:100%;padding-top:3.5rem}
.cabinet-portrait{height:430px;max-height:none;background:var(--navy)}
.cabinet-portrait img{width:100%;height:100%;object-fit:cover;object-position:45% center;filter:none}
.location-showcase{display:grid;grid-template-columns:minmax(285px,.72fr) minmax(0,1.28fr);gap:1.2rem;align-items:stretch}
.location-addresses{display:grid;grid-template-rows:1fr 1fr;gap:1.2rem}
.location-addresses .location-card{min-height:0;display:flex;flex-direction:column;justify-content:center}
.location-image{position:relative;overflow:hidden;min-height:520px;margin:0;background:#e8edf3}
.location-image img{width:100%;height:100%;object-fit:cover;object-position:center;position:absolute;inset:0}
.location-image figcaption{position:absolute;bottom:0;left:0;right:0;padding:1.1rem 1.4rem;background:linear-gradient(transparent,rgba(var(--navy-rgb,16,32,61),.82));color:#fff;font-family:var(--display);font-size:.8rem;letter-spacing:.09em;text-transform:uppercase}
.office-gallery{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.8fr);gap:1rem}
.office-gallery figure{margin:0;overflow:hidden;background:#edf1f5}
.office-gallery img{width:100%;height:100%;object-fit:cover}
.office-gallery-main{height:570px}
.office-gallery-side{display:grid;grid-template-rows:1fr 1fr;gap:1rem;min-height:570px}
.office-gallery-side figure{min-height:0}
@media(max-width:900px){.home-hero .hero-copy{width:min(65%,560px)}.home-hero .hero-copy h1{font-size:clamp(3.3rem,6.8vw,5rem)}.location-showcase{grid-template-columns:1fr 1fr}.office-gallery-main,.office-gallery-side{height:470px;min-height:470px}}
@media(max-width:680px){.home-hero{min-height:670px}.hero-backdrop{object-position:47% center;opacity:.9}.home-hero::after{background:linear-gradient(180deg,rgba(var(--navy-rgb,16,32,61),.94) 0%,rgba(var(--navy-rgb,16,32,61),.9) 48%,rgba(var(--navy-rgb,16,32,61),.68) 75%,rgba(var(--navy-rgb,16,32,61),.34) 100%)}.home-hero .hero-grid{display:block;min-height:670px}.home-hero .hero-copy{width:100%;min-height:670px;padding:4.5rem 0 2rem}.home-hero .hero-copy h1{font-size:clamp(3.3rem,13vw,4.8rem);max-width:560px}.home-hero .hero-rule{padding-top:3rem}.cabinet-portrait{height:330px;max-width:none}.location-showcase{grid-template-columns:1fr}.location-addresses{grid-template-rows:auto auto;gap:.8rem}.location-addresses .location-card{min-height:170px;padding:1.5rem}.location-image{min-height:270px}.office-gallery{grid-template-columns:1fr;gap:.7rem}.office-gallery-main{height:280px}.office-gallery-side{height:auto;min-height:0;grid-template-columns:1fr 1fr;grid-template-rows:190px;gap:.7rem}}
@media(max-width:680px){
  .home-hero{min-height:0;display:flex;flex-direction:column}
  .home-hero::after{display:none}
  .hero-backdrop{position:relative;order:2;height:300px;object-position:58% center;opacity:1;z-index:auto}
  .home-hero .hero-grid{order:1;min-height:0}
  .home-hero .hero-copy{min-height:0;padding:4rem 0 2.4rem}
  .home-hero .hero-rule{padding-top:2.6rem}
}
.practice-strip{background:#fff;border-bottom:1px solid var(--line)}
.practice-strip-inner{display:grid;grid-template-columns:170px minmax(0,1fr);align-items:stretch}
.practice-strip h2{align-self:center;margin:0;padding:1.5rem 1.5rem 1.5rem 0;color:var(--blue);font:600 .78rem/1.5 var(--display);letter-spacing:.12em;text-transform:uppercase}
.practice-strip-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.practice-strip-links a{display:flex;align-items:center;justify-content:space-between;gap:.7rem;min-height:112px;padding:1.25rem 1.1rem;border-left:1px solid var(--line);color:var(--navy);font:500 1.1rem/1.25 var(--serif);transition:background .2s,color .2s}
.practice-strip-links a:hover{background:var(--mist);color:var(--blue)}
.practice-strip-links a span:last-child{flex:none;color:var(--blue);font:400 1.1rem var(--sans)}
@media(max-width:900px){.practice-strip-inner{grid-template-columns:1fr}.practice-strip h2{padding:1.2rem 0 .4rem}.practice-strip-links a:first-child{border-left:0}}
@media(max-width:680px){.practice-strip-links{grid-template-columns:repeat(2,minmax(0,1fr))}.practice-strip-links a{min-height:82px;padding:1rem .7rem 1rem 0;border-left:0;border-bottom:1px solid var(--line);font-size:1.05rem}.practice-strip-links a:nth-child(even){padding-left:1rem;border-left:1px solid var(--line)}.practice-strip-links a:nth-last-child(-n+2){border-bottom:0}.practice-strip h2{padding:1.4rem 0 .5rem}}
@media(prefers-reduced-motion:reduce){.practice-strip-links a{transition:none}}
