/*
 * Nightgrid 2.0 — bespoke black/yellow visual layer.
 * Applied only through .nightgrid-* wrappers so content and interaction hooks stay intact.
 */

.nightgrid-skin {
    --ng-void: #090a09;
    --ng-ink: #101211;
    --ng-rail: #171a18;
    --ng-panel: #202421;
    --ng-panel-soft: #272c27;
    --ng-line: rgba(246, 255, 32, 0.22);
    --ng-line-soft: rgba(255, 255, 255, 0.10);
    --ng-signal: #f3ff25;
    --ng-signal-deep: #d3e900;
    --ng-cloud: #f7f8f0;
    --ng-dim: #aab0a9;
    --ng-sun: 0 0 0 1px rgba(243, 255, 37, 0.22), 0 16px 42px rgba(0, 0, 0, 0.46);
    --ng-cut: polygon(0 0, calc(100% - 18px) 0, 100% 18px, 100% 100%, 18px 100%, 0 calc(100% - 18px));
    background: var(--ng-void);
    color: var(--ng-cloud);
    font-family: Inter, Arial, Helvetica, sans-serif;
}

.nightgrid-skin *,
.nightgrid-skin *::before,
.nightgrid-skin *::after { box-sizing: border-box; }

.nightgrid-skin body,
body.nightgrid-skin {
    overflow-x: hidden;
    background:
        radial-gradient(circle at 12% 8%, rgba(243, 255, 37, 0.075), transparent 22rem),
        radial-gradient(circle at 92% 42%, rgba(243, 255, 37, 0.035), transparent 26rem),
        var(--ng-void) !important;
    color: var(--ng-cloud) !important;
}

.nightgrid-skin .nightgrid-shell {
    min-height: 100vh;
    overflow: clip;
    background: transparent;
}

.nightgrid-skin a { color: var(--ng-signal); }
.nightgrid-skin a:hover { color: #fff; text-decoration-color: var(--ng-signal); }
.nightgrid-skin p,
.nightgrid-skin li,
.nightgrid-skin .el-meta,
.nightgrid-skin .uk-text-meta { color: var(--ng-dim); }
.nightgrid-skin strong,
.nightgrid-skin b { /*color: var(--ng-cloud);*/ }

/* Header */
.nightgrid-skin .nightgrid-header,
.nightgrid-skin .tm-header,
.nightgrid-skin .tm-header-mobile { position: relative; z-index: 80; }

.nightgrid-skin .tm-header .uk-navbar-container,
.nightgrid-skin .tm-header-mobile .uk-navbar-container {
    position: relative;
    background: rgba(9, 10, 9, 0.93) !important;
    border-bottom: 1px solid rgba(255,255,255,0.08);
    box-shadow: 0 14px 34px rgba(0,0,0,0.28);
    backdrop-filter: blur(14px);
}

.nightgrid-skin .tm-header .uk-navbar-container::after,
.nightgrid-skin .tm-header-mobile .uk-navbar-container::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;
    height: 2px;
    background: linear-gradient(90deg, transparent 0, var(--ng-signal) 18%, var(--ng-signal) 82%, transparent 100%);
    opacity: 0.68;
}

.nightgrid-skin .tm-header .uk-navbar,
.nightgrid-skin .tm-header-mobile .uk-navbar { min-height: 82px; }

.nightgrid-skin .tm-header .uk-logo,
.nightgrid-skin .tm-header-mobile .uk-logo { position: relative; }

.nightgrid-skin .tm-header .uk-logo::before {
    content: "";
    position: absolute;
    left: -20px;
    top: 50%;
    width: 9px;
    height: 28px;
    transform: translateY(-50%) skewX(-24deg);
    background: var(--ng-signal);
}

