/* ═══════════════════════════════════════════════════
   Android App CTA Section
   ═══════════════════════════════════════════════════ */
.nv-app-section { padding: 0; }
.nv-app-inner {
    display: flex; align-items: stretch; gap: 0;
    background: linear-gradient(135deg, #0d1b6e 0%, #1565c0 55%, #0288d1 100%);
    border-radius: 24px; padding: 0;
    position: relative; overflow: hidden;
}
.nv-app-blob {
    position: absolute; border-radius: 50%; pointer-events: none;
}
.nv-app-blob--1 {
    width: 340px; height: 340px; top: -100px; left: 30%;
    background: radial-gradient(circle, rgba(255,255,255,0.07) 0%, transparent 70%);
}
.nv-app-blob--2 {
    width: 220px; height: 220px; bottom: -80px; left: 10%;
    background: radial-gradient(circle, rgba(165,214,167,0.1) 0%, transparent 70%);
}
/* content side */
.nv-app-content { flex: 0 0 58%; max-width: 58%; position: relative; z-index: 2; padding: 44px 40px 44px 56px; }
.nv-app-badge {
    display: inline-flex; align-items: center; gap: 6px;
    font-size: 11px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase;
    color: #a5d6a7; background: rgba(165,214,167,0.14);
    border: 1px solid rgba(165,214,167,0.35); border-radius: 20px;
    padding: 4px 10px; margin-bottom: 14px;
}
.nv-app-badge i { font-size: 12px; }
.nv-app-title {
    font-size: 32px; font-weight: 800; color: #fff;
    line-height: 1.2; margin: 0 0 10px; letter-spacing: -0.5px;
}
.nv-app-desc {
    font-size: 14px; color: rgba(255,255,255,0.7);
    margin: 0 0 18px; line-height: 1.65; max-width: 420px;
}
.nv-app-features {
    list-style: none; padding: 0; margin: 0 0 22px;
    display: flex; flex-direction: column; gap: 8px;
}
.nv-app-features li {
    margin: 0 !important;
    display: flex; align-items: center; gap: 9px;
    font-size: 13px; color: rgba(255,255,255,0.82);
}
.nv-app-features li i { color: #a5d6a7; font-size: 14px; flex-shrink: 0; }
/* Google Play button */
.nv-gplay-btn {
    display: inline-flex; align-items: center; gap: 10px;
    background: #fff; border-radius: 12px; padding: 10px 18px;
    text-decoration: none; transition: transform 0.2s, box-shadow 0.2s;
    box-shadow: 0 4px 16px rgba(0,0,0,0.22);
}
.nv-gplay-btn:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(0,0,0,0.32); }
.nv-gplay-btn__icon { width: 22px; height: 24px; flex-shrink: 0; fill: #01875f; }
.nv-gplay-btn__texts { display: flex; flex-direction: column; line-height: 1.25; }
.nv-gplay-btn__sub { font-size: 10px; color: #555; font-weight: 400; }
.nv-gplay-btn__main { font-size: 15px; font-weight: 700; color: #111; letter-spacing: -0.2px; }
/* visual / image side */
.nv-app-visual {
    flex: 0 0 48%; max-width: 48%; position: relative; z-index: 2;
    display: flex; align-items: center; justify-content: center;
    padding: 24px 20px;
}
.nv-app-content { flex: 0 0 52%; max-width: 52%; }
.nv-app-img {
    width: 100%; height: auto;
    display: block; position: relative;
    border-radius: 16px;
    filter: drop-shadow(0 16px 40px rgba(0,0,0,0.5));
}
.nv-app-img-glow { display: none; }
@media (max-width: 991px) {
    .nv-app-content { flex: 0 0 52%; max-width: 52%; padding: 36px 28px 36px 40px; }
    .nv-app-visual { flex: 0 0 48%; max-width: 48%; padding: 20px 16px; }
    .nv-app-title { font-size: 24px; }
}
@media (max-width: 767px) {
    .nv-app-inner { flex-direction: column; }
    .nv-app-content { flex: unset; max-width: 100%; padding: 32px 24px; text-align: center; }
    .nv-app-visual { flex: unset; max-width: 100%; padding: 0 24px 28px; }
    .nv-app-title { font-size: 24px; }
    .nv-app-desc { max-width: 100%; }
    .nv-app-features { align-items: center; }
    .nv-gplay-btn { margin: 0 auto; }
}

/* ═══════════════════════════════════════════════════
   NepVox Hero v3 — Immersive AI Studio Banner
   ═══════════════════════════════════════════════════ */

/* Home How to use – video section (kept) */
.home-how-to-video .home-video-wrapper {
    border: 1px solid var(--border-color, #e5e7eb);
    background: var(--bg-color, #fff);
}
[data-theme="dark"] .home-how-to-video .home-video-wrapper {
    border-color: var(--border-color);
}

/* Home Popular languages – marquee banner */
/* noscript fallback — hidden visually, readable by crawlers without JS */
.lang-noscript-list {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
}

/* Homepage trust bar — press, stats, community validation */
.nv-trust-bar {
    padding: 2.5rem 0;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.02) 0%, transparent 100%);
}
[data-theme="light"] .nv-trust-bar {
    border-color: rgba(15, 23, 42, 0.08);
    background: linear-gradient(180deg, rgba(15, 23, 42, 0.02) 0%, transparent 100%);
}
.nv-trust-bar__lead {
    margin: 0 auto 1.5rem;
    max-width: 42rem;
    text-align: center;
    font-size: 1.05rem;
    line-height: 1.65;
    color: var(--text-secondary, rgba(255, 255, 255, 0.82));
}
[data-theme="light"] .nv-trust-bar__lead {
    color: #475569;
}
.nv-trust-bar__label {
    margin: 0 0 1rem;
    text-align: center;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--text-muted, rgba(255, 255, 255, 0.5));
}
.nv-trust-bar__label--sub {
    margin-top: 1.75rem;
}
.nv-press-logos {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 1.5rem 2.5rem;
    margin: 0 0 1.75rem;
    padding: 0;
    list-style: none;
}
.nv-press-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 2.5rem;
    opacity: 0.72;
    filter: grayscale(1);
    transition: opacity 0.2s ease, filter 0.2s ease;
    text-decoration: none;
}
.nv-press-logo:hover {
    opacity: 1;
    filter: grayscale(0);
}
.nv-press-logo img {
    max-width: 8.75rem;
    max-height: 2.5rem;
    width: auto;
    height: auto;
    object-fit: contain;
}
.nv-press-wordmark {
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: -0.02em;
    color: var(--text-primary, #f8fafc);
    white-space: nowrap;
}
[data-theme="light"] .nv-press-wordmark {
    color: #0f172a;
}
.nv-trust-stats {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: center;
    gap: 1.25rem 2rem;
    margin: 0;
    padding: 0;
    list-style: none;
}
.nv-trust-stat {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    min-width: 7rem;
}
.nv-trust-stat__value {
    font-size: 1.35rem;
    font-weight: 700;
    line-height: 1.2;
    color: var(--text-primary, #f8fafc);
}
.nv-trust-stat__value .fa-star {
    color: #fbbf24;
    font-size: 0.95rem;
}
.nv-trust-stat__value .nv-star-muted {
    color: rgba(255, 255, 255, 0.2);
}
[data-theme="light"] .nv-trust-stat__value {
    color: #0f172a;
}
.nv-trust-stat__label {
    margin-top: 0.35rem;
    font-size: 0.8125rem;
    color: var(--text-secondary, rgba(255, 255, 255, 0.65));
}
[data-theme="light"] .nv-trust-stat__label {
    color: #64748b;
}
.nv-trust-community {
    margin-top: 0.25rem;
}
.nv-trust-social {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.75rem 1rem;
    margin: 0;
    padding: 0;
    list-style: none;
}
.nv-trust-social__link {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: rgba(255, 255, 255, 0.04);
    color: var(--text-primary, #f8fafc);
    font-size: 0.875rem;
    font-weight: 600;
    text-decoration: none;
    transition: border-color 0.2s ease, background 0.2s ease;
}
.nv-trust-social__link:hover {
    border-color: rgba(139, 92, 246, 0.45);
    background: rgba(139, 92, 246, 0.12);
    color: inherit;
}
[data-theme="light"] .nv-trust-social__link {
    border-color: rgba(15, 23, 42, 0.1);
    background: rgba(15, 23, 42, 0.03);
    color: #0f172a;
}
.nv-trust-bar__footnote {
    margin: 1.5rem auto 0;
    max-width: 40rem;
    text-align: center;
    font-size: 0.9375rem;
    line-height: 1.6;
    color: var(--text-secondary, rgba(255, 255, 255, 0.7));
}
.nv-trust-bar__footnote a {
    color: var(--color-primary, #8b5cf6);
    text-decoration: underline;
    text-underline-offset: 3px;
}
@media (max-width: 575px) {
    .nv-trust-bar {
        padding: 2rem 0;
    }
    .nv-trust-stats {
        gap: 1rem;
    }
    .nv-trust-stat {
        min-width: calc(50% - 1rem);
    }
}

/* Homepage blog hub — link to /blogs index */
.home-blog-hub-cta {
    margin-top: 2.5rem;
}
.home-blog-hub-cta__text {
    max-width: 36rem;
    margin: 0 auto 1.25rem;
    font-size: 1rem;
    line-height: 1.65;
    color: var(--text-secondary, rgba(255, 255, 255, 0.78));
}
[data-theme="light"] .home-blog-hub-cta__text {
    color: #475569;
}
.home-blog-view-all {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
}

.home-popular-languages .popular-lang-link { text-decoration: none; color: inherit; }
.home-popular-languages .brand-lang { padding: 0; overflow: hidden; }
.home-popular-languages .brand-lang .fi {
    display: block; width: 48px; height: 48px;
    padding: 0 !important; border-radius: 8px;
    background-size: cover; background-position: center;
}

/* Marquee wrapper */
.lang-marquee-outer {
    overflow: hidden;
    position: relative;
    mask-image: linear-gradient(to right, transparent 0%, black 8%, black 92%, transparent 100%);
    -webkit-mask-image: linear-gradient(to right, transparent 0%, black 8%, black 92%, transparent 100%);
}
.lang-marquee-track {
    display: flex;
    gap: 16px;
    width: max-content;
    padding: 8px 0;
}
.lang-marquee-track--ltr  { animation: marquee-ltr 28s linear infinite; }
.lang-marquee-track--rtl  { animation: marquee-rtl 24s linear infinite; }
.lang-marquee-outer:hover .lang-marquee-track { animation-play-state: paused; }

@keyframes marquee-ltr {
    from { transform: translateX(0); }
    to   { transform: translateX(-50%); }
}
@keyframes marquee-rtl {
    from { transform: translateX(-50%); }
    to   { transform: translateX(0); }
}

@media (prefers-reduced-motion: reduce) {
    .lang-marquee-track--ltr,
    .lang-marquee-track--rtl {
        animation: none;
    }
    .lang-marquee-track {
        flex-wrap: wrap;
        width: auto;
        justify-content: center;
    }
}

/* Individual card in marquee */
.lang-marquee-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 18px 24px;
    border-radius: 14px;
    flex-shrink: 0;
    min-width: 120px;
    text-decoration: none;
    color: inherit;
    transition: transform 0.22s ease, box-shadow 0.22s ease;
    border: 1px solid rgba(255,255,255,0.07);
    background: rgba(255,255,255,0.04);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
}
[data-theme="light"] .lang-marquee-card {
    background: rgba(0,0,0,0.03);
    border-color: rgba(0,0,0,0.08);
}
.lang-marquee-card:hover {
    transform: translateY(-4px) scale(1.04);
    box-shadow: 0 8px 28px rgba(139,92,246,0.22);
    border-color: rgba(139,92,246,0.45);
    color: inherit;
}
.lang-marquee-card .fi {
    display: block; width: 44px; height: 44px;
    border-radius: 8px;
    background-size: cover; background-position: center;
}
.lang-marquee-card .lang-name {
    font-size: 13px; font-weight: 600;
    white-space: nowrap;
}

/* ── Section ── */
.nv-hero {
    position: relative;
    overflow: hidden;
    background: #060d1a;
    min-height: 100vh;
    display: flex;
    align-items: center;
    padding: 100px 0 90px;
}
[data-theme="light"] .nv-hero { background: #f0f4ff; }

.nv-hero::before {
    content: '';
    position: absolute; inset: 0;
    background:
        radial-gradient(ellipse 70% 60% at 10% 20%, rgba(37,99,235,0.18) 0%, transparent 65%),
        radial-gradient(ellipse 50% 50% at 90% 80%, rgba(139,92,246,0.15) 0%, transparent 65%),
        radial-gradient(ellipse 40% 40% at 50% 0%,  rgba(236,72,153,0.10) 0%, transparent 60%);
    pointer-events: none;
}

/* Dot grid */
.nv-hero-grid {
    position: absolute; inset: 0;
    background-image: radial-gradient(circle, rgba(255,255,255,0.04) 1px, transparent 1px);
    background-size: 32px 32px;
    pointer-events: none; opacity: 0.6;
}
[data-theme="light"] .nv-hero-grid {
    background-image: radial-gradient(circle, rgba(0,0,0,0.05) 1px, transparent 1px);
}

/* ── Floating Orbs ── */
.nv-hero-orb {
    position: absolute; border-radius: 50%;
    filter: blur(80px); pointer-events: none; will-change: transform;
}
.nv-hero-orb--1 {
    top: -120px; left: -80px; width: 500px; height: 500px;
    background: radial-gradient(circle, rgba(37,99,235,0.3), transparent 70%);
    animation: nvOrbDrift 16s ease-in-out infinite;
}
.nv-hero-orb--2 {
    bottom: -100px; right: -60px; width: 580px; height: 580px;
    background: radial-gradient(circle, rgba(139,92,246,0.25), transparent 70%);
    animation: nvOrbDrift 20s ease-in-out infinite reverse;
}
.nv-hero-orb--3 {
    top: 40%; left: 40%; width: 300px; height: 300px;
    background: radial-gradient(circle, rgba(236,72,153,0.12), transparent 70%);
    animation: nvOrbDrift 12s ease-in-out infinite 4s;
}
@keyframes nvOrbDrift {
    0%,100% { transform: translate(0,0) scale(1); }
    30%      { transform: translate(30px,-20px) scale(1.05); }
    60%      { transform: translate(-20px,30px) scale(0.95); }
}

/* ── Content ── */
.nv-hero-content { position: relative; z-index: 2; }
.nv-hero-row { min-height: 100%; gap: 40px 0; }

/* Badge */
.nv-hero-badge {
    display: inline-flex; align-items: center; gap: 8px;
    position: relative; overflow: hidden;
    background: linear-gradient(135deg, rgba(37,99,235,0.15), rgba(139,92,246,0.15));
    border: 1px solid rgba(99,102,241,0.35);
    border-radius: 100px; padding: 8px 18px 8px 12px;
    font-size: 13px; font-weight: 700; letter-spacing: 0.5px;
    color: rgba(167,183,255,0.95); text-transform: uppercase;
    margin-bottom: 28px; backdrop-filter: blur(10px);
    animation: nvBadgePop 0.6s cubic-bezier(0.34,1.56,0.64,1) both;
}
[data-theme="light"] .nv-hero-badge {
    background: linear-gradient(135deg, rgba(37,99,235,0.08), rgba(139,92,246,0.08));
    border-color: rgba(99,102,241,0.3); color: #3b4fd8;
}
@keyframes nvBadgePop {
    from { opacity: 0; transform: translateY(10px) scale(0.9); }
    to   { opacity: 1; transform: translateY(0) scale(1); }
}
.nv-hero-badge-dot {
    width: 8px; height: 8px; border-radius: 50%; flex-shrink: 0;
    background: linear-gradient(135deg, #3b82f6, #8b5cf6);
    animation: nvDotPulse 2s ease-in-out infinite;
}
@keyframes nvDotPulse {
    0%,100% { box-shadow: 0 0 0 0 rgba(99,102,241,0.6); }
    50%      { box-shadow: 0 0 0 5px rgba(99,102,241,0); }
}
.nv-hero-badge-glow {
    position: absolute; top: 0; left: -100%; width: 100%; height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.15), transparent);
    animation: nvBadgeShine 3s ease-in-out infinite 2s;
}
@keyframes nvBadgeShine {
    0%       { left: -100%; }
    50%,100% { left: 200%; }
}
.nv-hero-badge-text-mobile { display: none !important; }

/* Headline */
.nv-hero-title {
    font-size: clamp(34px, 4.1vw, 54px);
    font-weight: 800; line-height: 1.16; letter-spacing: -1.1px;
    color: #f1f5ff; margin: 0 0 20px;
    animation: nvFadeUp 0.7s ease both 0.2s;
}
[data-theme="light"] .nv-hero-title { color: #0f172a; }
.nv-hero-title-grad {
    background: linear-gradient(135deg, #60a5fa 0%, #a78bfa 50%, #f472b6 100%);
    -webkit-background-clip: text; -webkit-text-fill-color: transparent;
    background-clip: text; background-size: 200% 200%;
    animation: nvGradShift 6s ease infinite;
}
[data-theme="light"] .nv-hero-title-grad {
    background: linear-gradient(135deg, #2563eb 0%, #7c3aed 50%, #db2777 100%);
    -webkit-background-clip: text; background-clip: text;
    -webkit-text-fill-color: transparent;
}
@keyframes nvGradShift {
    0%,100% { background-position: 0% 50%; }
    50%      { background-position: 100% 50%; }
}
@keyframes nvFadeUp {
    from { opacity: 0; transform: translateY(24px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* Description */
.nv-hero-desc {
    font-size: 17px; line-height: 1.7; color: rgba(203,213,225,0.8);
    margin: 0 0 28px; max-width: 520px;
    animation: nvFadeUp 0.7s ease both 0.35s;
}
.nv-hero-desc--mob  { display: none !important; }
.nv-hero-desc--desk { display: block !important; }
[data-theme="light"] .nv-hero-desc { color: #475569; }
.nv-hero-desc strong { color: #93c5fd; font-weight: 700; }
[data-theme="light"] .nv-hero-desc strong { color: #2563eb; }

/* Stats */
.nv-hero-stats {
    display: flex; align-items: center; gap: 24px;
    margin-bottom: 32px; animation: nvFadeUp 0.7s ease both 0.45s;
}
.nv-stat { display: flex; flex-direction: column; gap: 2px; }
.nv-stat-num {
    font-size: 26px; font-weight: 800; line-height: 1;
    background: linear-gradient(135deg, #60a5fa, #a78bfa);
    -webkit-background-clip: text; -webkit-text-fill-color: transparent;
    background-clip: text;
}
[data-theme="light"] .nv-stat-num {
    background: linear-gradient(135deg, #2563eb, #7c3aed);
    -webkit-background-clip: text; background-clip: text;
    -webkit-text-fill-color: transparent;
}
.nv-stat-lbl {
    font-size: 12px; font-weight: 600; text-transform: uppercase;
    letter-spacing: 0.5px; color: rgba(148,163,184,0.75);
}
[data-theme="light"] .nv-stat-lbl { color: #64748b; }
.nv-stat-sep {
    width: 1px; height: 36px; flex-shrink: 0;
    background: linear-gradient(to bottom, transparent, rgba(99,102,241,0.4), transparent);
}

/* CTA Buttons */
.nv-hero-btns {
    display: flex; gap: 14px; flex-wrap: wrap;
    margin-bottom: 32px; animation: nvFadeUp 0.7s ease both 0.55s;
}
.nv-btn-primary {
    position: relative; overflow: hidden;
    display: inline-flex; align-items: center; gap: 10px;
    padding: 15px 30px;
    background: linear-gradient(135deg, #2563eb 0%, #7c3aed 50%, #db2777 100%);
    background-size: 200% 200%;
    border-radius: 50px; font-size: 15px; font-weight: 700;
    color: #fff !important; text-decoration: none; border: none;
    box-shadow: 0 8px 30px rgba(37,99,235,0.4), 0 4px 15px rgba(124,58,237,0.3);
    transition: all 0.3s ease; animation: nvGradShift 4s ease infinite;
}
.nv-btn-primary:hover {
    transform: translateY(-2px); color: #fff !important;
    box-shadow: 0 14px 40px rgba(37,99,235,0.5), 0 6px 20px rgba(124,58,237,0.4);
}
.nv-btn-shine {
    position: absolute; top: 0; left: -100%;
    width: 60%; height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.25), transparent);
    transform: skewX(-20deg); transition: left 0.5s ease;
}
.nv-btn-primary:hover .nv-btn-shine { left: 150%; }
.nv-btn-ghost {
    display: inline-flex; align-items: center; gap: 10px;
    padding: 14px 28px;
    background: rgba(99,102,241,0.06);
    border: 1.5px solid rgba(99,102,241,0.4);
    border-radius: 50px; font-size: 15px; font-weight: 700;
    color: rgba(167,183,255,0.9) !important; text-decoration: none;
    transition: all 0.3s ease; backdrop-filter: blur(8px);
}
.nv-btn-ghost:hover {
    border-color: rgba(99,102,241,0.7);
    background: rgba(99,102,241,0.14);
    transform: translateY(-2px); color: #fff !important;
}
[data-theme="light"] .nv-btn-ghost {
    border-color: rgba(37,99,235,0.3); color: #1d4ed8 !important;
    background: rgba(37,99,235,0.05);
}
[data-theme="light"] .nv-btn-ghost:hover {
    border-color: rgba(37,99,235,0.6);
    background: rgba(37,99,235,0.1); color: #1d4ed8 !important;
}

/* Trust row */
.nv-hero-trust {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 12px;
    animation: nvFadeUp 0.7s ease both 0.65s;
}
.nv-trust-avatars { display: flex; align-items: center; }
.nv-avatar {
    width: 32px; height: 32px; border-radius: 50%;
    border: 2px solid #0d1a2e; margin-left: -8px;
    display: inline-flex; align-items: center; justify-content: center;
    font-size: 11px; font-weight: 800; color: #fff; flex-shrink: 0;
    overflow: hidden;
}
.nv-avatar img { width: 100%; height: 100%; object-fit: cover; display: block; }
.nv-avatar:first-child { margin-left: 0; }
.nv-avatar--more { background: rgba(99,102,241,0.3) !important; font-size: 14px; }
[data-theme="light"] .nv-avatar { border-color: #f0f4ff; }
.nv-trust-text { font-size: 13px; color: rgba(148,163,184,0.8); line-height: 1.4; }
[data-theme="light"] .nv-trust-text { color: #64748b; }
.nv-trust-text strong { color: rgba(203,213,225,0.95); }
[data-theme="light"] .nv-trust-text strong { color: #1e293b; }

.nv-stat-citation {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 0.5rem 0.75rem;
    width: 100%;
    font-size: 0.6875rem;
    line-height: 1.4;
    color: rgba(148, 163, 184, 0.75);
}
.nv-stat-citation--compact {
    width: auto;
    flex: 1 1 100%;
    margin-top: 0.15rem;
}
.nv-stat-citation__text--compact {
    font-size: 0.625rem;
}
[data-theme="light"] .nv-stat-citation {
    color: #94a3b8;
}
.nv-trustpilot-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.2rem 0.55rem;
    border-radius: 999px;
    border: 1px solid rgba(0, 182, 122, 0.35);
    background: rgba(0, 182, 122, 0.1);
    color: #00b67a;
    font-size: 0.6875rem;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
}
.nv-trustpilot-badge:hover {
    background: rgba(0, 182, 122, 0.18);
    color: #00b67a;
}
.nv-trustpilot-badge__stars {
    letter-spacing: -0.05em;
    font-size: 0.625rem;
}
.nv-trust-bar .nv-stat-citation {
    margin: -0.5rem auto 1.25rem;
    max-width: 40rem;
}

/* Homepage long-form SEO intro */
.nv-seo-intro-section {
    padding: 16px 0 52px;
}
.nv-seo-intro {
    margin: 0 auto;
    padding: 0 8px;
}
.nv-seo-intro-kicker {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #a5b4fc;
    margin: 0 0 10px;
}
.nv-seo-intro-kicker::before {
    content: '';
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: linear-gradient(135deg, #60a5fa, #a78bfa);
}
.nv-seo-intro-title {
    font-size: clamp(26px, 3.1vw, 38px);
    line-height: 1.2;
    letter-spacing: -0.7px;
    margin: 0 0 18px;
    color: #e2e8f0;
    font-weight: 700;
    max-width: 860px;
}
.nv-seo-intro-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 26px;
}
.nv-seo-intro-copy {
    margin: 0;
    color: rgba(203, 213, 225, 0.86);
    line-height: 1.8;
    font-size: 15.5px;
}
.nv-seo-intro-copy--lead {
    color: rgba(226, 232, 240, 0.95);
}
[data-theme="light"] .nv-seo-intro {
    padding: 0 8px;
}
[data-theme="light"] .nv-seo-intro-kicker { color: #4f46e5; }
[data-theme="light"] .nv-seo-intro-title { color: #0f172a; }
[data-theme="light"] .nv-seo-intro-copy { color: #475569; }
[data-theme="light"] .nv-seo-intro-copy--lead { color: #334155; }

/* ── Visual Side ── */
.nv-hero-visual {
    position: relative; z-index: 2;
    display: flex; justify-content: center; align-items: center;
    padding: 40px 0 40px 40px;
    animation: nvFadeUp 0.7s ease both 0.3s;
}

/* Studio Card */
.nv-studio-card {
    background: rgba(10,18,36,0.85);
    backdrop-filter: blur(28px); -webkit-backdrop-filter: blur(28px);
    border: 1px solid rgba(255,255,255,0.08); border-radius: 24px;
    width: 100%; max-width: 420px; position: relative; overflow: hidden;
    box-shadow: 0 30px 80px rgba(0,0,0,0.6), 0 0 0 1px rgba(255,255,255,0.04) inset, 0 1px 0 rgba(255,255,255,0.1) inset;
    transition: transform 0.4s ease, box-shadow 0.4s ease;
}
.nv-studio-card::before {
    content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px;
    background: linear-gradient(90deg, #3b82f6, #8b5cf6, #ec4899);
}
.nv-studio-card:hover {
    transform: translateY(-6px) rotate(-0.5deg);
    box-shadow: 0 40px 100px rgba(0,0,0,0.7), 0 0 60px rgba(99,102,241,0.15), 0 0 0 1px rgba(255,255,255,0.04) inset;
}
[data-theme="light"] .nv-studio-card {
    background: rgba(255,255,255,0.92);
    border-color: rgba(99,102,241,0.12);
    box-shadow: 0 20px 60px rgba(99,102,241,0.14), 0 4px 20px rgba(0,0,0,0.07);
}

/* Titlebar */
.nv-studio-titlebar {
    display: flex; align-items: center; gap: 6px;
    padding: 14px 18px; border-bottom: 1px solid rgba(255,255,255,0.06);
    background: rgba(255,255,255,0.02);
}
[data-theme="light"] .nv-studio-titlebar {
    border-bottom-color: rgba(0,0,0,0.06); background: rgba(0,0,0,0.02);
}
.nv-dot { width: 10px; height: 10px; border-radius: 50%; flex-shrink: 0; }
.nv-dot--r { background: #ff5f57; }
.nv-dot--y { background: #febc2e; }
.nv-dot--g { background: #28c840; }
.nv-studio-name {
    margin-left: auto; font-size: 12px; font-weight: 600;
    color: rgba(148,163,184,0.7);
    display: flex; align-items: center; gap: 6px;
}
.nv-studio-name i { font-size: 10px; }
[data-theme="light"] .nv-studio-name { color: #94a3b8; }

/* Studio Body */
.nv-studio-body {
    padding: 20px 22px 22px;
    display: flex; flex-direction: column; gap: 16px;
}

/* Text input mock */
.nv-studio-input {
    background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.07);
    border-radius: 12px; padding: 12px 14px; min-height: 60px;
    display: flex; align-items: center;
}
[data-theme="light"] .nv-studio-input { background: #f8faff; border-color: rgba(99,102,241,0.13); }
.nv-studio-typing {
    font-size: 13px; line-height: 1.55; color: rgba(203,213,225,0.6); position: relative;
}
[data-theme="light"] .nv-studio-typing { color: #64748b; }
.nv-studio-typing::after {
    content: '|'; color: #6366f1;
    animation: nvBlink 1.1s step-end infinite; margin-left: 1px;
}
@keyframes nvBlink { 0%,100% { opacity: 1; } 50% { opacity: 0; } }

/* Voice selector */
.nv-studio-voices-label {
    font-size: 10px; font-weight: 700; text-transform: uppercase;
    letter-spacing: 0.8px; color: rgba(148,163,184,0.55);
    display: block; margin-bottom: 8px;
}
[data-theme="light"] .nv-studio-voices-label { color: #94a3b8; }
.nv-studio-voice-row { display: flex; gap: 7px; flex-wrap: wrap; }
.nv-voice-chip {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 5px 10px; border-radius: 50px;
    background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.07);
    font-size: 12px; font-weight: 600; color: rgba(203,213,225,0.7);
    cursor: pointer; transition: all 0.2s;
}
.nv-voice-chip img { border-radius: 50%; }
.nv-voice-chip--active {
    background: linear-gradient(135deg, rgba(37,99,235,0.2), rgba(124,58,237,0.2));
    border-color: rgba(99,102,241,0.4); color: #a5b4fc;
}
.nv-voice-chip--more { color: rgba(148,163,184,0.5); font-size: 11px; }
.nv-chip-lang {
    font-size: 9px; background: rgba(99,102,241,0.2);
    border-radius: 4px; padding: 1px 4px; color: #a5b4fc; font-weight: 700;
}
[data-theme="light"] .nv-voice-chip { background: #f1f5f9; border-color: rgba(99,102,241,0.1); color: #475569; }
[data-theme="light"] .nv-voice-chip--active {
    background: linear-gradient(135deg, rgba(37,99,235,0.1), rgba(124,58,237,0.1));
    border-color: rgba(99,102,241,0.3); color: #3b4fd8;
}

/* Waveform bars */
.nv-studio-wave {
    display: flex; align-items: center; justify-content: center;
    gap: 3px; height: 52px; padding: 0 4px;
}
.nv-studio-wave span {
    flex: 0 0 auto; width: 3px; border-radius: 3px;
    background: linear-gradient(to top, #3b82f6, #8b5cf6);
    animation: nvStudioWave 1.4s ease-in-out infinite;
}
.nv-studio-wave span:nth-child(2n)  { background: linear-gradient(to top, #8b5cf6, #ec4899); }
.nv-studio-wave span:nth-child(1)  { animation-delay: 0.00s; }
.nv-studio-wave span:nth-child(2)  { animation-delay: 0.05s; }
.nv-studio-wave span:nth-child(3)  { animation-delay: 0.10s; }
.nv-studio-wave span:nth-child(4)  { animation-delay: 0.15s; }
.nv-studio-wave span:nth-child(5)  { animation-delay: 0.20s; }
.nv-studio-wave span:nth-child(6)  { animation-delay: 0.25s; }
.nv-studio-wave span:nth-child(7)  { animation-delay: 0.30s; }
.nv-studio-wave span:nth-child(8)  { animation-delay: 0.35s; }
.nv-studio-wave span:nth-child(9)  { animation-delay: 0.30s; }
.nv-studio-wave span:nth-child(10) { animation-delay: 0.25s; }
.nv-studio-wave span:nth-child(11) { animation-delay: 0.20s; }
.nv-studio-wave span:nth-child(12) { animation-delay: 0.15s; }
.nv-studio-wave span:nth-child(13) { animation-delay: 0.10s; }
.nv-studio-wave span:nth-child(14) { animation-delay: 0.05s; }
.nv-studio-wave span:nth-child(15) { animation-delay: 0.00s; }
.nv-studio-wave span:nth-child(16) { animation-delay: 0.05s; }
.nv-studio-wave span:nth-child(17) { animation-delay: 0.10s; }
.nv-studio-wave span:nth-child(18) { animation-delay: 0.15s; }
.nv-studio-wave span:nth-child(19) { animation-delay: 0.20s; }
.nv-studio-wave span:nth-child(20) { animation-delay: 0.25s; }
.nv-studio-wave span:nth-child(21) { animation-delay: 0.30s; }
.nv-studio-wave span:nth-child(22) { animation-delay: 0.35s; }
.nv-studio-wave span:nth-child(23) { animation-delay: 0.30s; }
.nv-studio-wave span:nth-child(24) { animation-delay: 0.25s; }
.nv-studio-wave span:nth-child(25) { animation-delay: 0.20s; }
.nv-studio-wave span:nth-child(26) { animation-delay: 0.15s; }
.nv-studio-wave span:nth-child(27) { animation-delay: 0.10s; }
.nv-studio-wave span:nth-child(28) { animation-delay: 0.05s; }
@keyframes nvStudioWave {
    0%,100% { height: 4px;  opacity: 0.35; }
    50%      { height: 42px; opacity: 1; }
}

/* Generate button */
.nv-studio-generate {
    position: relative; overflow: hidden;
    display: flex; align-items: center; justify-content: center; gap: 10px;
    width: 100%; padding: 13px; border: none; border-radius: 14px;
    background: linear-gradient(135deg, #2563eb, #7c3aed, #db2777);
    background-size: 200% 200%; color: #fff;
    font-size: 14px; font-weight: 700; cursor: pointer;
    text-decoration: none;
    transition: all 0.3s ease; animation: nvGradShift 4s ease infinite;
}
.nv-studio-generate:hover {
    transform: translateY(-2px); box-shadow: 0 10px 30px rgba(99,102,241,0.4);
    color: #fff;
}
.nv-gen-ripple {
    position: absolute; top: 50%; left: 50%;
    width: 0; height: 0; background: rgba(255,255,255,0.18);
    border-radius: 50%; transform: translate(-50%,-50%);
    animation: nvRipple 2.5s ease-out infinite 1s;
}
@keyframes nvRipple {
    0%   { width: 0; height: 0; opacity: 0.6; }
    100% { width: 320px; height: 320px; opacity: 0; }
}

/* Studio meta */
.nv-studio-meta { display: flex; justify-content: center; gap: 18px; }
.nv-studio-meta span {
    font-size: 11px; font-weight: 600; color: rgba(148,163,184,0.55);
    display: flex; align-items: center; gap: 5px;
}
.nv-studio-meta span i { color: rgba(99,102,241,0.65); }
[data-theme="light"] .nv-studio-meta span { color: #94a3b8; }

/* ── Floating Pills ── */
.nv-float-pill {
    position: absolute; display: flex; align-items: center; gap: 10px;
    padding: 10px 16px;
    background: rgba(10,18,36,0.88); backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(255,255,255,0.1); border-radius: 100px;
    box-shadow: 0 12px 40px rgba(0,0,0,0.5), 0 0 0 1px rgba(255,255,255,0.05) inset;
    z-index: 3; white-space: nowrap;
}
[data-theme="light"] .nv-float-pill {
    background: rgba(255,255,255,0.94); border-color: rgba(99,102,241,0.13);
    box-shadow: 0 8px 30px rgba(99,102,241,0.14);
}
.nv-float-pill img { border-radius: 50%; flex-shrink: 0; }
.nv-pill-info { display: flex; flex-direction: column; }
.nv-pill-info strong { font-size: 13px; font-weight: 700; color: #e2e8f0; line-height: 1.2; }
.nv-pill-info span  { font-size: 11px; color: rgba(148,163,184,0.7); }
[data-theme="light"] .nv-pill-info strong { color: #1e293b; }
[data-theme="light"] .nv-pill-info span   { color: #94a3b8; }
.nv-pill-wave {
    display: flex; align-items: center; gap: 2px; height: 20px; margin-left: 4px;
}
.nv-pill-wave span {
    display: block; width: 2px; border-radius: 2px;
    background: linear-gradient(to top, #3b82f6, #8b5cf6);
    animation: nvPillWave 1s ease-in-out infinite;
}
.nv-pill-wave span:nth-child(1) { animation-delay: 0.00s; }
.nv-pill-wave span:nth-child(2) { animation-delay: 0.15s; }
.nv-pill-wave span:nth-child(3) { animation-delay: 0.30s; }
.nv-pill-wave span:nth-child(4) { animation-delay: 0.15s; }
.nv-pill-wave span:nth-child(5) { animation-delay: 0.00s; }
@keyframes nvPillWave {
    0%,100% { height: 3px; opacity: 0.5; }
    50%      { height: 16px; opacity: 1; }
}
.nv-float-pill--1 {
    top: -10px; right: -20px;
    animation: nvPillFloat1 6s ease-in-out infinite;
}
.nv-float-pill--2 {
    bottom: 30px; left: -10px;
    animation: nvPillFloat2 7s ease-in-out infinite 0.5s;
}
@keyframes nvPillFloat1 {
    0%,100% { transform: translateY(0) rotate(-1deg); }
    50%      { transform: translateY(-10px) rotate(1deg); }
}
@keyframes nvPillFloat2 {
    0%,100% { transform: translateY(0) rotate(1deg); }
    50%      { transform: translateY(-8px) rotate(-1deg); }
}

/* Floating language badge */
.nv-float-badge {
    position: absolute; bottom: -10px; right: 20px;
    display: flex; align-items: center; gap: 8px; padding: 10px 16px;
    background: linear-gradient(135deg, rgba(37,99,235,0.18), rgba(124,58,237,0.18));
    backdrop-filter: blur(20px); border: 1px solid rgba(99,102,241,0.3);
    border-radius: 16px; z-index: 3;
    animation: nvPillFloat1 8s ease-in-out infinite 1s;
}
[data-theme="light"] .nv-float-badge {
    background: linear-gradient(135deg, rgba(37,99,235,0.07), rgba(124,58,237,0.07));
    border-color: rgba(99,102,241,0.18);
}
.nv-float-badge-icon { font-size: 20px; line-height: 1; }
.nv-float-badge-num {
    display: block; font-size: 18px; font-weight: 800; color: #a5b4fc; line-height: 1;
}
.nv-float-badge-lbl {
    display: block; font-size: 10px; font-weight: 600;
    color: rgba(148,163,184,0.7); text-transform: uppercase; letter-spacing: 0.5px;
}
[data-theme="light"] .nv-float-badge-num { color: #4f46e5; }
[data-theme="light"] .nv-float-badge-lbl { color: #64748b; }

/* ── Responsive ── */
@media (max-width: 991px) {
    .nv-hero { padding: 70px 0 60px; min-height: auto; }
    .nv-hero-visual { padding: 50px 0 20px; justify-content: center; }
    .nv-float-pill--1 { right: 0; top: 20px; }
    .nv-float-pill--2 { left: 0; bottom: 20px; }
    .nv-float-badge  { right: 20px; bottom: 0; }
}

@media (max-width: 767px) {
    .nv-hero { padding: 60px 0 50px; text-align: center; }
    .nv-hero-content { display: flex; flex-direction: column; align-items: center; }
    .nv-hero-desc--desk { display: none !important; }
    .nv-hero-desc--mob  { display: block !important; }
    .nv-hero-badge-text-full   { display: none !important; }
    .nv-hero-badge-text-mobile { display: inline !important; }
    .nv-hero-btns { justify-content: center; flex-direction: column; width: 100%; max-width: 340px; }
    .nv-btn-primary, .nv-btn-ghost { justify-content: center; width: 100%; padding: 15px 24px; }
    .nv-hero-stats { justify-content: center; }
    .nv-hero-trust { justify-content: center; flex-wrap: wrap; }
    .nv-hero-title { font-size: clamp(27px, 7.2vw, 38px); }
    .nv-seo-intro-section { padding: 4px 0 34px; }
    .nv-seo-intro { padding: 0 2px; }
    .nv-seo-intro-kicker { font-size: 11px; }
    .nv-seo-intro-title { font-size: 23px; margin-bottom: 12px; }
    .nv-seo-intro-grid { grid-template-columns: 1fr; gap: 12px; }
    .nv-seo-intro-copy { font-size: 15px; line-height: 1.72; }
    .nv-hero-visual { padding: 40px 0 20px; }
    .nv-studio-card { max-width: 360px; }
    .nv-float-pill, .nv-float-badge { display: none; }
}

@media (max-width: 480px) {
    .nv-hero-title { font-size: 26px; letter-spacing: -0.3px; line-height: 1.2; }
    .nv-hero-badge { font-size: 12px; padding: 7px 14px; }
    .nv-hero-stats { gap: 16px; }
    .nv-stat-num   { font-size: 22px; }
    .nv-studio-card { max-width: 300px; }
}

/* ═══════════════════════════════════════════════════════
   Hero Feature Chips
   ═══════════════════════════════════════════════════════ */
.nv-hero-feature-chips {
    display: flex; flex-wrap: wrap; gap: 10px;
    margin-bottom: 32px;
    animation: nvFadeUp 0.7s ease both 0.45s;
}
.nv-feat-chip {
    display: inline-flex; align-items: center; gap: 7px;
    padding: 8px 16px; border-radius: 50px;
    background: rgba(99,102,241,0.08);
    border: 1px solid rgba(99,102,241,0.22);
    font-size: 13px; font-weight: 600;
    color: rgba(167,183,255,0.9); text-decoration: none;
    transition: all 0.2s ease; backdrop-filter: blur(8px);
}
.nv-feat-chip:hover {
    background: rgba(99,102,241,0.18);
    border-color: rgba(99,102,241,0.5);
    color: #fff; transform: translateY(-2px);
}
.nv-feat-chip i { font-size: 12px; color: #a5b4fc; }
[data-theme="light"] .nv-feat-chip {
    background: rgba(37,99,235,0.06); border-color: rgba(37,99,235,0.2);
    color: #3b4fd8;
}
[data-theme="light"] .nv-feat-chip i { color: #4f46e5; }
[data-theme="light"] .nv-feat-chip:hover {
    background: rgba(37,99,235,0.12); border-color: rgba(37,99,235,0.4); color: #1e40af;
}

/* ElevenLabs compare link */
.nv-hero-elevenlabs-cmp {
    margin-bottom: 24px;
    animation: nvFadeUp 0.7s ease both 0.6s;
}
.nv-elevenlabs-link {
    display: inline-flex; align-items: center; gap: 6px;
    font-size: 13px; font-weight: 600;
    color: rgba(148,163,184,0.75); text-decoration: none;
    transition: color 0.2s ease;
}
.nv-elevenlabs-link:hover { color: #a5b4fc; }
.nv-elevenlabs-link i { font-size: 11px; transition: transform 0.2s; }
.nv-elevenlabs-link:hover i { transform: translateX(3px); }
[data-theme="light"] .nv-elevenlabs-link { color: #64748b; }
[data-theme="light"] .nv-elevenlabs-link:hover { color: #4f46e5; }

/* Studio annotation removed */

/* ═══════════════════════════════════════════════════════
   NepVox TTS Card Mockup  (.nv-tts-card)
   ═══════════════════════════════════════════════════════ */

.nv-tts-card {
    position: relative; z-index: 2;
    width: 100%; max-width: 520px;
    background: #0d1526;
    border: 1px solid rgba(255,255,255,0.09);
    border-radius: 20px;
    overflow: hidden;
    box-shadow:
        0 0 0 1px rgba(255,255,255,0.04) inset,
        0 32px 80px rgba(0,0,0,0.6),
        0 0 80px rgba(99,102,246,0.12);
    transition: transform 0.4s ease, box-shadow 0.4s ease;
    animation: nvFadeUp 0.7s ease both 0.3s;
}
.nv-tts-card::before {
    content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px; z-index: 5;
    background: linear-gradient(90deg, #3b82f6, #8b5cf6, #ec4899);
}
.nv-tts-card:hover {
    transform: translateY(-6px) rotate(-0.4deg);
    box-shadow:
        0 0 0 1px rgba(255,255,255,0.07) inset,
        0 44px 100px rgba(0,0,0,0.7),
        0 0 100px rgba(99,102,246,0.2);
}
[data-theme="light"] .nv-tts-card {
    background: #fff;
    border-color: rgba(99,102,241,0.12);
    box-shadow: 0 20px 60px rgba(99,102,241,0.13), 0 4px 20px rgba(0,0,0,0.07);
}

/* ── Header with tabs ── */
.nv-tts-card__header {
    display: flex; align-items: center; gap: 0;
    padding: 12px 18px 0;
    border-bottom: 1px solid rgba(255,255,255,0.06);
}
[data-theme="light"] .nv-tts-card__header { border-color: rgba(0,0,0,0.06); }
.nv-tts-card__dots { display: flex; gap: 5px; align-items: center; margin-right: 14px; }
.nv-tts-card__dot {
    width: 9px; height: 9px; border-radius: 50%;
}
.nv-tts-card__dot--r { background: #ff5f57; }
.nv-tts-card__dot--y { background: #febc2e; }
.nv-tts-card__dot--g { background: #28c840; }
.nv-tts-card__tab {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 8px 14px; font-size: 12px; font-weight: 600;
    color: rgba(148,163,184,0.5); cursor: default;
    border-bottom: 2px solid transparent; margin-bottom: -1px;
}
.nv-tts-card__tab i { font-size: 11px; }
.nv-tts-card__tab--active {
    color: #a5b4fc;
    border-bottom-color: #6366f1;
}
[data-theme="light"] .nv-tts-card__tab--active { color: #4f46e5; border-color: #4f46e5; }

/* ── Selectors ── */
.nv-tts-card__selectors {
    display: flex; gap: 12px; padding: 16px 18px 0;
}
.nv-tts-card__sel { flex: 1; min-width: 0; }
.nv-tts-card__sel-label {
    display: block; font-size: 10px; font-weight: 700;
    text-transform: uppercase; letter-spacing: 0.06em;
    color: rgba(148,163,184,0.45); margin-bottom: 6px;
}
[data-theme="light"] .nv-tts-card__sel-label { color: #94a3b8; }
.nv-tts-card__sel-box {
    display: flex; align-items: center; gap: 7px;
    padding: 9px 12px; border-radius: 10px;
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.09);
    font-size: 13px; color: rgba(226,232,240,0.85);
    cursor: default;
}
.nv-tts-card__sel-box .fi { width: 18px; height: 18px; border-radius: 3px; background-size: cover; flex-shrink: 0; }
.nv-tts-card__sel-box img { border-radius: 50%; flex-shrink: 0; }
.nv-tts-card__sel-box .fa-chevron-down { margin-left: auto; font-size: 10px; color: rgba(148,163,184,0.35); }
.nv-tts-card__sel-badge {
    font-size: 10px; padding: 1px 6px; border-radius: 4px;
    background: rgba(99,102,241,0.18); color: #a5b4fc; font-weight: 600;
}
[data-theme="light"] .nv-tts-card__sel-box { background: #f8faff; border-color: rgba(99,102,241,0.1); color: #334155; }

/* ── Textarea ── */
.nv-tts-card__textarea {
    margin: 14px 18px 0;
    background: rgba(255,255,255,0.03);
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 12px; padding: 14px 14px 10px;
    display: flex; flex-direction: column; gap: 12px;
}
[data-theme="light"] .nv-tts-card__textarea { background: #f8faff; border-color: rgba(99,102,241,0.1); }
.nv-tts-card__text {
    margin: 0; font-size: 13px; line-height: 1.7;
    color: rgba(203,213,225,0.7); min-height: 64px;
}
[data-theme="light"] .nv-tts-card__text { color: #475569; }
.nv-tts-card__textarea-footer {
    display: flex; align-items: center; justify-content: space-between; gap: 10px;
    padding-top: 8px; border-top: 1px solid rgba(255,255,255,0.05);
}
[data-theme="light"] .nv-tts-card__textarea-footer { border-color: rgba(0,0,0,0.06); }
.nv-tts-card__chars { font-size: 11px; color: rgba(148,163,184,0.4); }
.nv-tts-card__gen-btn {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 9px 18px; border-radius: 10px;
    background: linear-gradient(135deg, #2563eb, #7c3aed);
    background-size: 200% 200%; animation: nvGradShift 4s ease infinite;
    font-size: 13px; font-weight: 700; color: #fff; text-decoration: none;
    box-shadow: 0 4px 16px rgba(99,102,241,0.35);
    transition: transform 0.2s, box-shadow 0.2s;
}
.nv-tts-card__gen-btn:hover { transform: translateY(-1px); color: #fff; box-shadow: 0 8px 24px rgba(99,102,241,0.5); }
.nv-tts-card__gen-btn i { font-size: 12px; }

/* ── Audio output ── */
.nv-tts-card__output {
    margin: 14px 18px 0;
    background: rgba(255,255,255,0.03);
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 12px; padding: 12px 14px;
    display: flex; flex-direction: column; gap: 10px;
}
[data-theme="light"] .nv-tts-card__output { background: #f8faff; border-color: rgba(99,102,241,0.1); }
.nv-tts-card__output-info { display: flex; align-items: center; gap: 10px; }
.nv-tts-card__output-info img { border-radius: 50%; flex-shrink: 0; }
.nv-tts-card__output-meta { display: flex; flex-direction: column; gap: 1px; }
.nv-tts-card__output-meta strong { font-size: 13px; font-weight: 700; color: #e2e8f0; }
.nv-tts-card__output-meta span { font-size: 11px; color: rgba(148,163,184,0.55); }
[data-theme="light"] .nv-tts-card__output-meta strong { color: #0f172a; }

/* Player */
.nv-tts-card__player {
    display: flex; align-items: center; gap: 10px;
}
.nv-tts-card__play-btn, .nv-tts-card__dl-btn {
    width: 32px; height: 32px; border-radius: 50%; border: none; cursor: default;
    display: inline-flex; align-items: center; justify-content: center;
    flex-shrink: 0; font-size: 11px;
}
.nv-tts-card__play-btn {
    background: linear-gradient(135deg, #2563eb, #7c3aed);
    color: #fff; box-shadow: 0 4px 12px rgba(99,102,241,0.4);
}
.nv-tts-card__dl-btn {
    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(255,255,255,0.1) !important;
    color: rgba(148,163,184,0.6);
}
[data-theme="light"] .nv-tts-card__dl-btn { background: #f1f5f9; border-color: rgba(0,0,0,0.08) !important; color: #64748b; }
.nv-tts-card__waveform {
    flex: 1; display: flex; align-items: center; justify-content: center; gap: 2px; height: 32px;
}
.nv-tts-card__waveform span {
    flex: 0 0 2.5px; border-radius: 2px;
    background: linear-gradient(to top, #3b82f6, #8b5cf6);
    animation: nvTTSWave 1.3s ease-in-out infinite;
}
.nv-tts-card__waveform span:nth-child(2n)  { background: linear-gradient(to top, #8b5cf6, #ec4899); }
.nv-tts-card__waveform span:nth-child(1)  { height:4px;  animation-delay:.00s }
.nv-tts-card__waveform span:nth-child(2)  { height:8px;  animation-delay:.04s }
.nv-tts-card__waveform span:nth-child(3)  { height:14px; animation-delay:.08s }
.nv-tts-card__waveform span:nth-child(4)  { height:22px; animation-delay:.12s }
.nv-tts-card__waveform span:nth-child(5)  { height:16px; animation-delay:.08s }
.nv-tts-card__waveform span:nth-child(6)  { height:26px; animation-delay:.04s }
.nv-tts-card__waveform span:nth-child(7)  { height:20px; animation-delay:.00s }
.nv-tts-card__waveform span:nth-child(8)  { height:28px; animation-delay:.04s }
.nv-tts-card__waveform span:nth-child(9)  { height:18px; animation-delay:.08s }
.nv-tts-card__waveform span:nth-child(10) { height:24px; animation-delay:.12s }
.nv-tts-card__waveform span:nth-child(11) { height:28px; animation-delay:.08s }
.nv-tts-card__waveform span:nth-child(12) { height:20px; animation-delay:.04s }
.nv-tts-card__waveform span:nth-child(13) { height:14px; animation-delay:.00s }
.nv-tts-card__waveform span:nth-child(14) { height:22px; animation-delay:.04s }
.nv-tts-card__waveform span:nth-child(15) { height:26px; animation-delay:.08s }
.nv-tts-card__waveform span:nth-child(16) { height:28px; animation-delay:.12s }
.nv-tts-card__waveform span:nth-child(17) { height:22px; animation-delay:.08s }
.nv-tts-card__waveform span:nth-child(18) { height:16px; animation-delay:.04s }
.nv-tts-card__waveform span:nth-child(19) { height:10px; animation-delay:.00s }
.nv-tts-card__waveform span:nth-child(20) { height:18px; animation-delay:.04s }
.nv-tts-card__waveform span:nth-child(21) { height:24px; animation-delay:.08s }
.nv-tts-card__waveform span:nth-child(22) { height:28px; animation-delay:.12s }
.nv-tts-card__waveform span:nth-child(23) { height:20px; animation-delay:.08s }
.nv-tts-card__waveform span:nth-child(24) { height:14px; animation-delay:.04s }
.nv-tts-card__waveform span:nth-child(25) { height:8px;  animation-delay:.00s }
.nv-tts-card__waveform span:nth-child(26) { height:14px; animation-delay:.04s }
.nv-tts-card__waveform span:nth-child(27) { height:20px; animation-delay:.08s }
.nv-tts-card__waveform span:nth-child(28) { height:26px; animation-delay:.12s }
.nv-tts-card__waveform span:nth-child(29) { height:18px; animation-delay:.08s }
.nv-tts-card__waveform span:nth-child(30) { height:10px; animation-delay:.04s }
.nv-tts-card__waveform span:nth-child(31) { height:14px; animation-delay:.00s }
.nv-tts-card__waveform span:nth-child(32) { height:20px; animation-delay:.04s }
.nv-tts-card__waveform span:nth-child(33) { height:16px; animation-delay:.08s }
.nv-tts-card__waveform span:nth-child(34) { height:10px; animation-delay:.04s }
.nv-tts-card__waveform span:nth-child(35) { height:6px;  animation-delay:.00s }
.nv-tts-card__waveform span:nth-child(36) { height:4px;  animation-delay:.04s }
@keyframes nvTTSWave {
    0%,100% { opacity: 0.35; transform: scaleY(0.5); }
    50%      { opacity: 1;    transform: scaleY(1); }
}
.nv-tts-card__timer { font-size: 11px; color: rgba(148,163,184,0.45); white-space: nowrap; flex-shrink: 0; }

/* ── Voice strip ── */
.nv-tts-card__voices {
    display: flex; align-items: center; gap: 8px;
    padding: 12px 18px 16px; flex-wrap: nowrap; overflow: hidden;
}
.nv-tts-card__voices-label {
    font-size: 11px; font-weight: 600; color: rgba(148,163,184,0.4);
    white-space: nowrap; flex-shrink: 0;
}
[data-theme="light"] .nv-tts-card__voices-label { color: #94a3b8; }
.nv-tts-card__voice-chip {
    display: inline-flex; align-items: center; gap: 5px;
    padding: 5px 10px; border-radius: 50px;
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.07);
    font-size: 12px; font-weight: 600; color: rgba(203,213,225,0.7);
    flex-shrink: 0;
}
.nv-tts-card__voice-chip img { border-radius: 50%; }
.nv-tts-card__voice-lang {
    font-size: 9px; padding: 1px 5px; border-radius: 4px;
    background: rgba(99,102,241,0.2); color: #a5b4fc; font-weight: 700;
}
[data-theme="light"] .nv-tts-card__voice-chip { background: #f1f5f9; border-color: rgba(0,0,0,0.08); color: #475569; }
[data-theme="light"] .nv-tts-card__voice-lang { background: rgba(37,99,235,0.1); color: #3b4fd8; }
.nv-tts-card__voice-more {
    margin-left: auto; font-size: 12px; font-weight: 700;
    color: #6366f1; text-decoration: none; white-space: nowrap; flex-shrink: 0;
}
.nv-tts-card__voice-more:hover { color: #818cf8; }

/* ── Responsive ── */
@media (max-width: 991px) {
    .nv-tts-card { max-width: 500px; margin: 0 auto; }
    .nv-studio-annotation { display: none; }
    .nv-hero-visual { padding: 50px 0 20px; justify-content: center; }
}
@media (max-width: 767px) {
    .nv-tts-card { max-width: 100%; border-radius: 16px; }
    .nv-tts-card__voices { display: none; }
}
@media (max-width: 480px) {
    .nv-tts-card__selectors { flex-direction: column; gap: 8px; }
}

/* ═══════════════════════════════════════════════════════
   NepVox App Mockup  (.nv-mock)
   ═══════════════════════════════════════════════════════ */

/* Outer card */
.nv-mock {
    position: relative; z-index: 2;
    width: 100%; max-width: 620px;
    background: #0d1526;
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 16px; overflow: hidden;
    box-shadow:
        0 0 0 1px rgba(255,255,255,0.04) inset,
        0 30px 80px rgba(0,0,0,0.65),
        0 0 60px rgba(99,102,246,0.1);
    transition: transform 0.4s ease, box-shadow 0.4s ease;
    animation: nvFadeUp 0.7s ease both 0.3s;
}
.nv-mock::before {
    content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px; z-index: 4;
    background: linear-gradient(90deg, #3b82f6, #8b5cf6, #ec4899);
}
.nv-mock:hover {
    transform: translateY(-6px) rotate(-0.4deg);
    box-shadow:
        0 0 0 1px rgba(255,255,255,0.06) inset,
        0 40px 100px rgba(0,0,0,0.75),
        0 0 80px rgba(99,102,246,0.18);
}
[data-theme="light"] .nv-mock {
    background: #fff;
    border-color: rgba(99,102,241,0.1);
    box-shadow: 0 20px 60px rgba(99,102,241,0.12), 0 4px 20px rgba(0,0,0,0.06);
}

/* Window chrome bar */
.nv-mock__chrome {
    display: flex; align-items: center; gap: 8px;
    padding: 10px 16px;
    background: rgba(255,255,255,0.025);
    border-bottom: 1px solid rgba(255,255,255,0.06);
}
[data-theme="light"] .nv-mock__chrome { background: #f8faff; border-color: rgba(0,0,0,0.06); }
.nv-mock__dot {
    width: 10px; height: 10px; border-radius: 50%; flex-shrink: 0;
}
.nv-mock__dot--r { background: #ff5f57; }
.nv-mock__dot--y { background: #febc2e; }
.nv-mock__dot--g { background: #28c840; }
.nv-mock__title {
    margin-left: 6px; font-size: 12px; font-weight: 700;
    color: rgba(203,213,225,0.6);
    display: flex; align-items: center; gap: 6px;
}
.nv-mock__title i { color: #6366f1; font-size: 11px; }
[data-theme="light"] .nv-mock__title { color: #64748b; }
.nv-mock__project {
    margin-left: auto; font-size: 11px; font-weight: 600;
    color: rgba(148,163,184,0.5);
    display: flex; align-items: center; gap: 5px;
}
.nv-mock__project i { font-size: 9px; }

/* Three-column layout */
.nv-mock__layout {
    display: flex; height: 330px;
}

/* ── Sidebar ── */
.nv-mock__sidebar {
    flex: 0 0 155px; max-width: 155px;
    background: rgba(255,255,255,0.012);
    border-right: 1px solid rgba(255,255,255,0.055);
    padding: 12px 8px 12px;
    display: flex; flex-direction: column; gap: 2px;
    overflow: hidden;
}
[data-theme="light"] .nv-mock__sidebar { background: #f8faff; border-color: rgba(0,0,0,0.06); }
.nv-mock__nav-group { margin-bottom: 6px; }
.nv-mock__nav-label {
    display: block; font-size: 9px; font-weight: 700;
    letter-spacing: 0.09em; text-transform: uppercase;
    color: rgba(148,163,184,0.4); padding: 0 6px 4px;
}
[data-theme="light"] .nv-mock__nav-label { color: #94a3b8; }
.nv-mock__nav-item {
    display: flex; align-items: center; gap: 7px;
    padding: 6px 8px; border-radius: 7px;
    font-size: 11px; font-weight: 500;
    color: rgba(148,163,184,0.55);
    white-space: nowrap; overflow: hidden;
    cursor: default;
}
.nv-mock__nav-item i { font-size: 10px; flex-shrink: 0; }
.nv-mock__nav-item--on {
    background: rgba(99,102,241,0.14);
    border: 1px solid rgba(99,102,241,0.22);
    color: #a5b4fc;
}
[data-theme="light"] .nv-mock__nav-item { color: #64748b; }
[data-theme="light"] .nv-mock__nav-item--on { background: rgba(37,99,235,0.08); border-color: rgba(37,99,235,0.2); color: #2563eb; }
.nv-mock__pro {
    margin-top: auto; padding: 9px 8px;
    border-radius: 9px;
    background: linear-gradient(135deg, rgba(37,99,235,0.12), rgba(139,92,246,0.14));
    border: 1px solid rgba(99,102,241,0.2);
    display: flex; align-items: center; gap: 6px;
}
.nv-mock__pro > i { color: #fbbf24; font-size: 11px; flex-shrink: 0; }
.nv-mock__pro > div { flex: 1; min-width: 0; }
.nv-mock__pro strong { display: block; font-size: 10px; color: #e2e8f0; white-space: nowrap; }
.nv-mock__pro em { display: block; font-size: 9px; font-style: normal; color: rgba(148,163,184,0.55); white-space: nowrap; }
.nv-mock__upgrade { font-size: 9px; font-weight: 700; color: #a78bfa; white-space: nowrap; cursor: default; }

/* ── Main panel ── */
.nv-mock__main {
    flex: 1; min-width: 0;
    padding: 12px 13px;
    display: flex; flex-direction: column; gap: 10px;
}

/* Selectors */
.nv-mock__selectors { display: flex; gap: 8px; }
.nv-mock__sel-group { flex: 1; min-width: 0; }
.nv-mock__sel-label {
    display: block; font-size: 9px; font-weight: 600;
    text-transform: uppercase; letter-spacing: 0.06em;
    color: rgba(148,163,184,0.45); margin-bottom: 4px;
}
[data-theme="light"] .nv-mock__sel-label { color: #94a3b8; }
.nv-mock__sel-box {
    display: flex; align-items: center; gap: 5px;
    padding: 6px 8px; border-radius: 7px;
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.08);
    font-size: 11px; color: rgba(203,213,225,0.8);
    white-space: nowrap; overflow: hidden;
}
.nv-mock__sel-box .fi { width: 14px; height: 14px; border-radius: 2px; background-size: cover; flex-shrink: 0; }
.nv-mock__sel-box img { border-radius: 50%; flex-shrink: 0; }
.nv-mock__sel-box i.fa-chevron-down { margin-left: auto; font-size: 8px; color: rgba(148,163,184,0.35); flex-shrink: 0; }
[data-theme="light"] .nv-mock__sel-box { background: #f1f5f9; border-color: rgba(0,0,0,0.07); color: #334155; }

/* Text area */
.nv-mock__textarea {
    flex: 1; padding: 10px 12px;
    background: rgba(255,255,255,0.03);
    border: 1px solid rgba(255,255,255,0.07);
    border-radius: 9px;
    display: flex; flex-direction: column; gap: 8px;
}
[data-theme="light"] .nv-mock__textarea { background: #f8faff; border-color: rgba(99,102,241,0.1); }
.nv-mock__textarea p {
    margin: 0; flex: 1;
    font-size: 11px; line-height: 1.65;
    color: rgba(203,213,225,0.6);
    display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden;
}
[data-theme="light"] .nv-mock__textarea p { color: #64748b; }
.nv-mock__textarea-foot {
    display: flex; align-items: center; justify-content: space-between; gap: 8px;
}
.nv-mock__chars { font-size: 10px; color: rgba(148,163,184,0.4); white-space: nowrap; }
.nv-mock__gen-btn {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 6px 12px; border-radius: 7px;
    background: linear-gradient(135deg, #2563eb, #7c3aed);
    font-size: 11px; font-weight: 700; color: #fff; text-decoration: none;
    white-space: nowrap; flex-shrink: 0;
}
.nv-mock__gen-btn i { font-size: 10px; }

/* Player */
.nv-mock__player {
    display: flex; align-items: center; gap: 8px;
    padding: 8px 10px; border-radius: 9px;
    background: rgba(255,255,255,0.03);
    border: 1px solid rgba(255,255,255,0.07);
}
[data-theme="light"] .nv-mock__player { background: #f8faff; border-color: rgba(0,0,0,0.07); }
.nv-mock__play, .nv-mock__dl {
    width: 24px; height: 24px; border-radius: 50%; border: none; cursor: default;
    display: inline-flex; align-items: center; justify-content: center;
    background: rgba(99,102,241,0.2); color: #a5b4fc; font-size: 9px; flex-shrink: 0;
}
.nv-mock__player-wave {
    flex: 1; display: flex; align-items: center; justify-content: center; gap: 2px; height: 24px;
}
.nv-mock__player-wave span {
    flex: 0 0 2px; border-radius: 2px;
    background: linear-gradient(to top, #3b82f6, #8b5cf6);
    animation: nvMockW 1.2s ease-in-out infinite;
}
.nv-mock__player-wave span:nth-child(2n) { background: linear-gradient(to top, #8b5cf6, #ec4899); }
.nv-mock__player-wave span:nth-child(1)  { height:5px;  animation-delay:.00s }
.nv-mock__player-wave span:nth-child(2)  { height:9px;  animation-delay:.04s }
.nv-mock__player-wave span:nth-child(3)  { height:14px; animation-delay:.08s }
.nv-mock__player-wave span:nth-child(4)  { height:20px; animation-delay:.12s }
.nv-mock__player-wave span:nth-child(5)  { height:14px; animation-delay:.08s }
.nv-mock__player-wave span:nth-child(6)  { height:18px; animation-delay:.04s }
.nv-mock__player-wave span:nth-child(7)  { height:22px; animation-delay:.00s }
.nv-mock__player-wave span:nth-child(8)  { height:16px; animation-delay:.04s }
.nv-mock__player-wave span:nth-child(9)  { height:10px; animation-delay:.08s }
.nv-mock__player-wave span:nth-child(10) { height:16px; animation-delay:.12s }
.nv-mock__player-wave span:nth-child(11) { height:22px; animation-delay:.08s }
.nv-mock__player-wave span:nth-child(12) { height:14px; animation-delay:.04s }
.nv-mock__player-wave span:nth-child(13) { height:9px;  animation-delay:.00s }
.nv-mock__player-wave span:nth-child(14) { height:14px; animation-delay:.04s }
.nv-mock__player-wave span:nth-child(15) { height:18px; animation-delay:.08s }
.nv-mock__player-wave span:nth-child(16) { height:22px; animation-delay:.12s }
.nv-mock__player-wave span:nth-child(17) { height:16px; animation-delay:.08s }
.nv-mock__player-wave span:nth-child(18) { height:10px; animation-delay:.04s }
.nv-mock__player-wave span:nth-child(19) { height:7px;  animation-delay:.00s }
.nv-mock__player-wave span:nth-child(20) { height:12px; animation-delay:.04s }
.nv-mock__player-wave span:nth-child(21) { height:18px; animation-delay:.08s }
.nv-mock__player-wave span:nth-child(22) { height:10px; animation-delay:.04s }
.nv-mock__player-wave span:nth-child(23) { height:6px;  animation-delay:.00s }
.nv-mock__player-wave span:nth-child(24) { height:5px;  animation-delay:.04s }
@keyframes nvMockW {
    0%,100% { opacity: 0.4; transform: scaleY(0.55); }
    50%      { opacity: 1;   transform: scaleY(1); }
}
.nv-mock__time { font-size: 9px; color: rgba(148,163,184,0.45); white-space: nowrap; flex-shrink: 0; }

/* ── Right panel ── */
.nv-mock__right {
    flex: 0 0 148px; max-width: 148px;
    background: rgba(255,255,255,0.012);
    border-left: 1px solid rgba(255,255,255,0.055);
    padding: 12px 10px;
    display: flex; flex-direction: column; gap: 14px;
    overflow: hidden;
}
[data-theme="light"] .nv-mock__right { background: #f8faff; border-color: rgba(0,0,0,0.06); }
.nv-mock__panel-title {
    display: block; font-size: 10px; font-weight: 700;
    color: #e2e8f0; margin-bottom: 8px;
}
[data-theme="light"] .nv-mock__panel-title { color: #0f172a; }

/* Voice preview */
.nv-mock__preview {
    display: flex; flex-direction: column; align-items: center; gap: 6px;
}
.nv-mock__preview-avatar {
    width: 52px; height: 52px; border-radius: 50%; overflow: hidden;
    border: 2px solid rgba(99,102,241,0.3);
}
.nv-mock__preview-avatar img { width: 100%; height: 100%; object-fit: cover; display: block; }
.nv-mock__preview-wave {
    display: flex; align-items: center; gap: 2px; height: 22px;
}
.nv-mock__preview-wave span {
    flex: 0 0 2px; border-radius: 2px; height: 6px;
    background: linear-gradient(to top, #3b82f6, #8b5cf6);
    animation: nvMockW 1.5s ease-in-out infinite;
}
.nv-mock__preview-wave span:nth-child(2n) { background: linear-gradient(to top, #8b5cf6, #ec4899); height: 14px; animation-delay: .12s; }
.nv-mock__preview-wave span:nth-child(3n) { height: 20px; animation-delay: .24s; }
.nv-mock__preview-time { font-size: 9px; color: rgba(148,163,184,0.45); }

/* Recent activity */
.nv-mock__recent { flex: 1; display: flex; flex-direction: column; overflow: hidden; }
.nv-mock__recent-row {
    display: flex; flex-direction: column; gap: 1px;
    padding: 5px 0;
    border-bottom: 1px solid rgba(255,255,255,0.04);
}
[data-theme="light"] .nv-mock__recent-row { border-color: rgba(0,0,0,0.05); }
.nv-mock__recent-name {
    font-size: 10px; font-weight: 600;
    color: rgba(203,213,225,0.7);
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.nv-mock__recent-time { font-size: 9px; color: rgba(148,163,184,0.4); }
[data-theme="light"] .nv-mock__recent-name { color: #334155; }
.nv-mock__view-all {
    display: block; margin-top: 8px;
    font-size: 10px; font-weight: 600;
    color: #6366f1; text-decoration: none; text-align: center;
}

/* ── nv-mock responsive ── */
@media (max-width: 1200px) {
    .nv-mock__right { flex: 0 0 130px; max-width: 130px; }
    .nv-mock__sidebar { flex: 0 0 138px; max-width: 138px; }
}
@media (max-width: 991px) {
    .nv-mock { max-width: 540px; margin: 0 auto; }
    .nv-mock__right { display: none; }
    .nv-mock__layout { height: auto; }
    .nv-mock__sidebar { flex: 0 0 130px; max-width: 130px; }
    .nv-studio-annotation { display: none; }
    .nv-hero-visual { padding: 50px 0 20px; justify-content: center; }
}
@media (max-width: 767px) {
    .nv-mock { max-width: 100%; }
    .nv-mock__sidebar { display: none; }
    .nv-mock__layout { height: auto; }
}

/* ═══════════════════════════════════════════════════════
   NepVox Dashboard Mockup  (.nv-dash)
   ═══════════════════════════════════════════════════════ */

/* Outer shell */
.nv-dash {
    position: relative; z-index: 2;
    width: 100%; max-width: 640px;
    background: #0d1526;
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 14px; overflow: hidden;
    box-shadow:
        0 0 0 1px rgba(255,255,255,0.04) inset,
        0 28px 80px rgba(0,0,0,0.65),
        0 0 60px rgba(99,102,246,0.1);
    transition: transform 0.4s ease, box-shadow 0.4s ease;
    animation: nvFadeUp 0.7s ease both 0.3s;
    font-size: 11px;
}
.nv-dash::before {
    content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px; z-index: 5;
    background: linear-gradient(90deg, #3b82f6, #8b5cf6, #ec4899);
}
.nv-dash:hover {
    transform: translateY(-6px) rotate(-0.3deg);
    box-shadow:
        0 0 0 1px rgba(255,255,255,0.06) inset,
        0 40px 100px rgba(0,0,0,0.75),
        0 0 80px rgba(99,102,246,0.18);
}

/* ── Top bar ── */
.nv-dash__topbar {
    display: flex; align-items: center; gap: 6px;
    padding: 8px 12px;
    background: #0a1020;
    border-bottom: 1px solid rgba(255,255,255,0.06);
    flex-wrap: nowrap; overflow: hidden;
}
.nv-dash__topbar-logo { flex-shrink: 0; margin-right: 4px; }
.nv-dash__topbar-logo img { height: 16px; width: auto; display: block; filter: brightness(1.1); }
.nv-dash__logo-text { font-size: 11px; font-weight: 800; color: #e2e8f0; letter-spacing: 0.05em; }
.nv-dash__topbar-actions {
    display: flex; align-items: center; gap: 6px;
    margin-left: auto; flex-shrink: 0;
}
.nv-dash__tb-btn {
    display: inline-flex; align-items: center; gap: 4px;
    font-size: 9.5px; font-weight: 500; color: rgba(148,163,184,0.65);
    white-space: nowrap;
}
.nv-dash__tb-btn i { font-size: 9px; }
.nv-dash__tb-upgrade {
    display: inline-flex; align-items: center; gap: 4px;
    padding: 4px 9px; border-radius: 6px;
    background: linear-gradient(135deg, #f59e0b, #ef4444);
    font-size: 9.5px; font-weight: 700; color: #fff; white-space: nowrap;
}
.nv-dash__tb-upgrade i { font-size: 9px; }
.nv-dash__tb-icon {
    width: 22px; height: 22px; border-radius: 5px;
    display: inline-flex; align-items: center; justify-content: center;
    background: rgba(255,255,255,0.05);
    font-size: 9px; color: rgba(148,163,184,0.55);
    flex-shrink: 0;
}
.nv-dash__tb-user {
    display: inline-flex; align-items: center; gap: 5px;
    padding: 3px 7px 3px 4px; border-radius: 6px;
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.07);
    flex-shrink: 0;
}
.nv-dash__tb-avatar {
    width: 20px; height: 20px; border-radius: 50%;
    background: linear-gradient(135deg, #6366f1, #8b5cf6);
    display: inline-flex; align-items: center; justify-content: center;
    font-size: 9px; font-weight: 800; color: #fff;
}
.nv-dash__tb-user-info { display: flex; flex-direction: column; line-height: 1.2; }
.nv-dash__tb-user-info strong { font-size: 9px; font-weight: 700; color: #e2e8f0; }
.nv-dash__tb-user-info em { font-size: 8px; font-style: normal; color: rgba(148,163,184,0.5); }

/* ── Body layout ── */
.nv-dash__body {
    display: flex; height: 390px; overflow: hidden;
}

/* ── Sidebar ── */
.nv-dash__sidebar {
    flex: 0 0 158px; max-width: 158px;
    background: #0a1020;
    border-right: 1px solid rgba(255,255,255,0.055);
    padding: 10px 6px 10px;
    display: flex; flex-direction: column; gap: 1px;
    overflow: hidden;
}
.nv-dash__nav-item {
    display: flex; align-items: center; gap: 7px;
    padding: 7px 8px; border-radius: 7px;
    font-size: 10.5px; font-weight: 500;
    color: rgba(148,163,184,0.6);
    white-space: nowrap; cursor: default;
    text-decoration: none;
}
.nv-dash__nav-item i:first-child { font-size: 10px; flex-shrink: 0; }
.nv-dash__nav-arrow { margin-left: auto; font-size: 8px; color: rgba(148,163,184,0.3); }
.nv-dash__nav-item--active {
    background: #3b5bdb;
    color: #fff; font-weight: 700;
}
.nv-dash__nav-item--active i { color: #fff; }

/* Refer card */
.nv-dash__refer {
    margin-top: auto; border-radius: 10px;
    background: linear-gradient(135deg, #7c3aed, #6366f1);
    padding: 12px 10px; position: relative; overflow: hidden;
    display: flex; align-items: flex-end;
}
.nv-dash__refer-inner {
    display: flex; flex-direction: column; gap: 3px; z-index: 1;
}
.nv-dash__refer-icon {
    width: 22px; height: 22px; border-radius: 6px;
    background: rgba(255,255,255,0.18);
    display: inline-flex; align-items: center; justify-content: center;
    font-size: 11px; color: #fff; margin-bottom: 2px;
}
.nv-dash__refer strong { font-size: 11px; font-weight: 800; color: #fff; }
.nv-dash__refer em { font-size: 9px; font-style: normal; color: rgba(255,255,255,0.75); line-height: 1.35; }
.nv-dash__refer-btn {
    display: inline-block; margin-top: 6px;
    padding: 4px 10px; border-radius: 6px;
    background: rgba(255,255,255,0.18); border: 1px solid rgba(255,255,255,0.25);
    font-size: 9.5px; font-weight: 700; color: #fff; text-decoration: none; cursor: default;
}
.nv-dash__refer-rocket {
    position: absolute; bottom: 6px; right: 8px;
    font-size: 28px; opacity: 0.5; line-height: 1;
    transform: rotate(-15deg);
}

/* ── Main content ── */
.nv-dash__main {
    flex: 1; min-width: 0; overflow: hidden;
    padding: 12px 12px 10px;
    display: flex; flex-direction: column; gap: 9px;
}

/* Greeting + upgrade */
.nv-dash__greeting-row {
    display: flex; align-items: flex-start; gap: 10px;
}
.nv-dash__greeting { flex: 1; min-width: 0; }
.nv-dash__greeting h3 {
    margin: 0 0 2px; font-size: 13px; font-weight: 700; color: #f1f5ff;
}
.nv-dash__greeting p { margin: 0; font-size: 9.5px; color: rgba(148,163,184,0.6); }
.nv-dash__upgrade-banner {
    flex: 0 0 auto; max-width: 180px;
    background: linear-gradient(135deg, rgba(37,99,235,0.25), rgba(124,58,237,0.25));
    border: 1px solid rgba(99,102,241,0.3);
    border-radius: 9px; padding: 8px 10px;
    display: flex; flex-direction: column; gap: 4px;
}
.nv-dash__upgrade-banner strong { display: block; font-size: 9.5px; font-weight: 700; color: #e2e8f0; }
.nv-dash__upgrade-banner em { display: block; font-size: 8.5px; font-style: normal; color: rgba(148,163,184,0.6); line-height: 1.3; }
.nv-dash__upgrade-btn {
    display: inline-block; margin-top: 2px;
    padding: 4px 10px; border-radius: 6px;
    background: #fff; font-size: 9px; font-weight: 700; color: #1e293b;
    text-decoration: none; cursor: default; align-self: flex-start; white-space: nowrap;
}

/* Usage card */
.nv-dash__usage-card {
    background: rgba(255,255,255,0.03);
    border: 1px solid rgba(255,255,255,0.07);
    border-radius: 9px; padding: 9px 12px;
    display: flex; flex-direction: column; gap: 4px;
}
.nv-dash__usage-header {
    display: flex; justify-content: space-between; align-items: center;
}
.nv-dash__usage-header span { font-size: 10.5px; font-weight: 600; color: #e2e8f0; }
.nv-dash__usage-val { font-size: 10px; color: rgba(148,163,184,0.55); }
.nv-dash__usage-sub { margin: 0; font-size: 8.5px; color: rgba(148,163,184,0.45); }
.nv-dash__usage-track {
    height: 5px; border-radius: 3px;
    background: rgba(255,255,255,0.07); overflow: hidden;
}
.nv-dash__usage-fill {
    height: 100%; border-radius: 3px;
    background: linear-gradient(90deg, #3b82f6, #8b5cf6);
}
.nv-dash__usage-reset { margin: 0; font-size: 8.5px; color: rgba(148,163,184,0.4); }

/* Overview header */
.nv-dash__overview-header {
    display: flex; align-items: center; justify-content: space-between; gap: 8px;
}
.nv-dash__ov-title { font-size: 11px; font-weight: 700; color: #e2e8f0; }
.nv-dash__ov-title em { font-style: normal; font-weight: 400; font-size: 9px; color: rgba(148,163,184,0.5); margin-left: 4px; }
.nv-dash__ov-range { font-size: 8.5px; color: rgba(148,163,184,0.45); white-space: nowrap; }

/* Stat cards */
.nv-dash__stats {
    display: flex; gap: 6px; flex: 1; min-height: 0;
}
.nv-dash__stat-card {
    flex: 1; min-width: 0;
    background: rgba(255,255,255,0.03);
    border: 1px solid rgba(255,255,255,0.07);
    border-radius: 9px; padding: 8px 8px 6px;
    display: flex; flex-direction: column; gap: 2px;
    position: relative; overflow: hidden;
}
.nv-dash__stat-icon {
    width: 22px; height: 22px; border-radius: 6px;
    display: inline-flex; align-items: center; justify-content: center;
    font-size: 10px; margin-bottom: 3px; flex-shrink: 0;
}
.nv-dash__stat-icon--blue   { background: rgba(99,102,241,0.2);  color: #818cf8; }
.nv-dash__stat-icon--pink   { background: rgba(236,72,153,0.2);  color: #f472b6; }
.nv-dash__stat-icon--green  { background: rgba(16,185,129,0.2);  color: #34d399; }
.nv-dash__stat-icon--amber  { background: rgba(245,158,11,0.2);  color: #fbbf24; }
.nv-dash__stat-icon--violet { background: rgba(139,92,246,0.2);  color: #a78bfa; }
.nv-dash__stat-label {
    font-size: 8.5px; color: rgba(148,163,184,0.55);
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.nv-dash__stat-val {
    font-size: 16px; font-weight: 800; color: #f1f5ff; line-height: 1.15; margin-top: 1px;
}
.nv-dash__stat-val small { font-size: 10px; font-weight: 500; color: rgba(203,213,225,0.6); }
.nv-dash__stat-trend {
    font-size: 8px; font-weight: 600; margin-bottom: 3px;
}
.nv-dash__stat-trend--up   { color: #34d399; }
.nv-dash__stat-trend--down { color: rgba(148,163,184,0.5); }
.nv-dash__sparkline {
    width: 100%; height: 26px; display: block; margin-top: auto;
}

/* ── Responsive ── */
@media (max-width: 1200px) {
    .nv-dash { max-width: 580px; }
    .nv-dash__sidebar { flex: 0 0 138px; max-width: 138px; }
    .nv-dash__tb-btn { display: none; }
}
@media (max-width: 991px) {
    .nv-dash { max-width: 520px; margin: 0 auto; }
    .nv-dash__body { height: auto; min-height: 360px; }
    .nv-dash__sidebar { flex: 0 0 130px; max-width: 130px; }
    .nv-studio-annotation { display: none; }
    .nv-hero-visual { padding: 50px 0 20px; justify-content: center; }
}
@media (max-width: 767px) {
    .nv-dash { max-width: 100%; }
    .nv-dash__sidebar { display: none; }
    .nv-dash__body { height: auto; }
    .nv-dash__stats { flex-wrap: wrap; }
    .nv-dash__stat-card { flex: 0 0 calc(50% - 3px); }
    .nv-dash__upgrade-banner { display: none; }
}

/* ═══════════════════════════════════════════════════════
   App Mockup — legacy class alias (unused, kept for safety)
   ═══════════════════════════════════════════════════════ */
.nv-app-mockup {
    background: #0e1628;
    border: 1px solid rgba(255,255,255,0.09);
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 30px 80px rgba(0,0,0,0.65), 0 0 0 1px rgba(255,255,255,0.04) inset;
    width: 100%; max-width: 620px;
    position: relative;
    transition: transform 0.4s ease, box-shadow 0.4s ease;
}
.nv-app-mockup::before {
    content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px;
    background: linear-gradient(90deg, #3b82f6, #8b5cf6, #ec4899);
}
.nv-app-mockup:hover {
    transform: translateY(-5px);
    box-shadow: 0 40px 100px rgba(0,0,0,0.7), 0 0 60px rgba(99,102,241,0.15);
}
[data-theme="light"] .nv-app-mockup {
    background: #fff;
    border-color: rgba(99,102,241,0.1);
    box-shadow: 0 20px 60px rgba(99,102,241,0.12), 0 4px 20px rgba(0,0,0,0.06);
}

/* Mockup Header */
.nv-mock-header {
    display: flex; align-items: center; gap: 12px;
    padding: 10px 16px;
    background: rgba(255,255,255,0.02);
    border-bottom: 1px solid rgba(255,255,255,0.06);
}
[data-theme="light"] .nv-mock-header {
    background: #f8faff; border-bottom-color: rgba(0,0,0,0.06);
}
.nv-mock-dots { display: flex; gap: 6px; align-items: center; }
.nv-mock-logo {
    display: flex; align-items: center; gap: 6px; margin-left: 8px;
}
.nv-mock-logo img { height: 20px; width: auto; object-fit: contain; }
.nv-mock-logo-fallback { display: flex; align-items: center; gap: 6px; }

/* Mockup Body */
.nv-mock-body {
    display: flex; height: 340px;
}

/* Sidebar */
.nv-mock-sidebar {
    flex: 0 0 160px; max-width: 160px;
    background: rgba(255,255,255,0.015);
    border-right: 1px solid rgba(255,255,255,0.06);
    padding: 12px 8px; overflow-y: auto; display: flex; flex-direction: column; gap: 4px;
    scrollbar-width: none;
}
[data-theme="light"] .nv-mock-sidebar { background: #f8faff; border-right-color: rgba(0,0,0,0.06); }
.nv-mock-sidebar::-webkit-scrollbar { display: none; }
.nv-mock-nav-section { margin-bottom: 8px; }
.nv-mock-nav-label {
    display: block; font-size: 9px; font-weight: 700; letter-spacing: 0.08em;
    text-transform: uppercase; color: rgba(148,163,184,0.45); padding: 0 6px 4px;
}
[data-theme="light"] .nv-mock-nav-label { color: #94a3b8; }
.nv-mock-nav-item {
    display: flex; align-items: center; gap: 7px;
    padding: 6px 8px; border-radius: 7px;
    font-size: 11px; font-weight: 500; color: rgba(148,163,184,0.6);
    cursor: default; text-decoration: none; transition: all 0.15s;
    white-space: nowrap; overflow: hidden;
}
.nv-mock-nav-item i { font-size: 10px; flex-shrink: 0; }
.nv-mock-nav-item--active {
    background: rgba(99,102,241,0.15); color: #a5b4fc;
    border: 1px solid rgba(99,102,241,0.2);
}
[data-theme="light"] .nv-mock-nav-item { color: #64748b; }
[data-theme="light"] .nv-mock-nav-item--active { background: rgba(37,99,235,0.08); color: #2563eb; border-color: rgba(37,99,235,0.18); }
.nv-mock-pro-badge {
    margin-top: auto; padding: 8px; border-radius: 8px;
    background: linear-gradient(135deg, rgba(37,99,235,0.12), rgba(139,92,246,0.12));
    border: 1px solid rgba(99,102,241,0.2);
    display: flex; align-items: center; gap: 6px;
}
.nv-mock-pro-badge > i { font-size: 11px; color: #fbbf24; flex-shrink: 0; }
.nv-mock-pro-badge > div { flex: 1; min-width: 0; overflow: hidden; }
.nv-mock-pro-badge strong { display: block; font-size: 10px; color: #e2e8f0; white-space: nowrap; }
.nv-mock-pro-badge span { display: block; font-size: 9px; color: rgba(148,163,184,0.6); white-space: nowrap; }
.nv-mock-upgrade {
    display: block; font-size: 9px; font-weight: 700; color: #a78bfa;
    text-decoration: none; white-space: nowrap; cursor: default;
}

/* Main content */
.nv-mock-main {
    flex: 1; padding: 12px 14px; display: flex; flex-direction: column; gap: 10px;
    overflow: hidden; min-width: 0;
}
.nv-mock-project-header {
    display: flex; align-items: center;
}
.nv-mock-project-title {
    font-size: 13px; font-weight: 700; color: #e2e8f0;
    display: flex; align-items: center; gap: 6px;
}
.nv-mock-project-title i:first-child { color: #6366f1; font-size: 11px; }
.nv-mock-edit-icon { font-size: 10px; color: rgba(148,163,184,0.4); }
[data-theme="light"] .nv-mock-project-title { color: #0f172a; }

.nv-mock-selectors { display: flex; gap: 8px; }
.nv-mock-select-group { flex: 1; min-width: 0; }
.nv-mock-select-group label {
    display: block; font-size: 9px; font-weight: 600; text-transform: uppercase;
    letter-spacing: 0.06em; color: rgba(148,163,184,0.5); margin-bottom: 4px;
}
[data-theme="light"] .nv-mock-select-group label { color: #94a3b8; }
.nv-mock-select {
    display: flex; align-items: center; gap: 5px;
    padding: 6px 8px; border-radius: 7px;
    background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08);
    font-size: 11px; color: rgba(203,213,225,0.8); white-space: nowrap; overflow: hidden;
}
.nv-mock-select img { border-radius: 50%; flex-shrink: 0; }
.nv-mock-select .fi { width: 14px; height: 14px; flex-shrink: 0; border-radius: 2px; background-size: cover; }
.nv-mock-select i.fa-chevron-down { margin-left: auto; font-size: 9px; color: rgba(148,163,184,0.4); flex-shrink: 0; }
[data-theme="light"] .nv-mock-select { background: #f1f5f9; border-color: rgba(0,0,0,0.08); color: #334155; }

.nv-mock-textarea {
    flex: 1; background: rgba(255,255,255,0.03); border: 1px solid rgba(255,255,255,0.07);
    border-radius: 9px; padding: 10px 12px;
    display: flex; flex-direction: column; gap: 8px; overflow: hidden;
}
[data-theme="light"] .nv-mock-textarea { background: #f8faff; border-color: rgba(99,102,241,0.1); }
.nv-mock-textarea p {
    margin: 0; font-size: 11px; line-height: 1.6;
    color: rgba(203,213,225,0.65); flex: 1;
    display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden;
}
[data-theme="light"] .nv-mock-textarea p { color: #64748b; }
.nv-mock-textarea-footer { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.nv-mock-char-count { font-size: 10px; color: rgba(148,163,184,0.45); white-space: nowrap; }
.nv-mock-generate-btn {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 6px 12px; border-radius: 7px;
    background: linear-gradient(135deg, #2563eb, #7c3aed);
    font-size: 11px; font-weight: 700; color: #fff; text-decoration: none;
    white-space: nowrap; flex-shrink: 0;
}
.nv-mock-generate-btn i { font-size: 10px; }

/* Audio player */
.nv-mock-player {
    display: flex; align-items: center; gap: 8px;
    padding: 8px 10px; border-radius: 9px;
    background: rgba(255,255,255,0.03); border: 1px solid rgba(255,255,255,0.07);
}
[data-theme="light"] .nv-mock-player { background: #f8faff; border-color: rgba(0,0,0,0.07); }
.nv-mock-play-btn, .nv-mock-dl-btn {
    width: 24px; height: 24px; border-radius: 50%; border: none; cursor: default;
    display: inline-flex; align-items: center; justify-content: center;
    background: rgba(99,102,241,0.2); color: #a5b4fc; font-size: 9px; flex-shrink: 0;
}
.nv-mock-player-wave {
    flex: 1; display: flex; align-items: center; justify-content: center; gap: 2px; height: 24px;
}
.nv-mock-player-wave span {
    flex: 0 0 auto; width: 2px; border-radius: 2px;
    background: linear-gradient(to top, #3b82f6, #8b5cf6);
    animation: nvMockWave 1.2s ease-in-out infinite;
}
.nv-mock-player-wave span:nth-child(2n)  { background: linear-gradient(to top, #8b5cf6, #ec4899); }
.nv-mock-player-wave span:nth-child(1)  { animation-delay: 0.00s; height: 6px; }
.nv-mock-player-wave span:nth-child(2)  { animation-delay: 0.05s; height: 10px; }
.nv-mock-player-wave span:nth-child(3)  { animation-delay: 0.10s; height: 16px; }
.nv-mock-player-wave span:nth-child(4)  { animation-delay: 0.15s; height: 20px; }
.nv-mock-player-wave span:nth-child(5)  { animation-delay: 0.20s; height: 14px; }
.nv-mock-player-wave span:nth-child(6)  { animation-delay: 0.10s; height: 18px; }
.nv-mock-player-wave span:nth-child(7)  { animation-delay: 0.05s; height: 22px; }
.nv-mock-player-wave span:nth-child(8)  { animation-delay: 0.00s; height: 16px; }
.nv-mock-player-wave span:nth-child(9)  { animation-delay: 0.05s; height: 12px; }
.nv-mock-player-wave span:nth-child(10) { animation-delay: 0.10s; height: 18px; }
.nv-mock-player-wave span:nth-child(11) { animation-delay: 0.15s; height: 22px; }
.nv-mock-player-wave span:nth-child(12) { animation-delay: 0.10s; height: 14px; }
.nv-mock-player-wave span:nth-child(13) { animation-delay: 0.05s; height: 10px; }
.nv-mock-player-wave span:nth-child(14) { animation-delay: 0.00s; height: 8px; }
.nv-mock-player-wave span:nth-child(15) { animation-delay: 0.05s; height: 12px; }
.nv-mock-player-wave span:nth-child(16) { animation-delay: 0.10s; height: 18px; }
.nv-mock-player-wave span:nth-child(17) { animation-delay: 0.05s; height: 10px; }
.nv-mock-player-wave span:nth-child(18) { animation-delay: 0.00s; height: 6px; }
.nv-mock-player-wave span:nth-child(19) { animation-delay: 0.05s; height: 10px; }
.nv-mock-player-wave span:nth-child(20) { animation-delay: 0.10s; height: 14px; }
.nv-mock-player-wave span:nth-child(21) { animation-delay: 0.05s; height: 8px; }
.nv-mock-player-wave span:nth-child(22) { animation-delay: 0.00s; height: 6px; }
@keyframes nvMockWave {
    0%,100% { opacity: 0.5; }
    50%      { opacity: 1; }
}
.nv-mock-time { font-size: 9px; color: rgba(148,163,184,0.5); white-space: nowrap; flex-shrink: 0; }

/* Right panel */
.nv-mock-right-panel {
    flex: 0 0 150px; max-width: 150px;
    background: rgba(255,255,255,0.015);
    border-left: 1px solid rgba(255,255,255,0.06);
    padding: 12px 10px; display: flex; flex-direction: column; gap: 12px; overflow: hidden;
}
[data-theme="light"] .nv-mock-right-panel { background: #f8faff; border-left-color: rgba(0,0,0,0.06); }
.nv-mock-panel-title {
    display: block; font-size: 10px; font-weight: 700; color: #e2e8f0; margin-bottom: 8px;
}
[data-theme="light"] .nv-mock-panel-title { color: #0f172a; }
.nv-mock-voice-preview { display: flex; flex-direction: column; align-items: center; gap: 6px; }
.nv-mock-preview-avatar { width: 52px; height: 52px; border-radius: 50%; overflow: hidden; flex-shrink: 0; }
.nv-mock-preview-avatar img { width: 100%; height: 100%; object-fit: cover; display: block; }
.nv-mock-preview-wave {
    display: flex; align-items: center; gap: 2px; height: 20px;
}
.nv-mock-preview-wave span {
    flex: 0 0 auto; width: 2px; border-radius: 2px;
    background: linear-gradient(to top, #3b82f6, #8b5cf6);
    animation: nvMockWave 1.4s ease-in-out infinite;
    height: 6px;
}
.nv-mock-preview-wave span:nth-child(2n) { background: linear-gradient(to top, #8b5cf6, #ec4899); animation-delay: 0.1s; height: 12px; }
.nv-mock-preview-wave span:nth-child(3n) { animation-delay: 0.2s; height: 18px; }
.nv-mock-preview-time { font-size: 9px; color: rgba(148,163,184,0.5); }
.nv-mock-recent { flex: 1; overflow: hidden; display: flex; flex-direction: column; }
.nv-mock-recent-item {
    display: flex; flex-direction: column; gap: 1px;
    padding: 5px 0; border-bottom: 1px solid rgba(255,255,255,0.04);
}
[data-theme="light"] .nv-mock-recent-item { border-color: rgba(0,0,0,0.05); }
.nv-mock-ri-name { font-size: 10px; font-weight: 600; color: rgba(203,213,225,0.7); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.nv-mock-ri-time { font-size: 9px; color: rgba(148,163,184,0.4); }
[data-theme="light"] .nv-mock-ri-name { color: #334155; }
.nv-mock-view-all {
    display: block; margin-top: 8px; font-size: 10px; font-weight: 600;
    color: #6366f1; text-decoration: none; text-align: center;
}

/* Responsive adjustments for mockup */
@media (max-width: 1200px) {
    .nv-mock-right-panel { flex: 0 0 130px; max-width: 130px; }
    .nv-mock-sidebar { flex: 0 0 140px; max-width: 140px; }
}
@media (max-width: 991px) {
    .nv-app-mockup { max-width: 540px; }
    .nv-mock-right-panel { display: none; }
    .nv-mock-body { height: auto; }
    .nv-mock-sidebar { flex: 0 0 130px; max-width: 130px; }
    .nv-studio-annotation { display: none; }
}
@media (max-width: 767px) {
    .nv-app-mockup { max-width: 100%; }
    .nv-mock-sidebar { display: none; }
    .nv-mock-body { height: auto; }
    .nv-hero-feature-chips { justify-content: center; }
    .nv-hero-elevenlabs-cmp { text-align: center; }
}

/* ═══════════════════════════════════════════════════════
   Stats Bar
   ═══════════════════════════════════════════════════════ */
.nv-stats-bar {
    background: #080f1e;
    border-top: 1px solid rgba(255,255,255,0.05);
    border-bottom: 1px solid rgba(255,255,255,0.05);
    padding: 36px 0;
}
[data-theme="light"] .nv-stats-bar {
    background: #f0f4ff;
    border-color: rgba(99,102,241,0.08);
}
.nv-stats-bar-grid {
    display: flex; align-items: center; justify-content: center;
    flex-wrap: wrap; gap: 16px 0;
}
.nv-stats-bar-item {
    display: flex; align-items: center; gap: 16px;
    flex: 1; justify-content: center; min-width: 180px;
}
.nv-stats-bar-divider {
    width: 1px; height: 50px; flex-shrink: 0;
    background: rgba(255,255,255,0.06);
}
[data-theme="light"] .nv-stats-bar-divider { background: rgba(0,0,0,0.08); }
.nv-stats-bar-icon {
    width: 48px; height: 48px; border-radius: 12px; flex-shrink: 0;
    display: flex; align-items: center; justify-content: center;
    font-size: 20px;
}
.nv-stats-icon--users { background: rgba(99,102,241,0.18); color: #818cf8; }
.nv-stats-icon--minutes { background: rgba(236,72,153,0.18); color: #f472b6; }
.nv-stats-icon--langs { background: rgba(20,184,166,0.18); color: #2dd4bf; }
.nv-stats-icon--uptime { background: rgba(245,158,11,0.18); color: #fbbf24; }
[data-theme="light"] .nv-stats-icon--users { background: rgba(99,102,241,0.1); color: #4f46e5; }
[data-theme="light"] .nv-stats-icon--minutes { background: rgba(236,72,153,0.1); color: #db2777; }
[data-theme="light"] .nv-stats-icon--langs { background: rgba(20,184,166,0.1); color: #0f766e; }
[data-theme="light"] .nv-stats-icon--uptime { background: rgba(245,158,11,0.1); color: #d97706; }
.nv-stats-bar-info { display: flex; flex-direction: column; gap: 2px; }
.nv-stats-bar-num {
    font-size: 28px; font-weight: 800; line-height: 1; letter-spacing: -0.5px;
    color: #f1f5ff;
}
[data-theme="light"] .nv-stats-bar-num { color: #0f172a; }
.nv-stats-bar-lbl {
    font-size: 13px; font-weight: 500; color: rgba(148,163,184,0.7);
}
[data-theme="light"] .nv-stats-bar-lbl { color: #64748b; }
@media (max-width: 767px) {
    .nv-stats-bar-grid { gap: 20px 0; }
    .nv-stats-bar-divider { display: none; }
    .nv-stats-bar-item { min-width: 50%; flex: 0 0 50%; }
    .nv-stats-bar-num { font-size: 24px; }
}

/* ═══════════════════════════════════════════════════════
   Voice Samples Section
   ═══════════════════════════════════════════════════════ */
.nv-voice-samples-section {
    padding: 64px 0;
    background: #060d1a;
}
[data-theme="light"] .nv-voice-samples-section { background: #fff; }
.nv-voice-samples-header {
    display: flex; align-items: flex-end; justify-content: space-between;
    margin-bottom: 32px; gap: 16px; flex-wrap: wrap;
}
.nv-voice-samples-title {
    font-size: clamp(22px, 3vw, 34px); font-weight: 800; line-height: 1.2;
    letter-spacing: -0.5px; color: #f1f5ff; margin: 0;
}
[data-theme="light"] .nv-voice-samples-title { color: #0f172a; }
.nv-voice-samples-viewall {
    display: inline-flex; align-items: center; gap: 6px;
    font-size: 14px; font-weight: 600; color: #6366f1; text-decoration: none;
    white-space: nowrap; transition: gap 0.2s;
}
.nv-voice-samples-viewall:hover { gap: 10px; color: #818cf8; }
.nv-voice-samples-viewall i { font-size: 12px; }
.nv-voice-samples-track-wrap { position: relative; }
.nv-voice-samples-track {
    display: flex; gap: 16px; overflow-x: auto; padding-bottom: 8px;
    scrollbar-width: none;
    scroll-snap-type: x mandatory;
}
.nv-voice-samples-track::-webkit-scrollbar { display: none; }
/* Voice Sample Card */
.nv-voice-sample-card {
    flex: 0 0 188px;
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 18px; padding: 22px 16px 16px;
    display: flex; flex-direction: column; align-items: center; gap: 10px;
    transition: all 0.28s ease; scroll-snap-align: start;
    position: relative; overflow: hidden;
}
.nv-voice-sample-card::before {
    content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px;
    background: linear-gradient(90deg, var(--vsc-c1, #6366f1), var(--vsc-c2, #8b5cf6));
    opacity: 0; transition: opacity 0.25s;
}
.nv-voice-sample-card:hover::before { opacity: 1; }
.nv-voice-sample-card:hover {
    background: rgba(255,255,255,0.07);
    border-color: rgba(255,255,255,0.15);
    transform: translateY(-5px);
    box-shadow: 0 16px 40px rgba(0,0,0,0.4);
}
[data-theme="light"] .nv-voice-sample-card { background: #f8faff; border-color: rgba(99,102,241,0.1); }
[data-theme="light"] .nv-voice-sample-card:hover { background: #fff; border-color: rgba(99,102,241,0.25); box-shadow: 0 12px 32px rgba(99,102,241,0.12); }

/* Avatar */
.nv-vsc-avatar { position: relative; flex-shrink: 0; }
.nv-vsc-avatar img { width: 72px; height: 72px; border-radius: 50%; display: block; object-fit: cover; }
.nv-vsc-play-btn {
    position: absolute; bottom: 0; right: 0;
    width: 28px; height: 28px; border-radius: 50%;
    border: 2.5px solid #0d1526;
    background: linear-gradient(135deg, var(--vsc-c1, #6366f1), var(--vsc-c2, #8b5cf6));
    color: #fff; font-size: 9px;
    display: flex; align-items: center; justify-content: center;
    cursor: pointer; transition: transform 0.2s, box-shadow 0.2s;
}
.nv-vsc-play-btn:hover { transform: scale(1.2); box-shadow: 0 4px 14px rgba(0,0,0,0.45); }
[data-theme="light"] .nv-vsc-play-btn { border-color: #fff; }
/* Swap icon when playing */
.nv-voice-sample-card.nv-vsc--playing .nv-vsc-play-btn .fa-play  { display: none; }
.nv-voice-sample-card:not(.nv-vsc--playing) .nv-vsc-play-btn .fa-pause { display: none; }

/* Name / meta */
.nv-vsc-info { text-align: center; }
.nv-vsc-name { display: block; font-size: 14px; font-weight: 700; color: #e2e8f0; }
.nv-vsc-meta { display: block; font-size: 11px; color: rgba(148,163,184,0.6); margin-top: 1px; }
[data-theme="light"] .nv-vsc-name { color: #0f172a; }
[data-theme="light"] .nv-vsc-meta { color: #64748b; }

/* Waveform — static by default, animates only when playing */
.nv-vsc-wave {
    display: flex; align-items: center; justify-content: center;
    gap: 2.5px; height: 32px; width: 100%;
}
.nv-vsc-wave span {
    flex: 0 0 2.5px; border-radius: 3px; min-height: 3px;
    background: linear-gradient(to top, var(--vsc-c1, #6366f1), var(--vsc-c2, #8b5cf6));
    opacity: 0.35;
    transform: scaleY(0.55);
    transform-origin: center;
    transition: opacity 0.3s, transform 0.3s;
    /* no animation by default */
}
/* Animate bars only when card is playing */
.nv-voice-sample-card.nv-vsc--playing .nv-vsc-wave span {
    animation: nvVscWave 1.8s ease-in-out infinite;
    opacity: 1;
    transform: none;
}
@keyframes nvVscWave {
    0%,100% { opacity: 0.55; transform: scaleY(0.45); }
    35%     { opacity: 0.9;  transform: scaleY(1.18); }
    65%     { opacity: 0.7;  transform: scaleY(0.72); }
}

.nv-vsc-nav {
    position: absolute; top: 50%; transform: translateY(-50%);
    width: 36px; height: 36px; border-radius: 50%; border: 1px solid rgba(255,255,255,0.1);
    background: rgba(10,18,36,0.92); backdrop-filter: blur(10px);
    color: #a5b4fc; font-size: 12px; cursor: pointer;
    display: flex; align-items: center; justify-content: center;
    transition: all 0.2s; z-index: 2;
}
.nv-vsc-nav--next { right: -18px; }
.nv-vsc-nav--prev { left: -18px; }
.nv-vsc-nav:hover { background: rgba(99,102,241,0.25); border-color: rgba(99,102,241,0.4); }
[data-theme="light"] .nv-vsc-nav { background: #fff; border-color: rgba(0,0,0,0.1); color: #4f46e5; }

/* ═══════════════════════════════════════════════════════
   Brand Logos Section
   ═══════════════════════════════════════════════════════ */
.nv-brand-logos-section {
    padding: 40px 0;
    background: #060d1a;
    border-top: 1px solid rgba(255,255,255,0.05);
}
[data-theme="light"] .nv-brand-logos-section { background: #f0f4ff; border-color: rgba(99,102,241,0.07); }
.nv-brand-logos-label {
    text-align: center; font-size: 11px; font-weight: 700; letter-spacing: 0.1em;
    color: rgba(148,163,184,0.5); text-transform: uppercase; margin-bottom: 24px;
}
[data-theme="light"] .nv-brand-logos-label { color: #94a3b8; }
.nv-brand-logos-row {
    display: flex; align-items: center; justify-content: center;
    flex-wrap: wrap; gap: 10px 28px;
}
.nv-brand-logo-item {
    display: inline-flex; align-items: center; gap: 6px;
    font-size: 16px; font-weight: 700; letter-spacing: -0.3px;
    color: rgba(203,213,225,0.4); text-decoration: none;
    transition: color 0.2s, opacity 0.2s;
    white-space: nowrap;
}
.nv-brand-logo-item:hover { color: rgba(203,213,225,0.8); }
.nv-brand-logo-item i { font-size: 18px; }
.nv-brand-logo-item span { font-size: 15px; }
.nv-brand-svg { height: 18px; width: auto; fill: currentColor; vertical-align: middle; }
.nv-brand-logo-text { font-size: 17px; font-weight: 700; letter-spacing: -0.4px; }
.nv-brand-logo-bbc { letter-spacing: 0.05em; }
.nv-brand-logo-item--more {
    font-size: 12px; font-weight: 500; color: rgba(148,163,184,0.35);
    letter-spacing: 0; font-style: italic;
}
[data-theme="light"] .nv-brand-logo-item { color: rgba(15,23,42,0.3); }
[data-theme="light"] .nv-brand-logo-item:hover { color: rgba(15,23,42,0.7); }
[data-theme="light"] .nv-brand-logo-item--more { color: rgba(15,23,42,0.25); }
@media (max-width: 767px) {
    .nv-brand-logos-row { gap: 10px 18px; }
    .nv-brand-logo-item { font-size: 14px; }
    .nv-voice-sample-card { flex: 0 0 170px; }
}

/* ═══ NepVox Homepage (extracted from index.blade.php) ═══ */

.accordion-area-one {
    padding: 0 !important;
}

/* Custom styles for payment modal */
.modal-content {
    border-radius: 15px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
    border: none;
}

.modal-header {
    background: var(--color-primary);
    color: white;
    padding: 1.5rem;
    border-radius: 15px 15px 0 0;
    border: none;
}

.header-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}

.header-left {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.header-icon {
    font-size: 1.5rem;
    color: rgba(255, 255, 255, 0.9);
}

.header-text {
    display: flex;
    flex-direction: column;
}

.modal-title {
    font-size: 1.25rem;
    font-weight: 600;
    margin: 0;
    color: white;
    line-height: 1.4;
}

.header-subtitle {
    font-size: 0.875rem;
    color: rgba(255, 255, 255, 0.9);
    margin-top: 0.25rem;
}

.btn-close {
    color: white;
    opacity: 0.8;
    transition: all 0.2s ease;
    padding: 0.5rem;
    margin: -0.5rem;
    border-radius: 0.375rem;
}

.btn-close:hover {
    opacity: 1;
    background: rgba(255, 255, 255, 0.1);
}

.btn-close:focus {
    box-shadow: none;
}

/* Update existing styles */
.modal-body {
    padding: 2rem;
}

.payment-methods {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin-bottom: 2rem;
}

.payment-method-card {
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    transition: all 0.3s ease;
}

.payment-button {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 1.25rem;
    border: 1px solid #e0e0e0;
    border-radius: 12px;
    background: #fff;
    transition: all 0.3s ease;
    cursor: pointer;
}

.payment-button:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.stripe-payment:hover {
    border-color: var(--color-primary-hover);
    background: #f8f9ff;
}

.esewa-payment:hover {
    border-color: #28a745;
    background: #f0fff4;
}

.payment-icon {
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 1rem;
}

.payment-icon img {
    max-height: 30px;
    width: auto;
}

.payment-info {
    flex: 1;
    text-align: left;
}

.payment-title {
    display: block;
    font-size: 1.1rem;
    font-weight: 600;
    color: #333;
    margin-bottom: 0.25rem;
}

.payment-subtitle {
    display: block;
    font-size: 0.9rem;
    color: #666;
}

.payment-arrow {
    color: #999;
    font-size: 1.2rem;
    transition: transform 0.3s ease;
}

.payment-button:hover .payment-arrow {
    transform: translateX(4px);
    color: #333;
}

.payment-security {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 1.5rem;
    border-top: 1px solid #eee;
}

.security-badge {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: #666;
    font-size: 0.9rem;
}

.security-badge i {
    color: #28a745;
}

.payment-providers {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.payment-providers img {
    height: 24px;
    width: auto;
    opacity: 0.7;
    transition: opacity 0.3s ease;
}

.payment-providers img:hover {
    opacity: 1;
}

/* Responsive adjustments */
@media (max-width: 576px) {
    .modal-body {
        padding: 1.5rem;
    }

    .payment-button {
        padding: 1rem;
    }

    .payment-icon {
        width: 40px;
        height: 40px;
    }

    .payment-title {
        font-size: 1rem;
    }

    .payment-subtitle {
        font-size: 0.8rem;
    }
}


#paymentImagePreview img {
    max-width: 100%;
    max-height: 200px;
    border-radius: 10px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    margin-top: 10px;
}

#paymentImagePreview {
    background: #f8f9fa;
    border: 1px solid #e0e0e0;
    border-radius: 10px;
    padding: 10px;
    margin-top: 10px;
    display: inline-block;
}

.modal-body .form-label {
    font-weight: 500;
    color: var(--color-primary);
}

.modal-body .form-control,
.modal-body textarea {
    border-radius: 8px;
    border: 1px solid #d1d5db;
    font-size: 1rem;
}

.btn-gradient-manual {
    background: linear-gradient(90deg, var(--color-primary) 0%, var(--color-primary-hover) 100%);
    color: #fff;
    font-size: 1.15rem;
    font-weight: 600;
    border: none;
    border-radius: 10px;
    box-shadow: 0 2px 8px rgba(0, 67, 221, 0.08);
    padding: 0.85rem 1.5rem;
    transition: background 0.2s, box-shadow 0.2s, transform 0.1s;
}

.btn-gradient-manual:hover,
.btn-gradient-manual:focus {
    background: linear-gradient(90deg, var(--color-primary-hover) 0%, var(--color-primary) 100%);
    color: #fff;
    box-shadow: 0 4px 16px rgba(var(--color-primary), 0.15);
    transform: translateY(-2px) scale(1.02);
}

.btn-gradient-manual i {
    font-size: 1.2rem;
}

     
/* Gradient Card Styling */
.gradient-card {
    background: linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%);
    border: 1px solid rgba(var(--color-primary), 0.1);
    position: relative;
    overflow: hidden;
}

.gradient-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(var(--color-primary), 0.05) 0%, rgba(139, 92, 246, 0.05) 50%, rgba(236, 72, 153, 0.05) 100%);
    opacity: 0;
    transition: opacity 0.3s ease;
    pointer-events: none;
}

.gradient-card:hover::before {
    opacity: 1;
}

.gradient-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 50px rgba(var(--color-primary), 0.15);
    border-color: rgba(var(--color-primary), 0.2);
}

.gradient-card .brand-icon {
    position: relative;
    z-index: 1;
}

.gradient-card .brand-name {
    position: relative;
    z-index: 1;
    font-weight: 600;
    color: #333;
}

/* Dark theme support */
[data-theme="dark"] .gradient-badge {
    background: linear-gradient(135deg, var(--color-primary) 0%, #8b5cf6 50%, #ec4899 100%);
    color: white;
}

[data-theme="dark"] .gradient-card {
    background: linear-gradient(135deg, #1a1a1a 0%, #2d2d2d 100%);
    border-color: rgba(255, 255, 255, 0.1);
}

[data-theme="dark"] .gradient-card .brand-name {
    color: #ffffff;
}

[data-theme="dark"] .gradient-card:hover {
    border-color: rgba(var(--color-primary), 0.3);
}

/* Custom Image Upload Styles */
.custom-image-upload {
    position: relative;
}

.upload-area {
    border: 2px dashed var(--color-primary);
    border-radius: 10px;
    padding: 32px 16px;
    text-align: center;
    background: #f8faff;
    cursor: pointer;
    transition: border-color 0.2s, background 0.2s;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.upload-area.dragover {
    border-color: var(--color-primary);
    background: #e6f0ff;
}

.upload-icon {
    font-size: 2.5rem;
    color: var(--color-primary);
    margin-bottom: 0.5rem;
}

.upload-text {
    font-size: 1.05rem;
    color: #333;
}

.upload-link {
    color: var(--color-primary);
    text-decoration: underline;
    cursor: pointer;
}

.image-preview {
    position: relative;
    display: inline-block;
    margin-top: 10px;
}

.image-preview img {
    max-width: 100%;
    max-height: 200px;
    border-radius: 10px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.remove-image-btn {
    position: absolute;
    top: 8px;
    right: 8px;
    background: rgba(0, 0, 0, 0.6);
    color: #fff;
    border: none;
    border-radius: 50%;
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    font-size: 1.1rem;
    z-index: 2;
    transition: background 0.2s;
}

.remove-image-btn:hover {
    background: #dc3545;
}

@media (max-width: 576px) {
    .upload-area {
        padding: 20px 8px;
    }

    .image-preview img {
        max-height: 120px;
    }
}


.feature-item {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #fff;
    font-weight: 500;
}

.feature-item i {
    font-size: 20px;
}

.feature-card {
    background: #fff;
    padding: 30px;
    border-radius: 10px;
    text-align: center;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.08);
    transition: transform 0.3s ease;
    height: 100%;
}

.feature-card:hover {
    transform: translateY(-5px);
}

.feature-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, #007bff, #0056b3);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
}

.feature-icon i {
    color: #fff;
    font-size: 24px;
}

.feature-card h4 {
    color: #333;
    margin-bottom: 15px;
}

.feature-card p {
    color: #666;
    line-height: 1.6;
}

/* Compatible Editors Section */
.compat-section {
    background: #fff;
}

.brand-grid {
    align-items: stretch;
    --brand-gap: 16px;
    margin-left: calc(-1 * var(--brand-gap));
    margin-right: calc(-1 * var(--brand-gap));
}

.brand-card-wrapper {
    margin: 0px !important;
    padding-left: var(--brand-gap);
    padding-right: var(--brand-gap);
    padding-top: var(--brand-gap);
    padding-bottom: var(--brand-gap);
}

.brand-card {
    background: #ffffff;
    border-radius: 18px;
    padding: 22px 16px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    height: 120px;
    box-shadow: 0 10px 30px rgba(8, 58, 94, 0.06);
    border: 1px solid rgba(8, 58, 94, 0.06);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.brand-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 16px 40px rgba(8, 58, 94, 0.10);
}

.brand-icon {
    width: 48px;
    height: 48px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    color: #fff;
    font-family: "Poppins", sans-serif;
}

.brand-initial {
    font-size: 18px;
    line-height: 1;
}

.brand-name {
    font-size: 14px;
    color: #2b2b2b;
    font-weight: 600;
}

.brand-vimeo {
    background: #19B7EA;
}

.brand-youtube {
    background: #FF0000;
}

.brand-premiere {
    background: #6C3CFF;
}

.brand-animate {
    background: #001E63;
}

.brand-filmora {
    background: #0CB4A6;
}

.brand-capcut {
    background: #111;
}

.brand-doodly {
    background: #3FA9F5;
    color: #000;
}

.brand-moovly {
    background: #6F53F1;
}

.brand-powtoon {
    background: #FFB800;
    color: #111;
}

.brand-renderforest {
    background: #1e55e8;
}

.brand-resolve {
    background: #222;
}

.brand-adobe {
    background: #ED1C24;
}

.brand-audition {
    background: #2E7DFF;
}

.brand-aftereffects {
    background: #9999FF;
    color: #000;
}

.brand-finalcut {
    background: #222;
}

.brand-camtasia {
    background: #28A745;
}

.brand-imovie {
    background: #5B2EFF;
}

.brand-audacity {
    background: #1A73E8;
}

@media (max-width: 576px) {
    .brand-grid {
        --brand-gap: 12px;
    }

    .brand-card {
        height: 110px;
    }

    .brand-icon {
        width: 44px;
        height: 44px;
    }
}

/* Dark Theme Overrides */
[data-theme="dark"] .comparison-section {
    background-color: #0b1220;
    color: #e5e7eb;
}

[data-theme="dark"] .comparison-header h2 {
    color: #f3f4f6;
}

[data-theme="dark"] .comparison-header p {
    color: #9ca3af;
}

[data-theme="dark"] .comparison-box {
    background: #0f172a;
    border: 1px solid rgba(255, 255, 255, 0.06);
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.45);
}

[data-theme="dark"] .comparison-box h3 {
    color: #e5e7eb;
}

[data-theme="dark"] .comparison-box li {
    color: #cbd5e1;
}

[data-theme="dark"] .comparison-box.traditional {
    background: rgba(255, 107, 107, 0.08);
}

[data-theme="dark"] .comparison-box.ai {
    background: rgba(46, 213, 115, 0.08);
}

[data-theme="dark"] .compat-section {
    background: #0b1220;
}

[data-theme="dark"] .brand-card-wrapper {
    padding-top: var(--brand-gap);
    padding-bottom: var(--brand-gap);
}

[data-theme="dark"] .brand-card {
    background: #0f172a;
    border: 1px solid rgba(255, 255, 255, 0.06);
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.5);
}

[data-theme="dark"] .brand-name {
    color: #e5e7eb;
}

/* Simple Clean Powered By Section */
.vendors {
    margin-top: 20px;
    padding: 15px 0;
    text-align: center;
    border-top: 1px solid #eee;
}

.vendors h6 {
    font-size: 0.75rem;
    font-weight: 500;
    color: #888;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 12px;
}

.vendors span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.vendors img {
    height: 20px;
    width: auto;
    opacity: 0.8;
}

.vendors .vendor-name {
    font-size: 0.8rem;
    color: #666;
    font-weight: 500;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .vendors {
        margin-top: 15px;
        padding: 12px 0;
    }

    .vendors img {
        height: 18px;
    }

    .vendors .vendor-name {
        font-size: 0.75rem;
    }
}

@media (max-width: 576px) {
    .vendors img {
        height: 16px;
    }

    .vendors .vendor-name {
        font-size: 0.7rem;
    }
}

/* Customer Reviews Section Styles */
.customer-reviews-section {
    background: var(--bg-secondary, #f8fafc);
    padding: 100px 0;
    position: relative;
    overflow: hidden;
    transition: background 0.3s ease;
}

[data-theme="dark"] .customer-reviews-section {
    background: var(--bg-primary, #0f172a);
}

.customer-reviews-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="25" cy="25" r="1" fill="%23ffffff" opacity="0.1"/><circle cx="75" cy="75" r="1" fill="%23ffffff" opacity="0.1"/></pattern></defs><rect width="100" height="100" fill="url(%23grain)"/></svg>');
    opacity: 0.3;
    pointer-events: none;
    transition: opacity 0.3s ease;
}

[data-theme="dark"] .customer-reviews-section::before {
    opacity: 0.1;
}

/* Reviews Grid Layout */
.reviews-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    margin: 0 auto;
}

/* Review Card Modern */
.review-card-modern {
    background: var(--bg-card, #ffffff);
    border: 1px solid var(--border-primary, #e5e7eb);
    border-radius: 16px;
    padding: 32px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
    transition: all 0.3s ease;
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
}

[data-theme="dark"] .review-card-modern {
    background: var(--bg-card, #1e293b);
    border-color: var(--border-primary, #334155);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

.review-card-modern:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
    border-color: var(--primary-color, #3b82f6);
}

[data-theme="dark"] .review-card-modern:hover {
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
}

/* Review Card Header */
.review-card-header {
    display: flex;
    align-items: flex-start;
    gap: 6px;
    margin-bottom: 20px;
}

.reviewer-avatar {
    flex-shrink: 0;
}

.reviewer-avatar img {
    width: 70px;
    height: 70px;
    border-radius: 50%;
    object-fit: cover;
}

[data-theme="dark"] .reviewer-avatar img {
    border-color: var(--border-primary, #334155);
}

.reviewer-meta {
    flex: 1;
}

.reviewer-name {
    font-size: 18px;
    font-weight: 600;
    color: var(--text-primary, #1f2937);
    margin: 0 0 6px 0;
    line-height: 1.3;
}

[data-theme="dark"] .reviewer-name {
    color: var(--text-primary, #f8fafc);
}

.reviewer-company {
    font-size: 14px;
    color: var(--text-secondary, #6b7280);
    margin: 0 0 12px 0;
    line-height: 1.4;
}

[data-theme="dark"] .reviewer-company {
    color: var(--text-secondary, #cbd5e1);
}

.review-stars {
    display: flex;
    gap: 4px;
}

.review-stars i {
    color: #fbbf24;
    font-size: 14px;
}

/* Review Card Body */
.review-card-body {
    flex: 1;
    position: relative;
}

.quote-icon {
    position: absolute;
    top: 0;
    left: 0;
    width: 40px;
    height: 40px;
    background: linear-gradient(135deg, var(--primary-color, #3b82f6) 0%, #8b5cf6 50%, #ec4899 100%);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 18px;
    opacity: 0.1;
}

.review-text {
    font-size: 15px;
    line-height: 1.7;
    color: var(--text-secondary, #4b5563);
    margin: 0;
    padding-left: 52px;
}

[data-theme="dark"] .review-text {
    color: var(--text-secondary, #cbd5e1);
}

/* Responsive Design */
@media (max-width: 992px) {
    .reviews-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }

    .review-card-modern {
        padding: 28px;
    }
}

@media (max-width: 768px) {
    .customer-reviews-section {
        padding: 60px 0;
    }

    .reviews-grid {
        grid-template-columns: 1fr;
        gap: 20px;
        padding: 0 15px;
    }

    .review-card-modern {
        padding: 24px;
    }

    .reviewer-avatar img {
        width: 48px;
        height: 48px;
    }

    .reviewer-name {
        font-size: 16px;
    }

    .review-text {
        font-size: 14px;
        padding-left: 48px;
    }

    .quote-icon {
        width: 36px;
        height: 36px;
        font-size: 16px;
    }
}

@media (max-width: 576px) {
    .customer-reviews-section {
        padding: 40px 0;
    }

    .reviews-grid {
        gap: 16px;
        padding: 0 10px;
    }

    .review-card-modern {
        padding: 20px;
    }

    .review-card-header {
        gap: 12px;
    }

    .reviewer-avatar img {
        width: 44px;
        height: 44px;
    }

    .reviewer-name {
        font-size: 15px;
    }

    .reviewer-company {
        font-size: 13px;
    }

    .review-text {
        font-size: 14px;
        padding-left: 44px;
    }

    .quote-icon {
        width: 32px;
        height: 32px;
        font-size: 14px;
    }
}

/* Professional Flags Section Styles */
#flags-wrapper {
    background: var(--bg-secondary, #f8fafc);
    padding: 80px 0;
    position: relative;
    overflow: hidden;
    transition: background 0.3s ease;
}

[data-theme="dark"] #flags-wrapper {
    background: var(--bg-primary, #0f172a);
}

#flags-wrapper::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="50" cy="50" r="1" fill="%23ffffff" opacity="0.1"/></pattern></defs><rect width="100" height="100" fill="url(%23grain)"/></svg>');
    opacity: 0.3;
    pointer-events: none;
}

[data-theme="dark"] #flags-wrapper::before {
    opacity: 0.1;
}

#flags-bg {
    position: relative;
    z-index: 2;
}

.flag-img {
    text-align: center;
    padding: 1rem;
    margin-bottom: 1rem;
    position: relative;
    transition: all 0.3s ease;
    cursor: pointer;
    background: var(--bg-card, #ffffff);
    border: 1px solid var(--border-primary, #e5e7eb);
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

[data-theme="dark"] .flag-img {
    background: var(--bg-card, #1e293b);
    border-color: var(--border-primary, #334155);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

.flag-img:hover {
    transform: translateY(-5px) scale(1.05);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
    border-color: var(--primary-color, #3b82f6);
    z-index: 5;
}

[data-theme="dark"] .flag-img:hover {
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.4);
}

.flag-img::before {
    content: attr(data-country);
    position: absolute;
    top: -45px;
    left: 50%;
    transform: translateX(-50%) translateY(10px);
    background: linear-gradient(135deg, var(--primary-color) 0%, #8b5cf6 50%, #ec4899 100%);
    color: white;
    padding: 0.5rem 1rem;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 600;
    opacity: 0;
    transition: all 0.3s ease;
    white-space: nowrap;
    z-index: 10;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
    pointer-events: none;
}

.flag-img::after {
    content: '';
    position: absolute;
    top: -8px;
    left: 50%;
    transform: translateX(-50%) translateY(10px);
    width: 0;
    height: 0;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 6px solid #8b5cf6;
    opacity: 0;
    transition: all 0.3s ease;
    z-index: 9;
    pointer-events: none;
}

.flag-img:hover::before {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
}

.flag-img:hover::after {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
}

.flag-img img {
    width: 100%;
    height: auto;
    border-radius: 8px;
    transition: all 0.3s ease;
    display: block;
}

.flag-img:hover img {
    filter: brightness(1.1);
}

/* Content styling */
#flags-minify {
    padding-left: 60px;
}

.flags-info-card {
    background: var(--bg-card, #ffffff);
    border: 1px solid var(--border-primary, #e5e7eb);
    border-radius: 24px;
    padding: 3rem;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

[data-theme="dark"] .flags-info-card {
    background: var(--bg-card, #1e293b);
    border-color: var(--border-primary, #334155);
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.3);
}

.flags-info-card::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 200px;
    height: 200px;
    background: linear-gradient(135deg, rgba(59, 130, 246, 0.1) 0%, rgba(139, 92, 246, 0.1) 100%);
    border-radius: 50%;
    transform: translate(30%, -30%);
    z-index: 0;
}

.flags-info-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 50px rgba(0, 0, 0, 0.12);
    border-color: var(--primary-color, #3b82f6);
}

[data-theme="dark"] .flags-info-card:hover {
    box-shadow: 0 15px 50px rgba(0, 0, 0, 0.4);
}

.flags-info-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 2rem;
    position: relative;
    z-index: 1;
}

.flags-info-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, var(--primary-color) 0%, #8b5cf6 50%, #ec4899 100%);
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 28px;
    box-shadow: 0 4px 15px rgba(59, 130, 246, 0.3);
}

.flags-info-badge {
    display: inline-flex;
    align-items: center;
    padding: 0.5rem 1rem;
    background: var(--success-bg, #d1fae5);
    color: var(--success-color, #059669);
    border-radius: 50px;
    font-size: 13px;
    font-weight: 600;
    transition: all 0.3s ease;
}

[data-theme="dark"] .flags-info-badge {
    background: rgba(16, 185, 129, 0.2);
    color: #34d399;
}

.flags-info-title {
    font-size: 2.25rem;
    font-weight: 700;
    color: var(--text-primary, #1f2937);
    margin-bottom: 1.25rem;
    line-height: 1.3;
    position: relative;
    z-index: 1;
    transition: color 0.3s ease;
}

[data-theme="dark"] .flags-info-title {
    color: var(--text-primary, #f8fafc);
}

.flags-info-title .highlight-number {
    background: linear-gradient(135deg, var(--primary-color) 0%, #8b5cf6 50%, #ec4899 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    font-weight: 800;
}

.flags-info-description {
    font-size: 16px;
    color: var(--text-secondary, #6b7280);
    line-height: 1.8;
    margin-bottom: 2rem;
    position: relative;
    z-index: 1;
    transition: color 0.3s ease;
}

[data-theme="dark"] .flags-info-description {
    color: var(--text-secondary, #cbd5e1);
}

.flags-info-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
    margin-top: 2rem;
    position: relative;
    z-index: 1;
}

.stat-item {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem;
    background: var(--bg-secondary, #f8fafc);
    border-radius: 12px;
    border: 1px solid var(--border-primary, #e5e7eb);
    transition: all 0.3s ease;
}

[data-theme="dark"] .stat-item {
    background: var(--bg-tertiary, #334155);
    border-color: var(--border-primary, #475569);
}

.stat-item:hover {
    transform: translateY(-3px);
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    border-color: var(--primary-color, #3b82f6);
}

[data-theme="dark"] .stat-item:hover {
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
}

.stat-icon {
    width: 48px;
    height: 48px;
    background: linear-gradient(135deg, var(--primary-color) 0%, #8b5cf6 50%, #ec4899 100%);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 20px;
    flex-shrink: 0;
}

.stat-content {
    flex: 1;
}

.stat-number {
    font-size: 24px;
    font-weight: 700;
    color: var(--text-primary, #1f2937);
    margin-bottom: 0.25rem;
    transition: color 0.3s ease;
}

[data-theme="dark"] .stat-number {
    color: var(--text-primary, #f8fafc);
}

.stat-label {
    font-size: 13px;
    color: var(--text-secondary, #6b7280);
    font-weight: 500;
    transition: color 0.3s ease;
}

[data-theme="dark"] .stat-label {
    color: var(--text-secondary, #cbd5e1);
}

/* Responsive adjustments */
@media (max-width: 992px) {
    #flags-wrapper {
        padding: 60px 0;
    }

    .flags-info-card {
        padding: 2.5rem;
        margin-top: 40px;
    }

    .flags-info-title {
        font-size: 1.875rem;
    }

    #flags-minify {
        padding-left: 0;
    }

    .flags-info-stats {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
}

@media (max-width: 768px) {
    #flags-wrapper {
        padding: 40px 0;
    }

    .flag-img {
        padding: 0.875rem;
        margin-bottom: 0.75rem;
    }

    .flag-img::before {
        font-size: 12px;
        padding: 0.4rem 0.8rem;
        top: -40px;
    }

    .flags-info-card {
        padding: 2rem;
    }

    .flags-info-title {
        font-size: 1.75rem;
    }

    .flags-info-description {
        font-size: 15px;
    }

    .flags-info-icon {
        width: 50px;
        height: 50px;
        font-size: 24px;
    }

    .stat-item {
        padding: 0.875rem;
    }

    .stat-icon {
        width: 40px;
        height: 40px;
        font-size: 18px;
    }

    .stat-number {
        font-size: 20px;
    }
}

@media (max-width: 576px) {
    .flag-img {
        padding: 0.75rem;
        margin-bottom: 0.5rem;
    }

    .flag-img::before {
        font-size: 11px;
        padding: 0.35rem 0.7rem;
        top: -35px;
    }

    .flags-info-card {
        padding: 1.5rem;
    }

    .flags-info-title {
        font-size: 1.5rem;
    }

    .flags-info-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 1rem;
    }

    .flags-info-stats {
        grid-template-columns: 1fr;
    }
}

/* === Base Section === */
.comparison-section {
    background-color: #fff;
    padding: 80px 20px;
    color: #222;
}


.comparison-header {
    text-align: center;
    max-width: 700px;
    margin: 0 auto 60px;
}

.comparison-header h2 {
    font-size: 36px;
    font-weight: 700;
    color: #222;
    margin-bottom: 16px;
}

.comparison-header p {
    color: #555;
    font-size: 18px;
    line-height: 1.6;
}

/* === Cards Wrapper === */
.comparison-cards {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 40px;
}

/* === Individual Card === */
.comparison-box {
    --comparison-radius: 16px;
    --corner-offset: 12px;
    flex: 1 1 450px;
    border-radius: var(--comparison-radius);
    padding: 40px 35px;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.comparison-box:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.08);
}

/* Corner accents per card */
.comparison-box::before,
.comparison-box::after {
    content: '';
    position: absolute;
    width: 120px;
    height: 120px;
    opacity: 0;
    border: 2px solid currentColor;
    transition: transform 0.35s ease, opacity 0.35s ease;
    pointer-events: none;
    border-radius: 0;
    /* remove rounded end-cap inside the L-shape */
}

.comparison-box::before {
    top: var(--corner-offset);
    left: var(--corner-offset);
    border-right: none;
    border-bottom: none;
    transform: translate(-4px, -4px);
}

.comparison-box::after {
    bottom: var(--corner-offset);
    right: var(--corner-offset);
    border-left: none;
    border-top: none;
    transform: translate(4px, 4px);
}

.comparison-box:hover::before,
.comparison-box:hover::after {
    opacity: 1;
    transform: translate(0, 0);
}

/* Variant colors */
.comparison-box.traditional {
    color: #ff6b6b;
    /* accent color for borders */
}

.comparison-box.ai {
    color: #2ed573;
    /* accent color for borders */
}

/* Keep text colors inside the cards unaffected by currentColor */
.comparison-box h3,
.comparison-box li {
    color: inherit;
}

/* Responsive tweak for corner sizes */
@media (max-width: 768px) {

    .comparison-box::before,
    .comparison-box::after {
        width: 96px;
        height: 96px;
    }
}

.comparison-box h3 {
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 30px;
}

/* === List Style === */
.comparison-box ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.comparison-box li {
    font-size: 16px;
    line-height: 1.7;
    margin-bottom: 14px;
    display: flex;
    align-items: flex-start;
}

/* === Traditional (Left) === */
.traditional {
    background: #fff6f6;
}

.traditional h3 {
    color: #222;
}

.traditional li {
    color: #444;
}

/* === AI (Right) === */
.ai {
    background: #f3fff6;
}

.ai h3 {
    color: #222;
}

.ai li {
    color: #444;
}

 /* === Responsive === */
 @media (max-width: 768px) {
     .comparison-cards {
         flex-direction: column;
     }

     .comparison-box {
         flex: 1 1 100%;
     }
 }

 /* === Emotional Voices — Premium Redesign === */
 .emotional-voices-section.ev-v2 {
     font-family: inherit;
     background: #06090f;
     background-image:
         radial-gradient(ellipse 80% 55% at 15% 35%, rgba(59, 130, 246, 0.09) 0%, transparent 65%),
         radial-gradient(ellipse 70% 50% at 85% 65%, rgba(139, 92, 246, 0.07) 0%, transparent 65%),
         radial-gradient(ellipse 60% 40% at 50% 0%, rgba(236, 72, 153, 0.05) 0%, transparent 55%),
         linear-gradient(160deg, #06090f 0%, #0b1322 55%, #080d18 100%);
     padding: 72px 0 80px;
     position: relative;
     overflow: hidden;
 }

 [data-theme=”light”] .emotional-voices-section.ev-v2 {
     background: #f0f4ff;
     background-image:
         radial-gradient(ellipse 80% 55% at 15% 35%, rgba(59, 130, 246, 0.08) 0%, transparent 65%),
         radial-gradient(ellipse 70% 50% at 85% 65%, rgba(139, 92, 246, 0.06) 0%, transparent 65%),
         linear-gradient(160deg, #eef2ff 0%, #f5f0ff 55%, #f0f4ff 100%);
 }

 /* Floating ambient orbs */
 .ev-v2-orb {
     position: absolute;
     border-radius: 50%;
     pointer-events: none;
     filter: blur(60px);
 }
 .ev-v2-orb--a {
     top: -80px; left: -60px;
     width: 480px; height: 480px;
     background: radial-gradient(circle, rgba(59, 130, 246, 0.1) 0%, transparent 70%);
     animation: ev2OrbDrift 14s ease-in-out infinite;
 }
 .ev-v2-orb--b {
     bottom: -100px; right: -60px;
     width: 560px; height: 560px;
     background: radial-gradient(circle, rgba(139, 92, 246, 0.08) 0%, transparent 70%);
     animation: ev2OrbDrift 18s ease-in-out infinite reverse;
 }
 @keyframes ev2OrbDrift {
     0%, 100% { transform: translate(0, 0) scale(1); }
     40%  { transform: translate(28px, -18px) scale(1.06); }
     70%  { transform: translate(-14px, 24px) scale(0.96); }
 }

 /* Section heading */
 .ev-v2-head {
     padding-bottom: 8px;
     margin-bottom: 44px !important;
 }

 .emotional-voices-section.ev-v2 .ev-v2-head .title {
     margin-top: 12px;
     margin-bottom: 12px;
     color: #f1f5f9;
     -webkit-text-fill-color: #f1f5f9;
 }

 [data-theme=”light”] .emotional-voices-section.ev-v2 .ev-v2-head .title {
     color: #0f172a;
     -webkit-text-fill-color: #0f172a;
 }

 .emotional-voices-section.ev-v2 .ev-v2-lead.disc {
     font-family: inherit;
     font-size: 17px;
     line-height: 28px;
     font-weight: 400;
     max-width: 520px;
     margin-left: auto;
     margin-right: auto;
     color: rgba(148, 163, 184, 0.85);
 }

 [data-theme=”light”] .emotional-voices-section.ev-v2 .ev-v2-lead.disc {
     color: #475569;
 }

 /* Grid */
 .ev-v2-grid {
     display: grid;
     grid-template-columns: repeat(2, minmax(0, 1fr));
     gap: 20px;
     max-width: 1080px;
     margin: 0 auto;
     position: relative;
     z-index: 1;
 }

 @media (max-width: 768px) {
     .ev-v2-grid { grid-template-columns: 1fr; gap: 14px; }
 }

 /* Card */
 .ev-v2 .voice-profile-card.ev-v2-card {
     --ev-a: #3b82f6;
     --ev-b: #8b5cf6;
     --ev-c: #ec4899;
     --ev-glow: rgba(99, 102, 241, 0.2);
     position: relative;
     background: rgba(12, 20, 38, 0.8);
     backdrop-filter: blur(24px);
     -webkit-backdrop-filter: blur(24px);
     border: 1px solid rgba(255, 255, 255, 0.07);
     border-radius: 22px;
     padding: 22px 22px 20px;
     margin: 0;
     transition: border-color 0.3s ease, box-shadow 0.35s ease, transform 0.3s ease;
     overflow: hidden;
     box-shadow: 0 4px 30px rgba(0, 0, 0, 0.4), 0 0 0 1px rgba(255,255,255,0.03) inset;
 }

 [data-theme=”light”] .ev-v2 .voice-profile-card.ev-v2-card {
     background: rgba(255, 255, 255, 0.88);
     border-color: rgba(148, 163, 184, 0.2);
     box-shadow: 0 4px 24px rgba(15, 23, 42, 0.07), 0 1px 3px rgba(15,23,42,0.05);
 }

 /* Gradient top bar */
 .ev-v2 .voice-profile-card.ev-v2-card::before {
     content: '';
     position: absolute;
     top: 0; left: 0; right: 0;
     height: 3px;
     background: linear-gradient(90deg, var(--ev-a), var(--ev-b), var(--ev-c));
     border-radius: 22px 22px 0 0;
 }

 /* Bottom ambient glow layer */
 .ev-v2 .voice-profile-card.ev-v2-card::after {
     content: '';
     position: absolute;
     bottom: -50px; left: 50%;
     transform: translateX(-50%);
     width: 65%; height: 90px;
     border-radius: 50%;
     background: var(--ev-glow);
     filter: blur(28px);
     opacity: 0;
     transition: opacity 0.4s ease;
     pointer-events: none;
 }

 .ev-v2 .voice-profile-card.ev-v2-card:hover {
     transform: translateY(-5px);
     border-color: rgba(255, 255, 255, 0.14);
     box-shadow: 0 24px 70px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(255,255,255,0.07) inset, 0 0 70px var(--ev-glow);
 }

 .ev-v2 .voice-profile-card.ev-v2-card:hover::after { opacity: 1; }

 [data-theme=”light”] .ev-v2 .voice-profile-card.ev-v2-card:hover {
     border-color: rgba(59, 130, 246, 0.2);
     box-shadow: 0 12px 44px rgba(15, 23, 42, 0.1), 0 0 50px var(--ev-glow);
 }

 /* Per-voice accent variables */
 .ev-v2 .davis-profile { --ev-a: #3b82f6; --ev-b: #6366f1; --ev-c: #818cf8; --ev-glow: rgba(99, 102, 241, 0.22); }
 .ev-v2 .jane-profile  { --ev-a: #ec4899; --ev-b: #a855f7; --ev-c: #c084fc; --ev-glow: rgba(168, 85, 247, 0.22); }
 .ev-v2 .sara-profile  { --ev-a: #14b8a6; --ev-b: #06b6d4; --ev-c: #22d3ee; --ev-glow: rgba(6, 182, 212, 0.22); }
 .ev-v2 .tony-profile  { --ev-a: #f59e0b; --ev-b: #f97316; --ev-c: #ef4444; --ev-glow: rgba(249, 115, 22, 0.22); }

 /* Card top row */
 .ev-v2-card-top {
     display: flex;
     align-items: center;
     gap: 14px;
     margin-bottom: 16px;
 }

 /* Avatar with gradient ring */
 .ev-v2-avatar-ring {
     width: 70px;
     height: 70px;
     border-radius: 50%;
     background: linear-gradient(135deg, var(--ev-a), var(--ev-b), var(--ev-c));
     padding: 2.5px;
     flex-shrink: 0;
     transition: transform 0.3s ease, box-shadow 0.3s ease;
 }

 .ev-v2 .voice-profile-card.ev-v2-card:hover .ev-v2-avatar-ring {
     transform: scale(1.05);
     box-shadow: 0 0 22px var(--ev-glow);
 }

 .ev-v2-avatar-inner {
     width: 100%;
     height: 100%;
     border-radius: 50%;
     overflow: hidden;
     background: #111c30;
     display: flex;
     align-items: center;
     justify-content: center;
 }

 [data-theme=”light”] .ev-v2-avatar-inner { background: #dde8ff; }

 .ev-v2-avatar-inner img {
     width: 100%;
     height: 100%;
     object-fit: cover;
     border-radius: 50%;
 }

 .ev-v2-avatar-inner .profile-initial {
     font-size: 24px;
     font-weight: 800;
     background: linear-gradient(135deg, var(--ev-a), var(--ev-c));
     -webkit-background-clip: text;
     -webkit-text-fill-color: transparent;
     background-clip: text;
 }

 /* Meta */
 .profile-info.ev-v2-meta {
     flex: 1;
     min-width: 0;
 }

 .ev-v2 .profile-name {
     font-family: inherit;
     font-size: 20px;
     font-weight: 800;
     margin: 0 0 8px 0;
     letter-spacing: -0.03em;
     line-height: 1.2;
     color: #f1f5f9;
     -webkit-text-fill-color: #f1f5f9;
     background: none;
 }

 [data-theme=”light”] .ev-v2 .profile-name {
     color: #0f172a;
     -webkit-text-fill-color: #0f172a;
 }

 .ev-v2-meta-row {
     display: flex;
     align-items: center;
     flex-wrap: wrap;
     gap: 6px 8px;
 }

 .ev-v2 .gender {
     font-family: inherit;
     font-size: 11px;
     font-weight: 700;
     text-transform: uppercase;
     letter-spacing: 0.1em;
     color: rgba(148, 163, 184, 0.75);
     line-height: 1;
 }

 [data-theme=”light”] .ev-v2 .gender { color: #64748b; }

 .ev-v2-style-count {
     font-size: 11px;
     font-weight: 600;
     color: rgba(129, 140, 248, 0.95);
     background: rgba(99, 102, 241, 0.12);
     border: 1px solid rgba(99, 102, 241, 0.22);
     border-radius: 20px;
     padding: 2px 9px;
     line-height: 1.5;
 }

 /* Waveform animation (visible when .is-playing on card) */
 .ev-v2-waveform {
     display: flex;
     align-items: center;
     gap: 3px;
     flex-shrink: 0;
     height: 30px;
     margin-left: auto;
     opacity: 0;
     transition: opacity 0.3s ease;
 }

 .ev-v2-waveform span {
     display: block;
     width: 3px;
     height: 5px;
     background: linear-gradient(180deg, var(--ev-a), var(--ev-c));
     border-radius: 3px;
     transform-origin: bottom;
 }

 .ev-v2-card.is-playing .ev-v2-waveform { opacity: 1; }
 .ev-v2-card.is-playing .ev-v2-waveform span:nth-child(1) { animation: ev2Wave 0.85s ease-in-out -0.40s infinite; }
 .ev-v2-card.is-playing .ev-v2-waveform span:nth-child(2) { animation: ev2Wave 0.85s ease-in-out -0.22s infinite; }
 .ev-v2-card.is-playing .ev-v2-waveform span:nth-child(3) { animation: ev2Wave 0.85s ease-in-out  0.00s infinite; }
 .ev-v2-card.is-playing .ev-v2-waveform span:nth-child(4) { animation: ev2Wave 0.85s ease-in-out -0.31s infinite; }
 .ev-v2-card.is-playing .ev-v2-waveform span:nth-child(5) { animation: ev2Wave 0.85s ease-in-out -0.12s infinite; }
 @keyframes ev2Wave {
     0%, 100% { height: 4px;  opacity: 0.45; }
     50%       { height: 24px; opacity: 1; }
 }

 /* Emotion buttons */
 .ev-v2-styles.emotion-buttons {
     display: flex;
     flex-direction: row;
     flex-wrap: wrap;
     gap: 6px;
     align-items: flex-start;
     align-content: flex-start;
 }

 .ev-v2-styles .emotion-btn {
     font-family: inherit;
     background: rgba(255, 255, 255, 0.05);
     border: 1px solid rgba(255, 255, 255, 0.09);
     border-radius: 20px;
     padding: 5px 11px 5px 8px;
     display: inline-flex !important;
     align-items: center;
     gap: 5px;
     cursor: pointer;
     transition: all 0.22s ease;
     font-size: 11px;
     font-weight: 600;
     color: rgba(203, 213, 225, 0.88);
     position: relative;
     overflow: hidden;
     line-height: 1.3;
     white-space: nowrap;
     box-shadow: none;
     width: auto !important;
     max-width: none;
     flex: 0 0 auto;
     text-align: left;
 }

 [data-theme=”light”] .ev-v2-styles .emotion-btn {
     background: rgba(15, 23, 42, 0.04);
     border-color: rgba(15, 23, 42, 0.11);
     color: #475569;
 }

 .ev-v2-styles .emotion-btn i {
     font-size: 8px;
     color: var(--ev-a);
     flex-shrink: 0;
     transition: color 0.2s ease, transform 0.2s ease;
 }

 .ev-v2-styles .emotion-btn:hover {
     background: linear-gradient(135deg, var(--ev-a), var(--ev-b), var(--ev-c));
     border-color: transparent;
     transform: translateY(-2px) scale(1.03);
     box-shadow: 0 6px 22px var(--ev-glow);
     color: #fff;
 }

 .ev-v2-styles .emotion-btn:hover i { color: #fff; transform: scale(1.15); }
 .ev-v2-styles .emotion-btn:active  { transform: scale(0.97) translateY(0); }

 /* Premium chip */
 .pro-badge {
     display: inline-flex;
     align-items: center;
     gap: 5px;
     padding: 0px 9px 0px 7px;
     border-radius: 999px;
     font-size: 9px;
     font-weight: 700;
     text-transform: uppercase;
     letter-spacing: 0.12em;
     position: relative;
     overflow: hidden;
     isolation: isolate;
     border: 1px solid rgba(251, 191, 36, 0.28);
     background: linear-gradient(180deg, rgba(45, 36, 20, 0.95) 0%, rgba(30, 22, 12, 0.9) 100%);
     box-shadow: 0 0 0 1px rgba(255,255,255,0.04) inset, 0 0 18px rgba(251, 191, 36, 0.07);
     transition: transform 0.2s ease, box-shadow 0.2s ease;
 }

 [data-theme=”light”] .pro-badge {
     border-color: rgba(180, 83, 9, 0.22);
     background: linear-gradient(180deg, rgba(255,255,255,0.55) 0%, rgba(255,250,235,0.92) 100%);
     box-shadow: 0 1px 0 rgba(255,255,255,0.75) inset, 0 4px 14px rgba(180,83,9,0.12), 0 0 0 1px rgba(255,255,255,0.4) inset;
 }

 .pro-badge::after {
     content: '';
     position: absolute;
     inset: 0;
     border-radius: inherit;
     background: linear-gradient(105deg, rgba(251,191,36,0.22) 0%, rgba(244,114,182,0.08) 45%, rgba(96,165,250,0.1) 100%);
     z-index: -1;
 }

 .pro-badge-icon {
     display: inline-flex;
     align-items: center;
     justify-content: center;
     width: 16px;
     height: 16px;
     border-radius: 50%;
     font-size: 8px;
     color: #422006;
     background: linear-gradient(145deg, #fde68a 0%, #fbbf24 55%, #d97706 100%);
     box-shadow: 0 1px 2px rgba(120,53,15,0.25);
 }

 .pro-badge-icon i { filter: drop-shadow(0 1px 0 rgba(255,255,255,0.35)); }

 .pro-badge-text {
     position: relative; z-index: 1;
     background: linear-gradient(90deg, #fef3c7 0%, #fde68a 50%, #fcd34d 100%);
     -webkit-background-clip: text;
     -webkit-text-fill-color: transparent;
     background-clip: text;
 }

 [data-theme=”light”] .pro-badge-text {
     background: linear-gradient(90deg, #78350f 0%, #92400e 100%);
     -webkit-background-clip: text;
     -webkit-text-fill-color: transparent;
     background-clip: text;
 }

 /* Loading indicator */
.emotion-btn.is-loading {
    pointer-events: none;
    opacity: 0.9;
    transform: none !important;
    background: rgba(59, 130, 246, 0.12);
    border-color: rgba(59, 130, 246, 0.28);
    color: #93c5fd;
}
.emotion-btn .btn-loader {
    display: inline-block;
    width: 14px;
    height: 14px;
    margin-right: 4px;
    vertical-align: middle;
    pointer-events: none;
}

 @media (max-width: 576px) {
    .mobile-only { margin-top: 30px !important; }
     .emotional-voices-section.ev-v2 { padding: 48px 0 56px; }
     .emotional-voices-section.ev-v2 .ev-v2-lead.disc { font-size: 15px; line-height: 24px; }
     .ev-v2-grid { gap: 12px; }
     .ev-v2 .voice-profile-card.ev-v2-card { padding: 16px 16px 14px; }
     .ev-v2-avatar-ring { width: 56px; height: 56px; }
     .ev-v2 .profile-name { font-size: 17px; }
 }

/* Refund Guarantee Section (disabled) - Consistent with Frontend Design
.rts-refund-guarantee-area {
    background: var(--bg-secondary, #f8fafc);
    transition: background 0.3s ease;
}

[data-theme="dark"] .rts-refund-guarantee-area {
    background: var(--bg-primary, #0f172a);
}

.rts-refund-guarantee-area .subtitle-text {
    font-size: 18px;
    color: var(--text-secondary, #6b7280);
    max-width: 800px;
    margin: 1.5rem auto 0;
    line-height: 1.7;
    transition: color 0.3s ease;
}

[data-theme="dark"] .rts-refund-guarantee-area .subtitle-text {
    color: var(--text-secondary, #cbd5e1);
}

.refund-feature-box {
    background: var(--bg-card, #ffffff);
    border: 1px solid var(--border-primary, #e5e7eb);
    border-radius: 16px;
    padding: 2.5rem 2rem;
    text-align: center;
    transition: all 0.3s ease;
    height: 100%;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
}

[data-theme="dark"] .refund-feature-box {
    background: var(--bg-card, #1e293b);
    border-color: var(--border-primary, #334155);
}

.refund-feature-box:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
    border-color: var(--primary-color, #3b82f6);
}

[data-theme="dark"] .refund-feature-box:hover {
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.3);
}

.refund-feature-icon {
    width: 80px;
    height: 80px;
    background: linear-gradient(135deg, var(--primary-color) 0%, #8b5cf6 50%, #ec4899 100%);
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    font-size: 32px;
    color: white;
    transition: all 0.3s ease;
}

.refund-feature-box:hover .refund-feature-icon {
    transform: scale(1.1) rotate(5deg);
    box-shadow: 0 8px 20px rgba(59, 130, 246, 0.3);
}

.refund-feature-title {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 0.75rem;
    color: var(--text-primary, #1f2937);
    transition: color 0.3s ease;
}

[data-theme="dark"] .refund-feature-title {
    color: var(--text-primary, #f8fafc);
}

.refund-feature-desc {
    font-size: 16px;
    color: var(--text-secondary, #6b7280);
    margin: 0;
    line-height: 1.6;
    transition: color 0.3s ease;
}

[data-theme="dark"] .refund-feature-desc {
    color: var(--text-secondary, #cbd5e1);
}

/* Responsive */
@media (max-width: 768px) {
    .refund-feature-box {
        padding: 2rem 1.5rem;
    }

    .refund-feature-icon {
        width: 70px;
        height: 70px;
        font-size: 28px;
    }

    .refund-feature-title {
        font-size: 20px;
    }

    .rts-refund-guarantee-area .subtitle-text {
        font-size: 16px;
    }
}
*/

/* ═══════════════════════════════════════════════════
   E-E-A-T Trust Section
   ═══════════════════════════════════════════════════ */
.nv-eeat-section {
    padding-top: 0;
}
.nv-eeat-shell {
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 24px;
    padding: 2.2rem 1.4rem 1.5rem;
    background: radial-gradient(circle at top right, rgba(99, 102, 241, 0.12), transparent 45%),
        rgba(15, 23, 42, 0.35);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
}
[data-theme="light"] .nv-eeat-shell {
    border-color: rgba(15, 23, 42, 0.1);
    background: radial-gradient(circle at top right, rgba(59, 130, 246, 0.12), transparent 45%),
        rgba(255, 255, 255, 0.92);
}
.nv-eeat-head .title {
    max-width: 760px;
    margin-left: auto;
    margin-right: auto;
}
.nv-eeat-intro {
    max-width: 860px;
    margin-left: auto;
    margin-right: auto;
}
.nv-eeat-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-top: 1.5rem;
}
.nv-eeat-card {
    border: 1px solid rgba(255, 255, 255, 0.09);
    border-radius: 16px;
    padding: 1rem;
    background: rgba(255, 255, 255, 0.03);
}
[data-theme="light"] .nv-eeat-card {
    border-color: rgba(15, 23, 42, 0.1);
    background: rgba(15, 23, 42, 0.025);
}
.nv-eeat-card__icon {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0.65rem;
    color: var(--primary-color, #3b82f6);
    background: rgba(59, 130, 246, 0.14);
}
.nv-eeat-card__title {
    margin: 0 0 0.35rem;
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-primary, #f8fafc);
}
[data-theme="light"] .nv-eeat-card__title {
    color: #0f172a;
}
.nv-eeat-card__copy {
    margin: 0;
    font-size: 0.925rem;
    line-height: 1.6;
    color: var(--text-secondary, #cbd5e1);
}
[data-theme="light"] .nv-eeat-card__copy {
    color: #475569;
}
.nv-eeat-actions {
    margin-top: 1.2rem;
    display: flex;
    justify-content: center;
}
.nv-eeat-link {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
}
.nv-eeat-citation-wrap {
    margin-top: 0.65rem;
    text-align: center;
}
.nv-eeat-citation-wrap .nv-stat-citation {
    justify-content: center;
}
@media (max-width: 991px) {
    .nv-eeat-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media (max-width: 576px) {
    .nv-eeat-shell {
        border-radius: 18px;
        padding: 1.5rem 0.95rem 1.1rem;
    }
    .nv-eeat-grid {
        grid-template-columns: 1fr;
        gap: 10px;
    }
    .nv-eeat-card {
        padding: 0.9rem;
    }
}

/* ═══════════════════════════════════════════════════
   Use-case language deep-links row
   ═══════════════════════════════════════════════════ */
.use-case-lang-label {
    font-size: 13px;
    font-weight: 600;
    color: var(--text-secondary, #6b7280);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 12px;
}
.use-case-lang-links {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
}
.use-case-lang-links a {
    display: inline-block;
    padding: 7px 16px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 500;
    border: 1px solid var(--border-primary, #e5e7eb);
    color: var(--text-primary, #374151);
    background: var(--bg-card, #fff);
    text-decoration: none;
    transition: all 0.2s ease;
}
.use-case-lang-links a:hover {
    border-color: var(--primary-color, #3b82f6);
    color: var(--primary-color, #3b82f6);
    background: rgba(59,130,246,0.05);
}
.use-case-lang-links a:last-child {
    font-weight: 600;
    color: var(--primary-color, #3b82f6);
    border-color: var(--primary-color, #3b82f6);
}
[data-theme="dark"] .use-case-lang-links a {
    background: var(--bg-card, #1e293b);
    border-color: var(--border-primary, #334155);
    color: var(--text-primary, #e2e8f0);
}

/* ═══════════════════════════════════════════════════
   Review card footer / verified badge
   ═══════════════════════════════════════════════════ */
.review-card-footer {
    margin-top: 16px;
    padding-top: 12px;
    border-top: 1px solid var(--border-primary, #e5e7eb);
}
[data-theme="dark"] .review-card-footer {
    border-color: var(--border-primary, #334155);
}
.review-verified-badge {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    font-weight: 500;
    color: #16a34a;
}
.review-verified-badge i {
    font-size: 12px;
}
