/* =========================================================================
   LEXCOMPLY - newStyle.css
   -------------------------------------------------------------------------
   Architecture:
   1. Design tokens (CSS variables)
   2. Base / typography
   3. Common / reusable classes (buttons, badges, section heads, links)
   4. Section-scoped styles (one block per <section>, matching home.html)
   5. Responsive tweaks
   Bootstrap handles grid + spacing utilities; this file only adds the
   LexComply visual skin on top of it.
   ========================================================================= */

/* -------------------------------------------------------------------------
   1. DESIGN TOKENS
------------------------------------------------------------------------- */
:root {
    /* Brand colors */
    --lc-green: #7BC33C;
    /* primary buttons / links / icons */
    --lc-green-dark: #2F7275;
    /* hover state */
    --lc-green-light: #E7F5EC;
    /* icon chips / soft backgrounds */
    --lc-teal-dark: #01353A;
    /* stats bar / CTA background */
    --lc-teal-darker: #012226;
    /* gradient edge for dark sections */

    /* Neutrals */
    --lc-text-heading: #101F24;
    --lc-text-body: #5B6B70;
    --lc-text-muted: #8A9A9E;
    --lc-border: #E7ECEA;
    --lc-bg-light: #F6F9F8;
    --lc-white: #FFFFFF;

    /* Typography */
    /* --lc-font: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; */
    --lc-font: 'inherit', -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;

    /* Radii / shadows */
    --lc-radius-sm: 10px;
    --lc-radius-md: 16px;
    --lc-radius-pill: 999px;
    --lc-shadow-card: 0 4px 24px rgba(16, 31, 36, 0.06);
    --lc-shadow-card-hover: 0 10px 30px rgba(16, 31, 36, 0.10);

    /* Spacing rhythm used across sections */
    --lc-section-padding: 88px;
}

/* -------------------------------------------------------------------------
   2. BASE / TYPOGRAPHY
------------------------------------------------------------------------- */

.container {
    max-width: 1350px !important;
}

.lc-main {
    font-family: var(--lc-font);
    color: var(--lc-text-body);
    overflow-x: hidden;
}

/* .lc-main h1, */
.lc-main h2,
.lc-main h3,
.lc-main h4 {
    font-family: var(--lc-font);
    color: var(--lc-text-heading);
    margin: 0;
}

.lc-main p {
    margin: 0;
    line-height: 1.7;
}

.lc-main img {
    max-width: 100%;
    display: block;
    min-height: 100%;
}

.lc-main section {
    padding: var(--lc-section-padding) 0;
}

.text-accent {
    color: var(--lc-green);
}

/* -------------------------------------------------------------------------
   3. COMMON / REUSABLE CLASSES
------------------------------------------------------------------------- */

/* Small green uppercase label used above every section heading */
.eyebrow {
    display: inline-block;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: var(--lc-green);
    margin-bottom: 14px;
}

.eyebrow--center {
    display: block;
    text-align: center;
}

/* Section heading row: heading on the left, supporting copy/link on the right */
.section-head {
    align-items: flex-end;
    margin-bottom: 48px;
}

.section-head__aside {
    color: var(--lc-text-body);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
}

.section-head__aside p {
    margin: 0;
}

.section-head--center {
    text-align: center;
    max-width: 640px;
    margin-left: auto;
    margin-right: auto;
}

.section-title {
    font-weight: 700;
    font-size: 34px;
    line-height: 1.25;
}

/* Buttons */
.btn-brand-primary,
.btn-brand-outline {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 500;
    font-size: 15px;
    padding: 13px 28px;
    border-radius: var(--lc-radius-pill);
    text-decoration: none;
    transition: all .2s ease;
    border: 1.5px solid transparent;
}

.btn-brand-primary {
    background: var(--lc-green);
    color: var(--lc-white);
}

.btn-brand-primary:hover {
    background: var(--lc-green-dark);
    color: var(--lc-white);
}

.btn-brand-outline {
    background: transparent;
    color: var(--lc-white);
    border-color: var(--lc-border);
}

.btn-brand-outline:hover {
    border-color: var(--lc-green);
    color: var(--lc-green);
}

