/* =========================================================================
   home.css — Homepage (#2). Loaded globally; scoped under .home-* blocks.
   Reuses shared components (servicegrid/servicecard, process--row, reviews,
   contactline, srv-faq accordion, srv-sechead, btn, tel, panel, navmenu).
   ========================================================================= */
.home-hero .row,.home-areas .row,.home-urgent .row,.home-injury .row,.home-criminal .row,.home-steps .row,.home-reasons .row,.home-reviews .row,.home-cta .row{max-width:var(--container);padding-left:var(--gutter);padding-right:var(--gutter);width:100%}
.home-hero .col,.home-areas .col,.home-urgent .col,.home-injury .col,.home-criminal .col,.home-steps .col,.home-reasons .col,.home-reviews .col,.home-cta .col{padding:0}
.home-hero .col-inner,.home-areas .col-inner,.home-urgent .col-inner,.home-injury .col-inner,.home-criminal .col-inner,.home-steps .col-inner,.home-reasons .col-inner,.home-reviews .col-inner,.home-cta .col-inner{margin:0}
.home-hero__row > .col,.home-injury__row > .col,.home-criminal__row > .col,.home-cta__row > .col{width:auto;max-width:none;flex:none;min-width:0}

/* ------------------------------------------------------------------- Hero */
.home-hero{background:var(--c-cream);position:relative;overflow:hidden}
.home-hero .row{padding-top:74px;padding-bottom:64px}
.home-hero__row{display:grid !important;grid-template-columns:1.15fr .85fr;gap:56px;align-items:center}
.home-hero__title{font-family:var(--f-serif);font-size:50px;line-height:1.12;font-weight:600;letter-spacing:-.01em;margin:0 0 22px;color:var(--c-ink-2);text-wrap:balance}
.home-hero__hl{color:#7a3f18;background:linear-gradient(transparent 62%,rgba(192,138,74,.34) 62%);padding:0 .08em;display:inline-block;white-space:nowrap}
@keyframes fadeWord{0%{opacity:0;transform:translateY(8px)}100%{opacity:1;transform:translateY(0)}}
.home-hero__lead{font-size:18px;line-height:1.65;color:var(--c-body);margin:0 0 32px;max-width:540px}
.home-hero__actions{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:34px}
.home-trust{display:flex;gap:30px;flex-wrap:wrap;padding-top:26px;border-top:1px solid var(--c-cream-line)}
.home-trust__item{display:flex;flex-direction:column;gap:3px}
.home-trust__big{font-family:var(--f-serif);font-size:24px;font-weight:600;color:var(--c-brown)}
.home-trust__label{font-size:13px;color:#6b6256;line-height:1.35;max-width:150px}

/* situation finder (dark card, uses [navmenu]) */
.home-paths{background:var(--c-ink);border-radius:var(--radius);padding:30px;box-shadow:0 24px 60px rgba(36,31,26,.22);display:flex;flex-direction:column;gap:6px}
.home-paths__title{font-family:var(--f-serif);font-size:19px;font-weight:600;color:var(--c-on-dark-strong);display:block}
.home-paths__sub{font-size:13.5px;color:var(--c-on-dark-muted);margin:0 0 12px;line-height:1.5}
.home-paths .navmenu{gap:9px}
.home-paths .navmenu__link{background:var(--c-panel-dark);border:1px solid var(--c-line-dark);border-radius:2px;padding:14px 16px;gap:14px;transition:background .15s ease,border-color .15s ease}
.home-paths .navmenu__link:hover{background:#352f29;border-color:var(--c-brown)}
.home-paths .navmenu__link::before{content:"";width:9px;height:9px;background:var(--c-terra);transform:rotate(45deg);flex:none}
.home-paths .navmenu__text{font-size:14px;color:var(--c-on-dark);line-height:1.4;font-weight:500;flex:1}
.home-paths .navmenu__link::after{content:"→";color:var(--c-brown);font-size:16px;flex:none}

/* -------------------------------------------------------- Practice areas */
.home-areas{background:var(--c-cream-soft);border-top:1px solid var(--c-cream-line)}
.home-areas .row{padding-top:84px;padding-bottom:84px}
.home-areas__head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:42px;flex-wrap:wrap}
.home-areas__head .eyebrow{margin-bottom:14px}
.home-areas__title{font-family:var(--f-serif);font-size:36px;font-weight:600;margin:0;color:var(--c-ink-2);letter-spacing:-.01em}
.home-areas__all{color:var(--c-brown);font-weight:600;text-decoration:none;font-size:15px;white-space:nowrap}
.home-areas__all:hover{color:var(--c-brown-dark)}
.servicecard.servicecard--dark{background:var(--c-ink);border-color:var(--c-ink);justify-content:center}
.servicecard--dark .servicecard__title{color:var(--c-on-dark-strong)}
.servicecard--dark .servicecard__desc{color:var(--c-on-dark-muted)}
.servicecard--dark .servicecard__cta{color:var(--c-terra)}
.servicecard--dark:hover{border-color:var(--c-brown);transform:translateY(-2px)}

/* -------------------------------------------------------------- Urgent band */
.home-urgent{background:var(--c-ink);color:var(--c-on-dark)}
.home-urgent .row{padding-top:78px;padding-bottom:78px;max-width:1000px;text-align:center}
.home-urgent .eyebrow{color:var(--c-terra);margin-bottom:20px}
.home-urgent__title{font-family:var(--f-serif);font-size:34px;font-weight:500;line-height:1.3;color:var(--c-on-dark-strong);margin:0 0 20px;letter-spacing:-.01em;text-wrap:balance}
.home-urgent__text{font-size:17px;line-height:1.7;color:var(--c-on-dark-soft);max-width:680px;margin:0 auto 32px}

/* ------------------------------------------------------- Injury cluster */
.home-injury{background:var(--c-cream)}
.home-injury .row{padding-top:84px;padding-bottom:84px}
.home-injury__row{display:grid !important;grid-template-columns:.8fr 1.2fr;gap:48px;align-items:start}
.home-injury__aside{position:sticky;top:140px}
.home-injury__aside .eyebrow{margin-bottom:14px}
.home-injury__title{font-family:var(--f-serif);font-size:34px;font-weight:600;margin:0 0 16px;color:var(--c-ink-2);letter-spacing:-.01em}
.home-injury__text{font-size:16px;line-height:1.65;color:var(--c-body);margin:0 0 22px}
.home-injury__link{color:var(--c-brown);font-weight:600;text-decoration:none;font-size:15px}
.home-injury__link:hover{color:var(--c-brown-dark)}

/* ------------------------------------------------------ Criminal cluster */
.home-criminal{background:var(--c-cream-soft);border-top:1px solid var(--c-cream-line)}
.home-criminal .row{padding-top:84px;padding-bottom:84px}
.home-criminal__row{display:grid !important;grid-template-columns:1.2fr .8fr;gap:48px;align-items:center}
.home-criminal__title{font-family:var(--f-serif);font-size:34px;font-weight:600;margin:0 0 18px;color:var(--c-ink-2);letter-spacing:-.01em}
.home-criminal__text{font-size:16px;line-height:1.65;color:var(--c-body);margin:0 0 26px;max-width:560px}
.home-crimlist{display:flex;flex-direction:column;gap:14px;margin-bottom:28px}
.home-crimlist__item{display:flex;gap:16px;align-items:flex-start}
.home-crimlist__item::before{content:"";width:10px;height:10px;background:var(--c-brown);transform:rotate(45deg);margin-top:6px;flex:none}
.home-crimlist__t{font-size:16px;font-weight:600;color:var(--c-ink-2);display:block;margin-bottom:3px}
.home-crimlist__d{font-size:14px;color:var(--c-body-2);line-height:1.55}
.home-criminal__link{color:var(--c-brown);font-weight:600;text-decoration:none;font-size:15px}
.home-statcard{background:var(--c-ink);border-radius:var(--radius);padding:34px;color:var(--c-on-dark)}
.home-statcard__big{font-family:var(--f-serif);font-size:48px;font-weight:600;color:var(--c-terra);line-height:1}
.home-statcard__text{font-size:15px;color:var(--c-on-dark-soft);margin:8px 0 24px;line-height:1.5}
.home-statcard__label{display:block;border-top:1px solid var(--c-line-dark);margin-top:24px;padding-top:20px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--c-muted);font-weight:600}
.home-statcard .phone{justify-content:flex-start;font-family:var(--f-serif);font-size:24px;color:var(--c-on-dark-strong)}
.home-statcard .phone:hover{color:var(--c-terra)}

/* -------------------------------------------------------------- Steps band */
.home-steps{background:var(--c-cream)}
/* two rows (head + steps): pad only outer edges, not between */
.home-steps .row{padding-top:0;padding-bottom:0}
.home-steps .row:first-child{padding-top:84px}
.home-steps .row:last-child{padding-bottom:84px}

/* ----------------------------------------------------------- Reasons grid */
.home-reasons{background:var(--c-ink);color:var(--c-on-dark)}
.home-reasons .row{padding-top:84px;padding-bottom:84px}
.home-reasons__head{margin-bottom:42px}
.home-reasons__head .eyebrow{color:var(--c-terra);margin-bottom:14px}
.home-reasons__title{font-family:var(--f-serif);font-size:36px;font-weight:500;margin:0;color:var(--c-on-dark-strong);letter-spacing:-.01em}
.cardgrid--cols-5{grid-template-columns:repeat(5,1fr)}
.home-reasons .card{background:var(--c-panel-dark);border-color:var(--c-line-dark);gap:10px;padding:24px 20px}
.home-reasons .card::before{content:"";width:11px;height:11px;background:var(--c-terra);transform:rotate(45deg)}
.home-reasons .card__title{color:var(--c-on-dark-strong);margin-top:4px}
.home-reasons .card__desc{color:var(--c-on-dark-muted)}

/* --------------------------------------------------------------- Reviews */
.home-reviews{background:var(--c-cream-soft);border-top:1px solid var(--c-cream-line)}
.home-reviews .row{padding-top:84px;padding-bottom:84px}
.home-reviews__head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:38px;flex-wrap:wrap}
.home-reviews__head .eyebrow{margin-bottom:14px}
.home-reviews__title{font-family:var(--f-serif);font-size:34px;font-weight:600;margin:0;color:var(--c-ink-2);letter-spacing:-.01em}
.home-rating{display:flex;align-items:center;gap:16px;background:var(--c-white);border:1px solid var(--c-card-line);border-radius:var(--radius);padding:16px 22px}
.home-rating__score{font-family:var(--f-serif);font-size:40px;font-weight:600;color:var(--c-ink-2);line-height:1}
.home-rating__stars{color:var(--c-star);font-size:16px;letter-spacing:2px}
.home-rating__meta{font-size:13px;color:var(--c-body-2)}
.home-rating__glogo{height:14px;width:auto;vertical-align:middle;display:inline-block;margin-left:1px;position:relative;top:-1px}
.home-reviews .reviews{grid-template-columns:repeat(3,1fr)}

/* --------------------------------------------------------- Final CTA + form */
.home-cta{background:var(--c-cream-soft);border-top:1px solid var(--c-cream-line)}
.home-cta .row{padding-top:84px;padding-bottom:84px}
.home-cta__row{display:grid !important;grid-template-columns:.95fr 1.05fr;gap:56px;align-items:start}
.home-cta__aside .eyebrow{margin-bottom:14px}
.home-cta__title{font-family:var(--f-serif);font-size:36px;font-weight:600;margin:0 0 18px;color:var(--c-ink-2);letter-spacing:-.01em}
.home-cta__text{font-size:16px;line-height:1.7;color:var(--c-body);margin:0 0 24px;max-width:440px}
.home-cta__details{display:flex;flex-direction:column}
.home-cta__details .contactline{border-bottom:0;padding:10px 0}

/* --------------------------------------------------------------- Responsive */
@media (max-width:849px){
  .home-hero__row,.home-injury__row,.home-criminal__row,.home-cta__row{grid-template-columns:1fr;gap:32px}
  .home-hero__title{font-size:36px}
  .home-injury__aside{position:static}
  .cardgrid--cols-5{grid-template-columns:1fr 1fr}
  .home-reviews .reviews{grid-template-columns:1fr}
}
