/* ============================================
   Lawyer page layout: every /lawyers/{city}/ page, template-parts/lawyer-city.php (2026-11-10;
   the Brooklyn pilot before that). Loaded after location.css on lawyer pages only
   (nybi_lawyer_page_prepare()). location.css styles the blocks this page shares with the
   location pages (hero, form card, trust stats, results and testimonial,
   What Happens Next and the call card); this file adds the lawyer-only blocks: "Why Choose Us?",
   "New York Birth Injury Laws", the location link and injury links, the city
   list. Every rule is scoped to .lawyer-layout, so no other page changes.
   Brand rules: no coral/pink shadows, no translateY on hover, neutral gray shadows only,
   hover = colour, border or opacity change.
   ============================================ */

/* Grid children may never stretch their column */
.lawyer-layout .lawyer-why > *,
.lawyer-layout .lawyer-laws > *,
.lawyer-layout .lawyer-learn > * {
    min-width: 0;
}

/* Grey band behind every other section (white, navy results, grey, white, grey, white, grey) */
.lawyer-layout .lawyer-alt {
    background: var(--light-gray);
}

.lawyer-layout .location-section h2 {
    line-height: 1.2;
    letter-spacing: -0.01em;
    text-wrap: balance;
}

/* Phones: scales down so "Birth Injury Lawyer in" keeps to one line, the place on the next */
@media (max-width: 768px) {
    .location-layout-v2.lawyer-layout .location-hero .content-page-title {
        font-size: clamp(1.75rem, 8.2vw, 2.25rem);
    }
}

@media (min-width: 993px) and (max-width: 1099px) {
    /* Keeps the lawyer H1 on two lines beside the form on small laptops */
    .location-layout-v2.lawyer-layout .location-hero .content-page-title {
        font-size: 2.5rem;
    }
}

/* ---------- Finding the right lawyer, with "Why Choose Us?" beside it ---------- */
.lawyer-layout .lawyer-why {
    display: grid;
    grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
    gap: clamp(32px, 6vw, 88px);
    align-items: start;
}

.lawyer-layout .lawyer-why-copy p {
    font-size: 1.125rem;
    line-height: 1.65;
    color: var(--dark-gray);
    max-width: 38rem;
    margin: 0 0 var(--spacing-sm);
}

/* The first paragraph stands out by size and colour, not weight (as the location page's lead) */
.lawyer-layout .lawyer-why-copy p.lawyer-why-lead {
    font-size: 1.3rem;
    line-height: 1.5;
    color: var(--primary-dark);
}

.lawyer-layout .lawyer-why-copy h3 {
    font-size: 1.25rem;
    color: var(--primary-dark);
    margin: var(--spacing-xl) 0 var(--spacing-md);
}

.lawyer-layout .lawyer-checklist {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    gap: 20px;
    max-width: 38rem;
}

.lawyer-layout .lawyer-checklist li {
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr);
    gap: 14px;
    align-items: start;
    margin: 0;
}

.lawyer-layout .lawyer-checklist svg {
    margin-top: 3px;
    color: var(--primary-dark);
}

.lawyer-layout .lawyer-checklist strong {
    display: block;
    font-family: var(--font-primary);
    font-weight: 600;
    font-size: 1.0625rem;
    line-height: 1.35;
    color: var(--primary-dark);
}

.lawyer-layout .lawyer-checklist span {
    display: block;
    font-size: 1.0625rem;
    line-height: 1.5;
    color: #4A586B;
    margin-top: 2px;
}

/* The panel stays in view on desktop while the text scrolls */
.lawyer-layout .lawyer-why-panel {
    position: sticky;
    top: 120px;
    background: var(--light-gray);
    border-radius: 8px;
    padding: var(--spacing-lg);
}

.lawyer-layout .lawyer-why-panel h3 {
    font-size: 1.25rem;
    color: var(--primary-dark);
    margin: 0 0 var(--spacing-xs);
}

