/* ═══════════════════════════════════════════════════════════════
   PPN v3 — Landing Page "Crystalline Amethyst"
   ═══════════════════════════════════════════════════════════════ */

/* ── Navbar ── */
.ln-nav { position:fixed;top:0;left:0;right:0;z-index:100;padding:16px 0;transition:all .4s ease }
.ln-nav.scrolled { background:rgba(255,255,255,.88);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 2px 20px rgba(88,28,135,.06) }
.ln-nav-inner { max-width:1100px;margin:0 auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between }
.ln-logo { display:flex;align-items:center;gap:12px }
.ln-logo img { width:38px;height:38px;border-radius:12px;box-shadow:var(--shadow-glow) }
.ln-logo span { font-family:var(--font-display);font-weight:800;font-size:1.05rem;color:var(--amethyst-800) }
.ln-nav-btns { display:flex;gap:10px }
.ln-nav-btns .btn { font-size:.8125rem;padding:9px 22px;border-radius:var(--radius-pill) }

/* ── Hero ── */
.ln-hero { min-height:100vh;display:flex;align-items:center;position:relative;overflow:hidden;background:linear-gradient(155deg,#faf5ff 0%,#f3e8ff 25%,#e9d5ff 55%,#d8b4fe 100%) }
.ln-hero::before { content:'';position:absolute;top:-35%;right:-22%;width:70vw;height:70vw;border-radius:50%;background:radial-gradient(circle,rgba(147,51,234,.10) 0%,transparent 70%);pointer-events:none;animation:heroOrb 12s ease-in-out infinite }
.ln-hero::after { content:'';position:absolute;bottom:-18%;left:-12%;width:50vw;height:50vw;border-radius:50%;background:radial-gradient(circle,rgba(196,181,253,.10) 0%,transparent 70%);pointer-events:none;animation:heroOrb 15s ease-in-out infinite reverse }
@keyframes heroOrb { 0%,100%{transform:translate(0,0)} 50%{transform:translate(15px,-20px)} }
.ln-hero-inner { max-width:1100px;margin:0 auto;padding:120px 24px 80px;position:relative;z-index:1;display:grid;grid-template-columns:1.1fr .9fr;gap:64px;align-items:center }
.ln-hero-badge { display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.65);backdrop-filter:blur(12px);border:1px solid rgba(168,85,247,.12);border-radius:var(--radius-pill);padding:7px 18px;font-size:.75rem;font-weight:600;color:var(--amethyst-700);margin-bottom:24px }
.ln-hero-badge .dot { width:7px;height:7px;border-radius:50%;background:var(--emerald);animation:pulseDot 2s infinite }
@keyframes pulseDot { 0%,100%{opacity:1} 50%{opacity:.35} }
.ln-hero h1 { font-family:var(--font-display);font-size:clamp(2rem,5vw,3.4rem);font-weight:800;color:var(--amethyst-950);line-height:1.2;margin-bottom:18px }
.ln-hero h1 em { font-style:normal;background:var(--gradient-hero);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text }
.ln-hero-sub { font-size:1.05rem;color:var(--n-600);line-height:1.75;margin-bottom:36px;max-width:540px }
.ln-hero-actions { display:flex;gap:14px;flex-wrap:wrap }
.ln-hero-actions .btn-hero { padding:15px 40px;border-radius:var(--radius-pill);font-family:var(--font-display);font-weight:700;font-size:.9375rem;transition:all .3s var(--ease-out) }
.btn-hero-primary { background:var(--gradient-hero);color:#fff;box-shadow:var(--shadow-glow-lg) }
.btn-hero-primary:hover { transform:translateY(-3px);box-shadow:0 12px 40px rgba(147,51,234,.35);filter:brightness(1.06) }
.btn-hero-secondary { background:rgba(255,255,255,.6);color:var(--amethyst-700);border:1.5px solid rgba(168,85,247,.15);backdrop-filter:blur(8px) }
.btn-hero-secondary:hover { background:#fff;border-color:var(--amethyst-300) }

/* ── Hero Visual ── */
.ln-hero-visual { position:relative;display:flex;justify-content:center }
.hero-card-stack { position:relative;width:320px;height:380px }
.hero-float { position:absolute;background:rgba(255,255,255,.8);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:var(--radius-lg);padding:20px 24px;box-shadow:var(--shadow-lg);border:1px solid rgba(255,255,255,.5);animation:floatCard 7s ease-in-out infinite }
.hero-float:nth-child(1) { top:0;left:0;animation-delay:0s }
.hero-float:nth-child(2) { top:95px;right:0;animation-delay:2s }
.hero-float:nth-child(3) { bottom:40px;left:20px;animation-delay:4s }
@keyframes floatCard { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-12px)} }
.hero-float-icon { font-size:1.875rem;margin-bottom:8px }
.hero-float-label { font-size:.6875rem;color:var(--n-400);font-weight:500 }
.hero-float-value { font-family:var(--font-display);font-size:1.125rem;font-weight:700;color:var(--amethyst-800) }

/* ── Section Base ── */
.ln-section { padding:88px 0 }
.ln-section-inner { max-width:1100px;margin:0 auto;padding:0 24px }
.ln-section-tag { display:inline-block;font-family:var(--font-display);font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--amethyst-600);background:var(--amethyst-50);border:1px solid var(--amethyst-200);padding:5px 16px;border-radius:var(--radius-pill);margin-bottom:14px }
.ln-section-title { font-family:var(--font-display);font-size:clamp(1.5rem,3.5vw,2.3rem);font-weight:800;color:var(--n-900);line-height:1.25;margin-bottom:14px }
.ln-section-desc { font-size:1rem;color:var(--n-500);max-width:620px;line-height:1.75 }