.nightgrid-skin .tm-header .uk-navbar-nav { gap: 4px; margin-left: 34px; }
.nightgrid-skin .tm-header .uk-navbar-nav > li > a {
    position: relative;
    min-height: 82px;
    display: inline-flex;
    align-items: center;
    padding: 0 16px;
    color: var(--ng-cloud) !important;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
}
.nightgrid-skin .tm-header .uk-navbar-nav > li > a::after {
    content: "";
    position: absolute;
    left: 16px;
    right: 16px;
    bottom: 20px;
    height: 2px;
    background: var(--ng-signal);
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .24s ease;
}
.nightgrid-skin .tm-header .uk-navbar-nav > li > a:hover::after,
.nightgrid-skin .tm-header .uk-navbar-nav > li.uk-active > a::after { transform: scaleX(1); }
.nightgrid-skin .tm-header .uk-navbar-nav > li > a:hover { color: var(--ng-signal) !important; }

.nightgrid-skin .tm-header .el-image,
.nightgrid-skin .tm-header-mobile .el-image { border-radius: 0 !important; }
.nightgrid-skin .tm-header .uk-navbar-right .el-image {
    width: 31px;
    height: 31px;
    padding: 4px;
    background: var(--ng-panel);
    border: 1px solid var(--ng-line-soft);
    clip-path: var(--ng-cut);
}

.nightgrid-skin .tm-header-mobile .uk-navbar { min-height: 66px; }
.nightgrid-skin .tm-header-mobile .uk-navbar-center .uk-logo { filter: drop-shadow(0 0 12px rgba(243,255,37,.16)); }
.nightgrid-skin .tm-header-mobile .uk-navbar-toggle {
    min-width: 38px;
    min-height: 38px;
    display: inline-grid;
    place-items: center;
    color: var(--ng-void) !important;
    background: var(--ng-signal);
    clip-path: var(--ng-cut);
}
.nightgrid-skin .tm-header-mobile [uk-navbar-toggle-icon] { transform: scale(.84); }
.nightgrid-skin .tm-header-mobile .uk-modal-dialog {
    background: var(--ng-void);
    color: var(--ng-cloud);
}
.nightgrid-skin .tm-header-mobile .uk-modal-body { background: var(--ng-void); }
.nightgrid-skin .tm-header-mobile .uk-modal a:not(.uk-button) { color: var(--ng-cloud); }
.nightgrid-skin .tm-header-mobile .uk-nav-primary > li > a {
    padding: 13px 0;
    font-size: 26px;
    font-weight: 900;
    letter-spacing: -.03em;
}

/* Button system */
.nightgrid-skin .uk-button,
.nightgrid-skin .el-content.uk-button,
.nightgrid-skin a.uk-button,
.nightgrid-skin .cgIPK6vMz2wW {
    position: relative;
    isolation: isolate;
    min-height: 43px;
    border: 1px solid transparent;
    border-radius: 0 !important;
    padding: 14px 22px;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .12em;
    line-height: 1;
    text-transform: uppercase;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease;
    clip-path: var(--ng-cut);
}
.nightgrid-skin .uk-button::after,
.nightgrid-skin .el-content.uk-button::after,
.nightgrid-skin .cgIPK6vMz2wW::after {
    content: "";
    position: absolute;
    z-index: -1;
    inset: 1px;
    background: linear-gradient(105deg, transparent 0 54%, rgba(255,255,255,.10) 54% 57%, transparent 57% 100%);
    opacity: 0;
    transition: opacity .2s ease;
    clip-path: inherit;
}
.nightgrid-skin .uk-button:hover,
.nightgrid-skin .el-content.uk-button:hover,
.nightgrid-skin .cgIPK6vMz2wW:hover {
    transform: translateY(-2px);
    text-decoration: none;
}
.nightgrid-skin .uk-button:hover::after,
.nightgrid-skin .el-content.uk-button:hover::after,
.nightgrid-skin .cgIPK6vMz2wW:hover::after { opacity: 1; }

