/* ═══════════════════════════════════════════════
   HLG LAWYER PROFILE scoped under .hlgp
   Headings: EB Garamond  |  Body: Open Sans  |  HLG greens only
   ═══════════════════════════════════════════════ */

.hlgp {
  --g:#3F5C57; --gd:#2e4440; --gdd:#1e2d2a; --gm:#516d68;
  --gl:#f0f4f3; --gll:#f8faf9; --tx:#394542; --txm:#6b7c7a;
  --bd:#d8e2e0; --bdl:#e8efee; --wh:#ffffff; --bg:#f8faf9;
  font-family:'Open Sans', sans-serif; font-size:15px; color:var(--tx);
  line-height:1.7; background:var(--wh); -webkit-font-smoothing:antialiased;
}
.hlgp *, .hlgp *::before, .hlgp *::after { margin:0; padding:0; box-sizing:border-box; }
.hlgp h1, .hlgp h2, .hlgp h3, .hlgp h4 { font-family:'EB Garamond', Georgia, serif; color:var(--g); line-height:1.2; font-weight:500; }

.hlgp-crumb { border-bottom:1px solid var(--bd); background:var(--wh); }
.hlgp-crumb-inner { max-width:1190px; margin:0 auto; padding:11px 32px; font-size:12px; color:var(--txm); display:flex; align-items:center; gap:6px; flex-wrap:wrap; }
.hlgp-crumb a { color:var(--txm); text-decoration:none; }
.hlgp-crumb a:hover { color:var(--g); }
.hlgp-crumb-sep { color:var(--bd); }

.hlgp-hero { background:var(--gd); position:relative; overflow:hidden; }
.hlgp-hero::after { content:''; position:absolute; inset:0; background:repeating-linear-gradient(0deg,transparent 0,transparent 39px,rgba(255,255,255,.018) 39px,rgba(255,255,255,.018) 40px); pointer-events:none; }
.hlgp-hero-inner { position:relative; z-index:1; max-width:1190px; margin:0 auto; display:grid; grid-template-columns:280px 1fr; align-items:end; padding:56px 32px 0; }
.hlgp-hero-photo-col { align-self:end; }
.hlgp-hero-photo { display:block; width:100%; aspect-ratio:1/1.25; object-fit:cover; object-position:center top; background:var(--g); margin-bottom:-2px; }
.hlgp-hero-text { padding:0 0 48px 60px; color:var(--wh); }
.hlgp-hero-text h1 { font-size:clamp(2.2rem,3.5vw,3.2rem); color:var(--wh); margin-bottom:8px; line-height:1.15; }
.hlgp-hero-title { font-size:1rem; color:rgba(255,255,255,.9); margin-bottom:18px; letter-spacing:.5px; font-weight:400; }
.hlgp-hero-text > p { font-size:.95rem; color:rgba(255,255,255,.8); line-height:1.7; max-width:600px; margin-bottom:32px; }

.hlgp-main-wrap { display:grid; grid-template-columns:1fr 300px; gap:60px; max-width:1190px; margin:0 auto; padding:60px 32px; }
.hlgp-main { min-width:0; }
.hlgp-section { margin-bottom:60px; }
.hlgp-section:last-child { margin-bottom:0; }
.hlgp-label { font-size:.75rem; text-transform:uppercase; letter-spacing:.15em; color:var(--gm); font-weight:600; margin-bottom:6px; }
.hlgp-section h2 { font-size:1.8rem; margin-bottom:24px; margin-top:0; }
.hlgp-section p { margin-bottom:1rem; line-height:1.8; }

.hlgp-practice { display:grid; grid-template-columns:1fr 1fr; gap:32px; margin-top:24px; }
.hlgp-practice-item { padding:24px; border:1px solid var(--bd); background:var(--wh); border-left:3px solid var(--g); }
.hlgp-practice-item h3 { font-size:1.1rem; margin-bottom:12px; color:var(--g); }
.hlgp-practice-item p { font-size:.93rem; color:var(--txm); line-height:1.7; margin-bottom:0; }