/* ── About ── */
.ln-about { background:#fff }
.ln-about-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:52px }
.ln-about-card { background:rgba(250,245,255,.4);backdrop-filter:blur(8px);border:1px solid var(--border);border-radius:var(--radius-lg);padding:36px 28px;text-align:center;transition:all .35s var(--ease-out) }
.ln-about-card:hover { transform:translateY(-6px);box-shadow:var(--shadow-xl);border-color:var(--amethyst-200) }
.ln-about-icon { width:60px;height:60px;border-radius:18px;display:flex;align-items:center;justify-content:center;font-size:1.6rem;margin:0 auto 18px }
.ln-about-icon.purple { background:var(--amethyst-50);border:1.5px solid var(--amethyst-200) }
.ln-about-icon.green { background:var(--emerald-50);border:1.5px solid rgba(16,185,129,.2) }
.ln-about-icon.amber { background:var(--gold-50);border:1.5px solid rgba(245,158,11,.2) }
.ln-about-card h3 { font-family:var(--font-display);font-size:1.05rem;font-weight:700;color:var(--n-800);margin-bottom:10px }
.ln-about-card p { font-size:.8125rem;color:var(--n-500);line-height:1.7 }

/* ── Income ── */
.ln-income { background:linear-gradient(170deg,var(--amethyst-950) 0%,var(--amethyst-900) 40%,#581c87 100%);color:#fff;position:relative;overflow:hidden }
.ln-income::before { content:'';position:absolute;top:0;right:0;width:60%;height:100%;background:radial-gradient(ellipse at top right,rgba(196,181,253,.10),transparent 70%) }
.ln-income .ln-section-tag { background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.15);color:var(--amethyst-200) }
.ln-income .ln-section-title { color:#fff }
.ln-income .ln-section-desc { color:var(--amethyst-200) }
.ln-income-grid { display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:52px;position:relative;z-index:1 }
.ln-income-card { background:rgba(255,255,255,.06);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-lg);padding:30px 26px;transition:all .35s }
.ln-income-card:hover { background:rgba(255,255,255,.12);transform:translateY(-3px) }
.ln-income-card .step-num { display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:11px;background:var(--gradient-hero);font-size:.8125rem;font-weight:700;margin-bottom:16px;box-shadow:var(--shadow-glow) }
.ln-income-card h3 { font-family:var(--font-display);font-size:1.1rem;font-weight:700;margin-bottom:10px }
.ln-income-card p { font-size:.8125rem;color:var(--amethyst-200);line-height:1.7 }

/* ── Stars ── */
.ln-stars { margin-top:52px;position:relative;z-index:1 }
.ln-stars-row { display:flex;justify-content:center;gap:14px;flex-wrap:wrap }
.ln-star-badge { display:flex;flex-direction:column;align-items:center;gap:8px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);padding:18px 22px;min-width:105px;transition:all .3s }
.ln-star-badge:hover { background:rgba(255,255,255,.12);transform:translateY(-2px) }
.ln-star-badge .star-icon { font-size:1.6rem }
.ln-star-badge .star-label { font-size:.6875rem;font-weight:600;color:var(--amethyst-200) }
.ln-star-badge .star-name { font-family:var(--font-display);font-size:.8125rem;font-weight:700 }

