/* Homepage-specific visual refinements. */

/* The WhatsApp glyph is optically left-heavy inside its green circle. */
.nav__social-icon--wa img {
  transform: translateX(1px);
}

/* Keep the sections after the service directions visually connected. */
.proof,
.process,
.lead-form,
.faq {
  padding-block: clamp(60px, 7vw, 108px);
}

.proof__grid {
  margin-top: clamp(42px, 4.5vw, 64px);
}

.process__top {
  margin-bottom: clamp(42px, 5vw, 72px);
}

.lead-form__head {
  margin-bottom: clamp(36px, 4.5vw, 60px);
}

.faq__head {
  margin-bottom: clamp(36px, 4.5vw, 60px);
}

@media (max-width: 640px) {
  .proof,
  .process,
  .lead-form,
  .faq {
    padding-block: 56px;
  }

  .proof__grid,
  .process__top,
  .lead-form__head,
  .faq__head {
    margin-bottom: 36px;
  }

  .proof__grid {
    margin-top: 36px;
  }
}

/* Legal practice homepage draft. */
.nav--home {
  background: rgba(248, 247, 243, .96);
  backdrop-filter: blur(14px);
}

.nav--home .nav__inner { min-height: 64px; }
.nav--home .brand__descriptor { max-width: 190px; }
.nav--home .nav__phone { white-space: nowrap; }
.nav--home .nav__links { gap: 16px; }

@media (min-width: 981px) and (max-width: 1480px) {
  .nav--home .brand__descriptor { display: none; }
  .nav--home .nav__links { gap: 12px; }
}