/* Pill badges (What's New / Blog / News tags) */
.badge-pill {
    display: inline-flex;
    align-items: center;
    background: var(--lc-green);
    color: var(--lc-white);
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    padding: 4px 12px;
    border-radius: var(--lc-radius-pill);
    margin-right: 10px;
}

.badge-pill--lc-text-muted {
    background: var(--lc-green-light);
    color: var(--lc-green-dark);
    margin-right: 0;
    margin-bottom: 14px;
}

/* Arrow links used repeatedly (Learn more / Read more / Explore all...) */
.link-arrow {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--lc-green);
    font-weight: 600;
    font-size: 14px;
    text-decoration: none;
}

.link-arrow:hover {
    color: var(--lc-green-dark);
}

/* Generic card surface reused by solution / insight / testimonial cards */
.solution-card,
.insight-card,
.testimonial-card {
    background: var(--lc-white);
    border: 1px solid var(--lc-border);
    border-radius: var(--lc-radius-md);
    height: 100%;
    transition: box-shadow .25s ease, transform .25s ease;
}

.solution-card:hover,
.insight-card:hover {
    box-shadow: var(--lc-shadow-card-hover);
    transform: translateY(-4px);
}

/* -------------------------------------------------------------------------
   4. SECTION-SCOPED STYLES
------------------------------------------------------------------------- */

/* ===== HERO ============================================================ */
.hero {
    padding-top: 64px;
    padding-bottom: 56px;
    /* background: linear-gradient(180deg, #F4FBF6 0%, #FFFFFF 60%); */
    background: linear-gradient(180deg, #06565e 0%, #1a9a82 100%);
}

.hero__row {
    gap: 40px 0;
}

.hero__title {
    font-weight: 800;
    font-size: 46px;
    line-height: 1.18;
    margin-bottom: 20px;
    color: var(--lc-white);
    font-family: var(--lc-font);

}

.hero__subtitle {
    font-size: 16px;
    max-width: 480px;
    margin-bottom: 30px;
    color: var(--lc-white);
}

.hero__actions {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
    margin-bottom: 32px;
}

.hero__trust {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    width: 100%;
    align-items: center;
}

.hero__trust-item {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
    min-width: 0;
    font-size: 14px;
    line-height: 1.4;
    /* color: var(--lc-text-body); */
    color: #e6e6e6;

    white-space: nowrap;
}

.hero__trust-item .lc-icon {
    flex: 0 0 22px;
    width: 22px;
    height: 22px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 21px;
    color: #e6e6e6;
}

.hero__trust-item span:last-child {
    min-width: 0;
}

.hero__trust-item strong {
    font-weight: 700;
}

/* Tablet */
@media (max-width: 992px) {
    .hero__trust {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        row-gap: 18px;
    }

    .team-grid,
    .awards-grid {
        grid-template-columns: repeat(3, 1fr) !important;
    }

    .ecm-cov-stats {
        margin-top: 16px !important;
    }

    .why-card {
        margin-bottom: 16px !important;
    }

}

/* Mobile */
@media (max-width: 576px) {
    .hero__trust {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .hero__trust-item {
        white-space: normal;
    }

    .team-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }

    .awards-grid,
    .vm-grid {
        grid-template-columns: 1fr !important;
    }

    .hero-cta-wrap a:first-child {
        margin-bottom: 8px !important;

    }
}

@media (max-width:328px) {
    .banner-bootom-box .list25 li {
        flex: 0 0 100% !important;
    }
}

@media (max-width: 632px) {
    .banner-bootom-box .list25 li {
        flex: 0 0 50%;
    }

    .banner-bootom-box .list25 li .icon {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        flex: 0 0 100%;
    }
}

.hero__media-img {
    border-radius: var(--lc-radius-md);
    box-shadow: var(--lc-shadow-card);
}

/* ===== STATS BAR ======================================================== */
.stats-bar {
    padding: 34px 0;
    background: linear-gradient(90deg, var(--lc-teal-darker), var(--lc-teal-dark));
}

.stats-bar__list {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 24px;
    margin: 0;
    padding: 0;
}

.stats-bar__item {
    display: flex;
    align-items: center;
    gap: 12px;
    color: var(--lc-white);
}

.stats-bar__item strong {
    display: block;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.2;
}

.stats-bar__item span {
    font-size: 12px;
    color: #BFE0D6;
}

/* ===== ANNOUNCEMENT BAR ================================================ */
.announcement-bar {
    padding: 18px 0;
    border-bottom: 1px solid var(--lc-border);
}

.announcement-bar__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px;
}