.hlgp-bio { columns:1; margin-top:24px; }
.hlgp-bio p { margin-bottom:1rem; break-inside:avoid; }

.hlgp-experience { margin-top:24px; }
.hlgp-exp-item { padding-bottom:32px; margin-bottom:32px; border-bottom:1px solid var(--bd); display:grid; grid-template-columns:80px 1fr; gap:24px; }
.hlgp-exp-item:last-child { border-bottom:none; padding-bottom:0; margin-bottom:0; }
.hlgp-exp-year { font-family:'EB Garamond', Georgia, serif; font-size:1.3rem; color:var(--g); font-weight:500; }
.hlgp-exp-title { font-weight:600; margin-bottom:6px; }
.hlgp-exp-desc { font-size:.93rem; color:var(--txm); line-height:1.7; }

.hlgp-cred-item { padding:16px 0; border-bottom:1px solid var(--bdl); }
.hlgp-cred-item:last-child { border-bottom:none; }
.hlgp-cred-label { font-size:.82rem; text-transform:uppercase; letter-spacing:.08em; color:var(--txm); font-weight:600; margin-bottom:4px; }
.hlgp-cred-text { font-size:.93rem; color:var(--tx); }
.hlgp-cred-text + .hlgp-cred-text { margin-top:6px; }

.hlgp-media-item { padding:16px 0; border-bottom:1px solid var(--bdl); display:grid; grid-template-columns:150px 1fr; gap:12px; }
.hlgp-media-item:last-child { border-bottom:none; }
.hlgp-outlet { font-size:.8rem; color:var(--gm); font-weight:600; text-transform:uppercase; letter-spacing:.08em; }
.hlgp-media-title { font-size:.9rem; margin-bottom:4px; line-height:1.5; }
.hlgp-media-title a { color:var(--g); text-decoration:none; }
.hlgp-media-title a:hover { text-decoration:underline; }
.hlgp-media-date { font-size:.8rem; color:var(--txm); }

.hlgp-speak-item { padding:16px 0; border-bottom:1px solid var(--bdl); position:relative; padding-right:60px; }
.hlgp-speak-item:last-child { border-bottom:none; }
.hlgp-speak-event { font-weight:600; margin-bottom:4px; font-size:.93rem; }
.hlgp-speak-detail { font-size:.85rem; color:var(--txm); }
.hlgp-speak-year { position:absolute; right:0; top:16px; font-family:'EB Garamond', Georgia, serif; font-size:1rem; color:var(--g); font-weight:500; }

.hlgp-sidebar { padding-top:0; }
.hlgp-cta { background:var(--gl); padding:24px; margin-bottom:28px; border-radius:3px; }
.hlgp-cta h4 { font-size:1rem; margin-bottom:10px; }
.hlgp-cta p { font-size:.85rem; color:var(--txm); margin-bottom:16px; }
.hlgp-cta-btn { display:block; text-align:center; padding:11px 16px; background:var(--g); color:var(--wh); text-decoration:none; font-weight:600; font-size:.85rem; border-radius:3px; transition:background .2s; }
.hlgp-cta-btn:hover { background:var(--gd); }
.hlgp-scard { background:var(--wh); border:1px solid var(--bd); margin-bottom:28px; border-radius:2px; }
.hlgp-scard-head { padding:16px; background:var(--gl); font-weight:600; font-size:.85rem; color:var(--g); border-bottom:1px solid var(--bd); }
.hlgp-scard-body { padding:16px; }
.hlgp-srow { display:grid; grid-template-columns:1fr 1fr; gap:12px; padding:10px 0; border-bottom:1px solid var(--bdl); font-size:.85rem; }
.hlgp-srow:last-child { border-bottom:none; }
.hlgp-skey { color:var(--txm); font-weight:600; text-transform:uppercase; letter-spacing:.06em; font-size:.75rem; }
.hlgp-sval { color:var(--tx); text-align:right; min-width:0; overflow-wrap:anywhere; }
.hlgp-srow--tight { grid-template-columns:0fr 1fr; }
.hlgp-srow--tight .hlgp-sval { text-align:left; }
.hlgp-lang-row { display:flex; justify-content:space-between; align-items:center; padding:10px 0; border-bottom:1px solid var(--bdl); font-size:.85rem; }
.hlgp-lang-row:last-child { border-bottom:none; }
.hlgp-lang-name { color:var(--tx); font-weight:500; }
.hlgp-lang-lvl { color:var(--txm); font-weight:600; text-transform:uppercase; letter-spacing:.05em; font-size:.72rem; }
.hlgp-crow { display:flex; align-items:center; gap:10px; padding:10px 0; border-bottom:1px solid var(--bdl); font-size:.85rem; }
.hlgp-crow:last-child { border-bottom:none; }
.hlgp-cicon { flex:0 0 auto; display:flex; color:var(--g); }
.hlgp-cval { color:var(--tx); min-width:0; overflow-wrap:anywhere; }
.hlgp-dots { display:flex; gap:4px; }
.hlgp-dot { width:6px; height:6px; border-radius:50%; background:var(--bdl); }
.hlgp-dot.on { background:var(--g); }
.hlgp-sverif { display:block; padding:10px 12px; margin-bottom:8px; border:1px solid var(--bd); color:var(--g); text-decoration:none; font-size:.82rem; text-align:center; border-radius:2px; transition:all .2s; }
.hlgp-sverif:last-child { margin-bottom:0; }
.hlgp-sverif:hover { background:var(--gl); border-color:var(--g); }

