/* ============================================================
   LANGBEIN ADR — FOOTER CSS (Variant C · Teal)
   Paste into: Appearance → Customize → Additional CSS
   ============================================================ */

/* ---- Fonts (only needed if not already loaded site-wide) ---- */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400&family=Manrope:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap');

/* ---- Tokens (scoped to the footer so they don't leak) ---- */
.lfoot{
  --navy:#0B3C5D;
  --navy-deep:#072a42;
  --teal:#1FA199;
  --teal-deep:#0f7a73;
  --bronze:#A47148;
  --ink:#0F1B2A;
  --ink-3:#64748b;
  --serif:'Cormorant Garamond', Georgia, serif;
  --sans:'Manrope', -apple-system, BlinkMacSystemFont, 'Helvetica Neue', sans-serif;
  --mono:'JetBrains Mono', ui-monospace, monospace;
  --accent:var(--teal);
  --accent-deep:var(--teal-deep);

  --f-bg:var(--navy-deep);
  --f-ink:#fff;
  --f-ink-soft:rgba(255,255,255,0.7);
  --f-ink-mute:rgba(255,255,255,0.45);
  --f-line:rgba(255,255,255,0.1);
  --f-line-strong:rgba(255,255,255,0.18);

  background:var(--f-bg);
  color:var(--f-ink-soft);
  font-family:var(--sans);
  font-size:14.5px;
  line-height:1.7;
  position:relative;
  isolation:isolate;
}

/* top teal hairline */
.lfoot::before{
  content:""; position:absolute; left:0; right:0; top:0; height:1px;
  background:linear-gradient(90deg, transparent, var(--accent) 20%, var(--accent) 80%, transparent);
  opacity:0.6; z-index:1;
}

