.page-finance-lease {
    --oy-stone: #ebe8e1;
}

.fl-hero,
.fl-model,
.fl-lend,
.fl-asset,
.fl-ai,
.fl-service,
.fl-pay,
.fl-report,
.fl-help,
.fl-related {
    padding-block: var(--oy-section);
}

.fl-hero {
    padding-top: clamp(3.2rem, 6vw, 5.4rem);
}

.fl-lease,
.fl-mod {
    padding-block: var(--oy-section);
    background: var(--oy-stone);
}

.fl-decision,
.fl-case,
.fl-fabric {
    padding-block: var(--oy-section);
    background: var(--oy-midnight-2);
}

.fl-decision h2,
.fl-case h2,
.fl-fabric h2,
.fl-decision .section-intro p,
.fl-case .section-intro p,
.fl-fabric .section-intro p {
    color: #f3efe6;
}

.fl-decision .section-intro p,
.fl-case .section-intro p,
.fl-fabric .section-intro p {
    color: #b4bcd0;
}

.fl-hero__layout,
.fl-split,
.fl-related__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(18rem, 0.95fr);
    gap: clamp(2rem, 5vw, 4.2rem);
    align-items: start;
}

.fl-hero__copy h1 {
    max-width: 16ch;
}

.fl-hero__lead,
.fl-split p:not(.eyebrow):not(.fl-note):not(.fl-kicker) {
    max-width: 38rem;
    margin-top: 1.2rem;
    font-size: 1.06rem;
}

.fl-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.8rem;
    margin-top: 1.7rem;
}

