html {
    overflow-x: clip;
    overscroll-behavior-x: none;
}

.dnec-landing {
    overflow-x: clip;
    overscroll-behavior-x: none;
    background: var(--bs-body-bg);
    color: var(--bs-body-color);
    scroll-behavior: smooth;
}

.dnec-landing__hero {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    background:
        linear-gradient(115deg, rgba(9, 23, 43, .99), rgba(13, 31, 54, .97) 57%, rgba(10, 28, 48, .99)),
        #0b1a2e;
}

.dnec-landing__hero-backdrop,
.dnec-landing__hero-grid,
.dnec-landing__hero-glow {
    position: absolute;
    pointer-events: none;
}

.dnec-landing__hero-backdrop { inset: 0; z-index: -1; overflow: hidden; }
.dnec-landing__hero-grid {
    inset: 0;
    opacity: .24;
    background-image:
        linear-gradient(rgba(113, 181, 235, .07) 1px, transparent 1px),
        linear-gradient(90deg, rgba(113, 181, 235, .07) 1px, transparent 1px);
    background-size: 54px 54px;
    mask-image: linear-gradient(to right, transparent 3%, #000 48%, #000 92%, transparent);
}

.dnec-landing__hero-glow { border-radius: 50%; filter: blur(12px); }
.dnec-landing__hero-glow--blue {
    top: -18rem;
    right: -8rem;
    width: 48rem;
    height: 48rem;
    background: radial-gradient(circle, rgba(0, 163, 255, .22), rgba(0, 163, 255, .02) 52%, transparent 68%);
}
.dnec-landing__hero-glow--violet {
    bottom: -25rem;
    left: -13rem;
    width: 43rem;
    height: 43rem;
    background: radial-gradient(circle, rgba(114, 57, 234, .25), rgba(114, 57, 234, .02) 56%, transparent 70%);
}

.dnec-landing__header {
    position: relative;
    z-index: 10;
    height: 92px;
    border-bottom: 1px solid rgba(255, 255, 255, .08);
    background: rgba(8, 24, 43, .66);
    box-shadow: 0 1px 0 rgba(71, 155, 222, .04);
    backdrop-filter: blur(20px) saturate(125%);
}

.dnec-landing__hero-row { min-height: 525px; }
.dnec-landing__hero-copy::before {
    content: "";
    position: absolute;
    top: 7%;
    left: -8%;
    z-index: -1;
    width: 310px;
    height: 310px;
    border-radius: 50%;
    background: rgba(56, 122, 255, .08);
    filter: blur(75px);
}

.dnec-landing__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 9px 11px 9px 15px;
    border: 1px solid rgba(116, 164, 255, .38);
    border-radius: 999px;
    color: #e1efff;
    background: linear-gradient(100deg, rgba(0, 163, 255, .18), rgba(114, 57, 234, .18));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 14px 36px rgba(0, 100, 210, .1);
backdrop-filter: blur(10px);
}

.dnec-landing__eyebrow > i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 25px;
    height: 25px;
    margin-left: 2px;
    border-radius: 50%;
    color: #8fcfff;
    background: rgba(255, 255, 255, .08);
}

.dnec-landing__eyebrow-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #50cd89;
    box-shadow: 0 0 0 5px rgba(80, 205, 137, .14), 0 0 18px rgba(80, 205, 137, .8);
}

.dnec-landing__hero-title {
    max-width: 670px;
text-wrap: balance;
}