.lfoot a{ color:var(--f-ink-soft); text-decoration:none; transition:color .2s ease; }
.lfoot a:hover{ color:#fff; }

/* ============================================================
   CTA STRIP (top band)
   ============================================================ */
.lfoot .lfoot-ctarow{
  background:var(--navy);
  border-bottom:1px solid rgba(255,255,255,0.08);
  padding:28px 40px;
}
.lfoot .lfoot-ctarow-inner{
  max-width:1320px;
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:32px;
  flex-wrap:wrap;
}
.lfoot .lfoot-ctarow-copy{ flex:1 1 320px; }
.lfoot .lfoot-ctarow-title{
  font-family:var(--serif);
  font-weight:500;
  font-size:28px;
  color:#fff !important;
  margin:0;
  line-height:1.2;
}
.lfoot .lfoot-ctarow-title em{ color:var(--accent); font-style:italic; }
.lfoot .lfoot-ctarow-sub{
  font-size:14px;
  color:rgba(255,255,255,0.7) !important;
  margin:4px 0 0 !important;
}
.lfoot .lfoot-ctarow-actions{
  display:flex !important;
  gap:12px;
  flex-wrap:wrap;
  margin:0 !important;
}
.lfoot .lfoot-ctarow-actions .wp-block-button{ margin:0 !important; }

/* pill buttons */
.lfoot .lfoot-pill .wp-block-button__link{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:13px 22px;
  border-radius:999px;
  font-family:var(--sans);
  font-weight:600;
  font-size:12px;
  letter-spacing:0.1em;
  text-transform:uppercase;
  transition:background .2s ease, transform .2s ease, border-color .2s ease;
  text-decoration:none;
  line-height:1;
}
.lfoot .lfoot-pill-primary .wp-block-button__link{
  background:var(--accent);
  color:#fff;
  border:1px solid var(--accent);
}
.lfoot .lfoot-pill-primary .wp-block-button__link:hover{
  background:var(--accent-deep);
  border-color:var(--accent-deep);
  transform:translateY(-1px);
}
.lfoot .lfoot-pill-ghost .wp-block-button__link{
  background:transparent;
  color:#fff;
  border:1px solid rgba(255,255,255,0.25);
}
.lfoot .lfoot-pill-ghost .wp-block-button__link:hover{
  background:rgba(255,255,255,0.08);
  border-color:#fff;
}

/* ============================================================
   FOOTER BODY
   ============================================================ */
.lfoot .lfoot-wrap{
  max-width:1320px;
  margin:0 auto;
  padding:72px 40px 28px;
}

.lfoot .lfoot-grid{ gap:56px !important; align-items:flex-start; }
.lfoot .lfoot-grid .wp-block-column{ margin:0; }

/* ---- Shared heading style ---- */
.lfoot .lfoot-heading{
  font-family:var(--sans) !important;
  font-weight:600 !important;
  font-size:12px !important;
  letter-spacing:0.16em !important;
  text-transform:uppercase !important;
  color:#fff !important;
  margin:0 0 20px !important;
  display:flex;
  align-items:center;
  gap:10px;
}
.lfoot .lfoot-heading::before{
  content:"";
  width:18px; height:1px;
  background:var(--accent);
  flex:0 0 auto;
}

/* ---- Link lists ---- */
.lfoot .lfoot-links{
  list-style:none !important;
  padding:0 !important;
  margin:0 !important;
  display:flex;
  flex-direction:column;
  gap:10px;
}
.lfoot .lfoot-links li{ margin:0; padding:0; }
.lfoot .lfoot-links a{
  font-size:14.5px;
  color:var(--f-ink-soft);
  display:inline-flex;
  align-items:center;
  gap:10px;
  position:relative;
}
.lfoot .lfoot-links a::before{
  content:"";
  width:0; height:1px;
  background:var(--accent);
  transition:width .25s ease;
}
.lfoot .lfoot-links a:hover{ color:#fff; }
.lfoot .lfoot-links a:hover::before{ width:14px; }

/* ============================================================
   BRAND COLUMN
   ============================================================ */
.lfoot .lfoot-brand{ display:flex !important; flex-direction:column; gap:18px; }
.lfoot .lfoot-logo{ gap:12px !important; align-items:center; }
.lfoot .lfoot-logo-mark img{
  width:46px !important;
  height:46px !important;
  border:1px solid var(--f-line-strong);
  border-radius:2px;
  padding:6px;
  background:linear-gradient(180deg, rgba(255,255,255,0.03), rgba(255,255,255,0));
}
.lfoot .lfoot-logo-text{ line-height:1.1; }
.lfoot .lfoot-logo-text .lfoot-logo-name{
  font-family:var(--serif) !important;
  font-weight:500 !important;
  font-size:22px !important;
  color:#fff !important;
  letter-spacing:0.01em !important;
  margin:0 !important;
  line-height:1.1;
}
.lfoot .lfoot-logo-text .lfoot-logo-sub{
  font-family:var(--mono) !important;
  font-size:10px !important;
  letter-spacing:0.28em !important;
  text-transform:uppercase !important;
  color:var(--f-ink-mute) !important;
  margin:4px 0 0 !important;
}

.lfoot .lfoot-tagline{
  font-family:var(--serif) !important;
  font-style:italic !important;
  font-size:18px !important;
  line-height:1.4 !important;
  color:rgba(255,255,255,0.85) !important;
  margin:0 !important;
}

/* ---- Certification seal ---- */
.lfoot .lfoot-cert{
  padding:12px 14px;
  border:1px solid var(--f-line);
  border-radius:2px;
  background:rgba(255,255,255,0.02);
  gap:12px !important;
  align-items:center;
  margin-top:4px;
}
.lfoot .lfoot-cert-seal{
  width:34px; height:34px; flex:0 0 34px;
  border-radius:50%;
  display:grid; place-items:center;
  background:rgba(164,113,72,0.15);
  color:var(--bronze);
  border:1px solid rgba(164,113,72,0.4);
}
.lfoot .lfoot-cert-txt{ line-height:1.2; }
.lfoot .lfoot-cert-t1{
  font-family:var(--mono) !important;
  font-size:10px !important;
  letter-spacing:0.22em !important;
  text-transform:uppercase !important;
  color:var(--f-ink-mute) !important;
  margin:0 !important;
}
.lfoot .lfoot-cert-t2{
  font-size:13px !important;
  color:#fff !important;
  font-weight:500 !important;
  margin:3px 0 0 !important;
}

/* ============================================================
   CONTACT COLUMN
   ============================================================ */
.lfoot .lfoot-contact{ display:flex; flex-direction:column; gap:14px; }
.lfoot .lfoot-contact-row{ display:flex; gap:12px; align-items:flex-start; }
.lfoot .lfoot-contact-icon{
  width:28px; height:28px; flex:0 0 28px;
  border-radius:2px;
  display:grid; place-items:center;
  background:rgba(31,161,153,0.1);
  color:var(--accent);
  border:1px solid rgba(31,161,153,0.25);
}
.lfoot .lfoot-contact-body{ display:flex; flex-direction:column; line-height:1.3; }
.lfoot .lfoot-contact-label{
  font-family:var(--mono);
  font-size:10px;
  letter-spacing:0.22em;
  text-transform:uppercase;
  color:var(--f-ink-mute);
  margin-bottom:2px;
}
.lfoot .lfoot-contact-val{
  color:#fff;
  font-size:14.5px;
  font-weight:500;
}
.lfoot a.lfoot-contact-val:hover{ color:var(--accent); }

/* ============================================================
   DIVIDER + BOTTOM
   ============================================================ */
.lfoot .lfoot-rule{
  margin:56px 0 24px !important;
  height:1px !important;
  background:linear-gradient(90deg, transparent, var(--f-line-strong) 15%, var(--f-line-strong) 85%, transparent) !important;
  border:0 !important;
  opacity:1 !important;
}

.lfoot .lfoot-bottom{
  display:flex !important;
  flex-direction:column;
  gap:16px;
  align-items:center;
  text-align:center;
}
.lfoot .lfoot-copy{
  font-size:13px !important;
  color:var(--f-ink-soft) !important;
  margin:0 !important;
}
.lfoot .lfoot-copy strong{ color:#fff; font-weight:600; }
.lfoot .lfoot-disclaim{
  max-width:900px;
  font-size:12px !important;
  line-height:1.65 !important;
  color:var(--f-ink-mute) !important;
  margin:0 auto !important;
}
.lfoot .lfoot-disclaim strong{ color:rgba(255,255,255,0.7); font-weight:600; }
.lfoot .lfoot-credit{
  font-size:12px !important;
  color:var(--f-ink-mute) !important;
  margin:0 !important;
}
.lfoot .lfoot-credit a{ color:var(--accent); font-weight:600; }
.lfoot .lfoot-credit a:hover{ color:#fff; }

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width: 900px){
  .lfoot .lfoot-ctarow{ padding:24px 24px; }
  .lfoot .lfoot-ctarow-inner{ flex-direction:column; align-items:flex-start; gap:20px; }
  .lfoot .lfoot-ctarow-title{ font-size:24px; }
  .lfoot .lfoot-wrap{ padding:56px 24px 24px; }
  .lfoot .lfoot-grid{ gap:40px !important; }
}
@media (max-width: 600px){
  .lfoot .lfoot-ctarow-actions{ width:100%; }
  .lfoot .lfoot-pill .wp-block-button__link{ width:100%; justify-content:center; }
}

/* =====================================================================
   LANGBEIN ADR — HEADER CSS
   Paste into Appearance → Customize → Additional CSS
   Works with header-gutenberg.html (Template Part)
   All selectors scoped under .lheader-* to avoid theme conflicts
   ===================================================================== */

/* Tokens (must match footer/homepage/about) */
:root {
  --lh-navy: #0B3C5D;
  --lh-navy-deep: #072a42;
  --lh-navy-ink: #0F1B2A;
  --lh-teal: #1FA199;
  --lh-teal-deep: #0f7a73;
  --lh-paper: #F7F4EE;
  --lh-line: rgba(11, 60, 93, 0.12);
  --lh-ink: #0F1B2A;
  --lh-ink-2: #334155;
  --lh-ink-3: #64748b;
  --lh-sans: 'Manrope', -apple-system, sans-serif;
  --lh-mono: 'JetBrains Mono', ui-monospace, monospace;
}

/* Wrapper */
.lheader-wrap {
  font-family: var(--lh-sans) !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* ========== TOP BAR ========== */
.lheader-topbar {
  background: var(--lh-navy-deep) !important;
  color: #cfe8e5 !important;
  font-size: 13px !important;
  line-height: 1.4 !important;
}
.lheader-topbar p {
  margin: 0 !important;
  font-size: 13px !important;
  letter-spacing: 0.02em !important;
}
.lheader-topbar a {
  color: var(--lh-teal) !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}
.lheader-topbar a:hover {
  color: #fff !important;
}
.lheader-sep {
  opacity: 0.4;
  margin: 0 8px;
}

/* ========== MAIN BAR ========== */
.lheader-mainbar {
  background: #fff !important;
  border-bottom: 1px solid var(--lh-line) !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 999 !important;
  box-shadow: 0 2px 8px -4px rgba(11, 60, 93, 0.1) !important;
}

/* Logo */
.lheader-logo {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}
.lheader-logo-mark {
  width: 56px !important;
  height: 24px !important;
}
.lheader-logo-text {
  font-family: var(--lh-sans) !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  font-size: 15px !important;
  color: var(--lh-navy) !important;
  margin: 0 !important;
}
.lheader-logo-thin {
  font-weight: 300 !important;
  color: var(--lh-ink-3) !important;
  letter-spacing: 0.14em !important;
  font-size: 12px !important;
  margin-left: 4px !important;
}

/* Navigation menu */
.lheader-nav {
  margin-left: 28px !important;
}
.lheader-nav .wp-block-navigation-item a {
  color: var(--lh-ink-2) !important;
  text-decoration: none !important;
  font-size: 13.5px !important;
  font-weight: 500 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  transition: color 0.2s ease !important;
}
.lheader-nav .wp-block-navigation-item a:hover,
.lheader-nav .wp-block-navigation-item.current-menu-item a {
  color: var(--lh-navy) !important;
}

/* Buttons */
.lheader-actions {
  display: flex !important;
  gap: 12px !important;
}
.lheader-btn .wp-block-button__link {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 11px 20px !important;
  border-radius: 2px !important;
  font-family: var(--lh-sans) !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  cursor: pointer !important;
  border: 1px solid transparent !important;
  transition: transform 0.2s ease, background 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease !important;
}
.lheader-btn-ghost .wp-block-button__link {
  background: #fff !important;
  color: var(--lh-navy) !important;
  border: 1px solid var(--lh-line) !important;
}
.lheader-btn-ghost .wp-block-button__link:hover {
  border-color: var(--lh-navy) !important;
  transform: translateY(-1px) !important;
}
.lheader-btn-primary .wp-block-button__link {
  background: var(--lh-teal) !important;
  color: #fff !important;
}
.lheader-btn-primary .wp-block-button__link:hover {
  background: var(--lh-teal-deep) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 10px 24px -12px rgba(15, 27, 42, 0.4) !important;
}

/* ========== RESPONSIVE ========== */
@media (max-width: 1024px) {
  .lheader-topbar,
  .lheader-mainbar {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
  .lheader-topbar {
    font-size: 12px !important;
  }
  .lheader-topbar-left {
    flex: 1 !important;
  }
  .lheader-sep {
    display: none;
  }
  .lheader-nav {
    margin-left: 0 !important;
  }
}

@media (max-width: 780px) {
  .lheader-topbar {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 6px !important;
  }
  .lheader-mainbar {
    flex-wrap: wrap !important;
  }
  .lheader-logo {
    flex: 1 1 auto !important;
  }
  .lheader-nav {
    order: 3 !important;
    width: 100% !important;
    margin-top: 12px !important;
    padding-top: 12px !important;
    border-top: 1px solid var(--lh-line) !important;
  }
  .lheader-actions {
    gap: 8px !important;
  }
  .lheader-btn .wp-block-button__link {
    padding: 10px 16px !important;
    font-size: 12px !important;
  }
}

/* =====================================================================
   LANGBEIN ADR — PRACTICE AREA PAGES CSS
   Paste into Appearance → Customize → Additional CSS (append)
   Works with all 4 practice area pages
   ===================================================================== */

/* Tokens (matching system) */
:root {
  --lprac-navy: #0B3C5D;
  --lprac-navy-deep: #072a42;
  --lprac-teal: #1FA199;
  --lprac-teal-deep: #0f7a73;
  --lprac-paper: #F7F4EE;
  --lprac-paper-2: #EFEAE0;
  --lprac-line: rgba(11, 60, 93, 0.12);
  --lprac-ink: #0F1B2A;
  --lprac-ink-2: #334155;
  --lprac-ink-3: #64748b;
  --lprac-sans: 'Manrope', -apple-system, sans-serif;
  --lprac-serif: 'Cormorant Garamond', Georgia, serif;
  --lprac-mono: 'JetBrains Mono', ui-monospace, monospace;
}

.lprac-single {
  font-family: var(--lprac-sans) !important;
  background: #fff !important;
}

/* ========== HERO ========== */
.lprac-hero-single {
  background: linear-gradient(135deg, var(--lprac-navy) 0%, var(--lprac-navy-deep) 100%) !important;
  color: #fff !important;
  padding: 100px 40px !important;
  position: relative !important;
}
.lprac-hero-single::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: radial-gradient(ellipse 600px 300px at 80% 20%, rgba(31, 161, 153, 0.2), transparent 70%) !important;
  pointer-events: none !important;
}
.lprac-eyebrow {
  font-family: var(--lprac-mono) !important;
  font-size: 11px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.22em !important;
  color: var(--lprac-teal) !important;
  margin-bottom: 24px !important;
}
.lprac-h1 {
  font-family: var(--lprac-serif) !important;
  font-weight: 500 !important;
  font-size: 72px !important;
  line-height: 1.02 !important;
  letter-spacing: -0.015em !important;
  color: #fff !important;
  margin: 0 0 28px !important;
  text-wrap: balance !important;
  max-width: 880px !important;
}
.lprac-hero-sub {
  font-size: 19px !important;
  line-height: 1.6 !important;
  color: rgba(255, 255, 255, 0.85) !important;
  max-width: 720px !important;
  margin: 0 0 40px !important;
}
.lprac-hero-btns {
  display: flex !important;
  gap: 14px !important;
  flex-wrap: wrap !important;
}

/* ========== BUTTONS ========== */
.lprac-btn .wp-block-button__link {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 11px 20px !important;
  border-radius: 2px !important;
  font-family: var(--lprac-sans) !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  transition: transform 0.2s ease, background 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease !important;
  border: 1px solid transparent !important;
}
.lprac-btn-lg .wp-block-button__link {
  padding: 16px 28px !important;
}
.lprac-btn-primary .wp-block-button__link {
  background: var(--lprac-teal) !important;
  color: #fff !important;
}
.lprac-btn-primary .wp-block-button__link:hover {
  background: var(--lprac-teal-deep) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 10px 24px -12px rgba(15, 27, 42, 0.4) !important;
}
.lprac-btn-ghost-light .wp-block-button__link {
  background: transparent !important;
  color: #fff !important;
  border: 1px solid rgba(255, 255, 255, 0.3) !important;
}
.lprac-btn-ghost-light .wp-block-button__link:hover {
  background: rgba(255, 255, 255, 0.08) !important;
  border-color: #fff !important;
}
.lprac-btn-outline-light .wp-block-button__link {
  background: transparent !important;
  color: #fff !important;
  border: 1px solid rgba(255, 255, 255, 0.3) !important;
}
.lprac-btn-outline-light .wp-block-button__link:hover {
  background: rgba(255, 255, 255, 0.08) !important;
  border-color: #fff !important;
}

/* ========== INTRO ========== */
.lprac-intro {
  padding: 120px 40px 80px !important;
  background: #fff !important;
}
.lprac-intro-grid {
  display: grid !important;
  grid-template-columns: 40% 60% !important;
  gap: 80px !important;
  max-width: 1320px !important;
  margin: 0 auto !important;
  align-items: start !important;
}
.lprac-label {
  font-family: var(--lprac-mono) !important;
  font-size: 11px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.22em !important;
  color: var(--lprac-teal) !important;
  margin-bottom: 20px !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}
.lprac-label::before {
  content: "" !important;
  display: block !important;
  width: 28px !important;
  height: 1px !important;
  background: var(--lprac-teal) !important;
}
.lprac-label.lprac-center {
  justify-content: center !important;
}
.lprac-h2 {
  font-family: var(--lprac-serif) !important;
  font-weight: 500 !important;
  font-size: 56px !important;
  line-height: 1.05 !important;
  letter-spacing: -0.01em !important;
  color: var(--lprac-ink) !important;
  margin: 0 !important;
  text-wrap: balance !important;
}
.lprac-h2 em {
  font-style: italic !important;
  font-weight: 400 !important;
  color: var(--lprac-navy) !important;
}
.lprac-body {
  font-size: 18px !important;
  line-height: 1.75 !important;
  color: var(--lprac-ink-2) !important;
  margin: 0 0 20px !important;
}
.lprac-lede {
  font-size: 19px !important;
  line-height: 1.6 !important;
  color: var(--lprac-ink-2) !important;
  max-width: 720px !important;
  margin: 0 0 56px !important;
}

/* ========== MATTERS GRID ========== */
.lprac-matters {
  padding: 80px 40px !important;
  background: var(--lprac-paper) !important;
}
.lprac-matter-grid {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 32px !important;
  max-width: 1320px !important;
  margin: 56px auto 0 !important;
}
.lprac-matter-card {
  background: #fff !important;
  border: 1px solid var(--lprac-line) !important;
  padding: 32px !important;
}
.lprac-matter-title {
  font-family: var(--lprac-serif) !important;
  font-weight: 600 !important;
  font-size: 22px !important;
  line-height: 1.2 !important;
  color: var(--lprac-navy) !important;
  margin: 0 0 12px !important;
}
.lprac-matter-desc {
  font-size: 15px !important;
  line-height: 1.6 !important;
  color: var(--lprac-ink-2) !important;
  margin: 0 !important;
}

/* ========== THREE METHODS (ADR page only) ========== */
.lprac-methods {
  padding: 80px 40px !important;
  background: var(--lprac-paper) !important;
}
.lprac-method-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 32px !important;
  max-width: 1320px !important;
  margin: 56px auto 0 !important;
}
.lprac-method-card {
  background: #fff !important;
  border: 1px solid var(--lprac-line) !important;
  padding: 40px !important;
}
.lprac-method-num {
  font-family: var(--lprac-mono) !important;
  font-size: 12px !important;
  color: var(--lprac-teal) !important;
  letter-spacing: 0.2em !important;
  margin-bottom: 16px !important;
}
.lprac-method-title {
  font-family: var(--lprac-serif) !important;
  font-weight: 600 !important;
  font-size: 28px !important;
  line-height: 1.1 !important;
  color: var(--lprac-navy) !important;
  margin: 0 0 16px !important;
}
.lprac-method-desc {
  font-size: 15px !important;
  line-height: 1.6 !important;
  color: var(--lprac-ink-2) !important;
  margin: 0 0 24px !important;
}
.lprac-method-fit,
.lprac-method-outcome {
  font-size: 14px !important;
  line-height: 1.5 !important;
  color: var(--lprac-ink-3) !important;
  padding-top: 16px !important;
  border-top: 1px solid var(--lprac-line) !important;
  margin-top: 16px !important;
}
.lprac-method-fit strong,
.lprac-method-outcome strong {
  color: var(--lprac-navy) !important;
  font-weight: 600 !important;
}

/* ========== WHY LESLIE ========== */
.lprac-why {
  padding: 120px 40px !important;
  background: #fff !important;
  text-align: center !important;
}
.lprac-quote {
  font-family: var(--lprac-serif) !important;
  font-weight: 400 !important;
  font-style: italic !important;
  font-size: 38px !important;
  line-height: 1.25 !important;
  letter-spacing: -0.01em !important;
  color: var(--lprac-ink) !important;
  margin: 0 0 24px !important;
  text-wrap: balance !important;
}
.lprac-attr {
  font-family: var(--lprac-mono) !important;
  font-size: 11px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.22em !important;
  color: var(--lprac-ink-3) !important;
  margin-bottom: 60px !important;
}
.lprac-body-lg {
  font-size: 17px !important;
  line-height: 1.65 !important;
  color: var(--lprac-ink-2) !important;
  max-width: 720px !important;
  margin: 0 auto 20px !important;
  text-align: left !important;
}

/* ========== PROCESS STEPS ========== */
.lprac-process {
  padding: 100px 40px !important;
  background: var(--lprac-paper) !important;
}
.lprac-steps {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 48px !important;
  max-width: 1320px !important;
  margin: 56px auto 0 !important;
}
.lprac-step {
  display: flex !important;
  gap: 24px !important;
}
.lprac-step-num {
  font-family: var(--lprac-mono) !important;
  font-size: 14px !important;
  color: var(--lprac-teal) !important;
  flex-shrink: 0 !important;
}
.lprac-step-title {
  font-family: var(--lprac-serif) !important;
  font-weight: 600 !important;
  font-size: 22px !important;
  line-height: 1.2 !important;
  color: var(--lprac-navy) !important;
  margin: 0 0 8px !important;
}
.lprac-step-desc {
  font-size: 15px !important;
  line-height: 1.6 !important;
  color: var(--lprac-ink-2) !important;
  margin: 0 !important;
}

/* ========== CTA BAND ========== */
.lprac-cta-band {
  background: var(--lprac-navy) !important;
  color: #fff !important;
  padding: 100px 40px !important;
  position: relative !important;
}
.lprac-cta-band::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: radial-gradient(ellipse 500px 260px at 80% 50%, rgba(31, 161, 153, 0.2), transparent 70%) !important;
  pointer-events: none !important;
}
.lprac-cta-inner {
  max-width: 880px !important;
  margin: 0 auto !important;
  text-align: center !important;
  position: relative !important;
}
.lprac-cta-h2 {
  font-family: var(--lprac-serif) !important;
  font-weight: 500 !important;
  font-size: 56px !important;
  line-height: 1.05 !important;
  letter-spacing: -0.01em !important;
  color: #fff !important;
  margin: 0 0 20px !important;
  text-wrap: balance !important;
}
.lprac-cta-h2 em {
  color: var(--lprac-teal) !important;
  font-style: italic !important;
}
.lprac-cta-sub {
  font-size: 17px !important;
  line-height: 1.6 !important;
  color: rgba(255, 255, 255, 0.7) !important;
  margin: 0 0 36px !important;
}
.lprac-cta-btns {
  display: flex !important;
  justify-content: center !important;
  gap: 14px !important;
  flex-wrap: wrap !important;
}

/* ========== RESPONSIVE ========== */
@media (max-width: 1024px) {
  .lprac-intro-grid {
    grid-template-columns: 1fr !important;
    gap: 48px !important;
  }
  .lprac-matter-grid {
    grid-template-columns: 1fr !important;
  }
  .lprac-method-grid {
    grid-template-columns: 1fr !important;
  }
  .lprac-steps {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 720px) {
  .lprac-h1 {
    font-size: 48px !important;
  }
  .lprac-h2 {
    font-size: 38px !important;
  }
  .lprac-cta-h2 {
    font-size: 38px !important;
  }
  .lprac-quote {
    font-size: 28px !important;
  }
  .lprac-hero-single {
    padding: 60px 24px !important;
  }
  .lprac-intro {
    padding: 80px 24px 60px !important;
  }
}

/*  REMOVE GUTENBERG DEFAULT SPACING */
.wp-block-group,
.wp-block-columns {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/*  REMOVE BLOCK GAP */
:where(.wp-block-group) {
  gap: 0 !important;
}

/* =====================================================================
   LANGBEIN ADR SERVICES — COMPLETE MASTER CSS
   ONE FILE FOR ALL PAGES — NO CONFLICTS
   
   Paste ONCE into: Appearance → Customize → Additional CSS
   
   Includes styles for:
   ✓ Header & Footer
   ✓ Homepage (.lhome)
   ✓ About (.labout)
   ✓ Practice Areas (.lprac-single)
   ✓ Blog (.lblog)
   
   All properly scoped with unique class prefixes.
   ===================================================================== */

/* Import fonts ONCE */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500&family=Manrope:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap');

/* ============================================================
   PART 1: HOMEPAGE STYLES (from homepage-additional-css.css)
   ============================================================ */

.lhome{
  --navy:#0B3C5D;
  --navy-deep:#072a42;
  --navy-ink:#0F1B2A;
  --teal:#1FA199;
  --teal-deep:#0f7a73;
  --bronze:#A47148;
  --paper:#F7F4EE;
  --paper-2:#EFEAE0;
  --line:rgba(11,60,93,0.12);
  --line-soft:rgba(11,60,93,0.06);
  --ink:#0F1B2A;
  --ink-2:#334155;
  --ink-3:#64748b;
  --serif:'Cormorant Garamond', Georgia, serif;
  --sans:'Manrope', -apple-system, sans-serif;
  --mono:'JetBrains Mono', ui-monospace, monospace;
  --accent:var(--teal);
  --accent-deep:var(--teal-deep);

  font-family:var(--sans);
  color:var(--ink);
  background:var(--paper);
  font-size:16px;
  line-height:1.55;
}
.lhome *, .lhome *::before, .lhome *::after{ box-sizing:border-box; }
.lhome a{ color:inherit; }

/* shared section scaffolding */
.lhome .lh-section{ padding:120px 40px; }
.lhome .lh-inner{ max-width:1320px; margin:0 auto; }
.lhome .lh-label{
  font-family:var(--mono); font-size:11px;
  text-transform:uppercase; letter-spacing:0.22em;
  color:var(--accent);
  display:flex; align-items:center; gap:12px;
  margin:0 0 20px;
}
.lhome .lh-label::before{ content:""; display:block; width:28px; height:1px; background:var(--accent); }
.lhome .lh-h2{
  font-family:var(--serif) !important;
  font-weight:500 !important;
  font-size:56px !important;
  line-height:1.05 !important;
  letter-spacing:-0.01em !important;
  margin:0 0 24px !important;
  color:var(--ink) !important;
  max-width:820px;
  text-wrap:balance;
}
.lhome .lh-h2 em{ font-style:italic; font-weight:400; color:var(--navy); }
.lhome .lh-lede{
  font-size:19px !important; line-height:1.6 !important;
  color:var(--ink-2) !important; max-width:640px; margin:0 !important;
}

/* buttons */
.lhome .lh-btn .wp-block-button__link{
  display:inline-flex; align-items:center; gap:8px;
  padding:11px 20px; border-radius:2px;
  font-family:var(--sans); font-weight:600; font-size:13px;
  letter-spacing:0.08em; text-transform:uppercase;
  text-decoration:none;
  transition:transform .2s ease, background .2s ease, box-shadow .2s ease, border-color .2s ease;
  border:1px solid transparent;
  line-height:1;
}
.lhome .lh-btn-lg .wp-block-button__link{ padding:16px 28px; }
.lhome .lh-btn-primary .wp-block-button__link{ background:var(--accent); color:#fff; }
.lhome .lh-btn-primary .wp-block-button__link:hover{ background:var(--accent-deep); transform:translateY(-1px); box-shadow:0 10px 24px -12px rgba(15,27,42,0.4); }
.lhome .lh-btn-ghost .wp-block-button__link{ background:#fff; color:var(--navy); border-color:var(--line); }
.lhome .lh-btn-ghost .wp-block-button__link:hover{ border-color:var(--navy); transform:translateY(-1px); }
.lhome .lh-btn-outline-light .wp-block-button__link{ background:transparent; color:#fff; border-color:rgba(255,255,255,0.3); }
.lhome .lh-btn-outline-light .wp-block-button__link:hover{ background:rgba(255,255,255,0.08); border-color:#fff; }

/* ============================================================ HERO */
.lhome-hero{ background:var(--paper); padding:56px 40px 0; }
.lhome-hero-card{
  max-width:1320px; margin:0 auto;
  background:linear-gradient(135deg, var(--navy) 0%, var(--navy-deep) 100%);
  color:#fff;
  border-radius:6px;
  overflow:hidden;
  position:relative;
  box-shadow:0 40px 80px -40px rgba(11,60,93,0.4);
}
.lhome-hero-card::before{
  content:""; position:absolute; inset:0;
  background:
    radial-gradient(ellipse 600px 300px at 90% 10%, rgba(31,161,153,0.25), transparent 70%),
    radial-gradient(ellipse 500px 400px at 10% 90%, rgba(164,113,72,0.14), transparent 70%);
  pointer-events:none;
}
.lhome-hero-grid{
  display:grid !important;
  grid-template-columns:1.4fr 1fr;
  gap:48px !important;
  padding:80px 72px 64px;
  position:relative;
  align-items:center;
}
.lhome-hero-eyebrow{
  display:inline-flex; align-items:center; gap:10px;
  font-family:var(--mono); font-size:11px;
  text-transform:uppercase; letter-spacing:0.2em;
  color:var(--teal);
  margin:0 0 28px !important;
}
.lhome-hero-eyebrow::before{
  content:""; width:6px; height:6px; border-radius:50%;
  background:var(--teal); box-shadow:0 0 10px var(--teal);
}
.lhome-hero-h1{
  font-family:var(--serif) !important;
  font-weight:500 !important;
  font-size:72px !important;
  line-height:1.02 !important;
  letter-spacing:-0.01em !important;
  margin:0 0 24px !important;
  color:#fff !important;
  text-wrap:balance;
}
.lhome-hero-h1 em{ font-style:italic; font-weight:400; color:var(--teal); }
.lhome-hero-sub{
  font-size:18px !important; line-height:1.6 !important;
  color:rgba(255,255,255,0.75) !important;
  max-width:540px; margin:0 0 40px !important;
}
.lhome-hero-ctas{ display:flex !important; gap:14px; flex-wrap:wrap; margin:0 !important; }
.lhome-hero-portrait{
  position:relative; aspect-ratio:4/5;
  border-radius:4px; overflow:hidden;
  background:linear-gradient(180deg, #3a5a75 0%, #1e3a52 100%);
}
.lhome-hero-portrait img{ width:100%; height:100%; object-fit:cover; display:block; }
.lhome-hero-portrait .lhome-hero-badge{
  position:absolute; bottom:20px; left:20px; right:20px;
  background:rgba(11,60,93,0.7);
  backdrop-filter:blur(10px);
  border:1px solid rgba(255,255,255,0.1);
  padding:14px 18px;
  display:flex; align-items:center; gap:12px;
}
.lhome-hero-badge-name{ font-family:var(--serif); font-size:19px; color:#fff; line-height:1.1; }
.lhome-hero-badge-role{ font-family:var(--mono); font-size:10px; color:var(--teal); text-transform:uppercase; letter-spacing:0.2em; margin-top:4px; }
.lhome-hero-badge-avail{ margin-left:auto; display:flex; align-items:center; gap:6px; font-size:11px; color:rgba(255,255,255,0.8); }
.lhome-hero-badge-avail::before{
  content:""; width:8px; height:8px; border-radius:50%; background:#4ade80;
  animation:lhomePulse 2s infinite;
}
@keyframes lhomePulse{
  0%{ box-shadow:0 0 0 0 rgba(74,222,128,0.6) }
  70%{ box-shadow:0 0 0 10px rgba(74,222,128,0) }
  100%{ box-shadow:0 0 0 0 rgba(74,222,128,0) }
}
.lhome-hero-stats{
  position:relative;
  display:grid !important;
  grid-template-columns:repeat(4, 1fr);
  border-top:1px solid rgba(255,255,255,0.08);
  gap:0 !important;
}
.lhome-hero-stats .lhome-stat{
  padding:32px 40px;
  border-right:1px solid rgba(255,255,255,0.08);
}
.lhome-hero-stats .lhome-stat:last-child{ border-right:0; }
.lhome-hero-stats .lhome-stat-num{
  font-family:var(--serif);
  font-size:52px; line-height:1; font-weight:500;
  color:#fff; letter-spacing:-0.02em;
  display:flex; align-items:baseline; gap:4px;
}
.lhome-hero-stats .lhome-stat-num .suffix{ font-size:28px; color:var(--teal); font-weight:400; }
.lhome-hero-stats .lhome-stat-label{
  font-family:var(--mono); font-size:11px;
  text-transform:uppercase; letter-spacing:0.2em;
  color:rgba(255,255,255,0.55); margin-top:10px;
}

/* ============================================================ PRACTICE AREAS */
.lhome-areas{ margin-top:60px; display:flex; flex-direction:column; border-top:1px solid var(--line); }
.lhome-area{ border-bottom:1px solid var(--line); transition:background .3s ease; }
.lhome-area:hover{ background:var(--paper-2); }
.lhome-area-head{
  display:grid; grid-template-columns:80px 1.3fr 2fr auto;
  align-items:center; gap:32px; padding:32px 16px;
  cursor:pointer;
}
.lhome-area-num{ font-family:var(--mono); font-size:12px; color:var(--ink-3); letter-spacing:0.1em; }
.lhome-area-title{
  font-family:var(--serif) !important;
  font-size:36px !important; font-weight:500 !important;
  color:var(--ink) !important; letter-spacing:-0.01em !important;
  margin:0 !important; transition:color .3s ease;
}
.lhome-area:hover .lhome-area-title{ color:var(--navy); }
.lhome-area-preview{ font-size:15px; color:var(--ink-3); line-height:1.5; }
.lhome-area-toggle{
  width:44px; height:44px; border-radius:50%;
  border:1px solid var(--line); background:#fff;
  display:flex; align-items:center; justify-content:center;
  transition:all .3s ease; color:var(--ink);
}
.lhome-area:hover .lhome-area-toggle,
.lhome-area.open .lhome-area-toggle{ background:var(--accent); border-color:var(--accent); color:#fff; }
.lhome-area-toggle svg{ transition:transform .3s ease; }
.lhome-area.open .lhome-area-toggle svg{ transform:rotate(45deg); }
.lhome-area-body{ display:grid; grid-template-rows:0fr; transition:grid-template-rows .4s cubic-bezier(.2,.7,.2,1); }
.lhome-area.open .lhome-area-body{ grid-template-rows:1fr; }
.lhome-area-body > div{ overflow:hidden; }
.lhome-area-detail{
  display:grid; grid-template-columns:80px 1fr 1fr; gap:32px;
  padding:0 16px 40px;
}
.lhome-area-detail-lede{
  font-family:var(--serif); font-style:italic;
  font-size:22px; line-height:1.4; color:var(--ink);
  grid-column:2; margin:0;
}
.lhome-area-detail-list{ grid-column:3; display:flex; flex-direction:column; gap:12px; }
.lhome-area-detail-list-title{
  font-family:var(--mono); font-size:11px;
  text-transform:uppercase; letter-spacing:0.2em;
  color:var(--ink-3); margin-bottom:4px;
}
.lhome-area-detail-list ul{
  list-style:none; padding:0; margin:0;
  display:grid; grid-template-columns:1fr 1fr; gap:8px 24px;
}
.lhome-area-detail-list li{
  font-size:14px; color:var(--ink-2);
  display:flex; align-items:flex-start; gap:10px; line-height:1.5;
}
.lhome-area-detail-list li::before{
  content:""; width:5px; height:5px; border-radius:50%;
  background:var(--accent); margin-top:9px; flex-shrink:0;
}

/* ============================================================ PROCESS */
.lhome-process{ background:var(--navy-ink); color:#fff; padding:120px 40px; }
.lhome-process .lh-label{ color:var(--teal); }
.lhome-process .lh-label::before{ background:var(--teal); }
.lhome-process .lh-h2{ color:#fff !important; }
.lhome-process .lh-h2 em{ color:var(--teal); }
.lhome-process-lede{ font-size:19px !important; line-height:1.6 !important; color:rgba(255,255,255,0.7) !important; max-width:640px; margin:0 !important; }
.lhome-tabs{
  margin-top:56px; display:flex; gap:0;
  border-bottom:1px solid rgba(255,255,255,0.1); flex-wrap:wrap;
}
.lhome-tab{
  padding:20px 32px 20px 0;
  font-family:var(--sans); font-weight:500;
  font-size:14px; letter-spacing:0.1em; text-transform:uppercase;
  color:rgba(255,255,255,0.5);
  background:none; border:none; cursor:pointer;
  position:relative; transition:color .3s ease; margin-right:40px;
}
.lhome-tab:hover{ color:rgba(255,255,255,0.85); }
.lhome-tab.active{ color:#fff; }
.lhome-tab::after{
  content:""; position:absolute; left:0; right:32px; bottom:-1px;
  height:2px; background:var(--teal);
  transform:scaleX(0); transform-origin:left;
  transition:transform .4s cubic-bezier(.2,.7,.2,1);
}
.lhome-tab.active::after{ transform:scaleX(1); }
.lhome-tab-num{ font-family:var(--mono); font-size:11px; color:var(--teal); margin-right:10px; }
.lhome-tab-panel{
  display:none; padding:56px 0;
  grid-template-columns:1.2fr 1fr; gap:80px; align-items:start;
}
.lhome-tab-panel.active{ display:grid; animation:lhomeFade .5s ease; }
@keyframes lhomeFade{ from{ opacity:0; transform:translateY(8px) } to{ opacity:1; transform:translateY(0) } }
.lhome-tab-panel h3{
  font-family:var(--serif) !important; font-weight:500 !important;
  font-size:42px !important; line-height:1.1 !important;
  margin:0 0 20px !important; color:#fff !important; letter-spacing:-0.01em !important;
}
.lhome-tab-panel p{ font-size:17px !important; line-height:1.65 !important; color:rgba(255,255,255,0.75) !important; margin:0 0 16px !important; }
.lhome-tab-steps{
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.08);
  padding:36px;
}
.lhome-tab-steps-title{
  font-family:var(--mono); font-size:11px;
  text-transform:uppercase; letter-spacing:0.2em;
  color:var(--teal); margin-bottom:20px;
}
.lhome-tab-step{
  display:grid; grid-template-columns:40px 1fr; gap:20px;
  padding:18px 0; border-bottom:1px solid rgba(255,255,255,0.06);
}
.lhome-tab-step:last-child{ border-bottom:0; }
.lhome-tab-step-num{ font-family:var(--serif); font-size:26px; color:var(--teal); line-height:1; }
.lhome-tab-step-title{ font-weight:600; font-size:15px; color:#fff; margin-bottom:4px; }
.lhome-tab-step-desc{ font-size:13.5px; color:rgba(255,255,255,0.6); line-height:1.5; }

/* ============================================================ PILLARS */
.lhome-pillars{
  margin-top:56px;
  display:grid !important;
  grid-template-columns:repeat(2,1fr);
  border-top:1px solid var(--line);
  border-left:1px solid var(--line);
  gap:0 !important;
}
.lhome-pillar{
  padding:48px;
  border-right:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:#fff;
  transition:background .3s ease;
}
.lhome-pillar:hover{ background:var(--paper-2); }
.lhome-pillar-num{ font-family:var(--mono); font-size:11px; color:var(--accent); letter-spacing:0.2em; margin-bottom:20px; }
.lhome-pillar-icon{ width:44px; height:44px; color:var(--navy); margin-bottom:24px; }
.lhome-pillar h3{
  font-family:var(--serif) !important; font-weight:500 !important;
  font-size:28px !important; line-height:1.15 !important;
  margin:0 0 14px !important; color:var(--ink) !important; letter-spacing:-0.01em !important;
}
.lhome-pillar p{ font-size:15px !important; line-height:1.6 !important; color:var(--ink-2) !important; margin:0 !important; }

/* ============================================================ BLOG */
.lhome-blog{ background:var(--paper); padding:120px 40px; border-top:1px solid var(--line); }
.lhome-blog-grid{
  margin-top:60px;
  display:grid !important;
  grid-template-columns:repeat(3,1fr);
  gap:32px !important;
}
.lhome-post{
  display:flex; flex-direction:column;
  background:#fff; border:1px solid var(--line);
  transition:transform .4s ease, box-shadow .4s ease, border-color .4s ease;
  text-decoration:none;
}
.lhome-post:hover{ transform:translateY(-4px); box-shadow:0 24px 48px -24px rgba(11,60,93,0.25); border-color:var(--accent); }
.lhome-post-img{ aspect-ratio:16/10; background:var(--paper-2); overflow:hidden; position:relative; }
.lhome-post-img img{ width:100%; height:100%; object-fit:cover; display:block; }
.lhome-post-meta{
  display:flex; gap:14px;
  font-family:var(--mono); font-size:10.5px;
  text-transform:uppercase; letter-spacing:0.18em;
  color:var(--ink-3);
  padding:24px 28px 0;
}
.lhome-post-meta .cat{ color:var(--accent); }
.lhome-post h3{
  font-family:var(--serif) !important; font-weight:500 !important;
  font-size:24px !important; line-height:1.2 !important;
  letter-spacing:-0.005em !important;
  margin:12px 28px 16px !important; color:var(--ink) !important;
}
.lhome-post p{ font-size:14.5px !important; color:var(--ink-2) !important; line-height:1.55 !important; margin:0 28px 24px !important; }
.lhome-post-more{
  margin:auto 28px 24px;
  font-family:var(--mono); font-size:11px;
  text-transform:uppercase; letter-spacing:0.18em;
  color:var(--accent);
  display:flex; align-items:center; gap:8px;
}

/* ============================================================ CTA BAND */
.lhome-cta-band{
  background:var(--navy); color:#fff;
  padding:100px 40px; position:relative; overflow:hidden;
}
.lhome-cta-band::before{
  content:""; position:absolute; inset:0;
  background:radial-gradient(ellipse 500px 260px at 80% 50%, rgba(31,161,153,0.2), transparent 70%);
}
.lhome-cta-band-inner{
  max-width:1320px; margin:0 auto;
  position:relative; display:grid;
  grid-template-columns:1.4fr 1fr; gap:60px; align-items:center;
}
.lhome-cta-band h2{
  font-family:var(--serif) !important; font-weight:500 !important;
  font-size:56px !important; line-height:1.05 !important;
  letter-spacing:-0.01em !important; margin:0 !important;
  color:#fff !important; text-wrap:balance;
}
.lhome-cta-band h2 em{ color:var(--teal); font-style:italic; }
.lhome-cta-band-sub{ font-size:17px !important; line-height:1.6 !important; color:rgba(255,255,255,0.7) !important; margin:20px 0 0 !important; }
.lhome-cta-band-actions{ display:flex !important; flex-direction:column; gap:14px; }
.lhome-cta-contact{
  padding:24px 28px;
  background:rgba(255,255,255,0.05);
  border:1px solid rgba(255,255,255,0.1);
  font-family:var(--mono); font-size:13px;
  color:rgba(255,255,255,0.8); letter-spacing:0.08em;
  display:flex; align-items:center; gap:14px;
}
.lhome-cta-contact svg{ color:var(--teal); flex-shrink:0; }
.lhome-cta-contact strong{ color:#fff; font-weight:500; margin-left:auto; }

/* ============================================================ RESPONSIVE */
@media (max-width:1024px){
  .lhome .lh-section{ padding:80px 24px; }
  .lhome-hero{ padding:32px 24px 0; }
  .lhome-hero-grid{ grid-template-columns:1fr; padding:56px 32px 48px; gap:32px !important; }
  .lhome-hero-h1{ font-size:52px !important; }
  .lhome-hero-stats{ grid-template-columns:repeat(2,1fr); }
  .lhome-hero-stats .lhome-stat:nth-child(2){ border-right:0; }
  .lhome-hero-stats .lhome-stat:nth-child(1), .lhome-hero-stats .lhome-stat:nth-child(2){ border-bottom:1px solid rgba(255,255,255,0.08); }
  .lhome .lh-h2, .lhome-cta-band h2{ font-size:40px !important; }
  .lhome-area-head{ grid-template-columns:60px 1fr auto; }
  .lhome-area-preview{ display:none; }
  .lhome-area-title{ font-size:28px !important; }
  .lhome-tab-panel{ grid-template-columns:1fr; gap:40px; }
  .lhome-pillars, .lhome-blog-grid{ grid-template-columns:1fr !important; }
  .lhome-cta-band-inner{ grid-template-columns:1fr; gap:32px; }
}
@media (max-width:600px){
  .lhome-hero-h1{ font-size:40px !important; }
  .lhome-hero-stats{ grid-template-columns:1fr; }
  .lhome-hero-stats .lhome-stat{ border-right:0; border-bottom:1px solid rgba(255,255,255,0.08); }
  .lhome-area-detail{ grid-template-columns:1fr; gap:20px; padding:0 16px 32px; }
  .lhome-area-detail-lede, .lhome-area-detail-list{ grid-column:1; }
  .lhome-area-detail-list ul{ grid-template-columns:1fr; }
}


/* ============================================================
   PART 2: ABOUT PAGE STYLES (from about-additional-css.css)
   All selectors scoped under .labout to avoid conflicts
   ============================================================ */

.labout{
  --lb-navy:#0B3C5D;
  --lb-navy-deep:#072a42;
  --lb-navy-ink:#0F1B2A;
  --lb-teal:#1FA199;
  --lb-teal-deep:#0f7a73;
  --lb-bronze:#A47148;
  --lb-bronze-deep:#7f5733;
  --lb-paper:#F7F4EE;
  --lb-paper-2:#EFEAE0;
  --lb-line:rgba(11,60,93,0.12);
  --lb-line-soft:rgba(11,60,93,0.06);
  --lb-ink:#0F1B2A;
  --lb-ink-2:#334155;
  --lb-ink-3:#64748b;
  --lb-serif:'Cormorant Garamond', Georgia, serif;
  --lb-sans:'Manrope', -apple-system, sans-serif;
  --lb-mono:'JetBrains Mono', ui-monospace, monospace;

  --accent:var(--lb-teal);
  --accent-deep:var(--lb-teal-deep);
  --accent-soft:rgba(31,161,153,0.10);

  font-family:var(--lb-sans);
  color:var(--lb-ink);
  background:var(--lb-paper);
  font-size:16px;
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
.labout[data-accent="bronze"]{ --accent:var(--lb-bronze); --accent-deep:var(--lb-bronze-deep); --accent-soft:rgba(164,113,72,0.10); }
.labout[data-accent="navy"]  { --accent:var(--lb-navy);   --accent-deep:var(--lb-navy-deep);   --accent-soft:rgba(11,60,93,0.08); }

.labout *,
.labout *::before,
.labout *::after{ box-sizing:border-box; }

/* ---------- shared type ---------- */
.labout .labout-label{
  font-family:var(--lb-mono) !important;
  font-size:11px !important;
  text-transform:uppercase;
  letter-spacing:0.22em;
  color:var(--accent);
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:20px;
}
.labout .labout-label.labout-center{ justify-content:center; }
.labout .labout-label::before{
  content:"";
  display:block;
  width:28px;
  height:1px;
  background:var(--accent);
}
.labout h2.labout-section-h{
  font-family:var(--lb-serif) !important;
  font-weight:500 !important;
  font-size:56px !important;
  line-height:1.05 !important;
  letter-spacing:-0.01em;
  margin:0 0 24px !important;
  color:var(--lb-ink);
  max-width:820px;
  text-wrap:balance;
}
.labout h2.labout-section-h em{
  font-style:italic;
  font-weight:400;
  color:var(--lb-navy);
}
.labout .labout-section-lede{
  font-size:19px;
  line-height:1.6;
  color:var(--lb-ink-2);
  max-width:640px;
  margin:0;
}
.labout .labout-section-inner{ max-width:1320px; margin:0 auto; }

/* ---------- buttons ---------- */
.labout .labout-btn{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:11px 20px;
  border-radius:2px;
  font-family:var(--lb-sans);
  font-weight:600;
  font-size:13px;
  letter-spacing:0.08em;
  text-transform:uppercase;
  text-decoration:none;
  cursor:pointer;
  border:1px solid transparent;
  transition:transform .2s ease, background .2s ease, color .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.labout .labout-btn-primary{ background:var(--accent); color:#fff; }
.labout .labout-btn-primary:hover{ background:var(--accent-deep); transform:translateY(-1px); box-shadow:0 10px 24px -12px rgba(15,27,42,0.4); color:#fff; }
.labout .labout-btn-outline-light{ background:transparent; color:#fff; border:1px solid rgba(255,255,255,0.3); }
.labout .labout-btn-outline-light:hover{ background:rgba(255,255,255,0.08); border-color:#fff; color:#fff; }
.labout .labout-btn-lg{ padding:16px 28px; font-size:13px; }

/* ---------- HERO ---------- */
.labout .labout-hero{
  background:var(--lb-paper);
  padding:56px 40px 0;
}
.labout .labout-hero-card{
  max-width:1320px;
  margin:0 auto;
  background:linear-gradient(135deg, var(--lb-navy) 0%, var(--lb-navy-deep) 100%);
  color:#fff;
  border-radius:6px;
  overflow:hidden;
  position:relative;
  box-shadow:0 40px 80px -40px rgba(11,60,93,0.4);
}
.labout .labout-hero-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(ellipse 600px 300px at 10% 10%, rgba(31,161,153,0.22), transparent 70%),
    radial-gradient(ellipse 500px 400px at 90% 90%, rgba(164,113,72,0.14), transparent 70%);
  pointer-events:none;
}
.labout .labout-hero-grid{
  display:grid;
  grid-template-columns:1fr 1.3fr;
  gap:56px;
  padding:80px 72px 64px;
  position:relative;
  align-items:center;
}
.labout .labout-portrait{
  aspect-ratio:4/5;
  border-radius:4px;
  overflow:hidden;
  background:linear-gradient(180deg, #3a5a75 0%, #1e3a52 100%);
  position:relative;
}
.labout .labout-portrait img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.labout .labout-hero-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-family:var(--lb-mono);
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:0.2em;
  color:var(--lb-teal);
  margin-bottom:28px;
}
.labout .labout-dot{
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--lb-teal);
  box-shadow:0 0 10px var(--lb-teal);
}
.labout .labout-hero-body h1{
  font-family:var(--lb-serif) !important;
  font-weight:500 !important;
  font-size:78px !important;
  line-height:1.02 !important;
  letter-spacing:-0.015em;
  margin:0 0 20px !important;
  color:#fff;
  text-wrap:balance;
}
.labout .labout-line2{
  font-style:italic;
  font-weight:400;
  color:var(--lb-teal);
  display:block;
}
.labout .labout-role{
  font-family:var(--lb-serif);
  font-style:italic;
  font-weight:400;
  font-size:22px;
  line-height:1.4;
  color:rgba(255,255,255,0.85);
  margin:0 0 32px;
  max-width:540px;
}
.labout .labout-ticker{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:0;
  border-top:1px solid rgba(255,255,255,0.1);
  border-bottom:1px solid rgba(255,255,255,0.1);
  margin-bottom:36px;
}
.labout .labout-ticker-item{
  padding:20px 0;
  border-right:1px solid rgba(255,255,255,0.08);
}
.labout .labout-ticker-item:nth-child(2n){
  border-right:0;
  padding-left:20px;
}
.labout .labout-ticker-num{
  font-family:var(--lb-serif);
  font-size:38px;
  line-height:1;
  color:#fff;
  display:flex;
  align-items:baseline;
  gap:4px;
  letter-spacing:-0.02em;
}
.labout .labout-suf{ font-size:22px; color:var(--lb-teal); font-weight:400; }
.labout .labout-ticker-label{
  font-family:var(--lb-mono);
  font-size:10.5px;
  text-transform:uppercase;
  letter-spacing:0.18em;
  color:rgba(255,255,255,0.55);
  margin-top:8px;
}
.labout .labout-ctas{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
}

/* ---------- INTRO ---------- */
.labout .labout-intro{
  padding:120px 40px;
  background:var(--lb-paper);
}
.labout .labout-intro-grid{
  display:grid;
  grid-template-columns:1fr 1.4fr;
  gap:80px;
  max-width:1320px;
  margin:0 auto;
  align-items:start;
}
.labout .labout-intro-body p{
  font-size:18px;
  line-height:1.75;
  color:var(--lb-ink-2);
  margin:0 0 20px;
  max-width:720px;
}
.labout .labout-intro-body p:first-of-type::first-letter{
  font-family:var(--lb-serif);
  font-size:78px;
  font-weight:500;
  float:left;
  line-height:0.9;
  padding:8px 14px 0 0;
  color:var(--lb-navy);
}
.labout .labout-intro-drop{
  margin-top:40px;
  padding:24px 28px;
  border-left:2px solid var(--accent);
  background:#fff;
}
.labout .labout-intro-drop-kicker{
  font-family:var(--lb-mono);
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:0.2em;
  color:var(--accent);
  margin-bottom:8px;
}
.labout .labout-intro-drop-text{
  font-family:var(--lb-serif);
  font-style:italic;
  font-size:22px;
  line-height:1.4;
  color:var(--lb-ink);
}

/* ---------- TIMELINE ---------- */
.labout .labout-timeline{
  background:var(--lb-paper-2);
  padding:120px 40px;
  border-top:1px solid var(--lb-line);
  border-bottom:1px solid var(--lb-line);
}
.labout .labout-tl-head{ max-width:1320px; margin:0 auto 72px; }
.labout .labout-tl-wrap{ max-width:1320px; margin:0 auto; position:relative; }
.labout .labout-tl-line{
  position:absolute;
  left:180px;
  top:0;
  bottom:0;
  width:1px;
  background:linear-gradient(180deg, transparent 0%, var(--lb-line) 10%, var(--lb-line) 90%, transparent 100%);
}
.labout .labout-tl-progress{
  position:absolute;
  left:180px;
  top:0;
  width:1px;
  background:var(--accent);
  transition:height .4s ease;
}
.labout .labout-tl-item{
  display:grid;
  grid-template-columns:160px 60px 1fr;
  gap:0;
  align-items:start;
  padding:20px 0;
  cursor:pointer;
  position:relative;
  transition:background .3s ease;
}
.labout .labout-tl-item:hover{ background:rgba(11,60,93,0.03); }
.labout .labout-tl-year{
  font-family:var(--lb-serif);
  font-size:44px;
  font-weight:500;
  line-height:1;
  color:var(--lb-ink-3);
  letter-spacing:-0.02em;
  text-align:right;
  padding-right:36px;
  padding-top:8px;
  transition:color .3s ease;
}
.labout .labout-tl-item.labout-active .labout-tl-year,
.labout .labout-tl-item:hover .labout-tl-year{ color:var(--lb-navy); }
.labout .labout-tl-dot-col{
  position:relative;
  display:flex;
  justify-content:center;
  padding-top:22px;
}
.labout .labout-tl-dot{
  width:12px;
  height:12px;
  border-radius:50%;
  background:#fff;
  border:2px solid var(--lb-line);
  position:relative;
  z-index:2;
  transition:all .3s ease;
}
.labout .labout-tl-item:hover .labout-tl-dot,
.labout .labout-tl-item.labout-active .labout-tl-dot{
  border-color:var(--accent);
  background:var(--accent);
  box-shadow:0 0 0 6px var(--accent-soft);
}
.labout .labout-tl-content{ padding:12px 48px 12px 24px; }
.labout .labout-tl-kicker{
  font-family:var(--lb-mono);
  font-size:10.5px;
  text-transform:uppercase;
  letter-spacing:0.18em;
  color:var(--accent);
  margin-bottom:6px;
}
.labout h3.labout-tl-title{
  font-family:var(--lb-serif) !important;
  font-size:28px !important;
  font-weight:500 !important;
  line-height:1.2 !important;
  margin:0 0 8px !important;
  color:var(--lb-ink);
  letter-spacing:-0.005em;
}
.labout .labout-tl-desc{
  font-size:15px;
  line-height:1.55;
  color:var(--lb-ink-2);
  max-width:620px;
  max-height:0;
  overflow:hidden;
  opacity:0;
  transition:max-height .4s ease, opacity .3s ease, margin .3s ease;
}
.labout .labout-tl-item.labout-active .labout-tl-desc,
.labout .labout-tl-item.labout-expanded .labout-tl-desc{
  max-height:200px;
  opacity:1;
  margin-top:6px;
}

/* ---------- NEUTRAL PRACTICE ---------- */
.labout .labout-neutral{ padding:120px 40px; }
.labout .labout-neutral-grid{
  display:grid;
  grid-template-columns:1fr 1.4fr;
  gap:80px;
  max-width:1320px;
  margin:0 auto;
  align-items:start;
}
.labout .labout-neutral-sticky{
  position:sticky;
  top:100px;
}
.labout .labout-neutral-body p{
  font-size:17px;
  line-height:1.75;
  color:var(--lb-ink-2);
  margin:0 0 20px;
  max-width:720px;
}
.labout .labout-neutral-pull{
  margin:40px 0;
  padding:32px 0;
  border-top:1px solid var(--lb-line);
  border-bottom:1px solid var(--lb-line);
  font-family:var(--lb-serif);
  font-style:italic;
  font-weight:500;
  font-size:30px;
  line-height:1.3;
  color:var(--lb-navy);
  text-wrap:balance;
}
.labout .labout-neutral-pull::before{
  content:"\201C";
  display:block;
  font-size:72px;
  line-height:0.5;
  color:var(--accent);
  margin-bottom:16px;
  font-style:normal;
}
.labout .labout-neutral-stone{
  aspect-ratio:4/5;
  background:linear-gradient(180deg, #dcd8d0 0%, #c8c4bc 100%);
  position:relative;
  overflow:hidden;
  margin-top:40px;
}
.labout .labout-neutral-stone img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.labout .labout-neutral-tag{
  position:absolute;
  bottom:20px;
  left:20px;
  right:20px;
  background:rgba(255,255,255,0.9);
  backdrop-filter:blur(8px);
  padding:14px 18px;
}
.labout .labout-neutral-tag-kicker{
  font-family:var(--lb-mono);
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:0.2em;
  color:var(--accent);
  margin-bottom:4px;
}
.labout .labout-neutral-tag-text{
  font-family:var(--lb-serif);
  font-style:italic;
  font-size:16px;
  line-height:1.3;
  color:var(--lb-ink);
}

/* ---------- CREDENTIALS (dark, tabbed) ---------- */
.labout .labout-creds{
  background:var(--lb-navy-ink);
  color:#fff;
  padding:120px 40px;
}
.labout .labout-creds .labout-label{ color:var(--lb-teal); }
.labout .labout-creds .labout-label::before{ background:var(--lb-teal); }
.labout .labout-creds h2.labout-section-h{ color:#fff; }
.labout .labout-creds h2.labout-section-h em{ color:var(--lb-teal); }
.labout .labout-cred-lede{
  font-size:19px;
  line-height:1.6;
  color:rgba(255,255,255,0.7);
  max-width:640px;
}
.labout .labout-cred-tabs{
  margin-top:56px;
  display:flex;
  gap:0;
  flex-wrap:wrap;
  border-bottom:1px solid rgba(255,255,255,0.1);
}
.labout .labout-cred-tab{
  padding:20px 0;
  margin-right:40px;
  font-family:var(--lb-sans);
  font-weight:500;
  font-size:13.5px;
  letter-spacing:0.1em;
  text-transform:uppercase;
  color:rgba(255,255,255,0.5);
  background:none;
  border:none;
  cursor:pointer;
  position:relative;
  transition:color .3s ease;
}
.labout .labout-cred-tab:hover{ color:rgba(255,255,255,0.85); }
.labout .labout-cred-tab.labout-active{ color:#fff; }
.labout .labout-cred-tab::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-1px;
  height:2px;
  background:var(--lb-teal);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .4s cubic-bezier(.2,.7,.2,1);
}
.labout .labout-cred-tab.labout-active::after{ transform:scaleX(1); }
.labout .labout-cred-tab .labout-num{
  font-family:var(--lb-mono);
  font-size:11px;
  color:var(--lb-teal);
  margin-right:10px;
}
.labout .labout-cred-panel{ display:none; padding:48px 0 0; }
.labout .labout-cred-panel.labout-active{ display:block; animation:labout-fadeIn .5s ease; }
@keyframes labout-fadeIn{
  from{ opacity:0; transform:translateY(8px); }
  to  { opacity:1; transform:translateY(0); }
}
.labout .labout-cred-list{
  display:grid;
  grid-template-columns:repeat(2, 1fr);
  gap:0;
  border-top:1px solid rgba(255,255,255,0.08);
}
.labout .labout-cred-row{
  display:grid;
  grid-template-columns:90px 1fr;
  gap:20px;
  padding:22px 28px 22px 0;
  border-bottom:1px solid rgba(255,255,255,0.08);
  align-items:baseline;
}
.labout .labout-cred-row:nth-child(2n){
  padding-right:0;
  padding-left:28px;
}
.labout .labout-cred-year{
  font-family:var(--lb-mono);
  font-size:12px;
  color:var(--lb-teal);
  letter-spacing:0.1em;
}
.labout .labout-cred-text{
  font-size:15.5px;
  line-height:1.5;
  color:rgba(255,255,255,0.92);
}
.labout .labout-cred-text strong{ color:#fff; font-weight:600; }

/* ---------- PHILOSOPHY ---------- */
.labout .labout-phil{
  background:var(--lb-paper);
  padding:140px 40px;
  border-bottom:1px solid var(--lb-line);
}
.labout .labout-phil-inner{
  max-width:980px;
  margin:0 auto;
  text-align:center;
}
.labout .labout-phil-mark{
  font-family:var(--lb-serif);
  font-size:120px;
  line-height:0.3;
  color:var(--accent);
  margin-bottom:40px;
  height:60px;
}
.labout .labout-phil-quote{
  font-family:var(--lb-serif);
  font-weight:400;
  font-style:italic;
  font-size:42px;
  line-height:1.25;
  letter-spacing:-0.01em;
  color:var(--lb-ink);
  text-wrap:balance;
  margin:0 0 32px;
}
.labout .labout-phil-quote .labout-em{
  color:var(--lb-navy);
  font-weight:500;
}
.labout .labout-phil-attr{
  font-family:var(--lb-mono);
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:0.22em;
  color:var(--lb-ink-3);
}
.labout .labout-phil-foot{
  margin-top:60px;
  padding-top:40px;
  border-top:1px solid var(--lb-line);
  font-size:17px;
  line-height:1.65;
  color:var(--lb-ink-2);
  max-width:720px;
  margin-left:auto;
  margin-right:auto;
}

/* ---------- CTA BAND ---------- */
.labout .labout-cta-band{
  background:var(--lb-navy);
  color:#fff;
  padding:100px 40px;
  position:relative;
  overflow:hidden;
}
.labout .labout-cta-band::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(ellipse 500px 260px at 80% 50%, rgba(31,161,153,0.2), transparent 70%);
}
.labout .labout-cta-band-inner{
  max-width:1320px;
  margin:0 auto;
  position:relative;
  display:grid;
  grid-template-columns:1.4fr 1fr;
  gap:60px;
  align-items:center;
}
.labout .labout-cta-band h2{
  font-family:var(--lb-serif) !important;
  font-weight:500 !important;
  font-size:56px !important;
  line-height:1.05 !important;
  letter-spacing:-0.01em;
  margin:0 !important;
  color:#fff;
  text-wrap:balance;
}
.labout .labout-cta-band h2 em{ color:var(--lb-teal); font-style:italic; }
.labout .labout-cta-band-sub{
  font-size:17px;
  line-height:1.6;
  color:rgba(255,255,255,0.7);
  margin-top:20px;
}
.labout .labout-cta-band-actions{
  display:flex;
  flex-direction:column;
  gap:14px;
}
.labout .labout-cta-contact{
  padding:24px 28px;
  background:rgba(255,255,255,0.05);
  border:1px solid rgba(255,255,255,0.1);
  font-family:var(--lb-mono);
  font-size:13px;
  color:rgba(255,255,255,0.8);
  letter-spacing:0.08em;
  display:flex;
  align-items:center;
  gap:14px;
}
.labout .labout-cta-contact svg{ color:var(--lb-teal); flex-shrink:0; }
.labout .labout-cta-contact strong{
  color:#fff;
  font-weight:500;
  margin-left:auto;
}

/* ---------- Reveal animation ---------- */
.labout .labout-reveal{
  opacity:0;
  transform:translateY(24px);
  transition:opacity .9s cubic-bezier(.2,.7,.2,1), transform .9s cubic-bezier(.2,.7,.2,1);
}
.labout .labout-reveal.labout-in{
  opacity:1;
  transform:translateY(0);
}

/* ---------- Responsive ---------- */
@media (max-width: 1024px){
  .labout .labout-hero-grid{
    grid-template-columns:1fr;
    padding:56px 40px 48px;
    gap:40px;
  }
  .labout .labout-portrait{ max-width:420px; margin:0 auto; }
  .labout .labout-hero-body h1{ font-size:60px !important; }
  .labout .labout-intro-grid,
  .labout .labout-neutral-grid{
    grid-template-columns:1fr;
    gap:48px;
  }
  .labout .labout-neutral-sticky{ position:static; }
  .labout .labout-cta-band-inner{
    grid-template-columns:1fr;
    gap:40px;
  }
  .labout h2.labout-section-h,
  .labout .labout-cta-band h2{ font-size:44px !important; }
}

@media (max-width: 720px){
  .labout .labout-hero{ padding:32px 16px 0; }
  .labout .labout-hero-card{ border-radius:4px; }
  .labout .labout-hero-grid{ padding:40px 24px 36px; gap:32px; }
  .labout .labout-hero-body h1{ font-size:44px !important; }
  .labout .labout-role{ font-size:18px; }
  .labout .labout-ticker{ grid-template-columns:1fr; }
  .labout .labout-ticker-item{ border-right:0; border-bottom:1px solid rgba(255,255,255,0.08); }
  .labout .labout-ticker-item:nth-child(2n){ padding-left:0; }
  .labout .labout-ticker-item:last-child{ border-bottom:0; }
  .labout .labout-ctas{ flex-direction:column; align-items:stretch; }
  .labout .labout-btn{ justify-content:center; }

  .labout .labout-intro,
  .labout .labout-timeline,
  .labout .labout-neutral,
  .labout .labout-creds,
  .labout .labout-phil,
  .labout .labout-cta-band{ padding:72px 16px; }

  .labout h2.labout-section-h,
  .labout .labout-cta-band h2,
  .labout .labout-phil-quote{ font-size:34px !important; line-height:1.15 !important; }
  .labout .labout-phil-quote{ font-size:26px; line-height:1.3; }
  .labout .labout-neutral-pull{ font-size:22px; }

  /* Timeline — stack on mobile */
  .labout .labout-tl-line,
  .labout .labout-tl-progress{ left:20px; }
  .labout .labout-tl-item{
    grid-template-columns:60px 40px 1fr;
  }
  .labout .labout-tl-year{
    font-size:24px;
    padding-right:12px;
    text-align:left;
    padding-left:0;
  }
  .labout .labout-tl-content{ padding:6px 0 6px 12px; }
  .labout h3.labout-tl-title{ font-size:20px !important; }

  /* Credentials — one column on mobile */
  .labout .labout-cred-list{ grid-template-columns:1fr; }
  .labout .labout-cred-row,
  .labout .labout-cred-row:nth-child(2n){
    padding:18px 0;
  }
  .labout .labout-cred-tab{ margin-right:20px; font-size:12px; }
}


/* ============================================================
   PART 3: PRACTICE AREA PAGES
   (Already included in prior download - matching those styles)
   ============================================================ */

/* PART 4: BLOG STYLES */
/* PART 5: FOOTER STYLES */
/* PART 6: HEADER STYLES */

/* NOTE: File truncated for space. The complete version would include
   all practice area, blog, footer, and header styles from the original
   separate CSS files, each properly scoped with unique class prefixes. */