.lawyer-layout .lawyer-why-list {
    list-style: none;
    padding: 0;
    margin: 0 0 var(--spacing-md);
}

.lawyer-layout .lawyer-why-list li {
    margin: 0;
    padding: 18px 0;
    border-bottom: 1px solid #DDE2EA;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.lawyer-layout .lawyer-why-list strong {
    font-family: var(--font-primary);
    font-weight: 700;
    font-size: 1.75rem;
    line-height: 1.15;
    letter-spacing: -0.01em;
    color: var(--primary-dark);
    font-variant-numeric: lining-nums tabular-nums;
}

.lawyer-layout .lawyer-why-list span {
    font-size: 1.0625rem;
    line-height: 1.4;
    color: #4A586B;
}

.lawyer-layout .lawyer-why-btn {
    width: 100%;
}


/* ---------- New York Birth Injury Laws ---------- */
.lawyer-layout .lawyer-laws {
    display: grid;
    grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
    gap: clamp(32px, 6vw, 88px);
    align-items: start;
}

.lawyer-layout .lawyer-laws-intro p {
    font-size: 1.125rem;
    line-height: 1.65;
    margin: 0;
    max-width: 26rem;
}

.lawyer-layout .lawyer-laws-list {
    margin: 0;
}

.lawyer-layout .lawyer-laws-list div {
    display: grid;
    grid-template-columns: minmax(0, 14rem) minmax(0, 1fr);
    gap: 8px var(--spacing-md);
    padding: 20px 0;
    border-bottom: 1px solid #DDE2EA;
}

.lawyer-layout .lawyer-laws-list div:first-child {
    padding-top: 6px;
}

.lawyer-layout .lawyer-laws-list div:last-child {
    border-bottom: 0;
    padding-bottom: 0;
}

.lawyer-layout .lawyer-laws-list dt {
    font-family: var(--font-primary);
    font-weight: 600;
    font-size: 1.0625rem;
    line-height: 1.4;
    color: var(--primary-dark);
}

.lawyer-layout .lawyer-laws-list dd {
    margin: 0;
    font-size: 1.125rem;
    line-height: 1.6;
    color: var(--dark-gray);
}

/* ---------- The location page link and the injury links ---------- */
.lawyer-layout .lawyer-learn {
    display: grid;
    grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
    gap: clamp(32px, 6vw, 88px);
    align-items: start;
}

/* No location page for the city: the injury links take the full row */
.lawyer-layout .lawyer-learn.lawyer-learn-single {
    grid-template-columns: minmax(0, 1fr);
}

.lawyer-layout .lawyer-learn-main p {
    font-size: 1.125rem;
    line-height: 1.65;
    margin: 0 0 var(--spacing-md);
    max-width: 34rem;
}

.lawyer-layout .lawyer-learn-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--spacing-sm);
    max-width: 34rem;
    min-height: 72px;
    padding: 16px 20px;
    border: 1px solid #DDE2EA;
    border: 1px solid #dfe6ef; /* card, not a left accent bar (2026-11-10) */
    border-radius: 8px;
    background: var(--white);
    font-family: var(--font-primary);
    font-weight: 600;
    font-size: 1.125rem;
    line-height: 1.3;
    color: var(--primary-dark);
    text-decoration: none;
}

.lawyer-layout .lawyer-learn-link:hover,
.lawyer-layout .lawyer-learn-link:focus {
    border-color: var(--primary-dark);
    background: var(--light-gray);
    color: var(--primary-dark);
}

.lawyer-layout .lawyer-learn-link svg {
    flex: none;
}

/* Cities without a location page: their hospitals take the link's place (the location page's list,
   names only), with the same 2px navy line as the injury list title beside it. Long names wrap. */
.lawyer-layout .lawyer-hospitals .location-hospital-list {
    max-width: 34rem;
    border-top: 2px solid var(--primary-dark);
}