.nightgrid-skin .uk-button-default {
    color: var(--ng-cloud) !important;
    background: rgba(255,255,255,.035) !important;
    border-color: rgba(255,255,255,.24) !important;
}
.nightgrid-skin .uk-button-default:hover {
    color: var(--ng-signal) !important;
    border-color: var(--ng-signal) !important;
    box-shadow: 0 12px 20px rgba(0,0,0,.34);
}
.nightgrid-skin .uk-button-secondary,
.nightgrid-skin .cgIPK6vMz2wW {
    color: #10130c !important;
    background: var(--ng-signal) !important;
    border-color: var(--ng-signal) !important;
    box-shadow: 0 10px 24px rgba(171, 186, 0, .24);
}
.nightgrid-skin .uk-button-secondary:hover,
.nightgrid-skin .cgIPK6vMz2wW:hover {
    color: #10130c !important;
    background: #fbff57 !important;
    box-shadow: 0 16px 30px rgba(171, 186, 0, .34);
}
.nightgrid-skin .uk-button-danger {
    color: #131507 !important;
    background: var(--ng-signal) !important;
    border-color: var(--ng-signal) !important;
    box-shadow: 0 14px 32px rgba(171, 186, 0, .26);
}
.nightgrid-skin .uk-button-danger:hover { background: #fbff57 !important; color: #131507 !important; }
.nightgrid-skin .uk-button-large { min-height: 56px; padding: 0 30px; font-size: 13px; }
.nightgrid-skin .uk-button-small { min-height: 36px; padding: 0 16px; font-size: 10px; }
.nightgrid-skin .button-hero { min-width: 230px; }
.nightgrid-skin .button-with-animation::before { display: none !important; }

/* Page frame and hero */
.nightgrid-skin .nightgrid-main { position: relative; }
.nightgrid-skin .nightgrid-hero {
    position: relative;
    overflow: hidden;
    padding-top: 104px !important;
    padding-bottom: 104px !important;
    background:
        linear-gradient(112deg, rgba(10,12,10,.98) 0 43%, rgba(10,12,10,.68) 61%, rgba(10,12,10,.80) 100%),
        radial-gradient(circle at 76% 52%, rgba(243,255,37,.18), transparent 20rem),
        #0b0c0a !important;
    border-bottom: 1px solid var(--ng-line);
    isolation: isolate;
}
.nightgrid-skin .nightgrid-hero::before {
    content: "";
    position: absolute;
    z-index: -1;
    inset: 0;
    pointer-events: none;
    opacity: .54;
    background-image:
        linear-gradient(115deg, transparent 0 16%, rgba(243,255,37,.105) 16% 16.25%, transparent 16.25% 32%, rgba(255,255,255,.05) 32% 32.12%, transparent 32.12% 56%, rgba(243,255,37,.11) 56% 56.22%, transparent 56.22%),
        linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px),
        linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px);
    background-size: auto, 48px 48px, 48px 48px;
    mask-image: linear-gradient(90deg, #000 0 85%, transparent 100%);
}
.nightgrid-skin .nightgrid-hero .uk-container { position: relative; z-index: 1; }
.nightgrid-skin .nightgrid-hero h1,
.nightgrid-skin .nightgrid-hero .uk-heading-medium {
    max-width: 820px;
    color: var(--ng-cloud) !important;
    font-size: clamp(37px, 5.2vw, 74px) !important;
    font-weight: 900 !important;
    letter-spacing: -.055em;
    line-height: .98 !important;
    text-wrap: balance;
}
.nightgrid-skin .nightgrid-hero h1::before,
.nightgrid-skin .nightgrid-hero .uk-heading-medium::before {
    content: "";
    display: block;
    width: 58px;
    height: 7px;
    margin-bottom: 22px;
    background: var(--ng-signal);
    transform: skewX(-28deg);
}
.nightgrid-skin .nightgrid-hero p, .nightgrid-skin .nightgrid-hero p.uk-text-lead { max-width: 690px; color: #fff; font-size: 18px; }
.nightgrid-skin .nightgrid-hero #page\#1 { position: relative; }
.nightgrid-skin .nightgrid-hero #page\#1::before {
    content: "";
    position: absolute;
    right: 8%;
    top: -24px;
    width: 86%;
    height: 92%;
    background: var(--ng-signal);
    opacity: .88;
    transform: translate(18px, 18px);
    clip-path: polygon(14% 0, 100% 0, 100% 79%, 83% 100%, 0 100%, 0 17%);
}
.nightgrid-skin .nightgrid-hero #page\#1 img {
    position: relative;
    z-index: 1;
    width: 100%;
    max-height: 510px;
    object-fit: cover;
    border: 1px solid rgba(255,255,255,.24);
    box-shadow: 18px 22px 0 rgba(0,0,0,.27), 0 20px 54px rgba(0,0,0,.52);
    clip-path: polygon(14% 0, 100% 0, 100% 79%, 83% 100%, 0 100%, 0 17%);
}