.dnec-landing__hero-title-accent {
    position: relative;
    display: inline-block;
    color: transparent;
    background: linear-gradient(100deg, #4d91ff 5%, #75c9ff 52%, #a88cff 100%);
    background-clip: text;
    -webkit-background-clip: text;
    filter: drop-shadow(0 8px 24px rgba(62, 136, 255, .16));
}

.dnec-landing__hero-title-accent::after {
    content: "";
    position: absolute;
    right: 1%;
    bottom: -10px;
    left: 2%;
    height: 5px;
    border-radius: 50%;
    opacity: .58;
    background: linear-gradient(90deg, transparent, #4b8fff 18%, #8ccfff 62%, transparent);
    filter: blur(2px);
}

.dnec-landing__hero-description {}
.dnec-landing__hero-actions .btn { min-height: 52px; border-radius: 13px; }
.dnec-landing__hero-primary {
    position: relative;
    overflow: hidden;
    color: #fff;
    border: 1px solid rgba(122, 186, 255, .38);
    background: linear-gradient(115deg, #2879ed, #4d8fff 62%, #6f70f4);
    box-shadow: 0 14px 35px rgba(40, 121, 237, .27), inset 0 1px 0 rgba(255, 255, 255, .22);
}
.dnec-landing__hero-primary::before {
    content: "";
    position: absolute;
    top: -80%;
    left: -35%;
    width: 32%;
    height: 250%;
    background: rgba(255, 255, 255, .22);
    transform: rotate(24deg);
    transition: left .45s ease;
}
.dnec-landing__hero-primary:hover { color: #fff; transform: translateY(-2px); box-shadow: 0 18px 40px rgba(40, 121, 237, .34); }
.dnec-landing__hero-primary:hover::before { left: 115%; }
.dnec-landing__hero-secondary {
    border: 1px solid rgba(188, 214, 238, .34);
    background: rgba(255, 255, 255, .035);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .06);
    backdrop-filter: blur(10px);
}
.dnec-landing__hero-secondary:hover { color: #fff; border-color: rgba(117, 201, 255, .6); background: rgba(74, 151, 230, .1); transform: translateY(-2px); }

.dnec-landing__hero-signals {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: .55rem 1rem;
    margin-top: 1.35rem;
    color: #8095ad;
}
.dnec-landing__hero-signals span { display: inline-flex; align-items: center; gap: 6px; }
.dnec-landing__hero-signals i { color: #69bfff; }

@media (min-width: 992px) {
    .dnec-landing__hero-signals { justify-content: flex-start; }
}

.dnec-landing__brand-mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 12px;
    background: linear-gradient(135deg, var(--bs-primary), #7239ea);
    box-shadow: 0 10px 24px rgba(0, 163, 255, .28);
}

.dnec-landing__nav-link {
    color: #b5b7c8;
transition: color .2s ease;
}

.dnec-landing__nav-link:hover,
.dnec-landing__nav-link:focus {
    color: #fff;
}

.dnec-landing__visual {
    position: relative;
    max-width: 690px;
    min-height: 410px;
    display: flex;
    align-items: center;
}

.dnec-landing__visual::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 340px;
    height: 340px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(41, 139, 219, .16), rgba(27, 84, 137, .04) 54%, transparent 72%);
    filter: blur(3px);
    transform: translate(-50%, -50%);
}

.dnec-landing__visual > img {
    width: 100%;
    opacity: .12;
    filter: brightness(1.16) saturate(1.12) drop-shadow(0 28px 35px rgba(0, 0, 0, .18));
}

.dnec-landing__agent-network {
    position: absolute;
    inset: 0;
    z-index: 3;
}

.dnec-landing__agent-links { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.dnec-landing__agent-links path {
    fill: none;
    stroke: rgba(90, 185, 255, .28);
    stroke-width: 1.2;
    stroke-linecap: round;
    stroke-dasharray: 4 7;
    animation: dnec-agent-flow 5s linear infinite;
}
.dnec-landing__agent-links path:nth-child(2) { animation-delay: -1.2s; }
.dnec-landing__agent-links path:nth-child(3) { animation-delay: -2.4s; }
.dnec-landing__agent-links path:nth-child(4) { stroke: rgba(80, 205, 137, .3); animation-delay: -3.6s; }

@keyframes dnec-agent-flow { to { stroke-dashoffset: -44; } }

.dnec-landing__agent-orbit {
    position: absolute;
    top: 50%;
    left: 50%;
    border: 1px solid rgba(99, 185, 255, .13);
    border-radius: 50%;
    transform: translate(-50%, -50%);
}

.dnec-landing__agent-orbit--one { width: 250px; height: 250px; box-shadow: inset 0 0 45px rgba(26, 108, 176, .045); }
.dnec-landing__agent-orbit--two { width: 440px; height: 340px; border-style: dashed; }

.dnec-landing__agent-core {
    position: absolute;
    top: 50%;
    left: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 158px;
    height: 158px;
    border: 1px solid rgba(131, 207, 255, .55);
    border-radius: 50%;
    color: #fff;
    background: radial-gradient(circle at 34% 25%, #3f82c4, #1c466e 50%, #122d4a 100%);
    box-shadow: 0 0 0 12px rgba(0, 163, 255, .055), 0 0 0 28px rgba(0, 163, 255, .025), 0 24px 60px rgba(0, 0, 0, .34);
    transform: translate(-50%, -50%);
}

.dnec-landing__agent-core::before {
    content: "";
    position: absolute;
    inset: -13px;
    border: 1px solid rgba(103, 199, 255, .17);
    border-top-color: rgba(119, 209, 255, .68);
    border-radius: 50%;
    animation: dnec-agent-spin 12s linear infinite;
}
@keyframes dnec-agent-spin { to { transform: rotate(360deg); } }
.dnec-landing__agent-core-icon { display: flex; align-items: center; justify-content: center; width: 43px; height: 43px; margin-bottom: 7px; border-radius: 14px; color: #a7dcff; background: rgba(129, 207, 255, .11); box-shadow: inset 0 1px 0 rgba(255,255,255,.14); }
.dnec-landing__agent-core-icon i { font-size: 1.45rem; }
.dnec-landing__agent-core em { margin-bottom: 3px; color: #77c8ff; }
.dnec-landing__agent-core strong {}
.dnec-landing__agent-core small { margin-top: 3px; color: #9db2c9; }

.dnec-landing__agent-node {
    position: absolute;
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 190px;
    padding: 12px 14px;
    border: 1px solid rgba(127, 179, 225, .22);
    border-radius: 15px;
    color: #f4f8fc;
    background: linear-gradient(120deg, rgba(27, 57, 88, .92), rgba(19, 41, 66, .84));
    box-shadow: 0 18px 38px rgba(0, 0, 0, .25), inset 0 1px 0 rgba(255, 255, 255, .055);
    backdrop-filter: blur(16px) saturate(125%);
    transition: border-color .25s ease, transform .25s ease, background .25s ease;
}
.dnec-landing__agent-node:hover { z-index: 4; border-color: rgba(100, 193, 255, .48); background: linear-gradient(120deg, rgba(32, 68, 104, .97), rgba(20, 46, 74, .92)); transform: translateY(-3px); }

.dnec-landing__agent-node::after {
    content: "";
    position: absolute;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #50cd89;
    box-shadow: 0 0 10px rgba(80, 205, 137, .8);
}

.dnec-landing__agent-node > i { display: flex; align-items: center; justify-content: center; flex: 0 0 auto; width: 34px; height: 34px; border-radius: 10px; color: #79caff; background: rgba(0, 163, 255, .1); }
.dnec-landing__agent-node span { display: flex; flex-direction: column; }
.dnec-landing__agent-node strong {}
.dnec-landing__agent-node small { margin-top: 2px; color: #91a6bd; }
.dnec-landing__agent-node--code { top: 3%; left: -1%; }
.dnec-landing__agent-node--code::after,
.dnec-landing__agent-node--ops::after { right: -4px; }
.dnec-landing__agent-node--data { top: 6%; right: -1%; }
.dnec-landing__agent-node--data::after,
.dnec-landing__agent-node--whatsapp::after { left: -4px; }
.dnec-landing__agent-node--ops { bottom: 6%; left: -2%; }
.dnec-landing__agent-node--whatsapp { right: -1%; bottom: 4%; border-color: rgba(80, 205, 137, .36); background: linear-gradient(120deg, rgba(26, 67, 76, .88), rgba(18, 47, 65, .9)); }
.dnec-landing__agent-node--whatsapp > i { color: #64dfa0; background: rgba(80, 205, 137, .11); }

.dnec-landing__agent-status {
    position: absolute;
    bottom: -7px;
    left: 50%;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 13px;
    border: 1px solid rgba(80, 205, 137, .24);
    border-radius: 999px;
    color: #bfe9d1;
    background: rgba(20, 46, 64, .88);
white-space: nowrap;
    transform: translateX(-50%);
}

.dnec-landing__agent-status > i { width: 8px; height: 8px; border-radius: 50%; background: #50cd89; box-shadow: 0 0 0 5px rgba(80,205,137,.09), 0 0 12px #50cd89; }
.dnec-landing__agent-status > span { display: flex; flex-direction: column; }
.dnec-landing__agent-status strong { color: #c9f0da; }
.dnec-landing__agent-status small { margin-top: 1px; color: #6f9b84; }

.dnec-landing__curve {
    height: 54px;
}

.dnec-landing__curve svg {
    width: 100%;
    height: 100%;
}

.dnec-landing__curve path {
    fill: var(--bs-body-bg);
}

.dnec-landing__feature {
    padding: 2.5rem;
    border: 1px solid var(--bs-gray-200);
    border-radius: 1.25rem;
    background: var(--bs-body-bg);
    box-shadow: 0 12px 35px rgba(31, 46, 70, .055);
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.dnec-landing__work-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.5rem;
}

.dnec-landing__discipline {
    display: inline-flex;
    padding: 7px 11px;
    border: 1px solid rgba(var(--bs-primary-rgb), .16);
    border-radius: 8px;
    color: var(--bs-primary);
    background: rgba(var(--bs-primary-rgb), .06);
}

.dnec-landing__work-card {
    position: relative;
    overflow: hidden;
    padding: 2rem;
    border: 1px solid var(--bs-gray-200);
    border-radius: 1.25rem;
    background: var(--bs-body-bg);
    box-shadow: 0 14px 40px rgba(31, 46, 70, .065);
}

.dnec-landing__work-card::after {
    content: "";
    position: absolute;
    width: 120px;
    height: 120px;
    top: -70px;
    right: -55px;
    border-radius: 50%;
    opacity: .65;
}

.dnec-landing__work-card--primary::after {
    background: rgba(0, 163, 255, .15);
}

.dnec-landing__work-card--success::after {
    background: rgba(80, 205, 137, .18);
}

.dnec-landing__work-card--wide {
    grid-column: 1 / -1;
}

.dnec-landing__work-card--wide::after {
    background: rgba(255, 199, 0, .14);
}

.dnec-landing__features-section {
    background: var(--bs-gray-100);
}

.dnec-landing__capabilities {
    position: relative;
    overflow: hidden;
    border-top: 1px solid var(--bs-gray-200);
    background:
        radial-gradient(circle at 8% 12%, rgba(0, 163, 255, .075), transparent 26rem),
        radial-gradient(circle at 94% 75%, rgba(114, 57, 234, .07), transparent 30rem),
        var(--bs-body-bg);
}

.dnec-landing__section-label {
    display: inline-flex;
    padding: 8px 13px;
    border: 1px solid rgba(var(--bs-primary-rgb), .16);
    border-radius: 9px;
    color: var(--bs-primary);
    background: rgba(var(--bs-primary-rgb), .06);
}

.dnec-landing__availability {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: var(--bs-gray-600);
}

.dnec-landing__availability > span {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: var(--bs-success);
    box-shadow: 0 0 0 5px rgba(80, 205, 137, .13), 0 0 16px rgba(80, 205, 137, .45);
}

.dnec-landing__capability-tabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .75rem;
    margin-bottom: 2.5rem;
    padding: .65rem;
    border: 1px solid var(--bs-gray-200);
    border-radius: 1.25rem;
    background: var(--bs-gray-100);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.45);
}

.dnec-landing__capability-tab {
    --tab-rgb: var(--bs-primary-rgb);
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 1rem;
    min-width: 0;
    min-height: 102px;
    padding: 1rem 1.15rem;
    border: 1px solid transparent;
    border-radius: .9rem;
    color: var(--bs-gray-600);
    background: transparent;
    text-align: left;
    transition: color .2s ease, background-color .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.dnec-landing__capability-tab:nth-child(2) { --tab-rgb: 80, 205, 137; }
.dnec-landing__capability-tab:hover { color: var(--bs-gray-900); background: rgba(var(--tab-rgb), .055); }
.dnec-landing__capability-tab:focus-visible { outline: 3px solid rgba(var(--tab-rgb), .2); outline-offset: 2px; }
.dnec-landing__capability-tab.is-active {
    color: rgb(var(--tab-rgb));
    border-color: rgba(var(--tab-rgb), .22);
    background: var(--bs-body-bg);
    box-shadow: 0 10px 24px rgba(31,46,70,.08), inset 0 -3px 0 rgba(var(--tab-rgb), .72);
    transform: translateY(-1px);
}

.dnec-landing__capability-tab > span {
    display: flex;
    flex: 0 0 auto;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 60px;
    border: 1px solid rgba(var(--tab-rgb), .2);
    border-radius: 17px;
    color: rgb(var(--tab-rgb));
    background: rgba(var(--tab-rgb), .09);
box-shadow: inset 0 1px 0 rgba(255,255,255,.14);
}

.dnec-landing__capability-tab.is-active > span { border-color: rgba(var(--tab-rgb), .38); background: rgba(var(--tab-rgb), .14); box-shadow: 0 0 0 6px rgba(var(--tab-rgb), .045), 0 9px 20px rgba(var(--tab-rgb), .12), inset 0 1px 0 rgba(255,255,255,.2); }
.dnec-landing__capability-tab > span > i {}
.dnec-landing__capability-tab > b { display: flex; align-items: center; justify-content: flex-start; width: 100%; min-height: 2.7em; overflow: hidden; color: var(--bs-gray-700); text-align: left; text-overflow: ellipsis; }
.dnec-landing__capability-tab.is-active > b { color: rgb(var(--tab-rgb)); }

/* Mayor profundidad y protagonismo para la navegación por segmentos. */
.dnec-landing__capability-tabs {
    position: relative;
    gap: .85rem;
    margin-bottom: 3rem;
    padding: .8rem;
    border-radius: 1.4rem;
    background: radial-gradient(circle at 8% 0,rgba(var(--bs-primary-rgb),.08),transparent 17rem),radial-gradient(circle at 92% 100%,rgba(80,205,137,.06),transparent 17rem),var(--bs-gray-100);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.5),0 14px 35px rgba(31,46,70,.055);
}

.dnec-landing__capability-tab {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    border-color: rgba(var(--tab-rgb),.1);
    border-radius: 1rem;
    background: linear-gradient(145deg,rgba(var(--tab-rgb),.035),transparent 68%),var(--bs-body-bg);
}

.dnec-landing__capability-tab::before { content: ""; position: absolute; top: -78px; left: 50%; z-index: -1; width: 180px; height: 150px; border-radius: 50%; opacity: .35; background: radial-gradient(circle,rgba(var(--tab-rgb),.2),transparent 68%); transform: translateX(-50%); transition: opacity .25s ease,transform .25s ease; }
.dnec-landing__capability-tab::after { content: ""; position: absolute; right: 16%; bottom: 0; left: 16%; height: 4px; border-radius: 5px 5px 0 0; opacity: .35; background: linear-gradient(90deg,transparent,rgb(var(--tab-rgb)),transparent); transform: scaleX(.45); transition: opacity .25s ease,transform .25s ease; }
.dnec-landing__capability-tab:hover { border-color: rgba(var(--tab-rgb),.24); background: linear-gradient(145deg,rgba(var(--tab-rgb),.085),transparent 70%),var(--bs-body-bg); box-shadow: 0 12px 28px rgba(var(--tab-rgb),.09); transform: translateY(-3px); }
.dnec-landing__capability-tab:hover::before { opacity: .65; transform: translateX(-50%) scale(1.08); }
.dnec-landing__capability-tab:hover::after { opacity: .8; transform: scaleX(.82); }
.dnec-landing__capability-tab.is-active { background: linear-gradient(145deg,rgba(var(--tab-rgb),.12),transparent 72%),var(--bs-body-bg); box-shadow: 0 15px 32px rgba(var(--tab-rgb),.12),0 0 0 1px rgba(var(--tab-rgb),.045); transform: translateY(-3px); }
.dnec-landing__capability-tab.is-active::before { opacity: .85; transform: translateX(-50%) scale(1.12); }
.dnec-landing__capability-tab.is-active::after { opacity: 1; transform: scaleX(1); }
.dnec-landing__capability-tab > span { box-shadow: inset 0 1px 0 rgba(255,255,255,.14),0 8px 18px rgba(var(--tab-rgb),.075); transition: transform .25s ease,box-shadow .25s ease,background-color .25s ease; }
.dnec-landing__capability-tab.is-active > span { border-color: rgba(var(--tab-rgb),.42); background: rgba(var(--tab-rgb),.16); box-shadow: 0 0 0 7px rgba(var(--tab-rgb),.055),0 11px 24px rgba(var(--tab-rgb),.16),inset 0 1px 0 rgba(255,255,255,.22); transform: scale(1.06); }
.dnec-landing__capability-tab::before { left: 48px; }

.dnec-landing__bento {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1.25rem;
}

.dnec-landing__capability-panel {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1.25rem;
    min-width: 0;
    animation: dnec-capability-panel-in .28s ease both;
}

.dnec-landing__capability-panel[hidden] { display: none; }

@keyframes dnec-capability-panel-in {
    from { opacity: 0; transform: translateY(8px); }
    to { opacity: 1; transform: translateY(0); }
}

.dnec-landing__bento-group {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-auto-flow: dense;
    gap: 1.25rem;
    min-width: 0;
}

.dnec-landing__bento-card {
    position: relative;
    overflow: hidden;
    min-height: 320px;
    padding: 2rem;
    border: 1px solid var(--bs-gray-200);
    border-radius: 1.35rem;
    background: var(--bs-body-bg);
    box-shadow: 0 16px 42px rgba(31, 46, 70, .07);
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.dnec-landing__bento-card:hover {
    transform: translateY(-5px);
    border-color: rgba(var(--bs-primary-rgb), .22);
    box-shadow: 0 24px 52px rgba(31, 46, 70, .11);
}

.dnec-landing__bento-card h3 {
    position: relative;
    z-index: 2;
    margin: 1.15rem 0 .65rem;
    color: var(--bs-gray-900);
}

.dnec-landing__bento-card p {
    position: relative;
    z-index: 2;
    margin: 0;
    color: var(--bs-gray-500);
}

.dnec-landing__bento-card--ai,
.dnec-landing__bento-card--payments {
    grid-column: span 2;
}

.dnec-landing__bento-card--ai {
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    min-height: 360px;
    color: #fff;
    border-color: rgba(158, 121, 255, .18);
    background:
        radial-gradient(circle at 84% 18%, rgba(0, 163, 255, .34), transparent 15rem),
        radial-gradient(circle at 25% 110%, rgba(114, 57, 234, .42), transparent 19rem),
        #111d34;
}

.dnec-landing__bento-card--ai h3,
.dnec-landing__bento-card--payments h3 {
    color: #fff;
}

.dnec-landing__bento-card--ai p,
.dnec-landing__bento-card--payments p {
    color: #aab6c8;
}

.dnec-landing__bento-content {
    position: relative;
    z-index: 2;
}

.dnec-landing__bento-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    border-radius: 15px;
    color: #bba4ff;
    background: rgba(158, 121, 255, .14);
    font-size: 1.35rem;
}

.dnec-landing__bento-icon--cyan { color: #00a3ff; background: rgba(0, 163, 255, .10); }
.dnec-landing__bento-icon--green { color: #50cd89; background: rgba(80, 205, 137, .11); }
.dnec-landing__bento-icon--amber { color: #ffc700; background: rgba(255, 199, 0, .13); }
.dnec-landing__bento-icon--blue { color: #009ef7; background: rgba(0, 158, 247, .11); }
.dnec-landing__bento-icon--violet { color: #7239ea; background: rgba(114, 57, 234, .11); }

.dnec-landing__bento-kicker {
    display: block;
    margin-top: 1.2rem;
    color: #7cbfff;
}

.dnec-landing__card-status {
    padding: 6px 9px;
    border-radius: 7px;
    color: var(--bs-gray-500);
    background: var(--bs-gray-100);
}

.dnec-landing__mini-tag {
    padding: 6px 9px;
    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 7px;
    color: #b8c3d3;
    background: rgba(255, 255, 255, .05);
}

.dnec-landing__ai-visual {
    position: relative;
    min-height: 270px;
}

.dnec-landing__ai-core {
    position: absolute;
    top: 50%;
    left: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100px;
    height: 100px;
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 30px;
    color: #fff;
    background: linear-gradient(145deg, rgba(0, 163, 255, .55), rgba(114, 57, 234, .72));
    box-shadow: 0 0 0 16px rgba(114, 57, 234, .08), 0 18px 45px rgba(0, 0, 0, .28);
    transform: translate(-50%, -50%) rotate(-5deg);
}

.dnec-landing__ai-core i {}
.dnec-landing__ai-core strong {}

.dnec-landing__ai-node {
    position: absolute;
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 8px 11px;
    border: 1px solid rgba(255, 255, 255, .10);
    border-radius: 9px;
    color: #c4cede;
    background: rgba(8, 22, 42, .72);
backdrop-filter: blur(8px);
}

.dnec-landing__ai-node span { width: 7px; height: 7px; border-radius: 50%; background: #50cd89; box-shadow: 0 0 10px #50cd89; }
.dnec-landing__ai-node--one { top: 12%; left: 2%; }
.dnec-landing__ai-node--two { top: 29%; right: -3%; }
.dnec-landing__ai-node--three { bottom: 10%; left: 8%; }

.dnec-landing__ai-capabilities {
    position: relative;
    z-index: 2;
    grid-column: 1 / -1;
    margin-top: .75rem;
    padding-top: 1.15rem;
    border-top: 1px solid rgba(255, 255, 255, .1);
}

.dnec-landing__ai-capabilities-title {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: .8rem;
}

.dnec-landing__ai-capabilities-title span { color: #f3f7fd; }
.dnec-landing__ai-capabilities-title small { color: #73859d; }

.dnec-landing__ai-capability-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .55rem;
}

.dnec-landing__ai-capability {
    display: flex;
    align-items: center;
    gap: .65rem;
    min-width: 0;
    padding: .65rem .7rem;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 10px;
    background: rgba(255, 255, 255, .045);
}

.dnec-landing__ai-capability > i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 29px;
    height: 29px;
    border-radius: 8px;
    color: #75c7ff;
    background: rgba(0, 163, 255, .11);
}

.dnec-landing__ai-capability:nth-child(2) > i { color: #65dda0; background: rgba(80, 205, 137, .11); }
.dnec-landing__ai-capability:nth-child(4) > i { color: #c3adff; background: rgba(114, 57, 234, .14); }
.dnec-landing__ai-capability span,
.dnec-landing__ai-capability strong,
.dnec-landing__ai-capability small { display: block; min-width: 0; }
.dnec-landing__ai-capability strong { overflow: hidden; color: #dce6f3; text-overflow: ellipsis; white-space: nowrap; }
.dnec-landing__ai-capability small { margin-top: 2px; color: #788aa1; }

.dnec-landing__scan {
    position: relative;
    height: 118px;
    margin-top: 1.35rem;
    border-radius: 13px;
    background: linear-gradient(135deg, rgba(0, 163, 255, .055), rgba(0, 163, 255, .015));
}

.dnec-landing__scan-page { position: absolute; top: 13px; left: 20px; width: 72px; height: 90px; padding: 16px 12px; border-radius: 6px; background: var(--bs-body-bg); box-shadow: 0 8px 22px rgba(31,46,70,.12); }
.dnec-landing__scan-page i { display: block; height: 4px; margin-bottom: 8px; border-radius: 3px; background: var(--bs-gray-300); }
.dnec-landing__scan-page i:nth-child(2) { width: 78%; }
.dnec-landing__scan-page i:nth-child(3) { width: 90%; }
.dnec-landing__scan-page i:nth-child(4) { width: 58%; }
.dnec-landing__scan-page span { position: absolute; inset: 7px; border: 1px dashed rgba(0,163,255,.45); border-radius: 4px; }
.dnec-landing__scan-line { position: absolute; top: 56px; left: 14px; width: 84px; height: 2px; background: #00a3ff; box-shadow: 0 0 12px #00a3ff; }
.dnec-landing__scan-result { position: absolute; top: 43px; right: 14px; padding: 8px 10px; border-radius: 8px; color: #36a76a; background: rgba(80,205,137,.12); }

.dnec-landing__bento-card--maps {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    align-items: center;
    gap: 2rem;
    min-height: 520px;
    border-color: rgba(80,205,137,.20);
    background:
        radial-gradient(circle at 92% 8%, rgba(80,205,137,.19), transparent 17rem),
        radial-gradient(circle at 15% 115%, rgba(0,163,255,.10), transparent 18rem),
        var(--bs-body-bg);
}
.dnec-landing__maps-copy { position: relative; z-index: 3; grid-column: span 5; }
.dnec-landing__map-pill { padding: 6px 9px; border: 1px solid rgba(80,205,137,.18); border-radius: 7px; color: #36835e; background: rgba(80,205,137,.07); }
.dnec-landing__map-visual { position: relative; grid-column: span 7; min-height: 455px; overflow: hidden; border: 1px solid rgba(80,205,137,.16); border-radius: 20px; background: linear-gradient(145deg,#e7f7ee,#dceee6); box-shadow: 0 28px 55px rgba(39,95,68,.16); }
.dnec-landing__map-canvas { position: absolute; inset: 0; }
.dnec-landing__map-canvas .maplibregl-canvas { cursor: grab; }
.dnec-landing__map-canvas .maplibregl-canvas:active { cursor: grabbing; }
.dnec-landing__map-canvas .maplibregl-ctrl-top-right { top: 58px; right: 4px; }
.dnec-landing__map-canvas .maplibregl-ctrl-group { overflow: hidden; border-radius: 9px; box-shadow: 0 7px 17px rgba(31,46,70,.14); }
.dnec-landing__map-loading { position: absolute; top: 50%; left: 50%; z-index: 6; display: flex; align-items: center; gap: 8px; padding: 9px 12px; border: 1px solid rgba(80,205,137,.2); border-radius: 10px; color: #267b58; background: rgba(255,255,255,.95); box-shadow: 0 9px 24px rgba(31,46,70,.14); transform: translate(-50%,-50%); transition: opacity .2s ease,visibility .2s ease; white-space: nowrap; }
.dnec-landing__map-visual.is-ready .dnec-landing__map-loading { visibility: hidden; opacity: 0; }
.dnec-landing__map-visual.has-error .dnec-landing__map-loading { color: #b42345; border-color: rgba(241,65,108,.22); background: rgba(255,247,249,.96); }
.dnec-landing__map-visual.has-error .dnec-landing__map-loading .spinner-border { display: none; }
.dnec-landing__map-server { position: absolute; right: 13px; bottom: 13px; z-index: 3; padding: 7px 10px; border-radius: 8px; color: #267b58; background: rgba(255,255,255,.94); box-shadow: 0 7px 17px rgba(31,46,70,.12); }
.dnec-landing__map-server i { margin-right: 5px; }
.dnec-landing__map-theme { position: absolute; top: 14px; right: 14px; z-index: 5; display: inline-flex; align-items: center; gap: 7px; min-height: 38px; padding: 7px 11px; border: 1px solid rgba(255,255,255,.76); border-radius: 10px; color: #267b58; background: rgba(255,255,255,.93); box-shadow: 0 7px 16px rgba(31,46,70,.13); backdrop-filter: blur(9px); transition: color .2s ease, background .2s ease, transform .2s ease; }
.dnec-landing__map-theme:hover { color: #126b45; background: #fff; transform: translateY(-1px); }
[data-bs-theme="dark"] .dnec-landing__map-theme { border-color: rgba(255,255,255,.14); color: #8ee3b9; background: rgba(13,22,38,.91); }
[data-bs-theme="dark"] .dnec-landing__map-theme:hover { color: #b4f0d1; background: rgba(21,33,51,.97); }
.dnec-landing__map-control { position:absolute; top:14px; left:14px; z-index:4; display:flex; gap:7px; }
.dnec-landing__map-control > span { display:grid; grid-template-columns:24px auto; column-gap:7px; padding:7px 9px; border:1px solid rgba(255,255,255,.7); border-radius:9px; background:rgba(255,255,255,.91); box-shadow:0 7px 16px rgba(31,46,70,.1); }
.dnec-landing__map-control i { grid-row:1 / span 2; align-self:center; color:#36a76a; }
.dnec-landing__map-control b,.dnec-landing__map-control small { display:block; }
.dnec-landing__map-control b { color:#315e49; }
.dnec-landing__map-control small { color:#6d917e; }

.dnec-landing__bento-card--payments {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    align-items: center;
    min-height: 410px;
    color: #fff;
    border-color: rgba(0, 163, 255, .16);
    background:
        radial-gradient(circle at 90% 10%, rgba(0, 163, 255, .28), transparent 16rem),
        #13263c;
}

.dnec-landing__payments-copy { position: relative; z-index: 2; }
.dnec-landing__payment-providers { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; margin-top: 1.35rem; }
.dnec-landing__payment-providers > span { --provider-rgb: 0,163,255; display: flex; align-items: center; gap: 9px; min-width: 0; padding: 8px 9px; border: 1px solid rgba(var(--provider-rgb),.2); border-radius: 11px; color: #dfeaf7; background: rgba(var(--provider-rgb),.075); }
.dnec-landing__payment-providers > span:nth-child(2) { --provider-rgb: 255,199,0; }
.dnec-landing__payment-providers > span:nth-child(3) { --provider-rgb: 114,57,234; }
.dnec-landing__payment-providers > span:nth-child(4) { --provider-rgb: 80,205,137; }
.dnec-landing__payment-providers > span:nth-child(5) { --provider-rgb: 241,65,108; }
.dnec-landing__payment-providers > span:nth-child(6) { --provider-rgb: 255,144,0; }
.dnec-landing__payment-providers > span > i { display: flex; flex: 0 0 auto; align-items: center; justify-content: center; width: 42px; height: 42px; border-radius: 11px; color: rgb(var(--provider-rgb)); background: rgba(var(--provider-rgb),.12); }
.dnec-landing__payment-providers > span > b { min-width: 0; }
.dnec-landing__payment-visual { position: relative; min-height: 320px; }
.dnec-landing__payment-card { position: absolute; top: 50%; left: 50%; width: 330px; aspect-ratio: 1.586 / 1; padding: 28px; border: 1px solid rgba(255,255,255,.25); border-radius: 22px; color: #fff; background: linear-gradient(135deg,#176aa8,#7239ea); box-shadow: 0 30px 58px rgba(0,0,0,.3); transform: translate(-50%,-50%) rotate(-6deg); }
.dnec-landing__payment-card > i { position: absolute; top: 27px; right: 27px; transform: rotate(90deg); }
.dnec-landing__payment-chip { display: block; width: 40px; height: 29px; border-radius: 7px; background: linear-gradient(135deg,#ffd873,#dcae38); }
.dnec-landing__payment-card strong { display: block; margin-top: 34px; }
.dnec-landing__payment-card small { display: block; margin-top: 7px; color: rgba(255,255,255,.72); }
.dnec-landing__payment-ok { position: absolute; top: calc(50% + 72px); left: calc(50% + 136px); display: flex; align-items: center; justify-content: center; width: 46px; height: 46px; border: 5px solid #13263c; border-radius: 50%; color: #fff; background: #50cd89; box-shadow: 0 10px 25px rgba(80,205,137,.28); transform: translate(-50%,-50%); }

.dnec-landing__bento-card--docker { border-color: rgba(36,150,237,.16); background: radial-gradient(circle at 95% 5%, rgba(36,150,237,.11), transparent 14rem), var(--bs-body-bg); }
.dnec-landing__bento-icon--docker { color: #2496ed; background: rgba(36,150,237,.11); font-size: 1.55rem; }
.dnec-landing__terminal { margin-top: 1.35rem; overflow: hidden; border: 1px solid rgba(134,164,196,.16); border-radius: 13px; color: #b9c7d9; background: #101d2e; box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 12px 25px rgba(16,29,46,.14); }
.dnec-landing__terminal-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 10px 13px; border-bottom: 1px solid rgba(255,255,255,.07); background: rgba(255,255,255,.025); }
.dnec-landing__terminal-head > div { display: flex; gap: 5px; }
.dnec-landing__terminal-head > div span { width: 7px; height: 7px; border-radius: 50%; background: #f1416c; }
.dnec-landing__terminal-head > div span:nth-child(2) { background: #ffc700; }
.dnec-landing__terminal-head > div span:nth-child(3) { background: #50cd89; }
.dnec-landing__terminal-head strong { display: flex; align-items: center; gap: 5px; color: #8eb7d5; }
.dnec-landing__terminal-head strong i { color: #2496ed; }
.dnec-landing__terminal code { display: block; padding: 13px 15px 11px; color: #d5deea; }
.dnec-landing__terminal code b { color: #50cd89; }
.dnec-landing__terminal-services { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 6px; padding: 0 10px 10px; }
.dnec-landing__terminal-services > span { display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 1px 6px; min-width: 0; padding: 7px; border: 1px solid rgba(255,255,255,.06); border-radius: 8px; background: rgba(255,255,255,.035); }
.dnec-landing__terminal-services > span > i { grid-row: 1 / span 2; color: #2496ed; }
.dnec-landing__terminal-services b { overflow: hidden; color: #d5deea; text-overflow: ellipsis; }
.dnec-landing__terminal-services small { color: #50cd89; }

.dnec-landing__integration-tags { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 1rem; }
.dnec-landing__integration-tags span { padding: 6px 9px; border: 1px solid rgba(114,57,234,.15); border-radius: 999px; color: #7652d2; background: rgba(114,57,234,.07); }
.dnec-landing__pulse { min-width: 0; min-height: 225px; padding: 1rem; border: 1px solid rgba(114,57,234,.14); border-radius: 16px; background: radial-gradient(circle at 50% 50%, rgba(114,57,234,.1), transparent 13rem), var(--bs-gray-100); }
.dnec-landing__pulse-head { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 1.25rem; padding-bottom: .75rem; border-bottom: 1px solid var(--bs-gray-200); }
.dnec-landing__pulse-head > span { display: inline-flex; align-items: center; gap: 7px; color: #379666; }
.dnec-landing__pulse-head > span i { width: 7px; height: 7px; border-radius: 50%; background: #50cd89; box-shadow: 0 0 0 4px rgba(80,205,137,.1), 0 0 12px rgba(80,205,137,.38); }
.dnec-landing__pulse-head > b { padding: 4px 7px; border-radius: 6px; color: var(--bs-gray-500); background: var(--bs-gray-200); }
.dnec-landing__pulse-track { display: flex; align-items: center; justify-content: center; min-width: 390px; }
.dnec-landing__pulse-node { display: flex; flex: 0 0 92px; flex-direction: column; align-items: center; color: var(--bs-gray-500); text-align: center; }
.dnec-landing__pulse-node > span { display: flex; align-items: center; justify-content: center; width: 58px; height: 58px; margin-bottom: 8px; border: 1px solid rgba(0,163,255,.18); border-radius: 17px; color: var(--bs-primary); background: var(--bs-body-bg); box-shadow: 0 9px 22px rgba(31,46,70,.08); }
.dnec-landing__pulse-node > small { color: var(--bs-gray-400); }
.dnec-landing__pulse-node > strong { margin-top: 3px; color: var(--bs-gray-700); }
.dnec-landing__pulse-node--api > span { color: #7239ea; border-color: rgba(114,57,234,.25); background: rgba(114,57,234,.09); box-shadow: 0 0 0 6px rgba(114,57,234,.04), 0 9px 22px rgba(31,46,70,.08); }
.dnec-landing__pulse-node--mobile > span { color: #38a66d; border-color: rgba(80,205,137,.22); }
.dnec-landing__pulse-link { position: relative; flex: 1 1 50px; max-width: 90px; height: 50px; }
.dnec-landing__pulse-link > small { position: absolute; top: 0; left: 50%; color: var(--bs-gray-400); transform: translateX(-50%); }
.dnec-landing__pulse-link > i { position: absolute; top: 27px; right: 4px; left: 4px; height: 2px; overflow: hidden; border-radius: 2px; background: var(--bs-gray-300); }
.dnec-landing__pulse-link > i::after { content: ""; position: absolute; top: 0; left: -35%; width: 35%; height: 100%; background: linear-gradient(90deg,transparent,#00a3ff,transparent); animation: dnec-pulse-data 1.8s linear infinite; }
.dnec-landing__pulse-link--live > i::after { background: linear-gradient(90deg,transparent,#50cd89,transparent); animation-delay: .5s; }

@keyframes dnec-pulse-data { to { left: 100%; } }

.dnec-landing__bento-card--integration {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(300px, 1.1fr);
    align-items: center;
    min-height: 300px;
    border-color: rgba(114,57,234,.17);
    background: radial-gradient(circle at 92% 10%, rgba(114,57,234,.1), transparent 18rem), var(--bs-body-bg);
}
.dnec-landing__bento-card--integration > .d-flex,
.dnec-landing__bento-card--integration > h3,
.dnec-landing__bento-card--integration > p,
.dnec-landing__bento-card--integration > .dnec-landing__integration-tags { grid-column: 1; }
.dnec-landing__bento-card--integration > .d-flex { grid-row: 1; }
.dnec-landing__bento-card--integration > h3 { grid-row: 2; }
.dnec-landing__bento-card--integration > p { grid-row: 3; }
.dnec-landing__bento-card--integration > .dnec-landing__integration-tags { grid-row: 4; }
.dnec-landing__bento-card--integration .dnec-landing__pulse { grid-column: 2; grid-row: 1 / span 4; margin-left: 2rem; }

.dnec-landing__bento-segment {
    position: relative;
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: auto minmax(230px, .85fr) minmax(110px, .55fr) minmax(280px, 1fr);
    align-items: center;
    gap: 1.15rem;
    min-height: 88px;
    margin-top: 1.4rem;
    padding: 1rem 1.15rem;
    border: 1px solid var(--bs-gray-200);
    border-radius: 1rem;
    background:
        linear-gradient(90deg, rgba(var(--bs-primary-rgb), .055), transparent 48%),
        var(--bs-body-bg);
    box-shadow: 0 11px 30px rgba(31, 46, 70, .045);
}

.dnec-landing__bento-segment:first-child { margin-top: 0; }
.dnec-landing__bento-segment::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 36px;
    height: calc(1.25rem + 1px);
    border-left: 1px dashed rgba(var(--bs-primary-rgb), .38);
}

.dnec-landing__segment-node {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    border: 1px solid rgba(var(--bs-primary-rgb), .26);
    border-radius: 15px;
    color: var(--bs-primary);
    background: rgba(var(--bs-primary-rgb), .09);
    box-shadow: 0 0 0 6px rgba(var(--bs-primary-rgb), .035);
}
.dnec-landing__segment-node small {}
.dnec-landing__segment-node strong {}

.dnec-landing__segment-copy span,
.dnec-landing__segment-copy strong {
    display: block;
}

.dnec-landing__segment-copy span {
    margin-bottom: .3rem;
    color: var(--bs-primary);
}

.dnec-landing__segment-copy strong {
    color: var(--bs-gray-900);
}

.dnec-landing__segment-rail {
    position: relative;
    height: 1px;
    background: linear-gradient(90deg, rgba(var(--bs-primary-rgb), .08), rgba(var(--bs-primary-rgb), .52), rgba(var(--bs-primary-rgb), .08));
}
.dnec-landing__segment-rail::before,
.dnec-landing__segment-rail::after,
.dnec-landing__segment-rail i {
    position: absolute;
    top: 50%;
    width: 7px;
    height: 7px;
    border: 2px solid var(--bs-body-bg);
    border-radius: 50%;
    background: var(--bs-primary);
    box-shadow: 0 0 0 3px rgba(var(--bs-primary-rgb), .09), 0 0 10px rgba(var(--bs-primary-rgb), .3);
    transform: translate(-50%, -50%);
}
.dnec-landing__segment-rail::before { content: ""; left: 0; }
.dnec-landing__segment-rail::after { content: ""; left: 100%; }
.dnec-landing__segment-rail i:nth-child(1) { left: 20%; }
.dnec-landing__segment-rail i:nth-child(2) { left: 40%; }
.dnec-landing__segment-rail i:nth-child(3) { left: 60%; }
.dnec-landing__segment-rail i:nth-child(4) { left: 80%; }

.dnec-landing__bento-segment p {
    margin: 0;
    color: var(--bs-gray-500);
}

.dnec-landing__bento-segment--platforms { --segment-rgb: 114, 57, 234; }
.dnec-landing__bento-segment--mobility { --segment-rgb: 80, 205, 137; }
.dnec-landing__bento-segment--platforms .dnec-landing__segment-node,
.dnec-landing__bento-segment--mobility .dnec-landing__segment-node { color: rgb(var(--segment-rgb)); border-color: rgba(var(--segment-rgb), .25); background: rgba(var(--segment-rgb), .08); box-shadow: 0 0 0 6px rgba(var(--segment-rgb), .03); }
.dnec-landing__bento-segment--platforms .dnec-landing__segment-copy span,
.dnec-landing__bento-segment--mobility .dnec-landing__segment-copy span { color: rgb(var(--segment-rgb)); }
.dnec-landing__bento-segment--platforms .dnec-landing__segment-rail,
.dnec-landing__bento-segment--mobility .dnec-landing__segment-rail { background: linear-gradient(90deg, rgba(var(--segment-rgb), .08), rgba(var(--segment-rgb), .52), rgba(var(--segment-rgb), .08)); }
.dnec-landing__bento-segment--platforms .dnec-landing__segment-rail::before,
.dnec-landing__bento-segment--platforms .dnec-landing__segment-rail::after,
.dnec-landing__bento-segment--platforms .dnec-landing__segment-rail i,
.dnec-landing__bento-segment--mobility .dnec-landing__segment-rail::before,
.dnec-landing__bento-segment--mobility .dnec-landing__segment-rail::after,
.dnec-landing__bento-segment--mobility .dnec-landing__segment-rail i { background: rgb(var(--segment-rgb)); box-shadow: 0 0 0 3px rgba(var(--segment-rgb), .09), 0 0 10px rgba(var(--segment-rgb), .3); }
.dnec-landing__bento-segment--platforms::after { border-left-color: rgba(114, 57, 234, .36); }
.dnec-landing__bento-segment--mobility::after { border-left-color: rgba(80, 205, 137, .4); }

.dnec-landing__bento-card--ai::before,
.dnec-landing__bento-card--maps::before,
.dnec-landing__bento-card--integration::before,
.dnec-landing__bento-card--desktop::before,
.dnec-landing__bento-card--architecture::before,
.dnec-landing__bento-card--optimization::before,
.dnec-landing__bento-card--parking::before,
.dnec-landing__bento-card--plates::before,
.dnec-landing__bento-card--transport::before,
.dnec-landing__bento-card--rtv::before {
    content: "";
    position: absolute;
    top: 0;
    left: 1.4rem;
    z-index: 3;
    width: 58px;
    height: 3px;
    border-radius: 0 0 5px 5px;
    background: linear-gradient(90deg, var(--bs-primary), transparent);
    box-shadow: 0 2px 12px rgba(var(--bs-primary-rgb), .28);
}
.dnec-landing__bento-card--desktop::before,
.dnec-landing__bento-card--architecture::before,
.dnec-landing__bento-card--optimization::before,
.dnec-landing__bento-card--integration::before { background: linear-gradient(90deg, #8a63ef, transparent); box-shadow: 0 2px 12px rgba(114,57,234,.25); }
.dnec-landing__bento-card--parking::before,
.dnec-landing__bento-card--plates::before,
.dnec-landing__bento-card--transport::before,
.dnec-landing__bento-card--rtv::before { background: linear-gradient(90deg, #50cd89, transparent); box-shadow: 0 2px 12px rgba(80,205,137,.28); }

[data-bs-theme="dark"] .dnec-landing__bento-segment {
    border-color: var(--bs-gray-300);
    background: linear-gradient(90deg, rgba(var(--bs-primary-rgb), .055), transparent 48%), var(--bs-gray-100);
    box-shadow: none;
}

.dnec-landing__bento-card--desktop,
.dnec-landing__bento-card--mobile,
.dnec-landing__bento-card--documents,
.dnec-landing__bento-card--parking,
.dnec-landing__bento-card--plates,
.dnec-landing__bento-card--sanctions {
    grid-column: span 2;
}

.dnec-landing__bento-card--optimization {
    grid-column: span 2;
    display: grid;
    grid-template-columns: minmax(0, .82fr) minmax(330px, 1.18fr);
    align-items: center;
    min-height: 390px;
    border-color: rgba(80,205,137,.18);
    background: radial-gradient(circle at 90% 10%, rgba(80,205,137,.11), transparent 18rem), radial-gradient(circle at 55% 110%, rgba(114,57,234,.06), transparent 15rem), var(--bs-body-bg);
}

.dnec-landing__bento-card--optimization > .d-flex,
.dnec-landing__bento-card--optimization > h3,
.dnec-landing__bento-card--optimization > p {
    grid-column: 1;
}

.dnec-landing__bento-card--optimization > .d-flex { grid-row: 1; }
.dnec-landing__bento-card--optimization > h3 { grid-row: 2; }
.dnec-landing__bento-card--optimization > p { grid-row: 3; }
.dnec-landing__bento-card--optimization .dnec-landing__optimization-visual { grid-column: 2; grid-row: 1 / span 3; margin-left: 2rem; }

.dnec-landing__bento-pair {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem;
}

.dnec-landing__bento-pair > .dnec-landing__bento-card {
    grid-column: auto;
    min-width: 0;
}

.dnec-landing__bento-card--desktop,
.dnec-landing__bento-card--mobile,
.dnec-landing__bento-card--documents,
.dnec-landing__bento-card--parking,
.dnec-landing__bento-card--plates,
.dnec-landing__bento-card--sanctions {
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    align-items: center;
}

.dnec-landing__bento-card--desktop {
    color: #fff;
    border-color: rgba(0, 163, 255, .17);
    background:
        radial-gradient(circle at 92% 5%, rgba(0, 163, 255, .26), transparent 15rem),
        #122238;
}

.dnec-landing__bento-card--desktop h3 {
    color: #fff;
}

.dnec-landing__bento-card--desktop p {
    color: #aab6c8;
}

.dnec-landing__bento-card--mobile {
    background:
        radial-gradient(circle at 95% 10%, rgba(114, 57, 234, .17), transparent 15rem),
        linear-gradient(145deg, var(--bs-body-bg), rgba(114, 57, 234, .035));
}

.dnec-landing__platform-copy,
.dnec-landing__documents-copy,
.dnec-landing__parking-copy,
.dnec-landing__plates-copy,
.dnec-landing__sanctions-copy {
    position: relative;
    z-index: 2;
}

.dnec-landing__tech-pill {
    padding: 6px 9px;
    border: 1px solid rgba(0, 163, 255, .18);
    border-radius: 7px;
    color: #6db9ed;
    background: rgba(0, 163, 255, .08);
}

.dnec-landing__desktop-visual,
.dnec-landing__phones,
.dnec-landing__document-stack,
.dnec-landing__parking-dashboard,
.dnec-landing__plate-camera {
    position: relative;
    min-height: 230px;
}

.dnec-landing__desktop-window {
    position: absolute;
    top: 50%;
    left: 53%;
    width: 235px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: 13px;
    background: #eef4fb;
    box-shadow: 0 24px 45px rgba(0, 0, 0, .27);
    transform: translate(-50%, -50%) rotate(3deg);
}

.dnec-landing__desktop-bar {
    display: flex;
    gap: 5px;
    height: 28px;
    padding: 10px;
    background: #1e3048;
}

.dnec-landing__desktop-bar span {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #f1416c;
}

.dnec-landing__desktop-bar span:nth-child(2) { background: #ffc700; }
.dnec-landing__desktop-bar span:nth-child(3) { background: #50cd89; }
.dnec-landing__desktop-body { display: grid; grid-template-columns: 42px 1fr; min-height: 132px; }
.dnec-landing__desktop-body aside { padding: 13px 10px; background: #dae6f1; }
.dnec-landing__desktop-body aside i { display: block; height: 7px; margin-bottom: 12px; border-radius: 4px; background: #aec3d7; }
.dnec-landing__desktop-body section { padding: 15px; }
.dnec-landing__desktop-body section > b { display: block; width: 52%; height: 8px; margin-bottom: 15px; border-radius: 5px; background: #8ea7be; }
.dnec-landing__desktop-body section > div { display: flex; gap: 7px; margin-bottom: 14px; }
.dnec-landing__desktop-body section > div i { width: 42px; height: 34px; border-radius: 6px; background: #d5e4f1; }
.dnec-landing__desktop-body section > div i:first-child { background: #bce8d2; }
.dnec-landing__desktop-body section > span { display: block; width: 92%; height: 5px; margin-top: 7px; border-radius: 3px; background: #c7d5e1; }

.dnec-landing__phone {
    position: absolute;
    top: 50%;
    width: 112px;
    height: 205px;
    padding: 20px 13px;
    border: 5px solid #24334a;
    border-radius: 24px;
    background: linear-gradient(160deg, #eef5ff, #f8f5ff);
    box-shadow: 0 23px 40px rgba(31, 46, 70, .18);
}

.dnec-landing__phone > span { position: absolute; top: 6px; left: 50%; width: 32px; height: 5px; border-radius: 4px; background: #253650; transform: translateX(-50%); }
.dnec-landing__phone > b { display: block; width: 40px; height: 40px; margin: 13px auto 20px; border-radius: 13px; background: linear-gradient(135deg, #00a3ff, #7239ea); }
.dnec-landing__phone > i { display: block; height: 17px; margin-top: 9px; border-radius: 6px; background: #d9e6f3; }
.dnec-landing__phone > i:nth-of-type(2) { width: 75%; background: #dfe0f6; }
.dnec-landing__phone--back { left: 20%; transform: translateY(-50%) rotate(-10deg) scale(.88); opacity: .72; }
.dnec-landing__phone--front { right: 12%; z-index: 2; transform: translateY(-50%) rotate(5deg); }

.dnec-landing__bento-card--architecture {
    grid-column: span 2;
    display: grid;
    grid-template-columns: minmax(0, .92fr) minmax(260px, 1.08fr);
    align-items: center;
    min-height: 430px;
    border-color: rgba(114, 57, 234, .18);
    background:
        radial-gradient(circle at 92% 12%, rgba(114,57,234,.14), transparent 17rem),
        linear-gradient(145deg, var(--bs-body-bg), rgba(114,57,234,.025));
}
.dnec-landing__architecture-copy { position: relative; z-index: 2; }
.dnec-landing__architecture-visual { position: relative; min-height: 340px; margin-left: 1.6rem; padding: 17px 0 12px 32px; }
.dnec-landing__architecture-spine { position: absolute; top: 34px; bottom: 32px; left: 9px; width: 3px; border-radius: 3px; background: linear-gradient(#00a3ff, #8a63ef 38%, #50cd89 70%, #708297); box-shadow: 0 0 12px rgba(114,57,234,.22); }
.dnec-landing__architecture-layer { position: relative; display: grid; grid-template-columns: 50px minmax(0, 1fr) auto; align-items: center; gap: 13px; min-height: 70px; margin-bottom: 12px; padding: 10px 13px; border: 1px solid var(--bs-gray-200); border-radius: 15px; background: var(--bs-body-bg); box-shadow: 0 10px 24px rgba(31,46,70,.07); }
.dnec-landing__architecture-layer::before { content: ""; position: absolute; top: 50%; left: -22px; width: 21px; border-top: 1px dashed rgba(114,57,234,.35); }
.dnec-landing__architecture-layer::after { content: ""; position: absolute; top: 50%; left: -20px; width: 7px; height: 7px; border: 2px solid var(--bs-body-bg); border-radius: 50%; background: #8a63ef; box-shadow: 0 0 8px rgba(114,57,234,.5); transform: translate(-50%,-50%); }
.dnec-landing__architecture-layer > i { display: flex; align-items: center; justify-content: center; width: 50px; height: 50px; border-radius: 14px; color: #00a3ff; background: rgba(0,163,255,.09); }
.dnec-landing__architecture-layer span,
.dnec-landing__architecture-layer strong,
.dnec-landing__architecture-layer small { display: block; min-width: 0; }
.dnec-landing__architecture-layer strong { color: var(--bs-gray-800); }
.dnec-landing__architecture-layer small { margin-top: 3px; color: var(--bs-gray-500); }
.dnec-landing__architecture-layer b { color: var(--bs-gray-400); }
.dnec-landing__architecture-layer--services { margin-left: 12px; }
.dnec-landing__architecture-layer--services > i { color: #8a63ef; background: rgba(114,57,234,.09); }
.dnec-landing__architecture-layer--data { margin-left: 24px; }
.dnec-landing__architecture-layer--data > i { color: #38ac70; background: rgba(80,205,137,.1); }
.dnec-landing__architecture-layer--data::after { background: #50cd89; }
.dnec-landing__architecture-layer--infra { margin-left: 36px; margin-bottom: 0; }
.dnec-landing__architecture-layer--infra > i { color: #708297; background: rgba(112,130,151,.1); }
.dnec-landing__architecture-layer--infra::after { background: #708297; }

.dnec-landing__optimization-visual { display: flex; flex-direction: column; gap: 9px; min-width: 0; padding: 1rem; border: 1px solid var(--bs-gray-200); border-radius: 16px; background: linear-gradient(145deg,rgba(255,255,255,.35),transparent),var(--bs-gray-100); }
.dnec-landing__optimization-lane { padding: 11px; border: 1px solid var(--bs-gray-200); border-radius: 12px; background: var(--bs-body-bg); box-shadow: 0 8px 18px rgba(31,46,70,.045); }
.dnec-landing__optimization-lane--before { border-color: rgba(241,65,108,.16); }
.dnec-landing__optimization-lane--after { border-color: rgba(80,205,137,.24); background: linear-gradient(90deg,rgba(80,205,137,.045),transparent),var(--bs-body-bg); }
.dnec-landing__optimization-lane-head { display: grid; grid-template-columns: 42px minmax(0,1fr) auto; align-items: center; gap: 9px; }
.dnec-landing__optimization-lane-head > span { display: flex; align-items: center; justify-content: center; width: 42px; height: 42px; border-radius: 11px; color: #d64a6d; background: rgba(241,65,108,.09); }
.dnec-landing__optimization-lane--after .dnec-landing__optimization-lane-head > span { color: #319861; background: rgba(80,205,137,.11); }
.dnec-landing__optimization-lane-head b,
.dnec-landing__optimization-lane-head small { display: block; }
.dnec-landing__optimization-lane-head b { color: var(--bs-gray-800); }
.dnec-landing__optimization-lane-head small { margin-top: 2px; color: var(--bs-gray-500); }
.dnec-landing__optimization-lane-head em { padding: 4px 7px; border-radius: 999px; color: var(--bs-gray-500); background: var(--bs-gray-100); }
.dnec-landing__optimization-steps { display: flex; align-items: center; margin-top: 10px; }
.dnec-landing__optimization-steps > span { flex: 0 0 auto; padding: 5px 7px; border-radius: 6px; color: var(--bs-gray-600); background: var(--bs-gray-100); }
.dnec-landing__optimization-lane--after .dnec-landing__optimization-steps > span { color: #33895d; background: rgba(80,205,137,.09); }
.dnec-landing__optimization-steps > i { flex: 1; min-width: 6px; margin: 0 4px; border-top: 1px dashed var(--bs-gray-300); }
.dnec-landing__optimization-change { display: flex; align-items: center; justify-content: center; gap: 9px; min-height: 38px; color: #7239ea; }
.dnec-landing__optimization-change > i { display: flex; align-items: center; justify-content: center; width: 34px; height: 34px; border-radius: 10px; background: rgba(114,57,234,.09); }
.dnec-landing__optimization-change span,
.dnec-landing__optimization-change strong,
.dnec-landing__optimization-change small { display: block; }
.dnec-landing__optimization-change strong {}
.dnec-landing__optimization-change small { margin-top: 1px; color: var(--bs-gray-500); }
.dnec-landing__optimization-metrics { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
.dnec-landing__optimization-metrics > span { padding: 8px 10px; border: 1px solid rgba(80,205,137,.14); border-radius: 9px; background: rgba(80,205,137,.055); }
.dnec-landing__optimization-metrics strong,
.dnec-landing__optimization-metrics small { display: block; }
.dnec-landing__optimization-metrics strong { color: #319861; }
.dnec-landing__optimization-metrics small { margin-top: 1px; color: var(--bs-gray-500); }

.dnec-landing__bento-card--documents {
    background:
        radial-gradient(circle at 92% 0, rgba(255, 199, 0, .12), transparent 14rem),
        var(--bs-body-bg);
}

.dnec-landing__document-page {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 145px;
    height: 185px;
    padding: 25px 20px;
    border: 1px solid var(--bs-gray-200);
    border-radius: 9px;
    background: var(--bs-body-bg);
    box-shadow: 0 20px 38px rgba(31,46,70,.14);
    transform: translate(-50%,-50%) rotate(4deg);
}

.dnec-landing__document-page--back { background: #fff6d5; transform: translate(-59%,-47%) rotate(-8deg); }
.dnec-landing__document-page strong { display: block; margin-bottom: 20px; color: #9b791a; }
.dnec-landing__document-page span { display: block; height: 6px; margin-top: 10px; border-radius: 4px; background: var(--bs-gray-300); }
.dnec-landing__document-page span:nth-of-type(2) { width: 80%; }
.dnec-landing__document-page i { position: absolute; right: 16px; bottom: 16px; color: var(--bs-success); }

.dnec-landing__bento-card--parking {
    grid-column: 1 / -1;
    grid-template-columns: minmax(0, 5fr) minmax(300px, 7fr);
    gap: clamp(2rem, 6vw, 6rem);
    min-height: 500px;
    color: #fff;
    border-color: rgba(0, 163, 255, .2);
    background: #10243c;
}
.dnec-landing__bento-card--parking::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background:
        linear-gradient(90deg, rgba(5, 19, 35, .97) 0%, rgba(7, 25, 44, .93) 35%, rgba(8, 28, 48, .58) 61%, rgba(8, 24, 40, .36) 100%),
        linear-gradient(0deg, rgba(4, 17, 30, .58), transparent 54%);
    pointer-events: none;
}
.dnec-landing__parking-background {
    position: absolute;
    inset: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 48%;
    transform: scale(1.01);
}

.dnec-landing__bento-card--parking h3,
.dnec-landing__bento-card--plates h3 { color: #fff; }
.dnec-landing__bento-card--parking p,
.dnec-landing__bento-card--plates p { color: #aab8ca; }
.dnec-landing__parking-dashboard { z-index: 2; align-self: center; justify-self: end; width: min(100%, 540px); padding: 20px; overflow: hidden; border: 1px solid rgba(255,255,255,.14); border-radius: 17px; background: rgba(5,20,38,.78); box-shadow: inset 0 1px 0 rgba(255,255,255,.08),0 22px 42px rgba(0,0,0,.24); backdrop-filter: blur(14px); }
.dnec-landing__parking-chart-icon { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; width: 42px; height: 42px; border-radius: 11px; color: #68d7ff; background: rgba(0,163,255,.16); box-shadow: inset 0 0 0 1px rgba(104,215,255,.12); }
.dnec-landing__parking-metric { min-height: 91px; padding: 11px 12px; border: 1px solid rgba(255,255,255,.09); border-radius: 11px; background: rgba(255,255,255,.055); }
.dnec-landing__parking-metric span,
.dnec-landing__parking-metric strong,
.dnec-landing__parking-metric small { display: block; }
.dnec-landing__parking-metric strong { margin: 2px 0; }
.dnec-landing__parking-chart { min-height: 148px; margin: 2px -9px -7px; }
.dnec-landing__parking-legend-dot { display: inline-block; width: 8px; height: 8px; border-radius: 50%; }
.dnec-landing__parking-legend-dot--occupancy { background: #50cd89; box-shadow: 0 0 0 3px rgba(80,205,137,.12); }
.dnec-landing__parking-legend-dot--rotation { background: #00a3ff; box-shadow: 0 0 0 3px rgba(0,163,255,.12); }
.dnec-landing__parking-summary { display: flex; align-items: center; gap: 12px; }
.dnec-landing__parking-summary > span { display: flex; align-items: center; justify-content: center; width: 43px; height: 43px; border-radius: 12px; color: #fff; background: #00a3ff; box-shadow: 0 8px 20px rgba(0,163,255,.26); }
.dnec-landing__parking-summary small,.dnec-landing__parking-summary strong { display: block; }
.dnec-landing__parking-summary small { color: #8193a8; }
.dnec-landing__parking-summary strong { color: #fff; }
.dnec-landing__parking-spaces { display: grid; grid-template-columns: repeat(3,1fr); gap: 7px; margin: 17px 0; }
.dnec-landing__parking-spaces span { display: flex; align-items: center; justify-content: center; height: 43px; border: 1px dashed rgba(80,205,137,.36); border-radius: 8px; color: #6a7d93; background: rgba(80,205,137,.055); }
.dnec-landing__parking-spaces span.is-busy { color: #f7fbff; border-color: rgba(0,163,255,.34); background: rgba(0,163,255,.14); }
.dnec-landing__parking-ticket { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 10px; color: #7fbfe8; background: rgba(255,255,255,.055); }
.dnec-landing__parking-ticket > span { flex: 1; }
.dnec-landing__parking-ticket small,.dnec-landing__parking-ticket strong { display: block; }
.dnec-landing__parking-ticket small { color: #778ba2; }
.dnec-landing__parking-ticket strong { color: #dcecff; }
.dnec-landing__parking-ticket b { display: flex; align-items: center; justify-content: center; width: 27px; height: 27px; border-radius: 8px; color: #50cd89; background: rgba(80,205,137,.12); }

.dnec-landing__bento-card--plates {
    color: #fff;
    border-color: rgba(114,57,234,.22);
    background:
        radial-gradient(circle at 90% 10%, rgba(114,57,234,.36), transparent 17rem),
        #151c32;
}
.dnec-landing__plate-camera { display: block; padding: 15px; text-decoration: none; }
.dnec-landing__camera-frame { position: relative; height: 205px; overflow: hidden; border: 1px solid rgba(255,255,255,.12); border-radius: 16px; background: #121e31; box-shadow: inset 0 0 45px rgba(0,0,0,.3),0 18px 38px rgba(0,0,0,.22); }
.dnec-landing__camera-frame::after { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(180deg,rgba(4,14,27,.18),rgba(4,14,27,.02) 48%,rgba(4,14,27,.48)); }
.dnec-landing__camera-frame > img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; transition: transform .35s ease,filter .35s ease; }
.dnec-landing__plate-camera:hover .dnec-landing__camera-frame > img { transform: scale(1.025); filter: brightness(1.08); }
.dnec-landing__camera-scanline { position: absolute; top: 12%; right: 8%; left: 8%; z-index: 2; height: 1px; pointer-events: none; background: linear-gradient(90deg,transparent,#50cd89,transparent); box-shadow: 0 0 15px #50cd89; animation: dnec-plate-card-scan 3.8s ease-in-out infinite; }
@keyframes dnec-plate-card-scan { 0%,12% { top: 12%; opacity: 0; } 20% { opacity: 1; } 72% { top: 82%; opacity: 1; } 84%,100% { top: 82%; opacity: 0; } }
.dnec-landing__camera-corner { position: absolute; z-index: 3; width: 25px; height: 25px; border-color: #50cd89; }
.dnec-landing__camera-corner--tl { top: 14px; left: 14px; border-top: 2px solid; border-left: 2px solid; }
.dnec-landing__camera-corner--tr { top: 14px; right: 14px; border-top: 2px solid; border-right: 2px solid; }
.dnec-landing__camera-corner--bl { bottom: 14px; left: 14px; border-bottom: 2px solid; border-left: 2px solid; }
.dnec-landing__camera-corner--br { right: 14px; bottom: 14px; border-right: 2px solid; border-bottom: 2px solid; }
.dnec-landing__detected-plate { position: absolute; left: 50%; bottom: 34px; z-index: 4; width: 118px; padding: 7px 12px; border: 2px solid #50cd89; border-radius: 7px; color: #122238; background: #f1f6ea; text-align: center; transform: translateX(-50%); box-shadow: 0 0 0 4px rgba(80,205,137,.11),0 7px 15px rgba(0,0,0,.22); }
.dnec-landing__detected-plate small,.dnec-landing__detected-plate strong { display: block; }
.dnec-landing__detected-plate small { color: #378560; }
.dnec-landing__detected-plate strong {}
.dnec-landing__confidence { position: absolute; top: 16px; right: 16px; z-index: 4; padding: 5px 7px; border-radius: 6px; color: #65e39e; background: rgba(80,205,137,.1); }
.dnec-landing__plates-link { display: inline-flex; align-items: center; gap: 9px; padding: 11px 16px; border: 1px solid rgba(143,111,255,.45); border-radius: 10px; color: #fff; background: rgba(114,57,234,.2); text-decoration: none; transition: transform .2s ease, border-color .2s ease, background .2s ease; }
.dnec-landing__plates-link:hover { color: #fff; border-color: rgba(160,134,255,.75); background: rgba(114,57,234,.36); transform: translateY(-2px); }

.dnec-landing__registration-flow { display: flex; align-items: flex-start; justify-content: center; margin-top: 1.8rem; }
.dnec-landing__registration-flow span { display: flex; flex-direction: column; align-items: center; gap: 8px; color: var(--bs-gray-500); }
.dnec-landing__registration-flow span > i { display: flex; align-items: center; justify-content: center; width: 50px; height: 50px; border: 1px solid var(--bs-gray-300); border-radius: 14px; background: var(--bs-body-bg); }
.dnec-landing__registration-flow span.is-complete > i { color: var(--bs-primary); border-color: rgba(0,163,255,.2); background: rgba(0,163,255,.08); }
.dnec-landing__registration-flow > i { width: 38px; margin: 25px 9px 0; border-top: 1px dashed var(--bs-gray-300); }
.dnec-landing__bento-card--rtv { grid-column: span 2; }
.dnec-landing__rtv-panel { margin-top: 1.6rem; padding: 1.35rem; border: 1px solid var(--bs-gray-200); border-radius: 16px; background: var(--bs-gray-100); }
.dnec-landing__rtv-line { display: flex; align-items: flex-start; justify-content: center; }
.dnec-landing__rtv-line > span { display: flex; flex-direction: column; align-items: center; gap: 7px; min-width: 58px; color: var(--bs-gray-500); }
.dnec-landing__rtv-line > span > i { display: flex; align-items: center; justify-content: center; width: 46px; height: 46px; border: 1px solid var(--bs-gray-300); border-radius: 13px; background: var(--bs-body-bg); }
.dnec-landing__rtv-line > span > small {}
.dnec-landing__rtv-line > span.is-complete > i { color: #2f9b61; border-color: rgba(80,205,137,.28); background: rgba(80,205,137,.1); }
.dnec-landing__rtv-line > span.is-active > i { color: var(--bs-primary); border-color: rgba(0,163,255,.28); background: rgba(0,163,255,.1); box-shadow: 0 0 0 4px rgba(0,163,255,.05); }
.dnec-landing__rtv-line > i { flex: 1; max-width: 30px; margin-top: 23px; border-top: 1px dashed var(--bs-gray-300); }
.dnec-landing__rtv-result { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 16px; padding-top: 13px; border-top: 1px solid var(--bs-gray-200); }
.dnec-landing__rtv-result > span { display: inline-flex; align-items: center; gap: 6px; color: #2f9b61; }
.dnec-landing__rtv-result strong {}
.dnec-landing__rtv-result small { color: var(--bs-gray-500); text-align: right; }

.dnec-landing__bento-card--transport {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    align-items: center;
    gap: 2rem;
    min-height: 500px;
    border-color: rgba(80,205,137,.2);
    background: #eef3f7;
}
.dnec-landing__bento-card--transport::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(90deg, rgba(255,255,255,.98) 0%, rgba(255,255,255,.95) 32%, rgba(255,255,255,.70) 49%, rgba(255,255,255,.13) 72%, rgba(255,255,255,.04) 100%);
    pointer-events: none;
}
.dnec-landing__transport-background {
    position: absolute;
    inset: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 50%;
}
.dnec-landing__transport-copy { position: relative; z-index: 2; grid-column: span 5; max-width: 620px; }
.dnec-landing__transport-visual { position: relative; z-index: 2; grid-column: span 7; display: grid; align-content: center; justify-self: end; gap: 9px; width: 360px; min-height: 300px; padding: 16px 28px 16px 10px; border: 0; border-radius: 18px; background: transparent; box-shadow: none; }
.dnec-landing__transport-route { position: absolute; top: 34px; right: 8px; bottom: 34px; width: 2px; border-radius: 4px; background: linear-gradient(#00a3ff, #50cd89 58%, #ffc700); box-shadow: 0 0 10px rgba(80,205,137,.26); }
.dnec-landing__transport-stop { position: relative; z-index: 2; display: flex; align-items: center; gap: 8px; min-width: 0; padding: 8px 10px; border: 1px solid var(--bs-gray-200); border-radius: 10px; background: color-mix(in srgb,var(--bs-body-bg) 94%,transparent); box-shadow: 0 7px 18px rgba(31,46,70,.09); }
.dnec-landing__transport-stop > i { display: flex; align-items: center; justify-content: center; width: 27px; height: 27px; flex: 0 0 27px; border-radius: 7px; color: var(--bs-primary); background: var(--bs-light-primary); }
.dnec-landing__transport-stop span,
.dnec-landing__transport-stop strong,
.dnec-landing__transport-stop small { display: block; }
.dnec-landing__transport-stop strong { color: var(--bs-gray-800); }
.dnec-landing__transport-stop small { margin-top: 2px; color: var(--bs-gray-500); }
.dnec-landing__transport-stop--terminal { justify-self: end; }
.dnec-landing__transport-stop--control { justify-self: end; }
.dnec-landing__transport-stop--control > i { color: #38ac70; background: rgba(80,205,137,.1); }
.dnec-landing__transport-unit { position: relative; z-index: 3; display: flex; align-items: center; justify-self: end; gap: 8px; min-width: 0; padding: 9px 11px; border: 1px solid rgba(0,163,255,.22); border-radius: 11px; color: #dcecff; background: linear-gradient(125deg,#183b5d,#102840); box-shadow: 0 10px 24px rgba(17,48,76,.2),0 0 0 4px rgba(0,163,255,.04); }
.dnec-landing__transport-unit > i { color: #75c8ff; }
.dnec-landing__transport-unit span,
.dnec-landing__transport-unit small,
.dnec-landing__transport-unit strong { display: block; }
.dnec-landing__transport-unit small { color: #7390aa; }
.dnec-landing__transport-unit strong { margin-top: 2px; }
.dnec-landing__transport-status { position: relative; z-index: 3; display: flex; align-items: center; justify-self: end; gap: 7px; padding: 7px 9px; border: 1px solid rgba(80,205,137,.2); border-radius: 10px; color: #2f9b61; background: color-mix(in srgb,var(--bs-body-bg) 88%,#50cd89 12%); box-shadow: 0 7px 17px rgba(31,46,70,.07); }
.dnec-landing__transport-status > i {}
.dnec-landing__transport-status span,
.dnec-landing__transport-status strong,
.dnec-landing__transport-status small { display: block; }
.dnec-landing__transport-status strong {}
.dnec-landing__transport-status small { margin-top: 1px; color: var(--bs-gray-500); }
.dnec-landing__transport-stop::after,
.dnec-landing__transport-unit::after,
.dnec-landing__transport-status::after { content: ""; position: absolute; top: 50%; right: -24px; width: 8px; height: 8px; border: 2px solid var(--bs-body-bg); border-radius: 50%; background: #00a3ff; box-shadow: 0 0 0 3px rgba(0,163,255,.12); transform: translateY(-50%); }
.dnec-landing__transport-stop--control::after { background: #50cd89; box-shadow: 0 0 0 3px rgba(80,205,137,.12); }
.dnec-landing__transport-status::after { background: #ffc700; box-shadow: 0 0 0 3px rgba(255,199,0,.12); }

[data-bs-theme="dark"] .dnec-landing__bento-card--transport::after {
    background: linear-gradient(90deg, rgba(13,22,38,.98) 0%, rgba(13,22,38,.94) 34%, rgba(13,22,38,.72) 53%, rgba(13,22,38,.22) 78%, rgba(13,22,38,.12) 100%);
}
[data-bs-theme="dark"] .dnec-landing__transport-background { opacity: .74; }

.dnec-landing__bento-card--sanctions {
    grid-template-columns: 1fr;
    background:
        radial-gradient(circle at 92% 20%, rgba(241, 65, 108, .08), transparent 16rem),
        var(--bs-body-bg);
}

.dnec-landing__bento-icon--red { color: #f1416c; background: rgba(241,65,108,.10); }
.dnec-landing__case-flow { display: flex; align-items: flex-start; justify-content: center; min-height: 190px; margin-top: 1.6rem; padding: 1.35rem 1rem 1.1rem; border: 1px solid var(--bs-gray-200); border-radius: 16px; background: linear-gradient(135deg, rgba(241,65,108,.035), rgba(114,57,234,.025)), var(--bs-gray-100); }
.dnec-landing__case-flow > span { position: relative; display: flex; flex: 0 0 auto; flex-direction: column; align-items: center; gap: 5px; min-width: 78px; color: var(--bs-gray-500); text-align: center; }
.dnec-landing__case-flow > span > em { display: inline-flex; align-items: center; justify-content: center; min-width: 25px; height: 18px; padding: 0 6px; border-radius: 999px; color: var(--bs-gray-500); background: var(--bs-gray-200); }
.dnec-landing__case-flow > span > i { display: flex; align-items: center; justify-content: center; width: 52px; height: 52px; margin-top: 2px; border: 1px solid var(--bs-gray-300); border-radius: 15px; color: var(--bs-gray-500); background: var(--bs-body-bg); box-shadow: 0 7px 18px rgba(31,46,70,.06); }
.dnec-landing__case-flow > span > b { color: var(--bs-gray-700); }
.dnec-landing__case-flow > span > small { color: var(--bs-gray-400); }
.dnec-landing__case-flow > span.is-done > em { color: #258653; background: rgba(80,205,137,.12); }
.dnec-landing__case-flow > span.is-done > i { color: var(--bs-success); border-color: rgba(80,205,137,.28); background: rgba(80,205,137,.1); }
.dnec-landing__case-flow > span.is-done > small { color: #379666; }
.dnec-landing__case-flow > span.is-active > em { color: #c72f58; background: rgba(241,65,108,.12); }
.dnec-landing__case-flow > span.is-active > i { color: #f1416c; border-color: rgba(241,65,108,.32); background: rgba(241,65,108,.1); box-shadow: 0 0 0 6px rgba(241,65,108,.055), 0 8px 20px rgba(241,65,108,.12); }
.dnec-landing__case-flow > span.is-active > b,
.dnec-landing__case-flow > span.is-active > small { color: #d6335f; }
.dnec-landing__case-flow > i { flex: 1 1 28px; max-width: 42px; margin-top: 47px; border-top: 2px dashed var(--bs-gray-300); }
.dnec-landing__case-flow > span.is-done + i { border-color: rgba(80,205,137,.45); }

.dnec-landing__stack { display: grid; grid-template-columns: minmax(240px, .68fr) minmax(0, 1.7fr); align-items: start; gap: 2rem; padding: 2rem; border: 1px solid var(--bs-gray-200); border-radius: 1.4rem; background: radial-gradient(circle at 4% 15%, rgba(0,163,255,.09), transparent 15rem), radial-gradient(circle at 95% 90%, rgba(114,57,234,.07), transparent 18rem), var(--bs-body-bg); box-shadow: 0 16px 40px rgba(31,46,70,.065); }
.dnec-landing__stack-copy { display: flex; align-items: flex-start; gap: 15px; min-width: 0; }
.dnec-landing__stack-mark { display: flex; flex: 0 0 auto; align-items: center; justify-content: center; width: 56px; height: 56px; border: 1px solid rgba(var(--bs-primary-rgb),.16); border-radius: 16px; color: var(--bs-primary); background: rgba(var(--bs-primary-rgb),.09); box-shadow: 0 8px 18px rgba(var(--bs-primary-rgb),.09); }
.dnec-landing__stack-copy strong,
.dnec-landing__stack-copy small,
.dnec-landing__stack-kicker { display: block; }
.dnec-landing__stack-kicker { margin-bottom: 4px; color: var(--bs-primary); }
.dnec-landing__stack-copy strong { color: var(--bs-gray-900); }
.dnec-landing__stack-copy small { margin-top: 5px; color: var(--bs-gray-500); }
.dnec-landing__stack-items { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 9px; }
.dnec-landing__stack-items span { --tech-rgb: var(--bs-primary-rgb); display: flex; align-items: center; gap: 9px; min-width: 0; padding: 9px 10px; border: 1px solid rgba(var(--tech-rgb),.13); border-radius: 11px; color: var(--bs-gray-700); background: rgba(var(--tech-rgb),.045); transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.dnec-landing__stack-items span:nth-child(4n+2) { --tech-rgb: 114,57,234; }
.dnec-landing__stack-items span:nth-child(4n+3) { --tech-rgb: 80,205,137; }
.dnec-landing__stack-items span:nth-child(4n) { --tech-rgb: 255,168,0; }
.dnec-landing__stack-items span:hover { transform: translateY(-2px); border-color: rgba(var(--tech-rgb),.28); box-shadow: 0 8px 18px rgba(31,46,70,.07); }
.dnec-landing__stack-items span > i { display: flex; flex: 0 0 auto; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 12px; color: rgb(var(--tech-rgb)); background: rgba(var(--tech-rgb),.1); }
.dnec-landing__stack-items span > b { overflow: hidden; text-overflow: ellipsis; }

[data-bs-theme="dark"] .dnec-landing__bento-card,
[data-bs-theme="dark"] .dnec-landing__stack { border-color: var(--bs-gray-300); box-shadow: none; }
[data-bs-theme="dark"] .dnec-landing__map-visual { opacity: 1; }

.dnec-landing__process {
    display: grid;
    grid-template-columns: minmax(230px, .75fr) minmax(0, 1.65fr);
    align-items: center;
    gap: 3rem;
    padding: 2.25rem 2.5rem;
    border: 1px solid var(--bs-gray-200);
    border-radius: 1.25rem;
    background:
        radial-gradient(circle at 100% 0, rgba(0, 163, 255, .09), transparent 19rem),
        var(--bs-body-bg);
    box-shadow: 0 16px 42px rgba(31, 46, 70, .07);
}

.dnec-landing__process-kicker {
    display: block;
    color: var(--bs-primary);
}

.dnec-landing__process-intro h3 {
    margin: .55rem 0 .45rem;
    color: var(--bs-gray-900);
}

.dnec-landing__process-intro p {
    margin: 0;
    color: var(--bs-gray-500);
}

.dnec-landing__process-steps {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-width: 0;
}

.dnec-landing__process-step {
    display: flex;
    flex: 1 1 0;
    align-items: center;
    gap: 1rem;
    min-width: 112px;
}

.dnec-landing__process-step > div { min-width: 0; }

.dnec-landing__process-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 64px;
    height: 64px;
    flex: 0 0 64px;
    border-radius: 16px;
    color: var(--bs-primary);
    background: rgba(var(--bs-primary-rgb), .075);
}

.dnec-landing__process-step strong,
.dnec-landing__process-step small {
    display: block;
}

.dnec-landing__process-step strong {
    color: var(--bs-gray-900);
}

.dnec-landing__process-step small {
    margin-top: .25rem;
    color: var(--bs-gray-500);
}

.dnec-landing__process-line {
    flex: 0 0 24px;
    width: 24px;
    height: 1px;
    margin: 0 .5rem;
    background: linear-gradient(to right, var(--bs-gray-300), rgba(var(--bs-primary-rgb), .45));
}

.dnec-landing__billing { background: var(--bs-body-bg); }
.dnec-landing__billing-shell {
    position: relative;
    overflow: hidden;
    padding: 4rem;
    border: 1px solid rgba(100, 190, 255, .17);
    border-radius: 1.7rem;
    background:
        radial-gradient(circle at 87% 18%, rgba(0,163,255,.25), transparent 22rem),
        radial-gradient(circle at 8% 105%, rgba(114,57,234,.23), transparent 25rem),
        #0e2035;
    box-shadow: 0 28px 75px rgba(15,31,51,.18);
}
.dnec-landing__billing-shell::before {
    content: "";
    position: absolute;
    inset: 0;
    opacity: .13;
    background-image: linear-gradient(rgba(138,204,255,.2) 1px, transparent 1px), linear-gradient(90deg, rgba(138,204,255,.2) 1px, transparent 1px);
    background-size: 34px 34px;
    mask-image: linear-gradient(90deg, transparent, #000 52%, #000);
}
.dnec-landing__billing-kicker { display: inline-flex; align-items: center; gap: 8px; padding: 8px 12px; border: 1px solid rgba(0,163,255,.28); border-radius: 999px; color: #91d4ff; background: rgba(0,163,255,.09); }
.dnec-landing__billing-heading { display: flex; align-items: center; gap: 1rem; margin-bottom: 2rem; }
.dnec-landing__billing-heading-icon { display: flex; flex: 0 0 auto; align-items: center; justify-content: center; width: 58px; height: 58px; border: 1px solid rgba(var(--bs-primary-rgb),.2); border-radius: 17px; color: var(--bs-primary); background: rgba(var(--bs-primary-rgb),.08); box-shadow: 0 10px 24px rgba(var(--bs-primary-rgb),.09); }
.dnec-landing__billing-unlimited { display: inline-flex; align-items: center; gap: 13px; padding: 11px 15px; border: 1px solid rgba(80,205,137,.24); border-radius: 14px; background: rgba(80,205,137,.08); box-shadow: inset 0 1px 0 rgba(255,255,255,.04); }
.dnec-landing__billing-unlimited > span { display: flex; align-items: center; justify-content: center; width: 42px; height: 42px; border-radius: 12px; color: #68e3a3; background: rgba(80,205,137,.12); }
.dnec-landing__billing-unlimited strong,
.dnec-landing__billing-unlimited small { display: block; }
.dnec-landing__billing-unlimited strong { color: #e2f6eb; }
.dnec-landing__billing-unlimited small { margin-top: 2px; color: #799889; }
.dnec-landing__billing-features { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .7rem 1rem; }
.dnec-landing__billing-features span { display: flex; align-items: center; gap: 8px; color: #aab9ca; }
.dnec-landing__billing-features i { color: #50cd89; }

.dnec-landing__invoice-visual { position: relative; min-height: 450px; padding: 24px 16px 94px 42px; }
.dnec-landing__invoice-card { position: relative; z-index: 2; padding: 1.45rem; border: 1px solid rgba(255,255,255,.7); border-radius: 18px; color: #24344b; background: linear-gradient(145deg,#fff,#f4f8fc); box-shadow: 0 28px 60px rgba(0,0,0,.27); transform: rotate(1.5deg); }
.dnec-landing__invoice-card::before { content: ""; position: absolute; inset: 8px -9px -10px 10px; z-index: -1; border: 1px solid rgba(255,255,255,.13); border-radius: 18px; background: rgba(20,53,82,.52); transform: rotate(-3deg); }
.dnec-landing__invoice-head { display: grid; grid-template-columns: 42px minmax(0,1fr) auto; align-items: center; gap: 11px; padding-bottom: 15px; border-bottom: 1px solid #dce5ed; }
.dnec-landing__invoice-head > span { display: flex; align-items: center; justify-content: center; width: 42px; height: 42px; border-radius: 12px; color: #008def; background: #e5f4ff; }
.dnec-landing__invoice-head small,
.dnec-landing__invoice-head strong { display: block; }
.dnec-landing__invoice-head small { color: #8b9bac; }
.dnec-landing__invoice-head strong { margin-top: 3px; color: #24344b; }
.dnec-landing__invoice-head b { padding: 6px 8px; border-radius: 8px; color: #2d9960; background: #e9f8f0; }
.dnec-landing__invoice-client { display: flex; justify-content: space-between; gap: 1rem; margin: 17px 0; }
.dnec-landing__invoice-client span:last-child { text-align: right; }
.dnec-landing__invoice-client small,
.dnec-landing__invoice-client strong { display: block; }
.dnec-landing__invoice-client small { color: #9aa8b5; }
.dnec-landing__invoice-client strong { margin-top: 3px; color: #415269; }
.dnec-landing__invoice-lines { display: grid; gap: 9px; padding: 15px; border-radius: 11px; background: #edf3f8; }
.dnec-landing__invoice-lines i { display: block; height: 7px; border-radius: 6px; background: linear-gradient(90deg,#c9d6e2 68%,#a9bdd0 68%); }
.dnec-landing__invoice-lines i:nth-child(2) { width: 88%; }
.dnec-landing__invoice-lines i:nth-child(3) { width: 76%; }
.dnec-landing__invoice-lines i:nth-child(4) { width: 93%; }
.dnec-landing__invoice-total { display: flex; align-items: center; justify-content: flex-end; gap: 16px; margin-top: 16px; }
.dnec-landing__invoice-total span { color: #8392a2; }
.dnec-landing__invoice-total strong { color: #172a43; }
.dnec-landing__invoice-flow { position: absolute; right: 0; bottom: 3px; left: 22px; z-index: 3; display: flex; align-items: flex-start; justify-content: center; }
.dnec-landing__invoice-flow > span { display: flex; flex-direction: column; align-items: center; gap: 8px; min-width: 76px; color: #7d91a6; }
.dnec-landing__invoice-flow > span > i { display: flex; align-items: center; justify-content: center; width: 50px; height: 50px; border: 1px solid rgba(80,205,137,.25); border-radius: 14px; color: #55d493; background: #173b42; box-shadow: 0 0 0 6px rgba(80,205,137,.04); }
.dnec-landing__invoice-flow small { color: #8398ad; }
.dnec-landing__invoice-flow > i { flex: 1; max-width: 46px; margin-top: 25px; border-top: 1px dashed rgba(80,205,137,.35); }
.dnec-landing__invoice-flow .is-authorized > i { color: #fff; background: #2ba867; box-shadow: 0 0 0 5px rgba(80,205,137,.08),0 0 15px rgba(80,205,137,.3); }
.dnec-landing__invoice-infinity { position: absolute; top: 4px; right: 0; z-index: 4; display: flex; align-items: center; gap: 7px; padding: 7px 10px; border: 1px solid rgba(80,205,137,.3); border-radius: 999px; color: #78e2a9; background: rgba(13,43,53,.92); box-shadow: 0 10px 25px rgba(0,0,0,.2); }
.dnec-landing__invoice-infinity i {}
.dnec-landing__invoice-infinity strong {}

.dnec-landing__feature:hover {
    transform: translateY(-6px);
    border-color: rgba(var(--bs-primary-rgb), .22);
    box-shadow: 0 20px 45px rgba(31, 46, 70, .10);
}

.dnec-landing__feature-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 64px;
    height: 64px;
    border-radius: 18px;
}

.dnec-landing__cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 2.4rem 3rem;
    border-radius: 1.25rem;
    background:
        radial-gradient(circle at 85% 10%, rgba(0, 163, 255, .28), transparent 18rem),
        #13263c;
    box-shadow: 0 20px 50px rgba(15, 31, 51, .18);
}

.dnec-landing__contact {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 9% 15%, rgba(114, 57, 234, .2), transparent 25rem),
        radial-gradient(circle at 88% 82%, rgba(0, 163, 255, .22), transparent 28rem),
        #0f1f33;
}

.dnec-landing__contact::before {
    content: "";
    position: absolute;
    inset: 0;
    opacity: .12;
    background-image: radial-gradient(rgba(255, 255, 255, .55) 1px, transparent 1px);
    background-size: 24px 24px;
    mask-image: linear-gradient(to right, #000, transparent 55%);
}

.dnec-landing__contact-kicker {
    display: inline-flex;
    padding: 8px 13px;
    border: 1px solid rgba(0, 163, 255, .34);
    border-radius: 999px;
    color: #a9ddff;
    background: rgba(0, 163, 255, .1);
}

.dnec-landing__contact-check { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; width: 27px; height: 27px; border-radius: 50%; color: #65dda0; background: rgba(80,205,137,.12); }
.dnec-landing__whatsapp-btn { color: #fff; border-color: #25d366; background: #1fb858; box-shadow: 0 12px 25px rgba(37,211,102,.18); }
.dnec-landing__whatsapp-btn:hover { color: #fff; border-color: #1ea950; background: #1ea950; }

.dnec-landing__trial {
    position: relative;
    display: flex;
    min-height: 390px;
    align-items: center;
    overflow: hidden;
    isolation: isolate;
    background: radial-gradient(circle at 50% 70%, rgba(102, 82, 255, .14), transparent 19rem), #0b0e15;
}

.dnec-landing__trial::after {
    content: "";
    position: absolute;
    z-index: 1;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(90deg, #0b0e15 0, transparent 18%, transparent 82%, #0b0e15 100%);
}

.dnec-landing__trial-grid,
.dnec-landing__trial-grid::before {
    position: absolute;
    inset: 0;
    pointer-events: none;
    transform: none;
}

.dnec-landing__trial-grid {
    z-index: 0;
    opacity: 1;
    background: radial-gradient(ellipse 58% 78% at 50% 62%, rgba(52, 66, 107, .16), transparent 76%);
}

.dnec-landing__trial-grid::before {
    content: "";
    opacity: 0;
    background: radial-gradient(circle 175px at 50% 69%, rgba(102, 82, 255, .16), transparent 74%);
    filter: drop-shadow(0 0 10px rgba(112, 94, 255, .38));
    transition: opacity .35s ease, filter .35s ease;
}

.dnec-landing__trial-diamonds {
    position: absolute;
    z-index: 1;
    inset: 0;
    overflow: hidden;
}

.dnec-landing__trial-diamonds > svg {
    display: block;
    width: 100%;
    height: 100%;
}

.dnec-landing__trial-diamond {
    fill: rgba(85, 97, 124, .018);
    stroke: rgba(126, 139, 166, .14);
    stroke-width: 1;
    vector-effect: non-scaling-stroke;
    transition: fill .18s ease, stroke .18s ease, filter .22s ease;
}

.dnec-landing__trial-diamond:hover,
.dnec-landing__trial-diamond.is-lit {
    fill: color-mix(in srgb, var(--diamond-color, #7657ff) 8%, transparent);
    stroke: color-mix(in srgb, var(--diamond-color, #7657ff) 46%, transparent);
    stroke-width: 1.1;
    filter: drop-shadow(0 0 2px color-mix(in srgb, var(--diamond-color, #7657ff) 38%, transparent));
}

.dnec-landing__trial-confetti {
    position: fixed;
    z-index: 2147483646;
    inset: 0;
    width: 100vw;
    height: 100vh;
    pointer-events: none;
}

.dnec-landing__trial > .container { pointer-events: none; }
.dnec-landing__trial-button { pointer-events: auto; }

.dnec-landing__trial.is-active .dnec-landing__trial-grid::before {
    opacity: 1;
    filter: drop-shadow(0 0 11px rgba(77, 184, 255, .78));
}

.dnec-landing__trial-kicker {
    margin: 0 0 1.25rem;
    color: rgba(255, 255, 255, .64);
}

.dnec-landing__trial-title {
    max-width: 820px;
    margin: 0 auto 2.25rem;
    color: #fff;
text-wrap: balance;
    text-shadow: 0 8px 35px rgba(0, 0, 0, .34);
}

.dnec-landing__trial-button {
    position: relative;
    z-index: 3;
    min-height: 48px;
    gap: .7rem;
    padding: .75rem 1.45rem;
    border-color: rgba(255, 255, 255, .24);
    border-radius: .7rem;
    color: #fff;
    background: rgba(14, 18, 28, .78);
box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), 0 12px 35px rgba(0, 0, 0, .24);
    backdrop-filter: blur(8px);
    transition: border-color .25s ease, background .25s ease, box-shadow .25s ease, transform .25s ease;
}

.dnec-landing__trial-button:hover,
.dnec-landing__trial-button:focus-visible {
    color: #fff;
    border-color: rgba(129, 113, 255, .72);
    outline: 0;
    background: rgba(35, 33, 72, .88);
    box-shadow: 0 0 0 4px rgba(113, 91, 255, .1), 0 15px 40px rgba(66, 67, 190, .28);
    transform: translateY(-2px);
}

.dnec-landing__trial-button i { transition: transform .25s ease; }
.dnec-landing__trial-button:hover i { transform: translateX(4px); }

.dnec-landing__contact-card {
    padding: 2.6rem;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 1.35rem;
    background: rgba(255, 255, 255, .97);
    box-shadow: 0 28px 70px rgba(0, 0, 0, .25);
    backdrop-filter: blur(16px);
}

#publicContactForm,
#contactFormMessage {
    min-width: 0;
    max-width: 100%;
}

#contactFormMessage {
    overflow: hidden;
}

#contactFormMessage > i {
    flex: 0 0 auto;
}

#contactFormMessage > div {
    flex: 1 1 auto;
    min-width: 0;
    max-width: 100%;
    overflow-wrap: anywhere;
    word-break: break-word;
}

[data-bs-theme="dark"] .dnec-landing__contact-card { background: rgba(24, 32, 43, .96); }

[data-bs-theme="dark"] .dnec-landing__feature {
    border-color: var(--bs-gray-300);
    background: var(--bs-gray-100);
    box-shadow: none;
}

[data-bs-theme="dark"] .dnec-landing__work-card {
    border-color: var(--bs-gray-300);
    background: var(--bs-gray-100);
    box-shadow: none;
}

[data-bs-theme="dark"] .dnec-landing__process {
    border-color: var(--bs-gray-300);
    box-shadow: none;
}

@media (max-width: 991.98px) {
    .dnec-landing__hero-row { min-height: auto; }

    .dnec-landing__visual {
        max-width: 620px;
        min-height: 410px;
    }

    .dnec-landing__process {
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    .dnec-landing__process-steps {
        flex-wrap: wrap;
        gap: 1.5rem;
    }

    .dnec-landing__process-line {
        display: none;
    }

    .dnec-landing__bento {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        padding-left: 0;
    }

    .dnec-landing__bento::before { left: 15px; }
    .dnec-landing__bento::after { left: 11px; }

    .dnec-landing__bento-group {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .dnec-landing__bento-card--maps {
        grid-template-columns: repeat(12, minmax(0, 1fr));
        gap: 1.5rem;
        min-height: 470px;
    }

    .dnec-landing__maps-copy { grid-column: span 5; }
    .dnec-landing__map-visual { grid-column: span 7; min-height: 405px; }

    .dnec-landing__capability-panel {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .dnec-landing__bento-route::after { left: -31px; width: 31px; }
    .dnec-landing__bento-route i:nth-child(1) { left: 25%; }
    .dnec-landing__bento-route i:nth-child(2) { left: 75%; }
    .dnec-landing__bento-route i:nth-child(3),
    .dnec-landing__bento-route i:nth-child(4) { display: none; }

    .dnec-landing__stack {
        grid-template-columns: 1fr;
    }

    .dnec-landing__stack-items {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .dnec-landing__bento-segment {
        grid-template-columns: minmax(0, 1fr);
        align-items: center;
        gap: .7rem 1rem;
    }

    .dnec-landing__segment-node { left: -56px; }
    .dnec-landing__segment-copy { grid-column: 1; }
    .dnec-landing__segment-rail { grid-column: 1; width: 100%; }
    .dnec-landing__bento-segment p {
        grid-column: 1;
        max-width: none;
        text-align: left;
    }

    .dnec-landing__billing-shell { padding: 2.5rem; }
    .dnec-landing__invoice-visual { margin-top: 1rem; }

}

@media (max-width: 767.98px) {
    #publicContactForm .form-control,
    #publicContactForm .form-select {}

    .dnec-landing__trial { min-height: 350px; }
    .dnec-landing__trial-grid::before { background: radial-gradient(circle 135px at 50% 66%, rgba(102, 82, 255, .16), transparent 76%); }
    .dnec-landing__trial-title { max-width: 520px; margin-bottom: 1.8rem; }

    .dnec-landing .row.g-10 {
        --bs-gutter-x: 1.5rem;
    }

    .dnec-landing__bento-segment {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .dnec-landing__segment-node {
        grid-column: 1;
        grid-row: 1;
    }

    .dnec-landing__segment-copy {
        grid-column: 2;
        grid-row: 1;
    }

    .dnec-landing__segment-rail,
    .dnec-landing__bento-segment p {
        grid-column: 1 / -1;
    }

    .dnec-landing__header {
        height: 78px;
    }

    .dnec-landing__visual {
        min-height: 390px;
    }

    .dnec-landing__bento-card--optimization { grid-template-columns: 1fr; }
    .dnec-landing__bento-card--optimization > .d-flex,
    .dnec-landing__bento-card--optimization > h3,
    .dnec-landing__bento-card--optimization > p,
    .dnec-landing__bento-card--optimization .dnec-landing__optimization-visual {
        grid-column: 1;
        grid-row: auto;
    }
    .dnec-landing__bento-card--optimization .dnec-landing__optimization-visual { margin: 1.5rem 0 0; }

    .dnec-landing__bento-card--maps {
        grid-template-columns: 1fr;
        min-height: 0;
    }

    .dnec-landing__maps-copy,
    .dnec-landing__map-visual { grid-column: 1; }

    .dnec-landing__map-visual {
        min-height: 380px;
        margin-top: .5rem;
    }

    .dnec-landing__bento-card--transport {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }

    .dnec-landing__bento-card--transport::after {
        background: linear-gradient(180deg, rgba(255,255,255,.99) 0%, rgba(255,255,255,.94) 38%, rgba(255,255,255,.62) 63%, rgba(255,255,255,.12) 100%);
    }

    [data-bs-theme="dark"] .dnec-landing__bento-card--transport::after {
        background: linear-gradient(180deg, rgba(13,22,38,.99) 0%, rgba(13,22,38,.95) 38%, rgba(13,22,38,.68) 64%, rgba(13,22,38,.18) 100%);
    }

    .dnec-landing__transport-copy,
    .dnec-landing__transport-visual {
        grid-column: 1;
    }

    .dnec-landing__transport-visual {
        width: auto;
        justify-self: stretch;
        min-height: 0;
        margin-top: .5rem;
    }

    .dnec-landing__transport-background { object-position: 66% center; }

    .dnec-landing__capability-tabs {
        grid-template-columns: repeat(2, minmax(235px, 1fr));
        overflow-x: auto;
        margin-right: -1rem;
        margin-left: -1rem;
        padding: .65rem 1rem .9rem;
        border-right: 0;
        border-left: 0;
        border-radius: 0;
        scroll-snap-type: x proximity;
    }

    .dnec-landing__capability-tab { min-height: 102px; scroll-snap-align: start; }
    .dnec-landing__capability-tab > span { width: 54px; height: 54px; border-radius: 15px; }

    .dnec-landing__agent-network { transform: scale(.86); }

    .dnec-landing__contact-card { padding: 1.75rem; }

    .dnec-landing__cta {
        display: block;
        padding: 2rem;
        text-align: center;
    }

    .dnec-landing__work-grid {
        grid-template-columns: 1fr;
    }

    .dnec-landing__work-card--wide {
        grid-column: auto;
    }

    .dnec-landing__bento-pair {
        grid-template-columns: 1fr;
    }

    .dnec-landing__process {
        padding: 1.75rem;
    }

    .dnec-landing__process-steps {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    .dnec-landing__bento-card--ai,
    .dnec-landing__bento-card--payments,
    .dnec-landing__bento-card--maps,
    .dnec-landing__bento-card--desktop,
    .dnec-landing__bento-card--mobile,
    .dnec-landing__bento-card--documents,
    .dnec-landing__bento-card--parking,
    .dnec-landing__bento-card--plates,
    .dnec-landing__bento-card--transport,
    .dnec-landing__bento-card--sanctions {
        grid-column: span 2;
    }

    .dnec-landing__billing-shell { padding: 2rem; }
    .dnec-landing__invoice-visual {
        min-height: 410px;
        padding: 20px 0 72px;
    }

}

@media (max-width: 479.98px) {
    #contactFormMessage.alert {
        gap: .65rem !important;
        padding: 1rem;
    }

    .dnec-landing__hero-title {}
    .dnec-landing__hero-description {}
    .dnec-landing__hero-actions .btn { width: 100%; }
    .dnec-landing__hero-signals { gap: .55rem .8rem; }

    .dnec-landing__bento-segment { padding: .9rem; }
    .dnec-landing__segment-node { width: 44px; height: 44px; border-radius: 13px; }
    .dnec-landing__segment-copy strong {}
    .dnec-landing__bento-segment p {}
    .dnec-landing__bento { padding-left: 0; }
    .dnec-landing__bento::before { left: 12px; }
    .dnec-landing__bento::after { left: 8px; }
    .dnec-landing__segment-node { left: -48px; }
    .dnec-landing__bento-route::after { left: -26px; width: 26px; }
    .dnec-landing__bento-route i:nth-child(1) { left: 50%; }
    .dnec-landing__bento-route i:nth-child(2) { display: none; }

    .dnec-landing__visual {
        min-height: 355px;
    }

    .dnec-landing__agent-network { inset: 10px -48px; transform: scale(.78); }
    .dnec-landing__agent-orbit--two { width: 390px; }
    .dnec-landing__agent-node { min-width: 158px; padding: 10px; }
    .dnec-landing__agent-node--code { top: 0; left: 7%; }
    .dnec-landing__agent-node--data { top: 3%; right: 5%; }
    .dnec-landing__agent-node--ops { bottom: 4%; left: 6%; }
    .dnec-landing__agent-node--whatsapp { right: 5%; bottom: 1%; }

    .dnec-landing__ai-capabilities-title { align-items: flex-start; flex-direction: column; gap: .2rem; }
    .dnec-landing__ai-capability-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .dnec-landing__ai-capability { align-items: flex-start; padding: .6rem; }
    .dnec-landing__ai-capability strong { overflow: visible; text-overflow: clip; white-space: normal; }

    .dnec-landing__process-steps {
        grid-template-columns: 1fr;
    }

    .dnec-landing__process-intro h3 {}
    .dnec-landing__process-intro p {}
    .dnec-landing__process-number { width: 56px; height: 56px; flex-basis: 56px; }
    .dnec-landing__process-step strong {}
    .dnec-landing__process-step small {}

    .dnec-landing__bento {
        grid-template-columns: 1fr;
    }

    .dnec-landing__capability-panel {
        grid-template-columns: 1fr;
    }

    .dnec-landing__bento-group {
        grid-template-columns: 1fr;
    }

    .dnec-landing__bento-card,
    .dnec-landing__bento-card--ai,
    .dnec-landing__bento-card--payments,
    .dnec-landing__bento-card--maps,
    .dnec-landing__bento-card--desktop,
    .dnec-landing__bento-card--mobile,
    .dnec-landing__bento-card--documents,
    .dnec-landing__bento-card--parking,
    .dnec-landing__bento-card--plates,
    .dnec-landing__bento-card--transport,
    .dnec-landing__bento-card--sanctions {
        grid-column: auto;
    }

    .dnec-landing__bento-card--ai,
    .dnec-landing__bento-card--payments,
    .dnec-landing__bento-card--maps,
    .dnec-landing__bento-card--desktop,
    .dnec-landing__bento-card--mobile,
    .dnec-landing__bento-card--documents,
    .dnec-landing__bento-card--parking,
    .dnec-landing__bento-card--plates,
    .dnec-landing__bento-card--transport,
    .dnec-landing__bento-card--sanctions {
        grid-template-columns: 1fr;
    }

    .dnec-landing__bento-card--optimization {
        grid-template-columns: 1fr;
    }

    .dnec-landing__bento-card--architecture { grid-template-columns: 1fr; }
    .dnec-landing__architecture-visual { min-height: 330px; margin: 1.5rem 0 0; padding-left: 24px; }
    .dnec-landing__architecture-spine { left: 7px; }
    .dnec-landing__architecture-layer { grid-template-columns: 44px minmax(0, 1fr) auto; gap: 9px; min-height: 64px; padding: 9px; }
    .dnec-landing__architecture-layer > i { width: 44px; height: 44px; }
    .dnec-landing__architecture-layer strong {}
    .dnec-landing__architecture-layer small {}
    .dnec-landing__architecture-layer--services { margin-left: 8px; }
    .dnec-landing__architecture-layer--data { margin-left: 16px; }
    .dnec-landing__architecture-layer--infra { margin-left: 24px; }

    .dnec-landing__registration-flow span { gap: 7px; }
    .dnec-landing__registration-flow span > i { width: 42px; height: 42px; border-radius: 12px; }
    .dnec-landing__registration-flow > i { width: 24px; margin: 21px 5px 0; }

    .dnec-landing__rtv-panel { padding: 1rem; }
    .dnec-landing__rtv-line > span { min-width: 48px; gap: 6px; }
    .dnec-landing__rtv-line > span > i { width: 40px; height: 40px; border-radius: 11px; }
    .dnec-landing__rtv-line > span > small {}
    .dnec-landing__rtv-line > i { max-width: 18px; margin-top: 20px; }

    .dnec-landing__bento-card--transport { grid-template-columns: 1fr; }
    .dnec-landing__transport-visual { min-height: 0; margin: 1.5rem 0 0; padding: 18px 28px 18px 12px; }
    .dnec-landing__bento-card--integration { grid-template-columns: 1fr; }
    .dnec-landing__bento-card--integration > .d-flex,
    .dnec-landing__bento-card--integration > h3,
    .dnec-landing__bento-card--integration > p,
    .dnec-landing__bento-card--integration > .dnec-landing__integration-tags,
    .dnec-landing__bento-card--integration .dnec-landing__pulse { grid-column: 1; grid-row: auto; }
    .dnec-landing__bento-card--integration .dnec-landing__pulse { overflow-x: auto; margin: 1.5rem 0 0; }

    .dnec-landing__bento-card--optimization > .d-flex,
    .dnec-landing__bento-card--optimization > h3,
    .dnec-landing__bento-card--optimization > p,
    .dnec-landing__bento-card--optimization .dnec-landing__optimization-visual {
        grid-column: 1;
        grid-row: auto;
    }

    .dnec-landing__bento-card--optimization .dnec-landing__optimization-visual {
        margin: 1.5rem 0 0;
    }

    .dnec-landing__ai-visual,
    .dnec-landing__payment-visual,
    .dnec-landing__map-visual {
        min-height: 220px;
    }

    .dnec-landing__payment-card { width: 250px; padding: 20px; border-radius: 18px; }
    .dnec-landing__payment-card > i { top: 20px; right: 20px; }
    .dnec-landing__payment-chip { width: 32px; height: 24px; }
    .dnec-landing__payment-card strong { margin-top: 22px; }
    .dnec-landing__payment-ok { top: calc(50% + 55px); left: calc(50% + 100px); width: 40px; height: 40px; }

    .dnec-landing__map-visual {
        min-height: 320px;
        margin: 1.25rem 0 0;
    }

    .dnec-landing__desktop-visual,
    .dnec-landing__phones,
    .dnec-landing__document-stack,
    .dnec-landing__parking-dashboard,
    .dnec-landing__plate-camera {
        min-height: 220px;
        margin-top: 1.25rem;
    }

    .dnec-landing__case-flow {
        overflow-x: auto;
        justify-content: flex-start;
        margin-top: 1.25rem;
        padding: 1rem .8rem 1.15rem;
        scroll-snap-type: x proximity;
    }

    .dnec-landing__case-flow > span { min-width: 70px; scroll-snap-align: start; }
    .dnec-landing__case-flow > span > i { width: 46px; height: 46px; border-radius: 13px; }
    .dnec-landing__case-flow > i { flex-basis: 22px; min-width: 22px; margin-top: 44px; }

    .dnec-landing__stack { padding: 1.35rem; }
    .dnec-landing__stack-copy { flex-direction: row; }
    .dnec-landing__stack-mark { width: 44px; height: 44px; border-radius: 13px; }
    .dnec-landing__stack-items { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .dnec-landing__stack-items span { padding: 8px; }
    .dnec-landing__optimization-steps { overflow-x: auto; padding-bottom: 3px; }

    .dnec-landing__billing-shell {
        padding: 1.5rem;
        border-radius: 1.25rem;
    }

    .dnec-landing__billing-features { grid-template-columns: 1fr; }
    .dnec-landing__invoice-visual { min-height: 385px; }
    .dnec-landing__invoice-card {
        padding: 1rem;
        transform: none;
    }

    .dnec-landing__invoice-head { grid-template-columns: 38px minmax(0, 1fr); }
    .dnec-landing__invoice-head > b {
        grid-column: 1 / -1;
        justify-self: start;
    }

    .dnec-landing__invoice-flow { gap: .3rem; }
    .dnec-landing__invoice-flow > span { min-width: 42px; }
    .dnec-landing__invoice-flow > span i { width: 27px; height: 27px; }
    .dnec-landing__invoice-flow small {}
    .dnec-landing__invoice-flow > i { max-width: 14px; }
    .dnec-landing__invoice-infinity { right: 0; }

}

@media (prefers-reduced-motion: reduce) {
    .dnec-landing {
        scroll-behavior: auto;
    }

    .dnec-landing__feature {
        transition: none;
    }

    .dnec-landing__trial-button,
    .dnec-landing__trial-grid::before { transition: none; }

    .dnec-landing__capability-panel { animation: none; }
    .dnec-landing__pulse-link > i::after { animation: none; }
    .dnec-landing__camera-scanline { top: 50%; opacity: .75; animation: none; }

    .dnec-landing__agent-links path,
    .dnec-landing__agent-core::before {
        animation: none;
    }
}
