/* ==================================================
   GTANEX — NIGHTIFY-INSPIRED HOMEPAGE
   Loaded after css/style.css
================================================== */

body.nightify-home {
    --nx-bg: #070914;
    --nx-bg-soft: #0b1020;
    --nx-panel: rgba(17, 23, 43, 0.78);
    --nx-panel-strong: #11182b;
    --nx-line: rgba(157, 171, 215, 0.16);
    --nx-text: #f7f8ff;
    --nx-muted: #9aa5c3;
    --nx-purple: #8b5cf6;
    --nx-purple-bright: #a879ff;
    --nx-pink: #ec4899;
    --nx-blue: #4f8cff;
    --nx-cyan: #55d9ff;
    --nx-success: #35d07f;
    --nx-shadow: 0 30px 80px rgba(0, 0, 0, 0.42);

    min-height: 100vh;

    margin: 0;

    color: var(--nx-text);
    background:
        radial-gradient(
            circle at 8% 4%,
            rgba(99, 68, 220, 0.14),
            transparent 26%
        ),
        radial-gradient(
            circle at 92% 12%,
            rgba(31, 115, 255, 0.12),
            transparent 22%
        ),
        var(--nx-bg);

    font-family: "Inter", sans-serif;
}

body.nightify-home *,
body.nightify-home *::before,
body.nightify-home *::after {
    box-sizing: border-box;
}

body.nightify-home img {
    max-width: 100%;
}

body.nightify-home a {
    color: inherit;
    text-decoration: none;
}

body.nightify-home button,
body.nightify-home input,
body.nightify-home select,
body.nightify-home textarea {
    font: inherit;
}

body.nightify-home h1,
body.nightify-home h2,
body.nightify-home h3,
body.nightify-home p {
    margin-top: 0;
}

body.nightify-home #particles-canvas {
    position: fixed;
    inset: 0;

    width: 100%;
    height: 100%;

    pointer-events: none;
    z-index: 0;

    opacity: 0.48;
}

body.nightify-home main,
body.nightify-home .nx-header,
body.nightify-home .nx-announcement,
body.nightify-home .nx-footer {
    position: relative;
    z-index: 2;
}

body.nightify-home .nx-shell {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}


/* =========================
   ANNOUNCEMENT
========================= */

body.nightify-home .nx-announcement {
    color: #dfe5ff;
    background:
        linear-gradient(
            90deg,
            rgba(111, 70, 230, 0.26),
            rgba(37, 91, 205, 0.22)
        );

    border-bottom: 1px solid rgba(168, 121, 255, 0.18);
}

body.nightify-home .nx-announcement-inner {
    min-height: 38px;

    display: flex;
    align-items: center;
    justify-content: center;

    gap: 18px;

    font-size: 12px;
}

body.nightify-home .nx-announcement p {
    display: flex;
    align-items: center;
    gap: 8px;

    margin: 0;
}

body.nightify-home .nx-live-dot {
    width: 7px;
    height: 7px;

    display: inline-block;

    background: #51e38c;
    border-radius: 50%;

    box-shadow: 0 0 0 5px rgba(81, 227, 140, 0.09);
}

body.nightify-home .nx-announcement a {
    display: inline-flex;
    align-items: center;
    gap: 7px;

    color: #ffffff;
    font-weight: 700;
}

body.nightify-home .nx-announcement button {
    position: absolute;
    right: 0;

    width: 30px;
    height: 30px;

    color: #aeb8d4;
    background: transparent;
    border: 0;

    font-size: 18px;
    cursor: pointer;
}


/* =========================
   HEADER
========================= */

body.nightify-home .nx-header {
    position: sticky;
    top: 0;

    z-index: 100;

    background: rgba(7, 9, 20, 0.72);
    border-bottom: 1px solid transparent;

    backdrop-filter: blur(18px);

    transition:
        background 0.2s ease,
        border-color 0.2s ease,
        box-shadow 0.2s ease;
}

body.nightify-home .nx-header.scrolled {
    background: rgba(7, 9, 20, 0.94);
    border-bottom-color: var(--nx-line);

    box-shadow: 0 14px 40px rgba(0, 0, 0, 0.18);
}

body.nightify-home .nx-header-inner {
    min-height: 72px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 28px;
}

body.nightify-home .nx-brand {
    display: inline-flex;
    align-items: center;

    gap: 10px;

    font-family: "Space Grotesk", sans-serif;
    font-size: 20px;
    font-weight: 800;
    letter-spacing: 0.04em;
}

body.nightify-home .nx-brand img {
    width: 40px;
    height: 40px;

    object-fit: cover;

    border-radius: 12px;

    box-shadow:
        0 0 0 1px rgba(255, 255, 255, 0.08),
        0 10px 22px rgba(0, 0, 0, 0.3);
}

body.nightify-home .nx-nav {
    display: flex;
    align-items: center;

    gap: 30px;
}

body.nightify-home .nx-nav a {
    position: relative;

    padding: 25px 0;

    color: #a9b2cc;

    font-size: 13px;
    font-weight: 600;

    transition: color 0.2s ease;
}

body.nightify-home .nx-nav a:hover,
body.nightify-home .nx-nav a.active {
    color: #ffffff;
}

body.nightify-home .nx-nav a.active::after {
    content: "";

    position: absolute;
    right: 0;
    bottom: 17px;
    left: 0;

    height: 2px;

    background:
        linear-gradient(
            90deg,
            var(--nx-purple),
            var(--nx-pink)
        );

    border-radius: 20px;
}

body.nightify-home .nx-header-actions,
body.nightify-home .auth-buttons,
body.nightify-home .user-menu {
    display: flex;
    align-items: center;

    gap: 10px;
}

body.nightify-home .nx-login-link {
    padding: 10px 14px;

    color: #c7cee1;

    font-size: 13px;
    font-weight: 700;
}

body.nightify-home .nx-primary-small {
    padding: 10px 16px;

    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            var(--nx-purple),
            #6c4bea
        );

    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 10px;

    font-size: 13px;
    font-weight: 800;

    box-shadow: 0 12px 28px rgba(108, 75, 234, 0.28);
}

body.nightify-home .nx-user-link {
    display: inline-flex;
    align-items: center;

    gap: 9px;

    padding: 7px 10px;

    color: #dce2f5;
    background: rgba(255, 255, 255, 0.035);

    border: 1px solid var(--nx-line);
    border-radius: 11px;

    font-size: 12px;
    font-weight: 700;
}

body.nightify-home .user-avatar {
    width: 28px;
    height: 28px;

    display: grid;
    place-items: center;

    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            var(--nx-purple),
            var(--nx-pink)
        );

    border-radius: 8px;
}

body.nightify-home .nx-logout-button {
    padding: 9px 12px;

    color: #c5cce0;
    background: transparent;

    border: 1px solid var(--nx-line);
    border-radius: 9px;

    font-size: 12px;
    font-weight: 700;
    cursor: pointer;
}

body.nightify-home .nx-nav-toggle {
    width: 42px;
    height: 42px;

    display: none;
    place-items: center;

    padding: 10px;

    background: rgba(255, 255, 255, 0.04);
    border: 1px solid var(--nx-line);
    border-radius: 10px;

    cursor: pointer;
}