/* Content sections */
.nightgrid-skin #tm-main > .uk-section:not(.nightgrid-hero) {
    position: relative;
    padding-top: 88px;
    padding-bottom: 88px;
    background: transparent !important;
}
.nightgrid-skin #tm-main > .uk-section:not(.nightgrid-hero)::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.018) 50%, transparent);
}
.nightgrid-skin #tm-main > .nightgrid-surface-a { background: #111410 !important; }
.nightgrid-skin #tm-main > .nightgrid-surface-b { background: #151915 !important; }
.nightgrid-skin #tm-main > .nightgrid-surface-c {
    background:
        linear-gradient(120deg, rgba(243,255,37,.08), transparent 36%),
        #111410 !important;
}
.nightgrid-skin #tm-main > .uk-section > .uk-container { position: relative; z-index: 1; }
.nightgrid-skin #tm-main .uk-section-default,
.nightgrid-skin #tm-main .uk-section-muted,
.nightgrid-skin #tm-main .uk-section-secondary { color: var(--ng-cloud); }

.nightgrid-skin .uk-heading-divider,
.nightgrid-skin .uk-heading-line {
    position: relative;
    display: block;
    margin-bottom: 42px !important;
    padding-bottom: 17px;
    border-bottom: 1px solid rgba(255,255,255,.14) !important;
    color: var(--ng-cloud) !important;
    font-size: clamp(28px, 3.25vw, 46px) !important;
    font-weight: 900 !important;
    letter-spacing: -.045em;
    line-height: 1.04 !important;
}
.nightgrid-skin .uk-heading-divider::before,
.nightgrid-skin .uk-heading-line::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 72px;
    height: 4px;
    background: var(--ng-signal);
    transform: skewX(-28deg);
}
.nightgrid-skin .uk-text-center.uk-heading-divider::before,
.nightgrid-skin .uk-text-center.uk-heading-line::before {
    left: 50%;
    margin-left: -36px;
}
.nightgrid-skin .uk-heading-bullet {
    position: relative;
    padding-left: 22px;
    color: var(--ng-cloud) !important;
    font-size: clamp(21px, 2.1vw, 29px) !important;
    font-weight: 850 !important;
    letter-spacing: -.025em;
}
.nightgrid-skin .uk-heading-bullet::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    top: .30em !important;
    width: 9px !important;
    height: 18px !important;
    background: var(--ng-signal) !important;
    transform: skewX(-28deg) !important;
    border-radius: 0 !important;
}
.nightgrid-skin h3:not(.uk-heading-bullet),
.nightgrid-skin .uk-card-title { color: var(--ng-cloud) !important; font-weight: 850 !important; }

.nightgrid-skin .uk-list-bullet > li,
.nightgrid-skin .uk-list-decimal > li { padding-left: 28px; }
.nightgrid-skin .uk-list-bullet > li::before {
    width: 8px;
    height: 8px;
    top: .72em;
    border-radius: 0;
    background: var(--ng-signal);
    transform: skewX(-25deg);
}
.nightgrid-skin .uk-list-decimal > li::marker { color: var(--ng-signal); font-weight: 900; }