.hlgp-team { background:var(--bg); padding:60px 32px; margin-top:0; }
.hlgp-team-inner { max-width:1190px; margin:0 auto; }
.hlgp-team h3 { font-size:1.8rem; margin-bottom:12px; }
.hlgp-team-intro { color:var(--txm); margin-bottom:40px; max-width:600px; }
.hlgp-team-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:20px; }
.hlgp-tcard { background:var(--wh); text-decoration:none; border-radius:2px; overflow:hidden; transition:all .3s ease; border:1px solid var(--bd); }
.hlgp-tcard:hover { box-shadow:0 8px 24px rgba(0,0,0,.1); transform:translateY(-2px); }
.hlgp-tcard-img { display:block; width:100%; aspect-ratio:1; object-fit:cover; background:var(--gl); }
.hlgp-tcard-body { padding:16px; }
.hlgp-tcard-name { font-weight:600; font-size:.9rem; color:var(--tx); margin-bottom:4px; }
.hlgp-tcard-role { font-size:.8rem; color:var(--txm); }

/* Grouped team listing (/team/) */
.hlgp-group { max-width:1190px; margin:0 auto; padding:0 32px 48px; }
.hlgp-group:first-of-type { padding-top:48px; }
.hlgp-group > h2 { font-size:1.6rem; margin-bottom:24px; padding-bottom:10px; border-bottom:1px solid var(--bd); }

@media (max-width:1024px) { .hlgp-main-wrap { grid-template-columns:1fr; gap:40px; } }
@media (max-width:768px) {
  .hlgp-hero-inner { grid-template-columns:1fr; padding:40px 24px 0; }
  .hlgp-hero-photo { max-width:200px; margin-bottom:24px; }
  .hlgp-hero-text { padding:0; } .hlgp-hero-text h1 { font-size:2rem; }
  .hlgp-main-wrap { padding:40px 24px; }
  .hlgp-practice { grid-template-columns:1fr; }
  .hlgp-bio { columns:1; }
  .hlgp-exp-item { grid-template-columns:1fr; gap:8px; }
  .hlgp-team-grid { grid-template-columns:repeat(auto-fit,minmax(140px,1fr)); }
}

/* experience stat line (added with profile reorg) */
.hlgp-stats{display:flex;flex-wrap:wrap;gap:32px;margin:0 0 26px;padding-bottom:22px;border-bottom:1px solid #d8e2e0}
.hlgp-stat{display:flex;flex-direction:column;gap:4px}
.hlgp-stat-v{font-family:'EB Garamond',Georgia,serif;font-size:1.75rem;color:#3F5C57;line-height:1}
.hlgp-stat-l{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:#6b7c7a;font-weight:600}