body.nightify-home .nx-nav-toggle span {
    width: 18px;
    height: 2px;

    display: block;

    margin: 2px 0;

    background: #ffffff;
    border-radius: 20px;
}


/* =========================
   SHARED BUTTONS
========================= */

body.nightify-home .nx-primary-button,
body.nightify-home .nx-secondary-button {
    min-height: 48px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    gap: 10px;

    padding: 12px 20px;

    border-radius: 12px;

    font-size: 13px;
    font-weight: 800;

    transition:
        transform 0.2s ease,
        border-color 0.2s ease,
        background 0.2s ease,
        box-shadow 0.2s ease;
}

body.nightify-home .nx-primary-button {
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            var(--nx-purple),
            #6b4ce7 58%,
            #5a4de1
        );

    border: 1px solid rgba(255, 255, 255, 0.13);

    box-shadow:
        0 18px 38px rgba(111, 76, 232, 0.29),
        inset 0 1px 0 rgba(255, 255, 255, 0.14);
}

body.nightify-home .nx-primary-button:hover,
body.nightify-home .nx-secondary-button:hover {
    transform: translateY(-2px);
}

body.nightify-home .nx-primary-button:hover {
    box-shadow:
        0 22px 42px rgba(111, 76, 232, 0.4),
        inset 0 1px 0 rgba(255, 255, 255, 0.17);
}

body.nightify-home .nx-secondary-button {
    color: #dce2f4;
    background: rgba(255, 255, 255, 0.035);

    border: 1px solid var(--nx-line);
}

body.nightify-home .nx-secondary-button:hover {
    color: #ffffff;
    background: rgba(255, 255, 255, 0.06);
    border-color: rgba(168, 121, 255, 0.42);
}


/* =========================
   HERO
========================= */

body.nightify-home .nx-hero {
    position: relative;

    min-height: 780px;

    padding: 96px 0 40px;

    overflow: hidden;
}

body.nightify-home .nx-hero::before {
    content: "";

    position: absolute;
    inset: 0;

    pointer-events: none;

    background-image:
        linear-gradient(
            rgba(117, 133, 178, 0.045) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(117, 133, 178, 0.045) 1px,
            transparent 1px
        );

    background-size: 58px 58px;

    mask-image:
        linear-gradient(
            to bottom,
            black,
            transparent 82%
        );
}

body.nightify-home .nx-hero-glow {
    position: absolute;

    width: 540px;
    height: 540px;

    filter: blur(20px);
    border-radius: 50%;

    pointer-events: none;
}

body.nightify-home .nx-glow-one {
    top: -220px;
    right: -80px;

    background:
        radial-gradient(
            circle,
            rgba(101, 69, 228, 0.22),
            transparent 68%
        );
}

body.nightify-home .nx-glow-two {
    bottom: -280px;
    left: -160px;

    background:
        radial-gradient(
            circle,
            rgba(26, 112, 232, 0.18),
            transparent 68%
        );
}

body.nightify-home .nx-hero-grid {
    position: relative;
    z-index: 2;

    display: grid;
    grid-template-columns:
        minmax(0, 1.02fr)
        minmax(420px, 0.98fr);

    align-items: center;

    gap: 74px;
}

body.nightify-home .nx-eyebrow {
    width: fit-content;

    display: inline-flex;
    align-items: center;

    gap: 10px;

    margin-bottom: 22px;
    padding: 7px 12px 7px 8px;

    color: #cbd4ed;
    background: rgba(126, 86, 232, 0.09);

    border: 1px solid rgba(159, 116, 255, 0.2);
    border-radius: 999px;

    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.04em;
}

body.nightify-home .nx-eyebrow span {
    width: 25px;
    height: 25px;

    display: grid;
    place-items: center;

    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            var(--nx-purple),
            var(--nx-pink)
        );

    border-radius: 50%;
}

body.nightify-home .nx-hero h1 {
    max-width: 690px;

    margin-bottom: 24px;

    color: #ffffff;

    font-family: "Space Grotesk", sans-serif;
    font-size: clamp(52px, 6.3vw, 82px);
    font-weight: 700;
    line-height: 0.98;
    letter-spacing: -0.055em;
}

body.nightify-home .nx-hero h1 span {
    display: block;

    color: transparent;

    background:
        linear-gradient(
            100deg,
            #a978ff,
            #6da9ff 55%,
            #f073c1
        );

    background-clip: text;
    -webkit-background-clip: text;
}

body.nightify-home .nx-hero-description {
    max-width: 610px;

    margin-bottom: 30px;

    color: var(--nx-muted);

    font-size: 17px;
    line-height: 1.75;
}

body.nightify-home .nx-hero-actions {
    display: flex;
    flex-wrap: wrap;

    gap: 12px;

    margin-bottom: 32px;
}

body.nightify-home .nx-trust-row {
    display: flex;
    align-items: center;

    gap: 14px;
}

body.nightify-home .nx-trust-avatars {
    display: flex;
}

body.nightify-home .nx-trust-avatars span {
    width: 34px;
    height: 34px;

    display: grid;
    place-items: center;

    margin-left: -7px;

    color: #ffffff;
    background:
        linear-gradient(
            145deg,
            #202a48,
            #151b31
        );

    border: 2px solid var(--nx-bg);
    border-radius: 50%;

    font-size: 11px;
    font-weight: 800;
}

body.nightify-home .nx-trust-avatars span:first-child {
    margin-left: 0;
}

body.nightify-home .nx-stars {
    margin-bottom: 2px;

    color: #f8c84e;
    font-size: 12px;
    letter-spacing: 0.08em;
}

body.nightify-home .nx-trust-row p {
    margin: 0;

    color: #8f9ab8;

    font-size: 11px;
}

body.nightify-home .nx-hero-visual {
    position: relative;

    min-height: 560px;

    display: grid;
    place-items: center;
}

body.nightify-home .nx-orbit {
    position: absolute;

    border: 1px solid rgba(143, 113, 230, 0.13);
    border-radius: 50%;
}

body.nightify-home .nx-orbit-large {
    width: 510px;
    height: 510px;

    animation: nxSpin 26s linear infinite;
}

body.nightify-home .nx-orbit-large::before,
body.nightify-home .nx-orbit-small::before {
    content: "";

    position: absolute;
    top: -5px;
    left: 50%;

    width: 10px;
    height: 10px;

    background: #9a75ff;
    border-radius: 50%;

    box-shadow: 0 0 20px #9a75ff;
}

body.nightify-home .nx-orbit-small {
    width: 390px;
    height: 390px;

    animation: nxSpinReverse 18s linear infinite;
}

body.nightify-home .nx-orbit-small::before {
    top: 50%;
    right: -4px;
    left: auto;

    background: #4da8ff;

    box-shadow: 0 0 20px #4da8ff;
}

@keyframes nxSpin {
    to {
        transform: rotate(360deg);
    }
}

@keyframes nxSpinReverse {
    to {
        transform: rotate(-360deg);
    }
}

