.lx-home {
    --lx-ink:#112b32;
    --lx-muted:#586d73;
    --lx-line:#dfe8e7;
    --lx-mint:#c3f56d;
    color:var(--lx-ink);
    background:#fff
}

.lx-home a {
    text-decoration:none
}

.lx-home .container {
    max-width:1248px;
    padding-left:32px;
    padding-right:32px
}

.lx-hero {
    background:#102b31;
    color:#fff;
    position:relative;
    overflow:hidden
}

.lx-hero:before {
    content:"";
    position:absolute;
    inset:0;
    background-image:linear-gradient(#bce5d008 1px,transparent 1px),linear-gradient(90deg,#bce5d008 1px,transparent 1px);
    background-size:48px 48px;
    pointer-events:none
}

.lx-hero-grid {
    display:grid;
    grid-template-columns:1.2fr 1fr;
    gap:70px;
    align-items:center;
    padding-top:88px;
    padding-bottom:76px;
    position:relative
}

.lx-eyebrow {
    font-size:11px;
    letter-spacing:1.5px;
    color:#c7dad9;
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
    margin-bottom:28px
}

.lx-status-dot {
    width:7px;
    height:7px;
    background:var(--lx-mint);
    border-radius:50%;
    box-shadow:0 0 16px #c3f56570
}

.lx-eyebrow-divider {
    opacity:.45;
    margin:0 4px
}

.lx-hero h1 {
    font-size:clamp(36px,3.7vw,56px);
    line-height:1.35;
    letter-spacing:-2px;
    font-weight:750;
    margin:0 0 22px
}

.lx-hero h1 span {
    color:var(--lx-mint)
}

.lx-lead {
    color:#b8cccc;
    max-width:530px;
    font-size:16px;
    line-height:1.95;
    margin:0 0 30px
}

.lx-actions {
    display:flex;
    gap:12px;
    flex-wrap:wrap
}

.lx-button {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:18px;
    min-height:48px;
    padding:13px 21px;
    border-radius:6px;
    font-size:14px;
    font-weight:650;
    transition:background .2s,transform .2s
}

.lx-button:hover {
    transform:translateY(-2px)
}

.lx-button-primary {
    background:var(--lx-mint);
    color:#183128!important;
    border:1px solid var(--lx-mint)
}

.lx-button-primary:hover {
    background:#d4ff8e
}

.lx-button-ghost {
    border:1px solid #5a7479;
    color:#fff!important
}

.lx-button-ghost:hover {
    background:#ffffff0c
}

.lx-hero-tags {
    margin-top:36px;
    display:flex;
    gap:22px;
    flex-wrap:wrap;
    color:#9cb7b9;
    font-size:12px
}

.lx-hero-tags span:before {
    content:"+";
    color:var(--lx-mint);
    margin-right:8px
}

.lx-system {
    border:1px solid #71938d55;
    border-radius:12px;
    padding:22px 28px;
    background:linear-gradient(135deg,#254942c0,#122d33e0);
    box-shadow:0 24px 80px #00171b60;
    position:relative
}

.lx-system-top,.lx-system-bottom {
    display:flex;
    align-items:center;
    justify-content:space-between;
    font:10px/1.5 ui-monospace,monospace;
    letter-spacing:1px;
    color:#c2d6d2
}

.lx-system-top {
    margin-bottom:24px
}

.lx-system-indicator {
    color:var(--lx-mint)
}

.lx-stack-layer {
    padding:20px 23px;
    border:1px solid #83a69c66;
    border-radius:6px;
    display:flex;
    flex-direction:column;
    gap:8px;
    background:#16393b
}

.lx-stack-layer strong {
    font-size:22px;
    font-weight:600;
    letter-spacing:-.5px
}

.lx-stack-layer>span:last-child {
    font-size:10px;
    color:#b3c9c7;
    letter-spacing:1px
}

.lx-layer-number {
    font:10px/1.5 ui-monospace,monospace;
    letter-spacing:1.4px;
    color:#a4c4b9
}

.lx-stack-os {
    background:#c3f56d;
    color:#142f2e;
    border-color:#e4ffb6;
    box-shadow:0 0 30px #c3f56d12
}

.lx-stack-os .lx-layer-number,.lx-stack-os>span:last-child {
    color:#36563d
}

.lx-stack-os strong {
    font-size:30px
}

.lx-stack-os strong span {
    font-size:18px;
    font-weight:400
}

.lx-stack-chip {
    flex-direction:row;
    align-items:center;
    gap:20px;
    background:#122f34
}

.lx-stack-chip>i {
    font-size:42px;
    color:#c3f56d
}

.lx-stack-chip>div {
    display:flex;
    flex-direction:column;
    gap:7px
}

.lx-stack-chip strong {
    font-size:19px
}

.lx-stack-connector {
    text-align:center;
    color:#7b9c92;
    height:26px;
    font:20px/26px ui-monospace,monospace
}

.lx-system-bottom {
    margin-top:23px;
    font-size:9px;
    color:#90afaa
}

.lx-search-band {
    background:#f0f5f2;
    border-bottom:1px solid var(--lx-line)
}

.lx-search-inner {
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:32px;
    padding-top:24px;
    padding-bottom:24px
}

.lx-search-inner>div {
    display:flex;
    gap:14px;
    flex-wrap:wrap;
    font-size:14px
}

.lx-search-inner>div span {
    color:var(--lx-muted)
}

.lx-product-search {
    display:flex;
    align-items:center;
    gap:13px;
    border:1px solid #cedbd4;
    background:#fff;
    border-radius:6px;
    padding:5px 5px 5px 16px;
    flex:0 1 500px
}

.lx-product-search>i {
    color:#73857f
}

.lx-product-search input {
    border:0;
    min-width:0;
    flex:1;
    font-size:13px;
    padding:8px 0;
    outline:0;
    background:transparent
}

.lx-product-search:focus-within {
    outline:2px solid #466d50;
    outline-offset:2px
}

.lx-product-search button {
    min-height:42px;
    display:flex;
    gap:14px;
    align-items:center;
    border:0;
    border-radius:4px;
    background:#153b35;
    color:#fff;
    padding:9px 18px;
    font-size:13px;
    white-space:nowrap
}

.lx-section {
    padding-top:72px;
    padding-bottom:72px
}

.lx-section-heading {
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    gap:24px;
    margin-bottom:32px
}

.lx-kicker {
    font:10px/1.6 ui-monospace,monospace;
    letter-spacing:1.7px;
    color:#5a786a;
    margin:0 0 12px
}

.lx-home h2 {
    font-size:clamp(24px,2.3vw,34px);
    line-height:1.45;
    font-weight:700;
    letter-spacing:-.8px;
    margin:0
}

.lx-section-heading>p {
    font-size:13px;
    color:var(--lx-muted);
    margin:0 0 5px;
    max-width:310px;
    line-height:1.7
}

.lx-entry-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    border:1px solid var(--lx-line);
    border-radius:8px;
    overflow:hidden
}

.lx-entry {
    padding:27px 23px;
    color:var(--lx-ink);
    border-right:1px solid var(--lx-line);
    transition:background .2s
}

.lx-entry:last-child {
    border:0
}

.lx-entry:hover {
    background:#f4f8f3;
    color:#112b32
}

.lx-entry-top {
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-bottom:30px
}

.lx-entry-top>i {
    font-size:28px
}

.lx-entry-top>span {
    font:11px ui-monospace,monospace;
    color:#8c9f99
}

.lx-home h3 {
    font-size:18px;
    font-weight:650;
    margin:0 0 12px;
    line-height:1.5
}

.lx-entry>p {
    font-size:13px;
    line-height:1.85;
    color:var(--lx-muted);
    min-height:48px;
    margin-bottom:26px
}

.lx-entry-link {
    font-size:12px;
    color:#285b40;
    display:flex;
    align-items:center;
    justify-content:space-between
}

.lx-category-links {
    display:flex;
    align-items:center;
    gap:20px;
    flex-wrap:wrap;
    margin-top:23px;
    font-size:12px
}

.lx-category-links>span {
    color:var(--lx-muted)
}

.lx-category-links a {
    color:#244f3a;
    padding:6px 0
}

.lx-category-links i {
    margin-left:8px
}

.lx-products-section {
    background:#f5f7f6;
    border-block:1px solid #e7edeb
}

.lx-text-link {
    color:#214f3c;
    font-size:13px;
    font-weight:600;
    line-height:2
}

.lx-text-link:hover {
    text-decoration:underline
}

.lx-product-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:20px
}