/* Panels, images, tables */
.nightgrid-skin .uk-card,
.nightgrid-skin .uk-card-default,
.nightgrid-skin .uk-card-secondary {
    border-radius: 0 !important;
    clip-path: var(--ng-cut);
}
.nightgrid-skin .uk-card-default,
.nightgrid-skin .uk-card-secondary {
    color: var(--ng-cloud) !important;
    background:
        linear-gradient(137deg, rgba(243,255,37,.06), transparent 28%),
        var(--ng-panel) !important;
    border: 1px solid var(--ng-line-soft) !important;
    box-shadow: var(--ng-sun) !important;
}
.nightgrid-skin .uk-card-default::before,
.nightgrid-skin .uk-card-secondary::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(90deg, rgba(243,255,37,.25), transparent 28%) top left / 100% 1px no-repeat;
}
.nightgrid-skin .uk-card-body { padding: 30px !important; }
.nightgrid-skin .uk-border-rounded,
.nightgrid-skin .uk-inline-clip,
.nightgrid-skin .uk-transition-toggle {
    border-radius: 0 !important;
    clip-path: polygon(0 0, calc(100% - 22px) 0, 100% 22px, 100% 100%, 22px 100%, 0 calc(100% - 22px));
}
.nightgrid-skin #tm-main img:not(.uk-logo img) {
    border: 1px solid rgba(255,255,255,.12);
    box-shadow: 0 18px 42px rgba(0,0,0,.34);
}
.nightgrid-skin .uk-transition-toggle:hover img { transform: scale(1.025); }

.nightgrid-skin .uk-overflow-auto {
    padding: 1px;
    background: var(--ng-panel);
    border: 1px solid var(--ng-line-soft);
    clip-path: var(--ng-cut);
}
.nightgrid-skin .uk-table,
.nightgrid-skin table {
    width: 100%;
    overflow: hidden;
    margin: 26px 0;
    color: var(--ng-cloud) !important;
    background: transparent !important;
    border-collapse: collapse;
}
.nightgrid-skin .uk-table th,
.nightgrid-skin .uk-table td,
.nightgrid-skin table th,
.nightgrid-skin table td {
    padding: 15px 17px !important;
    border-color: rgba(255,255,255,.10) !important;
    color: var(--ng-cloud) !important;
}
.nightgrid-skin .uk-table th,
.nightgrid-skin table th {
    color: #10130c !important;
    background: var(--ng-signal) !important;
    font-size: 11px;
    font-weight: 900 !important;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.nightgrid-skin .uk-table-striped tbody tr:nth-of-type(odd),
.nightgrid-skin table tbody tr:nth-of-type(odd) { background: rgba(255,255,255,.035) !important; }
.nightgrid-skin .uk-table-hover tbody tr:hover,
.nightgrid-skin table tbody tr:hover { background: rgba(243,255,37,.09) !important; }

/* CTA & FAQ */
.nightgrid-skin #tm-main > .uk-section:last-of-type {
    background:
        radial-gradient(circle at 50% 0, rgba(243,255,37,.13), transparent 28rem),
        #0e100d !important;
}
.nightgrid-skin .uk-accordion > li {
    margin: 0 0 12px;
    border: 1px solid var(--ng-line-soft);
    background: #171a17;
    clip-path: var(--ng-cut);
}
.nightgrid-skin .uk-accordion-title {
    position: relative;
    padding: 19px 58px 19px 22px !important;
    color: var(--ng-cloud) !important;
    font-weight: 800;
    font-size: 17px;
    line-height: 1.35;
    background: transparent !important;
}
.nightgrid-skin .uk-accordion-title::before {
    content: "+" !important;
    position: absolute !important;
    right: 21px !important;
    top: 50% !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    color: var(--ng-signal) !important;
    background: none !important;
    font-size: 28px;
    line-height: 1;
    transform: translateY(-50%) !important;
}
.nightgrid-skin .uk-open > .uk-accordion-title { color: var(--ng-signal) !important; }
.nightgrid-skin .uk-open > .uk-accordion-title::before { content: "−" !important; }
.nightgrid-skin .uk-accordion-content {
    margin: 0 !important;
    padding: 0 22px 20px;
}
.nightgrid-skin .uk-accordion-content p { margin: 0; }