body.nightify-home .nx-showcase-card {
    position: relative;
    z-index: 3;

    width: min(430px, 88%);

    padding: 18px;

    background:
        linear-gradient(
            145deg,
            rgba(23, 31, 57, 0.9),
            rgba(13, 18, 35, 0.84)
        );

    border: 1px solid rgba(166, 182, 224, 0.16);
    border-radius: 24px;

    box-shadow:
        0 40px 100px rgba(0, 0, 0, 0.55),
        0 0 0 1px rgba(255, 255, 255, 0.02) inset;

    backdrop-filter: blur(16px);

    transform: rotate(-2deg);
}

body.nightify-home .nx-showcase-card::after {
    content: "";

    position: absolute;
    inset: -1px;

    z-index: -1;

    background:
        linear-gradient(
            135deg,
            rgba(167, 116, 255, 0.3),
            transparent 35%,
            transparent 65%,
            rgba(77, 166, 255, 0.2)
        );

    border-radius: inherit;

    filter: blur(12px);
}

body.nightify-home .nx-showcase-top {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 10px;

    margin-bottom: 14px;
}

body.nightify-home .nx-featured-chip,
body.nightify-home .nx-online-chip {
    display: inline-flex;
    align-items: center;

    gap: 7px;

    padding: 7px 10px;

    border-radius: 999px;

    font-size: 9px;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

body.nightify-home .nx-featured-chip {
    color: #ddccff;
    background: rgba(135, 91, 240, 0.12);

    border: 1px solid rgba(161, 120, 255, 0.18);
}

body.nightify-home .nx-online-chip {
    color: #bdf5d3;
    background: rgba(48, 197, 111, 0.1);

    border: 1px solid rgba(48, 197, 111, 0.17);
}

body.nightify-home .nx-online-chip i {
    color: #43df87;

    font-size: 7px;
}

body.nightify-home .nx-logo-stage {
    position: relative;

    height: 330px;

    display: grid;
    place-items: center;

    overflow: hidden;

    background:
        radial-gradient(
            circle at 50% 45%,
            rgba(127, 75, 225, 0.22),
            transparent 48%
        ),
        linear-gradient(
            160deg,
            #0c1020,
            #10172a
        );

    border: 1px solid rgba(157, 171, 215, 0.08);
    border-radius: 18px;
}

body.nightify-home .nx-logo-stage::before {
    content: "";

    position: absolute;
    inset: 0;

    background-image:
        linear-gradient(
            rgba(255, 255, 255, 0.025) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255, 255, 255, 0.025) 1px,
            transparent 1px
        );

    background-size: 30px 30px;
}

body.nightify-home .nx-logo-halo {
    position: absolute;

    width: 260px;
    height: 260px;

    background:
        radial-gradient(
            circle,
            rgba(148, 91, 248, 0.2),
            transparent 67%
        );

    border-radius: 50%;

    filter: blur(4px);

    animation: nxPulse 3s ease-in-out infinite;
}

@keyframes nxPulse {
    50% {
        transform: scale(1.08);
        opacity: 0.72;
    }
}

body.nightify-home .nx-logo-stage img {
    position: relative;
    z-index: 2;

    width: 265px;
    height: 265px;

    object-fit: cover;

    border-radius: 50%;

    filter:
        saturate(0.95)
        contrast(1.04);

    mask-image:
        radial-gradient(
            circle,
            black 58%,
            transparent 73%
        );
}

body.nightify-home .nx-showcase-info {
    display: grid;
    grid-template-columns: 0.75fr 1.25fr;

    gap: 10px;

    margin-top: 12px;
}

body.nightify-home .nx-showcase-info div {
    padding: 12px;

    background: rgba(255, 255, 255, 0.025);

    border: 1px solid rgba(255, 255, 255, 0.055);
    border-radius: 12px;
}

body.nightify-home .nx-showcase-info span {
    display: block;

    margin-bottom: 4px;

    color: #7f8ba9;

    font-size: 9px;
    font-weight: 700;
    text-transform: uppercase;
}

body.nightify-home .nx-showcase-info strong {
    color: #eef1fb;

    font-size: 11px;
}

body.nightify-home .nx-floating-card {
    position: absolute;
    z-index: 6;

    min-width: 150px;

    display: flex;
    align-items: center;

    gap: 10px;

    padding: 10px;

    background: rgba(17, 24, 45, 0.9);

    border: 1px solid rgba(162, 176, 216, 0.16);
    border-radius: 14px;

    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.34);

    backdrop-filter: blur(15px);

    transition:
        transform 0.2s ease,
        border-color 0.2s ease;
}

body.nightify-home .nx-floating-card:hover {
    border-color: rgba(165, 120, 255, 0.42);

    transform: translateY(-4px);
}

body.nightify-home .nx-floating-card > span {
    width: 38px;
    height: 38px;

    display: grid;
    place-items: center;

    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            rgba(143, 91, 244, 0.9),
            rgba(71, 121, 235, 0.9)
        );

    border-radius: 11px;
}

body.nightify-home .nx-floating-card small {
    display: block;

    margin-bottom: 3px;

    color: #7884a3;

    font-size: 8px;
    font-weight: 700;
    text-transform: uppercase;
}

body.nightify-home .nx-floating-card strong {
    font-size: 12px;
}

body.nightify-home .nx-float-money {
    top: 100px;
    left: -28px;

    animation: nxFloat 5s ease-in-out infinite;
}

body.nightify-home .nx-float-level {
    right: -24px;
    bottom: 148px;

    animation: nxFloat 5.6s ease-in-out infinite -1.4s;
}

body.nightify-home .nx-float-unlock {
    bottom: 56px;
    left: 18px;

    animation: nxFloat 5.2s ease-in-out infinite -2.5s;
}

@keyframes nxFloat {
    50% {
        transform: translateY(-10px);
    }
}

body.nightify-home .nx-stat-strip {
    position: relative;
    z-index: 3;

    display: grid;
    grid-template-columns: repeat(4, 1fr);

    margin-top: 70px;

    background: rgba(255, 255, 255, 0.022);

    border: 1px solid var(--nx-line);
    border-radius: 18px;

    backdrop-filter: blur(10px);
}

body.nightify-home .nx-stat-strip div {
    position: relative;

    display: grid;
    justify-items: center;

    gap: 4px;

    padding: 22px 14px;
}

body.nightify-home .nx-stat-strip div:not(:last-child)::after {
    content: "";

    position: absolute;
    top: 22%;
    right: 0;

    width: 1px;
    height: 56%;

    background: var(--nx-line);
}

body.nightify-home .nx-stat-strip strong {
    color: #ffffff;

    font-family: "Space Grotesk", sans-serif;
    font-size: 22px;
}

body.nightify-home .nx-stat-strip span {
    color: #818dab;

    font-size: 10px;
}


/* =========================
   SHARED SECTIONS
========================= */

body.nightify-home .nx-section {
    padding: 100px 0;
}