.announcement-bar__text {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    font-size: 14px;
    color: var(--lc-text-heading);
    font-weight: 500;
}

/* ===== SOLUTIONS ======================================================== */
.solutions {
    background: var(--lc-white);
}

.solution-card {
    padding: 30px 26px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.solution-card__icon {
    width: 52px;
    height: 52px;
    border-radius: var(--lc-radius-sm);
    background: var(--lc-green-light);
    display: flex;
    align-items: center;
    justify-content: center;
}

.solution-card__title {
    font-size: 18px;
    font-weight: 600;
}

.solution-card__text {
    font-size: 14px;
    flex-grow: 1;
}

/* ===== WHY LEXCOMPLY ==================================================== */
.why-lexcomply {
    background: var(--lc-bg-light);
}

.feature-item h4 {
    font-size: 16px;
    font-weight: 600;
    margin: 14px 0 8px;
}

.feature-item p {
    font-size: 14px;
}

.feature-item img {
    height: 26px;
    width: auto;
}

/* ===== CLIENT LOGOS ====================================================== */
.clients {
    /* background: var(--lc-white); */
    text-align: center;
}

.clients__row {
    margin-top: 20px;
}

.clients__carousel {
    position: relative;
    margin: 0 56px;
}

.clients__track {
    list-style: none;
    display: flex;
    flex: 1;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 24px;
    margin: 0;
    padding: 0;
    overflow-x: auto;
}

.clients__track.slick-slider,
.testimonial-slide.slick-slider {
    overflow: visible;
}

.clients__track.slick-slider {
    width: 100%;
}

.clients__track .slick-arrow,
.testimonial-slide .slick-arrow {
    display: grid !important;
    place-items: center;
    z-index: 2;
    width: 40px;
    height: 40px;
    padding: 0;
    border: 1px solid var(--lc-border);
    border-radius: 50%;
    background: var(--lc-white);
    box-shadow: 0 4px 14px rgba(16, 31, 36, .12);
    cursor: pointer;
}

.clients__track .slick-arrow:hover,
.testimonial-slide .slick-arrow:hover {
    background: var(--lc-teal-dark);
    border-color: var(--lc-teal-dark);
}

.clients__track .slick-prev,
.testimonial-slide .slick-prev {
    left: -52px;
}

.clients__track .slick-next,
.testimonial-slide .slick-next {
    right: -52px;
}

.clients__track .slick-prev:before,
.clients__track .slick-next:before,
.testimonial-slide .slick-prev:before,
.testimonial-slide .slick-next:before {
    display: block;
    width: auto;
    height: auto;
    color: var(--lc-text-heading);
    font-family: 'Material Symbols Outlined';
    font-size: 22px;
    font-weight: normal;
    line-height: 1;
    opacity: 1;
    font-variation-settings: 'FILL' 0, 'wght' 500, 'GRAD' 0, 'opsz' 24;
    top: 40%;
    position: relative;
}

.clients__track .slick-prev:hover:before,
.clients__track .slick-next:hover:before,
.testimonial-slide .slick-prev:hover:before,
.testimonial-slide .slick-next:hover:before {
    color: var(--lc-white);
}

.clients__track .slick-prev:before,
.testimonial-slide .slick-prev:before {
    content: 'arrow_back';
}

.clients__track .slick-next:before,
.testimonial-slide .slick-next:before {
    content: 'arrow_forward';
}

.testimonial-slide .slick-arrow {
    top: 50%;
    transform: translateY(-50%);
}

.clients__track .slick-arrow {
    top: 50%;
    transform: translateY(-50%);
}

@media (max-width: 575.98px) {
    .clients__carousel {
        margin: 0 44px;
    }

    .clients__track .slick-prev {
        left: -44px;
    }

    .clients__track .slick-next {
        right: -44px;
    }
}

.clients__track.slide1 {
    display: block;
    overflow: hidden;
}

.clients__track.slide1 .slick-slide {
    padding: 0 12px;
}

.clients__track.slide1 .slick-slide>div,
.clients__track.slide1 .slick-slide li {
    display: flex;
    align-items: center;
    justify-content: center;
}

.clients__track img {
    /* filter: grayscale(100%);
    opacity: .7; */
    transition: opacity .2s ease, filter .2s ease;
}

.clients__track img:hover {
    filter: none;
    opacity: 1;
}

.clients__track.slick-slider .slick-track {
    display: flex;
    align-items: center;
}

.clients__nav {
    flex: 0 0 auto;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 1px solid var(--lc-border);
    background: var(--lc-white);
    color: var(--lc-text-heading);
    font-size: 18px;
    line-height: 1;
    cursor: pointer;
}

.clients__nav:hover {
    border-color: var(--lc-green);
    color: var(--lc-green);
}

/* ===== INSIGHTS / RESOURCES ============================================= */
.insights {
    background: var(--lc-bg-light);
}

.insight-card {
    padding: 18px;
    overflow: hidden;
}

.insight-card__media {
    margin: -18px -18px 16px;
    border-radius: var(--lc-radius-md) var(--lc-radius-md) 0 0;
    overflow: hidden;
    aspect-ratio: 16 / 9;
}

.insight-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.insight-card__title {
    font-size: 16px;
    font-weight: 600;
    line-height: 1.4;
    margin-bottom: 14px;
}

/* ===== CTA =============================================================== */
.cta {
    /* background: linear-gradient(90deg, var(--lc-teal-darker), var(--lc-teal-dark)); */
    background: linear-gradient(180deg, #06565e 0%, #1a9a82 100%);
    text-align: center;
}

.cta__title {
    color: var(--lc-white) !important;
    font-size: 30px;
    font-weight: 700;
    margin-bottom: 12px !important;
}

.cta__subtitle {
    color: #BFE0D6;
    margin-bottom: 26px !important;
}

/* ===== TESTIMONIALS ====================================================== */
.testimonials {
    background: var(--lc-white);
}

.testimonial-slide .slick-track {
    display: flex;
    align-items: stretch;
}

.testimonial-slide .slick-slide {
    height: auto;
    display: flex;
}

.testimonial-slide .slick-slide>div {
    display: flex;
    width: 100%;
}

.testimonial-card {
    margin: 0;
    padding: 30px 26px;
    display: flex;
    flex-direction: column;
    gap: 14px;
    width: 100%;
    min-height: 280px;
    background: var(--bgColor);
    border: none;
}

.testimonial-card__text {
    font-style: italic;
}

.testimonial-card__tagline {
    font-size: 17px;
    font-weight: 600;
    color: var(--lc-text-heading);
}

.testimonial-card__text {
    font-size: 14px !important;
    flex-grow: 1;
}

.testimonial-card__user {
    display: flex;
    align-items: center;
    gap: 12px;
}

.testimonial-card__user img {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    object-fit: cover;
}

.testimonial-card__user cite {
    display: block;
    font-style: normal;
    font-weight: 600;
    font-size: 14px;
    color: var(--lc-text-heading);
}

.testimonial-card__user span {
    font-size: 13px;
    color: var(--lc-text-muted);
}

.testimonial-card {
    display: flex;
    flex-direction: column;
    gap: 14px;
    min-height: 280px;
    padding: 30px 26px;
}

.testimonial-card__tagline {
    margin: 0;
}

.testimonial-card__user {
    margin-top: auto;
    /* still pins to bottom, but now every card's text block is the same height, so it lines up naturally too */
}

.testimonial-card__text {
    font-style: italic;
    font-size: 14px !important;
    margin: 0;

    /* fixed height, clamped to a set number of lines */
    height: 110px;
    /* adjust based on line-height × number of lines you want */
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 5;
    /* number of visible lines before truncating */
    -webkit-box-orient: vertical;
    line-clamp: 5;
    /* standard property for newer browser support */
    text-overflow: ellipsis;
}

.testimonial-card__user {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: auto;
    /* forces this block to the bottom of the flex container, always */
}

.testimonial-card__user img {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    object-fit: cover;
    flex-shrink: 0;
}

.testimonial-card__user cite {
    display: block;
    font-style: normal;
    font-weight: 600;
    font-size: 14px;
    color: var(--lc-text-heading);
}

.testimonial-card__user span {
    display: block;
    font-size: 13px;
    color: var(--lc-text-muted);
}

.testimonial-card__icon {
    font-family: 'Material Symbols Outlined';
    font-size: 32px !important;
    color: var(--lc-green) !important;
    flex-shrink: 0;
    line-height: 1;
    /* fill it in for a solid look, similar weight to the old avatar art */
    font-variation-settings:
        'FILL' 1,
        'wght' 400,
        'GRAD' 0,
        'opsz' 48;
}

/* ===== CONTACT ============================================================ */
/* .contact {
    background: var(--lc-bg-light);
} */
.lc-main .contact-us .contact-bg {
    background: #fff;
}

.lc-main .contact-us .address {
    min-height: auto !important;
}

.lc-main .contact-us .map {
    border: none !important;
}

.lc-main .contact-us .mapouter,
.lc-main .contact-us .gmap_canvas,
.lc-main .contact-us .mapouter iframe {
    height: 260px !important;
}

.contact__panel {
    background: var(--lc-white);
    border-radius: var(--lc-radius-md);
    box-shadow: var(--lc-shadow-card);
    overflow: hidden;
}

.contact__details {
    background: var(--lc-teal-dark);
    color: #DCEEEA;
    padding: 44px 36px;
}

.contact__details h3 {
    color: var(--lc-white);
    font-size: 20px;
    margin-bottom: 18px;
}

.contact__details p {
    font-size: 14px;
    margin-bottom: 12px;
    color: #CFE6E1;
}

.contact__details a {
    color: var(--lc-white);
    text-decoration: none;
}

.contact__form-wrap {
    padding: 44px 36px;
}

.contact__form .form-control {
    border-radius: var(--lc-radius-sm);
    border: 1px solid var(--lc-border);
    padding: 12px 16px;
    font-size: 14px;
}

.contact__form .form-control:focus {
    border-color: var(--lc-green);
    box-shadow: 0 0 0 3px var(--lc-green-light);
}

.contact__map iframe {
    width: 100%;
    height: 320px;
    border: 0;
    display: block;
}

.hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #7bc33c29;
    border: 1px solid #7bc33c;
    border-radius: 20px;
    padding: 6px 16px;
    font-size: 0.8rem;
    font-weight: 600;
    color: #7bc33c;
    margin-bottom: 22px;
}

.hero-badge span {
    width: 8px;
    height: 8px;
    background: #7bc33c;
    border-radius: 50%;
    animation: pulse 2s infinite;
}

.ecm-stats-strip {
    background: #f2f7ff;
    padding: 26px 0;
}

.ecm-stats-grid {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    padding: 0;
    margin: 0;
}

.ecm-stats-grid li {
    flex: 1 1 0;
    min-width: 140px;
    text-align: center;
    padding: 6px 10px;
    border-right: 1px solid var(--blue);
}

.ecm-stats-grid li:last-child {
    border-right: none;
}

.ecm-stats-grid .num {
    display: block;
    font-size: 24px;
    font-weight: 800;
    color: var(--blue);
    line-height: 1.2;
}

.ecm-stats-grid .lbl {
    display: block;
    font-size: 11px;
    color: var(--font-color);
    text-transform: uppercase;
    letter-spacing: .05em;
    margin-top: 3px;
}

/* -------------------------------------------------------------------------
   5. RESPONSIVE
------------------------------------------------------------------------- */
@media (max-width: 991.98px) {
    :root {
        --lc-section-padding: 56px;
    }

    .hero__title {
        font-size: 34px;
    }

    .section-title {
        font-size: 26px;
    }

    .section-head {
        align-items: flex-start;
    }

    .section-head__aside {
        margin-top: 16px;
    }

    .contact__details {
        padding: 32px 24px;
    }

    .contact__form-wrap {
        padding: 32px 24px;
    }
}

@media (max-width: 575.98px) {
    .stats-bar__list {
        justify-content: flex-start;
    }

    .hero__actions {
        flex-direction: column;
        align-items: stretch;
    }

    .hero__actions .btn-brand-primary,
    .hero__actions .btn-brand-outline {
        text-align: center;
    }

    .ecm-crit-grid {
        grid-template-columns: 1fr !important;
    }
}

.hero {
    position: relative;
    overflow: hidden;
}

.hero__content {
    position: relative;
    z-index: 2;
}

.hero__media {
    position: relative;
    width: 660px;
    height: 406px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    overflow: visible;
    z-index: 1;
}

.hero__media-img {
    position: relative;
    display: block;
    width: 100%;
    /* bigger image */
    max-width: none;
    height: auto;
    object-fit: cover;
    /* transform: translateX(12%); */
    /* pushes it further right so excess gets clipped by .hero's overflow:hidden */
}

.hero__visual-col {
    position: relative;
}

/* Hanging solution slider — smaller, tucked into the corner */
.solution-slider {
    position: absolute;
    right: -20px;
    bottom: -3rem;
    /* shorter hang, sits closer to the corner */
    width: 300px;
    /* reduced from 390px */
    min-height: auto;

    background-color: #01444A;
    padding: 18px 16px 16px;
    /* tighter padding */

    border-radius: 16px 0 16px 0;
    box-shadow: rgba(0, 44, 48, 0.7) 8px 8px 12px;

    z-index: 5;
    text-align: left;
}

/* Label */
.solution-slider .sol-title {
    position: absolute;
    left: 16px;
    top: -12px;

    background-color: var(--blue);
    color: #ffffff;

    font-size: 11px;
    line-height: 18px;
    font-weight: 600;
    text-transform: uppercase;

    padding: 3px 12px;
    border-radius: 50px;
}

/* Slider content */
.solution-slider .sol-slide-top {
    display: flex;
    align-items: center;
}

.solution-slider .sol-slide-data h5 {
    margin: 0 0 6px;
    color: #ffffff;
    font-size: 15px;
    font-weight: 600;
}

.solution-slider .sol-slide-data p {
    margin: 0;
    color: rgba(255, 255, 255, 0.85);
    font-size: 12px;
    line-height: 1.45;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    /* keeps the card short even with long copy */
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Bottom buttons */
.solution-slider .sol-bottom {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 12px;
}

.solution-slider .sol-bottom .button1,
.solution-slider .sol-bottom .button2 {
    font-size: 12px;
    padding: 6px 12px;
}

/* Slick dots */
.solution-slider .slick-dots {
    bottom: -18px;
}

.solution-slider .slick-dots li {
    width: 8px;
    height: 8px;
    margin: 0 4px;
}

.solution-slider .slick-dots li button {
    width: 8px;
    height: 8px;
    padding: 0;
    background: transparent;
    border: 1px solid #333;
    border-radius: 50%;
}

.solution-slider .slick-dots li button:before {
    display: none;
}

/* ---------- Responsive ---------- */

@media (max-width: 1199.98px) {
    .hero__media-img {
        width: 130%;
        transform: translateX(8%);
    }

    .solution-slider {
        width: 230px;
        right: -10px;
        bottom: -2rem;
    }
}

@media (max-width: 991.98px) {

    /* Bootstrap stacks .col-lg-6 here, so give the visual column room */
    .hero__media {
        justify-content: center;
        margin-bottom: 4rem;
    }

    .hero__media-img {
        width: 100%;
        transform: none;
    }

    .solution-slider {
        position: relative;
        /* drop out of absolute hang so it doesn't overlap content below */
        right: auto;
        bottom: auto;
        width: 100%;
        max-width: 320px;
        margin: 1.5rem auto 0;
    }
}

@media (max-width: 575.98px) {
    .solution-slider {
        max-width: 100%;
        padding: 16px 14px 14px;
    }

    .solution-slider .sol-slide-data h5 {
        font-size: 14px;
    }

    .solution-slider .sol-slide-data p {
        font-size: 11.5px;
        -webkit-line-clamp: 3;
    }
}

.solution-card__icon span,
.feature-item span {
    color: var(--lc-green);
}

.ai-footer-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.ai-footer-bar p {
    margin-bottom: 0 !important;
}

.ai-tag {
    color: #fff;
    position: relative;
    top: -10px;
    background: var(--green);
    padding: 7px 10px;
    border-radius: 6px;
    text-align: left;
}

.litigation li {
    text-align: left !important;
    flex: 0 0 32% !important;
}

.risk .list9 li .detail p {
    height: 70px !important
}

.ai-icon {
    font-size: 32px;
    line-height: 1;
    margin-bottom: 14px;
    color: var(--lc-green);
}

.global .region h3 {
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: var(--lc-green);
    /* margin-bottom: 10px; */
}

.global .region p {
    font-size: 14px;
    color: var(--lc-text-muted);
    margin-bottom: 20px;
}

.global .security-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.global .security-card {
    border: 1px solid var(--lc-border);
    border-radius: 12px;
    padding: 18px;
}

.global .security-card h4 {
    font-size: 14px;
    color: var(--lc-green);
}

.global .security-card p {
    font-size: 12.5px;
    color: var(--lc-text-muted);
    margin-top: 6px;
}

.global .section-head {
    align-items: flex-start;
}

.ecm-crit-grid {
    list-style: none;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
    padding: 0;
    margin: 30px 0 0;
}

.ecm-crit-card {
    background: #fff;
    border-radius: 10px;
    padding: 20px;
    border-top: 4px solid #ccc;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
    border-top-color: var(--green);
}


.ecm-crit-badge {
    display: inline-block;
    font-size: 10.5px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    border-radius: 3px;
    padding: 3px 9px;
    margin-bottom: 10px;
    background: #f4f4f4;
    color: #444;
}

.resource-icon {
    width: 52px;
    height: 52px;
    border-radius: var(--lc-radius-sm);
    background: var(--lc-green-light);
    display: flex;
    align-items: center;
    justify-content: center;
}

.resource-icon .material-symbols-outlined {
    font-size: 34px;
    line-height: 1;
    color: var(--lc-green);
}

.ecm-crit-card h5 {
    margin: 20px 0 6px;
}

.ecm-crit-card p {
    margin-bottom: 12px;
}

.lc-main section.cta {
    padding: 60px 0;
}

/* ------------------------------------------------------------------------- */
/* About Us */
/* ------------------------------------------------------------------------- */
.ecm-hero-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 22px;
    padding: 0;
    list-style: none;
}

.ecm-hero-pills li {
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 20px;
    padding: 5px 14px;
    font-size: 12px;
    color: #fff;
}

.lc-main.about .newbanner-left h1 {
    margin-bottom: 20px;
}

.ecm-cov-stats {
    list-style: none;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    padding: 0;
    margin: 0;
}

.ecm-coverage-col {
    display: flex;
    flex-direction: column;
    /* align-items: center; */
    justify-content: center;
}

.ecm-cov-stats li {
    background: #cde6c3;
    color: #fff;
    border-radius: 10px;
    padding: 16px;
    text-align: center;
}

.ecm-cov-stats .num {
    display: block;
    font-size: 20px;
    font-weight: 800;
    color: var(--lc-green-dark);
}

.ecm-cov-stats .lbl {
    display: block;
    font-size: 16px;
    color: var(--lc-text-body);
    margin-top: 4px;
}

.vm-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
}