.lx-product-card {
    display:flex;
    flex-direction:column;
    background:#fff;
    border:1px solid var(--lx-line);
    border-radius:8px;
    overflow:hidden;
    color:var(--lx-ink);
    transition:box-shadow .2s,transform .2s
}

.lx-product-card:hover {
    color:var(--lx-ink);
    transform:translateY(-4px);
    box-shadow:0 15px 30px #152c310d
}

.lx-product-image {
    aspect-ratio:4/3;
    background:#eef2ef;
    overflow:hidden;
    border-bottom:1px solid #e7edeb;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:15px
}

.lx-product-image img {
    display:block;
    object-fit:contain;
    width:100%;
    height:100%;
    mix-blend-mode:multiply
}

.lx-product-body {
    padding:22px 20px;
    display:flex;
    flex-direction:column;
    flex:1;
    min-width:0
}

.lx-product-sku {
    font:10px ui-monospace,monospace;
    color:#657b73;
    letter-spacing:.7px;
    margin-bottom:10px;
    overflow-wrap:anywhere
}

.lx-product-body h3 {
    font-size:16px;
    margin-bottom:10px;
    overflow-wrap:anywhere
}

.lx-product-body>p {
    font-size:12px;
    line-height:1.85;
    color:var(--lx-muted);
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    min-height:44px;
    margin-bottom:22px
}