body.nightify-home .nx-category-section,
body.nightify-home .nx-process-section,
body.nightify-home .nx-review-section {
    background: rgba(255, 255, 255, 0.012);

    border-top: 1px solid rgba(255, 255, 255, 0.025);
    border-bottom: 1px solid rgba(255, 255, 255, 0.025);
}

body.nightify-home .nx-section-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;

    gap: 30px;

    margin-bottom: 36px;
}

body.nightify-home .nx-section-kicker {
    margin-bottom: 9px;

    color: #9d73ff;

    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

body.nightify-home .nx-section-heading h2,
body.nightify-home .nx-centered-heading h2,
body.nightify-home .nx-benefit-copy h2,
body.nightify-home .nx-faq-intro h2,
body.nightify-home .nx-final-card h2 {
    margin-bottom: 10px;

    color: #ffffff;

    font-family: "Space Grotesk", sans-serif;
    font-size: clamp(32px, 4vw, 48px);
    line-height: 1.05;
    letter-spacing: -0.04em;
}

body.nightify-home .nx-section-heading p:not(.nx-section-kicker),
body.nightify-home .nx-centered-heading > p:last-child,
body.nightify-home .nx-faq-intro > p {
    max-width: 620px;

    margin-bottom: 0;

    color: var(--nx-muted);

    font-size: 14px;
    line-height: 1.7;
}

body.nightify-home .nx-text-link {
    display: inline-flex;
    align-items: center;

    gap: 8px;

    color: #bfa8ff;

    font-size: 12px;
    font-weight: 700;
}


/* =========================
   CATEGORY CARDS
========================= */

body.nightify-home .nx-category-grid {
    display: grid;
    grid-template-columns: 1.2fr repeat(3, 1fr);

    gap: 16px;
}

body.nightify-home .nx-category-card {
    position: relative;

    min-height: 230px;

    display: flex;
    flex-direction: column;
    justify-content: space-between;

    padding: 22px;

    overflow: hidden;

    background:
        linear-gradient(
            145deg,
            rgba(22, 29, 52, 0.9),
            rgba(12, 17, 34, 0.9)
        );

    border: 1px solid var(--nx-line);
    border-radius: 18px;

    transition:
        transform 0.22s ease,
        border-color 0.22s ease,
        box-shadow 0.22s ease;
}

body.nightify-home .nx-category-card::before {
    content: "";

    position: absolute;
    top: -80px;
    right: -60px;

    width: 180px;
    height: 180px;

    background:
        radial-gradient(
            circle,
            rgba(133, 80, 233, 0.13),
            transparent 69%
        );

    border-radius: 50%;
}

body.nightify-home .nx-category-card:hover {
    transform: translateY(-6px);

    border-color: rgba(158, 117, 255, 0.38);

    box-shadow: var(--nx-shadow);
}

body.nightify-home .nx-category-featured {
    background:
        radial-gradient(
            circle at 90% 0%,
            rgba(220, 69, 159, 0.22),
            transparent 45%
        ),
        linear-gradient(
            145deg,
            rgba(78, 49, 149, 0.72),
            rgba(19, 23, 45, 0.94)
        );
}

body.nightify-home .nx-category-icon {
    width: 46px;
    height: 46px;

    display: grid;
    place-items: center;

    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            rgba(147, 91, 244, 0.9),
            rgba(76, 117, 231, 0.9)
        );

    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 13px;

    box-shadow: 0 12px 25px rgba(93, 76, 219, 0.22);
}

body.nightify-home .nx-category-card > div:nth-child(2) {
    position: relative;
    z-index: 2;

    margin-top: 28px;
}

body.nightify-home .nx-category-card span {
    display: block;

    margin-bottom: 6px;

    color: #8f9ab6;

    font-size: 9px;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

body.nightify-home .nx-category-card h3 {
    margin-bottom: 8px;

    color: #ffffff;

    font-family: "Space Grotesk", sans-serif;
    font-size: 22px;
}

body.nightify-home .nx-category-card p {
    margin: 0;

    color: #8d98b4;

    font-size: 12px;
    line-height: 1.6;
}

body.nightify-home .nx-category-card > i {
    position: absolute;
    right: 18px;
    bottom: 18px;

    color: #8792ae;

    font-size: 11px;
}


/* =========================
   PRODUCT TOOLS
========================= */

body.nightify-home .nx-products-section {
    position: relative;
}

body.nightify-home .nx-product-tools {
    display: flex;
    align-items: center;
}

body.nightify-home .nx-search-box {
    min-width: 250px;

    display: flex;
    align-items: center;

    gap: 9px;

    padding: 0 13px;

    color: #7783a2;
    background: rgba(255, 255, 255, 0.028);

    border: 1px solid var(--nx-line);
    border-radius: 11px;
}

body.nightify-home .nx-search-box input {
    width: 100%;
    height: 42px;

    color: #eef1fb;
    background: transparent;
    border: 0;
    outline: 0;

    font-size: 12px;
}

body.nightify-home .nx-search-box input::placeholder {
    color: #687491;
}

body.nightify-home .nx-filter-row {
    display: flex;
    flex-wrap: wrap;

    gap: 8px;

    margin-bottom: 30px;
}

body.nightify-home .nx-filter-row .filter-btn {
    min-height: 38px;

    padding: 8px 14px;

    color: #9ba6c1;
    background: rgba(255, 255, 255, 0.025);

    border: 1px solid var(--nx-line);
    border-radius: 10px;

    font-size: 11px;
    font-weight: 700;

    cursor: pointer;

    transition:
        color 0.2s ease,
        background 0.2s ease,
        border-color 0.2s ease;
}

body.nightify-home .nx-filter-row .filter-btn:hover,
body.nightify-home .nx-filter-row .filter-btn.active {
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            rgba(128, 82, 232, 0.92),
            rgba(74, 85, 211, 0.92)
        );

    border-color: rgba(177, 142, 255, 0.38);
}


/* =========================
   FIREBASE PRODUCT CARDS
========================= */

body.nightify-home #card-grid.card-grid {
    display: grid !important;
    grid-template-columns:
        repeat(3, minmax(0, 1fr)) !important;

    gap: 18px !important;
}

body.nightify-home #card-grid .firebase-product-card {
    position: relative !important;

    min-width: 0 !important;
    min-height: 430px !important;

    display: flex !important;
    flex-direction: column !important;

    padding: 18px 18px 74px !important;

    overflow: hidden !important;

    color: #ffffff !important;
    background:
        linear-gradient(
            150deg,
            rgba(20, 27, 51, 0.95),
            rgba(10, 14, 29, 0.96)
        ) !important;

    border: 1px solid var(--nx-line) !important;
    border-radius: 18px !important;

    box-shadow:
        0 18px 45px rgba(0, 0, 0, 0.22) !important;

    transition:
        transform 0.22s ease,
        border-color 0.22s ease,
        box-shadow 0.22s ease !important;
}

body.nightify-home #card-grid .firebase-product-card:hover {
    transform: translateY(-6px) !important;

    border-color:
        rgba(159, 119, 255, 0.38) !important;

    box-shadow:
        0 28px 60px rgba(0, 0, 0, 0.36),
        0 0 35px rgba(110, 77, 232, 0.08) !important;
}