.vm-card {
    background: #fff;
    border: 1px solid var(--lc-border);
    border-radius: var(--lc-radius-md);
    padding: 34px;
}

.vm-card .icon {
    width: 46px;
    height: 46px;
    border-radius: 50px;
    background: var(--lc-green);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 16px;
}

.vm-card .icon svg {
    width: 24px;
    height: 24px;
    stroke: #fff;
}

.vm-card h3 {
    font-size: 20px;
    color: var(--lc-text-heading);
}

.vm-card p {
    font-size: 15px;
    color: var(--font-color);
    margin-top: 12px;
}


.why-card {
    border: 1px solid var(--lc-border);
    border-radius: var(--lc-radius-md);
    padding: 26px;
    background: #fff;
}

.why-card .icon {
    width: 42px;
    height: 42px;
    border-radius: 50px;
    background: var(--lc-green);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 14px;
}

.why-card .icon svg {
    width: 22px;
    height: 22px;
    stroke: #fff;
}

.why-card h3 {
    font-size: 16px;
    color: var(--lc-text-heading);
}

.why-card p {
    font-size: 14px;
    color: var(--font-color);
    margin-top: 8px;
}

.why-card b.stat {
    display: block;
    font-size: 26px;
    color: var(--lc-green-dark);
    margin-bottom: 2px;
}