.legal-home { --lh-ink: #14251f; --lh-muted: #65716b; --lh-paper: #f5f4ef; }
.legal-home > section[id] { scroll-margin-top: 64px; }
.lh-hero {
  position: relative;
  overflow: hidden;
  padding: clamp(64px, 8vw, 112px) 0 36px;
  color: #f8f7f1;
  background: #14251f;
}
.lh-hero::after {
  content: "";
  position: absolute;
  width: min(54vw, 720px);
  aspect-ratio: 1;
  right: -9%;
  top: 7%;
  border: 1px solid rgba(242, 141, 65, .3);
  border-radius: 50%;
  box-shadow: 0 0 0 54px rgba(242,141,65,.035), 0 0 0 108px rgba(242,141,65,.025);
  pointer-events: none;
}
.lh-hero .shell { position: relative; z-index: 1; }
.lh-hero .eyebrow { color: #c1c8c1; }
.lh-hero h1 {
  max-width: 1100px;
  margin: 24px 0 40px;
  font-size: clamp(48px, 6.5vw, 96px);
  line-height: .91;
  font-weight: 500;
  letter-spacing: -.065em;
}
.lh-hero h1 span { color: #f28d41; }
.lh-hero__bottom { display: flex; justify-content: space-between; align-items: end; gap: 36px; }
.lh-hero__bottom > p { max-width: 620px; margin: 0; color: #d2d7d1; font-size: clamp(16px, 1.5vw, 20px); line-height: 1.45; }
.lh-hero__actions { display: flex; align-items: center; gap: 26px; flex: 0 0 auto; }
.lh-phone { color: white; font-weight: 700; white-space: nowrap; }
.lh-hero__index { margin-top: 80px; border-top: 1px solid rgba(255,255,255,.2); padding-top: 16px; color: rgba(255,255,255,.55); font-size: 11px; letter-spacing: .14em; }

@media (min-width: 561px) and (max-height: 760px) {
  .lh-hero { padding-top: 48px; }
  .lh-hero h1 { margin: 18px 0 30px; font-size: clamp(42px, 5.5vw, 76px); }
  .lh-hero__index { margin-top: 42px; }
}

.lh-stats { padding: 38px 0 46px; background: #e9e8e1; }
.lh-stats__grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.lh-stats article { min-height: 126px; padding: 12px 24px; border-left: 1px solid rgba(20,37,31,.18); display: flex; flex-direction: column; justify-content: space-between; gap: 20px; }
.lh-stats article:first-child { border-left: 0; padding-left: 0; }
.lh-stats strong { color: #14251f; font-size: clamp(38px, 4vw, 58px); line-height: 1; font-weight: 500; letter-spacing: -.06em; }
.lh-stats article span { max-width: 245px; color: #59635d; font-size: 14px; line-height: 1.4; }
.lh-services,
.lh-experience,
.lh-process {
  padding-block: clamp(64px, 8vw, 116px);
}
.lh-services .section__head,
.lh-experience .section__head,
.lh-process .section__head { padding-top: 0; }
.lh-services { background: var(--lh-paper); }
.lh-services__grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); margin-top: 54px; border-top: 1px solid rgba(20,37,31,.2); }
.lh-services__grid article { min-height: 220px; padding: 25px 30px 28px 0; border-bottom: 1px solid rgba(20,37,31,.2); }
.lh-services__grid article:nth-child(odd) { border-right: 1px solid rgba(20,37,31,.2); }
.lh-services__grid article:nth-child(even) { padding-left: 30px; }
.lh-services__grid article > span, .lh-steps article > span { color: #be6428; font-size: 12px; letter-spacing: .08em; }
.lh-services__grid h3, .lh-experience h3, .lh-steps h3 { margin: 24px 0 12px; color: var(--lh-ink); font-size: clamp(22px, 2.4vw, 31px); font-weight: 500; letter-spacing: -.04em; }
.lh-services__grid p, .lh-experience p, .lh-steps p { max-width: 560px; margin: 0; color: var(--lh-muted); font-size: 16px; line-height: 1.6; }
.lh-experience { background: #ebeae4; }
.lh-experience__grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); column-gap: 40px; row-gap: 36px; margin-top: 50px; }
.lh-experience__grid article { padding-top: 20px; border-top: 1px solid rgba(20,37,31,.24); }
.lh-experience__grid h3 { margin-top: 0; }
.lh-experience__wide { grid-column: 1 / -1; }
.lh-cases { padding-block: clamp(64px, 8vw, 116px); background: #14251f; color: #f8f7f1; }
.lh-cases .section__head { padding-top: 0; }
.lh-cases .section__index, .lh-cases .section__intro { color: #b7c3ba; }
.lh-cases .section__title { color: #f8f7f1; }
.lh-cases__bottom { display: flex; justify-content: space-between; align-items: end; gap: 32px; margin-top: 58px; padding-top: 28px; border-top: 1px solid rgba(255,255,255,.26); }
.lh-cases__bottom p { max-width: 580px; margin: 0; color: #c7d0c9; font-size: 17px; line-height: 1.55; }
.lh-cases__link { flex: 0 0 auto; color: #f28d41; font-size: 19px; font-weight: 600; }
.lh-cases__link span { margin-left: 18px; }
.lh-cases__link:hover, .lh-cases__link:focus-visible { color: #fff; }
.lh-process { background: var(--lh-paper); }
.lh-steps { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); margin-top: 52px; border-top: 1px solid rgba(20,37,31,.22); }
.lh-steps article { padding: 22px 24px 0 0; }
.lh-steps article + article { padding-left: 24px; border-left: 1px solid rgba(20,37,31,.22); }
.lh-steps h3 { margin-top: 34px; }
.lh-contact { padding-block: clamp(72px, 9vw, 130px); }
.lh-contact .lead-form__fields { grid-template-columns: 1fr 1fr; }
.lh-contact .lead-form__field--wide { grid-column: 1 / -1; }
.lh-contact .lead-form__field textarea { min-height: 110px; }
.lh-extra { padding-block: clamp(64px, 8vw, 116px); background: #e9e8e1; }
.lh-extra .section__head { padding-top: 0; margin-bottom: clamp(48px, 6vw, 80px); }
.lh-extra__group { display: grid; grid-template-columns: 180px minmax(0, 1fr); gap: 36px; padding: 32px 0 42px; border-top: 1px solid rgba(20,37,31,.22); }
.lh-extra__group h3 { margin: 0; color: var(--lh-ink); font-size: clamp(24px, 2.7vw, 36px); line-height: 1.08; font-weight: 500; letter-spacing: -.04em; }
.lh-extra__group ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 36px; margin: 0; padding: 0; list-style: none; }
.lh-extra__group li { min-width: 0; border-bottom: 1px solid rgba(20,37,31,.18); }
.lh-extra__group a { display: flex; align-items: baseline; justify-content: space-between; gap: 18px; min-height: 62px; padding: 16px 0; color: var(--lh-ink); font-size: 17px; line-height: 1.35; transition: color .2s ease, padding-left .2s ease; }
.lh-extra__group a:hover, .lh-extra__group a:focus-visible { color: #b85d27; padding-left: 6px; }
.lh-extra__group a span { flex: 0 0 auto; color: #b85d27; }
.cases-page { background: #f5f4ef; }
.cases-hero { padding: clamp(76px, 10vw, 140px) 0 clamp(58px, 7vw, 100px); color: #f8f7f1; background: #14251f; }
.cases-hero .eyebrow { color: #b7c3ba; }
.cases-hero h1 { max-width: 1000px; margin: 25px 0; font-size: clamp(58px, 9vw, 128px); line-height: .94; font-weight: 500; letter-spacing: -.065em; }
.cases-hero h1 span { color: #f28d41; }
.cases-hero p:last-child { max-width: 640px; margin: 0; color: #c7d0c9; font-size: clamp(18px, 2vw, 24px); line-height: 1.5; }
.cases-list { padding-block: clamp(60px, 8vw, 112px); }
.cases-list__intro { display: flex; justify-content: space-between; gap: 28px; padding-bottom: 28px; border-bottom: 1px solid rgba(20,37,31,.25); }
.cases-list__intro h2 { margin: 0; font-size: clamp(32px, 5vw, 64px); font-weight: 500; letter-spacing: -.055em; }
.cases-list__intro p { max-width: 450px; margin: 0; color: #65716b; line-height: 1.55; }
.case-card { display: grid; grid-template-columns: 180px minmax(0, 1fr); gap: 36px; padding: 32px 0 40px; border-bottom: 1px solid rgba(20,37,31,.25); }
.case-card__meta { color: #b85d27; font-size: 13px; letter-spacing: .06em; text-transform: uppercase; }
.case-card h3 { margin: 0 0 24px; font-size: clamp(26px, 3vw, 42px); font-weight: 500; letter-spacing: -.04em; }
.case-card dl { display: grid; grid-template-columns: 100px minmax(0,1fr); gap: 14px 22px; margin: 0; line-height: 1.55; }
.case-card dt { color: #65716b; }
.case-card dd { margin: 0; }
.case-card__source { display: inline-block; margin-top: 28px; color: #b85d27; font-weight: 600; }
.cases-empty { max-width: 640px; padding: clamp(52px, 8vw, 110px) 0; }
.cases-empty p { margin: 0; color: #59635d; font-size: clamp(19px, 2vw, 25px); line-height: 1.5; }
.cases-contact { padding: clamp(66px, 9vw, 120px) 0; color: #f8f7f1; background: #14251f; }
.cases-contact h2 { max-width: 800px; margin: 20px 0 30px; font-size: clamp(42px, 6vw, 82px); line-height: 1; font-weight: 500; letter-spacing: -.05em; }
.cases-contact .eyebrow { color: #b7c3ba; }

@media (max-width: 800px) {
  .nav--home .brand__descriptor { display: none; }
  .nav--home .nav__contacts { display: block; }
  .nav--home .nav__actions { gap: 8px; }
  .lh-hero__bottom { align-items: start; flex-direction: column; }
  .lh-stats__grid { grid-template-columns: repeat(2, minmax(0,1fr)); row-gap: 24px; }
  .lh-stats article:nth-child(3) { border-left: 0; padding-left: 0; }
  .lh-steps { grid-template-columns: repeat(2, minmax(0,1fr)); row-gap: 28px; }
  .lh-steps article:nth-child(3) { padding-left: 0; border-left: 0; }
  .lh-extra__group { grid-template-columns: 150px minmax(0, 1fr); gap: 28px; }
  .lh-extra__group ul { grid-template-columns: 1fr; }
  .cases-list__intro { flex-direction: column; }
}
@media (max-width: 560px) {
  .nav--home .nav__inner { min-height: 58px; }
  .nav--home .nav__phone { min-height: 42px; padding: 0 12px; color: white; background: #14251f; border-radius: 2px; font-size: 13px; }
  .nav--home .nav__phone-icon { display: none; }
  .lh-hero { padding-top: 56px; }
  .lh-hero h1 { margin: 22px 0 30px; font-size: clamp(42px, 11vw, 60px); }
  .lh-hero__actions { align-items: start; flex-direction: column; gap: 16px; }
  .lh-hero__index { margin-top: 52px; }
  .lh-services,
  .lh-experience,
  .lh-process { padding-block: 56px; }
  .lh-stats article { padding-inline: 16px; }
  .lh-services__grid { grid-template-columns: 1fr; margin-top: 34px; }
  .lh-services__grid article, .lh-services__grid article:nth-child(even) { min-height: 0; padding: 22px 0 26px; border-right: 0; }
  .lh-experience__grid { grid-template-columns: 1fr; row-gap: 26px; margin-top: 34px; }
  .lh-experience__wide { grid-column: auto; }
  .lh-steps { grid-template-columns: 1fr; margin-top: 34px; }
  .lh-steps article, .lh-steps article + article { padding: 18px 0 0; border-left: 0; }
  .lh-steps h3 { margin: 16px 0 8px; }
  .lh-contact .lead-form__fields { grid-template-columns: 1fr; }
  .lh-contact .lead-form__field--wide { grid-column: auto; }
  .lh-extra { padding-block: 56px; }
  .lh-extra__group { grid-template-columns: 1fr; gap: 20px; padding: 28px 0 36px; }
  .lh-extra__group a { min-height: 56px; font-size: 16px; }
  .lh-cases__bottom { flex-direction: column; align-items: start; margin-top: 38px; }
  .case-card { grid-template-columns: 1fr; gap: 14px; }
  .case-card dl { grid-template-columns: 1fr; gap: 3px; }
  .case-card dd + dt { margin-top: 12px; }
}