body.nightify-home #card-grid .firebase-product-card::before {
    content: "" !important;

    position: absolute !important;
    top: -90px !important;
    right: -70px !important;

    width: 200px !important;
    height: 200px !important;

    background:
        radial-gradient(
            circle,
            rgba(132, 79, 235, 0.14),
            transparent 70%
        ) !important;

    pointer-events: none !important;
}

body.nightify-home #card-grid .firebase-product-top {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;

    margin-bottom: 18px !important;
}

body.nightify-home #card-grid .firebase-product-media {
    width: 100% !important;
    height: 180px !important;

    display: grid !important;
    place-items: center !important;

    overflow: hidden !important;

    color: #ffffff !important;
    background:
        radial-gradient(
            circle at 50% 35%,
            rgba(124, 80, 229, 0.19),
            transparent 46%
        ),
        #0c1121 !important;

    border: 1px solid rgba(255, 255, 255, 0.055) !important;
    border-radius: 14px !important;
}

body.nightify-home #card-grid .firebase-product-image {
    width: 100% !important;
    height: 100% !important;

    object-fit: cover !important;
}

body.nightify-home #card-grid .firebase-product-icon {
    font-size: 52px !important;

    filter: drop-shadow(0 12px 24px rgba(116, 79, 232, 0.24));
}

body.nightify-home #card-grid .firebase-best-badge {
    position: absolute !important;
    top: 28px !important;
    right: 28px !important;

    z-index: 12 !important;

    padding: 6px 9px !important;

    color: #ffffff !important;
    background:
        linear-gradient(
            135deg,
            var(--nx-pink),
            #bb3fe5
        ) !important;

    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    border-radius: 999px !important;

    font-size: 8px !important;
    font-weight: 900 !important;
    letter-spacing: 0.08em !important;

    box-shadow: 0 10px 25px rgba(220, 63, 161, 0.25) !important;
}

body.nightify-home #card-grid .firebase-product-content {
    flex: 1 !important;

    display: flex !important;
    flex-direction: column !important;
}

body.nightify-home #card-grid .firebase-product-content h3 {
    margin: 0 0 8px !important;

    color: #f7f8ff !important;

    font-family: "Space Grotesk", sans-serif !important;
    font-size: 18px !important;
    line-height: 1.25 !important;
}

body.nightify-home #card-grid .firebase-product-category {
    margin: 0 0 12px !important;

    color: #a982ff !important;

    font-size: 9px !important;
    font-weight: 800 !important;
    letter-spacing: 0.13em !important;
    text-transform: uppercase !important;
}

body.nightify-home #card-grid .firebase-product-description {
    margin: 0 !important;

    color: #8e99b5 !important;

    font-size: 12px !important;
    line-height: 1.65 !important;
}

body.nightify-home #card-grid .firebase-product-bottom {
    margin-top: auto !important;
    padding-top: 22px !important;
    padding-bottom: 0 !important;
}

body.nightify-home #card-grid .firebase-product-price {
    display: block !important;

    margin-bottom: 16px !important;

    color: #ffffff !important;

    font-family: "Space Grotesk", sans-serif !important;
    font-size: 21px !important;
}

body.nightify-home #card-grid .firebase-product-actions {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;

    gap: 8px !important;

    margin: 0 !important;
}

body.nightify-home #card-grid .firebase-order-btn,
body.nightify-home #card-grid .firebase-view-btn {
    min-height: 42px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    padding: 9px 10px !important;

    border-radius: 10px !important;

    font-size: 10px !important;
    font-weight: 800 !important;
    text-align: center !important;
    text-decoration: none !important;

    cursor: pointer !important;
}

body.nightify-home #card-grid .firebase-order-btn {
    color: #ffffff !important;
    background:
        linear-gradient(
            135deg,
            var(--nx-purple),
            #5e53e0
        ) !important;

    border: 1px solid rgba(255, 255, 255, 0.11) !important;

    box-shadow: 0 11px 24px rgba(103, 74, 224, 0.22) !important;
}

body.nightify-home #card-grid .firebase-view-btn {
    color: #d9dff0 !important;
    background: rgba(255, 255, 255, 0.035) !important;

    border: 1px solid var(--nx-line) !important;
}

body.nightify-home #card-grid .firebase-wishlist-btn {
    position: absolute !important;

    top: auto !important;
    right: 18px !important;
    bottom: 18px !important;
    left: auto !important;

    width: 42px !important;
    height: 42px !important;

    display: grid !important;
    place-items: center !important;

    margin: 0 !important;
    padding: 0 !important;

    color: #c8cfe1 !important;
    background: rgba(255, 255, 255, 0.04) !important;

    border: 1px solid var(--nx-line) !important;
    border-radius: 12px !important;

    font-size: 18px !important;
    line-height: 1 !important;

    cursor: pointer !important;
    z-index: 15 !important;

    transition:
        color 0.2s ease,
        background 0.2s ease,
        border-color 0.2s ease,
        transform 0.2s ease !important;
}

body.nightify-home #card-grid .firebase-wishlist-btn:hover,
body.nightify-home #card-grid .firebase-wishlist-btn.active {
    color: #ffffff !important;
    background:
        linear-gradient(
            135deg,
            var(--nx-pink),
            #b543e3
        ) !important;

    border-color: rgba(255, 255, 255, 0.12) !important;

    transform: translateY(-2px) !important;
}

body.nightify-home .products-loading-state,
body.nightify-home .products-empty-state,
body.nightify-home .loading-review {
    grid-column: 1 / -1 !important;

    min-height: 220px !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;

    gap: 12px !important;

    padding: 26px !important;

    color: #8f9ab6 !important;
    background: rgba(255, 255, 255, 0.018) !important;

    border: 1px dashed rgba(154, 169, 211, 0.15) !important;
    border-radius: 16px !important;

    text-align: center !important;
}

body.nightify-home .nx-loader {
    width: 28px;
    height: 28px;

    border: 3px solid rgba(158, 119, 255, 0.16);
    border-top-color: #9d73ff;
    border-radius: 50%;

    animation: nxLoader 0.8s linear infinite;
}

@keyframes nxLoader {
    to {
        transform: rotate(360deg);
    }
}


/* =========================
   PROCESS
========================= */

body.nightify-home .nx-centered-heading {
    max-width: 680px;

    margin: 0 auto 48px;

    text-align: center;
}

body.nightify-home .nx-process-grid {
    position: relative;

    display: grid;
    grid-template-columns: repeat(3, 1fr);

    gap: 16px;
}

body.nightify-home .nx-process-grid::before {
    content: "";

    position: absolute;
    top: 50px;
    right: 16.66%;
    left: 16.66%;

    height: 1px;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(150, 112, 246, 0.25),
            transparent
        );
}

body.nightify-home .nx-process-card {
    position: relative;

    padding: 24px;

    background:
        linear-gradient(
            145deg,
            rgba(20, 27, 50, 0.82),
            rgba(11, 15, 30, 0.88)
        );

    border: 1px solid var(--nx-line);
    border-radius: 18px;
}