.awards-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.award-card {
    border: 1px solid var(--lc-border);
    border-radius: var(--lc-radius-md);
    overflow: hidden;
    background: #fff;
}

.award-card img {
    width: 100%;
    min-height: 150px;
    height: 150px;
    object-fit: cover;
    background: var(--lc-bg-light);
}

.award-card .cap {
    padding: 16px;
    font-size: 13.5px;
    color: var(--font-color);
}

.team-card {
    text-align: center;
}

.team-card .photo {
    position: relative;
    width: 136px;
    height: 136px;
    margin: 0 auto 18px;
    border-radius: 50%;
    overflow: hidden;
    background: linear-gradient(150deg, var(--lc-green-light) 0%, var(--bgColor) 100%);
    border: 4px solid #fff;
    box-shadow: 0 0 0 3px var(--green-soft), 0 14px 28px -8px rgba(47, 114, 117, .35);
    transition: transform .25s ease, box-shadow .25s ease;
}

.team-card:hover .photo {
    transform: translateY(-5px);
    box-shadow: 0 0 0 3px var(--lc-green), 0 18px 32px -8px rgba(47, 114, 117, .45);
}

.team-card .photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
    position: relative;
    z-index: 1;
}

.team-card .photo::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    pointer-events: none;
    background: linear-gradient(165deg, rgba(47, 114, 117, .14), rgba(123, 195, 60, .10) 60%, rgba(37, 170, 225, .08));
    mix-blend-mode: multiply;
}

