.elementor-39 .elementor-element.elementor-element-1c74240{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-39 .elementor-element.elementor-element-1c74240.elementor-element{--flex-grow:0;--flex-shrink:0;}/* Start custom CSS *//* ════════════════════════════════════════════
   EXPERTISE PAGE
════════════════════════════════════════════ */

/* Page hero */
.page-hero {
  background: var(--midnight); position: relative; overflow: hidden;
}
.page-hero__bg {
  position: absolute; inset: 0; background-size: cover;
  background-position: center; opacity: 0.18;
}
.page-hero__content {
  position: relative; z-index: 2;
  padding: clamp(48px,7vw,88px) var(--pad-x) clamp(48px,6vw,80px);
  max-width: var(--max-w); margin: 0 auto;
}
.page-hero__eyebrow {
  font-size: 10px; font-weight: 600; letter-spacing: 0.20em;
  text-transform: uppercase; color: var(--gold); margin-bottom: 16px;
}
.page-hero__title {
  font-family: var(--serif); font-size: clamp(32px,5.5vw,72px);
  font-weight: 300; color: #fff; line-height: 1.08;
  max-width: 700px; overflow-wrap: break-word;
}
.page-hero__sub {
  font-size: clamp(14px,1.5vw,16px); color: rgba(255,255,255,0.55);
  max-width: 560px; margin-top: 16px; line-height: 1.78;
}

/* Breadcrumb */
.breadcrumb {
  padding: 13px var(--pad-x); background: var(--off-white);
  border-bottom: 1px solid var(--border);
  display: flex; align-items: center; gap: 6px; flex-wrap: wrap;
  font-size: 11px; color: var(--muted);
}
.breadcrumb a { color: var(--muted); transition: color 0.2s; }
.breadcrumb a:hover { color: var(--firm-navy); }
.breadcrumb__sep { color: var(--gold); }
.breadcrumb__current {
  color: var(--firm-navy); font-weight: 500;
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 40vw;
}

/* Main layout */
.expertise-layout {
  display: grid; grid-template-columns: 260px minmax(0,1fr);
  max-width: var(--max-w); margin: 0 auto; align-items: start;
}

/* Sticky side nav */
.practice-nav {
  position: sticky; top: var(--nav-h);
  background: var(--off-white);
  min-height: calc(100vh - var(--nav-h));
  max-height: calc(100vh - var(--nav-h));
  border-right: 1px solid var(--border);
  padding: clamp(24px,3vw,40px) 0;
  overflow-y: auto;
}
.practice-nav__heading {
  font-size: 9px; font-weight: 600; letter-spacing: 0.22em;
  text-transform: uppercase; color: var(--gold);
  padding: 0 clamp(20px,3vw,32px); margin-bottom: 16px; opacity: 0.7;
}
.practice-nav__item {
  display: flex; align-items: center; gap: 12px;
  padding: 14px clamp(20px,3vw,32px);
  font-size: 13px; font-weight: 400; color: var(--muted);
  text-decoration: none; border-left: 3px solid transparent;
  transition: color 0.2s, background 0.2s, border-left-color 0.2s; line-height: 1.4;
}
.practice-nav__item:hover { color: var(--firm-navy); background: rgba(27,47,110,0.04); }
.practice-nav__item.is-active { color: var(--firm-navy); font-weight: 500; border-left-color: var(--gold); background: rgba(27,47,110,0.05); }
.practice-nav__num { font-size: 10px; font-weight: 600; letter-spacing: 0.12em; color: var(--gold); flex-shrink: 0; width: 20px; }
.practice-nav__divider { height: 1px; background: var(--border); margin: 16px clamp(20px,3vw,32px); }
.practice-nav__contact { padding: clamp(16px,2.5vw,24px) clamp(20px,3vw,32px) 0; margin-top: 8px; border-top: 1px solid var(--border); }
.practice-nav__contact p { font-size: 12px; color: var(--muted); line-height: 1.7; margin-bottom: 12px; }
.practice-nav__contact a { font-size: 10px; font-weight: 600; letter-spacing: 0.14em; text-transform: uppercase; color: var(--firm-navy); display: inline-flex; align-items: center; gap: 6px; transition: color 0.2s; text-decoration: none; }
.practice-nav__contact a::after { content: '→'; color: var(--gold); }
.practice-nav__contact a:hover { color: var(--gold); }

/* Practice content */
.practice-content { padding: clamp(40px,5vw,64px) clamp(32px,5vw,64px) clamp(64px,7vw,96px); min-width: 0; }

/* Practice area section */
.practice-area {
  padding-bottom: clamp(56px,7vw,80px); margin-bottom: clamp(56px,7vw,80px);
  border-bottom: 1px solid var(--border);
  scroll-margin-top: calc(var(--nav-h) + 24px);
}
.practice-area:last-child { border-bottom: none; margin-bottom: 0; }
.practice-area__header { margin-bottom: 28px; }
.practice-area .section-title { margin-top: 6px; font-size: clamp(26px,3.5vw,48px); }

/* Lead paragraph */
.practice-area__lead {
  font-size: clamp(14px,1.6vw,16px); color: var(--muted);
  line-height: 1.85; margin-bottom: 32px; max-width: 680px; overflow-wrap: break-word;
}

/* Pull quote */
.practice-area__quote {
  border-left: 3px solid var(--gold); padding: 16px 24px;
  margin: 0 0 32px; background: var(--pale-navy);
}
.practice-area__quote p {
  font-family: var(--serif); font-size: clamp(16px,1.8vw,20px);
  font-weight: 300; font-style: italic; color: var(--midnight); line-height: 1.5; overflow-wrap: break-word;
}

/* Services grid */
.services-grid { display: grid; grid-template-columns: 1fr 1fr; border: 1px solid var(--border); overflow: hidden; margin-bottom: 32px; }
.service-item {
  padding: 13px 18px; border-bottom: 1px solid var(--border); border-right: 1px solid var(--border);
  font-size: 13px; color: var(--ink); display: flex; align-items: flex-start; gap: 10px;
  overflow-wrap: break-word; word-break: break-word; transition: background 0.15s ease;
}
.service-item:hover { background: var(--pale-navy); }
.service-item:nth-child(even) { border-right: none; }
.service-item:nth-last-child(1),
.service-item:nth-last-child(2) { border-bottom: none; }
.service-item::before { content: '—'; color: var(--gold); flex-shrink: 0; font-size: 11px; margin-top: 2px; }

/* Advocate chips */
.practice-area__advocates { margin-top: 32px; }
.practice-area__advocates-heading { font-size: 10px; font-weight: 600; letter-spacing: 0.18em; text-transform: uppercase; color: var(--gold); margin-bottom: 14px; }
.advocate-chips { display: flex; gap: 10px; flex-wrap: wrap; }
.advocate-chip {
  display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px;
  border: 1px solid var(--border); background: #fff; text-decoration: none;
  transition: border-color 0.2s, background 0.2s;
}
.advocate-chip:hover { border-color: var(--gold); background: var(--pale-navy); }
.advocate-chip__name { font-size: 13px; font-weight: 500; color: var(--firm-navy); }
.advocate-chip__role { font-size: 10px; color: var(--muted); }

/* CTA button */
.practice-area__cta {
  display: inline-flex; align-items: center; gap: 8px;
  font-size: 11px; font-weight: 600; letter-spacing: 0.16em;
  text-transform: uppercase; color: #fff; background: var(--firm-navy);
  padding: 12px 24px; margin-top: 8px; transition: background 0.2s; text-decoration: none;
}
.practice-area__cta::after { content: '→'; font-size: 13px; }
.practice-area__cta:hover { background: var(--midnight); }

/* Responsive */
@media (max-width: 900px) {
  .expertise-layout { grid-template-columns: 1fr; }
  .practice-nav {
    position: static; min-height: auto; max-height: none;
    display: flex; flex-wrap: nowrap; align-items: center;
    padding: 12px var(--pad-x); gap: 4px;
    border-right: none; border-bottom: 1px solid var(--border);
    overflow-x: auto;
  }
  .practice-nav__heading,
  .practice-nav__divider,
  .practice-nav__contact { display: none; }
  .practice-nav__item {
    padding: 8px 12px; border-left: none;
    border-bottom: 2px solid transparent; font-size: 11px; white-space: nowrap;
  }
  .practice-nav__item.is-active { border-left: none; border-bottom-color: var(--gold); background: none; }
  .practice-content { padding: clamp(24px,4vw,48px) var(--pad-x) clamp(40px,5vw,64px); }
}
@media (max-width: 560px) {
  .services-grid { grid-template-columns: 1fr; }
  .service-item { border-right: none; }
  .service-item:nth-last-child(2) { border-bottom: 1px solid var(--border); }
  .practice-nav__num { display: none; }
}/* End custom CSS */