body.nightify-home .nx-step-number {
    position: absolute;
    top: 18px;
    right: 18px;

    color: rgba(163, 126, 255, 0.42);

    font-family: "Space Grotesk", sans-serif;
    font-size: 13px;
    font-weight: 700;
}

body.nightify-home .nx-process-icon {
    width: 52px;
    height: 52px;

    display: grid;
    place-items: center;

    margin-bottom: 28px;

    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            rgba(143, 91, 244, 0.95),
            rgba(64, 121, 229, 0.95)
        );

    border-radius: 15px;

    box-shadow: 0 14px 30px rgba(87, 81, 218, 0.22);
}

body.nightify-home .nx-process-card h3 {
    margin-bottom: 9px;

    color: #ffffff;

    font-family: "Space Grotesk", sans-serif;
    font-size: 18px;
}

body.nightify-home .nx-process-card p {
    margin: 0;

    color: #8e99b6;

    font-size: 12px;
    line-height: 1.65;
}


/* =========================
   BENEFITS
========================= */

body.nightify-home .nx-benefits-grid {
    display: grid;
    grid-template-columns:
        minmax(0, 0.95fr)
        minmax(0, 1.05fr);

    align-items: center;

    gap: 82px;
}

body.nightify-home .nx-benefit-visual {
    position: relative;

    padding: 28px;
}

body.nightify-home .nx-benefit-visual::before {
    content: "";

    position: absolute;
    inset: 0;

    background:
        radial-gradient(
            circle,
            rgba(116, 78, 225, 0.2),
            transparent 67%
        );

    filter: blur(10px);
}

body.nightify-home .nx-dashboard-preview {
    position: relative;

    overflow: hidden;

    background:
        linear-gradient(
            150deg,
            #151d34,
            #0b1020
        );

    border: 1px solid rgba(158, 174, 216, 0.18);
    border-radius: 20px;

    box-shadow: var(--nx-shadow);

    transform:
        perspective(1100px)
        rotateY(5deg)
        rotateX(2deg);
}

body.nightify-home .nx-preview-top {
    min-height: 44px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    padding: 0 15px;

    background: rgba(255, 255, 255, 0.025);
    border-bottom: 1px solid rgba(255, 255, 255, 0.055);
}

body.nightify-home .nx-preview-top div {
    display: flex;

    gap: 5px;
}

body.nightify-home .nx-preview-top div span {
    width: 7px;
    height: 7px;

    background: #39435d;
    border-radius: 50%;
}

body.nightify-home .nx-preview-top div span:first-child {
    background: #df547b;
}

body.nightify-home .nx-preview-top div span:nth-child(2) {
    background: #eab94f;
}

body.nightify-home .nx-preview-top div span:last-child {
    background: #43c77a;
}

body.nightify-home .nx-preview-top small {
    color: #7f8aa7;
    font-size: 8px;
}

body.nightify-home .nx-preview-body {
    min-height: 330px;

    display: grid;
    grid-template-columns: 64px 1fr;
}

body.nightify-home .nx-preview-sidebar {
    display: grid;
    align-content: start;

    gap: 14px;

    padding: 20px 18px;

    background: rgba(7, 10, 20, 0.36);
    border-right: 1px solid rgba(255, 255, 255, 0.045);
}

body.nightify-home .nx-preview-sidebar span {
    width: 28px;
    height: 28px;

    background: #1d2741;
    border-radius: 8px;
}

body.nightify-home .nx-preview-sidebar span.active {
    background:
        linear-gradient(
            135deg,
            var(--nx-purple),
            #4e73dd
        );
}

body.nightify-home .nx-preview-content {
    padding: 24px 20px;
}

body.nightify-home .nx-preview-title {
    width: 42%;
    height: 12px;

    margin-bottom: 22px;

    background: #29334d;
    border-radius: 999px;
}

body.nightify-home .nx-preview-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);

    gap: 8px;

    margin-bottom: 24px;
}

body.nightify-home .nx-preview-stats span {
    height: 58px;

    background:
        linear-gradient(
            145deg,
            #1a2440,
            #131c33
        );

    border: 1px solid rgba(255, 255, 255, 0.04);
    border-radius: 10px;
}

body.nightify-home .nx-preview-order {
    display: grid;
    grid-template-columns: 42px 1fr auto;
    align-items: center;

    gap: 10px;

    margin-bottom: 10px;
    padding: 10px;

    background: rgba(255, 255, 255, 0.025);

    border: 1px solid rgba(255, 255, 255, 0.045);
    border-radius: 10px;
}

body.nightify-home .nx-preview-product {
    width: 42px;
    height: 42px;

    display: grid;
    place-items: center;

    overflow: hidden;

    color: #cdbaff;
    background: #0e1528;
    border-radius: 9px;
}

body.nightify-home .nx-preview-product img {
    width: 100%;
    height: 100%;

    object-fit: cover;
}

body.nightify-home .nx-preview-lines {
    display: grid;

    gap: 6px;
}

body.nightify-home .nx-preview-lines span {
    width: 60%;
    height: 6px;

    background: #2b3651;
    border-radius: 999px;
}

body.nightify-home .nx-preview-lines span:last-child {
    width: 36%;

    background: #222d47;
}

body.nightify-home .nx-preview-status {
    padding: 5px 8px;

    color: #e3c67a;
    background: rgba(222, 177, 71, 0.09);

    border: 1px solid rgba(222, 177, 71, 0.14);
    border-radius: 999px;

    font-size: 7px;
    font-weight: 800;
}

body.nightify-home .nx-preview-status.completed {
    color: #87e5aa;
    background: rgba(61, 205, 112, 0.08);

    border-color: rgba(61, 205, 112, 0.14);
}

body.nightify-home .nx-benefit-description {
    max-width: 590px;

    margin-bottom: 30px;

    color: var(--nx-muted);

    font-size: 14px;
    line-height: 1.75;
}

body.nightify-home .nx-benefit-list {
    display: grid;

    gap: 18px;

    margin-bottom: 30px;
}

body.nightify-home .nx-benefit-list > div {
    display: grid;
    grid-template-columns: 44px 1fr;

    gap: 14px;
}

body.nightify-home .nx-benefit-list > div > span {
    width: 44px;
    height: 44px;

    display: grid;
    place-items: center;

    color: #c9b6ff;
    background: rgba(131, 87, 229, 0.09);

    border: 1px solid rgba(157, 114, 248, 0.14);
    border-radius: 12px;
}

body.nightify-home .nx-benefit-list h3 {
    margin-bottom: 4px;

    color: #ffffff;

    font-size: 14px;
}

body.nightify-home .nx-benefit-list p {
    margin: 0;

    color: #8793af;

    font-size: 11px;
    line-height: 1.6;
}


/* =========================
   REVIEWS
========================= */

body.nightify-home .review-grid {
    display: grid !important;
    grid-template-columns:
        repeat(3, minmax(0, 1fr)) !important;

    gap: 16px !important;
}