/* Footer */
.nightgrid-skin .nightgrid-footer .uk-section-default {
    position: relative;
    padding-top: 72px;
    padding-bottom: 42px;
    color: var(--ng-dim);
    background: #070807 !important;
    border-top: 1px solid var(--ng-line);
}
.nightgrid-skin .nightgrid-footer .uk-section-default::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    width: min(620px, 70vw);
    height: 1px;
    transform: translateX(-50%);
    background: var(--ng-signal);
    box-shadow: 0 0 18px var(--ng-signal);
}
.nightgrid-skin .nightgrid-footer img { filter: drop-shadow(0 0 11px rgba(243,255,37,.14)); }
.nightgrid-skin .nightgrid-footer hr { border-color: rgba(255,255,255,.12); }
.nightgrid-skin .nightgrid-footer .uk-nav-center > li > a {
    color: var(--ng-signal) !important;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.nightgrid-skin ::selection { color: #11130c; background: var(--ng-signal); }
.nightgrid-skin ::-webkit-scrollbar { width: 11px; height: 11px; }
.nightgrid-skin ::-webkit-scrollbar-track { background: var(--ng-void); }
.nightgrid-skin ::-webkit-scrollbar-thumb { background: #444b3d; border: 3px solid var(--ng-void); }
.nightgrid-skin ::-webkit-scrollbar-thumb:hover { background: var(--ng-signal); }

@media (max-width: 959px) {
    .nightgrid-skin .tm-header .uk-navbar-nav { margin-left: 14px; }
    .nightgrid-skin .nightgrid-hero {
        padding-top: 68px !important;
        padding-bottom: 64px !important;
    }
    .nightgrid-skin .nightgrid-hero::before { mask-image: none; opacity: .34; }
    .nightgrid-skin .nightgrid-hero h1,
    .nightgrid-skin .nightgrid-hero .uk-heading-medium { font-size: clamp(36px, 10vw, 58px) !important; }
    .nightgrid-skin .nightgrid-hero #page\#1 { margin-top: 16px; }
    .nightgrid-skin .nightgrid-hero #page\#1::before { transform: translate(12px, 12px); }
    .nightgrid-skin #tm-main > .uk-section:not(.nightgrid-hero) { padding-top: 58px; padding-bottom: 58px; }
    .nightgrid-skin .uk-heading-divider,
    .nightgrid-skin .uk-heading-line { margin-bottom: 31px !important; }
    .nightgrid-skin .uk-card-body { padding: 22px !important; }
}

@media (max-width: 639px) {
    .nightgrid-skin .tm-header-mobile .uk-navbar-container { backdrop-filter: blur(10px); }
    .nightgrid-skin .nightgrid-hero h1::before,
    .nightgrid-skin .nightgrid-hero .uk-heading-medium::before { width: 42px; height: 5px; margin-bottom: 17px; }
    .nightgrid-skin .nightgrid-hero p { font-size: 16px; }
    .nightgrid-skin .button-hero { width: 100%; min-width: 0; }
    .nightgrid-skin .uk-button-large { width: 100%; padding: 0 16px; }
    .nightgrid-skin .uk-heading-bullet { padding-left: 18px; }
    .nightgrid-skin .uk-heading-bullet::before { width: 7px !important; height: 16px !important; }
    .nightgrid-skin .uk-table th,
    .nightgrid-skin .uk-table td,
    .nightgrid-skin table th,
    .nightgrid-skin table td { padding: 12px !important; font-size: 13px; }
    .nightgrid-skin .uk-accordion-title { padding: 17px 50px 17px 17px !important; font-size: 16px; }
    .nightgrid-skin .uk-accordion-content { padding: 0 17px 18px; }
}
.lang-switch{position:relative;z-index:5;display:inline-flex}
.pm-trust-badges{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin-top:14px}.pm-trust-badges img{opacity:.82;transition:opacity .2s ease}.pm-trust-badges a:hover img{opacity:1}
