/*lc-mode-adapted*//* ================================================================
   LEGALCONNECT
   PATCH 32.2 — PUBLIC EXPERIENCE V3
   ================================================================ */

:root {
    --lc-public-indigo: #5d5df0;
    --lc-public-indigo-dark: #4947e8;

    --lc-public-navy: #071226;
    --lc-public-navy-2: #0b1730;
    --lc-public-navy-3: #101d38;

    --lc-public-violet: #7c3aed;

    --lc-public-text: var(--lc-color-text-primary, #101828);--lc-public-text: var(--lc-color-text-primary, var(--lc-mode-text, #101828));
    --lc-public-muted: var(--lc-color-text-muted, #667085);--lc-public-muted: var(--lc-color-text-muted, var(--lc-mode-muted, #667085));
    --lc-public-soft: var(--lc-color-background, #f7f8fc);
    --lc-public-border: var(--lc-color-border, #e5e7eb);--lc-public-border: var(--lc-color-border, var(--lc-mode-border, #e5e7eb));
    --lc-public-white: var(--lc-color-surface, #ffffff);

    --lc-public-success: var(--lc-color-success, #12b76a);

    --lc-public-radius-sm: var(--lc-radius-small, 10px);
    --lc-public-radius: var(--lc-radius-card, 16px);
    --lc-public-radius-lg: var(--lc-radius-large, 24px);

    --lc-public-shadow:
        var(--lc-shadow-card, 0 20px 55px rgba(16, 24, 40, .08));

    --lc-public-container: var(--lc-content-max-width, 1180px);
}


/* ================================================================
   RESET
   ================================================================ */

html {
    scroll-behavior: smooth;
}

body.lc-public-body {
    margin: 0;
    min-width: 320px;

    background: var(--lc-color-background, #ffffff);background: var(--lc-color-background, var(--lc-mode-surface, #ffffff));

    color: var(--lc-public-text);

    font-family:
        var(--lc-font-family-base, Inter),
        ui-sans-serif,
        system-ui,
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        sans-serif;

    -webkit-font-smoothing: antialiased;
}

.lc-public-body *,
.lc-public-body *::before,
.lc-public-body *::after {
    box-sizing: border-box;
}

.lc-public-body a {
    color: inherit;
    text-decoration: none;
}

.lc-public-body button {
    font: inherit;
}

.lc-public-site {
    width: 100%;
    overflow: hidden;
}

.lc-public-container {
    width: min(
        calc(100% - 48px),
        var(--lc-public-container)
    );

    margin-inline: auto;
}


.lc-public-brand-mark {
    width: 39px;
    height: 39px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    border-radius: 11px;

    background:
        linear-gradient(
            145deg,
            var(--lc-public-indigo),
            var(--lc-public-violet)
        );

    color: #ffffff;

    font-size: 14px;
    font-weight: 800;
    letter-spacing: -.02em;

    box-shadow:
        0 8px 18px rgba(79, 70, 229, .22);
}

.lc-public-brand-copy {
    display: flex;
    flex-direction: column;

    line-height: 1.05;
}

.lc-public-brand-copy strong {
    color: #111827;color: var(--lc-mode-text, #111827);

    font-size: 15px;
    font-weight: 800;
    letter-spacing: .025em;
}

.lc-public-brand-copy small {
    margin-top: 5px;

    color: #98a2b3;

    font-size: 14px;
    font-weight: 700;
    letter-spacing: .13em;
}

/* ================================================================
   LEGALCONNECT — PUBLIC HEADER & NAVIGATION
   PATCH 8.11 — DESIGN SYSTEM RUNTIME INTEGRATION
   ================================================================ */

.lc-public-header {
    position: relative;
    z-index: 100;

    width: 100%;

    background: var(--lc-header-background, #ffffff);background: var(--lc-header-background, var(--lc-mode-surface, #ffffff));
    color: var(--lc-header-text, #172033);color: var(--lc-header-text, var(--lc-mode-text, #172033));

    border-bottom:
        var(--lc-header-border-width, 1px)
        solid
        var(--lc-header-border-color, #e2e8f0);border-bottom:
        var(--lc-header-border-width, 1px)
        solid
        var(--lc-header-border-color, var(--lc-mode-border, #e2e8f0));

    box-shadow:
        var(
            --lc-header-shadow,
            0 1px 3px rgba(15, 23, 42, 0.06)
        );
}


/* ================================================================
   HEADER CONTAINER
   ================================================================ */

.lc-public-nav {
    width: 100%;
    max-width: 1440px;

    min-height: var(--lc-header-height, 72px);

    margin: 0 auto;

  padding-left: var(--lc-header-padding-x, 24px);
padding-right: var(--lc-header-padding-x, 24px);

    display: flex;
    align-items: center;

    box-sizing: border-box;
}


/* ================================================================
   BRAND
   ================================================================ */

.lc-public-brand {  
    display: inline-flex;
    align-items: center;

    flex: 0 0 auto;

    gap: 11px;

    margin-right: auto;

    text-decoration: none;
}


/* ================================================================
   DESKTOP NAVIGATION
   ================================================================ */

.lc-public-nav-links {
    display: flex;
    align-items: center;

    flex: 0 0 auto;

    gap: var(--lc-navigation-gap, 8px);

    margin: 0;
}


/* ================================================================
   NAVIGATION LINKS
   ================================================================ */

.lc-public-nav-links a {
    position: relative;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 40px;

    padding: 0 12px;

    border: 0;

    border-radius:
        var(--lc-navbar-link-radius, 8px);

    background: transparent;

    color:
        var(--lc-navbar-link-color, #475569);color:
        var(--lc-navbar-link-color, var(--lc-mode-muted, #475569));

    font-size:
        max(16px, var(--lc-navbar-font-size, 14px));

    font-weight: 600;
    line-height: 1;

    white-space: nowrap;
    text-decoration: none;

    transition:
        color 180ms ease,
        background-color 180ms ease;
}


/*
 * Patch 8.11:
 * Public navigation no longer uses underline indicators.
 */

.lc-public-nav-links a::before,
.lc-public-nav-links a::after {
    display: none;
    content: none;
}


/* ================================================================
   NAVIGATION HOVER
   ================================================================ */

.lc-public-nav-links a:hover {
    color: var(--lc-navbar-link-hover-color, #2563eb);color: var(--lc-navbar-link-hover-color, var(--lc-mode-ink-blue, #2563eb));
    background: var(--lc-navbar-link-hover-background, #eff6ff);background: var(--lc-navbar-link-hover-background, var(--lc-mode-surface, #eff6ff));
}

/* ================================================================
   ACTIVE NAVIGATION LINK
   ================================================================ */

.lc-public-nav-links a.active {
    color:
        var(
            --lc-navbar-link-active-color,
            #2563eb
        );color:
        var(
            --lc-navbar-link-active-color,
            var(--lc-mode-ink-blue, #2563eb)
        );

    background:
        var(
            --lc-navbar-link-active-background,
            #eff6ff
        );background:
        var(
            --lc-navbar-link-active-background,
            var(--lc-mode-surface, #eff6ff)
        );
}


/* ================================================================
   RIGHT ACTION AREA
   ================================================================ */

.lc-public-nav-actions {
    display: flex;
    align-items: center;

    flex: 0 0 auto;

    gap: 18px;

    margin-left: 32px;
}


/* ================================================================
   SIGN IN / WORKSPACE
   ================================================================ */

.lc-public-login {
    position: relative;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 40px;

    padding: 0 10px;

    border: 0;

    border-radius:
        var(--lc-navbar-link-radius, 8px);

    background: transparent;

    color:
        var(--lc-navbar-link-color, #475569);color:
        var(--lc-navbar-link-color, var(--lc-mode-muted, #475569));

    font-size:
        max(16px, var(--lc-navbar-font-size, 14px));

    font-weight: 600;
    line-height: 1;

    white-space: nowrap;
    text-decoration: none;

    transition:
        color 180ms ease,
        background-color 180ms ease;
}


.lc-public-login:hover {
    color: var(--lc-navbar-link-hover-color, #2563eb);color: var(--lc-navbar-link-hover-color, var(--lc-mode-ink-blue, #2563eb));
    background: var(--lc-navbar-link-hover-background, #eff6ff);background: var(--lc-navbar-link-hover-background, var(--lc-mode-surface, #eff6ff));
}

.lc-public-login::before,
.lc-public-login::after {
    display: none;
    content: none;
}

/* ================================================================
   PRIMARY CTA — JOIN AS LAWYER
   ================================================================ */

.lc-public-nav-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 auto;

    min-height: 42px;
    padding: 0 18px;

    border: 1px solid
        var(--lc-navbar-cta-background, #2563eb);

    border-radius:
        var(--lc-navbar-cta-radius, 10px);

    background:
        var(--lc-navbar-cta-background, #2563eb);

    /* Keep CTA text white in every state */
    color: var(--lc-navbar-cta-text, #ffffff);

    font-size:
        max(16px, var(--lc-navbar-font-size, 14px));

    font-weight: 650;
    line-height: 1;

    white-space: nowrap;
    text-decoration: none;

    box-shadow:
        0 4px 12px rgba(37, 99, 235, 0.18);

    transition:
        background-color 180ms ease,
        border-color 180ms ease,
        box-shadow 180ms ease,
        transform 180ms ease;
}

.lc-public-nav-cta:hover,
.lc-public-nav-cta:focus,
.lc-public-nav-cta:focus-visible,
.lc-public-nav-cta:active,
.lc-public-nav-cta:visited {
    color: var(--lc-navbar-cta-text, #ffffff);
}

.lc-public-nav-cta:hover {
    border-color:
        var(--lc-navbar-cta-hover-background, #1d4ed8);

    background:
        var(--lc-navbar-cta-hover-background, #1d4ed8);

    transform: translateY(-1px);

    box-shadow:
        0 7px 16px rgba(37, 99, 235, 0.22);
}
.lc-public-menu-button {
    display: none;

    width: 42px;
    height: 42px;

    margin-left: auto;

    border: 1px solid #e4e7ec;border: 1px solid var(--lc-mode-border, #e4e7ec);
    border-radius: 10px;

    background: #ffffff;background: var(--lc-mode-surface, #ffffff);

    align-items: center;
    justify-content: center;
    flex-direction: column;

    gap: 4px;

    cursor: pointer;
}

.lc-public-menu-button span {
    width: 17px;
    height: 2px;

    border-radius: 99px;

    background: #344054;
}

.lc-public-mobile-menu {
    background: #ffffff;background: var(--lc-mode-surface, #ffffff);

    border-top: 1px solid #eaecf0;border-top: 1px solid var(--lc-mode-border, #eaecf0);

    box-shadow:
        0 16px 28px rgba(16, 24, 40, .08);
}

.lc-public-mobile-menu[hidden] {
    display: none !important;
}

.lc-public-mobile-menu .lc-public-container {
    padding-top: 12px;
    padding-bottom: 16px;

    display: flex;
    flex-direction: column;

    gap: 3px;
}

.lc-public-mobile-menu a {
    padding: 11px 12px;

    border-radius: 8px;

    color: #344054;color: var(--lc-mode-text, #344054);

    font-size: 16px;
    font-weight: 600;
}
.lc-public-mobile-menu a:hover {
    color: var(--lc-navbar-link-hover-color, #1d4ed8);color: var(--lc-navbar-link-hover-color, var(--lc-mode-ink-blue, #1d4ed8));
    background: var(--lc-navbar-link-hover-background, #f8fafc);background: var(--lc-navbar-link-hover-background, var(--lc-mode-surface, #f8fafc));
}

.lc-public-mobile-primary {
    margin-top: 5px;

    background: var(--lc-navbar-cta-background, #2563eb);
    color: var(--lc-navbar-cta-text, #ffffff);

    border-radius: var(--lc-navbar-cta-radius, 10px);

    text-align: center;
}

.lc-public-mobile-primary:hover {
    background: var(--lc-navbar-cta-hover-background, #1d4ed8);
    color: var(--lc-navbar-cta-text, #ffffff);
}

/* ================================================================
   HERO
   ================================================================ */

.lc-public-hero {
    position: relative;

    min-height: 650px;

    display: flex;
    align-items: center;

    overflow: hidden;

    background:
        radial-gradient(
            circle at 75% 30%,
            rgba(99, 102, 241, .20),
            transparent 32%
        ),
        linear-gradient(
            118deg,
            #071226 0%,
            #0a1630 55%,
            #101d3a 100%
        );
}

.lc-public-hero::before {
    content: "";

    position: absolute;
    inset: 0;

    opacity: .20;

    background-image:
        linear-gradient(
            rgba(255, 255, 255, .035) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255, 255, 255, .035) 1px,
            transparent 1px
        );

    background-size: 52px 52px;

    mask-image:
        linear-gradient(
            to right,
            transparent,
            #000 45%,
            #000
        );
}

.lc-public-hero-glow {
    position: absolute;

    border-radius: 50%;

    filter: blur(4px);

    pointer-events: none;
}

.lc-glow-one {
    width: 360px;
    height: 360px;

    right: -120px;
    top: -120px;

    background:
        rgba(124, 58, 237, .15);
}

.lc-glow-two {
    width: 300px;
    height: 300px;

    left: 35%;
    bottom: -220px;

    background:
        rgba(79, 70, 229, .14);
}

.lc-public-hero-grid {
    position: relative;
    z-index: 2;

    padding-top: 80px;
    padding-bottom: 80px;

    display: grid;

    grid-template-columns:
        minmax(0, 1.05fr)
        minmax(420px, .95fr);

    align-items: center;

    gap: 72px;
}

.lc-public-hero-copy {
    max-width: 650px;
}

.lc-public-eyebrow {
    display: flex;
    align-items: center;

    gap: 10px;

    margin-bottom: 21px;

    color: #a5b4fc;

    font-size: 14px;
    font-weight: 800;
    letter-spacing: .16em;
}

.lc-public-eyebrow > span {
    width: 27px;
    height: 2px;

    border-radius: 999px;

    background: #818cf8;
}

.lc-public-hero h1 {
    margin: 0;

    color: #ffffff;

    font-size:
        clamp(43px, 5vw, 68px);

    line-height: 1.03;

    letter-spacing: -.045em;

    font-weight: 750;
}

.lc-public-hero h1 span {
    display: block;

    margin-top: 5px;

    color: #a5b4fc;
}

.lc-public-hero-description {
    max-width: 600px;

    margin: 27px 0 0;

    color: #c5ccda;

    font-size: 17px;
    line-height: 1.75;
}

.lc-public-hero-actions {
    margin-top: 34px;

    display: flex;
    align-items: center;

    flex-wrap: wrap;

    gap: 12px;
}

.lc-public-btn {
    min-height: 48px;

    padding: 0 20px;

    border: 1px solid transparent;
    border-radius: 10px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    gap: 11px;

    font-size: 16px;
    font-weight: 700;

    transition:
        transform .18s ease,
        background .18s ease,
        border-color .18s ease,
        box-shadow .18s ease;
}

.lc-public-btn:hover {
    transform: translateY(-2px);
}

.lc-public-btn-primary {
    background:
        linear-gradient(
            135deg,
            #5b55e7,
            #6d5bea
        );

    color: var(--lc-navbar-cta-text, #ffffff);

    box-shadow:
        0 13px 28px rgba(79, 70, 229, .25);
}

.lc-public-btn-primary:hover {
    background:
        linear-gradient(
            135deg,
            #4338ca,
            #5b45d8
        );

    box-shadow:
        0 16px 32px rgba(79, 70, 229, .32);
}

.lc-public-btn-secondary {
    border-color:
        rgba(255, 255, 255, .19);border-color:
        var(--lc-mode-border-soft, rgba(255, 255, 255, .19));

    background:
        rgba(255, 255, 255, .06);

    color: var(--lc-navbar-cta-text, #ffffff);
}

.lc-public-btn-secondary:hover {
    border-color:
        rgba(255, 255, 255, .32);border-color:
        var(--lc-mode-border-soft, rgba(255, 255, 255, .32));

    background:
        rgba(255, 255, 255, .10);
}

.lc-public-trust-row {
    margin-top: 32px;

    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 22px;

    color: #aeb8cb;

    font-size: 14px;
    font-weight: 600;
}

.lc-public-trust-row > div {
    display: flex;
    align-items: center;

    gap: 7px;
}

.lc-public-check {
    width: 18px;
    height: 18px;

    border-radius: 50%;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    background:
        rgba(52, 211, 153, .12);

    color: #6ee7b7;

    font-size: 14px;
    font-weight: 900;
}


/* ================================================================
   HERO VISUAL
   ================================================================ */

.lc-public-hero-visual {
    position: relative;

    min-height: 470px;

    display: flex;
    align-items: center;
    justify-content: center;
}

.lc-public-visual-orbit {
    position: absolute;

    border:
        1px solid rgba(165, 180, 252, .10);

    border-radius: 50%;
}

.orbit-one {
    width: 440px;
    height: 440px;
}

.orbit-two {
    width: 340px;
    height: 340px;
}

.lc-public-justice-card {
    position: relative;
    z-index: 4;

    width: min(100%, 395px);

    padding: 27px;

    border:
        1px solid rgba(255, 255, 255, .13);

    border-radius: 22px;

    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, .12),
            rgba(255, 255, 255, .055)
        );

    box-shadow:
        0 35px 90px rgba(0, 0, 0, .27);

    backdrop-filter: blur(18px);

    transform:
        perspective(1000px)
        rotateY(-5deg)
        rotateX(2deg);
}

.lc-public-justice-top {
    display: flex;
    align-items: center;

    gap: 14px;
}

.lc-public-justice-icon {
    width: 48px;
    height: 48px;

    border-radius: 13px;

    display: flex;
    align-items: center;
    justify-content: center;

    background:
        linear-gradient(
            145deg,
            #6258e8,
            #7c4fe1
        );

    color: #ffffff;

    font-size: 23px;

    box-shadow:
        0 12px 25px rgba(79, 70, 229, .24);
}

.lc-public-justice-top span,
.lc-public-justice-top strong {
    display: block;
}

.lc-public-justice-top span {
    margin-bottom: 4px;

    color: #8f9bb2;color: var(--lc-mode-ink-blue, #8f9bb2);

    font-size: 14px;
    font-weight: 800;
    letter-spacing: .15em;
}

.lc-public-justice-top strong {
    color: #ffffff;

    font-size: 14px;
}

.lc-public-justice-divider {
    height: 1px;

    margin: 22px 0;

    background:
        rgba(255, 255, 255, .10);
}

.lc-public-search-preview {
    min-height: 48px;

    padding: 0 15px;

    border:
        1px solid rgba(255, 255, 255, .12);

    border-radius: 10px;

    display: flex;
    align-items: center;

    gap: 11px;

    background:
        rgba(2, 6, 23, .22);

    color: #98a5bb;

    font-size: 14px;
}

.lc-public-search-icon {
    color: #c7d2fe;

    font-size: 20px;
}

.lc-public-preview-label {
    margin-top: 24px;

    color: #8490a7;color: var(--lc-mode-ink-blue, #8490a7);

    font-size: 15px;
    font-weight: 800;
    letter-spacing: .16em;
}

.lc-public-preview-tags {
    margin-top: 12px;

    display: flex;
    flex-wrap: wrap;

    gap: 8px;
}

.lc-public-preview-tags span {
    padding: 7px 10px;

    border:
        1px solid rgba(255, 255, 255, .09);

    border-radius: 7px;

    background:
        rgba(255, 255, 255, .055);

    color: #c5ccda;

    font-size: 14px;
    font-weight: 600;
}

.lc-public-verified-preview {
    margin-top: 25px;
    padding-top: 20px;

    border-top:
        1px solid rgba(255, 255, 255, .09);

    display: flex;
    align-items: center;

    gap: 13px;
}

.lc-public-avatar-stack {
    display: flex;
}

.lc-public-avatar-stack span {
    width: 31px;
    height: 31px;

    margin-left: -7px;

    border: 2px solid #1d2941;
    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    background:
        linear-gradient(
            145deg,
            #485574,
            #28354f
        );

    color: #ffffff;

    font-size: 14px;
    font-weight: 800;
}

.lc-public-avatar-stack span:first-child {
    margin-left: 0;
}

.lc-public-verified-preview strong,
.lc-public-verified-preview small {
    display: block;
}

.lc-public-verified-preview strong {
    color: #ffffff;

    font-size: 14px;
}

.lc-public-verified-preview small {
    margin-top: 3px;

    color: #8996ad;color: var(--lc-mode-ink-blue, #8996ad);

    font-size: 14px;
}

.lc-public-floating-card {
    position: absolute;
    z-index: 8;

    min-width: 155px;

    padding: 12px 14px;

    border:
        1px solid rgba(255, 255, 255, .13);

    border-radius: 12px;

    display: flex;
    align-items: center;

    gap: 10px;

    background:
        rgba(16, 29, 56, .88);

    box-shadow:
        0 18px 35px rgba(0, 0, 0, .23);

    backdrop-filter: blur(12px);
}

.lc-floating-verified {
    top: 53px;
    right: -12px;
}

.lc-floating-secure {
    bottom: 47px;
    left: -14px;
}

.lc-floating-icon {
    width: 30px;
    height: 30px;

    border-radius: 8px;

    display: flex;
    align-items: center;
    justify-content: center;

    background:
        rgba(99, 102, 241, .16);

    color: #c7d2fe;

    font-size: 14px;
    font-weight: 800;
}

.lc-public-floating-card strong,
.lc-public-floating-card small {
    display: block;
}

.lc-public-floating-card strong {
    color: #ffffff;

    font-size: 14px;
}

.lc-public-floating-card small {
    margin-top: 2px;

    color: #8e9bb1;color: var(--lc-mode-ink-blue, #8e9bb1);

    font-size: 14px;
}


/* ================================================================
   TRUST STRIP
   ================================================================ */

.lc-public-trust-strip {
    position: relative;
    z-index: 10;

    border-bottom: 1px solid #e6eaf2;border-bottom: 1px solid var(--lc-mode-border, #e6eaf2);
    background: linear-gradient(180deg, #ffffff 0%, #fbfcff 100%);background: linear-gradient(180deg, var(--lc-mode-surface, #ffffff) 0%, var(--lc-mode-surface, #fbfcff) 100%);
}

.lc-public-trust-grid {
    min-height: 116px;

    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    align-items: center;
}

.lc-public-trust-grid article {
    min-height: 68px;

    padding: 0 36px;

    display: flex;
    align-items: center;

    gap: 16px;

    border-right:
        1px solid #eaecf0;border-right:
        1px solid var(--lc-mode-border, #eaecf0);
}

.lc-public-trust-grid article:first-child {
    padding-left: 0;
}

.lc-public-trust-grid article:last-child {
    border-right: 0;

    padding-right: 0;
}

.lc-public-trust-grid .lc-trust-icon {
    position: relative;

    width: 48px;
    height: 48px;

    flex: 0 0 48px;

    border: 1px solid rgba(79, 70, 229, .12);
    border-radius: 14px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    background:
        linear-gradient(145deg, #f7f7ff 0%, #ecebff 100%);background:
        linear-gradient(145deg, var(--lc-mode-surface, #f7f7ff) 0%, var(--lc-mode-surface, #ecebff) 100%);

    color: var(--lc-public-indigo);

    box-shadow:
        0 8px 22px rgba(79, 70, 229, .10),
        inset 0 1px 0 rgba(255, 255, 255, .85);
}

.lc-public-trust-grid .lc-trust-icon::after {
    content: "";
    position: absolute;
    inset: 5px;
    border: 1px solid rgba(79, 70, 229, .08);
    border-radius: 10px;
}

.lc-public-trust-grid .lc-trust-icon svg {
    position: relative;
    z-index: 1;
    width: 23px;
    height: 23px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.lc-public-trust-grid strong,
.lc-public-trust-grid article > div > span {
    display: block;
}

.lc-public-trust-grid strong {
    color: #172033;color: var(--lc-mode-text, #172033);

    font-size: 14px;
    font-weight: 750;
    letter-spacing: -.01em;
}

.lc-public-trust-grid article > div > span {
    margin-top: 5px;

    color: #7c879b;color: var(--lc-mode-muted, #7c879b);

    font-size: 14px;
    line-height: 1.55;
}


/* ================================================================
   SHARED SECTIONS
   ================================================================ */

.lc-public-section {
    padding: 96px 0;
}

.lc-public-section-heading {
    display: grid;

    grid-template-columns:
        minmax(0, 1.2fr)
        minmax(280px, .8fr);

    align-items: end;

    gap: 70px;

    margin-bottom: 44px;
}

.lc-public-section-eyebrow {
    display: block;

    margin-bottom: 14px;

    color: var(--lc-public-indigo);

    font-size: 14px;
    font-weight: 800;
    letter-spacing: .17em;
}

.lc-public-section-eyebrow.light {
    color: #a5b4fc;
}

.lc-public-section-heading h2,
.lc-public-centered-heading h2,
.lc-public-lawyer-copy h2,
.lc-public-about-grid h2,
.lc-public-final-panel h2 {
    margin: 0;

    color: #101828;color: var(--lc-mode-text, #101828);

    font-size:
        clamp(32px, 3.6vw, 46px);

    line-height: 1.12;

    letter-spacing: -.035em;

    font-weight: 730;
}

.lc-public-section-heading > p {
    margin: 0;

    color: #667085;color: var(--lc-mode-muted, #667085);

    font-size: 17px;
    line-height: 1.75;
}


/* ================================================================
   PRACTICE AREAS
   ================================================================ */

.lc-public-practice-section {
    background: #f8f9fc;background: var(--lc-mode-surface, #f8f9fc);
}

.lc-public-practice-grid {
    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    gap: 15px;
}

.lc-public-practice-card {
    position: relative;

    min-height: 255px;

    padding: 28px;

    border: 1px solid #e5e7eb;border: 1px solid var(--lc-mode-border, #e5e7eb);
    border-radius: 14px;

    background: #ffffff;background: var(--lc-mode-surface, #ffffff);

    box-shadow:
        0 2px 5px rgba(16, 24, 40, .025);

    transition:
        transform .2s ease,
        border-color .2s ease,
        box-shadow .2s ease;
}

.lc-public-practice-card:hover {
    transform: translateY(-4px);

    border-color: #c7d2fe;border-color: var(--lc-mode-border, #c7d2fe);

    box-shadow:
        0 18px 35px rgba(16, 24, 40, .07);
}

.lc-practice-number {
    position: absolute;

    top: 25px;
    right: 25px;

    color: #d0d5dd;

    font-size: 14px;
    font-weight: 800;
    letter-spacing: .1em;
}

.lc-practice-icon {
    width: 42px;
    height: 42px;

    margin-bottom: 24px;

    border-radius: 10px;

    display: flex;
    align-items: center;
    justify-content: center;

    background:
        linear-gradient(
            145deg,
            #f0f0ff,
            #f7f5ff
        );background:
        linear-gradient(
            145deg,
            var(--lc-mode-surface, #f0f0ff),
            var(--lc-mode-surface, #f7f5ff)
        );

    color: var(--lc-public-indigo);

    font-size: 17px;
    font-weight: 800;
}

.lc-public-practice-card h3 {
    margin: 0;

    color: #1d2939;color: var(--lc-mode-text, #1d2939);

    font-size: 16px;
    font-weight: 720;
}

.lc-public-practice-card p {
    margin: 10px 0 0;

    color: #7b8494;color: var(--lc-mode-muted, #7b8494);

    font-size: 17px;
    line-height: 1.65;
}

.lc-practice-link {
    position: absolute;

    left: 28px;
    bottom: 25px;

    color: var(--lc-public-indigo);

    font-size: 14px;
    font-weight: 700;
}


/* ================================================================
   HOW IT WORKS
   ================================================================ */

.lc-public-how-section {
    background: #ffffff;background: var(--lc-mode-surface, #ffffff);
}

.lc-public-centered-heading {
    max-width: 680px;

    margin: 0 auto 57px;

    text-align: center;
}

.lc-public-centered-heading p {
    max-width: 560px;

    margin: 17px auto 0;

    color: #667085;color: var(--lc-mode-muted, #667085);

    font-size: 17px;
    line-height: 1.75;
}

.lc-public-steps {
    position: relative;

    display: grid;

    grid-template-columns:
        repeat(4, 1fr);

    gap: 22px;
}

.lc-public-steps::before {
    content: "";

    position: absolute;

    top: 32px;
    left: 12%;
    right: 12%;

    height: 1px;

    background:
        linear-gradient(
            to right,
            transparent,
            #d9d6fe 10%,
            #d9d6fe 90%,
            transparent
        );background:
        linear-gradient(
            to right,
            transparent,
            var(--lc-mode-tint-blue, #d9d6fe) 10%,
            var(--lc-mode-tint-blue, #d9d6fe) 90%,
            transparent
        );
}

.lc-public-steps article {
    position: relative;
    z-index: 2;

    padding: 0 13px;

    text-align: center;
}

.lc-step-number {
    position: absolute;

    top: 4px;
    right: 20px;

    color: #d0d5dd;

    font-size: 14px;
    font-weight: 800;
}

.lc-step-icon {
    width: 64px;
    height: 64px;

    margin: 0 auto 23px;

    border: 7px solid #ffffff;border: 7px solid var(--lc-mode-border, #ffffff);
    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #eeecff;background: var(--lc-mode-surface, #eeecff);

    color: var(--lc-public-indigo);

    font-size: 19px;
    font-weight: 800;

    box-shadow:
        0 0 0 1px #e7e5ff;
}

.lc-public-steps h3 {
    margin: 0;

    color: #1d2939;color: var(--lc-mode-text, #1d2939);

    font-size: 16px;
    font-weight: 720;
}

.lc-public-steps p {
    margin: 10px 0 0;

    color: #7b8494;color: var(--lc-mode-muted, #7b8494);

    font-size: 17px;
    line-height: 1.7;
}


/* ================================================================
   LAWYER CTA
   ================================================================ */

.lc-public-lawyer-section {
    padding-top: 42px;

    background: #ffffff;background: var(--lc-mode-surface, #ffffff);
}

.lc-public-lawyer-panel {
    position: relative;

    min-height: 480px;

    padding: 62px 66px;

    border-radius: 24px;

    display: grid;

    grid-template-columns:
        minmax(0, .95fr)
        minmax(380px, 1.05fr);

    align-items: center;

    gap: 70px;

    overflow: hidden;

    background:
        radial-gradient(
            circle at 90% 0%,
            rgba(99, 102, 241, .20),
            transparent 33%
        ),
        linear-gradient(
            130deg,
            #071226,
            #101c37
        );

    box-shadow:
        0 30px 70px rgba(7, 18, 38, .13);
}

.lc-public-lawyer-panel::after {
    content: "";

    position: absolute;

    width: 430px;
    height: 430px;

    right: -200px;
    bottom: -300px;

    border:
        1px solid rgba(165, 180, 252, .14);

    border-radius: 50%;
}

.lc-public-lawyer-copy {
    position: relative;
    z-index: 2;
}

.lc-public-lawyer-copy h2 {
    color: #ffffff;
}

.lc-public-lawyer-copy > p {
    margin: 19px 0 0;

    color: #aeb8ca;

    font-size: 17px;
    line-height: 1.75;
}

.lc-public-lawyer-features {
    margin-top: 26px;

    display: grid;

    grid-template-columns:
        repeat(2, 1fr);

    gap: 11px 18px;
}

.lc-public-lawyer-features span {
    display: flex;
    align-items: center;

    gap: 8px;

    color: #c4ccda;

    font-size: 14px;
}

.lc-public-lawyer-features b {
    width: 18px;
    height: 18px;

    border-radius: 50%;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    background:
        rgba(52, 211, 153, .12);

    color: #6ee7b7;

    font-size: 14px;
}

.lc-public-btn-light {
    margin-top: 31px;

    background: #ffffff;background: var(--lc-mode-surface, #ffffff);

    color: #1d2939 !important;color: var(--lc-mode-text, #1d2939) !important;

    box-shadow:
        0 12px 25px rgba(0, 0, 0, .13);
}

.lc-public-btn-light:hover {
    background: #f4f3ff;background: var(--lc-mode-surface, #f4f3ff);

    color: var(--lc-public-indigo) !important;
}


/* ================================================================
   WORKSPACE PREVIEW
   ================================================================ */

.lc-public-workspace-preview {
    position: relative;
    z-index: 2;

    overflow: hidden;

    border:
        1px solid rgba(255, 255, 255, .14);

    border-radius: 15px;

    background:
        rgba(255, 255, 255, .96);background:
        var(--lc-mode-surface-soft, rgba(255, 255, 255, .96));

    box-shadow:
        0 35px 60px rgba(0, 0, 0, .26);

    transform:
        perspective(1000px)
        rotateY(-5deg)
        rotateX(2deg);
}

.lc-workspace-preview-top {
    height: 39px;

    padding: 0 13px;

    border-bottom: 1px solid #e7e9ee;border-bottom: 1px solid var(--lc-mode-border, #e7e9ee);

    display: flex;
    align-items: center;
    justify-content: space-between;

    background: #fafbfc;background: var(--lc-mode-surface, #fafbfc);
}

.lc-workspace-preview-top > div {
    display: flex;

    gap: 5px;
}

.lc-workspace-preview-top > div span {
    width: 7px;
    height: 7px;

    border-radius: 50%;

    background: #d0d5dd;background: var(--lc-mode-surface, #d0d5dd);
}

.lc-workspace-preview-top > div span:first-child {
    background: #818cf8;
}

.lc-workspace-preview-top small {
    color: #98a2b3;

    font-size: 14px;
    font-weight: 800;
    letter-spacing: .15em;
}

.lc-workspace-preview-body {
    min-height: 290px;

    display: grid;

    grid-template-columns: 85px 1fr;
}

.lc-preview-sidebar {
    padding: 26px 13px;

    border-right: 1px solid #e7e9ee;border-right: 1px solid var(--lc-mode-border, #e7e9ee);

    background: #0b1730;
}

.lc-preview-sidebar div {
    width: 100%;
    height: 8px;

    margin-bottom: 16px;

    border-radius: 99px;

    background:
        rgba(255, 255, 255, .12);
}

.lc-preview-sidebar div.active {
    background: #818cf8;
}

.lc-preview-content {
    padding: 30px 25px;
}

.lc-preview-title {
    display: block;

    width: 42%;
    height: 11px;

    border-radius: 99px;

    background: #344054;
}

.lc-preview-stats {
    margin-top: 28px;

    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    gap: 9px;
}

.lc-preview-stats span {
    height: 60px;

    border: 1px solid #e7e9ee;border: 1px solid var(--lc-mode-border, #e7e9ee);
    border-radius: 8px;

    background: #fafbfc;background: var(--lc-mode-surface, #fafbfc);
}

.lc-preview-table {
    margin-top: 22px;

    padding: 15px;

    border: 1px solid #e7e9ee;border: 1px solid var(--lc-mode-border, #e7e9ee);
    border-radius: 8px;
}

.lc-preview-table span {
    display: block;

    height: 7px;

    margin: 10px 0;

    border-radius: 99px;

    background: #e4e7ec;background: var(--lc-mode-surface, #e4e7ec);
}

.lc-preview-table span:nth-child(1) {
    width: 86%;
}

.lc-preview-table span:nth-child(2) {
    width: 70%;
}

.lc-preview-table span:nth-child(3) {
    width: 91%;
}

.lc-preview-table span:nth-child(4) {
    width: 61%;
}


/* ================================================================
   ABOUT
   ================================================================ */

.lc-public-about-section {
    background: #ffffff;background: var(--lc-mode-surface, #ffffff);
}

.lc-public-about-grid {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        minmax(0, .9fr);

    gap: 100px;

    align-items: start;
}

.lc-public-about-copy {
    padding-top: 26px;
}

.lc-public-about-copy p {
    margin: 0 0 18px;

    color: #667085;color: var(--lc-mode-muted, #667085);

    font-size: 17px;
    line-height: 1.85;
}

.lc-public-about-copy a {
    display: inline-flex;

    margin-top: 8px;

    color: var(--lc-public-indigo);

    font-size: 14px;
    font-weight: 750;
}


/* ================================================================
   FINAL CTA
   ================================================================ */

.lc-public-final-cta {
    padding: 0 0 92px;

    background: #ffffff;background: var(--lc-mode-surface, #ffffff);
}

.lc-public-final-panel {
    padding: 38px 44px;

    border: 1px solid #e5e7eb;border: 1px solid var(--lc-mode-border, #e5e7eb);
    border-radius: 18px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 45px;

    background:
        linear-gradient(
            135deg,
            #f8f9ff,
            #ffffff
        );background:
        linear-gradient(
            135deg,
            var(--lc-mode-surface, #f8f9ff),
            var(--lc-mode-surface, #ffffff)
        );
}

.lc-public-final-panel > div > span {
    display: block;

    margin-bottom: 10px;

    color: var(--lc-public-indigo);

    font-size: 14px;
    font-weight: 800;
    letter-spacing: .16em;
}

.lc-public-final-panel h2 {
    max-width: 610px;

    font-size:
        clamp(27px, 3vw, 38px);
}

.lc-public-final-panel p {
    margin: 11px 0 0;

    color: #667085;color: var(--lc-mode-muted, #667085);

    font-size: 17px;
}


/* ================================================================
   FOOTER
   ================================================================ */

.lc-public-footer {
    background: #071226;

    color: #ffffff;
}

.lc-public-footer-main {
    padding: 62px 0 45px;

    display: grid;

    grid-template-columns:
        1fr auto;

    gap: 80px;
}

.footer-brand .lc-public-brand-copy strong {
    color: #ffffff;
}

.footer-brand .lc-public-brand-copy small {
    color: #71809b;color: var(--lc-mode-ink-blue, #71809b);
}

.lc-public-footer-brand > p {
    max-width: 380px;

    margin: 18px 0 0;

    color: #8d99ad;color: var(--lc-mode-muted, #8d99ad);

    font-size: 17px;
    line-height: 1.7;
}

.lc-public-footer-links {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(210px, 1fr));

    gap: 16px;
}

.lc-public-footer-links > div {
    position: relative;

    display: flex;
    flex-direction: column;

    gap: 7px;

    min-width: 220px;
    padding: 20px;

    border: 1px solid rgba(148, 163, 184, .14);
    border-radius: 14px;

    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, .055),
            rgba(255, 255, 255, .018)
        );

    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .035),
        0 14px 35px rgba(0, 0, 0, .10);
}

.lc-public-footer-links strong {
    display: flex;
    align-items: center;
    gap: 9px;

    margin-bottom: 7px;

    color: #f8fafc;

    font-size: 14px;
    font-weight: 750;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.lc-public-footer-links strong::before {
    content: "";

    width: 7px;
    height: 7px;

    flex: 0 0 7px;

    border-radius: 999px;

    background: #818cf8;

    box-shadow: 0 0 0 4px rgba(99, 102, 241, .13);
}

.lc-public-footer-links a {
    min-height: 34px;
    padding: 0 10px;

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;

    border: 1px solid transparent;
    border-radius: 8px;

    color: #aab5c6;

    font-size: 14px;
    font-weight: 550;

    transition:
        color .18s ease,
        border-color .18s ease,
        background-color .18s ease,
        transform .18s ease;
}

.lc-public-footer-links a::after {
    content: "\2192";

    color: #65728a;color: var(--lc-mode-ink-blue, #65728a);

    font-size: 14px;

    transition:
        color .18s ease,
        transform .18s ease;
}

.lc-public-footer-links a:hover {
    border-color: rgba(129, 140, 248, .17);border-color: var(--lc-mode-border-soft, rgba(129, 140, 248, .17));

    background: rgba(99, 102, 241, .09);

    color: #e0e7ff;

    transform: translateX(2px);
}

.lc-public-footer-links a:hover::after {
    color: #a5b4fc;

    transform: translateX(2px);
}

.lc-public-footer-bottom {
    min-height: 66px;

    border-top:
        1px solid rgba(255, 255, 255, .08);

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 20px;

    color: #6f7d93;color: var(--lc-mode-ink-blue, #6f7d93);

    font-size: 14px;
}


/* ================================================================
   ACCESSIBILITY
   ================================================================ */

.lc-public-body a:focus-visible,
.lc-public-body button:focus-visible {
    outline:
        3px solid rgba(99, 102, 241, .32);

    outline-offset: 3px;
}


/* ================================================================
   RESPONSIVE — TABLET
   ================================================================ */

@media (max-width: 1050px) {

    .lc-public-nav-links {
        gap: var(--lc-navigation-gap, 18px);
    }

    .lc-public-nav-actions {
        margin-left: 24px;
    }

    .lc-public-hero-grid {
        grid-template-columns:
            minmax(0, 1fr)
            minmax(350px, .8fr);

        gap: 35px;
    }

    .lc-public-floating-card {
        display: none;
    }

    .lc-public-lawyer-panel {
        padding: 50px;
        gap: 40px;
    }

}


/* ================================================================
   RESPONSIVE — MOBILE NAV / TABLET
   ================================================================ */

@media (max-width: 900px) {

    .lc-public-container {
        width: min(
            calc(100% - 34px),
            var(--lc-public-container)
        );
    }

    .lc-public-nav {
        min-height: var(--lc-header-height, 72px);
    }

    .lc-public-nav-links,
    .lc-public-nav-actions {
        display: none;
    }

    .lc-public-menu-button {
        display: flex;
    }

    .lc-public-hero {
        min-height: auto;
    }

    .lc-public-hero-grid {
        padding-top: 70px;
        padding-bottom: 70px;

        grid-template-columns: 1fr;

        gap: 50px;
    }

    .lc-public-hero-copy {
        max-width: 720px;
    }

    .lc-public-hero-visual {
        min-height: 400px;
    }

    .lc-public-trust-grid {
        padding: 24px 0;

        grid-template-columns: 1fr;

        gap: 0;
    }

    .lc-public-trust-grid article,
    .lc-public-trust-grid article:first-child,
    .lc-public-trust-grid article:last-child {
        padding: 16px 0;

        border-right: 0;
        border-bottom: 1px solid #eaecf0;border-bottom: 1px solid var(--lc-mode-border, #eaecf0);
    }

    .lc-public-trust-grid article:last-child {
        border-bottom: 0;
    }

    .lc-public-section {
        padding: 78px 0;
    }

    .lc-public-section-heading {
        grid-template-columns: 1fr;

        gap: 18px;
    }

    .lc-public-practice-grid {
        grid-template-columns:
            repeat(2, 1fr);
    }

    .lc-public-steps {
        grid-template-columns:
            repeat(2, 1fr);

        gap: 45px 20px;
    }

    .lc-public-steps::before {
        display: none;
    }

    .lc-public-lawyer-panel {
        grid-template-columns: 1fr;

        padding: 50px 40px;
    }

    .lc-public-workspace-preview {
        max-width: 620px;

        transform: none;
    }

    .lc-public-about-grid {
        grid-template-columns: 1fr;

        gap: 25px;
    }

    .lc-public-about-copy {
        padding-top: 0;
    }

}




/* ================================================================
   RESPONSIVE — PHONE
   ================================================================ */

@media (max-width: 620px) {

    .lc-public-container {
        width: min(
            calc(100% - 28px),
            var(--lc-public-container)
        );
    }

    .lc-public-brand-copy small {
        display: none;
    }

    .lc-public-hero-grid {
        padding-top: 56px;
        padding-bottom: 55px;
    }

    .lc-public-eyebrow {
        font-size: 14px;

        letter-spacing: .12em;
    }

    .lc-public-hero h1 {
        font-size:
            clamp(38px, 12vw, 51px);
    }

    .lc-public-hero-description {
        margin-top: 21px;

        font-size: 17px;
        line-height: 1.7;
    }

    .lc-public-hero-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .lc-public-btn {
        width: 100%;
    }

    .lc-public-trust-row {
        align-items: flex-start;
        flex-direction: column;

        gap: 11px;
    }

    .lc-public-hero-visual {
        min-height: 345px;
    }

    .lc-public-justice-card {
        padding: 21px;

        transform: none;
    }

    .lc-public-visual-orbit {
        display: none;
    }

    .lc-public-section {
        padding: 65px 0;
    }

    .lc-public-section-heading {
        margin-bottom: 31px;
    }

    .lc-public-section-heading h2,
    .lc-public-centered-heading h2,
    .lc-public-lawyer-copy h2,
    .lc-public-about-grid h2 {
        font-size: 31px;
    }

    .lc-public-practice-grid {
        grid-template-columns: 1fr;
    }

    .lc-public-practice-card {
        min-height: 235px;
    }

    .lc-public-steps {
        grid-template-columns: 1fr;

        gap: 38px;
    }

    .lc-public-lawyer-section {
        padding-top: 15px;
    }

    .lc-public-lawyer-panel {
        padding: 38px 23px;

        border-radius: 18px;
    }

    .lc-public-lawyer-features {
        grid-template-columns: 1fr;
    }

    .lc-workspace-preview-body {
        grid-template-columns: 58px 1fr;
    }

    .lc-preview-content {
        padding: 24px 16px;
    }

    .lc-preview-stats {
        gap: 5px;
    }

    .lc-preview-stats span {
        height: 47px;
    }

    .lc-public-final-cta {
        padding-bottom: 65px;
    }

    .lc-public-final-panel {
        padding: 29px 24px;

        align-items: stretch;
        flex-direction: column;

        gap: 25px;
    }

    .lc-public-footer-main {
        padding-top: 48px;

        grid-template-columns: 1fr;

        gap: 38px;
    }

    .lc-public-footer-links {
        gap: 30px;
    }

    .lc-public-footer-bottom {
        padding: 20px 0;

        align-items: flex-start;
        flex-direction: column;

        gap: 6px;
    }

}


/* ================================================================
   REDUCED MOTION
   ================================================================ */

@media (prefers-reduced-motion: reduce) {

    html {
        scroll-behavior: auto;
    }

    .lc-public-body *,
    .lc-public-body *::before,
    .lc-public-body *::after {
        scroll-behavior: auto !important;

        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
    }

}
/* ================================================================
   PATCH 32.2C
   PUBLIC LAWYER DIRECTORY V3
   ================================================================ */

.lc-public-nav-links a.active {
    color: var(--lc-public-indigo);

    /* A2 navbar active token */
    color: var(--lc-navbar-link-active-color, #14532d);color: var(--lc-navbar-link-active-color, var(--lc-mode-ink-green, #14532d));
}

.lc-public-nav-links a.active::after {
    transform: scaleX(1);
}


/* HERO */

.lc-directory-v3-hero {
    position: relative;

    overflow: hidden;

    padding:
        78px
        0
        58px;

    background:
        radial-gradient(
            circle at 82% 20%,
            rgba(99, 102, 241, .20),
            transparent 27rem
        ),
        linear-gradient(
            125deg,
            #071226,
            #0b1730 58%,
            #111d3c
        );
}

.lc-directory-v3-hero::before {
    content: "";

    position: absolute;
    inset: 0;

    opacity: .14;

    background-image:
        linear-gradient(
            rgba(255,255,255,.04) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255,255,255,.04) 1px,
            transparent 1px
        );

    background-size:
        58px
        58px;
}

.lc-directory-v3-glow {
    position: absolute;

    width: 360px;
    height: 360px;

    right: -150px;
    top: -170px;

    border-radius: 50%;

    background:
        rgba(124,58,237,.13);
}

.lc-directory-v3-hero
.lc-public-container {
    position: relative;
    z-index: 2;
}

.lc-directory-v3-eyebrow {
    display: flex;
    align-items: center;

    gap: 9px;

    color: #a5b4fc;

    font-size: 14px;
    font-weight: 850;

    letter-spacing: .17em;
}

.lc-directory-v3-eyebrow span {
    width: 27px;
    height: 2px;

    border-radius: 999px;

    background:
        #818cf8;
}

.lc-directory-v3-heading {
    margin-top: 20px;

    display: flex;
    align-items: flex-end;
    justify-content: space-between;

    gap: 60px;
}

.lc-directory-v3-heading h1 {
    max-width: 750px;

    margin: 0;

    color: #ffffff;

    font-size:
        clamp(
            39px,
            4.7vw,
            61px
        );

    line-height: 1.06;

    letter-spacing:
        -.045em;

    font-weight: 740;
}

.lc-directory-v3-heading
> div:first-child
> p {
    margin:
        19px
        0
        0;

    color: #b7c0d0;

    font-size: 17px;

    line-height: 1.7;
}

.lc-directory-v3-hero-note {
    width: 260px;

    flex: 0 0 260px;

    padding:
        15px
        16px;

    border:
        1px solid
        rgba(255,255,255,.10);

    border-radius: 12px;

    display: flex;
    align-items: flex-start;

    gap: 10px;

    background:
        rgba(255,255,255,.045);
}

.lc-directory-v3-verified-icon {
    width: 29px;
    height: 29px;

    flex: 0 0 29px;

    border-radius: 8px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    background:
        rgba(52,211,153,.12);

    color:
        #6ee7b7;

    font-size: 14px;
    font-weight: 900;
}

.lc-directory-v3-hero-note
strong,
.lc-directory-v3-hero-note
small {
    display: block;
}

.lc-directory-v3-hero-note
strong {
    color: #ffffff;

    font-size: 17px;
}

.lc-directory-v3-hero-note
small {
    margin-top: 4px;

    color: #8390a7;color: var(--lc-mode-ink-blue, #8390a7);

    font-size: 14px;

    line-height: 1.5;
}


/* SEARCH */

.lc-directory-v3-search {
    margin-top: 38px;

    min-height: 80px;

    display: grid;

    grid-template-columns:
        1.4fr
        .92fr
        .8fr
        auto;

    border:
        1px solid
        rgba(255,255,255,.10);

    border-radius: 13px;

    overflow: hidden;

    background: #ffffff;background: var(--lc-mode-surface, #ffffff);

    box-shadow:
        0 25px 50px
        rgba(2,6,23,.22);
}

.lc-directory-v3-field {
    min-width: 0;

    padding:
        15px
        17px;

    border-right:
        1px solid #eaecf0;border-right:
        1px solid var(--lc-mode-border, #eaecf0);
}

.lc-directory-v3-field
label {
    display: block;

    margin-bottom: 8px;

    color: #98a2b3;

    font-size: 15px;
    font-weight: 850;

    letter-spacing: .10em;

    text-transform: uppercase;
}

.lc-directory-v3-field
input,
.lc-directory-v3-field
select {
    width: 100%;

    min-height: 27px;

    padding: 0;

    border: 0;

    background:
        transparent;

    color: #475467;color: var(--lc-mode-muted, #475467);

    font-size: 16px;

    outline: none;
}

.lc-directory-v3-field
input::placeholder {
    color: #98a2b3;
}

.lc-directory-v3-search-button {
    min-width: 165px;

    padding:
        0
        22px;

    border: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    gap: 10px;

    background:
        linear-gradient(
            135deg,
            #5b55e7,
            #6557ea
        );

    color: #ffffff;

    font-size: 16px;
    font-weight: 800;

    cursor: pointer;

    transition:
        background .18s ease,
        box-shadow .18s ease;
}

.lc-directory-v3-search-button:hover {
    background:
        linear-gradient(
            135deg,
            #4338ca,
            #5541d3
        );

    box-shadow:
        inset
        0
        0
        0
        999px
        rgba(0,0,0,.02);
}


/* RESULTS */

.lc-directory-v3-results {
    min-height: 500px;

    padding:
        68px
        0
        90px;

    background:
        #f7f8fb;background:
        var(--lc-mode-surface, #f7f8fb);
}

.lc-directory-v3-results-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;

    gap: 30px;

    margin-bottom: 27px;
}

.lc-directory-v3-results-head
h2 {
    margin: 0;

    color: #101828;color: var(--lc-mode-text, #101828);

    font-size: 27px;

    letter-spacing:
        -.025em;

    font-weight: 740;
}

.lc-directory-v3-results-head
p {
    margin:
        7px
        0
        0;

    color: #98a2b3;

    font-size: 17px;
}

.lc-directory-v3-results-head
form {
    display: flex;
    flex-direction: column;

    gap: 6px;
}

.lc-directory-v3-sort-label {
    color: #98a2b3;

    font-size: 15px;
    font-weight: 800;

    letter-spacing: .10em;

    text-transform: uppercase;
}

.lc-directory-v3-sort {
    width: 185px;
    height: 43px;

    padding:
        0
        12px;

    border:
        1px solid #e1e5ec;border:
        1px solid var(--lc-mode-border, #e1e5ec);

    border-radius: 9px;

    background: #ffffff;background: var(--lc-mode-surface, #ffffff);

    color: #475467;color: var(--lc-mode-muted, #475467);

    font-size: 14px;

    outline: none;
}


/* ACTIVE FILTERS */

.lc-directory-v3-active-filters {
    margin-bottom: 22px;

    padding:
        11px
        13px;

    border:
        1px solid #e0e3ff;border:
        1px solid var(--lc-mode-border, #e0e3ff);

    border-radius: 10px;

    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 8px;

    background: #f2f3ff;background: var(--lc-mode-surface, #f2f3ff);

    font-size: 14px;
}

.lc-directory-v3-active-filters
> span {
    color: #667085;color: var(--lc-mode-muted, #667085);

    font-weight: 700;
}

.lc-directory-v3-active-filters
b {
    padding:
        5px
        8px;

    border-radius: 6px;

    background: #ffffff;background: var(--lc-mode-surface, #ffffff);

    color:
        var(--lc-public-indigo);

    font-weight: 700;
}

.lc-directory-v3-active-filters
a {
    margin-left: auto;

    color:
        #b42318;color:
        var(--lc-mode-ink-red, #b42318);

    font-weight: 700;
}


/* CARD GRID */

.lc-directory-v3-grid {
    display: grid;

    grid-template-columns:
        repeat(
            3,
            minmax(0,1fr)
        );

    gap: 16px;
}

.lc-directory-v3-card {
    min-width: 0;

    padding: 23px;

    border:
        1px solid #e4e7ec;border:
        1px solid var(--lc-mode-border, #e4e7ec);

    border-radius: 15px;

    background: #ffffff;background: var(--lc-mode-surface, #ffffff);

    box-shadow:
        0
        5px
        18px
        rgba(16,24,40,.035);

    transition:
        transform .18s ease,
        box-shadow .18s ease,
        border-color .18s ease;
}

.lc-directory-v3-card:hover {
    transform:
        translateY(-3px);

    border-color:
        #d6d8ff;border-color:
        var(--lc-mode-border, #d6d8ff);

    box-shadow:
        0
        18px
        36px
        rgba(16,24,40,.075);
}


/* CARD HEAD */

.lc-directory-v3-card-head {
    display: flex;
    align-items: center;

    gap: 13px;
}

.lc-directory-v3-avatar {
    width: 49px;
    height: 49px;

    flex: 0 0 49px;

    border-radius: 13px;

    display: flex;
    align-items: center;
    justify-content: center;

    background:
        linear-gradient(
            145deg,
            #eef2ff,
            #f5f3ff
        );background:
        linear-gradient(
            145deg,
            var(--lc-mode-surface, #eef2ff),
            var(--lc-mode-surface, #f5f3ff)
        );

    color:
        var(--lc-public-indigo);

    font-size: 14px;
    font-weight: 850;

    border:
        1px solid #e2e5ff;border:
        1px solid var(--lc-mode-border, #e2e5ff);
} 
.lc-directory-v3-identity {
    min-width: 0;
}

.lc-directory-v3-name-row {
    display: flex;
    align-items: center;

    gap: 7px;
}

.lc-directory-v3-name-row
h3 {
    margin: 0;

    overflow: hidden;

    color: #1d2939;color: var(--lc-mode-text, #1d2939);

    font-size: 16px;
    font-weight: 750;

    text-overflow: ellipsis;
    white-space: nowrap;
}

.lc-directory-v3-check {
    width: 18px;
    height: 18px;

    flex: 0 0 18px;

    border-radius: 50%;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    background: #ecfdf3;background: var(--lc-mode-surface, #ecfdf3);

    color: #039855;color: var(--lc-mode-ink-green, #039855);

    font-size: 14px;
    font-weight: 900;
}

.lc-directory-v3-practice {
    display: block;

    margin-top: 5px;

    color:
        var(--lc-public-indigo);

    font-size: 14px;

    font-weight: 650;
}


/* LOCATION */

.lc-directory-v3-location {
    margin-top: 22px;

    padding:
        13px
        14px;

    border-radius: 9px;

    background: #f8f9fc;background: var(--lc-mode-surface, #f8f9fc);
}

.lc-directory-v3-location
span,
.lc-directory-v3-location
strong {
    display: block;
}

.lc-directory-v3-location
span {
    color: #98a2b3;

    font-size: 14px;
    font-weight: 850;

    letter-spacing: .10em;
}

.lc-directory-v3-location
strong {
    margin-top: 5px;

    color: #475467;color: var(--lc-mode-muted, #475467);

    font-size: 14px;
}


/* STATS */

.lc-directory-v3-stats {
    margin-top: 13px;

    display: grid;

    grid-template-columns:
        repeat(
            2,
            minmax(0,1fr)
        );

    border:
        1px solid #eaecf0;border:
        1px solid var(--lc-mode-border, #eaecf0);

    border-radius: 9px;

    overflow: hidden;
}

.lc-directory-v3-stats
> div {
    padding:
        13px
        14px;
}

.lc-directory-v3-stats
> div:first-child {
    border-right:
        1px solid #eaecf0;border-right:
        1px solid var(--lc-mode-border, #eaecf0);
}

.lc-directory-v3-stats
strong,
.lc-directory-v3-stats
span {
    display: block;
}

.lc-directory-v3-stats
strong {
    color: #1d2939;color: var(--lc-mode-text, #1d2939);

    font-size: 14px;
}

.lc-directory-v3-stats
span {
    margin-top: 4px;

    color: #98a2b3;

    font-size: 14px;
}


/* LICENSE */

.lc-directory-v3-license {
    margin-top: 15px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 15px;
}

.lc-directory-v3-license
span {
    color: #98a2b3;

    font-size: 14px;
    font-weight: 850;

    letter-spacing: .08em;
}

.lc-directory-v3-license
strong {
    color: #475467;color: var(--lc-mode-muted, #475467);

    font-size: 14px;
}


/* FOOTER */

.lc-directory-v3-card-footer {
    margin-top: 18px;

    padding-top: 17px;

    border-top:
        1px solid #eaecf0;border-top:
        1px solid var(--lc-mode-border, #eaecf0);

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 12px;
}

.lc-directory-v3-status {
    display: inline-flex;
    align-items: center;

    gap: 6px;

    color: #027a48;color: var(--lc-mode-ink-green, #027a48);

    font-size: 14px;
    font-weight: 700;
}

.lc-directory-v3-status
b {
    width: 16px;
    height: 16px;

    border-radius: 50%;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    background: #ecfdf3;background: var(--lc-mode-surface, #ecfdf3);

    font-size: 14px;
}

.lc-directory-v3-profile-link {
    display: inline-flex;
    align-items: center;

    gap: 6px;

    color:
        var(--lc-public-indigo);

    font-size: 14px;
    font-weight: 750;

    transition:
        gap .18s ease,
        color .18s ease;
}

.lc-directory-v3-profile-link:hover {
    gap: 9px;

    color:
        var(--lc-public-indigo-dark);
}


/* EMPTY */

.lc-directory-v3-empty {
    grid-column: 1 / -1;

    padding:
        60px
        25px;

    border:
        1px dashed #d9dee7;border:
        1px dashed var(--lc-mode-border, #d9dee7);

    border-radius: 15px;

    background: #ffffff;background: var(--lc-mode-surface, #ffffff);

    text-align: center;
}

.lc-directory-v3-empty-icon {
    width: 50px;
    height: 50px;

    margin:
        0
        auto
        17px;

    border-radius: 13px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #f0f0ff;background: var(--lc-mode-surface, #f0f0ff);

    color:
        var(--lc-public-indigo);

    font-size: 19px;
}

.lc-directory-v3-empty
h3 {
    margin: 0;

    color: #344054;color: var(--lc-mode-text, #344054);

    font-size: 17px;
}

.lc-directory-v3-empty
p {
    margin:
        8px
        0
        17px;

    color: #98a2b3;

    font-size: 17px;
}

.lc-directory-v3-empty
a {
    color:
        var(--lc-public-indigo);

    font-size: 17px;
    font-weight: 750;
}


/* PAGINATION */

.lc-directory-v3-pagination {
    margin-top: 35px;
}


/* ================================================================
   DIRECTORY RESPONSIVE
   ================================================================ */

@media (max-width: 1000px) {

    .lc-directory-v3-heading {
        align-items: flex-start;
        flex-direction: column;

        gap: 25px;
    }

    .lc-directory-v3-hero-note {
        width: 100%;
        max-width: 420px;

        flex-basis: auto;
    }

    .lc-directory-v3-search {
        grid-template-columns:
            repeat(2, 1fr);
    }

    .lc-directory-v3-field {
        border-bottom:
            1px solid #eaecf0;border-bottom:
            1px solid var(--lc-mode-border, #eaecf0);
    }

    .lc-directory-v3-search-button {
        min-height: 65px;
    }

    .lc-directory-v3-grid {
        grid-template-columns:
            repeat(
                2,
                minmax(0,1fr)
            );
    }

}


@media (max-width: 680px) {

    .lc-directory-v3-hero {
        padding:
            56px
            0
            44px;
    }

    .lc-directory-v3-heading
    h1 {
        font-size: 39px;
    }

    .lc-directory-v3-search {
        margin-top: 29px;

        grid-template-columns: 1fr;
    }

    .lc-directory-v3-field {
        border-right: 0;
    }

    .lc-directory-v3-results {
        padding:
            52px
            0
            65px;
    }

    .lc-directory-v3-results-head {
        align-items: stretch;
        flex-direction: column;

        gap: 20px;
    }

    .lc-directory-v3-results-head
    form,
    .lc-directory-v3-sort {
        width: 100%;
    }

    .lc-directory-v3-grid {
        grid-template-columns: 1fr;
    }

    .lc-directory-v3-active-filters
    a {
        width: 100%;

        margin-left: 0;

        margin-top: 3px;
    }

}
/* ================================================================
   PATCH 32.2D
   PUBLIC LAWYER PROFILE V3
   ================================================================ */

.lc-profile-v3-hero {
    position: relative;
    overflow: hidden;
    padding: 42px 0 62px;
    background:
        radial-gradient(
            circle at 84% 18%,
            rgba(99, 102, 241, .20),
            transparent 28rem
        ),
        linear-gradient(
            125deg,
            #071226,
            #0b1730 58%,
            #111d3c
        );
}

.lc-profile-v3-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    opacity: .13;
    background-image:
        linear-gradient(
            rgba(255,255,255,.04) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255,255,255,.04) 1px,
            transparent 1px
        );
    background-size: 58px 58px;
}

.lc-profile-v3-glow {
    position: absolute;
    width: 390px;
    height: 390px;
    right: -170px;
    top: -190px;
    border-radius: 50%;
    background: rgba(124, 58, 237, .14);
}

.lc-profile-v3-hero .lc-public-container {
    position: relative;
    z-index: 2;
}

.lc-profile-v3-back {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #aeb8ca !important;
    font-size: 14px;
    font-weight: 650;
    transition: color .18s ease;
}

.lc-profile-v3-back:hover {
    color: #ffffff !important;
}

.lc-profile-v3-hero-grid {
    margin-top: 42px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 310px;
    align-items: center;
    gap: 65px;
}

.lc-profile-v3-person {
    display: flex;
    align-items: center;
    gap: 27px;
    min-width: 0;
}

.lc-profile-v3-avatar {
    width: 105px;
    height: 105px;
    flex: 0 0 105px;
    border: 1px solid rgba(199, 210, 254, .20);border: 1px solid var(--lc-mode-border-soft, rgba(199, 210, 254, .20));
    border-radius: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    background:
        linear-gradient(
            145deg,
            rgba(129, 140, 248, .20),
            rgba(124, 58, 237, .12)
        );
    color: #ffffff;
    font-size: 35px;
    font-weight: 800;
    box-shadow: 0 24px 50px rgba(0,0,0,.18);
}

.lc-profile-v3-identity {
    min-width: 0;
}

.lc-profile-v3-verified {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #6ee7b7;
    font-size: 14px;
    font-weight: 850;
    letter-spacing: .14em;
}

.lc-profile-v3-verified span {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(52, 211, 153, .13);
    font-size: 14px;
}

.lc-profile-v3-identity h1 {
    margin: 13px 0 0;
    color: #ffffff;
    font-size: clamp(35px, 4.4vw, 55px);
    line-height: 1.05;
    letter-spacing: -.04em;
    font-weight: 740;
}

.lc-profile-v3-headline {
    margin: 12px 0 0;
    color: #c5ccda;
    font-size: 14px;
    line-height: 1.6;
}

.lc-profile-v3-meta {
    margin-top: 20px;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.lc-profile-v3-meta span {
    padding: 7px 10px;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 7px;
    background: rgba(255,255,255,.055);
    color: #b9c2d2;
    font-size: 14px;
    font-weight: 650;
}

.lc-profile-v3-hero-card {
    padding: 23px;
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 16px;
    background: rgba(255,255,255,.07);
    box-shadow: 0 25px 50px rgba(0,0,0,.17);
    backdrop-filter: blur(14px);
}

.lc-profile-v3-status-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
}

.lc-profile-v3-status-row small,
.lc-profile-v3-status-row strong {
    display: block;
}

.lc-profile-v3-status-row small {
    color: #8390a7;color: var(--lc-mode-ink-blue, #8390a7);
    font-size: 14px;
    font-weight: 850;
    letter-spacing: .12em;
}

.lc-profile-v3-status-row strong {
    margin-top: 5px;
    color: #ffffff;
    font-size: 14px;
}

.lc-profile-v3-status-icon {
    width: 35px;
    height: 35px;
    flex: 0 0 35px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(52,211,153,.13);
    color: #6ee7b7;
    font-size: 14px;
    font-weight: 900;
}

.lc-profile-v3-hero-card > p {
    margin: 17px 0 0;
    color: #9eabc0;
    font-size: 17px;
    line-height: 1.65;
}

.lc-profile-v3-primary {
    min-height: 44px;
    margin-top: 19px;
    padding: 0 15px;
    border-radius: 9px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    background: linear-gradient(135deg, #5b55e7, #6557ea);
    color: #ffffff !important;
    font-size: 14px;
    font-weight: 750;
    box-shadow: 0 11px 22px rgba(79,70,229,.22);
    transition:
        transform .18s ease,
        background .18s ease;
}

.lc-profile-v3-primary:hover {
    transform: translateY(-1px);
    background: linear-gradient(135deg, #4338ca, #5541d3);
}

.lc-profile-v3-safe-note {
    display: block;
    margin-top: 12px;
    color: #748197;color: var(--lc-mode-ink-blue, #748197);
    font-size: 17px;
    line-height: 1.5;
}


/* CONTENT */

.lc-profile-v3-content {
    padding: 64px 0 90px;
    background: #f7f8fb;background: var(--lc-mode-surface, #f7f8fb);
}

.lc-profile-v3-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 315px;
    align-items: start;
    gap: 22px;
}

.lc-profile-v3-main,
.lc-profile-v3-sidebar {
    display: grid;
    gap: 18px;
}

.lc-profile-v3-card {
    padding: 27px;
    border: 1px solid #e4e7ec;border: 1px solid var(--lc-mode-border, #e4e7ec);
    border-radius: 15px;
    background: #ffffff;background: var(--lc-mode-surface, #ffffff);
    box-shadow: 0 5px 18px rgba(16,24,40,.035);
}

.lc-profile-v3-card-heading > span {
    display: block;
    margin-bottom: 8px;
    color: var(--lc-public-indigo);
    font-size: 14px;
    font-weight: 850;
    letter-spacing: .13em;
}

.lc-profile-v3-card-heading h2,
.lc-profile-v3-card-heading h3 {
    margin: 0;
    color: #1d2939;color: var(--lc-mode-text, #1d2939);
    letter-spacing: -.02em;
}

.lc-profile-v3-card-heading h2 {
    font-size: 21px;
}

.lc-profile-v3-card-heading h3 {
    font-size: 16px;
}

.lc-profile-v3-bio,
.lc-profile-v3-office {
    margin: 19px 0 0;
    color: #667085;color: var(--lc-mode-muted, #667085);
    font-size: 14px;
    line-height: 1.85;
    white-space: pre-line;
}

.lc-profile-v3-empty-copy {
    margin-top: 18px;
    padding: 17px;
    border-radius: 9px;
    background: #f8f9fc;background: var(--lc-mode-surface, #f8f9fc);
    color: #98a2b3;
    font-size: 17px;
}

.lc-profile-v3-info-grid {
    margin-top: 22px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    border: 1px solid #eaecf0;border: 1px solid var(--lc-mode-border, #eaecf0);
    border-radius: 11px;
    overflow: hidden;
}

.lc-profile-v3-info {
    min-width: 0;
    padding: 18px;
    border-bottom: 1px solid #eaecf0;border-bottom: 1px solid var(--lc-mode-border, #eaecf0);
}

.lc-profile-v3-info:nth-child(odd) {
    border-right: 1px solid #eaecf0;border-right: 1px solid var(--lc-mode-border, #eaecf0);
}

.lc-profile-v3-info:nth-last-child(-n+2) {
    border-bottom: 0;
}

.lc-profile-v3-info span,
.lc-profile-v3-info strong {
    display: block;
}

.lc-profile-v3-info span {
    color: #98a2b3;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.lc-profile-v3-info strong {
    margin-top: 7px;
    overflow-wrap: anywhere;
    color: #344054;color: var(--lc-mode-text, #344054);
    font-size: 14px;
}


/* VERIFICATION */

.lc-profile-v3-verification {
    margin-top: 19px;
    padding: 15px;
    border: 1px solid #d1fadf;border: 1px solid var(--lc-mode-border, #d1fadf);
    border-radius: 10px;
    display: flex;
    align-items: flex-start;
    gap: 11px;
    background: #f6fef9;background: var(--lc-mode-surface, #f6fef9);
}

.lc-profile-v3-shield {
    width: 30px;
    height: 30px;
    flex: 0 0 30px;
    border-radius: 9px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #dcfae6;background: var(--lc-mode-surface, #dcfae6);
    color: #079455;color: var(--lc-mode-ink-green, #079455);
    font-size: 14px;
    font-weight: 900;
}

.lc-profile-v3-verification strong {
    color: #05603a;color: var(--lc-mode-ink-green, #05603a);
    font-size: 14px;
}

.lc-profile-v3-verification p {
    margin: 5px 0 0;
    color: #4b7b64;color: var(--lc-mode-ink-green, #4b7b64);
    font-size: 17px;
    line-height: 1.55;
}

.lc-profile-v3-verification-list {
    margin-top: 18px;
    border-top: 1px solid #eaecf0;border-top: 1px solid var(--lc-mode-border, #eaecf0);
}

.lc-profile-v3-verification-list > div {
    padding: 12px 0;
    border-bottom: 1px solid #eaecf0;border-bottom: 1px solid var(--lc-mode-border, #eaecf0);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
}

.lc-profile-v3-verification-list > div:last-child {
    border-bottom: 0;
    padding-bottom: 0;
}

.lc-profile-v3-verification-list span {
    color: #98a2b3;
    font-size: 14px;
}

.lc-profile-v3-verification-list strong {
    color: #027a48;color: var(--lc-mode-ink-green, #027a48);
    font-size: 14px;
}

.lc-profile-v3-sidebar-copy {
    margin: 14px 0 0;
    color: #667085;color: var(--lc-mode-muted, #667085);
    font-size: 14px;
    line-height: 1.65;
}

.lc-profile-v3-secondary {
    min-height: 41px;
    margin-top: 17px;
    padding: 0 13px;
    border: 1px solid #dfe3e8;border: 1px solid var(--lc-mode-border, #dfe3e8);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    color: #475467 !important;color: var(--lc-mode-muted, #475467) !important;
    font-size: 14px;
    font-weight: 700;
    transition:
        border-color .18s ease,
        color .18s ease,
        background .18s ease;
}

.lc-profile-v3-secondary:hover {
    border-color: #c7d2fe;border-color: var(--lc-mode-border, #c7d2fe);
    background: #f5f3ff;background: var(--lc-mode-surface, #f5f3ff);
    color: var(--lc-public-indigo) !important;
}


/* RESPONSIVE */

.lc-public-nav {
    min-height: 68px;
}

    .lc-profile-v3-hero-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .lc-profile-v3-hero-card {
        max-width: 520px;
    }

    .lc-profile-v3-layout {
        grid-template-columns: 1fr;
    }

    .lc-profile-v3-sidebar {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }

@media (max-width: 620px) {

    .lc-profile-v3-hero {
        padding: 32px 0 47px;
    }

    .lc-profile-v3-hero-grid {
        margin-top: 31px;
    }

    .lc-profile-v3-person {
        align-items: flex-start;
        flex-direction: column;
        gap: 20px;
    }

    .lc-profile-v3-avatar {
        width: 78px;
        height: 78px;
        flex-basis: 78px;
        border-radius: 19px;
        font-size: 27px;
    }

    .lc-profile-v3-identity h1 {
        font-size: 37px;
    }

    .lc-profile-v3-meta {
        align-items: flex-start;
        flex-direction: column;
    }

    .lc-profile-v3-content {
        padding: 45px 0 65px;
    }

    .lc-profile-v3-card {
        padding: 21px;
    }

    .lc-profile-v3-info-grid {
        grid-template-columns: 1fr;
    }

    .lc-profile-v3-info,
    .lc-profile-v3-info:nth-child(odd),
    .lc-profile-v3-info:nth-last-child(-n+2) {
        border-right: 0;
        border-bottom: 1px solid #eaecf0;border-bottom: 1px solid var(--lc-mode-border, #eaecf0);
    }

    .lc-profile-v3-info:last-child {
        border-bottom: 0;
    }

    .lc-profile-v3-sidebar {
        grid-template-columns: 1fr;
    }
}
/* ================================================================
   PATCH 32.2E
   MOBILE + TABLET PUBLIC EXPERIENCE POLISH
   ================================================================ */

/* ================================================================
   GLOBAL TOUCH / MOBILE QUALITY
   ================================================================ */

@media (max-width: 900px) {

    body {
        overflow-x: hidden;
    }

    .lc-public-header {
        position: relative;
        z-index: 1000;
    }

    .lc-public-nav {
        min-height: 68px;
    }

    .lc-public-menu-button {
        width: 44px;
        height: 44px;

        flex: 0 0 44px;

        border-radius: 11px;

        -webkit-tap-highlight-color: transparent;
    }

    .lc-public-mobile-menu {
        position: relative;
        z-index: 999;
    }

    .lc-public-mobile-menu a {
        min-height: 44px;

        display: flex;
        align-items: center;

        font-size: 16px;
    }

    .lc-public-mobile-primary {
        justify-content: center;
    }

}


/* ================================================================
   HOMEPAGE — TABLET
   ================================================================ */

@media (max-width: 900px) {

    .lc-public-nav {
        min-height: 68px;
    }

    .lc-public-home .lc-public-container {
        width: min(
            calc(100% - 34px),
            1180px
        );
    }


    /* Header */

    .lc-public-home .lc-public-nav {
        min-height: 68px;
    }

    .lc-public-home .lc-public-menu,
    .lc-public-home .lc-public-actions {
        display: none;
    }

    .lc-public-home .lc-public-menu-button {
        display: flex;

        margin-left: auto;
    }


    /* Mobile menu */

    .lc-public-home .lc-public-mobile-menu {
        display: none;

        padding: 11px 17px 17px;

        border-top: 1px solid #eaecf0;border-top: 1px solid var(--lc-mode-border, #eaecf0);

        background: #ffffff;background: var(--lc-mode-surface, #ffffff);

        box-shadow:
            0 16px 28px
            rgba(16, 24, 40, .08);
    }

    .lc-public-home .lc-public-mobile-menu.open {
        display: flex;

        flex-direction: column;

        gap: 3px;
    }

    .lc-public-home .lc-public-mobile-menu a {
        padding: 11px 12px;

        border-radius: 8px;

        color: #344054;color: var(--lc-mode-text, #344054);

        font-size: 16px;
        font-weight: 600;

        text-decoration: none;
    }

    .lc-public-home .lc-public-mobile-menu a:hover {
        background: #f8f9fc;background: var(--lc-mode-surface, #f8f9fc);

        color: #4f46e5;color: var(--lc-mode-ink-blue, #4f46e5);
    }


    /* Search hero */

    .lc-public-home .lc-find-hero {
        padding:
            64px
            0
            56px;
    }

    .lc-public-home .lc-find-hero h1 {
        max-width: 720px;

        font-size:
            clamp(38px, 7vw, 54px);

        line-height: 1.08;
    }

    .lc-public-home .lc-find-hero h1 br {
        display: none;
    }

    .lc-public-home .lc-find-hero > .lc-public-container > p {
        max-width: 650px;

        font-size: 17px;

        line-height: 1.7;
    }


    /* Search form */

    .lc-public-home .lc-find-search {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        overflow: hidden;

        border-radius: 14px;
    }

    .lc-public-home .lc-find-field {
        min-width: 0;
    }

    .lc-public-home .lc-find-field input,
    .lc-public-home .lc-find-field select {
        width: 100%;

        min-width: 0;
    }

    .lc-public-home .lc-find-submit {
        min-height: 60px;

        grid-column: 1 / -1;
    }


    /* Lawyer cards */

    .lc-public-home .lc-lawyer-head {
        align-items: flex-start;

        flex-direction: column;

        gap: 18px;
    }

    .lc-public-home .lc-lawyer-head form,
    .lc-public-home .lc-lawyer-sort {
        width: 100%;
    }

    .lc-public-home .lc-lawyer-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }


    /* Marketing */

    .lc-public-home .lc-feature-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    .lc-public-home .lc-platform-grid,
    .lc-public-home .lc-about-grid {
        grid-template-columns: 1fr;

        gap: 38px;
    }
}



/* ================================================================
   HOMEPAGE — PHONE
   ================================================================ */

@media (max-width: 620px) {

    .lc-public-home .lc-public-container {
        width: min(
            calc(100% - 28px),
            1180px
        );
    }


    /* Branding */

    .lc-public-home .lc-public-brand-copy small {
        display: none;
    }

    .lc-public-home .lc-public-logo {
        flex-shrink: 0;
    }


    /* Hero */

    .lc-public-home .lc-find-hero {
        padding:
            48px
            0
            42px;
    }

    .lc-public-home .lc-find-eyebrow {
        font-size: 14px;

        letter-spacing: .11em;
    }

    .lc-public-home .lc-find-hero h1 {
        margin-top: 15px;

        font-size:
            clamp(34px, 10.5vw, 43px);

        line-height: 1.08;

        letter-spacing: -.035em;
    }

    .lc-public-home .lc-find-hero > .lc-public-container > p {
        margin-top: 17px;

        font-size: 17px;

        line-height: 1.65;
    }


    /* Search */

    .lc-public-home .lc-find-search {
        margin-top: 27px;

        grid-template-columns: 1fr;

        border-radius: 13px;
    }

    .lc-public-home .lc-find-field {
        min-height: 70px;

        padding:
            13px
            15px;

        border-right: 0;

        border-bottom:
            1px solid #eaecf0;border-bottom:
            1px solid var(--lc-mode-border, #eaecf0);
    }

    .lc-public-home .lc-find-field label {
        margin-bottom: 7px;

        font-size: 15px;
    }

    .lc-public-home .lc-find-field input,
    .lc-public-home .lc-find-field select {
        min-height: 30px;

        font-size: 16px;
    }

    .lc-public-home .lc-find-submit {
        width: 100%;

        min-height: 54px;

        grid-column: auto;

        font-size: 14px;
    }


    /* Directory results still present on homepage */

    .lc-public-home .lc-lawyer-section {
        padding-top: 48px;
        padding-bottom: 55px;
    }

    .lc-public-home .lc-lawyer-head h2 {
        font-size: 27px;
    }

    .lc-public-home .lc-lawyer-grid {
        grid-template-columns: 1fr;
    }

    .lc-public-home .lc-lawyer-card {
        padding: 20px;
    }

    .lc-public-home .lc-lawyer-card-footer {
        align-items: flex-start;

        flex-direction: column;

        gap: 12px;
    }

    .lc-public-home .lc-lawyer-view-profile,
    .lc-public-home .lc-lawyer-more {
        width: 100%;

        justify-content: space-between;
    }

    .lc-public-home .lc-active-filters {
        align-items: flex-start;

        flex-direction: column;
    }


    /* Feature sections */

    .lc-public-home .lc-marketing-section {
        padding:
            60px
            0;
    }

    .lc-public-home .lc-section-intro h2,
    .lc-public-home .lc-platform-grid h2,
    .lc-public-home .lc-about-grid h2 {
        font-size: 30px;

        line-height: 1.15;
    }

    .lc-public-home .lc-feature-grid {
        grid-template-columns: 1fr;
    }

    .lc-public-home .lc-platform-grid {
        gap: 28px;
    }

    .lc-public-home .lc-platform-metrics {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    .lc-public-home .lc-about-actions {
        align-items: stretch;

        flex-direction: column;
    }

    .lc-public-home .lc-about-actions a {
        width: 100%;

        justify-content: center;
    }


    /* Footer */

    .lc-public-home .lc-public-footer
    > .lc-public-container {
        padding:
            26px
            0;

        align-items: flex-start;

        flex-direction: column;

        gap: 12px;
    }

}


/* ================================================================
   DIRECTORY — MOBILE QUALITY PASS
   ================================================================ */

@media (max-width: 680px) {

    .lc-directory-v3-heading h1 {
        font-size:
            clamp(34px, 10vw, 40px);

        line-height: 1.08;
    }

    .lc-directory-v3-heading
    > div:first-child
    > p {
        font-size: 17px;

        line-height: 1.65;
    }

    .lc-directory-v3-hero-note {
        max-width: none;
    }

    .lc-directory-v3-search {
        overflow: hidden;

        box-shadow:
            0 18px 36px
            rgba(2, 6, 23, .18);
    }

    .lc-directory-v3-field {
        min-height: 70px;

        padding:
            13px
            15px;
    }

    .lc-directory-v3-field input,
    .lc-directory-v3-field select {
        min-height: 31px;

        font-size: 16px;
    }

    .lc-directory-v3-search-button {
        width: 100%;

        min-width: 0;

        min-height: 54px;

        font-size: 16px;
    }

    .lc-directory-v3-card {
        padding: 20px;
    }

    .lc-directory-v3-avatar {
        width: 47px;
        height: 47px;

        flex-basis: 47px;
    }

    .lc-directory-v3-name-row h3 {
        font-size: 16px;
    }

    .lc-directory-v3-card-footer {
        align-items: flex-start;

        flex-direction: column;

        gap: 13px;
    }

    .lc-directory-v3-profile-link {
        width: 100%;

        min-height: 40px;

        padding: 0 12px;

        border:
            1px solid #e0e3ff;border:
            1px solid var(--lc-mode-border, #e0e3ff);

        border-radius: 8px;

        justify-content: space-between;

        background: #f7f7ff;background: var(--lc-mode-surface, #f7f7ff);
    }

    .lc-directory-v3-license {
        align-items: flex-start;

        flex-direction: column;

        gap: 6px;
    }

}


/* ================================================================
   PUBLIC PROFILE — MOBILE QUALITY PASS
   ================================================================ */

@media (max-width: 620px) {

    .lc-profile-v3-back {
        min-height: 40px;

        font-size: 14px;
    }

    .lc-profile-v3-person {
        width: 100%;
    }

    .lc-profile-v3-identity {
        width: 100%;
    }

    .lc-profile-v3-identity h1 {
        overflow-wrap: anywhere;

        font-size:
            clamp(33px, 10vw, 39px);
    }

    .lc-profile-v3-headline {
        font-size: 14px;
    }

    .lc-profile-v3-meta {
        width: 100%;
    }

    .lc-profile-v3-meta span {
        width: 100%;

        padding:
            9px
            11px;

        font-size: 14px;
    }

    .lc-profile-v3-hero-card {
        width: 100%;

        padding: 20px;
    }

    .lc-profile-v3-primary {
        width: 100%;

        min-height: 48px;

        font-size: 14px;
    }

    .lc-profile-v3-card-heading h2 {
        font-size: 20px;
    }

    .lc-profile-v3-bio,
    .lc-profile-v3-office {
        font-size: 14px;

        line-height: 1.75;
    }

    .lc-profile-v3-info {
        padding: 16px;
    }

    .lc-profile-v3-info strong {
        font-size: 14px;
    }

    .lc-profile-v3-secondary {
        min-height: 45px;

        font-size: 14px;
    }

}


/* ================================================================
   SMALL PHONE — 360PX QUALITY PASS
   ================================================================ */

@media (max-width: 380px) {

    .lc-public-container,
    .lc-public-home .lc-public-container {
        width:
            calc(100% - 22px);
    }

    .lc-public-brand-copy strong {
        font-size: 14px;
    }

    .lc-public-brand-mark {
        width: 36px;
        height: 36px;

        flex-basis: 36px;
    }

    .lc-directory-v3-heading h1,
    .lc-profile-v3-identity h1 {
        font-size: 32px;
    }

    .lc-directory-v3-card,
    .lc-profile-v3-card {
        padding: 18px;
    }

}


/* ================================================================
   LANDSCAPE / TOUCH DEVICES
   ================================================================ */

@media (
    hover: none
) and (
    pointer: coarse
) {

    .lc-public-btn:hover,
    .lc-directory-v3-card:hover,
    .lc-public-practice-card:hover,
    .lc-profile-v3-primary:hover {
        transform: none;
    }

}

/* ================================================================
   MOBILE ACCESSIBILITY
   ================================================================ */

@media (max-width: 900px) {

    .lc-public-nav {
        min-height: 68px;
    }

    .lc-public-body input,
    .lc-public-body select,
    .lc-public-body button,
    .lc-public-body a {
        -webkit-tap-highlight-color:
            rgba(79, 70, 229, .10);
    }

    .lc-public-body input:focus,
    .lc-public-body select:focus {
        outline:
            2px solid
            rgba(79, 70, 229, .22);

        outline-offset: 1px;
    }

}

@media (max-width: 620px) {
    .lc-public-footer-links {
        grid-template-columns: minmax(0, 1fr);
    }

    .lc-public-footer-links > div {
        min-width: 0;
    }
}

/* LEGALCONNECT — Clean enterprise footer correction */
.lc-public-footer-links {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(145px, 1fr)) !important;
    gap: 64px !important;
}

.lc-public-footer-links > div {
    position: static !important;
    min-width: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    gap: 11px !important;
}

.lc-public-footer-links strong {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin-bottom: 6px !important;
    color: #f8fafc !important;
    font-size: 14px !important;
    font-weight: 750 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase;
}

.lc-public-footer-links strong::before {
    content: "" !important;
    width: 16px !important;
    height: 2px !important;
    flex: 0 0 16px !important;
    border-radius: 999px !important;
    background: #818cf8 !important;
    box-shadow: none !important;
}

.lc-public-footer-links a {
    width: fit-content !important;
    min-height: auto !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 7px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #8f9cb0 !important;color: var(--lc-mode-muted, #8f9cb0) !important;
    font-size: 14px !important;
    font-weight: 550 !important;
    transition: color .18s ease, transform .18s ease !important;
}

.lc-public-footer-links a::after {
    content: "\203A" !important;
    color: #596982 !important;color: var(--lc-mode-ink-blue, #596982) !important;
    font-size: 14px !important;
    line-height: 1 !important;
}

.lc-public-footer-links a:hover {
    color: #e0e7ff !important;
    background: transparent !important;
    transform: translateX(3px) !important;
}

.lc-public-footer-links a:hover::after {
    color: #a5b4fc !important;
}

@media (max-width: 620px) {
    .lc-public-footer-links {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 30px !important;
    }
}
/* ==========================================================================
   PATCH 8.12C — ICON & ILLUSTRATION RUNTIME BRIDGE
   Public Experience
   ========================================================================== */

/*
 * Shared neutral icon containers.
 * Structural dimensions specific to individual public components remain
 * intact so existing layouts do not shift.
 */
.lc-public-justice-icon,
.lc-floating-icon,
.lc-public-trust-grid .lc-trust-icon,
.lc-practice-icon,
.lc-directory-v3-empty-icon {
    border-color:
        var(
            --lc-icon-container-border,
            #dbeafe
        );border-color:
        var(
            --lc-icon-container-border,
            var(--lc-mode-border, #dbeafe)
        );

    border-radius:
        var(
            --lc-icon-container-radius,
            10px
        );

    background:
        var(
            --lc-icon-container-background,
            #eff6ff
        );background:
        var(
            --lc-icon-container-background,
            var(--lc-mode-surface, #eff6ff)
        );

    color:
        var(
            --lc-icon-primary-color,
            #2563eb
        );color:
        var(
            --lc-icon-primary-color,
            var(--lc-mode-ink-blue, #2563eb)
        );
}


/*
 * Shared SVG language.
 */
.lc-public-justice-icon svg,
.lc-floating-icon svg,
.lc-public-trust-grid .lc-trust-icon svg,
.lc-practice-icon svg,
.lc-directory-v3-empty-icon svg {
    color:
        var(
            --lc-icon-primary-color,
            #2563eb
        );color:
        var(
            --lc-icon-primary-color,
            var(--lc-mode-ink-blue, #2563eb)
        );

    stroke-width:
        var(
            --lc-icon-stroke-width,
            2
        );
}


/*
 * Search is a neutral supporting icon.
 */
.lc-public-search-icon {
    color:
        var(
            --lc-icon-muted-color,
            #64748b
        );color:
        var(
            --lc-icon-muted-color,
            var(--lc-mode-ink-blue, #64748b)
        );
}


/*
 * Illustration elements can opt into the shared illustration accent.
 */
.lc-illustration-accent {
    color:
        var(
            --lc-illustration-accent,
            #2563eb
        );color:
        var(
            --lc-illustration-accent,
            var(--lc-mode-ink-blue, #2563eb)
        );
}
/* LEGALCONNECT — Button Designer runtime bridge (public experience)
   Append to END of public/css/legalconnect-public-v3.css.
   Database-generated --lc-button-* values remain the source of truth. */

.lc-public-body .lc-public-btn-primary,
.lc-public-body .lc-profile-v3-primary {
    background: var(--lc-button-primary-background, #2563EB);
    border-color: var(--lc-button-primary-background, #2563EB);
    color: var(--lc-button-primary-text, #ffffff);
    border-radius: var(--lc-button-radius, 9px);
    font-weight: var(--lc-button-font-weight, 700);
    transition: background var(--lc-button-transition, 180ms) ease,
                border-color var(--lc-button-transition, 180ms) ease,
                transform var(--lc-button-transition, 180ms) ease;
}
.lc-public-body .lc-public-btn-primary:hover,
.lc-public-body .lc-profile-v3-primary:hover {
    background: var(--lc-button-primary-background, #2563EB);
    border-color: var(--lc-button-primary-background, #2563EB);
    color: var(--lc-button-primary-text, #ffffff);
    filter: brightness(.94);
}
/* Navbar CTA is intentionally governed by Header/Navbar Designer tokens. */