.lx-product-bottom {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
    border-top:1px solid #edf0ee;
    padding-top:16px;
    margin-top:auto;
    font-size:11px
}

.lx-product-bottom strong {
    font-size:14px
}

.lx-product-bottom span {
    color:#58756a
}

.lx-empty {
    text-align:center;
    border:1px dashed #b3c6b9;
    border-radius:8px;
    padding:45px 20px
}

.lx-empty>i {
    font-size:35px;
    display:block;
    margin-bottom:18px
}

.lx-empty>p {
    font-size:14px;
    color:var(--lx-muted)
}

.lx-scene-grid {
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:15px
}

.lx-scene {
    border:1px solid var(--lx-line);
    border-radius:8px;
    padding:25px 20px;
    color:var(--lx-ink);
    transition:background .2s
}

.lx-scene:hover {
    background:#f3f8ed;
    color:var(--lx-ink)
}

.lx-scene>i {
    font-size:27px;
    display:block;
    margin-bottom:22px
}

.lx-scene h3 {
    font-size:16px
}

.lx-scene p {
    font-size:11px;
    color:var(--lx-muted);
    line-height:1.8;
    min-height:38px
}

.lx-scene>span {
    display:flex;
    justify-content:space-between;
    gap:5px;
    font:11px ui-monospace,monospace;
    color:#385d46
}

.lx-ecosystem {
    display:grid;
    grid-template-columns:1.1fr 1fr;
    gap:90px;
    background:#eff4ed;
    border:1px solid #dce6d9;
    border-radius:12px;
    padding:52px!important;
    margin-bottom:40px
}

.lx-ecosystem-copy>p:not(.lx-kicker) {
    font-size:14px;
    line-height:1.9;
    color:var(--lx-muted);
    margin:22px 0
}

.lx-workflow {
    list-style:none;
    padding:0;
    margin:0;
    display:flex;
    flex-direction:column;
    justify-content:center;
    gap:27px
}

.lx-workflow li {
    display:flex;
    gap:22px
}

.lx-workflow li>span {
    font:13px ui-monospace,monospace;
    color:#46734d;
    border:1px solid #b9cdb5;
    width:38px;
    height:38px;
    flex:none;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center
}

.lx-workflow h3 {
    font-size:16px;
    margin:1px 0 7px
}

.lx-workflow p {
    font-size:13px;
    line-height:1.85;
    color:var(--lx-muted);
    margin:0
}

.lx-faq {
    display:grid;
    grid-template-columns:.85fr 1.15fr;
    gap:80px
}

.lx-faq details {
    border-bottom:1px solid var(--lx-line);
    padding:19px 0
}

.lx-faq details:first-child {
    padding-top:0
}

.lx-faq summary {
    font-size:15px;
    font-weight:600;
    cursor:pointer;
    line-height:1.8
}

.lx-faq details p {
    font-size:13px;
    color:var(--lx-muted);
    line-height:1.9;
    margin:16px 0 0
}

.lx-faq details a {
    color:#285c3c;
    text-decoration:underline
}

.lx-cta {
    background:#15372f;
    color:#fff;
    margin-top:25px
}

.lx-cta>.container {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    padding-top:44px;
    padding-bottom:44px
}

.lx-cta .lx-kicker {
    color:#a6c3ad
}

.lx-home a:focus-visible,.lx-home button:focus-visible,.lx-home summary:focus-visible {
    outline:3px solid #57852f;
    outline-offset:5px
}

.lx-hero a:focus-visible,.lx-cta a:focus-visible {
    outline-color:#fff
}

@media(min-width:1500px) {
    .lx-hero-grid {
        padding-top:100px;
        padding-bottom:90px
    }
}

@media(max-width:1100px) {
    .lx-hero-grid {
        gap:32px
    }
    .lx-entry {
        padding:24px 18px
    }
    .lx-product-grid {
        gap:14px
    }
    .lx-product-body {
        padding:18px 14px
    }
    .lx-scene-grid {
        grid-template-columns:repeat(3,1fr)
    }
    .lx-ecosystem {
        gap:45px;
        margin-left:24px;
        margin-right:24px;
        width:auto
    }
    .lx-product-bottom {
        align-items:flex-start;
        flex-direction:column
    }
}