/* ── Team ── */
.ln-team { background:linear-gradient(180deg,#fff 0%,var(--n-25) 100%) }
.ln-team-grid { display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:52px }
.ln-team-card { text-align:center;transition:transform .35s var(--ease-out) }
.ln-team-card:hover { transform:translateY(-6px) }
.ln-team-photo { width:120px;height:120px;border-radius:50%;margin:0 auto 18px;object-fit:cover;border:3px solid #fff;box-shadow:var(--shadow-lg);transition:all .35s }
.ln-team-card:hover .ln-team-photo { box-shadow:var(--shadow-glow-lg);border-color:var(--amethyst-200) }
.ln-team-card h3 { font-family:var(--font-display);font-size:.9375rem;font-weight:700;color:var(--n-800);margin-bottom:3px }
.ln-team-card .team-role { font-size:.75rem;color:var(--amethyst-600);font-weight:600;margin-bottom:8px }
.ln-team-card .team-quote { font-size:.75rem;color:var(--n-400);line-height:1.65;font-style:italic;max-width:200px;margin:0 auto }

/* ── Products ── */
.ln-products { background:var(--n-25) }
.ln-cat-grid { display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:52px }
.ln-cat-card { background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);padding:32px 18px;text-align:center;transition:all .35s var(--ease-out);position:relative;overflow:hidden }
.ln-cat-card:hover { transform:translateY(-6px);box-shadow:var(--shadow-xl);border-color:var(--amethyst-200) }
.ln-cat-card::after { content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--gradient-hero);transform:scaleX(0);transition:transform .35s var(--ease-out) }
.ln-cat-card:hover::after { transform:scaleX(1) }
.ln-cat-emoji { font-size:2.75rem;margin-bottom:14px;display:block }
.ln-cat-card h3 { font-family:var(--font-display);font-size:1rem;font-weight:700;color:var(--n-800);margin-bottom:8px }
.ln-cat-card p { font-size:.75rem;color:var(--n-400);line-height:1.55 }

/* ── Mall ── */
.ln-mall { background:#fff;position:relative;overflow:hidden }
.ln-mall-box { display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center;background:linear-gradient(135deg,#faf5ff,#f3e8ff 50%,#e9d5ff 100%);border-radius:var(--radius-xl);padding:52px;position:relative;overflow:hidden }
.ln-mall-box::before { content:'';position:absolute;top:-40%;right:-20%;width:400px;height:400px;border-radius:50%;background:radial-gradient(circle,rgba(196,181,253,.12),transparent 70%) }
.ln-mall-content { position:relative;z-index:1 }
.ln-mall-badge { display:inline-flex;align-items:center;gap:7px;background:var(--gradient-gold);color:#fff;font-size:.6875rem;font-weight:700;padding:6px 16px;border-radius:var(--radius-pill);margin-bottom:18px;box-shadow:0 2px 8px rgba(245,158,11,.2) }
.ln-mall-content h2 { font-family:var(--font-display);font-size:clamp(1.3rem,3vw,1.9rem);font-weight:800;color:var(--amethyst-900);line-height:1.3;margin-bottom:14px }
.ln-mall-content p { font-size:.9375rem;color:var(--n-600);line-height:1.75;margin-bottom:28px }
.ln-mall-features { display:flex;flex-direction:column;gap:14px }
.ln-mall-feat { display:flex;align-items:center;gap:12px;font-size:.8125rem;color:var(--n-600) }
.ln-mall-feat .feat-dot { width:30px;height:30px;border-radius:10px;background:var(--amethyst-50);border:1px solid var(--amethyst-200);display:flex;align-items:center;justify-content:center;font-size:.85rem;flex-shrink:0 }
.ln-mall-visual { position:relative;z-index:1;display:flex;justify-content:center;align-items:center }
.ln-mall-mockup { width:280px;height:200px;background:rgba(255,255,255,.75);backdrop-filter:blur(16px);border-radius:var(--radius-lg);border:1.5px solid var(--amethyst-200);box-shadow:var(--shadow-xl);display:flex;flex-direction:column;overflow:hidden }
.mall-mock-top { background:var(--gradient-hero);padding:12px 16px;display:flex;align-items:center;gap:8px }
.mall-mock-dot { width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.3) }
.mall-mock-title { color:#fff;font-size:.6875rem;font-weight:600;margin-left:auto }
.mall-mock-body { flex:1;padding:12px;display:grid;grid-template-columns:repeat(3,1fr);gap:8px }
.mall-mock-item { background:var(--n-50);border-radius:8px;aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:1.2rem;border:1px solid var(--border) }

/* ── CTA ── */
.ln-cta { background:#fff;text-align:center }
.ln-cta-box { background:linear-gradient(135deg,var(--amethyst-50),#f3e8ff 50%,#e9d5ff 100%);border:1.5px solid var(--amethyst-200);border-radius:var(--radius-xl);padding:64px 44px;max-width:720px;margin:0 auto }
.ln-cta-box h2 { font-family:var(--font-display);font-size:clamp(1.4rem,3vw,1.9rem);font-weight:800;color:var(--amethyst-900);margin-bottom:14px }
.ln-cta-box p { color:var(--n-500);margin-bottom:36px;font-size:.9375rem }
.ln-cta-actions { display:flex;justify-content:center;gap:14px;flex-wrap:wrap }

/* ── Footer ── */
.ln-footer { background:var(--n-900);color:var(--n-300);padding:44px 0;text-align:center }
.ln-footer-inner { max-width:1100px;margin:0 auto;padding:0 24px }
.ln-footer-logo { display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:18px }
.ln-footer-logo img { width:34px;height:34px;border-radius:10px;opacity:.8 }
.ln-footer-logo span { font-family:var(--font-display);font-weight:700;color:var(--n-100) }
.ln-footer p { font-size:.75rem;color:var(--n-500);line-height:1.75 }
.ln-footer-links { display:flex;justify-content:center;gap:22px;margin-top:18px }
.ln-footer-links a { font-size:.75rem;color:var(--n-400);transition:color .2s }
.ln-footer-links a:hover { color:var(--amethyst-300) }
.ln-footer-company { margin-top:32px;padding-top:28px;border-top:1px solid var(--n-800) }
.ln-footer-company-grid { display:grid;grid-template-columns:1fr 1fr;gap:28px;text-align:left;max-width:720px;margin:0 auto }
.ln-footer-company h4 { font-size:.75rem;font-weight:600;color:var(--n-300);margin-bottom:10px }
.ln-footer-company p { font-size:.6875rem;color:var(--n-500);line-height:1.85 }
.ln-footer-company a { color:var(--amethyst-300);transition:color .2s }
.ln-footer-company a:hover { color:var(--amethyst-200) }
.ln-footer-contact-row { display:flex;align-items:center;gap:8px;font-size:.6875rem;color:var(--n-500);margin-bottom:5px }
.ln-footer-contact-row .ico { width:18px;text-align:center;flex-shrink:0;font-size:.8rem }

/* ── Reveal animation ── */
.ln-reveal { opacity:0;transform:translateY(32px);transition:opacity .8s var(--ease-out),transform .8s var(--ease-out) }
.ln-reveal.visible { opacity:1;transform:translateY(0) }
.ln-reveal.d1 { transition-delay:.12s }
.ln-reveal.d2 { transition-delay:.24s }
.ln-reveal.d3 { transition-delay:.36s }
.ln-reveal.d4 { transition-delay:.48s }

/* ── Responsive ── */
@media(max-width:768px) {
    .ln-hero-inner { grid-template-columns:1fr;text-align:center;padding:100px 20px 60px }
    .ln-hero-sub { margin-left:auto;margin-right:auto }
    .ln-hero-actions { justify-content:center }
    .ln-hero-visual { display:none }
    .ln-about-grid { grid-template-columns:1fr }
    .ln-team-grid { grid-template-columns:repeat(2,1fr);gap:22px }
    .ln-income-grid { grid-template-columns:1fr }
    .ln-cat-grid { grid-template-columns:repeat(2,1fr) }
    .ln-mall-box { grid-template-columns:1fr;padding:36px 28px }
    .ln-mall-visual { display:none }
    .ln-cta-box { padding:44px 28px }
    .ln-nav-btns { display:none }
    .ln-footer-company-grid { grid-template-columns:1fr }
}
@media(max-width:480px) {
    .ln-hero-actions { flex-direction:column }
    .ln-hero-actions .btn-hero { text-align:center }
    .ln-cat-grid { grid-template-columns:repeat(2,1fr);gap:12px }
    .ln-cat-card { padding:22px 14px }
    .ln-cat-emoji { font-size:2.25rem }
}

/* ★ Mobile Sticky Bottom Bar */
.ln-mobile-bar { display:none;position:fixed;bottom:0;left:0;right:0;z-index:200;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 -2px 20px rgba(0,0,0,.08);padding:8px 16px;justify-content:space-around;align-items:center;border-top:1px solid rgba(0,0,0,.06) }
.ln-mob-btn { display:flex;flex-direction:column;align-items:center;gap:2px;text-decoration:none;color:#666;font-size:.65rem;font-weight:600;padding:4px 12px;border-radius:8px;transition:all .2s }
.ln-mob-btn:hover,.ln-mob-btn:active { color:var(--amethyst-600);background:rgba(139,92,246,.06) }
.ln-mob-icon { font-size:1.25rem }
.ln-mob-primary { color:#fff;background:linear-gradient(135deg,var(--amethyst-500),var(--amethyst-600));border-radius:10px;padding:6px 18px }
.ln-mob-primary:hover,.ln-mob-primary:active { color:#fff;background:linear-gradient(135deg,var(--amethyst-600),var(--amethyst-700)) }
@media(max-width:768px) { .ln-mobile-bar { display:flex } .ln-footer { padding-bottom:70px } }