.team-card h3 {
    font-size: 16px;
    color: var(--lc-text-heading);
}

.team-card .role {
    font-size: 13px;
    color: var(--muted);
    margin-top: 4px;
}

.team-card .linkedin {
    display: inline-flex;
    margin-top: 5px;
    margin-bottom: 10px;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: var(--lc-green-light);
    align-items: center;
    justify-content: center;
    transition: background .2s;
}

.team-card .linkedin:hover {
    background: var(--lc-green);
}

.team-card .linkedin svg {
    width: 14px;
    height: 14px;
    stroke: var(--lc-green-dark);
}

.team-card .linkedin:hover svg {
    stroke: #fff;
}

@media (max-width:560px) {
    .team-card .photo {
        width: 112px;
        height: 112px;
    }
}

.team-card .photo.placeholder {
    background: linear-gradient(150deg, var(--lc-green-dark), var(--lc-green-light));
    display: flex;
    align-items: center;
    justify-content: center;
}

.team-card .photo.placeholder span {
    position: relative;
    z-index: 1;
    color: #fff;
    font-weight: 800;
    font-size: 34px;
    letter-spacing: .02em;
}

.team-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 32px 26px;
}

.advisor-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));
    gap: 18px;
}

.advisor-card {
    background: #fff;
    border: 1px solid var(--lc-border);
    border-radius: 10px;
    padding: 22px 18px;
    text-align: center;
    transition: border-color .18s ease, transform .18s ease;
}