@media(max-width:800px) {
    .lx-home .container {
        padding-left:22px;
        padding-right:22px
    }
    .lx-hero-grid {
        grid-template-columns:1fr;
        padding-top:48px;
        padding-bottom:46px;
        gap:40px
    }
    .lx-hero h1 {
        font-size:42px
    }
    .lx-hero-copy {
        max-width:580px
    }
    .lx-system {
        max-width:560px;
        width:100%;
        margin:auto
    }
    .lx-search-inner {
        align-items:stretch;
        flex-direction:column;
        gap:16px
    }
    .lx-product-search {
        flex:auto
    }
    .lx-entry-grid,.lx-product-grid {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
    .lx-entry:nth-child(2) {
        border-right:0
    }
    .lx-entry:nth-child(-n+2) {
        border-bottom:1px solid var(--lx-line)
    }
    .lx-section {
        padding-top:48px;
        padding-bottom:48px
    }
    .lx-section-heading {
        align-items:flex-start;
        flex-direction:column;
        gap:14px
    }
    .lx-section-heading>p {
        max-width:none
    }
    .lx-scene-grid {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
    .lx-ecosystem {
        grid-template-columns:1fr;
        padding:32px 24px!important;
        gap:30px;
        margin-bottom:0
    }
    .lx-faq {
        grid-template-columns:1fr;
        gap:30px
    }
    .lx-cta>.container {
        align-items:flex-start;
        flex-direction:column
    }
    .lx-product-bottom {
        flex-direction:row;
        flex-wrap:wrap
    }
}

@media(max-width:420px) {
    .lx-home .container {
        padding-left:18px;
        padding-right:18px
    }
    .lx-hero h1 {
        font-size:34px;
        letter-spacing:-1px
    }
    .lx-eyebrow {
        font-size:9px;
        letter-spacing:1px
    }
    .lx-hero-tags {
        gap:12px;
        font-size:10px
    }
    .lx-button {
        padding:12px 16px;
        font-size:13px
    }
    .lx-system {
        padding:20px
    }
    .lx-stack-layer {
        padding:17px
    }
    .lx-product-grid {
        gap:10px
    }
    .lx-product-body {
        padding:14px 12px
    }
    .lx-product-body h3 {
        font-size:14px
    }
    .lx-product-bottom strong {
        font-size:12px
    }
    .lx-product-bottom span {
        font-size:10px
    }
    .lx-search-inner>div {
        gap:6px;
        font-size:13px
    }
    .lx-product-search input {
        font-size:12px
    }
    .lx-product-search button {
        padding:8px 12px
    }
    .lx-entry h3 {
        font-size:16px
    }
    .lx-entry>p {
        font-size:12px;
        min-height:64px
    }
    .lx-home h2 {
        font-size:25px
    }
    .lx-system-top {
        font-size:9px
    }
    .lx-stack-layer strong {
        font-size:20px
    }
    .lx-stack-os strong {
        font-size:28px
    }
}

@media(prefers-reduced-motion:reduce) {
    .lx-home * {
        transition:none!important;
        scroll-behavior:auto!important
    }
}

.main-content.lx-main {
    padding:0
}
/* Existing CMS content keeps its text and links; only its visual container changes. */
.lx-managed-hero .hero{padding:0!important;background:transparent!important;border:0;margin:0;text-align:left;color:inherit;box-shadow:none}
.lx-managed-hero .container{padding:0!important;width:100%;max-width:none}
.lx-managed-hero h1{color:#fff}
.lx-managed-hero p{color:#bed0ce;font-size:16px;line-height:1.95;margin-bottom:28px}
.lx-managed-hero a{color:var(--lx-mint)}
.lx-managed-hero .btn{display:inline-flex;align-items:center;min-height:48px;padding:12px 20px;background:var(--lx-mint);color:#183128;border:1px solid var(--lx-mint)}
.lx-managed-slot:empty{display:none}
.lx-catalog-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:34px;margin-bottom:16px}
.lx-catalog-heading h3{font-size:14px;margin:0}
.lx-catalog-heading>a{font-size:12px;color:#285b40}
.lx-live-categories{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.lx-live-categories a{display:flex;align-items:center;gap:12px;padding:17px 18px;border:1px solid #dfe8e7;border-radius:6px;color:#244636;font-size:13px;background:#f8faf8}
.lx-live-categories a span{flex:1;min-width:0;overflow-wrap:anywhere}
.lx-live-categories a:hover{border-color:#90ad89;background:#f0f6eb}
@media(max-width:650px){.lx-live-categories{grid-template-columns:repeat(2,minmax(0,1fr))}.lx-live-categories a{padding:14px 12px;font-size:12px}.lx-catalog-heading{align-items:flex-start}}