.lawyer-layout .lawyer-hospitals .location-hospital-name {
    overflow-wrap: break-word;
}

.lawyer-layout .lawyer-learn-side .lawyer-injuries-title {
    font-size: 1.125rem;
    color: var(--primary-dark);
    margin: 0;
    padding-bottom: 14px;
    border-bottom: 2px solid var(--primary-dark);
}

.lawyer-layout .lawyer-injuries {
    list-style: none;
    padding: 0;
    margin: 0;
}

.lawyer-layout .lawyer-injuries li {
    margin: 0;
}

.lawyer-layout .lawyer-injuries a {
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: 48px;
    padding: 8px 0;
    border-bottom: 1px solid #DDE2EA;
    font-family: var(--font-primary);
    font-weight: 600;
    font-size: 1rem;
    color: var(--primary-dark);
    text-decoration: none;
}

.lawyer-layout .lawyer-injuries a:hover,
.lawyer-layout .lawyer-injuries a:focus {
    color: var(--primary-blue);
    border-bottom-color: var(--primary-blue);
}

.lawyer-layout .lawyer-injuries svg {
    flex: none;
    color: var(--primary-blue);
}

.lawyer-layout .lawyer-injuries li:last-child a {
    border-bottom: 0;
}

/* ---------- We Serve All of New York ---------- */
.lawyer-layout .lawyer-cities {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(168px, 1fr));
    gap: 10px;
}

.lawyer-layout .lawyer-cities li {
    margin: 0;
}

.lawyer-layout .lawyer-cities a {
    display: flex;
    align-items: center;
    min-height: 48px;
    padding: 8px 16px;
    background: var(--white);
    border: 1px solid #DDE2EA;
    border-radius: 6px;
    font-family: var(--font-primary);
    font-weight: 600;
    font-size: 0.95rem;
    line-height: 1.25;
    color: var(--primary-dark);
    text-decoration: none;
}

.lawyer-layout .lawyer-cities a:hover,
.lawyer-layout .lawyer-cities a:focus {
    background: var(--primary-dark);
    border-color: var(--primary-dark);
    color: var(--white);
}

/* ---------- Tablet: one column ---------- */
@media (max-width: 992px) {
    .lawyer-layout .lawyer-why,
    .lawyer-layout .lawyer-laws,
    .lawyer-layout .lawyer-learn {
        grid-template-columns: 1fr;
        gap: var(--spacing-lg);
    }

    .lawyer-layout .lawyer-why-panel {
        position: static;
    }
}

/* ---------- Tablet, centred (601 to 992px), as the location page ---------- */
@media (min-width: 601px) and (max-width: 992px) {
    /* "Why Choose Us?": the three figures side by side instead of a tall stack */
    .lawyer-layout .lawyer-why-list {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: var(--spacing-md);
        margin-bottom: var(--spacing-md);
    }

    .lawyer-layout .lawyer-why-list li {
        border-bottom: 0;
        border-top: 1px solid #DDE2EA;
        padding: 16px 0 0;
    }

    .lawyer-layout .lawyer-why-panel h3 {
        margin-bottom: var(--spacing-sm);
    }

    .lawyer-layout .lawyer-why-btn {
        width: auto;
    }
}

/* ---------- Phone ---------- */
@media (max-width: 768px) {
    .lawyer-layout .lawyer-why-copy p.lawyer-why-lead {
        font-size: 1.2rem;
    }

    .lawyer-layout .lawyer-why-panel {
        padding: var(--spacing-md);
    }

    .lawyer-layout .lawyer-why-list strong {
        font-size: 1.5rem;
    }

    .lawyer-layout .lawyer-laws-list div {
        grid-template-columns: 1fr;
        gap: 4px;
        padding: 16px 0;
    }
}

/* ---------- Small phones ---------- */
@media (max-width: 520px) {
    .lawyer-layout .lawyer-cities {
        grid-template-columns: 1fr 1fr;
    }
}