.advisor-card:hover {
    border-color: #c9d6d3;
    transform: translateY(-2px);
}

.advisor-photo {
    width: 98px;
    height: 98px;
    border-radius: 50%;
    object-fit: cover;
    margin: 0 auto 14px;
    display: block;
    min-height: auto !important;
    border: 1px solid var(--lc-border);
}

.advisor-name {
    font-size: 15px;
    font-weight: 600;
    color: var(--lc-text-heading);
    margin: 0 0 4px;
}

.advisor-role {
    font-size: 12.5px;
    color: var(--lc-text-muted);
    margin: 0 0 14px;
    line-height: 1.4;
}

.advisor-toggle {
    border: none;
    background: none;
    color: var(--lc-green);
    font-size: 12.5px;
    font-weight: 600;
    cursor: pointer;
    padding: 0;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.advisor-toggle svg {
    width: 11px;
    height: 11px;
    transition: transform .18s ease;
}

.advisor-card.open .advisor-toggle svg {
    transform: rotate(180deg);
}

.advisor-bio {
    max-height: 0;
    overflow-x: hidden;
    transition: max-height .22s ease;
    text-align: left;
}

.advisor-card.open .advisor-bio {
    max-height: 200px;
    margin-top: 14px;
}

.advisor-bio p {
    font-size: 12.5px;
    color: var(--font-color);
    line-height: 1.6;
    margin: 0;
    padding-top: 14px;
    border-top: 1px solid var(--lc-border);
}

.lc-main section.hero {
    padding-bottom: calc(var(--lc-section-padding) - 60*var(--lc-section-padding)/100) !important;
}