body.nightify-home .review-card,
body.nightify-home .firebase-review-card {
    padding: 22px !important;

    color: #e9edf8 !important;
    background:
        linear-gradient(
            145deg,
            rgba(20, 27, 50, 0.88),
            rgba(10, 15, 30, 0.92)
        ) !important;

    border: 1px solid var(--nx-line) !important;
    border-radius: 16px !important;

    box-shadow: none !important;
}


/* =========================
   FAQ
========================= */

body.nightify-home .nx-faq-grid {
    display: grid;
    grid-template-columns: 0.8fr 1.2fr;

    gap: 80px;
}

body.nightify-home .nx-faq-intro > .nx-secondary-button {
    margin-top: 24px;
}

body.nightify-home .nx-faq-list {
    display: grid;

    gap: 10px;
}

body.nightify-home .nx-faq-list details {
    padding: 0 18px;

    background: rgba(255, 255, 255, 0.022);

    border: 1px solid var(--nx-line);
    border-radius: 13px;
}

body.nightify-home .nx-faq-list summary {
    min-height: 60px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 20px;

    color: #edf0fa;

    font-size: 13px;
    font-weight: 700;

    list-style: none;
    cursor: pointer;
}

body.nightify-home .nx-faq-list summary::-webkit-details-marker {
    display: none;
}

body.nightify-home .nx-faq-list summary i {
    color: #8e72e4;

    transition: transform 0.2s ease;
}

body.nightify-home .nx-faq-list details[open] summary i {
    transform: rotate(45deg);
}

body.nightify-home .nx-faq-list details p {
    margin: -2px 0 18px;

    color: #8995b1;

    font-size: 12px;
    line-height: 1.7;
}


/* =========================
   FINAL CTA
========================= */

body.nightify-home .nx-final-section {
    padding-top: 40px;
}

body.nightify-home .nx-final-card {
    position: relative;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 40px;

    padding: 44px;

    overflow: hidden;

    background:
        radial-gradient(
            circle at 90% 0%,
            rgba(233, 66, 157, 0.17),
            transparent 35%
        ),
        linear-gradient(
            135deg,
            rgba(75, 49, 143, 0.68),
            rgba(20, 27, 54, 0.9)
        );

    border: 1px solid rgba(171, 130, 255, 0.22);
    border-radius: 22px;

    box-shadow: var(--nx-shadow);
}

body.nightify-home .nx-final-card > div:not(.nx-final-glow) {
    position: relative;
    z-index: 2;
}

body.nightify-home .nx-final-card h2 {
    margin-bottom: 10px;
}

body.nightify-home .nx-final-card p:last-child {
    max-width: 620px;

    margin: 0;

    color: #b5bfd6;

    font-size: 13px;
    line-height: 1.7;
}

body.nightify-home .nx-final-actions {
    display: flex;
    flex-wrap: wrap;

    gap: 10px;
}


/* =========================
   FOOTER
========================= */

body.nightify-home .nx-footer {
    padding: 72px 0 24px;

    background: #070a14;

    border-top: 1px solid rgba(255, 255, 255, 0.045);
}

body.nightify-home .nx-footer-top {
    display: grid;
    grid-template-columns: 1.5fr repeat(3, 0.75fr);

    gap: 54px;

    padding-bottom: 48px;
}

body.nightify-home .nx-footer-brand p {
    max-width: 390px;

    margin: 18px 0;

    color: #7f8aa7;

    font-size: 12px;
    line-height: 1.7;
}

body.nightify-home .nx-social-links {
    display: flex;

    gap: 9px;
}

body.nightify-home .nx-social-links a {
    width: 38px;
    height: 38px;

    display: grid;
    place-items: center;

    color: #b9c2d8;
    background: rgba(255, 255, 255, 0.025);

    border: 1px solid var(--nx-line);
    border-radius: 10px;
}

body.nightify-home .nx-footer-column {
    display: grid;
    align-content: start;

    gap: 11px;
}

body.nightify-home .nx-footer-column h3 {
    margin-bottom: 6px;

    color: #edf0fa;

    font-size: 12px;
}

body.nightify-home .nx-footer-column a {
    color: #7f8aa7;

    font-size: 11px;

    transition: color 0.2s ease;
}

body.nightify-home .nx-footer-column a:hover {
    color: #ffffff;
}

body.nightify-home .nx-footer-bottom {
    display: flex;
    justify-content: space-between;

    gap: 20px;

    padding-top: 22px;

    color: #68738d;

    border-top: 1px solid rgba(255, 255, 255, 0.045);

    font-size: 10px;
}

body.nightify-home .nx-footer-bottom p {
    margin: 0;
}


/* =========================
   ORDER MODAL OVERRIDES
========================= */

body.nightify-home.order-modal-open {
    overflow: hidden;
}

body.nightify-home .order-modal {
    position: fixed !important;
    inset: 0 !important;

    display: none !important;
    align-items: center !important;
    justify-content: center !important;

    padding: 18px !important;

    z-index: 10000 !important;
}

body.nightify-home .order-modal.open,
body.nightify-home .order-modal.active {
    display: flex !important;
}

body.nightify-home .order-modal-overlay {
    position: absolute !important;
    inset: 0 !important;

    background: rgba(4, 6, 15, 0.86) !important;

    backdrop-filter: blur(10px) !important;
}

body.nightify-home .order-modal-card {
    position: relative !important;
    z-index: 2 !important;

    width: min(100%, 580px) !important;
    max-height: calc(100vh - 36px) !important;

    overflow-y: auto !important;

    padding: 30px !important;

    color: #eef1fb !important;
    background:
        linear-gradient(
            150deg,
            #151d34,
            #0b1020
        ) !important;

    border: 1px solid rgba(161, 176, 216, 0.18) !important;
    border-radius: 18px !important;

    box-shadow: 0 40px 110px rgba(0, 0, 0, 0.65) !important;
}

body.nightify-home .order-modal-card h2 {
    color: #ffffff !important;

    font-family: "Space Grotesk", sans-serif !important;
}

body.nightify-home .order-label {
    color: #a982ff !important;
}

body.nightify-home .order-modal-close {
    color: #ffffff !important;
    background: rgba(255, 255, 255, 0.04) !important;

    border: 1px solid var(--nx-line) !important;
}

body.nightify-home #orderForm input,
body.nightify-home #orderForm select,
body.nightify-home #orderForm textarea {
    color: #eef1fb !important;
    background: rgba(255, 255, 255, 0.035) !important;

    border-color: var(--nx-line) !important;
}

body.nightify-home .place-order-btn {
    color: #ffffff !important;
    background:
        linear-gradient(
            135deg,
            var(--nx-purple),
            #5e53e0
        ) !important;

    border-color: rgba(255, 255, 255, 0.11) !important;
}


/* =========================
   REVEAL
========================= */

body.nightify-home .nx-reveal {
    opacity: 0;

    transform: translateY(24px);

    transition:
        opacity 0.65s ease,
        transform 0.65s ease;
}

body.nightify-home .nx-reveal.is-visible {
    opacity: 1;

    transform: translateY(0);
}


/* =========================
   RESPONSIVE
========================= */