.fl-hero__line,
.fl-kicker {
    margin-top: 1.5rem;
    color: var(--oy-text);
    font-size: 0.8rem;
    font-weight: var(--oy-fw-semibold);
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.fos {
    padding: 1.3rem;
    border-radius: var(--oy-radius-xl);
    background: var(--oy-grad-midnight);
    box-shadow: var(--oy-shadow-glass);
}

.fos__title {
    margin-bottom: 1rem;
    color: #c4b5fd;
    font-size: 0.74rem;
    font-weight: var(--oy-fw-semibold);
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.fos__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.7rem;
}

.fos__grid article,
.lend-workspace article,
.lease-canvas__node,
.decision-cols article,
.fabric article,
.ops-space article,
.mod-path article,
.help-grid li {
    position: relative;
    z-index: 2;
    padding: 1rem 1.05rem;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 16px;
    background: #11182b;
}

.fos__name,
.lend-workspace h3,
.lease-canvas h3,
.decision-cols h3,
.fabric h3,
.asset-lens h3,
.ai-ops h3,
.mod-path h3,
.help-grid h3 {
    margin-bottom: 0.55rem;
    font-family: var(--oy-font-body);
    font-size: 0.95rem;
    font-weight: var(--oy-fw-semibold);
    color: #f4f0e8;
}

.fos__grid ul,
.lend-workspace ul,
.lease-canvas ul,
.decision-cols ul,
.fabric ul {
    display: grid;
    gap: 0.28rem;
    color: #aeb6ca;
    font-size: 0.88rem;
}

.fos__rail {
    grid-column: 1 / -1;
    z-index: 1;
    margin: 0.15rem 0;
    padding: 0.7rem 1rem;
    border-radius: 999px;
    background: linear-gradient(110deg, rgba(124, 58, 237, 0.34), rgba(37, 99, 235, 0.28));
    color: #f6f2ea;
    font-family: var(--oy-font-display);
    font-size: 1.15rem;
    text-align: center;
}

.fos__flags {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem 1rem;
    margin-top: 1rem;
    color: #93c5fd;
    font-size: 0.78rem;
    font-weight: var(--oy-fw-semibold);
}

.fos article.is-emphasis {
    border-color: rgba(147, 197, 253, 0.45);
}

.model-band {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.model-band li {
    padding: 0 1.3rem;
    border-left: 1px solid var(--oy-border);
}

.model-band li:first-child {
    padding-left: 0;
    border-left: 0;
}

.model-band h3 {
    margin-bottom: 0.5rem;
}

.lend-workspace {
    display: grid;
    grid-template-columns: 1fr auto 1fr auto 1fr;
    gap: 0;
    align-items: stretch;
}

.lend-workspace article {
    background: var(--oy-surface);
    border-color: var(--oy-border);
}

.lend-workspace h3 {
    color: var(--oy-text);
}

.lend-workspace ul {
    color: var(--oy-text-soft);
}

.lend-workspace article + article {
    margin-left: 1.4rem;
}

.lend-workspace article + article::before {
    content: "";
    position: absolute;
    left: -1.4rem;
    top: 50%;
    width: 1.4rem;
    height: 1px;
    background: rgba(124, 58, 237, 0.35);
}

.lend-workspace__core {
    background: var(--oy-midnight) !important;
    border-color: transparent !important;
}

.lend-workspace__core h3,
.lend-workspace__core li {
    color: #f4f0e8;
}

.fl-note {
    margin: 1.4rem 0 0;
    color: var(--oy-text-soft);
    font-size: 0.92rem;
}

.fl-note--light {
    color: #c8cfe0;
}

.fl-list {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem 1.2rem;
    margin-top: 1.5rem;
    color: var(--oy-text-soft);
}

.fl-list li {
    position: relative;
    padding-left: 0.85rem;
}

.fl-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.55em;
    width: 0.35rem;
    height: 0.35rem;
    border-radius: 50%;
    background: var(--oy-grad-accent);
}

.fl-list--inverse {
    color: #c8cfe0;
}

.fl-split-lists {
    display: grid;
    grid-template-columns: 1.4fr 1fr;
    gap: 2rem;
    margin-top: 2rem;
}

.lease-canvas {
    display: grid;
    grid-template-columns: 1fr 13rem 1fr;
    grid-template-areas:
        "a core b"
        "c core d";
    gap: 1.1rem 1.4rem;
    align-items: center;
}

.lease-canvas__node--a { grid-area: a; }
.lease-canvas__node--b { grid-area: b; }
.lease-canvas__core { grid-area: core; }
.lease-canvas__node--c { grid-area: c; }
.lease-canvas__node--d { grid-area: d; }

.lease-canvas__node {
    background: var(--oy-surface);
    border-color: var(--oy-border);
}

.lease-canvas h3 {
    color: var(--oy-text);
}

.lease-canvas ul {
    color: var(--oy-text-soft);
}

.lease-canvas__core {
    display: grid;
    place-content: center;
    min-height: 11rem;
    padding: 1.2rem;
    border-radius: 22px;
    background: var(--oy-midnight);
    color: #f6f2ea;
    font-family: var(--oy-font-display);
    font-size: 1.45rem;
    text-align: center;
    line-height: 1.2;
}

.asset-lens {
    position: relative;
    min-height: 22rem;
}

.asset-lens__core {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 4;
    width: 9.6rem;
    min-height: 9.6rem;
    padding: 1rem;
    display: grid;
    place-content: center;
    border-radius: 50%;
    background: var(--oy-midnight);
    color: #f6f2ea;
    font-family: var(--oy-font-display);
    font-size: 1.15rem;
    text-align: center;
    line-height: 1.2;
    transform: translate(-50%, -50%);
}

.asset-lens__plane {
    position: absolute;
    width: 13.5rem;
    padding: 1.1rem;
    border: 1px solid var(--oy-border);
    border-radius: 20px;
    background: var(--oy-surface);
    box-shadow: var(--oy-shadow-soft);
}

.asset-lens__plane h3 {
    color: var(--oy-text);
}

.asset-lens__plane--a { top: 0; left: 0; }
.asset-lens__plane--b { top: 5.6rem; right: 0; }
.asset-lens__plane--c { bottom: 0; left: 12%; }

.decision-cols,
.fabric {
    display: grid;
    grid-template-columns: 1fr 1.1fr 1fr;
    gap: 0.9rem;
}

.decision-cols__logic,
.fabric__core {
    background: rgba(124, 58, 237, 0.18) !important;
    border-color: rgba(196, 181, 253, 0.28) !important;
}

.ai-ops {
    display: grid;
    gap: 0.7rem;
}

.ai-ops li {
    padding: 1.15rem 1.2rem 1.15rem 1.3rem;
    border-left: 1px solid rgba(124, 58, 237, 0.28);
    background: var(--oy-surface);
    border-radius: 0 16px 16px 0;
}

.ai-ops__core {
    background: var(--oy-midnight);
}

.ai-ops__core h3,
.ai-ops__core p {
    color: #f4f0e8;
}

.ai-ops li.is-emphasis {
    border-left-color: var(--oy-electric);
}

.ops-space,
.case-board {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.7rem;
}

.ops-space article,
.case-board li {
    min-height: 5.4rem;
    display: grid;
    place-content: center;
    text-align: center;
    font-weight: var(--oy-fw-semibold);
}

.ops-space article {
    background: var(--oy-surface);
    border-color: var(--oy-border);
    color: var(--oy-text);
}

.case-board li {
    border: 1px solid var(--oy-border-inverse);
    border-radius: 16px;
    background: #11182b;
    color: #f3efe6;
}

.pay-path {
    display: grid;
    gap: 0.55rem;
}

.pay-path li {
    padding: 0.95rem 1.1rem;
    border-radius: 14px;
    background: var(--oy-surface-soft);
    font-weight: var(--oy-fw-semibold);
}

.pay-path li:nth-child(2) { margin-left: 1rem; }
.pay-path li:nth-child(3) { margin-left: 2rem; }
.pay-path li:nth-child(4) { margin-left: 3rem; }

.fabric article.is-emphasis {
    border-color: rgba(147, 197, 253, 0.4);
}

.viz {
    display: flex;
    align-items: end;
    gap: 0.7rem;
    height: 6.5rem;
    margin-bottom: 1.6rem;
}

.viz span {
    flex: 1;
    border-radius: 8px 8px 0 0;
    background: linear-gradient(180deg, rgba(124, 58, 237, 0.45), rgba(37, 99, 235, 0.18));
}

.viz span:nth-child(1) { height: 42%; }
.viz span:nth-child(2) { height: 68%; }
.viz span:nth-child(3) { height: 54%; }
.viz span:nth-child(4) { height: 86%; }
.viz span:nth-child(5) { height: 60%; }

.mod-path {
    display: grid;
    grid-template-columns: 1fr 1.1fr 1fr;
    gap: 0.9rem;
    margin-bottom: 2.2rem;
}

.mod-path article {
    background: var(--oy-surface);
    border-color: var(--oy-border);
}

.mod-path .fl-kicker {
    margin-top: 0;
    margin-bottom: 0.45rem;
    color: var(--oy-violet);
}

.mod-path h3 {
    color: var(--oy-text);
}

.mod-path__bridge {
    transform: translateY(1.1rem);
    background: var(--oy-midnight) !important;
    border-color: transparent !important;
}

.mod-path__bridge h3,
.mod-path__bridge p,
.mod-path__bridge .fl-kicker {
    color: #e8e4f8;
}

.help-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}