@media (max-width: 1050px) {
    body.nightify-home .nx-nav {
        position: fixed;
        top: 72px;
        right: 20px;
        left: 20px;

        display: none;
        align-items: stretch;
        flex-direction: column;

        gap: 0;

        padding: 12px;

        background: rgba(11, 15, 30, 0.97);

        border: 1px solid var(--nx-line);
        border-radius: 14px;

        box-shadow: var(--nx-shadow);
    }

    body.nightify-home .nx-nav.open {
        display: flex;
    }

    body.nightify-home .nx-nav a {
        padding: 12px;

        border-radius: 9px;
    }

    body.nightify-home .nx-nav a.active::after {
        display: none;
    }

    body.nightify-home .nx-nav a:hover,
    body.nightify-home .nx-nav a.active {
        background: rgba(255, 255, 255, 0.035);
    }

    body.nightify-home .nx-nav-toggle {
        display: grid;
    }

    body.nightify-home .nx-hero-grid {
        grid-template-columns: 1fr;

        gap: 44px;
    }

    body.nightify-home .nx-hero-copy {
        max-width: 760px;
    }

    body.nightify-home .nx-hero-visual {
        width: min(640px, 100%);

        margin-inline: auto;
    }

    body.nightify-home .nx-category-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    body.nightify-home #card-grid.card-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr)) !important;
    }

    body.nightify-home .nx-benefits-grid {
        grid-template-columns: 1fr;

        gap: 58px;
    }

    body.nightify-home .nx-benefit-visual {
        max-width: 700px;

        margin-inline: auto;
    }

    body.nightify-home .nx-footer-top {
        grid-template-columns: 1.4fr repeat(3, 0.7fr);

        gap: 28px;
    }
}

@media (max-width: 760px) {
    body.nightify-home .nx-shell {
        width: min(100% - 28px, 1180px);
    }

    body.nightify-home .nx-announcement-inner {
        justify-content: flex-start;

        padding-right: 36px;
    }

    body.nightify-home .nx-announcement a {
        display: none;
    }

    body.nightify-home .nx-header-inner {
        min-height: 64px;
    }

    body.nightify-home .nx-login-link {
        display: none;
    }

    body.nightify-home .nx-primary-small {
        padding: 9px 12px;
    }

    body.nightify-home .nx-nav {
        top: 64px;
    }

    body.nightify-home .nx-hero {
        min-height: auto;

        padding-top: 70px;
    }

    body.nightify-home .nx-hero h1 {
        font-size: clamp(44px, 13vw, 64px);
    }

    body.nightify-home .nx-hero-description {
        font-size: 15px;
    }

    body.nightify-home .nx-hero-visual {
        min-height: 500px;
    }

    body.nightify-home .nx-orbit-large {
        width: 430px;
        height: 430px;
    }

    body.nightify-home .nx-orbit-small {
        width: 330px;
        height: 330px;
    }

    body.nightify-home .nx-showcase-card {
        width: min(390px, 86%);
    }

    body.nightify-home .nx-logo-stage {
        height: 290px;
    }

    body.nightify-home .nx-logo-stage img {
        width: 230px;
        height: 230px;
    }

    body.nightify-home .nx-float-money {
        left: 0;
    }

    body.nightify-home .nx-float-level {
        right: 0;
    }

    body.nightify-home .nx-stat-strip {
        grid-template-columns: repeat(2, 1fr);
    }

    body.nightify-home .nx-stat-strip div:nth-child(2)::after {
        display: none;
    }

    body.nightify-home .nx-stat-strip div:nth-child(-n + 2) {
        border-bottom: 1px solid var(--nx-line);
    }

    body.nightify-home .nx-section {
        padding: 76px 0;
    }

    body.nightify-home .nx-section-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    body.nightify-home .nx-products-heading {
        margin-bottom: 24px;
    }

    body.nightify-home .nx-product-tools,
    body.nightify-home .nx-search-box {
        width: 100%;
    }

    body.nightify-home .nx-category-grid,
    body.nightify-home .nx-process-grid,
    body.nightify-home .review-grid,
    body.nightify-home .nx-faq-grid {
        grid-template-columns: 1fr !important;
    }

    body.nightify-home .nx-process-grid::before {
        display: none;
    }

    body.nightify-home .nx-faq-grid {
        gap: 36px;
    }

    body.nightify-home .nx-final-card {
        align-items: flex-start;
        flex-direction: column;

        padding: 30px;
    }

    body.nightify-home .nx-footer-top {
        grid-template-columns: repeat(2, 1fr);
    }

    body.nightify-home .nx-footer-brand {
        grid-column: 1 / -1;
    }
}

@media (max-width: 560px) {
    body.nightify-home .nx-header-actions .user-menu {
        gap: 5px;
    }

    body.nightify-home .nx-user-link span:last-child,
    body.nightify-home .nx-logout-button {
        display: none;
    }

    body.nightify-home .nx-hero-actions,
    body.nightify-home .nx-final-actions {
        width: 100%;
    }

    body.nightify-home .nx-hero-actions a,
    body.nightify-home .nx-final-actions a {
        width: 100%;
    }

    body.nightify-home .nx-hero-visual {
        min-height: 420px;
    }

    body.nightify-home .nx-orbit-large {
        width: 340px;
        height: 340px;
    }

    body.nightify-home .nx-orbit-small {
        width: 260px;
        height: 260px;
    }

    body.nightify-home .nx-showcase-card {
        width: min(330px, 86%);

        padding: 12px;
    }

    body.nightify-home .nx-logo-stage {
        height: 240px;
    }

    body.nightify-home .nx-logo-stage img {
        width: 190px;
        height: 190px;
    }

    body.nightify-home .nx-floating-card {
        min-width: 128px;

        padding: 8px;
    }

    body.nightify-home .nx-floating-card > span {
        width: 32px;
        height: 32px;
    }

    body.nightify-home .nx-float-money {
        top: 56px;
    }

    body.nightify-home .nx-float-level {
        bottom: 95px;
    }

    body.nightify-home .nx-float-unlock {
        bottom: 24px;
    }

    body.nightify-home .nx-category-grid {
        grid-template-columns: 1fr;
    }

    body.nightify-home #card-grid.card-grid {
        grid-template-columns: 1fr !important;
    }

    body.nightify-home #card-grid .firebase-product-card {
        min-height: 410px !important;
    }

    body.nightify-home .nx-preview-body {
        grid-template-columns: 48px 1fr;
    }

    body.nightify-home .nx-preview-sidebar {
        padding-inline: 10px;
    }

    body.nightify-home .nx-preview-sidebar span {
        width: 26px;
        height: 26px;
    }

    body.nightify-home .nx-preview-content {
        padding: 18px 12px;
    }

    body.nightify-home .nx-footer-top {
        grid-template-columns: 1fr;
    }

    body.nightify-home .nx-footer-brand {
        grid-column: auto;
    }

    body.nightify-home .nx-footer-bottom {
        flex-direction: column;
    }

    body.nightify-home .order-modal-card {
        padding: 24px 16px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.nightify-home *,
    body.nightify-home *::before,
    body.nightify-home *::after {
        scroll-behavior: auto !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}