.help-grid li {
    background: var(--oy-surface);
    border-color: var(--oy-border);
}

.help-grid li:nth-child(even) {
    transform: translateY(0.8rem);
}

.help-grid h3 {
    color: var(--oy-text);
}

.related-list {
    display: grid;
    gap: 0.7rem;
}

.related-list li {
    padding: 0.85rem 0;
    border-bottom: 1px solid var(--oy-border);
    font-weight: var(--oy-fw-semibold);
}

@media (max-width: 1100px) {
    .fl-hero__layout,
    .fl-split,
    .fl-related__layout,
    .lend-workspace,
    .decision-cols,
    .fabric,
    .mod-path,
    .fl-split-lists {
        grid-template-columns: 1fr;
    }

    .fl-hero__copy h1 {
        max-width: none;
    }

    .lend-workspace article + article {
        margin-left: 0;
        margin-top: 0.9rem;
    }

    .lend-workspace article + article::before {
        display: none;
    }

    .pay-path li,
    .mod-path__bridge,
    .help-grid li:nth-child(even) {
        margin-left: 0;
        transform: none;
    }
}

@media (max-width: 900px) {
    .model-band,
    .ops-space,
    .case-board,
    .help-grid {
        grid-template-columns: 1fr 1fr;
        gap: 1.1rem;
    }

    .model-band li {
        padding: 1rem 0 0;
        border-left: 0;
        border-top: 1px solid var(--oy-border);
    }

    .model-band li:nth-child(-n + 2) {
        border-top: 0;
        padding-top: 0;
    }

    .lease-canvas {
        grid-template-columns: 1fr;
        grid-template-areas:
            "core"
            "a"
            "b"
            "c"
            "d";
    }

    .asset-lens {
        min-height: 0;
        display: grid;
        gap: 0.7rem;
    }

    .asset-lens__core,
    .asset-lens__plane {
        position: static;
        width: auto;
        transform: none;
        min-height: 0;
        border-radius: 16px;
    }
}

@media (max-width: 640px) {
    .fos__grid,
    .model-band,
    .ops-space,
    .case-board,
    .help-grid {
        grid-template-columns: 1fr;
    }

    .model-band li,
    .model-band li:nth-child(-n + 2) {
        border-top: 1px solid var(--oy-border);
        padding-top: 1rem;
    }

    .model-band li:first-child {
        border-top: 0;
        padding-top: 0;
    }

    .fl-hero__actions {
        display: grid;
    }
}
